.project-media-viewer-module__TXw-Ca__viewer{outline:none;width:100%;margin-top:clamp(3rem,6vw,5rem)}.project-media-viewer-module__TXw-Ca__viewer:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--viewer-accent);outline-offset:.65rem}.project-media-viewer-module__TXw-Ca__stage{border:1px solid color-mix(in srgb,var(--viewer-accent) 34%,#11110f42);background:linear-gradient(145deg,color-mix(in srgb,var(--viewer-accent) 14%,#24221e),#12110f 72%);height:clamp(19rem,59vw,48rem);position:relative;overflow:hidden;box-shadow:0 2rem 5rem #11110f2e}.project-media-viewer-module__TXw-Ca__activeMedia{position:absolute;inset:0}.project-media-viewer-module__TXw-Ca__activeFrame{aspect-ratio:auto;height:100%;box-shadow:none;background:0 0;border:0}.project-media-viewer-module__TXw-Ca__activeFrame img{padding:clamp(.75rem,2vw,1.75rem)}.project-media-viewer-module__TXw-Ca__controls{border-bottom:1px solid #11110f2e;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:4.75rem;display:grid}.project-media-viewer-module__TXw-Ca__controls button{color:#4f4a42;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;min-width:6.5rem;min-height:3rem;padding:.7rem 0;font-size:.7rem;font-weight:650}.project-media-viewer-module__TXw-Ca__controls button:first-child{text-align:left;justify-self:start}.project-media-viewer-module__TXw-Ca__controls button:last-child{text-align:right;justify-self:end}.project-media-viewer-module__TXw-Ca__controls button:hover{color:var(--viewer-accent)}.project-media-viewer-module__TXw-Ca__counter{color:#4f4a42;letter-spacing:.14em;margin:0;font-size:.7rem;font-weight:650}.project-media-viewer-module__TXw-Ca__thumbnailRail{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--viewer-accent) 55%,transparent) transparent;gap:.75rem;width:100%;padding:.9rem .15rem 1rem;display:flex;overflow-x:auto}.project-media-viewer-module__TXw-Ca__thumbnail{color:#5f5a52;cursor:pointer;scroll-snap-align:start;background:0 0;border:0;flex:0 0 clamp(6.5rem,10vw,8rem);padding:0 0 1.45rem;position:relative}.project-media-viewer-module__TXw-Ca__thumbnailStage{aspect-ratio:16/10;background:linear-gradient(145deg,color-mix(in srgb,var(--viewer-accent) 12%,#292620),#161512);border:1px solid #11110f33;place-items:center;width:100%;display:grid;overflow:hidden}.project-media-viewer-module__TXw-Ca__thumbnailStage img{object-fit:contain;width:100%;height:100%;padding:.35rem;display:block}.project-media-viewer-module__TXw-Ca__thumbnailPlaceholder{background:color-mix(in srgb,var(--viewer-accent) 65%,#ddd5c8);width:48%;height:1px;box-shadow:0 .7rem #ddd5c847}.project-media-viewer-module__TXw-Ca__thumbnailNumber{letter-spacing:.13em;font-size:.62rem;font-weight:650;position:absolute;bottom:0;left:0}.project-media-viewer-module__TXw-Ca__thumbnail[aria-pressed=true] .project-media-viewer-module__TXw-Ca__thumbnailStage{border-color:var(--viewer-accent);box-shadow:0 0 0 1px var(--viewer-accent)}.project-media-viewer-module__TXw-Ca__thumbnail[aria-pressed=true] .project-media-viewer-module__TXw-Ca__thumbnailNumber{color:var(--viewer-accent)}.project-media-viewer-module__TXw-Ca__thumbnail[aria-pressed=true]:after{background:var(--viewer-accent);content:"";width:1.75rem;height:1px;position:absolute;bottom:.25rem;right:0}@media (max-width:767px){.project-media-viewer-module__TXw-Ca__stage{height:clamp(18rem,92vw,25rem)}.project-media-viewer-module__TXw-Ca__controls{min-height:4.25rem}.project-media-viewer-module__TXw-Ca__thumbnailRail{margin-right:calc(var(--gutter) * -1);width:calc(100% + var(--gutter));padding-right:var(--gutter)}.project-media-viewer-module__TXw-Ca__thumbnail{flex-basis:6.75rem}}@media (prefers-reduced-motion:reduce){.project-media-viewer-module__TXw-Ca__thumbnailRail{scroll-behavior:auto}}
.case-hero{padding-top:clamp(10rem,16vw,15rem);padding-bottom:5rem}.case-hero>p:not(.eyebrow){max-width:48rem;color:var(--paper);margin:2rem 0;font-size:1.25rem}.case-hero dl{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:5rem;display:grid}.case-hero dl div{padding:1.2rem 1rem 0 0}.case-hero dt{color:var(--stone);letter-spacing:.12em;text-transform:uppercase;font-size:.65rem}.case-hero dd{margin:.4rem 0}.case-cover{aspect-ratio:auto;border-color:color-mix(in srgb,var(--project-accent) 55%,var(--line));height:clamp(22rem,64vw,52rem);min-height:0}.case-narrative{padding-block:var(--section);grid-template-columns:.3fr .9fr .8fr;gap:clamp(2rem,5vw,6rem);display:grid}.case-narrative h2{font-family:var(--font-display);margin:0;font-size:clamp(2rem,3.5vw,4rem);font-weight:400;line-height:1.05}.case-narrative div{color:var(--stone)}.case-solution{padding-block:var(--section);background:radial-gradient(circle at 80% 18%,color-mix(in srgb,var(--project-accent) 12%,transparent),transparent 28%),linear-gradient(145deg,#f5f1e9,var(--ivory));color:var(--ink)}.case-solution .eyebrow{color:#69645b}.solution-lede{max-width:50rem;font-size:1.2rem}.case-details{padding-block:var(--section);grid-template-columns:1fr 1fr;gap:5rem;display:grid}.case-details ol{margin:2rem 0;padding:0;list-style:none}.case-details li{border-bottom:1px solid var(--line);overflow-wrap:anywhere;grid-template-columns:2.75rem 1fr;gap:.75rem;padding:1rem 0;display:grid}.case-details li>span:first-child{color:var(--project-accent);font-size:var(--text-xs);letter-spacing:.14em;font-weight:650}.case-details .result{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:1fr 2fr;padding-top:4rem;display:grid}.case-details>*{min-width:0}.case-details p{overflow-wrap:anywhere}.result>p:last-child{max-width:50rem;font-family:var(--font-display);margin:0;font-size:2rem}.case-links{flex-wrap:wrap;gap:1rem;margin-top:2rem;display:flex}.case-next{padding-bottom:var(--section);grid-template-columns:1fr auto;align-items:end;display:grid}.case-next>.eyebrow{grid-column:1/-1}.case-next>a:not(.action){overflow-wrap:anywhere;font-family:var(--font-display);letter-spacing:-.06em;font-size:clamp(3.25rem,7.5vw,7.5rem);line-height:.9}.case-next>a:not(.action):hover{color:var(--project-accent)}.case-next>a span{color:var(--gold)}@media (max-width:767px){.case-hero dl,.case-narrative,.case-details{grid-template-columns:1fr}.case-cover{height:clamp(18rem,92vw,25rem)}.case-details .result{grid-column:auto;grid-template-columns:1fr}.case-next{grid-template-columns:1fr;gap:2rem}.case-next>.eyebrow{grid-column:auto}.case-next>a:not(.action){font-size:clamp(2.7rem,13vw,4rem)}}
