.case-body{--case-accent:var(--azure);--case-accent-ink:#1c5f80;--case-paper:#f2f4f1;--case-ink:#14181a;--case-title-scale:1;--case-h2-scale:1;--case-radius:14px;--case-shot-radius:12px;--case-tint:transparent;background:var(--ink,#0a0a0c);overflow-x:clip}.case-body--ohana{--case-accent:#35b06d;--case-accent-ink:#1a6b40;--case-paper:#f2f4f1;--case-ink:#14181a;--case-radius:14px;--case-shot-radius:12px;--case-tint:#35b06d12}.case-body--yussi{--case-accent:#4ea3f5;--case-accent-ink:#0d5bb0;--case-paper:#eef3f7;--case-ink:#071a34;--case-title-scale:.86;--case-h2-scale:.96;--case-radius:4px;--case-shot-radius:3px;--case-tint:#0d67d514}.case-body--nextmail{--case-accent:#40d4e7;--case-accent-ink:#0d7d8c;--case-paper:#eaf1f2;--case-ink:#04090e;--case-title-scale:1.06;--case-h2-scale:1;--case-radius:6px;--case-shot-radius:5px;--case-tint:#40d4e714}.case-nav{z-index:40;padding:1rem var(--space-gutter);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#0a0a0cb8;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;display:grid;position:sticky;top:0}.case-nav:after{content:"";background:var(--case-accent);height:2px;transform:scaleX(var(--case-progress,0));transform-origin:0;pointer-events:none;position:absolute;bottom:-1px;left:0;right:0}.case-nav-here{min-width:0;font-family:var(--font-mono);letter-spacing:.1em;text-align:center;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:var(--ivory-faint);margin:0;font-size:.75rem;overflow:hidden}@media (prefers-reduced-transparency:reduce){.case-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0a0a0c}}.case-nav .nav-logo{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ivory);align-items:center;gap:.55rem;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.case-nav .nav-logo-dash,.case-footer .nav-logo-dash{color:var(--azure)}.case-nav .nav-right{align-items:center;gap:clamp(.6rem,2vw,1.25rem);display:flex}.case-nav .lang-toggle{font-family:var(--font-mono);font-size:var(--text-label);color:var(--ivory-faint);align-items:center;gap:.4rem;display:inline-flex}.case-nav .lang-toggle button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:.25rem}.case-nav .lang-toggle button[aria-pressed=true]{color:var(--ivory)}.case-nav-link{min-height:2.75rem;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ivory-faint);transition:color var(--dur-fast) var(--ease-premium);align-items:center;gap:.45rem;text-decoration:none;display:inline-flex}.case-nav-link:hover{color:var(--ivory)}@media (width<=720px){.case-nav-here,.case-nav .nav-cta{display:none}.case-nav{grid-template-columns:auto 1fr}}@media (width<=480px){.case-nav-link{justify-content:center;width:2.75rem}.case-nav-link-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.case{display:block}.case-section{padding-block:clamp(4rem,12vh,9rem);padding-inline:var(--space-gutter);max-width:var(--content-max);margin-inline:auto}.case-kicker{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.16em;text-transform:uppercase;color:var(--azure);margin:0 0 1.5rem}.case-section h2{font-family:var(--font-display);font-weight:800;font-size:calc(clamp(2rem, 5.6vw, 3.6rem) * var(--case-h2-scale));letter-spacing:-.025em;color:var(--ivory);max-width:20ch;margin:0 0 1.5rem;line-height:1.05}.case-lead,.case-prose p{color:var(--ivory-dim);max-width:58ch;margin:0 0 1.1rem;font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.65}.case-hero{padding:clamp(2rem, 6vh, 4rem) var(--space-gutter) clamp(3rem, 8vh, 6rem);max-width:var(--content-max);margin-inline:auto}.case-back{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase;color:var(--ivory-faint);transition:color var(--dur-fast) var(--ease-premium);align-items:center;gap:.5rem;margin-bottom:clamp(2rem,6vh,3.5rem);text-decoration:none;display:inline-flex}.case-back:hover{color:var(--ivory)}.case-eyebrow{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.16em;text-transform:uppercase;color:var(--case-accent);margin:0 0 1rem}.case-title{font-family:var(--font-display);font-weight:800;font-size:calc(clamp(2.8rem, 11vw, 7rem) * var(--case-title-scale));letter-spacing:-.035em;color:var(--ivory);margin:0 0 .6rem;line-height:.94}.case-industry{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--ivory-faint);margin:0 0 clamp(1.5rem,4vw,2.5rem)}.case-lede{color:var(--ivory-dim);max-width:40ch;margin:0 0 clamp(2rem,5vw,2.75rem);font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.5}.case-visit{margin-bottom:clamp(2.5rem,7vh,4.5rem)}.case-hero-visual{border-radius:var(--case-radius);border:1px solid var(--line-strong);background:#0d1017;margin:0 0 clamp(2rem,5vh,3.5rem);overflow:hidden}.case-hero-visual img{aspect-ratio:1440/900;object-fit:cover;object-position:top center;width:100%;height:auto;display:block}@media (width<=700px){.case-hero-visual img{aspect-ratio:390/620}}.case-facts{border-top:1px solid var(--line);gap:1.5rem 2.5rem;margin:0;padding-top:1.75rem;display:grid}@media (width>=700px){.case-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1100px){.case-hero{grid-template-columns:minmax(0,1fr) minmax(0,.4fr);grid-template-areas:"back facts""eyebrow facts""badge facts""title facts""industry facts""lede facts""visit facts""visual visual";column-gap:clamp(2rem,5vw,5rem);display:grid}.case-eyebrow{grid-area:eyebrow}.case-title{grid-area:title}.case-industry{grid-area:industry}.case-lede{grid-area:lede}.case-hero-visual{grid-area:visual}.case-back{grid-area:back;justify-self:start}.case-badge{grid-area:badge;justify-self:start}.case-visit{grid-area:visit;justify-self:start}.case-facts{grid-area:facts;grid-template-columns:minmax(0,1fr);align-self:end;gap:1.25rem;margin-bottom:clamp(2.5rem,7vh,4.5rem)}}.case-facts dt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ivory-faint);margin-bottom:.5rem;font-size:.75rem}.case-facts dd{color:var(--ivory);margin:0;font-size:.98rem;line-height:1.5}.case-points{counter-reset:pt;border-top:1px solid var(--line);gap:2rem;margin:clamp(2.5rem,6vw,4rem) 0 0;padding:0;list-style:none;display:grid}@media (width>=860px){.case-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}}.case-points li{counter-increment:pt;border-top:1px solid var(--line);padding-top:1.5rem}.case-points li:before{content:counter(pt, decimal-leading-zero);font-family:var(--font-mono);letter-spacing:.14em;color:var(--case-accent);margin-bottom:.9rem;font-size:.7rem;display:block}.case-points h3,.case-decisions h3,.case-stack h3{font-family:var(--font-display);color:var(--ivory);margin:0 0 .6rem;font-size:clamp(1.1rem,1.9vw,1.35rem);font-weight:700;line-height:1.2}.case-points p,.case-decisions p,.case-stack p{color:var(--ivory-dim);max-width:44ch;margin:0;font-size:.96rem;line-height:1.6}.case-decisions{border-top:1px solid var(--line);margin-top:clamp(2.5rem,6vw,4rem)}.case-decisions article{border-bottom:1px solid var(--line);gap:.75rem 3rem;padding-block:clamp(1.75rem,4vw,2.6rem);display:grid}@media (width>=860px){.case-decisions article{grid-template-columns:4rem minmax(0,.4fr) minmax(0,.6fr);align-items:start}}.case-decision-index{font-family:var(--font-mono);letter-spacing:.14em;color:var(--case-accent);font-size:.7rem}.case-section--paper,.case-experience{background:var(--case-paper);max-width:none;color:var(--case-ink);margin-inline:0;padding-inline:0}.case-section--paper>*,.case-experience-head,.case-experience .case-shot,.case-experience .case-shot-pair{max-width:var(--content-max);padding-inline:var(--space-gutter);margin-inline:auto}.case-section--paper .case-kicker,.case-experience .case-kicker{color:var(--case-accent-ink)}.case-section--paper h2,.case-section--paper h3,.case-experience h2{color:var(--case-ink)}.case-section--paper .case-lead,.case-section--paper .case-prose p,.case-section--paper p,.case-experience .case-lead{color:#070c12b8}.case-section--paper figcaption{color:#070c1294}.case-shot{margin:clamp(2rem,5vw,3.5rem) auto 0}.case-shot img{border-radius:var(--case-shot-radius);border:1px solid #14181a1f;width:100%;height:auto;display:block}.case-shot--phone img{border-radius:calc(var(--case-shot-radius) + 6px)}.case-shot-pair{gap:clamp(1.5rem,4vw,2.5rem);display:grid}@media (width>=760px){.case-shot-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.case-shot figcaption{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ivory-faint);margin-top:.9rem;font-size:.75rem;line-height:1.7}.case-shot figcaption b{color:var(--case-accent);font-weight:400}.case-section--paper .case-shot figcaption b{color:var(--case-accent-ink)}.case-strip{gap:clamp(1rem,2.5vw,2rem);margin-top:clamp(2rem,5vw,3.5rem);display:grid}@media (width>=760px){.case-strip{grid-template-columns:repeat(var(--strip-cols,3), minmax(0, 1fr));align-items:start}}@media (width<=759px){.case-strip{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(var(--space-gutter) * -1);padding-inline:var(--space-gutter);grid-auto-columns:74%;grid-auto-flow:column;overflow-x:auto}.case-strip::-webkit-scrollbar{display:none}.case-strip>*{scroll-snap-align:start}}.case-strip .case-shot{margin:0}.case-badge{border:1px solid var(--case-accent);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--case-accent);background:var(--case-tint);border-radius:999px;align-items:center;gap:.5rem;margin:0 0 1.25rem;padding:.4rem .75rem;font-size:.75rem;display:inline-flex}.case-mobile{gap:clamp(2.5rem,6vw,4rem);display:grid}@media (width>=900px){.case-mobile{grid-template-columns:minmax(0,1fr) minmax(0,.72fr);align-items:center}}.case-mobile-shot{margin-top:0}.case-mobile-shot img{border:1px solid var(--line-strong)}.case-mobile-shot figcaption{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ivory-faint);margin-top:1rem;font-size:.75rem;line-height:1.7}.case-mobile-copy{max-width:62ch}.case-mobile-block .case-strip .case-shot img{border:1px solid var(--line-strong)}.case-spread-head{margin-bottom:clamp(2rem,5vw,3.5rem)}.case-spread-body{max-width:var(--content-max);padding-inline:var(--space-gutter);gap:clamp(1.75rem,4vw,3rem);margin-inline:auto;display:grid}@media (width>=960px){.case-spread-body{grid-template-columns:minmax(0,1.6fr) minmax(0,.72fr);align-items:start}}.case-spread-media{margin:0}.case-spread-index{border-top:1px solid #070c1229;margin:0;padding:0;list-style:none}.case-spread-index li{border-bottom:1px solid #070c121f;grid-template-columns:2.25rem minmax(0,1fr);gap:.15rem .75rem;padding-block:.9rem;display:grid}.case-spread-num{font-family:var(--font-mono);letter-spacing:.12em;color:var(--case-accent-ink);grid-row:span 2;padding-top:.25rem;font-size:.7rem}.case-spread-name{font-family:var(--font-display);color:var(--case-ink);font-size:clamp(1rem,1.6vw,1.2rem);font-weight:700;line-height:1.2}.case-spread-meta{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#070c1280;font-size:.75rem}.case-ladder{border-top:1px solid var(--line);margin:clamp(2.5rem,6vw,4rem) 0 0;padding:0;list-style:none}.case-ladder li{border-bottom:1px solid var(--line);align-items:center;gap:.5rem 2rem;padding-block:clamp(1.5rem,3.5vw,2.4rem);display:grid}@media (width>=900px){.case-ladder li{grid-template-columns:5rem minmax(0,.9fr) minmax(0,.85fr)}.case-ladder li>.case-ladder-copy:last-child{grid-column:2/3}}.case-ladder-num{font-family:var(--font-display);letter-spacing:-.04em;color:var(--case-accent);opacity:.9;font-size:clamp(2rem,4.5vw,3.25rem);font-weight:800;line-height:.9}.case-ladder-copy{display:block}.case-ladder-name{font-family:var(--font-display);color:var(--ivory);margin-bottom:.4rem;font-size:clamp(1.1rem,1.9vw,1.35rem);font-weight:700;display:block}.case-ladder-body{color:var(--ivory-dim);max-width:52ch;font-size:.96rem;line-height:1.6;display:block}.case-ladder-shot{aspect-ratio:16/10;object-fit:cover;object-position:top center;border-radius:var(--case-shot-radius);border:1px solid var(--line);width:100%;height:auto;display:block}.case-note{border-left:2px solid var(--case-accent);color:var(--ivory-faint);max-width:62ch;margin:clamp(1.75rem,4vw,2.5rem) 0 0;padding-left:1rem;font-size:.9rem;line-height:1.65}.case-stack{border-top:1px solid var(--line);gap:1.75rem;margin:clamp(2.5rem,6vw,3.5rem) 0 0;padding:0;list-style:none;display:grid}@media (width>=760px){.case-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}.case-stack--four{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}}.case-stack li{border-top:1px solid var(--line);padding-top:1.5rem}.case-outcome-title{max-width:24ch;font-size:clamp(1.9rem,5vw,3.2rem)}.case-visit-foot{margin-top:2rem}.case-next{border-top:1px solid var(--line);gap:clamp(3rem,8vw,5rem);display:grid}@media (width>=900px){.case-next{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center}}.case-next-link{border-top:1px solid var(--line);border-bottom:1px solid var(--line);transition:border-color var(--dur-base) var(--ease-premium);gap:clamp(1.25rem,3vw,2rem);padding-block:clamp(1.5rem,3vw,2.25rem);text-decoration:none;display:grid}@media (width>=620px){.case-next-link{grid-template-columns:minmax(0,.62fr) minmax(0,1fr);align-items:center}}.case-next-link:hover{border-color:var(--case-accent)}.case-next-preview{border-radius:var(--case-shot-radius);border:1px solid var(--line);background:#0d1017;display:block;overflow:hidden}.case-next-preview img{aspect-ratio:4/3;object-fit:cover;object-position:top center;filter:saturate(.75)brightness(.82);width:100%;height:auto;transition:transform var(--dur-base) var(--ease-premium), filter var(--dur-base) var(--ease-premium);display:block;transform:scale(1.01)}.case-next-link:hover .case-next-preview img{filter:none;transform:scale(1.05)}.case-next-text{display:block}.case-next-text .case-kicker{margin-bottom:.75rem;display:block}.case-next-name{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ivory);max-width:none;margin:0 0 .5rem;font-size:clamp(2rem,6vw,3.4rem);font-weight:800;line-height:1;display:block}.case-next-body{color:var(--ivory-dim);max-width:34ch;margin:0 0 1.25rem;font-size:.98rem;display:block}.case-next-cta{display:inline-block}@media (prefers-reduced-motion:reduce){.case-next-preview img,.case-next-link:hover .case-next-preview img{transition:none;transform:none}}.case-next-cta{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--azure)}.case-cta-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ivory);margin:0 0 .9rem;font-size:clamp(1.8rem,4.5vw,2.8rem);font-weight:800;line-height:1.05}.case-cta p{color:var(--ivory-dim);max-width:40ch;margin:0 0 1.75rem}.case-footer{border-top:1px solid var(--line);padding:clamp(3rem, 8vh, 5rem) var(--space-gutter) 2.5rem}.case-footer .footer-inner{max-width:var(--content-max);margin-inline:auto}.case-footer .footer-columns{gap:2.5rem;display:grid}@media (width>=760px){.case-footer .footer-columns{grid-template-columns:1.4fr 1fr 1fr}}.case-footer .nav-logo{font-family:var(--font-display);color:var(--ivory);align-items:center;gap:.55rem;margin-bottom:1rem;font-weight:700;text-decoration:none;display:inline-flex}.case-footer .footer-tagline{max-width:34ch;color:var(--ivory-faint);margin:0;font-size:.92rem;line-height:1.6}.case-footer .footer-nav{flex-direction:column;gap:.6rem;display:flex}.case-footer a{color:var(--ivory-dim);transition:color var(--dur-fast) var(--ease-premium);font-size:.92rem;text-decoration:none}.case-footer a:hover{color:var(--ivory)}.case-footer .footer-col>.footer-contact{margin-bottom:.6rem;display:block}.case-footer .footer-legal{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ivory-faint);margin:clamp(2.5rem,6vh,4rem) 0 0;font-size:.75rem}.js-reveal [data-reveal]{opacity:0;transition:opacity .9s var(--ease-premium), transform .9s var(--ease-premium);transform:translateY(22px)}.js-reveal [data-reveal].is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js-reveal [data-reveal]{opacity:1;transition:none;transform:none}}
