/* v08: actual evidence, restrained light, complete portfolio pages. */
::selection{background:#ff7a30;color:#090b0e}
html{scrollbar-color:#626976 #10141a}
:focus-visible{outline:2px solid #ff9b63;outline-offset:5px}
.section-heading h2{font-size:clamp(32px,3.7vw,50px);letter-spacing:-.025em;text-wrap:balance}
.section-heading p{line-height:1.85;max-width:34ch}
.gallery-stage .gallery-slide .image-view{aspect-ratio:16/9;display:grid;place-items:center}
.gallery-stage .gallery-slide .image-view img{height:100%;max-height:100%;width:100%;object-fit:contain}
.gallery-stage .gallery-slide figcaption{min-height:66px}
.gallery-controls button:active{background:#ff7a302b}
.gallery-thumbnails{scrollbar-color:#626976 #10141a}
.gallery-thumbnails button[aria-pressed=true]{background:#ff7a300b}
.gallery-count{font-variant-numeric:tabular-nums}
.event-records{display:grid;grid-template-columns:1fr 1.22fr 1fr 1.45fr;gap:24px;align-items:end;margin-block:0 52px}
.event-records.wrap{margin-top:32px}
.event-record{min-width:0;margin:0}
.event-proof{height:clamp(240px,25vw,340px);display:flex;align-items:center;justify-content:center;background:#090b0e;border:1px solid #343b45;overflow:hidden}
.event-proof img{height:100%;width:100%;object-fit:contain}
.event-proof>span{position:absolute;right:12px;bottom:12px;padding:8px 12px;color:#fff;background:#090b0ee8;min-height:44px;display:flex;align-items:center}
.event-record figcaption{font-size:13px;line-height:1.7;color:#b7bec8;padding-top:13px;min-height:50px}
.strategy-tabs{position:relative;display:flex;flex-wrap:nowrap;gap:8px;border-bottom:1px solid #343b45;padding-bottom:9px;margin-bottom:34px}
.strategy-tabs button{flex:1;min-height:52px;padding:12px 16px;border-color:transparent;font-size:15px}
.strategy-tabs button[aria-selected=true]{color:#f4f5f6;background:#ff7a3014;border-color:#ff7a3050}
.strategy-indicator{position:absolute;left:0;top:0;width:1px;height:2px;background:#ff7a30;pointer-events:none;transform-origin:0 0;transition:transform 240ms cubic-bezier(.16,1,.3,1)}
.strategy-panel{gap:32px 48px;align-items:start}
.strategy-panel h3{font-size:clamp(26px,2.5vw,34px);margin-bottom:18px}
.strategy-panel>div>p{max-width:36em;line-height:1.85}
.strategy-evidence{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:24px;min-width:0}
.strategy-evidence figure{min-width:0;margin:0}
.document-proof{position:relative;display:block;border:1px solid #343b45;background:#fff;overflow:hidden;text-decoration:none}
.document-image-wrap{position:relative;overflow:hidden}
.document-proof .document-image-wrap img,.viewer.is-document .document-image-wrap img{display:block;width:calc(100% / (1 - var(--doc-left)));max-width:none;height:auto;max-height:none;transform:translateX(calc(-100% * var(--doc-left)))}
.document-open{position:absolute;bottom:12px;right:12px;background:#10141aef;color:#f4f5f6;font-size:12px;padding:11px 14px;min-height:44px;display:flex;align-items:center}
.strategy-evidence figcaption{font-size:13px;color:#b7bec8;line-height:1.8;padding-top:12px}
.viewer.is-document .viewer-original,.viewer.is-document #viewer-reading{display:none}
.viewer.is-document .viewer-body{padding-top:18px}
.shiny-text{color:#d2d6dc;animation-play-state:paused}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 .shiny-text{background:linear-gradient(120deg,#d2d6dc 38%,#fff 48%,#fff 52%,#d2d6dc 62%);background-size:200% 100%;background-position:150% center;background-clip:text;-webkit-background-clip:text;color:transparent;animation:word-shine 8s linear infinite;animation-delay:var(--shine-offset,0s);animation-play-state:paused}
 .hero h1 .hero-name.shiny-text{color:transparent}
 .shiny-text.is-shining{animation-play-state:running}
}
@keyframes word-shine{0%{background-position:150% center}25%,100%{background-position:-50% center}}
.glare-surface{isolation:isolate;position:relative;overflow:hidden}
.glare-surface::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 36%,#ffffff24 49%,transparent 63%);transform:translateX(-150%);z-index:2}
@media(hover:hover) and (pointer:fine){
 .glare-surface:hover::after,.glare-surface:focus-visible::after{animation:surface-glare 650ms cubic-bezier(.16,1,.3,1) both}
}
@keyframes surface-glare{to{transform:translateX(150%)}}
.method::before,.account-phone::before,.work::before{background:radial-gradient(330px circle at var(--light-x,50%) var(--light-y,40%),#ff7a3017,transparent 80%)}
.document-proof:active,.event-proof:active{border-color:#ff9b63}
.proof-error{background:#151a22;color:#f4f5f6;padding:22px;font-size:14px;line-height:1.7}
.proof-error[hidden]{display:none}
.is-still .shiny-text{color:#f4f5f6;background:none;animation:none!important}
.is-still .glare-surface::after{display:none}
.is-still .strategy-indicator{transition:none}
@media(max-width:767px){
 .event-records{grid-template-columns:1fr 1fr;gap:20px 14px;margin-bottom:36px}
 .event-record:last-child{grid-column:auto}
 .event-proof{height:auto;aspect-ratio:3/4}
 .event-record:last-child .event-proof{aspect-ratio:3/4}
 .event-record figcaption{font-size:12px;min-height:0}
 .strategy-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .strategy-tabs button{padding:10px 8px;font-size:14px}
 .strategy-evidence{grid-template-columns:1fr;gap:24px}
 .strategy-panel{gap:24px}
 .gallery-stage .gallery-slide figcaption{min-height:78px}
 .gallery-stage .gallery-slide .image-view>span{min-height:44px;display:flex;align-items:center}
 .viewer.is-document{width:96vw;max-width:96vw}
}
@media(prefers-reduced-motion:reduce){.shiny-text{color:#f4f5f6;background:none;animation:none!important}.glare-surface::after{display:none}.strategy-indicator{transition:none}}

html:not(.js) .strategy-panel[hidden]{display:grid}
html:not(.js) .strategy-tabs{display:none}

.is-page-hidden .glare-surface::after{animation:none;transform:translateX(-150%)}
.is-page-hidden .strategy-indicator{transition:none}

.is-still .hero h1 .hero-name.shiny-text{color:var(--fg)}
@media(prefers-reduced-motion:reduce){.hero h1 .hero-name.shiny-text{color:var(--fg)}}
