/* A project story in the existing Onest / monochrome visual system. */
.case-page{--muted:#626360;--line:#d8d9d5}
.case-page .case-intro h1{font-size:clamp(40px,7.3vw,112px);letter-spacing:-.04em}
.case-page .intro-bottom{margin-top:28px}
.case-page .intro-bottom>p:first-child{max-width:660px}
.case-page .case-hero{margin-bottom:80px}
.case-page figure>img{width:100%;height:auto}
.case-page figcaption{font-size:13px;line-height:1.5;color:var(--muted);margin-top:14px}
.case-page .case-hero figcaption{padding-top:0}
.case-page .case-chapter{padding:64px var(--gutter)}
.case-page .case-chapter h2{font-size:clamp(32px,4.25vw,68px);line-height:1.06;letter-spacing:-.035em}
.case-page .chapter-intro{display:grid;grid-template-columns:1.08fr 1fr;gap:9%;align-items:start;margin-bottom:38px}
.case-page .chapter-copy{max-width:570px;padding-top:5px}
.case-page .chapter-copy p{font-size:17px;line-height:1.65;color:var(--muted)}
.case-page .chapter-copy p+p{margin-top:18px}
.case-page .case-start{display:grid;grid-template-columns:.82fr 1fr;gap:9%;align-items:center;padding-top:0}
.case-page .case-start h2{margin-bottom:24px}
.case-page .case-start p{font-size:17px;line-height:1.65;color:var(--muted)}
.case-page .case-start p+p{margin-top:16px}
.case-page .case-start figure img{border-radius:12px;filter:saturate(.8)}
.case-page .case-screen{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:white}
.case-page .case-screen img{width:100%;height:auto}
.case-page .decision-list{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:30px}
.case-page .decision-list h3{font-size:23px;letter-spacing:-.025em;margin-bottom:9px}
.case-page .decision-list p{font-size:15px;color:var(--muted);line-height:1.6;max-width:540px}
.case-page .configuration-story{display:grid;grid-template-columns:.62fr 1fr;gap:7%;align-items:center;margin-top:65px}
.case-page .configuration-story h3{font-size:clamp(26px,2.8vw,40px);line-height:1.13;letter-spacing:-.03em;margin-bottom:18px}
.case-page .configuration-story p{font-size:16px;line-height:1.6;color:var(--muted)}
.case-page .configuration-story img{border-radius:12px}
.case-page .visual-chapter{background:#191919;color:#f5f5f3;border-radius:24px;padding-top:64px;padding-bottom:46px;margin-top:20px}
.case-page .visual-chapter .chapter-copy p,.case-page .visual-chapter figcaption{color:#c1c1bd}
.case-page .exterior-image{border-radius:14px;overflow:hidden}
.case-page .exterior-image img{width:100%;height:auto;display:block}
.case-page .interior-layout{display:grid;grid-template-columns:.65fr 1.4fr;gap:30px;align-items:center}
.case-page .plan-proof{background:#fff;border-radius:14px;padding:24px}
.case-page .plan-proof img{width:100%;max-height:440px;object-fit:contain}
.case-page .interior-layout video{display:block;width:100%;aspect-ratio:16/9;background:#191919;border-radius:14px;object-fit:contain}
.case-page .case-outcome{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-top:1px solid var(--line);margin:20px var(--gutter) 0;padding:54px 0 20px}
.case-page .case-outcome h2{font-size:clamp(32px,4vw,62px);line-height:1.07;letter-spacing:-.035em}
.case-page .case-outcome p{font-size:17px;line-height:1.65;color:var(--muted);max-width:550px}
.case-page .case-outcome .text-link{margin-top:18px}
.case-page .case-bottom-nav{margin-top:40px}
.case-page ::selection{background:#171817;color:#fff}
.case-page .case-opening{position:relative;margin:12px 12px 0;overflow:hidden;border-radius:20px;background:#141617;height:min(760px,calc(100svh - 112px));min-height:420px;color:white;isolation:isolate}
.case-page .case-opening .case-cover-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%;position:absolute;inset:0;z-index:-2}
.case-page .case-opening::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 35%,#0b101260 65%,#0b1012d9 100%);pointer-events:none}
.case-cover-copy{position:absolute;left:clamp(24px,4vw,80px);right:clamp(24px,4vw,80px);bottom:clamp(28px,4vw,64px);display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.case-cover-copy h1{font-size:clamp(40px,5.8vw,100px);line-height:1.03;letter-spacing:-.045em;max-width:1000px}
.case-cover-copy p{font-size:clamp(18px,1.7vw,28px);line-height:1.35;flex-shrink:0}
.case-page .case-cover-links{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:26px;padding-bottom:38px}
.case-cover-links .back-link{margin:0}
.case-page .registry-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line);padding-top:28px;margin-top:32px}
.registry-story h3{font-size:clamp(23px,2.5vw,34px);line-height:1.15;letter-spacing:-.025em}
.registry-story p{max-width:570px;font-size:16px;line-height:1.6;color:var(--muted)}
.case-page .visual-chapter{display:grid;grid-template-columns:.85fr 1.15fr;gap:6%;align-items:center}
.case-page .visual-chapter .chapter-intro{display:block;margin:0}
.case-page .visual-chapter .chapter-copy{margin-top:24px}
.case-page .visual-chapter h2{font-size:clamp(30px,3.3vw,56px)}
.case-page .visual-chapter .exterior-image{width:min(100%,90.666svh,826.66px);aspect-ratio:4/3;margin-inline:auto}
.case-page .visual-chapter .exterior-image img{width:100%;height:100%;object-fit:contain}
.case-page .visual-chapter figure{min-width:0;margin:0}
.case-page .case-intro{padding-top:34px;padding-bottom:54px}
.case-page .case-intro .back-link{margin-bottom:22px}
.case-page .case-intro .intro-bottom{align-items:center}
.case-page .case-intro .text-link{justify-self:end}
.case-page .case-brief{padding-top:0;padding-bottom:58px}
.case-page .brief-row{display:grid;grid-template-columns:.65fr 1.35fr;gap:8%;border-top:1px solid var(--line);padding:32px 0}
.case-page .brief-row h2{font-size:clamp(26px,2.5vw,40px)}
.case-page .brief-row p{max-width:850px;font-size:clamp(17px,1.4vw,23px);line-height:1.5;letter-spacing:-.02em}
.case-page .brief-row p+p{margin-top:20px;color:var(--muted)}
.case-page .case-start{padding-bottom:84px}
.case-page .case-layout-story{display:grid;grid-template-columns:.65fr 1.35fr;gap:6%;align-items:start;background:#eaeae7;margin:0 12px 34px;border-radius:20px;padding-block:64px}
.case-page .layout-copy{position:sticky;top:48px}
.case-page .layout-copy h2{margin-bottom:26px}
.case-page .layout-copy p{font-size:17px;line-height:1.6;color:var(--muted);max-width:390px}
.case-page .layout-copy p+p{margin-top:18px}
.case-page .layout-copy .text-link{margin-top:26px;font-size:13px}
.case-page .case-layout-story .case-screen{display:block;border-radius:10px}
.case-page .configuration-story{grid-template-columns:.65fr 1.35fr}
@media(max-width:900px){
 .case-cover-copy{display:block}.case-cover-copy p{margin-top:20px}
 .case-page .visual-chapter{grid-template-columns:1fr;gap:28px}
 .case-page .chapter-intro,.case-page .case-start{gap:6%}
 .case-page .chapter-copy p,.case-page .case-start p{font-size:15px}
 .case-page .configuration-story{grid-template-columns:1fr;gap:24px;margin-top:42px}
 .case-page .configuration-story>div{max-width:620px}
 .case-page .interior-layout{grid-template-columns:1fr 1.45fr;gap:20px}
 .case-page .case-layout-story{grid-template-columns:1fr;gap:32px}
 .case-page .layout-copy{position:static;max-width:660px}
 .case-page .layout-copy p{max-width:600px}
 .case-page .configuration-story{grid-template-columns:1fr}
}
@media(max-width:600px){
 .case-page .case-intro h1{font-size:clamp(32px,8.8vw,48px)}
 .case-page .case-hero{margin-bottom:44px}
 .case-page .case-hero figcaption{font-size:12px}
 .case-page .case-chapter{padding:38px var(--gutter)}
 .case-page .case-start{padding-top:0;grid-template-columns:1fr;gap:28px}
 .case-page .chapter-intro{grid-template-columns:1fr;gap:22px;margin-bottom:26px}
 .case-page .case-chapter h2{font-size:32px}
 .case-page .decision-list{grid-template-columns:1fr;gap:24px;margin-top:24px}
 .case-page .decision-list h3{font-size:22px}
 .case-page .configuration-story p{font-size:15px}
 .case-page .visual-chapter{border-radius:18px;margin-top:12px}
 .case-page .interior-layout{grid-template-columns:1fr;gap:26px}
 .case-page .plan-proof{padding:16px}
 .case-page .plan-proof img{max-height:280px}
 .case-page figcaption{font-size:12px;margin-top:11px}
 .case-page .case-outcome{grid-template-columns:1fr;gap:24px;padding-top:35px;margin-top:8px}
 .case-page .case-outcome p{font-size:15px}
 .case-page .case-bottom-nav{margin-top:26px}
 .case-page .case-opening{margin:8px 4px 0;border-radius:10px}
 .case-page .case-opening{height:calc(85svh - 72px);min-height:420px;max-height:620px}
 .case-page .case-opening .case-cover-image{object-position:61% center}
 .case-cover-copy{left:22px;right:22px;bottom:28px}
 .case-cover-copy h1{font-size:clamp(34px,10vw,54px);max-width:340px}
 .case-cover-copy p{font-size:18px;margin-top:14px}
 .case-page .case-cover-links{padding-top:20px;padding-bottom:28px;gap:18px;flex-wrap:wrap;font-size:13px}
 .case-page .registry-story{grid-template-columns:1fr;gap:14px}
 .registry-story p{font-size:15px}
 .case-page .case-intro{padding-top:20px;padding-bottom:30px}
 .case-page .case-intro .text-link{justify-self:start}
 .case-page .brief-row{grid-template-columns:1fr;gap:16px;padding:24px 0}
 .case-page .case-brief{padding-top:0;padding-bottom:22px}
 .case-page .case-layout-story{margin-inline:4px;border-radius:14px;padding-block:32px}
 .case-page .layout-copy p{font-size:15px}
}
/* Compact case narrative: one decision and one bounded visual per section. */
.case-page .case-chapter{padding-block:48px}
.case-page .case-start{padding-top:16px;padding-bottom:48px}
.case-page .case-start figure img{max-height:60svh;object-fit:contain}
.case-page .case-solution{display:grid;grid-template-columns:.75fr 1.25fr;gap:6%;align-items:center}
.case-page .case-solution figure{min-width:0}
.case-page .solution-copy h2{font-size:clamp(30px,3.3vw,56px);line-height:1.08;letter-spacing:-.035em}
.solution-copy>p{margin-top:24px;font-size:17px;line-height:1.6;color:var(--muted);max-width:440px}
.case-page .fitted-screen{display:block;width:min(100%,var(--screen-width));aspect-ratio:var(--screen-ratio);margin-inline:auto}
.case-page .fitted-screen img{width:100%;height:100%;object-fit:contain}
.case-page .pricing-solution{background:#eaeae7;border-radius:20px;margin:12px}
.solution-benefits{margin:26px 0 0;max-width:460px}
.solution-benefits>div+div{margin-top:22px}
.solution-benefits dt{font-size:18px;line-height:1.3;margin-bottom:8px}
.solution-benefits dd{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.case-page figcaption a{text-decoration:underline;text-underline-offset:3px}
.case-page .plan-proof img{height:min(340px,52svh);width:100%;object-fit:contain}
.case-page .interior-layout video{max-height:68svh}
@media(max-width:900px){
 .case-page .case-solution{grid-template-columns:1fr;gap:26px}
 .solution-copy>p{max-width:620px}
 .case-page .case-chapter h2{font-size:clamp(30px,4.5vw,44px)}
 .solution-benefits{max-width:660px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
 .solution-benefits>div+div{margin:0}
}
@media(max-width:600px){
 .case-page .case-chapter{padding-block:30px}
 .case-page .case-start{padding-top:4px}
 .case-page .pricing-solution{margin-inline:4px;border-radius:14px}
 .case-page .solution-copy h2{font-size:32px}
 .solution-copy>p{font-size:15px;margin-top:18px}
 .solution-benefits{grid-template-columns:1fr;gap:18px;margin-top:22px}
 .solution-benefits dd{font-size:15px}
}

/* The full-page scroll is deliberately preserved; compact sizing applies to other images. */
.case-page .full-home-screen>a{display:block}
.case-page .case-layout-story{padding-block:64px}
.case-page .case-layout-story h2{font-size:clamp(32px,4.25vw,68px)}
@media(max-width:600px){.case-page .case-layout-story{padding-block:32px}.case-page .case-layout-story h2{font-size:32px}}
