:root{--black:#050505;--white:#fff;--text:#111;--muted:#6b6b6b;--line:#dedede;--soft:#f7f7f7;--shadow:0 18px 60px rgba(0,0,0,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--text);font-family:Inter,Arial,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}.hidden{display:none!important}.site-header{max-width:1440px;margin:auto;padding:24px 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.logo img{display:block;width:min(520px,48vw);height:105px;object-fit:contain;object-position:left center}.black-button,.outline-button{border-radius:7px;min-height:48px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:750;cursor:pointer;transition:.2s}.black-button{background:#000;color:#fff;border:1px solid #000}.black-button:hover{background:#222;transform:translateY(-1px)}.outline-button{background:#fff;border:1px solid #aaa;color:#111}.outline-button:hover{border-color:#000}.wide{width:100%}.booking-shell{max-width:1440px;margin:0 auto;padding:30px 34px 50px}.progress{display:flex;align-items:center;justify-content:center;margin:0 auto 34px;max-width:970px}.progress span{display:flex;align-items:center;gap:9px;white-space:nowrap;color:#777}.progress b{width:34px;height:34px;border:1px solid #aaa;border-radius:50%;display:grid;place-items:center;font-size:14px}.progress small{text-transform:uppercase;font-weight:700;font-size:12px}.progress i{height:1px;background:#ccc;flex:1;margin:0 18px}.progress span.active{color:#000}.progress span.active b{background:#000;color:#fff;border-color:#000}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px}.booking-form{border-top:1px solid var(--line);padding-top:28px}.step{display:none}.step.active{display:block}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.section-heading p,.section-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;margin:0 0 8px}.section-heading h1{font-size:30px;margin:0}.section-heading>span{border:1px solid #bbb;border-radius:999px;padding:8px 13px;font-size:13px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.choice-card,.choice-row,.addon{position:relative;display:flex;cursor:pointer;background:#fff}.choice-card input,.choice-row input{position:absolute;opacity:0}.service-card{min-height:190px;border:1px solid #ccc;border-radius:8px;padding:35px 25px 23px;flex-direction:column;align-items:flex-start}.service-card strong{font-size:17px;text-transform:uppercase;max-width:260px}.service-card small{font-size:13px;line-height:1.55;margin:18px 0;color:#4d4d4d}.service-card em{font-style:normal;font-weight:600;font-size:13px}.check{position:absolute;right:16px;top:16px;width:24px;height:24px;border:1px solid #aaa;border-radius:50%;display:grid;place-items:center;color:transparent}.service-card:has(input:checked),.choice-row:has(input:checked){border-color:#000;box-shadow:inset 0 0 0 1px #000}.service-card:has(input:checked) .check{background:#000;color:#fff;border-color:#000}.form-block{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.form-block h2{font-size:17px;text-transform:uppercase;margin:0 0 7px}.form-block>p{margin:0 0 17px;color:var(--muted);font-size:13px}.segment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.segment-grid input{position:absolute;opacity:0}.segment-grid span{height:55px;border:1px solid #ccc;border-radius:6px;display:grid;place-items:center;font-weight:700;cursor:pointer}.segment-grid label:has(input:checked) span{background:#000;color:#fff;border-color:#000}.rim-list{display:grid;gap:9px}.choice-row{border:1px solid #d6d6d6;border-radius:7px;min-height:70px;padding:13px 18px;align-items:center}.choice-row span{display:flex;flex:1;justify-content:space-between;gap:18px;align-items:center}.choice-row b{text-transform:uppercase;font-size:14px}.choice-row small{font-size:13px}.choice-row:after{content:"";width:18px;height:18px;border:1px solid #999;border-radius:50%;margin-left:15px}.choice-row:has(input:checked):after{box-shadow:inset 0 0 0 5px #fff;background:#000;border-color:#000}.addon{border:1px solid #d6d6d6;border-radius:7px;margin-top:14px;padding:16px;align-items:center;gap:13px}.addon input{accent-color:#000;width:18px;height:18px}.addon span{display:flex;flex:1;justify-content:space-between;gap:15px}.addon b{font-size:14px}.addon small{color:#444}.booking-form>.step>.black-button.wide{margin-top:24px}.actions{display:flex;justify-content:space-between;gap:15px;margin-top:26px}.calendar{border:1px solid #ccc;border-radius:9px;overflow:hidden}.calendar-head{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #ddd}.calendar-head button{background:#fff;border:1px solid #ccc;border-radius:5px;width:38px;height:38px;cursor:pointer}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.weekdays span{padding:11px;text-align:center;text-transform:uppercase;font-size:11px;font-weight:700;color:#777;background:#fafafa}.calendar-days button{border:0;border-top:1px solid #eee;border-right:1px solid #eee;background:#fff;min-height:62px;cursor:pointer}.calendar-days button:nth-child(7n){border-right:0}.calendar-days button.outside{color:#bbb;background:#fafafa}.calendar-days button:disabled{color:#ccc;background:#fafafa;cursor:not-allowed;text-decoration:line-through}.calendar-days button.selected{background:#000;color:#fff}.calendar-days button:not(:disabled):hover{box-shadow:inset 0 0 0 2px #000}.row-title{display:flex;justify-content:space-between;align-items:center}.row-title small{color:#777}.slots{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:15px}.slot{height:44px;background:#fff;border:1px solid #bbb;border-radius:5px;cursor:pointer}.slot.selected{background:#000;color:#fff}.slot:disabled{opacity:.25;text-decoration:line-through;cursor:not-allowed}.field{display:grid;gap:8px;margin-bottom:16px}.field span{font-size:13px;font-weight:700;text-transform:uppercase}.field small{color:#777;font-weight:400}.field input{height:51px;border:1px solid #bbb;border-radius:6px;padding:0 14px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.privacy{display:flex;gap:10px;font-size:13px;line-height:1.5}.privacy input{accent-color:#000}.validation{display:none;color:#a40000;font-size:13px}.validation.show{display:block}.booking-summary{border:1px solid #ccc;border-radius:8px;padding:23px;align-self:start;position:sticky;top:20px}.booking-summary h2{font-size:20px;margin:0 0 25px}.summary-group{border-bottom:1px solid #ddd;padding-bottom:18px;margin-bottom:18px}.summary-group small{display:block;text-transform:uppercase;font-size:11px;font-weight:800;margin-bottom:10px}.summary-line{display:flex;justify-content:space-between;gap:15px;font-size:13px;margin:8px 0}.price-total{display:flex;justify-content:space-between;align-items:end;margin-top:24px}.price-total span{font-weight:800;text-transform:uppercase;font-size:12px}.price-total small{display:block;text-transform:none;font-weight:400;margin-top:4px}.price-total strong{font-size:27px}.secure{border-top:1px solid #ddd;padding-top:18px;margin-top:22px;font-size:12px;color:#666;line-height:1.5}.success{display:none;text-align:center;padding:55px 20px}.success.active{display:block}.success>div{width:60px;height:60px;background:#000;color:#fff;border-radius:50%;display:grid;place-items:center;margin:auto;font-size:27px}.shop-banner{border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:28px max(34px,calc((100vw - 1372px)/2));display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:26px}.tire-art{font-size:70px;font-weight:900;letter-spacing:-35px;overflow:hidden}.shop-banner p{font-weight:900;text-transform:uppercase;margin:0 0 6px}.shop-banner h2{font-size:23px;margin:0 0 8px}.shop-banner span{color:#666;font-size:14px}.reviews-location{max-width:1440px;margin:0 auto;padding:55px 34px;display:grid;grid-template-columns:1fr 1.15fr;gap:45px}.rating{display:flex;align-items:center;gap:12px;margin:18px 0 24px}.rating b{font-size:43px}.rating strong{font-size:22px}.rating span{letter-spacing:2px}.rating small{color:#555}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.review{border:1px solid #ddd;border-radius:8px;padding:17px;min-height:175px}.review-head{display:flex;gap:10px;align-items:center}.avatar{width:34px;height:34px;border-radius:50%;background:#000;color:#fff;display:grid;place-items:center}.review h3{font-size:13px;margin:0}.review small{color:#777}.stars{font-size:12px;margin:14px 0}.review p{font-size:12px;line-height:1.55}.reviews>.outline-button{margin-top:14px}.location-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:20px}.contact-data>div{display:flex;gap:12px;margin:20px 0;line-height:1.6;font-size:14px}.contact-data span{white-space:pre-line}.map-wrap{border:1px solid #ddd;padding:8px;border-radius:8px}.map-wrap iframe{width:100%;height:315px;border:0;filter:grayscale(1)}.map-wrap .black-button{margin-top:7px}footer{border-top:1px solid #ddd;padding:32px max(34px,calc((100vw - 1372px)/2));display:grid;grid-template-columns:260px 1fr auto;gap:28px;align-items:center}footer img{width:235px;height:55px;object-fit:contain;object-position:left}footer div{display:flex;justify-content:center;gap:30px;font-size:13px}footer small{font-size:11px}.success h1{font-size:30px}.success p{line-height:1.7}@media(max-width:980px){.booking-layout{grid-template-columns:1fr}.booking-summary{position:static;order:-1}.reviews-location{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr 1fr}.site-header{padding:16px 20px}.logo img{height:75px}.booking-shell{padding:25px 20px}.shop-banner{padding:26px 20px}.progress small{display:none}.location-grid{grid-template-columns:1fr 1fr}footer{padding:28px 20px;grid-template-columns:1fr;text-align:center}footer img{margin:auto}footer div{flex-wrap:wrap}}@media(max-width:650px){.site-header{align-items:center}.logo img{width:52vw;height:60px}.whatsapp{font-size:0;padding:0;width:48px}.whatsapp span{font-size:20px}.progress i{margin:0 8px}.service-grid,.two-cols,.review-grid,.location-grid{grid-template-columns:1fr}.service-card{min-height:155px}.choice-row span,.addon span{align-items:flex-start;flex-direction:column;gap:5px}.slots{grid-template-columns:repeat(3,1fr)}.shop-banner{grid-template-columns:1fr;text-align:center}.tire-art{display:none}.shop-banner .black-button{width:100%}.reviews-location{padding:38px 20px}.rating{flex-wrap:wrap}.booking-summary{padding:18px}.section-heading h1{font-size:25px}.actions>*{flex:1}footer div{gap:15px}}

/* Farbthemen – Auswahl erfolgt im Adminbereich */
:root{--accent:#000;--accent-hover:#222;--page:#fff;--surface:#fff;--surface-soft:#f7f7f7;--theme-text:#111;--theme-muted:#666;--theme-line:#dedede}
:root[data-theme="blue"]{--accent:#155eef;--accent-hover:#0f49c3;--surface-soft:#f2f6ff;--theme-line:#cfdcff}
:root[data-theme="red"]{--accent:#c62828;--accent-hover:#9f1f1f;--surface-soft:#fff4f4;--theme-line:#f0cccc}
:root[data-theme="green"]{--accent:#16784b;--accent-hover:#105f3b;--surface-soft:#f1faf6;--theme-line:#cce8dc}
:root[data-theme="dark"]{--accent:#fff;--accent-hover:#e5e5e5;--page:#101114;--surface:#181a1f;--surface-soft:#202329;--theme-text:#f7f7f7;--theme-muted:#b9bdc7;--theme-line:#343841}
body{background:var(--page);color:var(--theme-text)}
.site-header,.booking-form,.shop-banner,.reviews-location,footer{border-color:var(--theme-line)}
.black-button{background:var(--accent);border-color:var(--accent);color:var(--page)}
.black-button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.progress span.active{color:var(--accent)}.progress span.active b,.segment-grid label:has(input:checked) span,.slot.selected,.success>div,.avatar{background:var(--accent);border-color:var(--accent);color:var(--page)}
.service-card:has(input:checked),.choice-row:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.service-card:has(input:checked) .check,.choice-row:has(input:checked):after{background:var(--accent);border-color:var(--accent)}
.choice-card,.choice-row,.addon,.calendar-days button,.calendar-head button,.slot,.outline-button,.booking-summary,.review,.map-wrap,.field input{background:var(--surface);color:var(--theme-text);border-color:var(--theme-line)}
.weekdays span,.calendar-days button.outside,.calendar-days button:disabled{background:var(--surface-soft)}
.form-block,.summary-group,.secure,.calendar-head,.calendar-days button,.shop-banner,footer{border-color:var(--theme-line)}
.form-block>p,.service-card small,.addon small,.shop-banner span,.rating small,.review small,.secure,.row-title small{color:var(--theme-muted)}
.calendar-days button.closed-day{text-decoration:line-through;text-decoration-thickness:2px;opacity:.45}
footer small a{text-decoration:underline;text-underline-offset:3px}
.wa-icon{display:grid;place-items:center;width:22px;height:22px;border:2px solid currentColor;border-radius:50%;font-size:13px;line-height:1;font-weight:900}
:root[data-theme="dark"] .outline-button{background:var(--surface);color:var(--theme-text)}
:root[data-theme="dark"] .map-wrap iframe{filter:grayscale(1) invert(.88) hue-rotate(180deg)}

@media(max-width:650px){.whatsapp{font-size:inherit;padding:0;width:42px;height:42px;min-height:42px;border-radius:50%}.whatsapp .wa-text{display:none}.whatsapp .wa-icon{font-size:12px;width:20px;height:20px}.logo img{width:68vw;max-width:270px;height:58px}.site-header{gap:12px}}

/* WhatsApp-Schaltfläche: offizielle Markenfarben und bessere mobile Erkennbarkeit */
.whatsapp{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;background:#25D366;color:#fff;font-weight:800;box-shadow:0 8px 24px rgba(0,0,0,.2);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.whatsapp:hover{background:#20bd5a;transform:translateY(-1px);box-shadow:0 11px 28px rgba(0,0,0,.24)}
.whatsapp:active{transform:scale(.96)}
.whatsapp .wa-icon{width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px}
.whatsapp .wa-icon svg{display:block;width:100%;height:100%;fill:currentColor}
.whatsapp .wa-text{font-size:14px;line-height:1;white-space:nowrap}
@media(max-width:650px){
  .whatsapp{width:60px;height:60px;min-height:60px;padding:0;border-radius:50%;border:3px solid #fff;box-shadow:0 8px 24px rgba(0,0,0,.32);flex:0 0 60px}
  .whatsapp .wa-text{display:none}
  .whatsapp .wa-icon{width:34px;height:34px;flex-basis:34px;font-size:inherit}
  .site-header{gap:12px}
}
@media(max-width:380px){
  .whatsapp{width:56px;height:56px;min-height:56px;flex-basis:56px}
  .whatsapp .wa-icon{width:31px;height:31px;flex-basis:31px}
}
@media(prefers-reduced-motion:no-preference){
  .whatsapp{animation:wa-pop .45s ease-out both}
  @keyframes wa-pop{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}
}

/* Transparente Logos in allen Themes */
.logo img,footer img,.adm-head img{background:transparent!important}
:root[data-theme="dark"] .logo img,:root[data-theme="dark"] footer img{filter:none}


/* V2.1: ruhige WhatsApp-Kontaktleiste statt großem Kreis */
.whatsapp{background:#111;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:8px;box-shadow:none;min-height:46px;padding:0 16px;gap:10px}
.whatsapp:hover{background:#252525;box-shadow:none;transform:translateY(-1px)}
.whatsapp .wa-icon{width:25px;height:25px;flex-basis:25px;color:#25D366}
.whatsapp .wa-text{font-size:13px;letter-spacing:.01em}
@media(max-width:650px){
  body{padding-bottom:78px}
  .site-header .whatsapp{position:fixed;z-index:80;right:14px;bottom:14px;width:auto;height:52px;min-height:52px;max-width:calc(100vw - 28px);padding:0 18px 0 13px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#111;box-shadow:0 10px 30px rgba(0,0,0,.28);flex:initial;animation:none}
  .site-header .whatsapp .wa-text{display:inline;font-size:14px}
  .site-header .whatsapp .wa-icon{width:29px;height:29px;flex-basis:29px;color:#25D366}
}

/* Version 2.0: klar erkennbarer WhatsApp-Button */
.whatsapp,.site-header .whatsapp{background:#25D366!important;color:#fff!important;border:2px solid #fff!important;border-radius:999px!important;box-shadow:0 10px 28px rgba(0,0,0,.28)!important;min-height:50px;padding:0 20px 0 14px;gap:10px}
.whatsapp:hover,.site-header .whatsapp:hover{background:#20bd5a!important;transform:translateY(-1px)}
.whatsapp .wa-icon,.site-header .whatsapp .wa-icon{color:#fff!important;width:29px;height:29px;flex-basis:29px}
.whatsapp .wa-text,.site-header .whatsapp .wa-text{display:inline!important;color:#fff!important;font-size:14px;font-weight:850;white-space:nowrap}
@media(max-width:650px){
  body{padding-bottom:86px}
  .site-header .whatsapp{right:14px;bottom:14px;height:58px;min-height:58px;padding:0 21px 0 15px;border-radius:999px!important;box-shadow:0 12px 32px rgba(0,0,0,.34)!important}
  .site-header .whatsapp .wa-icon{width:33px;height:33px;flex-basis:33px}
  .site-header .whatsapp .wa-text{font-size:15px}
}

.btn.outline{background:transparent!important;color:#a40000!important;border:1px solid #a40000!important}.btn.outline:hover{background:#fff1f1!important}
