/* AdCorner test pass: optional work discovery and reversible result story. */
.minimal-service{transition:box-shadow .3s ease,filter .3s ease;transform:translateY(calc(var(--card-shift,0px) + var(--hover-lift,0px)))}
.service-example{margin:25px 0 0;position:relative;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 9px 22px #181b1810;transform:translateZ(0);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.service-example img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.service-example figcaption{position:absolute;bottom:0;right:0;font-size:7px;letter-spacing:.06em;padding:3px 6px;background:#fff;color:#566250}
.minimal-card-top{margin-bottom:26px}.minimal-service h3{margin-bottom:18px}
@media(hover:hover) and (pointer:fine){.minimal-service:hover{--hover-lift:-7px;box-shadow:0 18px 34px #1820181a}.minimal-service:hover .service-example{transform:scale(1.025)}.minimal-service:hover .minimal-service-link>span:last-child{background:#181b18;color:#fff;transform:rotate(45deg)}}
.work-teaser{padding-top:50px;padding-bottom:50px;grid-template-columns:1fr 2fr;gap:50px;z-index:3;background:var(--paper,#fafbf8)}
.work-teaser h2{font-size:27px;letter-spacing:-.045em;margin:12px 0 8px}.work-teaser p{font-size:13px;color:#737a6f}
.work-names{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px}
.format-item{position:relative;min-width:0}
.format-open{font:600 clamp(17px,1.7vw,24px) Manrope,Arial,sans-serif;letter-spacing:-.045em;background:none;border:0;border-bottom:1px solid #cfd5ca;width:100%;padding:18px 0;display:flex;justify-content:space-between;gap:12px;color:#181b18;text-align:left}
.format-open>span{font-size:17px;transition:transform .25s}.format-item:hover .format-open>span{transform:translate(3px,-3px)}
.format-peek{position:absolute;bottom:100%;left:50%;width:240px;padding-bottom:14px;transform:translate(-50%,8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .22s,visibility .18s;z-index:20}
.peek-open{display:block;width:100%;background:#fff;border:1px solid #dce1d7;border-radius:10px;padding:10px;box-shadow:0 15px 40px #0002;color:#181b18;text-align:left}
.peek-open img{width:100%;height:170px;object-fit:contain;display:block;background:#f4f5f1;border-radius:4px}.peek-open>span{font-size:11px;display:flex;justify-content:space-between;margin:11px 3px 2px}
@media(hover:hover) and (pointer:fine){.format-item:hover .format-peek,.format-item:focus-within .format-peek{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.format-item .format-peek{transition-delay:.15s}.format-item:hover .format-peek{transition-delay:0s}}
.format-dialog{width:min(1050px,94vw);max-width:94vw;height:min(850px,92dvh);max-height:92dvh;border:0;padding:25px 30px;background:#fafbf8;border-radius:15px;color:#181b18;box-shadow:0 20px 80px #0004;overflow:hidden;margin:auto}
.format-dialog[open]{display:flex;flex-direction:column;gap:16px}.format-dialog::backdrop{background:#101610c9;backdrop-filter:blur(9px)}
.format-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.format-dialog-top .eyebrow{font-size:9px;margin-bottom:5px}.format-dialog h2{font-size:26px;letter-spacing:-.04em;margin:0}
.format-close{width:42px;height:42px;border-radius:50%;border:1px solid #cbd2c4;background:transparent;font:28px Arial;flex-shrink:0}
.format-media{min-height:0;flex:1;display:flex;justify-content:center;align-items:center;background:#edf0e7;border-radius:9px;overflow:hidden;position:relative;padding:14px;touch-action:pan-y}
.format-media img,.format-media video{width:100%;height:100%;object-fit:contain;display:block;min-height:0;max-height:100%}
.format-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}.format-caption{font-size:14px;line-height:1.45;margin:0 0 5px}.format-credit{font-size:10px;color:#66715f;display:block;max-width:70ch;line-height:1.5}
.format-controls{display:flex;align-items:center;gap:12px;flex-shrink:0}.format-controls button{border:1px solid #b7c1af;background:transparent;border-radius:50%;width:42px;height:42px;font-size:20px}.format-controls button:hover,.format-close:hover{background:#d4ff48}.format-count{min-width:35px;font-size:11px;text-align:center}
.results-reel{background:#f1f3ed;position:relative;padding:50px max(5.5vw,24px)}
.results-pin{max-width:1480px;margin:auto}.results-heading{padding-bottom:25px}.results-heading h2{font-size:clamp(35px,4vw,58px);line-height:1.08;letter-spacing:-.055em;margin:18px 0}.results-heading h2 em{font-style:normal;color:#737b6c}.example-disclosure{font-size:11px;line-height:1.6;color:#5b6653;max-width:30ch}.results-skip{font-size:11px;margin-top:20px;display:inline-block;border-bottom:1px solid #a8b29f;padding-bottom:5px}
.results-stage{display:grid;gap:20px}.impact-card{position:relative;border-radius:20px;padding:35px;min-height:310px;overflow:hidden;box-shadow:0 15px 45px #1720150d;color:#181b18}
.impact-lime{background:#d4ff48}.impact-blue{background:#dceafa}.impact-sage{background:#dbe4ce}.impact-dark{background:#202820;color:#eff4e9}
.impact-top{display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:.1em;opacity:.8}.impact-card strong{display:block;font:500 clamp(75px,8.8vw,136px)/1 Manrope,sans-serif;letter-spacing:-.075em;margin:40px 0 22px}.impact-card h3{font-size:clamp(23px,2.6vw,37px);letter-spacing:-.045em;line-height:1.15;max-width:18ch;margin-bottom:10px}.impact-card p{font-size:14px;opacity:.75}.impact-arrow{position:absolute;right:30px;bottom:25px;font:40px Manrope;opacity:.75}
.results-track{display:none}
.results-reel.is-enhanced{height:350svh;padding-top:0;padding-bottom:0}
.is-enhanced .results-pin{position:sticky;top:var(--header-h,88px);height:calc(100svh - var(--header-h,88px));display:grid;grid-template-columns:.85fr 1.45fr;gap:25px 55px;align-items:center;padding:40px 0 28px;overflow:clip}
.is-enhanced .results-heading{padding:0}.is-enhanced .results-stage{position:relative;height:min(490px,60svh);perspective:1100px;margin:0 14px 0 0}
.is-enhanced .impact-card{position:absolute;inset:0;min-height:0;transform-origin:50% 80%;will-change:transform;backface-visibility:hidden}
.is-enhanced .results-track{display:flex;align-items:center;justify-content:space-between;gap:20px;grid-column:1/-1;align-self:end;font-size:9px;letter-spacing:.1em}
.results-track i{height:2px;background:#cbd4c2;flex:1;max-width:300px;overflow:hidden}.results-track b{display:block;width:100%;height:100%;background:#495a38;transform:scaleX(var(--results-progress,0));transform-origin:left}
@media(max-width:1000px){.work-teaser{grid-template-columns:1fr}.work-teaser-label{display:block}.work-names{gap:0 25px}.is-enhanced .results-pin{gap:25px;grid-template-columns:.8fr 1.2fr}.impact-card{padding:26px}}
@media(max-width:700px){.minimal-service{transform:none!important}.work-teaser{padding-top:35px;padding-bottom:35px;gap:20px}.work-teaser h2{font-size:25px}.work-names{grid-template-columns:1fr 1fr;gap:0 25px}.format-open{padding:15px 0;font-size:18px}.format-peek{display:none}.format-dialog{width:96vw;max-width:96vw;height:89dvh;max-height:89dvh;padding:17px 14px;gap:12px!important}.format-dialog h2{font-size:23px}.format-dialog-bottom{display:block}.format-controls{justify-content:space-between;margin-top:12px}.format-media{padding:6px}.format-credit{font-size:9px}.results-reel{padding-left:24px;padding-right:24px}.results-reel.is-enhanced{height:340svh}.is-enhanced .results-pin{top:80px;height:calc(100svh - 80px);grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:20px;padding:25px 0 20px}.results-heading .eyebrow{font-size:8px}.results-heading h2{font-size:34px;margin:9px 0}.results-heading h2 br{display:none}.example-disclosure{font-size:9px;max-width:none}.example-disclosure br{display:none}.results-skip{position:absolute;right:0;top:23px;font-size:9px;margin:0}.is-enhanced .results-stage{height:100%;max-height:420px;min-height:230px;margin:0 8px 0 0}.impact-card{padding:24px;border-radius:15px}.impact-card strong{font-size:clamp(65px,19vw,95px);margin:28px 0 20px}.impact-card h3{font-size:26px}.impact-card p{font-size:12px}.impact-top{font-size:8px}.impact-arrow{font-size:30px;bottom:20px;right:20px}.results-track{font-size:8px!important;gap:14px!important}}
@media(prefers-reduced-motion:reduce){.minimal-service,.service-example{transition:none!important;transform:none!important}.results-skip{display:none}.results-stage{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
@media(max-height:650px) and (min-width:701px){.is-enhanced .results-stage{height:72%;}.impact-card strong{font-size:80px;margin:20px 0}.impact-card{padding:20px}.impact-card h3{font-size:25px}}

/* Compact refinement: one OG-style lift; no independent image or arrow motion. */
.minimal-service{transform:none;transition:transform .25s ease;}
.service-example{transform:none;transition:none}
.minimal-service-link>span:last-child,.minimal-service-link:hover>span:last-child,.minimal-service:hover .minimal-service-link>span:last-child{background:transparent;color:inherit;transform:none;transition:none}
@media(hover:hover) and (pointer:fine){.minimal-service:hover{transform:translateY(-5px);box-shadow:none}.minimal-service:hover .service-example{transform:none}}
.results-reel.is-enhanced{height:240svh}
.is-enhanced .results-pin{height:510px;max-height:calc(100svh - var(--header-h,88px));grid-template-rows:1fr auto;gap:20px 55px;padding:45px 0 30px}
.is-enhanced .results-stage{height:340px}
.impact-card strong{font-size:clamp(76px,8vw,112px);margin:26px 0 16px}
.impact-card h3{font-size:clamp(24px,2.3vw,32px);margin-bottom:8px}
.results-heading h2{font-size:clamp(32px,3.5vw,50px)}
@media(max-width:700px){.results-reel.is-enhanced{height:240svh}.is-enhanced .results-pin{height:510px;max-height:none;grid-template-rows:auto 280px auto;gap:18px;padding:28px 0 24px}.is-enhanced .results-stage{height:280px;min-height:0}.results-heading h2{font-size:30px;max-width:18ch}.results-heading h2 br{display:block}.results-skip{position:static;margin-top:5px}.impact-card strong{font-size:76px;margin:25px 0 16px}.impact-card h3{font-size:25px}}
@media(max-height:650px) and (min-width:701px){.is-enhanced .results-pin{height:440px;padding:25px 0 20px}.is-enhanced .results-stage{height:290px}.impact-card strong{font-size:80px;margin:20px 0 16px}}
@media(min-width:701px){.is-enhanced .results-pin{height:calc(100svh - var(--header-h,88px));max-height:none;grid-template-rows:auto auto;align-content:center;row-gap:35px;padding:35px 0}.results-reel.is-enhanced{height:210svh}}
@media(max-width:700px){.is-enhanced .results-pin{height:535px;row-gap:30px}.is-enhanced .results-track{position:relative;z-index:5}}

/* Content-sized results section: no full-screen spacer above or below. */
.results-reel.is-enhanced{height:auto;padding-top:36px;padding-bottom:36px;overflow:clip}
.is-enhanced .results-pin{position:relative;top:auto;height:auto;max-height:none;padding:0;grid-template-rows:auto auto;align-content:start;row-gap:40px;overflow:visible}
.is-enhanced .results-stage{height:340px}
@media(max-width:700px){.results-reel.is-enhanced{height:auto;padding-top:28px;padding-bottom:28px}.is-enhanced .results-pin{height:auto;top:auto;padding:0;grid-template-rows:auto 280px auto;row-gap:32px}.is-enhanced .results-stage{height:280px}}

/* Pause the downstream page as a unit: the following section stays close to the cards. */
.results-scroll-shell.is-pinned{position:relative;padding-bottom:110svh}
.results-scroll-shell.is-pinned>.results-scroll-content{position:sticky;top:var(--header-h,88px);display:flow-root}
@media(max-width:700px){.results-scroll-shell.is-pinned{padding-bottom:130svh}.results-scroll-shell.is-pinned>.results-scroll-content{top:80px}}

.results-scroll-shell.is-pinned{padding-bottom:0}
.results-scroll-shell.is-pinned::after{content:"";display:block;height:110svh}
@media(max-width:700px){.results-scroll-shell.is-pinned::after{height:130svh}}

/* Closing a gallery dismisses its hover preview until a fresh interaction. */
.format-item.peek-dismissed .format-peek{opacity:0;visibility:hidden;pointer-events:none;transition:none}

/* Directional crossfade for both buttons and touch gestures. */
.format-media .format-slide{position:absolute;inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);object-fit:contain;will-change:transform,opacity;touch-action:pan-y pinch-zoom}
@media(max-width:700px){.format-media .format-slide{inset:6px;width:calc(100% - 12px);height:calc(100% - 12px)}}
@media(prefers-reduced-motion:reduce){.format-media .format-slide{will-change:auto}}

/* Touch surface isolates swipe/pinch from browser and native video gestures. */
.format-media{touch-action:none;overflow:hidden}
.format-media .format-slide{touch-action:none}
.format-touch-surface{position:absolute;inset:0;z-index:3;touch-action:none;user-select:none;-webkit-user-select:none}
.format-touch-surface.is-video{bottom:70px}
.format-zoom-reset{display:block;margin:8px auto;padding:7px 14px;border:1px solid #dce1d7;border-radius:20px;background:#fff;color:#181b18;font-size:12px}
.format-zoom-reset[hidden]{display:none}
@media(hover:hover) and (pointer:fine){.format-touch-surface{pointer-events:none}}
.format-media-status{align-self:center;background:transparent;border:0;padding:3px 8px;font:inherit;font-size:12px;color:#555;cursor:pointer}.format-media-status[hidden]{display:none}

/* Loading feedback overlays the stage without shifting its height. */
.format-media-status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;background:#fafbf8ed;border-radius:20px;padding:8px 14px;box-shadow:0 2px 12px #0001}
