/* The approved warm studio scene. Only the homepage owns this treatment. */
.home-page{--scene-header:82px;--studio-ink:#173c35;--studio-clay:#b35c38}
.home-page .site-header{--header-progress:var(--header-scroll-progress,0);margin-bottom:calc(-1 * var(--scene-header));background:rgb(247 243 234 / calc(.96 * var(--header-progress)));border-bottom-color:rgb(222 216 203 / var(--header-progress));box-shadow:0 3px 16px rgb(40 60 49 / calc(.032 * var(--header-progress)));backdrop-filter:blur(calc(14px * var(--header-progress)));-webkit-backdrop-filter:blur(calc(14px * var(--header-progress)));transition:none}
.home-page .site-header:has(.menu-toggle[aria-expanded="true"]){--header-progress:1}
.home-page .wordmark,.home-page .site-header nav>a{color:var(--studio-ink)}
.home-page .editorial-hero{position:relative;display:block;isolation:isolate;overflow:hidden;background:#f5eddf;color:var(--studio-ink)}
.home-page .editorial-hero-grid{position:relative;z-index:1;display:flex;align-items:center;min-height:clamp(640px,56.25vw,1020px);padding-top:calc(var(--scene-header) + 20px);padding-bottom:122px;gap:0}
.home-page .editorial-hero-copy{width:45%;max-width:610px;padding:0}
.home-page .editorial-hero-copy:before{content:"";display:block;height:1px;background:#173c3533;margin:0 0 34px;width:100%}
.home-page .editorial-hero h1{font:400 clamp(3rem,4.4vw,4.9rem)/1.08 var(--serif);letter-spacing:-.045em;color:var(--studio-ink);margin:0 0 30px;text-wrap:balance}
.home-page .editorial-hero h1>span{color:var(--studio-clay);font-style:italic}
.home-page .editorial-hero-intro{max-width:39ch;font-size:clamp(1rem,1.2vw,1.2rem);line-height:1.7;color:#344b42;margin-bottom:32px;text-wrap:pretty}
.home-page .editorial-hero-actions{gap:14px;align-items:flex-start}
.home-page .hero-contact{background:#eea37d;color:#173c35;border-radius:3px;padding:15px 26px;min-width:0;min-height:54px;gap:30px}
.home-page .hero-contact:hover{background:#e7976f}
.home-page .hero-explore{color:#173c35;font-weight:600;text-decoration-color:#8c9b8c}
.home-page .hero-visual{position:absolute;z-index:0;inset:0;width:100%;height:100%;margin:0;max-width:none;pointer-events:none;overflow:hidden}
.home-page .hero-visual img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center;mask-image:none;-webkit-mask-image:none}
.home-page .editorial-hero:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:42px;background:linear-gradient(transparent,var(--paper));pointer-events:none}
.home-page .service-overview{padding-top:72px}
@media(min-width:1600px){.home-page .editorial-hero-copy{width:46%}}
@media(max-width:1100px) and (min-width:961px){
 .home-page .editorial-hero-grid{min-height:620px;padding-top:100px;padding-bottom:76px}
 .home-page .editorial-hero h1{font-size:clamp(2.8rem,4.4vw,3.25rem)}
 .home-page .editorial-hero-copy{width:43%}
 .home-page .editorial-hero-intro{font-size:1rem;max-width:34ch}
 .home-page .hero-visual img{position:absolute;bottom:0;left:0;width:100%;height:auto;object-fit:initial;mask-image:linear-gradient(to bottom,transparent,#000 70px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 70px)}
}
@media(max-width:960px){
 .home-page{--scene-header:72px}
 .home-page .site-header nav{background:#f7f3ea}
 .home-page .editorial-hero{display:flex;flex-direction:column;background:radial-gradient(ellipse at 85% 0,#e5d8c23d,transparent 58%),#f6efe2}
 .home-page .editorial-hero-grid{order:0;display:block;min-height:0;padding-top:calc(var(--scene-header) + 32px);padding-bottom:18px;max-width:620px}
 .home-page .editorial-hero-copy{width:100%;max-width:570px}
 .home-page .editorial-hero-copy:before{margin-bottom:26px}
 .home-page .editorial-hero h1{font-size:clamp(2.65rem,6.3vw,3.8rem);margin-bottom:24px}
 .home-page .editorial-hero-intro{max-width:44ch;margin-bottom:26px;font-size:1.0625rem}
 .home-page .hero-visual{order:1;position:relative;inset:auto;height:clamp(275px,77vw,740px);width:100%;margin:0;mask-image:linear-gradient(to bottom,transparent,#000 46px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 46px)}
 .home-page .hero-visual img{position:absolute;bottom:0;left:-55%;width:155%;height:auto;object-fit:initial;mask-image:none;-webkit-mask-image:none}
 .home-page .editorial-hero:after{height:30px}
 .home-page .service-overview{padding-top:50px}
}
@media(max-width:760px){
 .home-page{--scene-header:60px}
 .home-page .header-inner{min-height:60px}
 .home-page .site-header nav{max-height:calc(100dvh - 60px)}
 .home-page .editorial-hero{padding-top:86px;padding-bottom:28px}
 .home-page .editorial-hero-grid,.home-page .editorial-hero-copy{display:contents}
 .home-page .editorial-hero-copy:before{display:none}
 .home-page .editorial-hero h1{order:0;width:calc(100% - 44px);margin:0 auto 0;font-size:clamp(2rem,8.8vw,3.5rem);line-height:1.08}
 .home-page .hero-visual{order:1;mask-image:linear-gradient(to bottom,transparent,#000 46px,#000 calc(100% - 28px),transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 46px,#000 calc(100% - 28px),transparent)}
 .home-page .editorial-hero-intro{order:2;width:calc(100% - 44px);font-size:1rem;line-height:1.6;max-width:38ch;margin:10px auto 18px}
 .home-page .editorial-hero-actions{order:3;width:calc(100% - 44px);max-width:38ch;margin:0 auto;align-items:stretch;gap:4px;z-index:1}
 .home-page .hero-contact{padding:12px 18px;min-height:49px;gap:14px}
 .home-page .hero-explore{align-self:center}
}
