/* Daylight direction selected by the client; photographs stay in one fixed stage. */
:root{--ink:#12251e;--muted:#4f6259;--green:#238843;--line:rgba(21,50,35,.2);--navy:#f3f2e9;color-scheme:light}
html,body{background:var(--navy);color:var(--ink)}
.scene-stage{bottom:auto;height:100lvh;contain:paint}
.scene-shade{background:linear-gradient(90deg,rgba(248,246,234,.20),transparent 62%);transition:none}
.home-page .scene-stage:after{content:'';display:block;position:absolute;inset:0;z-index:2;background:rgba(250,249,240,.83);opacity:0;transition:opacity .25s ease;pointer-events:none}
.home-page .scene-stage.scene-waiting:after{opacity:1}
.photo-scene:not([data-photo=hamburg]):after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,248,238,.94),rgba(249,248,238,.83) 38%,rgba(249,248,238,.20) 77%,transparent)}
.photo-scene[data-photo=hamburg] .scene-photo{object-position:center}
@keyframes scene-dissolve{from{opacity:0}to{opacity:1}}
.photo-scene.scene-incoming{animation:scene-dissolve auto ease-in-out both;animation-timeline:scroll(root block);animation-range-start:var(--scene-start);animation-range-end:var(--scene-end)}
.site-header{background:linear-gradient(180deg,rgba(248,246,237,.78),rgba(248,246,237,.32) 64%,transparent);color:var(--ink)}
.brand img{filter:none}
.nav-request{color:#207a3c;border:0;border-bottom:1px solid #238843;border-radius:0;padding:9px 0}
.menu-button{color:var(--ink)}
.cinema-hero{padding:clamp(155px,19svh,210px) 5.2vw 130px}
.hero-copy{margin:0;width:min(700px,58%);text-align:left;transform:none;text-shadow:none}
.hero-copy h1{font-size:clamp(45px,4.7vw,72px);line-height:1.07;letter-spacing:-.05em}
.hero-copy h1 strong{font-weight:750}
.hero-copy .eyebrow{color:var(--ink);font-size:11px;letter-spacing:.16em;margin-bottom:22px}
.hero-lead{color:var(--ink);font-size:clamp(16px,1.55vw,22px);line-height:1.48;margin:22px 0;max-width:610px}
.hero-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:24px;margin-top:24px}
.btn{border-radius:5px;background:#6cf04a;color:#10271a;border:1px solid transparent}
.btn:hover{background:#8afa69}
.hero-call{display:flex;flex-direction:column;gap:4px;min-height:48px;justify-content:center;text-decoration:none;border-bottom:1px solid rgba(22,69,42,.5);padding:3px 0}
.hero-call span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#365946}
.hero-call strong{font-size:15px;font-weight:650;letter-spacing:-.02em}
.hero-link{display:inline-block;color:var(--ink);border-bottom:1px solid #238843;margin-top:13px;padding:9px 0;font-size:13px}
.hero-bottom{color:#fff;text-shadow:0 1px 6px #10251ba6;bottom:26px;text-align:left}
.scroll-cue i{border-color:#fff}.scroll-cue i:after{background:#fff}
h2 em,h1 em{color:#226b3c}
.eyebrow,.chapter-label,.hero-lead,.story-chapter .chapter-copy>p:not(.chapter-label),.gateway-note,.gateway-link small,.scene-tags,.scene-caption,.story-service small,.promise-lines p,.steps p,.story-contact>p:not(.chapter-label),.story-faq .faq-list p,.faq-list summary,.story-quote span,.micro,.muted{color:var(--muted)}
.chapter-label>span,.story-service>span:first-child,.step-no,.promise-lines span,.story-link svg,.story-service>svg,.faq-list summary span{color:#287b43}
.story-link,.quiet-link,.text-link,.light-link,.faq-list summary{color:var(--ink)}
.story-service:hover,.story-service:focus-visible,.story-link:hover{color:#257c40}
.floating-contact{background:rgba(250,249,240,.93);color:#183e28;border-color:rgba(30,85,48,.24);backdrop-filter:none}
.footer{background:linear-gradient(180deg,transparent,rgba(246,245,236,.91));color:var(--ink)}
.footer-top p,.footer-top>div>a,.footer address,.footer-bottom{color:#42564b}
#site-menu{color:var(--ink);background:linear-gradient(110deg,rgba(249,248,239,.96),rgba(249,248,239,.80)),url('/images/hero-daylight-desktop.webp') center/cover;backdrop-filter:none}
#site-menu::backdrop{background:rgba(248,247,239,.2)}
.menu-secondary h2,.menu-primary a:hover{color:#257a3e}.menu-secondary a,.menu-bottom span{color:#3f5548}
.interior-page .scene-shade{background:linear-gradient(90deg,rgba(249,248,239,.95),rgba(249,248,239,.88) 60%,rgba(249,248,239,.48))}
.interior-page .photo-scene:after{display:none}
.breadcrumb,.lead,.detail-content p,.scope p,.scope li,.scope h3,.section-head>p,.intro-bottom p,.small-note,.final-cta p,.related a,.contact-copy .lead,.contact-benefits,.contact-direct .email,.legal p,.legal li,.legal h2{color:var(--ink)}
.scope,.final-cta,.legal,.object-card,.service-row,.service-visual{background:rgba(249,248,238,.6);border-color:var(--line);color:var(--ink)}
.request-card{background:rgba(251,250,244,.94);color:var(--ink);border-color:rgba(23,77,43,.22);backdrop-filter:none}
.request-card legend,.field,.choice span,.form-progress .current,.choice:has(input:checked) span,.consent{color:var(--ink)}
.choice,.field input,.field select,.field textarea{background:rgba(255,255,252,.72);color:var(--ink);border-color:rgba(34,77,48,.32)}
.choice:has(input:checked){background:rgba(96,180,97,.16);border-color:#367d45}
.field input::placeholder,.field textarea::placeholder,.form-progress span,.back-btn{color:#5a6b60}
.request-card pre{background:#e8ede2;color:var(--ink)}
@media(min-width:1600px){.hero-copy{transform:none}}
@media(min-width:701px) and (max-width:1100px){.hero-copy{width:62%;transform:none}.hero-copy h1{font-size:clamp(42px,4.9vw,54px)}.hero-lead{font-size:17px}.hero-actions{gap:16px}.hero-call strong{font-size:13px}}
@media(max-width:700px){
 .scene-stage{height:100lvh}
 .scene-shade{background:linear-gradient(180deg,rgba(249,248,239,.20),transparent 52%,transparent 80%,rgba(5,20,13,.24))}
 .photo-scene:not([data-photo=hamburg]):after{background:linear-gradient(90deg,rgba(250,249,240,.87),rgba(250,249,240,.75))}
 .site-header .brand,.site-header .brand img{width:175px}.site-header .brand img{height:84px}
 .cinema-hero{padding:122px 22px 100px;min-height:100svh}
 .hero-copy{width:100%;text-align:left;margin:0;transform:none}
 .hero-copy .eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:13px}
 .hero-copy h1{font-size:clamp(32px,9.5vw,44px);line-height:1.05;max-width:360px}
 .hero-lead{font-size:14.5px;line-height:1.48;max-width:335px;margin:15px 0}
 .hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:15px}
 .hero-actions .btn{min-height:44px;font-size:14px;padding:12px 18px;gap:18px}
 .hero-call{flex-direction:row;align-items:center;gap:10px;min-height:34px;padding:4px 0}
 .hero-call span{font-size:9px}.hero-call strong{font-size:13px}
 .hero-link{font-size:11px;margin-top:3px;padding:6px 0}
 .hero-bottom{bottom:22px;font-size:9px;text-align:left;justify-content:space-between}
 .hero-bottom>span{max-width:220px}.hero-bottom>.scroll-cue{font-size:9px}
 #site-menu{background:linear-gradient(110deg,rgba(249,248,239,.96),rgba(249,248,239,.84)),url('/images/hero-daylight-mobile.webp') center/cover}
 .interior-page .scene-shade{background:rgba(250,249,241,.87)}
}
@media(max-width:350px){.site-header .brand,.site-header .brand img{width:150px}.site-header .brand img{height:72px}.cinema-hero{padding:110px 18px 92px}.hero-copy h1{font-size:29px}.hero-copy .eyebrow{font-size:7px;margin-bottom:11px}.hero-lead{font-size:12px;margin:13px 0}.hero-actions{gap:6px}.hero-link{margin-top:0}.hero-call strong{font-size:12px}}
@media(max-height:720px) and (min-width:701px){.cinema-hero{padding-top:130px}.hero-copy h1{font-size:clamp(42px,4.5vw,58px)}.hero-lead{font-size:16px;margin:16px 0}.hero-actions{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.photo-scene.scene-incoming{animation:none}.hero-actions .btn:hover{transform:none}}
@media(min-width:701px) and (max-width:1100px){.hero-actions{flex-direction:column;align-items:flex-start;gap:8px}.hero-call{flex-direction:row;align-items:center;gap:10px;min-height:34px;background:rgba(248,246,237,.84);padding:4px 8px;border-radius:3px}}

/* Shared light-theme components: clear marks and quieter reading hierarchy. */
.check{width:26px;height:26px;background:#e6f0e4;color:#1b6640;border:1px solid #8aae8c;font-size:17px;font-weight:750;line-height:1}
.choice .choice-mark{color:#1b6640;font-size:20px;font-weight:750}
.result-check{background:#e6f0e4;color:#1b6640;border:1px solid #8aae8c;font-weight:750}
.all-services>a{background:rgba(250,249,241,.72);color:var(--ink)}
.all-services h2,.all-services p,.all-services svg,.all-services>a>span{color:var(--ink)}
.all-services>a:hover,.all-services>a:focus-visible{background:rgba(226,239,221,.9)}
.interior-page .site-header,.home-page.hero-passed .site-header{background:rgba(248,247,239,.97);box-shadow:0 8px 18px rgba(248,247,239,.94)}
.detail-content>div:first-child>p:not(.eyebrow){max-width:58ch;line-height:1.65}
.scope li{align-items:center;line-height:1.55}.scope h3{font-size:20px;line-height:1.35}
.interior-page .section-head h2{font-size:clamp(32px,3.5vw,48px)}
.legal p{line-height:1.75}
@media(max-width:700px){
 .interior-page h1{font-size:clamp(32px,8.8vw,40px);line-height:1.13;letter-spacing:-.04em}
 .interior-page .detail-content h2,.interior-page .section-head h2{font-size:clamp(30px,8vw,37px);line-height:1.14}
 .interior-page .lead,.interior-page .detail-content>div:first-child>p:not(.eyebrow){font-size:16px;line-height:1.65}
 .interior-page .section{padding-block:65px}
 .scope{padding:24px}.scope h3{font-size:19px}.scope li,.contact-benefits li{font-size:15px}
 .scope li{gap:13px;margin-block:17px}.scope .text-link{font-size:14px;line-height:1.5}
 .story-chapter .chapter-copy>p:not(.chapter-label),.story-contact>p:not(.chapter-label){font-size:16px;line-height:1.65}
 .steps p,.story-faq .faq-list p,.faq-list summary{font-size:15px;line-height:1.65}
 .gateway-link small,.story-service small{font-size:12px}
 .legal h1{font-size:clamp(27px,7.3vw,33px)}.legal p{font-size:16px;line-height:1.75}
 .footer-top>div>a,.footer address,.footer-bottom{font-size:12px;line-height:1.7}
.related a{font-size:14px;min-height:36px;display:inline-flex;align-items:center}
}

/* Only the opening photograph fills a screen. Every later chapter follows its content. */
.home-page :is(.story-gateway,.story-chapter,.story-process,.story-faq,.story-contact){min-height:0;justify-content:flex-start;padding-block:80px}
.home-page .chapter-label{margin-bottom:24px}
.home-page .scene-caption{position:static;margin:24px 0 0;max-width:600px}
.home-page .gateway-note{margin-top:24px;margin-bottom:0}
.home-page .steps{margin-top:40px}
.home-page .story-quote{margin-top:64px}
.home-page .story-quote>p{margin-bottom:0}
.home-page .story-faq .faq-section{gap:48px}
.home-page .story-contact .micro{margin-top:24px}
@media(max-width:700px){
 .home-page :is(.story-gateway,.story-chapter,.story-process,.story-faq,.story-contact){padding-block:48px}
 .home-page .chapter-label{margin-bottom:20px}
 .home-page .gateway-links{margin-top:20px}
 .home-page .gateway-note{margin-top:18px}
 .home-page .scene-tags{margin-block:20px}
 .home-page .quiet-link{margin-top:18px}
 .home-page .scene-caption{margin-top:20px;font-size:11px;line-height:1.6}
 .home-page .steps{margin-top:28px}
 .home-page .story-quote{margin-top:40px}
 .home-page .story-faq .faq-section{gap:28px}
 .home-page .story-contact>p:not(.chapter-label){margin-bottom:24px}
}
