@font-face{font-family:Manrope;src:url('/assets/fonts/Manrope-Variable.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{--bg:#101211;--surface:#191c19;--surface-soft:#141714;--text:#f6f6f2;--muted:#b8bbb4;--gold:#e8ae34;--line:#363a34;--input-border:#777c73;--error:#ffc4b9;--max:1280px;--gutter:clamp(20px,4.5vw,64px);--ease:cubic-bezier(.2,.7,.2,1);--fast:160ms;--medium:320ms;--radius:4px;color-scheme:dark;font-family:Manrope,Arial,sans-serif;font-size:16px}
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a,summary,input,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed}p,h1,h2,h3,h4{margin:0}p{color:var(--muted)}h1,h2,h3{font-weight:500;line-height:1.18;letter-spacing:-.035em}h2{font-size:clamp(2rem,3.3vw,3rem)}h3{font-size:1.4rem;letter-spacing:-.02em}img{display:block;max-width:100%;height:auto}a,button,input,textarea,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:5px}input:focus-visible,textarea:focus-visible{outline-offset:3px}::selection{background:var(--gold);color:var(--bg)}[hidden]{display:none!important}main:focus{outline:none}.wrap{width:min(var(--max),calc(100% - var(--gutter)*2));margin-inline:auto}.section{padding-block:clamp(64px,7.8vw,112px)}.section-intro{max-width:700px;margin-bottom:48px}.section-intro>p:last-child{margin-top:24px;font-size:1.05rem;max-width:66ch}.section-label{color:var(--gold);font-size:.85rem;font-weight:600;letter-spacing:.03em;margin-bottom:20px}.skip-link{position:absolute;top:8px;left:8px;z-index:20;padding:12px 20px;background:var(--gold);color:var(--bg);transform:translateY(-200%)}.skip-link:focus{transform:none}
.preview-note{background:#22261f;min-height:32px;padding:5px var(--gutter);font-size:.75rem;color:#ced0c9;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #34392f}.preview-note span{color:var(--gold)}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:116px;border-bottom:1px solid var(--line)}.brand{flex-shrink:0;display:block;padding:12px 0}.brand-logo{width:122px;aspect-ratio:8112/5145;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:32px;margin-left:auto}.desktop-nav a{font-size:.9rem;min-height:44px;display:flex;align-items:center;transition:color var(--fast)}.desktop-nav a:hover{color:var(--gold)}.button{min-height:52px;padding:13px 24px;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--gold);border-radius:var(--radius);background:var(--gold);color:var(--bg);font-weight:650;font-size:.9rem;line-height:1.5;text-align:center;transition:background var(--fast),color var(--fast),border-color var(--fast),transform var(--fast);cursor:pointer}.button:hover{background:#f3c565;border-color:#f3c565}.button:active{transform:translateY(1px)}.button-outline{background:transparent;color:var(--text);border-color:#63634d}.button-outline:hover{color:var(--bg)}.button-text{color:var(--text);background:transparent;border-color:transparent;padding-inline:8px}.button-text:hover{color:var(--gold);background:transparent;border-color:transparent}.arrow{font-size:1.35em;line-height:1;display:inline-block}.header-cta{margin-left:8px}.text-link{min-height:44px;display:inline-flex;align-items:center;gap:20px;color:var(--gold);font-size:.9rem;font-weight:600;text-underline-offset:5px}.text-link:hover{text-decoration:underline}.menu-button{display:none;min-height:48px;padding:8px 0 8px 16px;gap:14px;align-items:center;background:none;border:0}.menu-lines{display:block;width:24px;height:12px;border-top:1px solid var(--text);border-bottom:1px solid var(--text)}
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:clamp(40px,6vw,90px);padding-block:64px 88px;align-items:center}.location{color:var(--gold);font-size:.83rem;font-weight:600;margin-bottom:30px;letter-spacing:.035em}.hero h1{font-size:clamp(2.15rem,4.6vw,4.15rem);line-height:1.17;letter-spacing:-.047em}.hero h1 span{display:block}.hero-intro{font-size:1.02rem;max-width:64ch;margin-top:28px;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:32px}.service-picker{padding-top:40px;min-width:0}.service-picker>h2{font-size:1rem;letter-spacing:0;font-weight:600;margin-bottom:22px;color:var(--muted)}.picker-list{border-top:1px solid var(--line)}details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px}summary::-webkit-details-marker{display:none}.picker-item{border-bottom:1px solid var(--line);position:relative}.picker-item::before{content:'';position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform var(--medium) var(--ease)}.picker-item[open]::before{transform:scaleX(1)}.picker-item summary{padding:20px 0;font-size:1.025rem;font-weight:500;line-height:1.5}.picker-item[open] summary{color:var(--gold)}.plus{flex-shrink:0;width:16px;height:16px;position:relative;color:var(--gold)}.plus::before,.plus::after{content:'';position:absolute;top:7px;left:1px;width:14px;height:1px;background:currentColor}.plus::after{transform:rotate(90deg);transition:transform var(--fast)}details[open] .plus::after{transform:rotate(0)}.picker-content{padding:0 0 18px;font-size:.875rem}.picker-actions{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:8px}.picker-actions .text-link{font-size:.8rem;gap:8px}.picker-actions .text-link:first-child{color:var(--text)}
.services-section{border-top:1px solid var(--line)}.services-section .section-intro{max-width:730px}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:40px}.service{border-top:1px solid var(--line);padding-top:26px;display:flex;align-items:flex-start;flex-direction:column;position:relative;scroll-margin-top:32px}.service h3{margin-bottom:16px;font-size:1.65rem}.service p{max-width:63ch}.service .text-link{margin-top:20px}.service:target{border-top-color:var(--gold)}
.reasons-section{background:var(--surface-soft);border-block:1px solid var(--line)}.reasons-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:100px}.reason-heading h2{line-height:1.25}.signature-line{display:flex;gap:20px;align-items:flex-start;margin-top:40px}.signature-rule{margin-top:14px;width:44px;height:1px;background:var(--gold);flex-shrink:0}.signature-line p{color:var(--text);font-weight:600}.signature-line p span{display:block;color:var(--muted);font-size:.85rem;font-weight:400;margin-top:3px}.reasons-list{display:grid;gap:32px}.reasons-list article+article{padding-top:26px;border-top:1px solid var(--line)}.reasons-list h3{font-size:1.2rem;letter-spacing:-.01em;margin-bottom:12px}.reasons-list p{font-size:.95rem}
.process-list{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:0;margin:0;gap:28px}.process-list li{border-top:1px solid var(--line);padding-top:22px;position:relative}.process-list li::before{position:absolute;content:'';height:1px;top:-1px;left:0;right:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 600ms var(--ease)}.process-list li.in-view::before{transform:scaleX(1)}.step-number{font-size:2.4rem;line-height:1;color:var(--gold);font-weight:400;letter-spacing:-.04em;display:block;margin-bottom:28px}.process-list h3{font-size:1.1rem;line-height:1.4;min-height:3.1em;letter-spacing:-.01em;margin-bottom:16px}.process-list p{font-size:.86rem;line-height:1.75}
.about-section{border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:100px;align-items:center}.about-copy>p:not(.section-label){margin-top:24px;max-width:62ch}.about-copy .text-link{margin-top:24px}.brand-statement{padding:64px 40px;background:linear-gradient(135deg,#1e211b,#141713);border:1px solid #373d30;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1.15}.statement-logo{width:min(100%,265px);object-fit:contain;aspect-ratio:8112/5145}.brand-statement>p{font-size:1rem;margin-top:36px;color:var(--gold)}
.contact-section{background:var(--surface-soft);border-block:1px solid var(--line)}.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:90px;align-items:start}.contact-copy>p:not(.section-label){margin-top:24px;max-width:45ch}.contact-copy h2{font-size:clamp(2.4rem,4.6vw,4.1rem)}.contact-methods{margin-top:44px;display:grid;gap:28px}.contact-methods a,.contact-methods>p{color:var(--text);font-size:clamp(1rem,1.65vw,1.4rem);overflow-wrap:anywhere;line-height:1.5;display:block;min-height:44px}.contact-methods span{display:block;color:var(--muted);font-size:.8rem;line-height:1.8;margin-bottom:6px}.contact-methods a:hover{color:var(--gold)}.form-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:36px}.form-panel>h3{font-size:1.55rem;margin-bottom:20px}.demo-notice{font-size:.8rem;line-height:1.6;border-left:2px solid var(--gold);padding-left:14px;margin-bottom:28px}.demo-notice strong{display:block;font-weight:600;color:var(--gold);margin-bottom:4px}fieldset{margin:0;padding:0;border:0;min-width:0}.service-options legend{font-size:.9rem;margin-bottom:12px;color:var(--text);font-weight:600}.service-options legend span{display:block;color:var(--muted);font-size:.75rem;font-weight:400;margin-top:2px}.service-options label{display:flex;gap:12px;align-items:center;min-height:44px;font-size:.88rem;cursor:pointer}.service-options input{appearance:none;width:20px;height:20px;flex:0 0 20px;border:1px solid var(--input-border);border-radius:2px;margin:0;display:grid;place-content:center;background:var(--bg)}.service-options input:checked{background:var(--gold);border-color:var(--gold)}.service-options input:checked::after{content:'✓';font-weight:800;font-size:14px;line-height:1;color:var(--bg)}.selection-status{font-size:.8rem;color:var(--gold);margin-block:8px;min-height:1.7em}.form-hint{font-size:.75rem;margin:12px 0 20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.field{min-width:0}.field.full{grid-column:1/-1}.field label{display:block;font-size:.82rem;color:var(--text);margin-bottom:8px}.field input,.field textarea{width:100%;border:1px solid var(--input-border);border-radius:var(--radius);background:var(--bg);color:var(--text);padding:12px;min-height:48px;line-height:1.5;font-size:1rem}.field textarea{resize:vertical;min-height:120px}.field [aria-invalid=true]{border-color:var(--error)}.field-error{color:var(--error);font-size:.78rem;line-height:1.5;margin-top:6px}.field-error:empty{display:none}.form-submit{margin-top:28px;width:100%}.form-footnote{font-size:.75rem;margin-top:10px;text-align:center}.error-summary{border:1px solid var(--error);padding:18px;margin-bottom:24px;color:var(--error)}.error-summary h4{font-size:.95rem}.error-summary ul{padding-left:20px;margin-block:8px 0}.error-summary a{font-size:.85rem;text-decoration:underline;display:inline-block;padding-block:5px}.demo-result{margin-top:24px;padding:20px;border:1px solid var(--gold);border-radius:var(--radius)}.demo-result h4{font-size:1rem;font-weight:600;margin-bottom:8px;color:var(--gold)}.demo-result p,.form-notice{font-size:.85rem}.form-notice{padding:12px;border:1px solid var(--gold);margin-bottom:16px}
.faq-section{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1fr);gap:80px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{padding-block:24px;font-size:1.03rem;line-height:1.5}.faq-list details[open] summary{color:var(--gold)}.faq-list p{padding:0 36px 26px 0;font-size:.95rem;max-width:65ch}.site-footer{border-top:1px solid var(--line);padding-block:36px 24px}.footer-top{display:flex;align-items:center;gap:56px;padding-bottom:32px}.footer-top>p{font-size:.9rem}.footer-top>.text-link{margin-left:auto;color:var(--text)}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:20px;font-size:.8rem;align-items:center}.footer-bottom nav{display:flex;gap:28px}.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}.footer-bottom a:hover{color:var(--gold)}.legal-drafts{border-top:1px solid var(--line);padding-top:12px}.legal-drafts summary{justify-content:flex-start;min-height:44px;color:var(--muted);font-size:.75rem}.legal-drafts p{font-size:.8rem;max-width:85ch;padding-bottom:16px}
dialog{color:var(--text);background:var(--surface);border:1px solid var(--line);padding:28px;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);border-radius:8px;overscroll-behavior:contain}dialog::backdrop{background:#000c}.menu-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:24px}.menu-head h2{font-size:1.1rem;max-width:13ch}.close-menu{background:none;border:0;min-height:48px;display:flex;gap:12px;align-items:center;font-size:.85rem;padding:8px}.close-menu span{font-size:1.8rem}dialog nav{display:grid;margin-bottom:24px}dialog nav a{display:flex;align-items:center;min-height:64px;border-top:1px solid var(--line);font-size:1.5rem;letter-spacing:-.025em}dialog nav a:hover{color:var(--gold)}dialog>.button{width:100%}.menu-phone{display:block;margin-top:24px;min-height:44px;color:var(--gold)}body:has(dialog[open]){overflow:hidden}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.hero h1 span{animation:headline-arrive 650ms var(--ease) both;animation-delay:calc(var(--line)*70ms)}details[open]>.picker-content,details[open]>p{animation:detail-arrive 220ms var(--ease)}@keyframes headline-arrive{from{transform:translateY(12px)}to{transform:none}}@keyframes detail-arrive{from{opacity:.7;transform:translateY(-3px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.reduce-motion,.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
#motion-toggle{background:none;border:0;color:var(--muted);font-size:.8rem;padding:10px 0;min-height:44px;text-align:left}#motion-toggle:hover,#motion-toggle[aria-pressed=true]{color:var(--gold)}
/* Keep long German words and enlarged text inside their real layout, without clipping. */
body{overflow-wrap:anywhere}.hero>*{min-width:0}.button{max-width:100%}.service-options label span{min-width:0}
:root{--gutter:max(clamp(20px,4.5vw,64px),env(safe-area-inset-left,0px),env(safe-area-inset-right,0px))}
body{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(min-width:1600px){.hero{gap:90px}.hero h1{font-size:4.25rem}}
@media(max-width:1100px){.desktop-nav{gap:22px}.header-cta{padding-inline:16px;gap:12px}.site-header{gap:24px}.hero{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:40px}.hero h1{font-size:clamp(2.25rem,4.7vw,3.25rem)}.reasons-layout,.about-section{gap:56px}.contact-layout{gap:44px}.form-panel{padding:28px}.process-list{gap:20px}.process-list p{font-size:.85rem}}
@media(max-width:900px){.js .desktop-nav{display:none}.js .menu-button{display:inline-flex}.header-cta{margin-left:auto}.hero{grid-template-columns:1fr;gap:40px;padding-top:48px;padding-bottom:56px}.hero h1{font-size:clamp(2.2rem,6.5vw,3.8rem)}.hero-intro{max-width:67ch}.service-picker{padding-top:0;max-width:100%}.service-picker>h2{margin-bottom:18px}.picker-actions{gap:24px}.picker-item summary{padding-block:19px}.picker-content{max-width:70ch}.services-grid{column-gap:32px;row-gap:36px}.reasons-layout{gap:40px}.reason-heading h2{font-size:2.25rem}.process-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.process-list li:nth-child(n+4){margin-top:12px}.about-section{gap:44px}.brand-statement{padding:48px 28px;aspect-ratio:auto;min-height:290px}.contact-layout{grid-template-columns:1fr;gap:44px}.contact-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.contact-copy>.section-label,.contact-copy>h2{grid-column:1}.contact-copy>p:not(.section-label){grid-column:1}.contact-methods{grid-column:2;grid-row:1/4;margin-top:0;align-content:start;gap:22px}.form-panel{padding:36px}.faq-section{grid-template-columns:1fr;gap:32px}.desktop-nav{flex-wrap:wrap}.site-header:has(.desktop-nav:not([hidden])){flex-wrap:wrap}.js .site-header{flex-wrap:nowrap}}
@media(max-width:600px){.preview-note{font-size:.68rem;gap:8px;padding-block:6px}.site-header{min-height:98px;gap:12px}.brand-logo{width:100px}.header-cta{display:none}.menu-button{margin-left:auto}.hero{padding-top:40px;gap:42px}.location{font-size:.75rem;margin-bottom:23px}.hero h1{font-size:clamp(2.1rem,7.8vw,2.9rem);letter-spacing:-.04em;line-height:1.22}.hero-intro{font-size:1rem;margin-top:24px;line-height:1.7}.hero-actions{gap:10px;margin-top:26px}.hero-actions .button{min-height:52px;padding-inline:17px;gap:15px}.hero-actions .button-text{padding-inline:4px}.button{font-size:.85rem}.service-picker>h2{font-size:.9rem}.picker-item summary{font-size:1rem}.picker-actions{gap:0 20px}.section-intro{margin-bottom:32px}.section-label{margin-bottom:16px}.section-intro>p:last-child{font-size:1rem}.services-grid{grid-template-columns:1fr;gap:32px}.service p{font-size:.95rem}.service .text-link{margin-top:16px}.reasons-layout{grid-template-columns:1fr;gap:40px}.reason-heading h2{font-size:2.1rem}.signature-line{margin-top:26px}.process-list{grid-template-columns:1fr;gap:0}.process-list li{display:grid;grid-template-columns:44px 1fr;column-gap:24px;border-top:none;padding:0 0 32px}.process-list li::before{left:19px;top:40px;bottom:12px;width:1px;height:auto;right:auto;transform:none;background:var(--line)}.process-list li:last-child::before{display:none}.process-list li:nth-child(n+4){margin-top:0}.step-number{font-size:1.65rem;grid-column:1;grid-row:1/3;margin:2px 0 0}.process-list h3{grid-column:2;min-height:0;margin-bottom:12px;font-size:1.15rem}.process-list p{grid-column:2;font-size:.92rem}.process-list li.in-view::before{background:var(--gold)}.about-section{grid-template-columns:1fr;gap:36px}.about-copy>p:not(.section-label){font-size:.95rem}.brand-statement{min-height:0;padding:40px;aspect-ratio:1.55}.statement-logo{width:190px}.brand-statement>p{font-size:.85rem;margin-top:22px}.contact-copy{display:block}.contact-copy h2{font-size:2.8rem}.contact-copy>p:not(.section-label){font-size:.95rem}.contact-methods{margin-top:32px;gap:24px}.contact-methods a,.contact-methods>p{font-size:1.2rem}.form-panel{padding:24px 20px}.form-panel>h3{font-size:1.4rem}.form-grid{grid-template-columns:1fr;gap:18px}.field.full{grid-column:auto}.service-options label{font-size:.85rem}.faq-list summary{font-size:.96rem;padding-block:23px}.faq-list p{font-size:.92rem;padding-right:0}.footer-top{flex-wrap:wrap;gap:22px 28px}.footer-top>p{font-size:.8rem;max-width:100%;flex:1 1 190px}.footer-top>.text-link{margin-left:0;flex-basis:100%;font-size:.8rem}.footer-bottom{align-items:flex-start;flex-direction:column;gap:4px}.footer-bottom nav{gap:28px}.legal-drafts summary{font-size:.72rem;line-height:1.6;padding-block:10px}.desktop-nav{margin:0;gap:8px 18px}.menu-head h2{font-size:1rem}dialog{padding:24px}}
@media(max-width:360px){.preview-note{flex-wrap:wrap;gap:0 12px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button-text{justify-content:flex-start}.hero h1{font-size:2.1rem}.form-panel{padding-inline:16px}.contact-methods a{font-size:1.05rem}.brand-statement{padding:32px}.picker-actions{flex-direction:column;align-items:flex-start}}
@media(max-height:500px) and (orientation:landscape){dialog nav a{min-height:48px;font-size:1.2rem}dialog{max-height:calc(100dvh - 16px);padding:16px 24px}.menu-head{padding-bottom:12px}.menu-phone{margin-top:12px}.site-header{min-height:90px}}
@media(forced-colors:active){.button,.service-options input{border:1px solid ButtonText}.plus::before,.plus::after{background:ButtonText}.service-options input:checked::after{color:ButtonText}.brand-statement{forced-color-adjust:none}.brand-logo,.statement-logo{background:#101211}}


/* Ausbau 02: existing type, palette and main composition are retained. */
.media-slot{width:100%;max-width:100%}
.hero-ornament{position:absolute;z-index:-1;right:14%;top:92px;width:min(59%,720px);aspect-ratio:4985/3060;overflow:hidden;pointer-events:none;opacity:.045}
.hero-ornament img{position:absolute;top:0;left:-31.695%;width:162.728%;max-width:none;height:auto;pointer-events:none}
.hero-copy,.service-picker{position:relative}.hero-intro{max-width:54ch}.hero{padding-bottom:72px}
.services-section .section-intro{max-width:none;display:grid;grid-template-columns:1.2fr 1fr;gap:0 64px;align-items:end}.services-section .section-label{grid-column:1/-1}.services-section .section-intro>p:last-child{max-width:40ch;margin:0 0 4px;font-size:1rem}
.services-grid{row-gap:32px}.service{padding-top:24px}.service p{max-width:52ch}.service .text-link{margin-top:14px}.service-detail-link .arrow{transition:transform var(--fast) var(--ease)}.service-detail-link:hover .arrow{transform:translate(2px,-2px)}
.reasons-layout{align-items:center}.reasons-list{gap:24px}.reasons-list article+article{padding-top:22px}.reasons-list p{max-width:46ch}
.process-list{column-gap:0}.process-list li{padding-right:28px}.process-list li:last-child{padding-right:0}.process-list h3{min-height:3em}.process-list p{max-width:25ch}.process-list li::after{content:'';position:absolute;width:5px;height:5px;left:0;top:-3px;background:var(--gold);border-radius:50%}
.about-section{grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}.about-copy>p:first-child{margin-top:0}.about-copy>p:not(.section-label){max-width:54ch}.about-section .signature-line{margin-top:30px}
.media-slot{margin:0;min-width:0}.draft-media{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;min-height:210px;padding:32px;background:#171a16;border:1px dashed #777c73;position:relative}.draft-media .slot-eyebrow{font-size:.72rem;color:var(--gold)}.draft-media .slot-title{font-size:1.35rem;color:var(--text)}.draft-media p{font-size:.85rem;max-width:42ch}.draft-media>span{font-size:.75rem;color:var(--muted);margin-top:8px}.media-slot img{width:100%;height:auto;object-fit:cover}.about-section:has(.media-founder-portrait:not([hidden])){grid-template-columns:1.2fr .8fr;gap:24px 80px}.about-section:has(.media-founder-portrait:not([hidden])) .about-copy{grid-column:1}.media-founder-portrait{grid-column:2;grid-row:1/3;aspect-ratio:4/5;max-width:380px;width:100%;justify-self:end}
.form-panel{container-type:inline-size}.choice-grid{display:grid;grid-template-columns:1fr;gap:10px}.service-options label{padding:12px;min-height:58px;border:1px solid #777c73;border-radius:4px;align-items:center;line-height:1.45;background:var(--bg);transition:border-color var(--fast),background var(--fast)}.service-options label:hover{border-color:var(--gold)}.service-options label:has(input:checked){border-color:var(--gold);background:#24251b}.service-options label:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:3px}.service-options label input:focus-visible{outline:none}.selection-status{margin-block:14px;font-size:.8rem}.form-hint{margin-top:12px}
@container(min-width:460px){.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.faq-list summary{padding-inline:14px}.faq-list p{padding-left:14px}.faq-list summary:focus-visible{outline:2px solid var(--text);outline-offset:-3px;border-radius:4px}.faq-list details[open] summary{color:var(--gold)}.faq-list details[open]{background:#161916}.faq-list summary:hover{background:#191c19}
.preview-controls{display:flex;flex-wrap:wrap;gap:8px 24px}#slots-toggle{background:none;border:0;color:var(--muted);font-size:.8rem;padding:10px 0;min-height:44px;text-align:left;cursor:pointer}#slots-toggle:hover,#slots-toggle[aria-pressed=true]{color:var(--gold)}
.breadcrumbs{padding-top:28px;font-size:.78rem;color:var(--muted)}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}.breadcrumbs li:not(:last-child)::after{content:'/';padding-left:14px;color:#82877c}.breadcrumbs a{min-height:44px;display:inline-flex;align-items:center}.breadcrumbs a:hover{color:var(--gold)}
.detail-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:90px;padding-block:40px 80px;align-items:center}.detail-hero h1{font-size:clamp(2.5rem,4.7vw,4.2rem);line-height:1.12;max-width:17ch}.detail-hero .location{margin-bottom:24px}.detail-lead{max-width:56ch;font-size:1.08rem;line-height:1.75;margin-top:28px}.detail-summary{border-left:1px solid var(--gold);padding:16px 0 16px 34px}.detail-summary>p:not(.section-label){color:var(--text);font-size:1.7rem;line-height:1.35;letter-spacing:-.025em}.detail-summary dl{margin:28px 0 0}.detail-summary dl div+div{margin-top:16px}.detail-summary dt{font-size:.75rem;color:var(--muted)}.detail-summary dd{margin:3px 0 0;font-size:.95rem}.detail-scope{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:80px}.detail-scope h2,.detail-columns h2{font-size:clamp(2rem,3vw,2.8rem);max-width:22ch}.scope-list{list-style:none;padding:0;margin:28px 0 0}.scope-list li{border-top:1px solid var(--line);padding:17px 0 17px 22px;position:relative}.scope-list li::before{content:'';position:absolute;left:0;top:29px;width:6px;height:6px;background:var(--gold)}
.detail-planning{background:var(--surface-soft);border-block:1px solid var(--line)}.detail-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:start}.detail-columns h2+p{margin-top:24px;max-width:60ch}.preparation{border:1px solid var(--line);padding:32px;background:var(--surface)}.preparation h3{font-size:1.3rem}.preparation ol{padding-left:24px;margin:24px 0 0}.preparation li{padding-left:8px;color:var(--muted)}.preparation li+li{margin-top:20px}.preparation li::marker{color:var(--gold)}.detail-boundary{max-width:850px;text-align:center;padding-bottom:64px}.detail-boundary>p:not(.section-label){font-size:1.2rem;color:var(--text)}.detail-boundary .text-link{margin-top:24px}.detail-boundary+.faq-section{padding-top:32px}.related-section{border-top:1px solid var(--line);padding-top:64px}.related-section h2{font-size:2rem}.related-section>div{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:32px}.related-section>div>a{display:grid;grid-template-columns:1fr auto;gap:12px 24px;border-top:1px solid var(--line);padding-top:22px}.related-section>div>a>span:first-child{font-size:1.2rem;color:var(--text)}.related-section>div>a>.arrow{color:var(--gold);align-self:center}.related-section p{grid-column:1/-1;font-size:.9rem;max-width:52ch}.related-section>a{margin-top:32px}.related-section>div>a:hover{border-top-color:var(--gold)}
.article-body{max-width:850px}.article-body h1{font-size:clamp(2.2rem,4vw,3.6rem)}.article-body section{margin-top:48px}.article-body section p{margin-top:20px}.article-byline{margin-top:20px;font-size:.8rem}.article-body>.text-link{margin-top:40px}.reviews-section figure{margin:32px 0;border-top:1px solid var(--line);padding-top:24px}.reviews-section blockquote{margin:0 0 16px}.reviews-section figcaption{font-size:.85rem;color:var(--gold)}
@media(max-width:1100px){.detail-hero{gap:48px}.detail-columns,.detail-scope{gap:48px}.detail-summary{padding-left:26px}.services-section .section-intro{gap:0 40px}}
@media(max-width:900px){.hero-ornament{width:75%;top:64px;right:0;opacity:.035}.services-section .section-intro{display:block}.services-section .section-intro>p:last-child{margin-top:24px;max-width:52ch}.process-list{gap:28px}.process-list li{padding-right:0}.about-section{gap:40px}.detail-hero{grid-template-columns:1fr;gap:40px;padding-bottom:56px}.detail-hero h1{max-width:23ch}.detail-summary{padding:24px 0 0;border-left:0;border-top:1px solid var(--gold)}.detail-summary dl{display:flex;flex-wrap:wrap;gap:24px 40px}.detail-summary dl div+div{margin-top:0}.detail-summary>p:not(.section-label){font-size:1.5rem}.detail-columns{grid-template-columns:1fr;gap:36px}.detail-scope{gap:40px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:600px){.hero-ornament{width:100%;top:84px;right:0;opacity:.035}.hero{padding-bottom:56px}.services-grid{row-gap:28px}.draft-media{padding:24px;min-height:180px}.about-section{grid-template-columns:1fr;gap:30px}.about-section:has(.media-founder-portrait:not([hidden])){grid-template-columns:1fr;gap:30px}.media-founder-portrait{grid-column:1;grid-row:auto;justify-self:start;max-width:320px}.process-list{gap:0}.process-list li{padding-bottom:28px}.process-list h3{min-height:0}.process-list li::after{display:none}.detail-hero{padding-top:24px;gap:34px}.detail-hero h1{font-size:2.45rem;max-width:100%}.detail-lead{font-size:1rem;margin-top:24px}.detail-summary dl{display:grid;gap:16px}.detail-scope{grid-template-columns:1fr;gap:24px}.detail-text p{font-size:.95rem}.detail-scope h2,.detail-columns h2{font-size:2rem}.preparation{padding:24px}.detail-boundary{text-align:left}.detail-boundary>p:not(.section-label){font-size:1.05rem}.related-section>div{grid-template-columns:1fr;gap:28px}.breadcrumbs{padding-top:20px;font-size:.72rem}.faq-list summary{padding-inline:10px}.faq-list p{padding-left:10px;padding-right:10px}.preview-controls{gap:6px 24px}.service-options label{font-size:.83rem}.detail-summary .section-label{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.service-detail-link .arrow{transform:none!important}}
.reduce-motion .service-detail-link .arrow{transform:none!important}

/* Ausbau 03: five equal services, page navigation and transparent symbolic imagery. */
.services-grid{grid-template-columns:1fr;gap:24px}
.service{min-width:0;padding:26px 24px 24px;border:1px solid var(--line);background:var(--surface-soft);display:flex;flex-direction:column;align-items:flex-start}
.service-number{font-size:.8rem;color:var(--gold);font-variant-numeric:tabular-nums;margin-bottom:24px}
.service h3{font-size:1.5rem;line-height:1.25;margin-bottom:16px;max-width:100%;overflow-wrap:anywhere}
.service p{font-size:.95rem;line-height:1.7;margin-bottom:24px;max-width:52ch}
.service .service-detail-link{margin-top:auto;min-height:44px;font-size:.84rem;gap:12px;max-width:100%}

.symbol-figure{margin:0;min-width:0;width:100%}.symbol-figure picture{display:block;aspect-ratio:4/3;background:var(--surface)}
.symbol-figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.symbol-figure figcaption{padding-top:12px;color:var(--muted);font-size:.75rem;line-height:1.6;overflow-wrap:anywhere}
.symbol-figure figcaption>span{display:block}.symbol-service{color:var(--text);font-size:.95rem;margin-bottom:4px}
.service-navigation{margin-top:22px}.service-navigation ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.service-navigation li{min-width:0;max-width:100%}.service-navigation a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border:1px solid var(--line);border-radius:var(--radius);font-size:.85rem;line-height:1.5;color:var(--muted);overflow-wrap:anywhere;transition:color var(--fast),border-color var(--fast)}
.service-navigation a:hover{color:var(--text);border-color:var(--muted)}.service-navigation a[aria-current=page]{color:var(--gold);border-color:var(--gold);box-shadow:inset 0 -3px var(--gold);background:#24251b}
.detail-hero-with-image{grid-template-columns:1.08fr .92fr;gap:64px}.detail-hero-with-image>*{min-width:0}.detail-hero-with-image h1{overflow-wrap:anywhere}
.detail-context{border-top:1px solid var(--line);margin-top:18px;padding-top:16px;font-size:.8rem;line-height:1.75}
@media(min-width:720px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1250px){.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.detail-hero-with-image{gap:48px}}
@media(max-width:900px){.detail-hero-with-image{grid-template-columns:1fr;gap:36px}}
@media(max-width:600px){.service{padding:24px 20px}.service-number{margin-bottom:20px}.service-navigation{margin-top:16px}.service-navigation ul{gap:8px}.service-navigation a{font-size:.8rem;padding:10px 12px}.detail-hero-with-image{gap:32px}}
@media(max-width:444px){.hero-actions{flex-direction:column}}
@media(min-width:361px) and (max-width:444px){.hero-actions{align-items:flex-start}}


/* Original B logo transition and compact header. Stage 06: no alternate entry or grain. */
:root{--header-clearance:110px}
body{min-height:100vh;background-color:var(--bg)}
.reasons-section,.contact-section,.detail-planning{background-color:rgba(20,23,20,.32)}
.header-shell{position:relative;z-index:10;background-color:var(--bg)}
.preview-note{align-items:center;flex-wrap:wrap;gap:0 24px;padding-block:4px;background:rgba(34,38,31,.6)}
.preview-note>span{color:#ced0c9}
.hero-brand{display:none}
.logo-flight{position:fixed;top:0;left:0;pointer-events:none;z-index:11;transform-origin:0 0;max-width:none;height:auto;aspect-ratio:8112 / 5145}
html[data-hero=marke] .header-shell,body[data-page-type=service] .header-shell{position:sticky;top:0}
html[data-hero=marke],html:has(body[data-page-type=service]){scroll-padding-top:var(--header-clearance)}
html[data-hero=marke] .site-header,body[data-page-type=service] .site-header{min-height:88px}
html[data-hero=marke] .site-header .brand-logo,body[data-page-type=service] .site-header .brand-logo{width:96px}
html[data-hero=marke] .hero{padding-block:36px 64px;align-items:center}
html[data-hero=marke] .hero-brand{display:block;width:300px;max-width:100%;aspect-ratio:8112 / 5145;margin-bottom:22px}
.hero-brand img{width:100%;height:100%;object-fit:contain}
html[data-hero=marke] .hero h1{font-size:clamp(2rem,3.65vw,3.25rem)}
html[data-hero=marke] .hero h1 span{animation:none;transform:none;opacity:1}
html[data-hero=marke] .hero .location{margin-bottom:16px}
html[data-hero=marke] .hero-intro{margin-top:20px}
html[data-hero=marke] .hero-actions{margin-top:24px}
html.logo-flight-active .hero-brand img{visibility:hidden}
html.logo-flight-active:not(.logo-compact) .site-header .brand{position:relative}
@media(max-width:900px){
 html[data-hero=marke] .hero{padding-top:28px}
 html[data-hero=marke] .hero-brand{width:200px}
}
@media(max-width:600px){
 .preview-note{padding-block:4px;font-size:.69rem;gap:0}
 html[data-hero=marke] .site-header,body[data-page-type=service] .site-header{min-height:76px}
 html[data-hero=marke] .site-header .brand-logo,body[data-page-type=service] .site-header .brand-logo{width:76px}
 html[data-hero=marke] .hero{padding-block:20px 48px;gap:36px}
 html[data-hero=marke] .hero-brand{width:180px;margin-bottom:18px}
 html[data-hero=marke] .hero h1{font-size:clamp(1.75rem,8.2vw,2rem)}
 html[data-hero=marke] .hero .location{margin-bottom:14px}
 html[data-hero=marke] .hero-intro{font-size:.95rem;line-height:1.65;margin-top:18px}
 html[data-hero=marke] .hero-actions{margin-top:20px}
 html[data-hero=marke] .service-picker{padding-top:0}
}
@media(prefers-reduced-motion:reduce){.logo-flight{display:none!important}.hero-brand img{visibility:visible!important}}
html.reduce-motion .logo-flight{display:none!important}
html.reduce-motion .hero-brand img{visibility:visible!important}
@media print{.logo-flight{display:none!important}.header-shell{position:static!important}.hero-brand img{visibility:visible!important}}

/* The moving logo takes over the one real home link; no duplicate tab stop. */

/* Anchor jumps in B go directly to their destination; the logo follows only normal scroll. */
html[data-hero=marke]{scroll-behavior:auto}

/* Stage 06: supplied curves and stone, not procedural grain. No image filters or animation. */
.hero-stage,.reasons-section{position:relative;isolation:isolate}
.material-surface{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.material-surface picture,.material-surface img{display:block;width:100%;height:100%}
.material-surface img{object-fit:cover;object-position:center bottom;opacity:1}
/* Fades are limited to section boundaries; the image remains fully visible in its interior. */
.hero-stage .material-surface{mask-image:linear-gradient(to bottom,#000 calc(100% - 80px),transparent)}
.hero-stage::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 58% 80% at 18% 52%,rgba(8,10,9,.66) 68%,transparent 100%)}
.service-picker{background:linear-gradient(90deg,rgba(12,14,12,.28),rgba(12,14,12,.1));border-radius:4px}
.reasons-section{background:none;border-color:#2b302a}
.reasons-section .material-surface{opacity:.82;mask-image:linear-gradient(to bottom,transparent,#000 48px,#000 calc(100% - 56px),transparent)}
.reasons-section .material-surface img{object-position:center center}
.reasons-list{background:none}
.reasons-section .material-surface::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 36%,rgba(8,10,9,.62) 56%,rgba(8,10,9,.62) 92%,transparent)}
/* All remaining chapters intentionally rest on the brand's flat dark base. */
.services-section,.process-section,.about-stage,.contact-section,.faq-section,.site-footer{background:none}
.contact-section{border-color:#2b302a}
body[data-page-type=home] .form-panel{background:linear-gradient(135deg,#1c211d 0%,#191d1a 47%,#171b18 100%);border-color:#41473e;border-top-color:#55574a;box-shadow:0 16px 48px -24px rgba(0,0,0,.5),inset 0 1px 0 rgba(235,220,183,.025)}
body[data-page-type=service] .detail-planning{background:rgba(20,23,20,.32)}
/* A real, visible original logo remains the accessible home target throughout the flight. */
.site-header .brand{display:inline-flex;align-items:center;min-height:48px;flex-shrink:0}
@media(max-width:600px){
 .hero-stage .material-surface img{object-position:right top}
 .hero-stage .material-surface{mask-image:linear-gradient(to bottom,#000 calc(100% - 64px),transparent)}
 .hero-stage::after{background:linear-gradient(90deg,rgba(8,10,9,.69) 0%,rgba(8,10,9,.62) 78%,rgba(8,10,9,.12))}
 .service-picker{background:linear-gradient(90deg,rgba(12,14,12,.56),rgba(12,14,12,.22))}
 .reasons-section .material-surface img{object-position:80% center}
 .reasons-section .material-surface::after{background:linear-gradient(to bottom,rgba(8,10,9,.42),rgba(8,10,9,.62) 35%,rgba(8,10,9,.62) 86%,transparent)}
 body[data-page-type=home] .form-panel{box-shadow:0 12px 32px -24px rgba(0,0,0,.5)}
}
@media(forced-colors:active){.material-surface,.hero-stage::after{display:none}.service-picker,.reasons-list{background:none}body[data-page-type=home] .form-panel{background:Canvas;border-color:CanvasText;box-shadow:none}}
@media print{.material-surface,.hero-stage::after{display:none}}

/* Existing light text token on image-backed paragraphs keeps the motifs visible. */
.hero-intro,.reasons-list p,.service-picker>h2{color:var(--text)}

/* Stage 07: preserve B and brand; distinct material chapters and equally quiet image cards. */
.services-grid .service{position:relative;isolation:isolate;min-height:330px;transition:border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease}
.card-media{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.card-media picture,.card-media img{display:block;width:100%;height:100%}
.card-media img{object-fit:cover;object-position:50% 55%;filter:saturate(.35)}
.service#bodenbelaege .card-media img{object-position:50% 78%}
.service#entruempelung .card-media img{object-position:72% 50%}
.service::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,16,14,.84),rgba(13,16,14,.79) 58%,rgba(13,16,14,.83));pointer-events:none}
.service .service-detail-link::after{content:'';position:absolute;inset:0}
.service:focus-within{outline:3px solid var(--gold);outline-offset:5px}
.card-image-note{font-size:.75rem;color:var(--muted);margin-top:20px}
.picker-item summary,.faq-list summary{transition:color 180ms ease,background-color 180ms ease}
.picker-item[open]>summary,.faq-list details[open]>summary{color:var(--gold)}
@media(hover:hover) and (pointer:fine){
 .service:hover{transform:translateY(-3px);border-color:#82704c;box-shadow:0 10px 24px -14px rgba(0,0,0,.65)}
 .picker-item summary:hover,.faq-list summary:hover{background-color:rgba(232,174,52,.055);color:var(--text)}
 .button:hover{box-shadow:0 5px 16px -8px rgba(232,174,52,.22)}
}
@media(max-width:600px){
 .services-grid .service{min-height:310px}
}
@media(prefers-reduced-motion:reduce){.service:hover,.button:hover,.text-link:hover .arrow{transform:none!important}.service,.button,.picker-item summary,.faq-list summary{transition:none!important}}
.reduce-motion .service:hover,.reduce-motion .button:hover,.reduce-motion .text-link:hover .arrow{transform:none!important}
.reduce-motion .service,.reduce-motion .button,.reduce-motion .picker-item summary,.reduce-motion .faq-list summary{transition:none!important}
@media(forced-colors:active){.card-media,.service::before{display:none}.service{background:Canvas}.service:focus-within{outline-color:Highlight}}
@media print{.card-media,.service::before{display:none}}

/* Real project stills: native figures, no slider, no public videos. */
.project-section{border-top:1px solid var(--line)}
.project-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:end;margin-bottom:40px}
.project-heading h2{max-width:18ch}.project-heading>p{color:var(--muted);max-width:48ch}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.project-grid figure{margin:0;min-width:0}.project-grid picture,.project-grid img{display:block;width:100%}
.project-grid img{height:auto;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--line)}
.project-grid figcaption{display:flex;gap:16px;padding-top:22px}
.project-number{flex:0 0 auto;white-space:nowrap;font-size:.8rem;color:var(--gold);padding-top:4px}
.project-grid h3{font-size:1.15rem;line-height:1.4;margin:0 0 10px}.project-grid figcaption p{font-size:.9rem;color:var(--muted);margin:0}
.project-source{font-size:.78rem;color:var(--muted);margin:28px 0 0;max-width:85ch}
@media(max-width:719px){.project-heading{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.project-grid{grid-template-columns:1fr;gap:36px}.project-grid figcaption{padding-top:18px}.project-source{margin-top:26px}}

/* Stage 08: two supplied families only. The home hero/trust compositions stay intact. */
.about-stage,.contact-section,.faq-stage,.detail-stage,.detail-planning{position:relative;isolation:isolate}
.about-stage .material-surface{opacity:.8;mask-image:linear-gradient(to bottom,transparent,#000 48px,#000 calc(100% - 64px),transparent)}
.about-stage .material-surface img{object-position:center 90%}
.about-stage .material-surface::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,9,.22),rgba(8,10,9,.52) 54%,rgba(8,10,9,.52))}
.about-copy>p,.about-copy>.text-link{color:var(--text)}
.contact-section .material-surface{opacity:.88;mask-image:linear-gradient(to bottom,transparent,#000 64px,#000 calc(100% - 90px),transparent)}
.contact-section .material-surface img{height:1050px;max-height:100%;object-position:center top;mask-image:linear-gradient(to bottom,#000 68%,transparent)}
.contact-section .material-surface::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,9,.56),rgba(8,10,9,.18) 48%,transparent 85%)}
.contact-copy>p:not(.section-label),.contact-methods span{color:var(--text)}
/* The upper, quiet area keeps the sweeping lower arc away from the FAQ heading. */
.faq-stage .material-surface{opacity:.72;mask-image:linear-gradient(to bottom,transparent,#000 48px,#000 calc(100% - 64px),transparent)}
.faq-stage .material-surface img{object-position:center top}
.faq-stage .material-surface::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,9,.52),rgba(8,10,9,.24) 43%,rgba(8,10,9,.35))}
.faq-stage .faq-list{background:rgba(16,18,17,.2)}
.faq-stage .faq-list p{color:var(--text)}
/* Same two restrained surfaces on each detail page; content images keep their own light and colour. */
.detail-stage .material-surface{opacity:.8;mask-image:linear-gradient(to bottom,transparent,#000 42px,#000 calc(100% - 64px),transparent)}
.detail-stage .material-surface img{object-position:center top}
.detail-stage .material-surface::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,9,.58),rgba(8,10,9,.28) 52%,transparent)}
.detail-stage .detail-lead,.detail-stage .detail-context,.detail-stage .symbol-figure figcaption,.detail-summary dt{color:var(--text)}
body[data-page-type=service] .detail-planning{background:none}
.detail-planning .material-surface{opacity:.78;mask-image:linear-gradient(to bottom,transparent,#000 44px,#000 calc(100% - 60px),transparent)}
.detail-planning .material-surface img{object-position:center top}
.detail-planning .material-surface::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,9,.58),rgba(8,10,9,.32) 48%,transparent 86%)}
.detail-planning .detail-columns>div>p:not(.section-label){color:var(--text)}
@media(max-width:900px){
 .detail-stage .material-surface img{height:750px;max-height:100%;mask-image:linear-gradient(to bottom,#000 58%,transparent)}
 .detail-stage .material-surface::after{background:linear-gradient(90deg,rgba(8,10,9,.6),rgba(8,10,9,.23))}
 .detail-planning .material-surface img{object-position:center center}
}
@media(max-width:600px){
 .about-stage .material-surface img{object-position:left center}
 .about-stage .material-surface::after{background:linear-gradient(90deg,rgba(8,10,9,.42),rgba(8,10,9,.54))}
 .contact-section .material-surface img{height:880px;object-position:35% top}
 .contact-section .material-surface::after{background:linear-gradient(90deg,rgba(8,10,9,.58),rgba(8,10,9,.24))}
 .faq-stage .material-surface img{width:100%;max-width:none;object-position:right top}
 .faq-stage .material-surface::after{background:linear-gradient(90deg,rgba(8,10,9,.28),rgba(8,10,9,.5))}
 .detail-stage .material-surface img{object-position:72% top}
 .detail-stage .material-surface::after{background:linear-gradient(90deg,rgba(8,10,9,.6),rgba(8,10,9,.5))}
 .detail-planning .material-surface img{object-position:left center}
 .detail-planning .material-surface::after{background:linear-gradient(90deg,rgba(8,10,9,.55),rgba(8,10,9,.35))}
}

/* Reserve the mobile navigation layout before deferred scripts execute.
   With scripting disabled, the existing visible link navigation remains the fallback. */
@media(max-width:900px) and (scripting:enabled){
 .desktop-nav{display:none}
 .menu-button{display:inline-flex}
 .site-header:has(.desktop-nav:not([hidden])){flex-wrap:nowrap}
}

/* Stage 09 extends the approved type, palette and material surfaces. */
.language-switch{display:flex;align-items:center;flex-shrink:0;gap:0;border:1px solid var(--line);border-radius:var(--radius)}
.language-switch a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px;font-size:.8rem;font-weight:650;line-height:1.3}
.language-switch a[aria-current=page]{color:var(--gold);box-shadow:inset 0 -2px var(--gold)}
.header-contact{display:flex;gap:16px;align-items:center}.header-contact a{display:flex;align-items:center;min-height:44px;font-size:.8rem;color:var(--muted)}
.header-contact a:hover{color:var(--gold)}.site-header{gap:20px}.desktop-nav{gap:24px}.header-cta{white-space:nowrap;margin-left:0}
.social-links{display:flex;gap:24px;flex-wrap:wrap}.social-links a{min-height:44px;display:inline-flex;align-items:center;color:var(--gold)}
.legal-preview-note{font-size:.75rem;padding-block:16px}.contact-dock{display:none}.spam-trap{position:absolute;inset:auto auto auto -10000px;width:1px;height:1px;overflow:hidden}
.error-summary,.demo-result,.field,[id=contact],[id=kontakt]{scroll-margin-top:var(--header-clearance);scroll-margin-bottom:calc(var(--contact-clearance,0px) + 24px)}
html{scroll-padding-bottom:calc(var(--contact-clearance,0px) + 24px)}.field textarea{scroll-margin-bottom:100px}
@media(max-width:1250px){.header-contact{gap:10px}.site-header{gap:14px}.desktop-nav{gap:18px}.header-cta{padding-inline:16px;gap:12px}}
@media(max-width:1100px){.header-contact{display:none}.js .desktop-nav{display:none}.js .menu-button{display:inline-flex}.js .site-header{flex-wrap:nowrap}.language-switch{margin-left:auto}.header-cta{margin-left:0}.menu-button{margin-left:0}}
@media(max-width:1100px) and (scripting:enabled){.desktop-nav{display:none}.menu-button{display:inline-flex}.site-header:has(.desktop-nav:not([hidden])){flex-wrap:nowrap}}
@media(max-width:767px){
 :root{--contact-clearance:calc(62px + env(safe-area-inset-bottom,0px))}
 body{padding-bottom:var(--contact-clearance)}.header-cta{display:none}.site-header{gap:10px}.language-switch a{font-size:.8rem}.menu-button{padding-left:4px;gap:8px}
 .contact-dock{position:fixed;z-index:12;inset:auto 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px max(12px,env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:var(--bg);border-top:1px solid var(--line);box-shadow:0 -8px 24px #0003}
 .contact-dock a{display:flex;align-items:center;justify-content:center;min-height:54px;font-size:.875rem;font-weight:600;text-align:center;padding:4px;line-height:1.4}
 .contact-dock a+a{border-left:1px solid var(--line)}.contact-dock a:last-child{color:var(--gold)}.contact-dock a:focus-visible{outline-offset:-4px}
 body:has(dialog[open]) .contact-dock,body:has(.field input:focus) .contact-dock,body:has(.field textarea:focus) .contact-dock,.keyboard-open .contact-dock{display:none}
 dialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto}
}
@media(max-width:360px){.menu-button>span:first-child{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.menu-button{justify-content:center;min-width:44px}.site-header{gap:8px}}
@media(max-height:500px) and (orientation:landscape){.contact-dock{position:static;box-shadow:none}body{padding-bottom:0}:root{--contact-clearance:0px}.header-shell{position:static!important}.site-header{min-height:76px!important}html{scroll-padding-top:20px}}
@media(scripting:none){.site-header{flex-wrap:wrap!important}.desktop-nav{order:5;width:100%;justify-content:flex-start}.language-switch{margin-left:auto}.contact-dock{position:static;box-shadow:none}body{padding-bottom:0}:root{--contact-clearance:0px}}
@media print{.contact-dock,.language-switch,.header-contact{display:none}body{padding-bottom:0}}


.direct-panel{padding:clamp(24px,3.2vw,44px);background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0}
.direct-panel .section-label{margin-bottom:20px}.direct-panel h3{font-size:clamp(1.9rem,2.8vw,2.8rem);line-height:1.18;margin-bottom:24px}
.direct-panel>p:not(.section-label){max-width:52ch}
.direct-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:28px 24px}.direct-actions .button{flex:1 1 175px;gap:16px}
.direct-email{border-block:1px solid var(--line);padding-block:18px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}
#copy-address{color:var(--text);overflow-wrap:anywhere;user-select:all;min-width:0;flex:1 1 220px;font-weight:500}
.copy-address{min-height:44px;padding:10px 12px;background:none;color:var(--gold);border:1px solid var(--line);border-radius:var(--radius);font-size:.8rem;text-align:left}
.copy-address:hover{border-color:var(--gold)}.copy-address:active{background:var(--surface-soft)}
.copy-status{min-height:2.8em;font-size:.8rem;padding-top:8px;color:var(--gold)}
.direct-detail{padding-block:12px 24px}.direct-detail>p{color:var(--text);font-weight:600}.direct-detail ul{padding-left:20px;margin:12px 0 0;color:var(--muted);line-height:1.8}
.direct-privacy{font-size:.78rem;line-height:1.7}.direct-privacy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.direct-actions{flex-direction:column}.direct-actions .button{flex-basis:auto;width:100%}.direct-email{align-items:flex-start}#copy-address{font-size:.94rem;flex-basis:100%}.copy-status{min-height:4.2em}}
