/* =====================================================================
   L&B Himberg · Homepage lb-himberg.at – Stand „Eröffnung demnächst“
   Gestaltung: Variante A „Leinen“ (warm-minimalistisch-editorial)
   Quelle: mockups/variante-a-leinen.html (SHA-256 c57878631114fab3…), übernommen am 12.10.2026
   Regeln: keine Inline-Stile, keine externen Ressourcen (CSP 'self')
   ===================================================================== */
/* Schriften selbst gehostet (SIL OFL, siehe /schriften/LIZENZ-OFL.txt) – keine Verbindung zu Google */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:100 900;font-display:swap;src:url("/schriften/fraunces-latin-opsz-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:100 900;font-display:swap;src:url("/schriften/fraunces-latin-opsz-italic.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("/schriften/inter-latin-wght-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--creme:#F7F3EE; --weiss:#FFFFFF; --sand:#EFE7DC; --sand-tief:#E7DCCD;--tinte:#1C1A17; --gedaempft:#6B6560; --karamell:#D4A574; --karamell-hover:#C99862;--karamell-hell:#F2E4D2; --akzent:#8A5E38; --gruen:#2F4A3F; --gruen-tief:#263D33;--linie:#E4DCD1; --linie-stark:#D2C5B4; --fehler:#9B3522; --ok:#2E6A4E;--creme-auf-gruen:rgba(247,243,238,.74);--serif:"Fraunces", "Iowan Old Style", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--r-karte:12px; --r-feld:8px;--schatten:none;--schatten-hoch:0 2px 6px rgba(28,26,23,.05), 0 30px 60px -24px rgba(28,26,23,.30);--ease:cubic-bezier(.2,.7,.2,1);}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
img{max-width:100%}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.site{min-height:100%;background:var(--creme);color:var(--tinte);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.site p{margin:0 0 1em}
.site h1,.site h2,.site h3,.site h4{margin:0}
.h1,.h2,.h3{font-family:var(--serif);font-weight:360;letter-spacing:-.018em;color:var(--tinte);font-optical-sizing:auto}
.h1{font-size:clamp(40px,5.3vw,72px);line-height:1.05}
.h2{font-size:clamp(34px,4.2vw,56px);line-height:1.07}
.h3{font-size:clamp(26px,2.4vw,32px);line-height:1.15}
.h1 em,.h2 em,.h3 em{font-style:italic;font-weight:300;color:var(--akzent);letter-spacing:-.01em}
.lead{font-size:19px;line-height:1.6;color:var(--gedaempft);max-width:38em}
.klein{font-size:14px;line-height:1.55}
.gedaempft{color:var(--gedaempft)}
.site a{color:var(--akzent);text-decoration-thickness:1px;text-underline-offset:3px}
.site a:hover{color:var(--tinte)}
.ueberzeile{display:flex;align-items:center;gap:14px;font:600 12px/1.2 var(--sans) !important;letter-spacing:.12em !important;text-transform:uppercase;color:var(--akzent);margin:0 0 22px !important}
.ueberzeile::before{content:"";width:28px;height:1px;background:currentColor;opacity:.7;flex:none}
.ueberzeile[data-nr]::before{content:attr(data-nr);width:auto;height:auto;opacity:1;padding-right:42px;background:linear-gradient(currentColor,currentColor) no-repeat right center/28px 1px;font:italic 400 15px/1 var(--serif);letter-spacing:0;text-transform:none}
.ueberzeile-hell{color:#DCB185}/* Karamell aufgehellt: 12px auf Grün braucht 4,5:1 (Karamell #D4A574 nur 4,34:1, so 4,91:1) */
.beispiel{display:inline-block;font:700 10px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#7A4B1E;background:#F6E7CF;padding:4px 7px;border-radius:999px;vertical-align:middle}
.wrap{max-width:1240px;margin:0 auto;padding:0 48px}
.abschnitt{padding:128px 0;scroll-margin-top:72px}
.abschnitt-sand{background:var(--sand)}
.kopfzeile{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px 72px;align-items:end;margin-bottom:64px}
.kopfzeile .lead{margin:0}
.kopfzeile-mitte{grid-template-columns:1fr;text-align:center;max-width:820px;margin-left:auto;margin-right:auto;justify-items:center}
.kopfzeile-mitte .ueberzeile{justify-content:center}
.kopfzeile-mitte .lead{margin:0 auto}
.skip{position:absolute;left:16px;top:-60px;z-index:50;background:var(--tinte);color:var(--creme) !important;padding:10px 16px;border-radius:8px;text-decoration:none}
.skip:focus{top:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;border:1px solid transparent;font:600 15px/1 var(--sans);letter-spacing:.005em;cursor:pointer;text-decoration:none !important;white-space:nowrap;transition:background-color .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),transform .25s var(--ease),box-shadow .25s var(--ease)}
.btn .ico{width:18px;height:18px;transition:transform .3s var(--ease)}
.btn:hover .ico{transform:translateX(3px)}
.btn-primaer{background:var(--karamell);color:var(--tinte) !important}
.btn-primaer:hover{background:var(--karamell-hover);box-shadow:0 10px 24px -12px rgba(138,94,56,.7)}
.btn-primaer:active{transform:translateY(1px)}
.btn-linie{background:transparent;border-color:var(--tinte);color:var(--tinte) !important}
.btn-linie:hover{background:var(--tinte);color:var(--creme) !important}
.btn-linie:hover .ico{transform:none}
.btn-voll{width:100%}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;box-shadow:none}
.textlink{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font:600 15px/1.2 var(--sans);color:var(--tinte);border-bottom:1px solid var(--karamell);padding:6px 0 5px}
.textlink .ico{width:18px;height:18px;transition:transform .3s var(--ease)}
.textlink:hover .ico{transform:translateX(4px)}
.slot{position:relative;overflow:hidden;background:var(--sand-tief)}
.slot > img{display:block;width:100%;height:100%;object-fit:cover}
.slot[data-kennz]::before{content:attr(data-kennz);position:absolute;right:10px;bottom:10px;z-index:2;font:500 10.5px/1 var(--sans);letter-spacing:.04em;color:var(--tinte);background:rgba(247,243,238,.88);padding:5px 8px;border-radius:999px;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.kopf{position:relative;z-index:8;background:var(--creme);border-bottom:1px solid var(--linie)}
.kopf-innen{display:flex;align-items:center;gap:32px;height:86px}
.marke{display:flex;flex-direction:column;text-decoration:none !important;color:var(--tinte) !important;line-height:1;flex:none}
.marke-wort{font-family:var(--serif);font-size:27px;font-weight:450;letter-spacing:.08em;color:var(--tinte);white-space:nowrap;line-height:1}
.marke-wort em{font-style:italic;font-weight:300;color:var(--akzent);letter-spacing:.02em;margin:0 .04em}
.marke-zusatz{font-size:10.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gedaempft);margin-top:7px;white-space:nowrap}
.hauptnav{display:flex;gap:26px;margin-left:auto}
.hauptnav a{position:relative;color:var(--tinte) !important;text-decoration:none;font-size:15px;font-weight:500;padding:8px 0;white-space:nowrap}
.hauptnav a::after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:1px;background:var(--akzent);transition:right .35s var(--ease)}
.hauptnav a:hover::after{right:0}
.kopf-rechts{display:flex;align-items:center;gap:18px}
.burger{all:unset;cursor:pointer;display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--linie-stark)}
.burger .ico{width:20px;height:20px}
.mobilmenue{border-top:1px solid var(--linie);background:var(--creme);padding:8px 0 24px}
.mobilmenue nav > a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--linie);font-family:var(--serif);font-size:24px;font-weight:380;color:var(--tinte) !important;text-decoration:none}
.mm-unten{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:780px;border-bottom:1px solid var(--linie);position:relative;z-index:6}
.hero-bild{position:relative;min-height:100%}
.hero-foto{position:absolute;inset:0}
.hero-foto img{filter:saturate(.96) sepia(.06)}
.hero-badge{position:absolute;left:32px;top:32px;z-index:3;display:inline-flex;align-items:center;gap:10px;margin:0 !important;padding:10px 16px;border-radius:999px;background:rgba(247,243,238,.92);font:600 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--tinte);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.punkt{width:8px;height:8px;border-radius:50%;background:var(--karamell);box-shadow:0 0 0 4px rgba(212,165,116,.28);flex:none}
.hero-inset{position:absolute !important;left:32px;bottom:32px;width:min(200px,30%);aspect-ratio:4/5;z-index:3;border:7px solid var(--creme)}
.hero-inset[data-kennz]::before{right:6px;bottom:6px;font-size:9px;padding:3px 6px}
.hero-text{display:flex;flex-direction:column;justify-content:center;padding:72px max(56px,calc((100vw - 1240px) / 2 + 48px)) 72px 72px;max-width:none}
.hero-lead{margin-top:28px !important}
.buchkarte{position:relative;margin-top:36px;background:var(--weiss);border:1px solid var(--linie-stark);border-radius:var(--r-karte);box-shadow:0 1px 0 var(--linie)}
.buchkarte-fuss{display:flex;align-items:flex-end;gap:12px;padding:12px 12px 12px 20px;border-top:1px solid var(--linie)}
.vertrauen{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px;color:var(--gedaempft)}
.vertrauen li{display:inline-flex;align-items:center;gap:7px}
.vertrauen .ico{width:16px;height:16px;color:var(--akzent);stroke-width:2}
.band{background:var(--sand);padding:112px 0}
.band .kopfzeile{margin-bottom:72px}
.band .lead::first-letter{float:left;font:300 3.4em/.8 var(--serif);margin:6px 10px 0 0;color:var(--akzent)}
.vorteile{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--linie-stark)}
.vorteil{padding:36px 32px 8px 0;margin-right:32px;border-right:1px solid var(--linie-stark)}
.vorteil:last-child{border-right:0;margin-right:0}
.vorteil + .vorteil{padding-left:0}
.ico-gross{width:36px;height:36px;stroke-width:1.2;color:var(--akzent);margin-bottom:26px}
.vorteil h3{font:600 17px/1.35 var(--sans);margin-bottom:10px !important;letter-spacing:-.005em}
.vorteil p{font-size:15px;line-height:1.6;color:var(--gedaempft);margin:0}
.karten3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.skarte{display:flex;flex-direction:column;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r-karte);overflow:hidden;transition:border-color .4s var(--ease),transform .9s var(--ease),opacity .9s var(--ease) !important}
.skarte:hover{border-color:var(--linie-stark)}
.skarte-foto{aspect-ratio:4/5}
.skarte-foto img{transition:transform 1.4s var(--ease)}
.skarte:hover .skarte-foto img{transform:scale(1.045)}
.skarte-text{display:flex;flex-direction:column;gap:12px;padding:28px 28px 26px;flex:1}
.skarte-typ{margin:0 !important;font:600 11.5px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--akzent)}
.skarte h3{font-family:var(--serif);font-weight:380;font-size:32px;line-height:1.1;letter-spacing:-.015em}
.fakten{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 !important;font-size:14px;color:var(--gedaempft)}
.fakten > span{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.fakten .ico{width:17px;height:17px;color:var(--akzent)}
.skarte-beschr{margin:4px 0 0 !important;font-size:15.5px;line-height:1.6}
.hakenliste{list-style:none;padding:0;margin:4px 0 0;display:grid;gap:8px;font-size:15px}
.hakenliste li{position:relative;padding-left:26px}
.hakenliste li::before{content:"";position:absolute;left:2px;top:.42em;width:12px;height:7px;border-left:1.6px solid var(--akzent);border-bottom:1.6px solid var(--akzent);transform:rotate(-45deg)}
.hakenliste.klein{font-size:14px}
.skarte-fuss{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:22px;border-top:1px solid var(--linie)}
.preis-ab{margin:0 !important;font-size:14px;color:var(--gedaempft);white-space:nowrap}
.preis-ab strong{font-family:var(--serif);font-weight:400;font-size:32px;color:var(--tinte);letter-spacing:-.01em;margin:0 2px}
.preis-hinweis{margin:28px 0 0 !important;font-size:14px;color:var(--gedaempft);max-width:820px}
.vergleich{margin-top:72px;background:var(--sand);border-radius:var(--r-karte);padding:56px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:56px;align-items:end}
.vergleich-text p{color:var(--gedaempft);margin:18px 0 0 !important;max-width:30em}
.iso{margin-top:28px;background:transparent;border-radius:var(--r-karte)}
.iso > img{object-fit:contain;height:auto}
.plaene{--k:.33;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:20px 24px}
.pm{margin:0;display:flex;flex-direction:column;align-items:center}
.plan{background:transparent}
.plan svg{display:block;width:100%;height:auto;color:#3B342E;--plan-boden:#FFFFFF;--plan-bad:#EEE6DA;--plan-moebel:#FCFAF7;--plan-glas:#DCE6EA;--plan-akzent:#D4A574;--plan-akzent-deckkraft:.55;--plan-gebaeude:#2F4A3F;--plan-gebaeude-deckkraft:.92;--plan-gruen:#8C9A7E;--plan-hell:#F7F3EE;--plan-font:"Inter",system-ui,sans-serif}
.plan-mini [data-ebene="beschriftung"],.plan-mini [data-ebene="masse"],.plan-mini [data-ebene="fusszeile"]{display:none}
.plan-mini[data-kennz]::before{display:none}
.pm-compact,.pm-studio{width:calc(361px * var(--k))}
.pm-plus{width:calc(807px * var(--k))}
.plan-mini{width:100%}
.pm figcaption{margin-top:14px;font-size:13px;color:var(--gedaempft);text-align:center;line-height:1.4}
.pm figcaption strong{display:block;font-family:var(--serif);font-weight:420;font-size:18px;color:var(--tinte)}
.plaene-hinweis{flex-basis:100%;margin:6px 0 0 !important;text-align:center;font-size:12.5px;color:var(--gedaempft)}
.ablauf{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:96px;align-items:center}
.ablauf-text .lead{margin-top:24px !important}
.schritte{list-style:none;padding:0;margin:52px 0 0}
.schritt{display:grid;grid-template-columns:118px 1fr;gap:24px;padding:34px 0;border-top:1px solid var(--linie-stark)}
.schritt:last-child{border-bottom:1px solid var(--linie-stark)}
.ziffer{font-family:var(--serif);font-weight:350;font-size:84px;line-height:.82;color:#A87444;letter-spacing:-.04em;font-variant-numeric:lining-nums}
.schritt h3{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.2;margin-bottom:10px !important;letter-spacing:-.01em}
.schritt p{margin:0 !important;color:var(--gedaempft);font-size:16.5px}
.netz{display:flex;gap:16px;align-items:flex-start;margin-top:36px;padding:22px 24px;background:var(--creme);border:1px solid var(--linie-stark);border-radius:var(--r-karte)}
.netz .ico{width:26px;height:26px;color:var(--akzent);margin-top:2px}
.netz p{margin:0 !important;font-size:15.5px;color:var(--gedaempft)}
.netz strong{color:var(--tinte)}
.ablauf-bild{position:relative;padding-bottom:40px}
.ablauf-bild > .slot{aspect-ratio:4/5;border-radius:var(--r-karte)}
.codemail{position:absolute;left:-48px;bottom:0;z-index:4;width:300px;background:var(--weiss);border-radius:var(--r-karte);box-shadow:var(--schatten-hoch);padding:20px 22px}
.cm-kopf{display:flex;align-items:center;gap:8px;margin:0 0 12px !important;font:600 13px/1.3 var(--sans)}
.cm-kopf .ico{width:18px;height:18px;color:var(--akzent)}
.cm-code{display:flex;gap:6px;margin:0 0 12px !important}
.cm-code span{display:grid;place-items:center;font:500 22px/1 var(--serif);font-variant-numeric:tabular-nums;background:var(--creme);border:1px solid var(--linie);border-radius:8px;width:38px;height:46px}
.cm-fuss{display:flex;justify-content:space-between;align-items:center;margin:0 !important;font-size:12.5px;color:var(--gedaempft)}
.fassade{margin:0 0 32px}
.fassade .slot{aspect-ratio:16/7;border-radius:var(--r-karte);background:#DCE7EC}
.kacheln4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.kachel{margin:0}
.kachel .slot{aspect-ratio:4/5;border-radius:var(--r-karte)}
.kachel .slot img{transition:transform 1.4s var(--ease)}
.kachel:hover .slot img{transform:scale(1.04)}
.kachel figcaption{padding:18px 4px 0}
.kachel h3{font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.01em;margin-bottom:6px !important}
.kachel p{margin:0 !important;font-size:15px;color:var(--gedaempft)}
.schnitt{margin-top:56px;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r-karte);padding:48px 48px 36px}
.schnitt-kopf{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:48px;align-items:end;margin-bottom:12px}
.schnitt-kopf p{margin:0 !important;color:var(--gedaempft);font-size:16px}
.schnitt-grafik{background:transparent}
.schnitt-grafik svg{max-height:440px}
.ausstattung-icons{list-style:none;padding:24px 0 0;margin:8px 0 0;border-top:1px solid var(--linie);display:flex;flex-wrap:wrap;justify-content:flex-start;gap:14px 40px;font-size:14.5px;font-weight:500}
.wisch-hinweis{display:none;margin:10px 0 0 !important;font-size:13px;color:var(--gedaempft);text-align:center}
.ausstattung-icons li{display:inline-flex;align-items:center;gap:9px}
.ausstattung-icons .ico{width:22px;height:22px;color:var(--akzent)}
.zitat{position:relative;min-height:640px;display:grid;place-items:center;text-align:center;overflow:hidden}
.zitat-foto{position:absolute !important;inset:0}
.zitat-foto img{filter:saturate(.9) sepia(.08)}
.zitat-schleier{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(28,26,23,.50) 0%,rgba(28,26,23,.64) 55%,rgba(28,26,23,.74) 100%);pointer-events:none}
.zitat .ueberzeile-hell{color:var(--creme)}
.zitat .ueberzeile,.zitat figcaption{text-shadow:0 1px 2px rgba(28,26,23,.55)}
.zitat-inhalt{position:relative;z-index:2;margin:0 auto;padding-top:96px !important;padding-bottom:96px !important;color:var(--creme);display:flex;flex-direction:column;align-items:center}
.zitat .ueberzeile{justify-content:center}
.zitat .ueberzeile::after{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.zitat blockquote{margin:0;max-width:940px}
.zitat blockquote p{margin:0 !important;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(30px,4.1vw,54px);line-height:1.18;letter-spacing:-.015em;color:var(--creme)}
.zitat figcaption{margin-top:30px;font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--creme)}
.zitat .slot[data-kennz]::before{z-index:3}
.firmen{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:96px;align-items:center}
.firmen-text .lead{margin:28px 0 0 !important}
.hakenliste-gross{margin-top:32px !important;gap:14px;font-size:16.5px}
.hakenliste-gross li{padding-left:30px}
.firmen-bild{position:relative;padding-bottom:64px}
.firmen-bild > .slot{aspect-ratio:4/5;border-radius:var(--r-karte);width:86%;margin-left:auto}
.anfrage{position:absolute;left:0;bottom:0;width:min(380px,74%);background:var(--weiss);border:1px solid var(--linie-stark);border-radius:var(--r-karte);padding:28px 28px 24px;z-index:3}
.anfrage h3{font-family:var(--serif);font-weight:400;font-size:24px;margin-bottom:4px !important}
.anfrage .klein{margin:0 0 16px !important}
.lage{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:64px;align-items:start}
.karte-box{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r-karte);overflow:hidden;position:sticky;top:24px}
.karte-tabs{display:flex;gap:4px;padding:10px;border-bottom:1px solid var(--linie)}
.karte-tabs button{all:unset;cursor:pointer;padding:10px 18px;border-radius:999px;font:600 14px/1 var(--sans);color:var(--gedaempft);transition:background .2s,color .2s}
.karte-tabs button[aria-selected="true"]{background:var(--tinte);color:var(--creme)}
.karte-tabs button:hover:not([aria-selected="true"]){background:var(--sand)}
.karte-grafik{background:#F4EFE8}
.karte-grafik svg{display:block;width:100%;height:auto}
#karte-haus .karte-grafik{background:#FBF9F6;padding:8px}
#karte-haus .karte-grafik[data-kennz]::before{display:none}
.umgebung text{font-family:var(--sans)}
.um-grund{fill:#F4EFE8}
.um-stadt{fill:#E9E1D5}
.um-gruen ellipse{fill:#C9D0BC;opacity:.55}
.um-region{font:600 13px var(--sans);letter-spacing:.32em;fill:#A79D90}
.um-donau{fill:none;stroke:#C5D3D6;stroke-width:12;stroke-linecap:round}
.um-wasser{font:italic 500 12px var(--sans);fill:#7F979C;letter-spacing:.06em}
.um-strasse-rand path{fill:none;stroke:#D7CCBD;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}
.um-strasse path{fill:none;stroke:#FFFFFF;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.um-neben path{fill:none;stroke:#FFFFFF;stroke-width:3;stroke-linecap:round}
.um-schild rect{fill:#6B6560}
.um-schild text{font:700 11px var(--sans);fill:#fff}
.um-route{fill:none;stroke:#A9713F;stroke-width:3.2;stroke-linecap:round;stroke-dasharray:1 9}
.um-ort circle{fill:var(--weiss);stroke:var(--tinte);stroke-width:2}
.um-ort text{font:600 14px var(--sans);fill:var(--tinte)}
.um-ort-klein text{font:500 12.5px var(--sans);fill:#5E5852}
.um-klein{font:500 11.5px var(--sans) !important;fill:#6B6560 !important}
.um-flug circle{fill:var(--tinte)}
.um-flug path{fill:var(--weiss)}
.um-flug text{font:600 14px var(--sans);fill:var(--tinte)}
.um-chip rect{fill:var(--tinte)}
.um-chip text{font:600 13px var(--sans);fill:var(--creme)}
.um-pin path{fill:var(--karamell);stroke:var(--tinte);stroke-width:1.5}
.um-pin-punkt{fill:var(--tinte)}
.um-halo{fill:var(--karamell);opacity:.28;transform-origin:center;transform-box:fill-box;animation:halo 2.8s var(--ease) infinite}
@keyframes halo{0%{transform:scale(.6);opacity:.45}100%{transform:scale(1.6);opacity:0}}
.um-haus-label rect{fill:var(--weiss);stroke:var(--linie-stark)}
.um-haus-t{font:italic 500 16px var(--serif) !important;letter-spacing:.06em;fill:var(--tinte)}
.um-nord circle{fill:var(--weiss);stroke:var(--linie-stark)}
.um-nord path{fill:var(--tinte)}
.um-nord text{font:600 11px var(--sans);fill:var(--tinte)}
.um-mass path{fill:none;stroke:#6B6560;stroke-width:1.5}
.um-mass text{font:500 11px var(--sans);fill:#6B6560}
.karte-grafik svg.umgebung-mobil{display:none}
.umm-rand{fill:none;stroke:#D7CCBD;stroke-width:8;stroke-linecap:round;stroke-linejoin:round}
.umm-strasse{fill:none;stroke:#FFFFFF;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.umm-route{fill:none;stroke:#A9713F;stroke-width:3;stroke-linecap:round;stroke-dasharray:1 8}
.umm-punkt{fill:var(--weiss);stroke:var(--tinte);stroke-width:2}
.umgebung-mobil .umm-region{font:600 13px var(--sans);letter-spacing:.3em;fill:#A79D90}
.umgebung-mobil .umm-wasser{font:italic 500 12px var(--sans);letter-spacing:.04em;fill:#4F6A70}
.umgebung-mobil .umm-ort{font:600 16px var(--sans);fill:var(--tinte);paint-order:stroke;stroke:#F4EFE8;stroke-width:4px;stroke-linejoin:round}
.umgebung-mobil .umm-klein{font:500 13px var(--sans);fill:#5E5852;paint-order:stroke;stroke:#F4EFE8;stroke-width:3px;stroke-linejoin:round}
.umgebung-mobil .umm-fett{font-weight:600;font-size:14px;fill:var(--tinte)}
.umgebung-mobil .umm-schild rect{fill:#6B6560}
.umgebung-mobil .umm-schild text{font:700 12px var(--sans);fill:#fff}
.umgebung-mobil .umm-chip rect{fill:var(--tinte)}
.umgebung-mobil .umm-chip text{font:600 14px var(--sans);fill:var(--creme)}
.umgebung-mobil .umm-haus rect{fill:var(--weiss);stroke:var(--linie-stark)}
.umgebung-mobil .umm-haus .umm-klein{stroke:none}
.umgebung-mobil .umm-haus-t{font:italic 500 17px var(--serif);letter-spacing:.06em;fill:var(--tinte)}
.umgebung-mobil .umm-hinweis{font:500 11px var(--sans);fill:#5E5852}
.adresse{display:flex;gap:14px;font-style:normal;font-size:16px;line-height:1.55;padding-bottom:26px;margin-bottom:8px;border-bottom:1px solid var(--linie-stark)}
.adresse .ico{width:24px;height:24px;color:var(--akzent);margin-top:2px}
.adresse strong{font-family:var(--serif);font-weight:450;font-size:19px;letter-spacing:.04em}
.fahrzeiten h3{font:600 12px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--akzent);margin:26px 0 6px !important}
.zeiten-liste{margin:0}
.zeiten-liste > div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:11px 0;border-bottom:1px solid var(--linie)}
.zeiten-liste dt{display:flex;align-items:center;gap:11px;font-size:15.5px}
.zeiten-liste dt .ico{width:19px;height:19px;color:var(--gedaempft)}
.zeiten-liste dd{margin:0;font-family:var(--serif);font-size:18px;font-weight:420;white-space:nowrap}
.naehe{list-style:none;padding:0;margin:4px 0 14px;display:grid;grid-template-columns:1fr;gap:8px;font-size:14.5px}
.naehe li{position:relative;padding-left:14px}
.naehe li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--karamell)}
.lage-kacheln{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}
.lkachel{margin:0;position:relative;border-radius:var(--r-karte);overflow:hidden}
.lkachel .slot{aspect-ratio:3/2}
.lkachel figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:48px 20px 18px;background:linear-gradient(180deg,transparent,rgba(28,26,23,.72));color:var(--creme);font-size:14px;line-height:1.4}
.lkachel figcaption strong{display:block;font-family:var(--serif);font-weight:400;font-size:22px}
.lkachel .slot[data-kennz]::before{top:10px;bottom:auto}
.direkt{background:var(--gruen);color:var(--creme);padding:120px 0}
.direkt .h2{color:var(--creme)}
.direkt .h2 em{color:var(--karamell)}
.direkt .lead{color:var(--creme-auf-gruen)}
.direkt-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.direkt-punkt{border-top:1px solid rgba(247,243,238,.24);padding-top:30px}
.direkt-nr{display:block;font-family:var(--serif);font-weight:300;font-size:44px;line-height:1;color:var(--karamell);margin-bottom:22px}
.direkt-punkt h3{font-family:var(--serif);font-weight:400;font-size:25px;color:var(--creme);margin-bottom:10px !important}
.direkt-punkt p{color:var(--creme-auf-gruen);font-size:15.5px;margin:0 !important}
.direkt-cta{margin-top:56px}
.direkt :focus-visible{outline-color:var(--creme) !important}
.faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:96px;align-items:start}
.faq-kopf{position:sticky;top:32px}
.faq-kopf .lead{margin:24px 0 0 !important}
.faq-kontakt{margin-top:32px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.faq-kontakt .klein{display:block;margin:0 !important;color:var(--gedaempft)}
.faq-kontakt .klein .ico{width:17px;height:17px;color:var(--akzent);margin:-3px 8px 0 0}
.akk{border-bottom:1px solid var(--linie-stark)}
.akk:first-child{border-top:1px solid var(--linie-stark)}
.akk-knopf{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;font-family:var(--serif);font-size:21px;font-weight:400;line-height:1.3;letter-spacing:-.008em;color:var(--tinte)}
.akk-knopf:hover{color:var(--akzent)}
.plus{flex:none;width:38px;height:38px;border-radius:50%;border:1px solid var(--linie-stark);display:grid;place-items:center;color:var(--tinte);transition:transform .35s var(--ease),background .35s var(--ease),border-color .35s}
.plus .ico{width:18px;height:18px}
.akk-inhalt p{margin:0 !important;padding:0 64px 26px 0;color:var(--gedaempft);font-size:16.5px}
.fuss{background:var(--gruen);color:var(--creme);padding:104px 0 40px;font-size:15px}
.fuss a{color:var(--creme) !important;text-decoration:none;opacity:.88}
.fuss a:hover{opacity:1;text-decoration:underline}
.fuss :focus-visible{outline-color:var(--creme) !important}
.fuss-raster{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px}
.marke-hell{color:var(--creme) !important;font-size:34px;margin-bottom:18px !important}
.marke-hell em{color:var(--karamell)}
.fuss-marke > p{color:var(--creme-auf-gruen)}
.fuss-kontakt{display:flex;flex-direction:column;gap:6px}
.fuss-kontakt a{display:inline-flex;align-items:center;gap:10px}
.fuss-kontakt .ico{width:17px;height:17px}
.fuss nav h2{font:600 12px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--creme-auf-gruen);margin:6px 0 20px !important}
.fuss nav ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.fuss nav small{opacity:.75;font-size:12px}
.fuss-unten{margin-top:80px;padding-top:28px;border-top:1px solid rgba(247,243,238,.18);display:grid;gap:10px;font-size:13px;color:var(--creme-auf-gruen)}
.fuss-unten p{margin:0 !important}
.ausstattung-liste{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;font-size:15.5px}
.ausstattung-liste li{display:flex;gap:12px;align-items:center}
.ausstattung-liste .ico{width:22px;height:22px;color:var(--akzent)}
.site :focus-visible{outline:2px solid var(--akzent);outline-offset:3px}
.site h1:focus,.site h2:focus,.site h3:focus{outline:none}
.wisch[tabindex]:focus-visible{outline:2px solid var(--akzent);outline-offset:3px}
@media (max-width: 1200px){
  .hauptnav{display:none}
  .burger{display:inline-flex}
  .kopf-rechts{margin-left:auto}
}
@media (max-width: 1180px){
  .hero-text{padding:64px 40px 64px 48px}
  .vorteile{grid-template-columns:1fr 1fr;row-gap:8px}
  .vorteil:nth-child(2){border-right:0;margin-right:0}
  .vorteil:nth-child(3),.vorteil:nth-child(4){border-top:1px solid var(--linie-stark)}
}
@media (max-width: 1024px){
  .wrap{padding:0 32px}
  .hero{grid-template-columns:1fr}
  .hero-bild{min-height:0;aspect-ratio:16/10}
  .hero-text{max-width:none;padding:56px 32px 64px}
  .kopfzeile{grid-template-columns:1fr;gap:20px}
  .karten3{grid-template-columns:1fr 1fr}
  .karten3 .skarte:last-child{grid-column:span 2}
  .karten3 .skarte:last-child .skarte-foto{aspect-ratio:16/9}
  .vergleich{grid-template-columns:1fr;padding:40px}
  .ablauf,.firmen,.faq,.lage{grid-template-columns:1fr;gap:56px}
  .ablauf-bild{max-width:520px;margin-left:48px}
  .kacheln4{grid-template-columns:1fr 1fr}
  .schnitt-kopf{grid-template-columns:1fr;gap:12px}
  .direkt-raster{grid-template-columns:1fr;gap:28px}
  .fuss-raster{grid-template-columns:1fr 1fr}
  .fuss-marke{grid-column:span 2}
}
@media (max-width: 760px){
  .site{font-size:16px}
  .wrap{padding:0 20px}
  .abschnitt{padding:72px 0}
  .lead{font-size:17px}
  .kopfzeile{margin-bottom:40px}
  .ueberzeile{margin-bottom:16px !important}
  .kopf-innen{height:68px;gap:12px}
  .marke-wort{font-size:23px}
  .marke-zusatz{font-size:9px;letter-spacing:.14em;margin-top:5px}
  .kopf-rechts{gap:8px}
  .btn-kopf{min-height:44px;padding:0 16px}
  .btn{min-height:48px}
  .karte-tabs button{min-height:44px;display:inline-flex;align-items:center}
  .textlink{padding:13px 0 12px}
  .fuss-kontakt a{display:inline-flex;min-height:44px;align-items:center}
  .fuss nav ul{gap:0}
  .fuss nav a{display:block;padding:10px 0}
  .hero-bild{aspect-ratio:3/2}
  .hero-badge{left:16px;top:16px;font-size:10.5px;padding:8px 12px}
  .hero-inset{display:none}
  .hero-text{padding:24px 20px 40px}
  .hero-text .ueberzeile{margin-bottom:12px !important}
  .hero-text .h1{font-size:36px}
  .buchkarte{order:1;margin-top:20px}
  .hero-lead{order:2;font-size:16px;margin-top:22px !important}
  .vertrauen{order:3}
  .buchkarte-fuss{flex-direction:column;align-items:stretch;padding:12px 16px 16px}
  .vertrauen{gap:8px 16px;font-size:13.5px}
  .band{padding:72px 0}
  .band .kopfzeile{margin-bottom:40px}
  .vorteile{grid-template-columns:1fr}
  .vorteil{border-right:0 !important;margin-right:0 !important;padding:26px 0 22px;border-top:1px solid var(--linie-stark)}
  .vorteile{border-top:0}
  .ico-gross{margin-bottom:16px;width:32px;height:32px}
  .karten3{grid-template-columns:1fr;gap:24px}
  .karten3 .skarte:last-child{grid-column:auto}
  .karten3 .skarte:last-child .skarte-foto,.skarte-foto{aspect-ratio:4/4.4}
  .skarte-text{padding:22px 20px 22px}
  .skarte h3{font-size:28px}
  .vergleich{padding:28px 18px;margin-top:48px;gap:32px}
  .plaene{--k:.38;gap:18px 14px}
  .vergleich{grid-template-columns:minmax(0,1fr)}
  .schritte{margin-top:32px}
  .schritt{grid-template-columns:64px 1fr;gap:14px;padding:24px 0}
  .ziffer{font-size:52px}
  .schritt h3{font-size:22px}
  .ablauf-bild{margin-left:0;max-width:none;padding-bottom:0}
  .codemail{position:relative;left:auto;bottom:auto;width:auto;margin:-60px 16px 0}
  .cm-code span{width:34px;height:42px;font-size:20px}
  .fassade .slot{aspect-ratio:16/9}
  .fassade .slot img{object-position:30% 50%}
  .kacheln4{grid-template-columns:1fr 1fr;gap:16px}
  .kachel h3{font-size:19px}
  .kachel p{font-size:13.5px}
  .schnitt{padding:24px 16px 20px;margin-top:40px}
  .schnitt-grafik,#karte-haus .karte-grafik{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .schnitt-grafik svg{width:900px;max-width:none;max-height:none}
  .schnitt-grafik .h46p-klein{font-size:12px}
  .schnitt-grafik .h46p-mini{font-size:11px}
  #karte-haus .karte-grafik svg{width:860px;max-width:none}
  .wisch-hinweis{display:block}
  .ausstattung-icons{justify-content:flex-start;gap:12px 18px;font-size:13px}
  .zitat{min-height:520px}
  .zitat-inhalt{padding-top:72px !important;padding-bottom:72px !important}
  .firmen-bild{padding-bottom:0}
  .firmen-bild > .slot{width:100%;aspect-ratio:4/3.4}
  .anfrage{position:relative;width:auto;margin:-48px 12px 0;padding:22px 18px}
  .naehe{grid-template-columns:1fr}
  .lage-kacheln{grid-template-columns:1fr;gap:14px;margin-top:40px}
  .lkachel .slot{aspect-ratio:16/9}
  .zeiten-liste dt{font-size:14.5px}
  .karte-box{position:static}
  .faq-kopf{position:static}
  .umgebung-desktop{display:none !important}
  .umgebung-mobil{display:block !important}
  .zeiten-liste dd{font-size:16px}
  .direkt{padding:72px 0}
  .direkt-nr{font-size:36px;margin-bottom:14px}
  .direkt-cta .btn{width:100%}
  .akk-knopf{font-size:18.5px;padding:20px 0;gap:16px}
  .akk-inhalt p{padding-right:0;font-size:15.5px}
  .faq{gap:40px}
  .fuss{padding:64px 0 120px}
  .fuss-raster{grid-template-columns:1fr;gap:36px}
  .fuss-marke{grid-column:auto}
  .fuss-unten{margin-top:48px}
  .ausstattung-liste{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  .um-halo{display:none}
}

/* Grundrisse, Hausschnitt, Lageskizze: Stile aus den SVG-Dateien (CSP: keine Inline-Stile) */
.h46p-wand{fill:var(--plan-wand,currentColor);stroke:none}
.h46p-trenn{fill:var(--plan-trenn,currentColor);fill-opacity:var(--plan-trenn-deckkraft,.55);stroke:none}
.h46p-boden{fill:var(--plan-boden,none);stroke:none}
.h46p-bad{fill:var(--plan-bad,none);stroke:none}
.h46p-flaeche{fill:var(--plan-flaeche,currentColor);fill-opacity:var(--plan-flaeche-deckkraft,.08);stroke:none}
.h46p-gebaeude{fill:var(--plan-gebaeude,currentColor);fill-opacity:var(--plan-gebaeude-deckkraft,.88);stroke:none}
.h46p-akzent{fill:var(--plan-akzent,currentColor);fill-opacity:var(--plan-akzent-deckkraft,.22);stroke:none}
.h46p-gruen{fill:var(--plan-gruen,#8C9A7E);fill-opacity:var(--plan-gruen-deckkraft,.28);stroke:none}
.h46p-moebel{fill:var(--plan-moebel,none);stroke:currentColor;stroke-width:1.2;stroke-linejoin:round}
.h46p-fein{fill:none;stroke:currentColor;stroke-width:.9;stroke-linecap:round;stroke-linejoin:round}
.h46p-duenn{fill:none;stroke:currentColor;stroke-width:.6;stroke-linecap:round;opacity:.7}
.h46p-tuer{fill:none;stroke:currentColor;stroke-width:.8;stroke-dasharray:3 3}
.h46p-blatt{fill:var(--plan-moebel,none);stroke:currentColor;stroke-width:1.2}
.h46p-glas{fill:var(--plan-glas,none);stroke:currentColor;stroke-width:.8}
.h46p-mass{fill:none;stroke:currentColor;stroke-width:.8}
.h46p-strich{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.h46p-punkt{fill:currentColor;stroke:none}
.h46p-hell{fill:var(--plan-hell,#fff);stroke:none}
.h46p-text{fill:currentColor;stroke:none;font-family:var(--plan-font,"Inter","Helvetica Neue",Helvetica,Arial,sans-serif)}
.h46p-text-hell{fill:var(--plan-hell,#fff);stroke:none;font-family:var(--plan-font,"Inter","Helvetica Neue",Helvetica,Arial,sans-serif)}
.h46p-raum{font-size:17px;font-weight:600;letter-spacing:.01em}
.h46p-qm{font-size:14px;font-weight:400}
.h46p-klein{font-size:11px;font-weight:500;letter-spacing:.04em;opacity:.78}
.h46p-mini{font-size:10px;font-weight:400;letter-spacing:.02em;opacity:.7}
.h46p-titel{font-size:15px;font-weight:600;letter-spacing:.06em}
svg .sv-1{fill-opacity:var(--plan-flaeche-deckkraft,.07) !important}
svg .sv-2{fill-opacity:var(--plan-akzent-deckkraft,.14) !important}
svg .sv-3{opacity:.55 !important}
svg .sv-4{font-size:18px !important;font-weight:700 !important}
svg .sv-5{fill:var(--plan-moebel,none) !important}
svg .sv-6{font-size:13px !important}
svg .sv-7{font-size:12px !important;letter-spacing:.02em !important}
svg .sv-8{font-size:12px !important}
svg .sv-9{stroke-width:1.4 !important}
svg .sv-10{stroke-width:9 !important}
svg .sv-11{fill-opacity:var(--plan-flaeche-deckkraft,.08) !important}
svg .sv-12{fill-opacity:.16 !important}
svg .sv-13{fill-opacity:.5 !important}
svg .sv-14{fill-opacity:var(--plan-flaeche-deckkraft,.1) !important}
svg .sv-15{fill-opacity:var(--plan-akzent-deckkraft,.22) !important}
svg .sv-16{fill-opacity:.55 !important}
svg .sv-17{stroke-width:2.4 !important}
svg .sv-18{opacity:.9 !important}
svg .sv-19{opacity:1 !important;font-weight:600 !important}
svg .sv-20{font-size:14px !important}
svg .sv-21{opacity:.85 !important}

/* =====================================================================
   Ergänzungen für die echte Seite „Eröffnung demnächst“
   (Kopfzeile fix, Menü und Fragen ohne JavaScript, Vormerken statt Buchen,
   Rechtsseiten, Markierung fehlender Angaben)
   ===================================================================== */
html{scroll-padding-top:86px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--creme)}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}

/* Kopfzeile bleibt oben; Sprungziele landen knapp darunter */
.kopf{position:sticky;top:0;z-index:30}
.abschnitt{scroll-margin-top:0}
.karte-box{top:110px}
.faq-kopf{top:118px}
.site .textlink{color:var(--tinte)}
.site .textlink:hover{color:var(--akzent)}
.btn-kopf{min-height:44px;padding:0 22px}

/* Menü (Handy/Tablet) als <details>: funktioniert ohne Skript */
.menue{display:none}
.menue > summary{list-style:none}
.menue > summary::-webkit-details-marker{display:none}
.burger .ico-zu{display:none}
.menue[open] .burger .ico-auf{display:none}
.menue[open] .burger .ico-zu{display:block}
.menue[open] .burger{background:var(--tinte);border-color:var(--tinte);color:var(--creme)}
.mobilmenue{position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 68px);overflow-y:auto;box-shadow:0 24px 40px -28px rgba(28,26,23,.45)}
.mm-unten .btn{flex:1}

/* Vormerken statt Buchungskarte */
.vormerkkarte{padding:0}
.vm-kopf{padding:22px 24px 18px}
.vm-label{margin:0 0 10px !important;font:600 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gedaempft)}
.vm-titel{font-family:var(--serif);font-weight:380;font-size:28px;line-height:1.15;letter-spacing:-.012em;margin:0 0 8px !important}
.vm-titel em{font-style:italic;font-weight:300;color:var(--akzent)}
.vm-text{margin:0 !important;font-size:15.5px;line-height:1.55;color:var(--gedaempft)}
.vm-fuss{flex-wrap:wrap;align-items:center;justify-content:space-between;padding:14px 16px 14px 20px}
.vm-alternativ{margin:0 !important;font-size:14px;color:var(--gedaempft)}

/* Preise folgen */
.preis-folgt{display:block;margin-top:6px;font-size:12.5px;font-weight:600;letter-spacing:.02em;color:var(--akzent);white-space:normal}

/* Studio-Details als <details> */
.mehr{border-top:1px solid var(--linie);margin-top:6px}
.mehr-knopf{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;font:600 15px/1.3 var(--sans);color:var(--tinte)}
.mehr-knopf::-webkit-details-marker{display:none}
.mehr-knopf:hover{color:var(--akzent)}
.mehr-knopf .plus{width:32px;height:32px}
.mehr[open] .plus,.akk[open] .plus{transform:rotate(45deg);background:var(--karamell);border-color:var(--karamell)}
.mehr-inhalt{padding:0 0 10px}
.mehr-inhalt > p{margin:0 0 14px !important;font-size:15px;line-height:1.6;color:var(--gedaempft)}
.mehr .ausstattung-liste{grid-template-columns:1fr;gap:10px;font-size:14.5px}
.mehr .ausstattung-liste .ico{width:20px;height:20px}

/* Häufige Fragen als <details> */
.akk-knopf{list-style:none}
.akk-knopf::-webkit-details-marker{display:none}
.akk[open] > .akk-knopf{color:var(--tinte)}
.akk-inhalt{display:block}

/* Firmen: Anfrage-Karte ohne Formular */
.anfrage .btn{margin-top:4px}
.anfrage .anfrage-alt{margin:14px 0 0 !important;color:var(--gedaempft)}

/* Lage: Reiter erst mit Skript, ohne Skript beide Ansichten untereinander */
.karte-panel + .karte-panel{border-top:1px solid var(--linie)}
.karte-panel-titel{margin:0 !important;padding:14px 18px 0;font:600 12px/1.2 var(--sans) !important;letter-spacing:.12em;text-transform:uppercase;color:var(--akzent)}
.js .karte-panel-titel{display:none}
.js .karte-panel + .karte-panel{border-top:0}
.osm{margin:-6px 0 4px !important;font-size:15px}
.osm a{display:inline-flex;align-items:center;gap:8px;font-weight:600}
.osm .ico{width:16px;height:16px}

/* Kontakt (grünes Band) */
.site .kontakt a{color:var(--creme)}
.site .kontakt a:hover{color:var(--karamell)}
.kontakt .direkt-punkt a{font-family:var(--serif);font-size:21px;text-decoration-color:var(--karamell)}
.kontakt .ergaenzen{color:#3B2A12}
.kontakt-hinweis{margin:18px 0 0 !important;font-size:13.5px;color:var(--creme-auf-gruen)}

/* Markierung „[BITTE ERGÄNZEN …]“: fehlende Firmendaten, vor dem Go-live ersetzen (Paket-Test schlägt an) */
.ergaenzen{display:inline;font:600 .86em/1.5 var(--sans);letter-spacing:.01em;color:#7A4B1E;background:#F6E7CF;border:1px dashed #C9955C;border-radius:4px;padding:1px 6px;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* Fußzeile */
.fuss-kontakt > span{display:inline-flex;align-items:center;gap:10px}
.fuss-kontakt .ergaenzen{color:#3B2A12}
.fuss-hinweis{max-width:62em}

/* Rechtsseiten und 404 */
.rechtsseite{padding:72px 0 112px}
.rechtsseite > .wrap{max-width:920px}
.rechtsseite .h1{font-size:clamp(38px,4.6vw,60px);margin-bottom:28px !important}
.rt-einleitung{font-size:18.5px;line-height:1.6;color:var(--gedaempft);max-width:40em;margin:0 0 8px !important}
.rechtstext h2{font:600 13px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--akzent);margin:44px 0 14px !important;padding-top:20px;border-top:1px solid var(--linie)}
.rechtstext p,.rechtstext ul{max-width:44em;margin:0 0 14px !important}
.rechtstext ul{padding-left:22px}
.rechtstext li{margin-bottom:6px}
.angaben{display:grid;grid-template-columns:minmax(180px,max-content) minmax(0,1fr);gap:10px 28px;margin:0;max-width:52em}
.angaben dt{font-weight:600}
.angaben dd{margin:0}
.stand{margin-top:48px !important;font-size:14px;color:var(--gedaempft)}
.fehlerseite{min-height:52vh}
.fehlerseite .lead{margin:24px 0 32px !important}
.fehler-knoepfe{display:flex;flex-wrap:wrap;gap:12px}

/* Einblenden: nur Elemente unterhalb des ersten Bildschirms, Skript setzt .versteckt */
.reveal{transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.versteckt{opacity:0;transform:translateY(22px)}

@media (max-width: 1200px){
  .menue{display:block}
}
@media (max-width: 760px){
  html{scroll-padding-top:68px}
  .karte-box{top:auto}
  .vm-kopf{padding:18px 16px 14px}
  .vm-titel{font-size:24px}
  .vm-fuss{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px 16px}
  .vm-knopf{width:100%}
  .btn-kopf{padding:0 16px}
  .angaben{grid-template-columns:1fr;gap:2px}
  .angaben dd{margin-bottom:12px}
  .rechtsseite{padding:44px 0 72px}
  .fuss{padding-bottom:48px}
}
@media (max-width: 359px){
  .btn-kopf{display:none}
}
@media (prefers-reduced-motion: reduce){
  .reveal.versteckt{opacity:1;transform:none}
}
@media print{
  .kopf,.menue,.fuss nav,.wisch-hinweis{display:none !important}
  .reveal.versteckt{opacity:1;transform:none}
  .zitat-schleier{display:none}
}
