/* Öffentliche Lokal-Produktseite. Nur Marketing; keine App-Daten oder Ablage. */
.lokal-seite{--lokal-akzent:var(--ok-ink);--lokal-sanft:color-mix(in srgb,var(--ok) 12%,var(--card));--gap:clamp(20px,4vw,48px);color-scheme:light;}
body{margin:0;font-family:var(--font);font-size:var(--fs-base);line-height:1.65;color:var(--ink);background:var(--card);}
*{box-sizing:border-box;}
.lokal-seite a{color:inherit;text-decoration:none;}
.lokal-seite a:focus-visible{outline:3px solid var(--lokal-akzent);outline-offset:5px;}
.lokal-sprung{position:fixed;top:0;left:24px;z-index:1000;padding:12px 20px;background:var(--card);transform:translateY(-120%);}
.lokal-sprung:focus{transform:none;}
.lokal-rahmen{width:min(1180px,100%);margin-inline:auto;padding-inline:var(--gap);}
.lokal-hero{overflow:hidden;background:linear-gradient(120deg,var(--lokal-sanft),var(--card));}
.lokal-hero-innen{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,4vw,64px);padding-block:clamp(40px,6vw,88px);}
.lokal-produktwahl{display:flex;gap:24px;margin-bottom:32px;font-size:var(--fs-sm);}
.lokal-produktwahl a{text-decoration:none;color:var(--sub);padding-bottom:5px;}
.lokal-produktwahl a[aria-current]{color:var(--lokal-akzent);font-weight:700;}
.lokal-augenbraue{margin:0 0 16px;font-size:var(--fs-sm);font-weight:650;letter-spacing:.045em;color:var(--lokal-akzent);}
.lokal-hero h1{margin:0 0 24px;font-size:clamp(40px,4.6vw,64px);line-height:1.06;letter-spacing:-.05em;font-weight:650;}
.lokal-vorspann{max-width:520px;margin:0;color:var(--sub);font-size:var(--fs-lg);}
.lokal-aktionen{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px;}
.lokal-knopf{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--lokal-akzent);border-radius:var(--r-card);background:var(--lokal-akzent);color:var(--card)!important;text-decoration:none;font-size:var(--fs-base);font-weight:650;transition:background-color .18s ease,transform .18s ease;}
.lokal-knopf:hover{background:var(--ink);transform:translateY(-1px);}
.lokal-textlink{font-size:var(--fs-sm);font-weight:600;}
.lokal-status{margin:24px 0 0;font-size:var(--fs-sm);color:var(--sub);display:flex;align-items:center;gap:9px;}
.lokal-status:before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:var(--lokal-akzent);}
.lokal-geraet{position:relative;margin:0;padding-bottom:32px;min-width:0;}
.lokal-geraet img{display:block;width:100%;height:auto;object-fit:contain;}
.lokal-geraet figcaption{position:absolute;right:8%;bottom:7%;padding:12px 18px;border:1px solid color-mix(in srgb,var(--lokal-akzent) 20%,var(--card));border-radius:var(--r-card);background:var(--card);color:var(--lokal-akzent);font-size:var(--fs-sm);font-weight:600;}
.lokal-grundlagen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding-block:64px;}
.lokal-nummer{font-size:var(--fs-sm);color:var(--lokal-akzent);}
.lokal-grundlagen h2{margin:12px 0;font-size:var(--fs-xl);line-height:1.25;letter-spacing:-.025em;}
.lokal-grundlagen p{margin:0;color:var(--sub);font-size:var(--fs-base);}
.lokal-unterschied{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-block:56px;border-top:1px solid var(--line);}
.lokal-unterschied h2,.lokal-interesse h2{font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-.04em;margin:0 0 20px;}
.lokal-unterschied p,.lokal-interesse p{max-width:540px;color:var(--sub);}
.lokal-unterschied dl{margin:0;}
.lokal-unterschied dl div+div{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);}
.lokal-unterschied dt{font-weight:650;margin-bottom:8px;}
.lokal-unterschied dd{margin:0;color:var(--sub);}
.lokal-interesse{scroll-margin-top:100px;display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:center;padding-block:48px 64px;}
.lokal-interesse .lokal-klein{font-size:var(--fs-sm);}
.lokal-anfrage{padding:32px;border-radius:var(--r-card);background:var(--lokal-sanft);}
.lokal-anfrage p{margin-bottom:0;font-size:var(--fs-sm);}
@media(max-width:900px){.lokal-hero-innen{gap:24px;}.lokal-vorspann{font-size:var(--fs-base);}.lokal-grundlagen{gap:24px;}.lokal-unterschied{gap:32px;}}
/* Der Anmeldeweg bleibt auch am Telefon sichtbar; der gemeinsame Kopf
   verwendet dort das kompakte Logo und kleinere Knöpfe. */
@media(max-width:700px){.lokal-hero-innen{grid-template-columns:1fr;padding-block:32px;}.lokal-geraet{width:min(440px,100%);margin-inline:auto;}.lokal-grundlagen,.lokal-unterschied,.lokal-interesse{grid-template-columns:1fr;gap:28px;padding-block:36px;}.lokal-grundlagen article+article{padding-top:24px;border-top:1px solid var(--line);}.lokal-produktwahl{margin-bottom:24px;}.lokal-anfrage{padding:24px;}.lokal-anfrage .lokal-knopf{width:100%;}}
@media(prefers-reduced-motion:reduce){.lokal-knopf{transition:none;}.lokal-knopf:hover{transform:none;}}
@media(max-width:360px){
 .lokal-seite nav.kopf .kopf-btn{padding-inline:8px;font-size:12px;min-height:44px;}
}
/* Anfrageformular (v3.31.0, static/js/anfrage-lokal.js) */
.lokal-formular{display:flex;flex-direction:column;gap:12px;}
.lokal-formular h3,.lokal-fertig h3{margin:0 0 4px;font-size:var(--fs-lg);}
.lokal-formular label{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-sm);font-weight:600;color:var(--ink);}
.lokal-formular input,.lokal-formular textarea{width:100%;min-width:0;box-sizing:border-box;font:inherit;font-weight:400;font-size:var(--fs-base);padding:10px 12px;border:1px solid var(--line-kraeftig);border-radius:var(--r-control);background:var(--card);color:var(--ink);}
.lokal-formular input:focus-visible,.lokal-formular textarea:focus-visible{outline:3px solid var(--lokal-akzent);outline-offset:1px;}
.lokal-formular input.lokal-falsch{border-color:var(--bad);}
.lokal-feldpaar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;}
.lokal-interesse>*{min-width:0;}
.lokal-formular .lokal-zust{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;color:var(--sub);}
.lokal-formular .lokal-zust input{width:auto;margin-top:5px;flex:none;}
.lokal-fehler{margin:0;color:var(--bad-ink);font-size:var(--fs-sm);}
.lokal-fertig p{margin:0;}
@media(max-width:700px){.lokal-feldpaar{grid-template-columns:1fr;}.lokal-formular .lokal-knopf{width:100%;}}
.lokal-formular[hidden]{display:none;}
