/* R42: retain the approved geometry; change only scale, fill and timing. */
html[data-theme] .logo-wrap .header-logo{width:300px}
.header-logo-waves{fill:var(--text);animation:r42-wave-warm 13s ease-in-out 2.25s infinite both}
@keyframes r42-wave-warm{0%,13%,100%{fill:var(--text)}4%,7%{fill:var(--hover)}}
html[data-theme] .site-header :is(.theme-toggle,.menu-trigger),html[data-theme] .home-page .site-header:not(.compact) :is(.theme-toggle,.menu-trigger){background:color-mix(in srgb,var(--merlot) 65.00%,transparent);color:var(--ivory);border-color:color-mix(in srgb,var(--ivory) 25.10%,transparent)}
html[data-theme] .menu-trigger .brand-mark{background:var(--ivory)}
html[data-theme] .home-page .hero-media:after{background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 66%,transparent),color-mix(in srgb,var(--bg) 28%,transparent) 40%,transparent 75%)}
/* The three scene panels overlap in the grid, so their dimensions do not jump. */
html[data-theme] .intro-section.atmosphere-slider{display:grid;position:relative;isolation:isolate;min-height:0;padding:0;overflow:hidden;background:var(--bg)}
html[data-theme] .atmosphere-slider:after{display:none}
.atmosphere-slide{position:relative;grid-area:1/1;min-height:clamp(420px,64svh,610px);display:flex;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .85s ease,visibility 0s .85s}
.atmosphere-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .85s ease;z-index:1}
.atmosphere-media{position:absolute;inset:0;z-index:-1;overflow:hidden}
.atmosphere-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 55%;transition:opacity .7s ease}
.atmosphere-day{opacity:0}html[data-lighting=day] .atmosphere-day{opacity:1}html[data-lighting=day] .atmosphere-night{opacity:0}
.atmosphere-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 94%,transparent),color-mix(in srgb,var(--bg) 75%,transparent) 30%,transparent 72%)}
.atmosphere-copy{padding-block:3rem 6rem}.atmosphere-copy h2{font-family:Lora,serif;font-size:clamp(2.2rem,4.3vw,4.2rem);line-height:1.12;max-width:520px;margin:1.2rem 0}.atmosphere-copy>p:not(.eyebrow){font-size:.95rem;margin-bottom:1.7rem;max-width:380px}
.atmosphere-controls{position:absolute;z-index:2;bottom:1.2rem;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:1.4rem}
.atmosphere-dots{display:flex;gap:.15rem}.atmosphere-dots button{display:grid;place-items:center;width:44px;height:44px;background:transparent;border:0;color:var(--accent);padding:0;cursor:pointer}.atmosphere-dots span{display:block;width:22px;height:2px;background:currentColor;opacity:.35;transition:opacity .4s,transform .4s}.atmosphere-dots button[aria-pressed=true] span{opacity:1;transform:scaleY(2)}
#atmosphere-pause{min-height:44px;background:color-mix(in srgb,var(--bg) 65%,transparent);border:1px solid var(--line);border-radius:30px;color:var(--text);padding:.6rem 1rem;font-size:.68rem;cursor:pointer}#atmosphere-pause:disabled{opacity:.7;cursor:default}
html[data-theme] .material-section{padding-block:2.5rem;min-height:0}.material-content{gap:clamp(1.5rem,3vw,3rem);grid-template-columns:1fr 1.1fr}.material-feature{aspect-ratio:16/11;max-height:430px}.material-copy{max-width:none}.material-copy h2{font-size:clamp(2.3rem,4.5vw,4.8rem)!important;line-height:1.09;max-width:650px;margin:1rem 0 1.5rem}.material-copy>p:not(.eyebrow){font-size:1.05rem;max-width:470px;line-height:1.8}
.compare-label{display:inline-flex;align-items:center;gap:.5rem}.compare-label svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
html[data-theme] .back-to-top{background:color-mix(in srgb,var(--bg) 90%,transparent);color:var(--accent)}html[data-theme] .back-to-top svg .rise-flame{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}html[data-theme] .back-to-top svg .rise-arrow{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s ease}html[data-theme] .back-to-top:is(:hover,:focus-visible){color:var(--hover);background:var(--bg);box-shadow:0 0 18px color-mix(in srgb,var(--hover) 14.51%,transparent)}.back-to-top:is(:hover,:focus-visible) .rise-arrow{transform:translateY(-2px)}
@media(max-width:1100px){html[data-theme] .logo-wrap .header-logo{width:280px}.header-cta{display:none}}
@media(max-width:900px){html[data-theme] .home-page .hero-media:after{background:linear-gradient(0deg,var(--bg),transparent 20%)}.material-content{grid-template-columns:1fr 1fr;gap:1.5rem}.material-feature{aspect-ratio:4/5}.material-copy h2{font-size:clamp(2.2rem,5vw,3.2rem)!important}}
@media(max-width:720px){html[data-theme] .logo-wrap .header-logo{width:min(270px,calc(100vw - 100px))}.atmosphere-slide{display:block;min-height:0}.atmosphere-media{position:relative;inset:auto;z-index:0;aspect-ratio:16/9}.atmosphere-media img{object-position:center}.atmosphere-media:after{display:none}.atmosphere-copy{padding:1.8rem 0 1rem}.atmosphere-copy h2{font-size:clamp(1.85rem,7.4vw,2.7rem);max-width:none;margin:.9rem 0 1rem}.atmosphere-copy>p:not(.eyebrow){font-size:.87rem;margin-bottom:1rem}.atmosphere-controls{position:relative;grid-area:2/1;bottom:auto;left:auto;transform:none;padding-bottom:1.5rem;gap:.7rem;justify-content:space-between}#atmosphere-pause{font-size:.63rem;padding:.5rem .7rem}.material-content{grid-template-columns:1fr;gap:1.5rem}.material-feature{aspect-ratio:16/10;max-height:none}.material-copy h2{font-size:clamp(2.15rem,8vw,3rem)!important}.material-copy>p:not(.eyebrow){font-size:.94rem}.compare-label svg{width:15px;height:15px}}
@media(prefers-reduced-motion:reduce){.header-logo-waves{animation:none;fill:var(--text)}.atmosphere-slide,.atmosphere-media img,.back-to-top .rise-arrow{transition:none!important}.back-to-top:is(:hover,:focus-visible) .rise-arrow{transform:none}}

.atmosphere-slider{scroll-margin-top:115px}

.atmosphere-copy{opacity:0;transition:opacity .15s ease}.atmosphere-slide.is-active .atmosphere-copy{opacity:1;transition:opacity .4s ease .25s}
@media(prefers-reduced-motion:reduce){.atmosphere-copy{transition:none!important}}
.material-section{scroll-margin-top:115px}.material-feature .icon-arrow{position:static;display:inline-block;inset:auto;width:1.1em;height:1.1em;margin:0;padding:0;border:0}
