/* PROOF / Editorial collection. Extends the original homepage design system. */
[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reading-progress{position:fixed;top:var(--head);left:0;width:var(--read,0%);height:2px;z-index:51;background:var(--red);pointer-events:none}.case-breadcrumb{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:19px;color:var(--muted);font-size:12px}.case-breadcrumb a{color:var(--ink);display:flex;gap:12px;align-items:center}.case-breadcrumb a:hover{color:var(--red)}.case-opening{padding-top:29px;padding-bottom:30px}.case-opening-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:5.4vw;margin-top:44px;align-items:center}.case-title-column{min-width:0;padding-bottom:8px}.case-title-column .eyebrow{font-size:11px;letter-spacing:.07em;color:var(--muted);margin-bottom:30px;line-height:1.7}.case-title-column h1{font-size:clamp(62px,7.55vw,140px);font-weight:450;line-height:.96;letter-spacing:-.062em;text-wrap:balance}.case-subtitle{display:block;font-size:.36em;line-height:1.18;letter-spacing:-.035em;margin-top:20px;max-width:90%}.case-introduction{font-size:calc(clamp(17px,1.35vw,23px) + 2px);line-height:1.56;letter-spacing:-.015em;margin-top:30px;max-width:540px;text-wrap:pretty}.case-role{font-size:14px;line-height:1.65;color:var(--muted);margin-top:24px;max-width:430px;padding-left:15px;border-left:1px solid var(--red)}.case-figure{min-width:0}.case-image{display:block;width:100%;position:relative;overflow:hidden;background:#000;color:var(--paper);text-align:left}.case-image img{width:100%;height:100%;object-fit:contain;transition:transform .9s var(--ease)}.hero-figure.case-figure{padding-top:0;animation:photo-in .8s var(--ease) both}.hero-figure .case-image{aspect-ratio:.98;clip-path:polygon(30px 0,100% 0,100% 100%,0 100%,0 30px)}.project-proof-gin .hero-figure .case-image img{object-fit:cover}.case-image:hover img{transform:scale(1.025)}.zoom-label{position:absolute;bottom:17px;right:17px;display:flex;align-items:center;gap:9px;color:#f5f3ee;background:rgba(0,0,0,.75);padding:8px 10px;font-size:10px;opacity:.7;transition:opacity .25s}.zoom-label>span{font:24px/16px var(--sans);color:var(--red)}.case-image:hover .zoom-label,.case-image:focus-visible .zoom-label{opacity:1}.case-figure figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-top:14px;color:var(--muted);font-size:12px;line-height:1.5}.case-figure figcaption .mono{font-size:10px;white-space:nowrap;flex-shrink:0}.case-figure figcaption>span:last-child{text-align:right;max-width:70%}.case-facts{display:grid;grid-template-columns:1fr 1fr 1.5fr .8fr;gap:3vw;margin:38px 0 0;padding-top:22px;border-top:1px solid var(--line)}.case-facts dt{color:var(--muted);font-size:11px;margin-bottom:9px}.case-facts dd{font-size:15px;line-height:1.55;margin:0;max-width:310px}.case-credit{font-size:11px;line-height:1.7;max-width:1100px;margin-top:26px;color:var(--muted)}.case-chapters{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:21px;padding-bottom:21px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:18px}.case-chapters>.mono{font-size:11px;color:var(--muted)}.case-chapters>div{display:flex;gap:40px;margin-left:auto;margin-right:5vw}.case-chapters a{font-size:14px}.case-chapters a:hover{color:var(--red)}.case-story{padding-top:0;padding-bottom:0}.story-row{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw;padding-top:84px;padding-bottom:84px;scroll-margin-top:125px}.story-label .mono{font-size:11px}.story-label h2{font-size:clamp(30px,3.1vw,51px);line-height:1.08;letter-spacing:-.045em;margin-top:15px;font-weight:450}.story-copy{max-width:750px}.story-copy p{font-size:20px;line-height:1.75;letter-spacing:-.015em;text-wrap:pretty}.story-copy p+p{margin-top:20px}.story-lead p{font-size:clamp(21px,2.02vw,34px);line-height:1.45;letter-spacing:-.028em}.process-spread{display:grid;grid-template-columns:1.02fr .98fr;gap:6.5vw;align-items:center;border-top:1px solid var(--line);padding-top:64px;padding-bottom:64px;scroll-margin-top:125px}.process-copy .story-copy{margin-top:29px}.detail-figure .case-image{aspect-ratio:1.05}.detail-figure.image-detail .case-image img{object-fit:cover;object-position:var(--detail-position,50% 50%);transform:scale(var(--detail-scale,1.1))}.detail-figure.image-detail .case-image:hover img{transform:scale(calc(var(--detail-scale,1.1) + .025))}.detail-figure:not(.image-detail) .case-image{aspect-ratio:auto}.detail-figure:not(.image-detail) .case-image img{height:auto}.result-row{border-top:1px solid var(--line);padding-top:70px;padding-bottom:95px}.case-page .contact-section{border-top:1px solid #3d3d38}.case-page .contact-grid h2,.work-page .contact-grid h2{font-size:clamp(62px,7.6vw,118px)}.case-page .footer-wordmark,.work-page .footer-wordmark{margin-top:60px}.case-page .contact-grid,.work-page .contact-grid{margin-top:45px}.next-project{background:var(--black);color:var(--paper);padding-top:27px;padding-bottom:55px}.next-top{display:flex;justify-content:space-between;font-size:12px;color:#b4b5ac;border-bottom:1px solid #343632;padding-bottom:22px}.next-top a:hover{color:var(--paper)}.next-link{display:grid;grid-template-columns:1.2fr .6fr;gap:10vw;align-items:center;padding-top:38px}.next-link>div>p:first-child{font-size:12px;color:#b4b5ac;margin-bottom:22px}.next-link h2{font-size:clamp(42px,5.6vw,95px);line-height:1.04;letter-spacing:-.05em;max-width:800px}.next-arrow{display:inline-block;margin-left:.2em;color:var(--red);transition:transform .35s}.next-link:hover .next-arrow{transform:translate(5px,-5px)}.next-credit{font-size:11px;color:#b4b5ac;margin-top:25px}.next-image{aspect-ratio:1.55;overflow:hidden;background:#000}.next-image img{width:100%;height:100%;object-fit:contain;transition:transform .8s var(--ease)}.next-link:hover img{transform:scale(1.04)}
/* Proof Gin is a studio showcase, not a fabricated client challenge/results story. */
.gin-story{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;padding-top:85px;padding-bottom:85px;border-top:1px solid var(--line);margin-top:15px}.gin-story .story-label{padding-top:40px}.gin-story .story-label h2{font-size:clamp(42px,4.1vw,70px)}.gin-full .case-image{aspect-ratio:1.1}.gin-pair{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;padding-top:50px;padding-bottom:105px;border-top:1px solid var(--line)}.gin-pair .case-image{aspect-ratio:.9}.gin-detail-column{padding-top:100px}.gin-detail-column h2{font-size:clamp(42px,4.9vw,80px);line-height:1;letter-spacing:-.05em;margin-top:28px}.gin-caption{font-size:18px;line-height:1.65;max-width:400px;margin-top:26px;margin-bottom:38px}.gin-detail-column .case-image{aspect-ratio:1.06}.gin-pair .case-image img{object-fit:cover}
/* Project index, with a deliberately asymmetric image rhythm and a compact list alternative. */
.collection-opening{padding-top:29px}.collection-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;align-items:end;padding-top:48px;padding-bottom:53px}.collection-heading h1{font-size:clamp(90px,10.4vw,180px);line-height:.91;letter-spacing:-.065em;font-weight:450}.collection-heading>div{max-width:370px;padding-bottom:7px}.collection-heading>div>p:first-child{font-size:22px;line-height:1.5;letter-spacing:-.025em}.collection-intro-note{font-size:14px;line-height:1.7;color:var(--muted);margin-top:24px}.collection-controls{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.filter-buttons{display:flex;gap:28px;align-items:center}.filter-buttons button{font-size:15px;position:relative;padding:5px 0;color:var(--muted);min-height:36px}.filter-buttons button.active{color:var(--ink)}.filter-buttons button.active:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--red)}.filter-buttons sup{font:11px var(--mono);padding-left:4px}.view-buttons{display:flex;align-items:center;gap:12px;font:12px var(--mono);color:var(--muted)}.view-buttons button{font:inherit;min-height:36px;padding-inline:4px}.view-buttons button.active{color:var(--ink)}.view-buttons button:hover,.filter-buttons button:hover{color:var(--red)}.collection-grid{display:grid;grid-template-columns:1.15fr 1fr;column-gap:7vw;row-gap:72px;padding-top:45px;padding-bottom:80px;align-items:start}.collection-item{min-width:0}.collection-item:nth-child(even){margin-top:110px}.collection-image{position:relative;display:block;background:#000;overflow:hidden;aspect-ratio:1.16}.collection-image img{width:100%;height:100%;object-fit:contain;transition:transform .85s var(--ease)}.collection-item:first-child .collection-image{aspect-ratio:1.04}.collection-item:first-child .collection-image img{object-fit:cover}.collection-image:hover img{transform:scale(1.035)}.collection-num{position:absolute;top:19px;left:20px;font-size:10px;color:#ccc;background:rgba(0,0,0,.5);padding:4px 6px}.collection-open{position:absolute;bottom:17px;right:19px;font-size:27px;color:var(--paper);background:rgba(0,0,0,.5);padding:3px 8px;transition:color .3s}.collection-image:hover .collection-open{color:var(--red)}.collection-meta{display:flex;justify-content:space-between;gap:20px;margin-top:19px;font-size:10px;color:var(--muted);line-height:1.6}.collection-meta span:last-child{text-align:right;max-width:55%}.collection-item h2{font-size:clamp(25px,2.15vw,38px);line-height:1.15;letter-spacing:-.035em;margin-top:10px}.collection-item h2 a{display:flex;align-items:start;justify-content:space-between;gap:16px}.collection-item h2 a>span{font-size:27px;opacity:0;transition:opacity .3s;color:var(--red)}.collection-item h2 a:hover>span{opacity:1}.collection-deck{font-size:15px;line-height:1.65;margin-top:15px;max-width:460px;color:#555550}.collection-attribution{font-size:12px;line-height:1.65;margin-top:13px;color:var(--muted);max-width:450px}.index-credit{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw;padding-top:25px;padding-bottom:65px;border-top:1px solid var(--line)}.index-credit>.mono{font-size:11px}.index-credit>p:last-child{font-size:15px;line-height:1.65;color:var(--muted);max-width:760px}.collection-grid.list-view{display:block;padding-top:15px}.list-view .collection-item{margin:0;display:grid;grid-template-columns:150px 1fr;column-gap:36px;border-bottom:1px solid var(--line);padding:26px 0;position:relative}.list-view .collection-image,.list-view .collection-item:first-child .collection-image{width:150px;aspect-ratio:1.35;grid-row:1 / 5}.list-view .collection-num{display:none}.list-view .collection-open{font-size:20px;right:6px;bottom:6px}.list-view .collection-item h2{font-size:28px;grid-column:2;grid-row:2;margin:8px 0 0}.list-view .collection-meta{grid-column:2;grid-row:1;margin:0}.list-view .collection-deck{display:none}.list-view .collection-attribution{grid-column:2;grid-row:3;max-width:none;margin-top:9px}.list-view .collection-item h2 a>span{opacity:1}.list-view .collection-image img{object-fit:contain!important}
/* Native dialog supplies focus trapping and Escape close. */
.image-dialog{max-width:calc(100vw - 40px);width:1440px;max-height:calc(100svh - 40px);height:calc(100svh - 40px);padding:0;border:0;background:#080909;color:var(--paper);overflow:hidden}.image-dialog::backdrop{background:rgba(0,0,0,.92)}.viewer-bar{display:flex;justify-content:space-between;align-items:center;padding:15px 25px;border-bottom:1px solid #30322e;min-height:60px}.viewer-bar .mono{font-size:12px;color:#bbb}.viewer-bar .dialog-close{color:var(--paper);min-height:30px}.viewer-stage{height:calc(100% - 134px);display:flex;align-items:center;justify-content:center;padding:12px 24px;background:#000}.viewer-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.viewer-bottom{min-height:73px;display:grid;grid-template-columns:50px 1fr 50px;align-items:center;gap:20px;padding:9px 24px}.viewer-bottom button{width:44px;height:44px;font-size:27px}.viewer-bottom p{text-align:center;font-size:14px;line-height:1.5;color:#bcbdb5}.viewer-bottom button:disabled{opacity:.25;cursor:default}.image-dialog .dialog-close:focus-visible{outline-color:var(--red)}
/* Reduced motion also removes the homepage's pinned scroll sequence. */
html[data-motion="off"] .feature{height:auto;min-height:0}html[data-motion="off"] .feature-sticky{position:relative;top:0;height:auto;min-height:0}html[data-motion="off"] .feature-inner{min-height:650px}html[data-motion="off"] .feature-visual{height:560px}.feature-view{display:inline-flex}
@media(min-width:1900px){.case-opening-grid{gap:100px}.case-title-column .eyebrow{font-size:13px}.case-role{font-size:16px}.case-facts dd{font-size:18px}.story-copy p{font-size:24px}.story-lead p{font-size:34px}.collection-deck{font-size:18px}}
@media(max-width:1100px){.case-opening-grid{gap:4vw}.case-title-column h1{font-size:7.4vw}.case-title-column .eyebrow{font-size:10px;margin-bottom:22px}.case-introduction{font-size:18px;margin-top:24px}.case-role{font-size:13px;margin-top:19px}.case-facts{gap:22px}.case-facts dd{font-size:14px}.case-facts dt{font-size:10px}.case-credit{font-size:10px}.story-row{gap:5vw;padding-block:65px}.story-copy p{font-size:18px}.story-lead p{font-size:25px}.process-spread{gap:5vw;padding-block:50px}.collection-heading{gap:5vw}.collection-heading>div>p:first-child{font-size:20px}.collection-grid{column-gap:5vw;row-gap:55px}.collection-item:nth-child(even){margin-top:80px}.collection-meta{font-size:9.5px}.collection-deck{font-size:14px}.filter-buttons{gap:22px}.filter-buttons button{font-size:14px}.case-figure figcaption{font-size:11px}.next-link{gap:5vw}}
@media(max-width:760px){.case-opening{padding-top:21px;padding-bottom:25px}.case-breadcrumb{font-size:10px;gap:10px;padding-top:15px}.case-breadcrumb a{gap:7px}.case-breadcrumb>span{text-align:right;max-width:47%}.case-opening-grid{display:flex;flex-direction:column;gap:30px;margin-top:31px;align-items:stretch}.case-title-column .eyebrow{font-size:10px;margin-bottom:22px}.case-title-column h1{font-size:clamp(61px,16vw,96px);line-height:.96;max-width:100%}.case-subtitle{font-size:.43em;max-width:95%;margin-top:17px;line-height:1.15}.case-introduction{font-size:18px;margin-top:25px;line-height:1.6;max-width:none}.case-role{font-size:13px;margin-top:20px}.hero-figure .case-image{aspect-ratio:1.16;clip-path:polygon(22px 0,100% 0,100% 100%,0 100%,0 22px)}.project-proof-gin .hero-figure .case-image{aspect-ratio:1.05}.case-figure figcaption{font-size:11px;padding-top:12px;gap:10px}.case-figure figcaption .mono{font-size:9px}.case-figure figcaption>span:last-child{max-width:72%}.zoom-label{font-size:9px;bottom:12px;right:12px;padding:5px 7px;opacity:1}.zoom-label>span{font-size:20px}.case-facts{grid-template-columns:1fr 1fr;gap:21px 25px;margin-top:29px;padding-top:22px}.case-facts dd{font-size:14px;line-height:1.5}.case-facts dt{font-size:10px;margin-bottom:8px}.case-credit{font-size:10px;line-height:1.8;margin-top:22px}.case-chapters{padding-top:16px;padding-bottom:16px;gap:14px;margin-top:0}.case-chapters>.mono{display:none}.case-chapters>div{justify-content:space-between;gap:18px;margin:0;width:100%}.case-chapters a{font-size:12px;padding:5px 0}.story-row{display:block;padding-top:42px;padding-bottom:42px;scroll-margin-top:95px}.story-label .mono{font-size:10px}.story-label h2{font-size:35px;margin-top:12px}.story-copy{margin-top:23px}.story-copy p{font-size:18px;line-height:1.7}.story-lead p{font-size:23px;line-height:1.45}.process-spread{display:flex;flex-direction:column-reverse;align-items:stretch;gap:29px;padding-top:38px;padding-bottom:40px;scroll-margin-top:95px}.process-copy .story-copy{margin-top:23px}.detail-figure .case-image{aspect-ratio:1.2}.result-row{padding-bottom:50px}.next-project{padding-top:21px;padding-bottom:34px}.next-top{font-size:10px;padding-bottom:19px}.next-link{grid-template-columns:1fr;gap:25px;padding-top:27px}.next-link h2{font-size:45px;line-height:1.06;max-width:420px}.next-link>div>p:first-child{font-size:10px;margin-bottom:19px}.next-credit{font-size:10px;margin-top:19px}.next-image{aspect-ratio:1.9;max-width:450px}.case-page .contact-grid h2,.work-page .contact-grid h2{font-size:70px}.case-page .footer-wordmark,.work-page .footer-wordmark{margin-top:40px}.case-page .contact-grid,.work-page .contact-grid{margin-top:30px}.gin-story{display:block;padding-top:35px;padding-bottom:38px;margin-top:0}.gin-story .story-label{padding-top:0;margin-bottom:26px}.gin-story .story-label h2{font-size:43px}.gin-full .case-image{aspect-ratio:.95}.gin-pair{display:block;padding-top:35px;padding-bottom:50px}.gin-pair .case-image{aspect-ratio:1.04}.gin-detail-column{padding-top:36px}.gin-detail-column h2{font-size:48px;margin-top:20px}.gin-caption{font-size:17px;line-height:1.65;margin-top:20px;margin-bottom:28px}.collection-opening{padding-top:21px}.collection-opening .label-rule>p:last-child{font-size:9px;text-align:right;max-width:135px}.collection-heading{display:block;padding-top:31px;padding-bottom:30px}.collection-heading h1{font-size:23vw;max-width:650px;line-height:.92}.collection-heading>div{margin-top:26px;padding-bottom:0;max-width:370px}.collection-heading>div>p:first-child{font-size:18px;line-height:1.5}.collection-intro-note{font-size:13px;margin-top:14px}.collection-controls{display:block;padding:12px 0}.filter-buttons{display:flex;justify-content:space-between;gap:8px}.filter-buttons button{font-size:12px;min-height:38px;white-space:nowrap}.filter-buttons sup{font-size:9px;padding-left:2px}.view-buttons{justify-content:flex-end;font-size:11px;margin-top:6px;gap:10px}.view-buttons button{min-height:28px}.collection-grid{display:block;padding-top:28px;padding-bottom:45px}.collection-item,.collection-item:nth-child(even){margin:0 0 36px}.collection-item:last-child{margin-bottom:0}.collection-image,.collection-item:first-child .collection-image{aspect-ratio:1.24}.collection-meta{font-size:9px;margin-top:15px;gap:15px}.collection-item h2{font-size:28px;margin-top:10px}.collection-item h2 a>span{font-size:23px;opacity:1}.collection-deck{font-size:14px;margin-top:13px}.collection-attribution{font-size:12px;margin-top:11px}.collection-num{font-size:9px;left:13px;top:12px}.collection-open{font-size:25px;right:12px;bottom:11px}.index-credit{display:block;padding-top:22px;padding-bottom:38px}.index-credit>.mono{font-size:10px}.index-credit>p:last-child{font-size:14px;line-height:1.7;margin-top:15px}.list-view .collection-item{grid-template-columns:86px 1fr;gap:0 17px;padding:19px 0;margin:0}.list-view .collection-image,.list-view .collection-item:first-child .collection-image{width:86px;aspect-ratio:1.05}.list-view .collection-item h2{font-size:21px;margin-top:6px}.list-view .collection-item h2 a{gap:9px}.list-view .collection-item h2 a>span{font-size:18px}.list-view .collection-meta{display:block;font-size:9px}.list-view .collection-meta span{display:block;text-align:left;max-width:none}.list-view .collection-meta span+span{margin-top:3px}.list-view .collection-attribution{font-size:11px;margin-top:9px}.list-view .collection-open{font-size:16px;padding:0 4px}.image-dialog{max-width:calc(100vw - 16px);width:calc(100vw - 16px);height:calc(100svh - 16px);max-height:calc(100svh - 16px)}.viewer-bar{padding:12px 17px;min-height:55px}.viewer-stage{padding:10px;height:calc(100% - 140px)}.viewer-bottom{min-height:85px;padding:9px 12px;gap:10px;grid-template-columns:32px 1fr 32px}.viewer-bottom button{width:32px;height:44px;font-size:24px}.viewer-bottom p{font-size:13px}.viewer-bar .mono{font-size:10px}html[data-motion="off"] .feature-inner{min-height:0}html[data-motion="off"] .feature-visual{height:104vw;max-height:620px}.feature-view{display:inline-flex;font-size:13px;margin-top:18px}}
@media(max-width:360px){.filter-buttons button{font-size:11px}.filter-buttons{gap:5px}.case-title-column h1{font-size:16vw}.case-subtitle{font-size:.46em}.case-breadcrumb{font-size:9px}.collection-meta{font-size:6.5px}.collection-item h2{font-size:25px}.story-lead p{font-size:22px}}
@media(prefers-reduced-motion:reduce){.feature{height:auto;min-height:0}.feature-sticky{position:relative;top:0;height:auto;min-height:0}.feature-inner{min-height:650px}.feature-visual{height:560px}}
@media(prefers-reduced-motion:reduce) and (max-width:760px){.feature-inner{min-height:0}.feature-visual{height:104vw;max-height:620px}}
/* Root scroll-padding already clears the sticky masthead; do not add it twice. */
.story-row,.process-spread{scroll-margin-top:0}
