@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500;12..96,600;12..96,700;12..96,800&display=swap');

/* The art remains saturated; the portfolio gives it a quiet, editorial frame. */
:root{--bg:#121318;--surface:#1a1c23;--surface2:#24262e;--text:#f5f4f0;--muted:#b9bbc3;--line:#35373f;--blue:#e8c879;--yellow:#f2ce73;--display:'Bricolage Grotesque','Manrope',sans-serif}
body{background:var(--bg);color:var(--text)}
h1,h2,h3{font-family:var(--display);font-optical-sizing:auto;letter-spacing:-.025em;font-weight:600}
h2{font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.08}
h3{letter-spacing:-.02em}
.site-header{background:#121318f2;border-color:var(--line);backdrop-filter:blur(12px)}
.monogram{font-family:var(--display);color:var(--text)}
.contact-link{border-color:#73747b;border-radius:5px}
.eyebrow{color:#d8c498;letter-spacing:.075em;font-size:.8125rem;font-weight:500}
.small-rule{background:#d8c498;width:22px}
.hero{gap:42px;padding-block:48px 40px}
.hero h1{font-family:var(--display);font-size:clamp(3.8rem,6.6vw,6rem);font-weight:650;line-height:1.02;letter-spacing:-.035em;margin:24px 0}
.hero h1>span,.hero h1 em{display:block}.hero h1 em{color:var(--text)}
.hero-description{color:#e2d6b7;font-size:1.1rem}.hero-role{max-width:460px;line-height:1.75}
.hero-art{background:radial-gradient(ellipse at 50% 55%,#352941aa,transparent 69%)}
.hero-phone{box-shadow:0 24px 40px #0006;border-color:#39363f}
.watch-button{background:#1d1e25ed;border-color:#858087;border-radius:5px;box-shadow:none}
.project-scope{position:relative}.scope-label{color:#a9abb3}
.project-scope .hero-facts{gap:22px 24px}.project-scope .hero-facts strong{color:var(--text);font-family:var(--display);font-weight:600;font-size:2.1rem}
.project-scope .hero-facts span{color:var(--muted);font-size:.8rem}
.project-scope .hero-facts>div{position:relative}
.project-scope .hero-facts .scope-bubbles{display:flex;gap:2px;margin-top:7px;max-width:none;position:absolute;left:72px;top:1px}
.scope-bubbles img{width:25px;height:30px;object-fit:contain}
.art-caption{color:#a9abb3}
.activity-preview{grid-template-columns:minmax(0,1fr) 370px;gap:32px;margin-bottom:35px}
.activity-records{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:none;padding:22px 0}
.activity-records .activity-preview-label strong{font-family:var(--display);font-size:1.3rem;color:var(--text)}
.activity-records .activity-preview-label>span,.mini-label,.mini-key{color:#aeb0b9}
.mini-key{gap:8px 16px}.activity-records .mini-log{gap:10px}
.mini-mark{opacity:.65;border-radius:1px}.mini-mark:hover,.mini-mark:focus-visible{opacity:1}
.evolution-teaser{background:#202028;border:0;border-radius:6px;padding:22px;gap:20px;align-items:center}
.evolution-teaser:hover{background:#2a2830}
.evolution-teaser-copy strong{font-family:var(--display);font-weight:600;font-size:1.5rem;color:var(--text)}
.evolution-kicker{color:#e8c879;letter-spacing:.07em}.evolution-teaser-copy>span:last-child{color:#b9bbc3}
.evolution-comparison{display:flex;flex:0 0 134px;gap:8px;align-items:center}
.evolution-comparison>span{display:flex;flex-direction:column;gap:7px;width:63px}
.evolution-comparison img{width:63px;height:128px;object-fit:cover;border-radius:3px}
.evolution-comparison>span:first-child img{object-position:50% 50%}.evolution-comparison small{font-size:.72rem;color:#d2d0d5;text-align:center}
.work-nav{border-color:var(--line);padding-block:18px}.work-nav a{color:#d3d3d8}
.section{padding-block:68px}.section-head{grid-template-columns:1.1fr .9fr;gap:58px;align-items:end;margin-bottom:38px}
.section-head>p{color:var(--muted);line-height:1.7}
#gameplay .section-head h2{font-size:clamp(2.2rem,4vw,3.5rem)}
.annotated-figure{border:0;border-radius:0;background:none;padding:0 30px}
.screen-explorer{gap:50px}.explorer-content{padding:20px 0}
.point-choices{gap:0 18px;border-top:1px solid var(--line)}
.point-choices button{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:14px 0;color:#bdc0c7;box-shadow:none}
.point-choices button[aria-pressed=true]{background:none;color:var(--yellow);border-color:var(--yellow);box-shadow:none}
.screen-explanation{border-color:var(--line)}.screen-explanation h3{font-size:1.75rem}
.evidence-link{color:var(--yellow);border-color:#706348;font-weight:500}
.evidence-link:hover{color:#fff0c7;border-color:#fff0c7}
.ability-section{margin-top:75px}.subhead{align-items:start;gap:40px}.subhead h3{font-family:var(--display);max-width:390px;font-size:2rem!important}.subhead p{max-width:510px;color:var(--muted)}
.ability-tabs{gap:20px;border-bottom:1px solid var(--line);margin-top:30px}
.ability-tabs button{border:0;border-radius:0;background:none;padding:10px 0 18px;border-bottom:2px solid transparent;gap:14px}
.ability-tabs button[aria-pressed=true]{border-color:var(--yellow);background:none}
.ability-tabs img{width:75px;height:82px}.ability-tabs small{font-size:.8125rem;color:#aaaeb8}
.selected-feature{background:none;border:0;border-radius:0;padding:30px 0 0;grid-template-columns:1.05fr .95fr;gap:65px;margin:0}
.ability-stage{position:relative;min-width:0;padding:12px 76px 0 0}
.ability-stage .ability-media{max-width:340px;margin-left:auto}
.ability-stage .selected-media video,.ability-stage .video-fallback{height:450px;max-height:450px}
.ability-portrait{position:absolute;width:190px;height:220px;object-fit:contain;left:-2px;bottom:18px;filter:drop-shadow(0 12px 10px #0004);pointer-events:none}
.ability-copy h3{font-size:3rem;margin:10px 0 18px}.ability-copy .eyebrow{color:#c9c0ac;letter-spacing:0;font-size:.9375rem}
.ability-copy>p:not(.eyebrow){line-height:1.75}.more-characters{border-color:var(--line)}
.feature-cases{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.feature-case{border:0;border-radius:0;background:none;display:flex;flex-direction:column;overflow:visible}
.case-art{aspect-ratio:1.14;overflow:hidden;border-radius:5px;background:#23252b;position:relative}
.case-art img{height:100%;width:100%;object-fit:cover;object-position:50% 29%;transition:transform .22s ease-out}
[data-case=leveling] .case-art img{object-position:50% 28%}
[data-case=gadgets] .case-art img{object-position:50% 80%}
[data-case=main-event] .case-art img{object-position:50% 13%}
.case-copy{padding:23px 0 0;position:relative;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.case-index{color:#9a9384;font-size:.75rem;letter-spacing:.05em;position:absolute;right:0;top:27px}
.case-copy h3{font-size:1.8rem;line-height:1.15;margin:0 28px 14px 0}
.case-copy .case-thesis{font-size:1rem!important;color:#e2d4b3;margin:0 0 10px;line-height:1.45}
.case-copy>p:not(.eyebrow){font-size:1rem!important;line-height:1.65;margin-bottom:20px}
.case-copy .evidence-link{margin-top:auto}.feature-case:hover .case-art img{transform:scale(1.015)}
#systems .section-head{grid-template-columns:1fr 1fr}#systems h2{font-size:2.7rem}
#production .section-head{max-width:100%;grid-template-columns:1fr 1fr}#production h2{font-size:2.7rem}
.leadership-grid{border-top:1px solid var(--line);gap:60px;padding:30px 0 45px}.leadership-grid h3{font-size:1.5rem;line-height:1.25;max-width:400px}.leadership-grid p{line-height:1.75}
.activity-section{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:30px 0 0}
.activity-heading h3{font-size:1.9rem}.activity-heading .eyebrow{color:#a9abb3}
.activity-legend{gap:8px}.activity-legend button{border-color:#44454d;background:none;border-radius:4px;color:#bfc0c7;font-size:.8125rem;min-height:38px}
.activity-legend button[aria-pressed=true]{border-color:#ddc27b;background:#2b281f;color:#f4d788}
.activity-band{grid-template-columns:165px minmax(0,1fr);padding-block:17px;gap:22px}
.band-marks{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}
.band-marks .activity-mark{width:28px;height:28px;min-width:28px;flex:0 0 28px;border-radius:2px;border:0;box-shadow:none;opacity:.65}
.activity-mark:hover,.activity-mark:focus-visible{opacity:1;outline:2px solid var(--yellow);outline-offset:2px}
.band-date,.activity-note{color:#b9bbc3}
.detail-timeline-marks .activity-mark{border:0;box-shadow:none;border-radius:2px;opacity:.28}
.detail-timeline-marks .activity-mark.is-related{opacity:.8;outline:1px solid #eee5d0;outline-offset:2px}
.detail-timeline-marks .activity-mark.is-source{opacity:1;outline:3px solid var(--yellow)}
.career-section h2{font-size:2.5rem}.career-section .section-head{margin-bottom:30px}
.career-card{background:#1b1d24;border-color:#41434b;border-radius:5px;box-shadow:none}
.career-card:hover,.career-card:focus-visible{background:#292b32;border-color:#d9c27f}
.career-milestone>.career-year{color:#babcc5}.career-history:before{background:#6c6860}.career-pin{border-color:#bab4a5;background:var(--bg)}.career-pin:after{background:#6c6860}
.career-card-project,.career-hint{color:#b9bbc3}.career-milestone:last-child .career-pin{background:var(--yellow);border-color:var(--yellow)}
footer{padding-top:40px;padding-bottom:24px}footer h2{font-size:2.5rem;margin:12px 0}.contact-context{margin:10px 0 0}footer .email{font-size:1.15rem;margin-top:12px;color:var(--yellow);border-color:#756544}.footer-bottom{margin-top:38px;padding-top:20px;color:#a9abb3}.credits{color:#90929b}
dialog,#evidence-dialog{background:#191b22;border-color:#55565e;border-radius:8px}#evidence-dialog .dialog-header{background:#191b22;border-color:#3b3d46}
.evidence-back,.copy-case-link{color:#d7d3c7}.close-evidence,.close-button{background:#30323a}
.excerpt{background:#f0f0ec;color:#252830;border-radius:4px}.excerpt p,.excerpt li{color:#3d414b}.excerpt .source-kind,.excerpt .source-label{color:#656872}.excerpt .full-spec summary{color:#3d414b}
.roster-gallery button{background:var(--surface);border-color:var(--line)}
.roster-gallery button:hover,.roster-gallery button:focus-visible{background:var(--surface2);border-color:var(--yellow)}
.roster-gallery span{color:var(--muted)}
.record-context{background:var(--surface2);border-left-color:var(--yellow)}
.record-context strong{color:var(--text)}
.case-conclusion{border-color:var(--yellow)}.case-conclusion h4{color:#eee7d7}
.system-steps button,.media-switch button,.career-chapters button{background:#282a32;border-color:#52535c;color:#d1d2d8;border-radius:4px}
.system-steps button[aria-pressed=true],.media-switch button[aria-pressed=true]{border-color:var(--yellow);color:var(--yellow)}
.evolution-rail:before{background:#6c6860}.evolution-rail button{color:#bfc0c7}.evolution-rail button[aria-selected=true]{color:var(--yellow)}
.evolution-overview,.evolution-playback,.timeline-current,.timeline-key,.source-kind,.media-footnote{color:#b3b5bf}
.evolution-dot{border-color:#b5b0a3}.evolution-source{border-color:var(--line)}
.inline-motion .motion-toggle{position:absolute;right:8px;bottom:8px;z-index:5;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #aaa59b;border-radius:5px;background:#191b22e8;color:#fff;font-size:18px;display:grid;place-items:center;box-shadow:0 2px 8px #0004}
.motion-toggle:hover{background:#36342c;border-color:var(--yellow)}
.evolution-playback .evolution-toggle{margin-left:auto;min-height:44px;min-width:72px;padding:8px 12px;border-radius:4px;border-color:#6d6551;color:#dfcc9d}
.record-field,.record-list-status{color:#b9bbc3}.record-field input,.record-field select{background:#24262d;border-color:#53555f;color:var(--text)}
.touch-record{background:#20222a;border-color:#40424c}.touch-record strong{color:var(--text)}.record-date{color:#b5b7c0}.record-open{color:var(--yellow)}
@media(max-width:1000px) and (min-width:701px){
 .hero{gap:24px}.hero h1{font-size:4.1rem}.scope-bubbles{display:none!important}
 .activity-preview{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.evolution-teaser{padding:18px;gap:12px}.evolution-comparison{flex-basis:108px;gap:6px}.evolution-comparison>span,.evolution-comparison img{width:51px}.evolution-comparison img{height:114px}
 .ability-stage{padding-right:25px}.ability-portrait{width:145px;left:-10px}.selected-feature{gap:32px}.feature-cases{gap:20px}.case-copy h3{font-size:1.5rem}
}
@media(max-width:700px){
 .hero{padding-top:28px;padding-bottom:28px;gap:24px}.hero h1{font-size:clamp(2.8rem,10.5vw,4.2rem);letter-spacing:-.025em;margin:18px 0;line-height:1.06}.hero h1>span,.hero h1 em{display:block}
 .hero .eyebrow{font-size:.73rem;letter-spacing:.065em}.hero-description{font-size:1rem}.hero-role{font-size:1rem;line-height:1.65}
 .project-scope .hero-facts{gap:16px 10px}.project-scope .hero-facts strong{font-size:1.85rem}.project-scope .hero-facts span{font-size:.75rem}.project-scope .hero-facts .scope-bubbles{display:none}
 .hero-art{height:260px;min-height:260px}.hero-phone{width:122px}.hero-art .game-logo{width:108px}.hero-character{width:110px}.hero-captain{width:112px}.hero-gizmo{left:calc(50% - 138px)}.hero-captain{right:calc(50% - 138px)}
 .activity-preview{grid-template-columns:1fr;gap:16px;margin-bottom:25px}.activity-records{padding:18px 0}.activity-records .activity-preview-label strong{font-size:1.15rem}.overview-mosaic i{opacity:.72}
 .evolution-teaser{padding:18px;min-height:156px;gap:15px}.evolution-teaser-copy strong{font-size:1.4rem}.evolution-comparison{flex-basis:108px;gap:6px}.evolution-comparison>span,.evolution-comparison img{width:51px}.evolution-comparison img{height:108px}.evolution-teaser-copy>span:last-child{font-size:.8125rem}
 .work-nav{padding-block:8px}.work-nav a{font-size:.875rem}
 .section{padding-block:44px}.section-head,#systems .section-head,#production .section-head{grid-template-columns:1fr;gap:18px;margin-bottom:26px}
 #gameplay .section-head h2,#systems h2,#production h2,.career-section h2{font-size:2.2rem;line-height:1.1}.section-head h2{margin-top:13px}
 .screen-explorer{gap:18px}.annotated-figure{padding:0 22px}.explorer-content{padding:12px 0}.point-choices button{font-size:.875rem;min-height:52px}.screen-explanation h3{font-size:1.5rem}
 .ability-section{margin-top:44px}.subhead{display:block}.subhead h3{font-size:1.7rem!important}.subhead p{margin-top:12px}
 .ability-tabs{gap:8px;margin-top:18px}.ability-tabs button{display:flex;flex-direction:column;align-items:center;gap:5px;padding-bottom:14px;text-align:center}.ability-tabs img{width:66px;height:72px}.ability-tabs small{display:none}.ability-tabs span{font-size:.9375rem}
 .selected-feature{grid-template-columns:1fr;gap:22px;padding-top:20px}.ability-stage{padding:0 28px 0 25px;max-width:390px;margin:auto;width:100%}.ability-stage .ability-media{max-width:265px}.ability-stage .selected-media video,.ability-stage .video-fallback{height:360px;max-height:360px}.ability-portrait{width:125px;height:165px;left:-10px;bottom:18px}
 .ability-copy h3{font-size:2.2rem}.ability-copy>p:not(.eyebrow){font-size:1rem!important;line-height:1.7}.ability-copy .eyebrow{font-size:.875rem}
 .feature-cases{grid-template-columns:1fr;gap:35px}.case-art{aspect-ratio:1.18}.case-copy{padding-top:19px}.case-copy h3{font-size:1.75rem}.case-index{top:23px}.case-copy>p:not(.eyebrow){margin-bottom:14px}.case-copy .case-thesis{margin-bottom:8px}
 .leadership-grid{grid-template-columns:1fr;gap:30px;padding:25px 0 30px}.leadership-grid h3{font-size:1.5rem}.secondary-evidence{margin-left:0;margin-right:16px}
 .activity-section{padding:25px 0 0}.activity-heading{grid-template-columns:1fr;gap:15px}.activity-heading h3{font-size:1.7rem}
 .career-history:before{background:#6c6860}.career-section .section-head{margin-bottom:24px}.career-card-project{font-size:.8125rem}
 footer{padding-top:30px}footer h2{font-size:2rem}.footer-bottom{margin-top:28px;gap:12px 20px}.contact-context{font-size:.9375rem}
 .evidence-layout,.evolution-story{padding-inline:18px}.evolution-playback{gap:8px;align-items:center}.evolution-playback .evolution-toggle{min-width:44px}.evolution-toggle>span:last-child{display:none}.mobile-stage-label{max-width:50%}.evolution-playback>span:first-child{display:none}
 .evolution-rail-wrap{margin-bottom:16px}.evolution-description h3{font-size:1.5rem}.evidence-intro>h3{font-size:1.55rem}
}
/* Keep character art clear of captions, including two-line mobile captions. */
.ability-portrait{bottom:62px}
@media(max-width:700px){.evolution-playback .evolution-toggle{order:2;margin-left:auto}.mobile-stage-label{max-width:75%;text-align:left}}
@media(prefers-reduced-motion:reduce){.case-art img{transition:none}.feature-case:hover .case-art img{transform:none}.evolution-playback .evolution-toggle{display:none}}

/* The video surface is the playback control; no overlay buttons. */
.inline-motion[role=button]{cursor:pointer}
.inline-motion[role=button]:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
@media(max-width:700px){.mobile-stage-label{max-width:100%;margin-left:auto}}

/* Keep each clip and its supporting controls on one centered axis. */
.media-switch{justify-content:center}
.media-footnote{text-align:center}

#media-caption{text-align:center}
#media-caption:empty{display:none}

.leadership-links{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:flex-start}
.leadership-links .secondary-evidence{margin-left:0;margin-right:0}
@media(min-width:701px){.leadership-grid{row-gap:18px;align-items:stretch}.leadership-grid>article{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:18px}.leadership-grid>article>h3,.leadership-grid>article>p{margin:0}}

/* Full game screens retain their portrait composition and motion. */
.case-art.full-screen-media{height:420px;aspect-ratio:auto;background:none;display:flex;justify-content:center;overflow:visible}
.case-art.full-screen-media>.inline-motion,.case-art.full-screen-media>.still-stage{width:100%;height:100%;background:none}
.case-art.full-screen-media video,.case-art.full-screen-media img{width:100%;height:420px;max-height:420px;object-fit:contain;object-position:center;background:transparent}
.feature-case:hover .full-screen-media img{transform:none}
@media(max-width:700px){.case-art.full-screen-media{height:390px}.case-art.full-screen-media video,.case-art.full-screen-media img{height:390px;max-height:390px}}

/* Career surfaces follow the editorial palette; project art keeps its colors. */
.career-stop.career-card{background:#1b1d24;border-color:#41434b;border-radius:5px}
.career-stop.career-card:hover,.career-stop.career-card:focus-visible{background:#292b32;border-color:#d9c27f;outline-color:var(--yellow)}
.career-stop.career-card .career-card-project,.career-milestone>.career-year{color:#b9bbc3}
.career-milestone .career-card .career-card-media{background:#24262e}
.career-milestone .career-card .career-code-art{color:#d0d0d5;background:#24262e}
.career-milestone:has(.career-card:hover) .career-pin,.career-milestone:has(.career-card:focus-visible) .career-pin{background:var(--yellow)}

/* All video surfaces retain their still until a decoded frame is available. */
.video-stage{position:relative}
.video-stage>video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0}
.video-stage.has-frame>video{opacity:1}
#media-content>.video-stage{width:fit-content;max-width:100%;margin:auto}
#media-content .video-fallback{height:70dvh;max-height:70dvh;width:auto;max-width:100%;object-fit:contain}

/* Portrait evolution frame; only the original concept still is cropped. */
.evolution-screen .selected-media{width:min(100%,270px);height:auto;min-height:0;aspect-ratio:9/16;margin-inline:auto;background:#111218;border-color:#41434b}
.evolution-screen .selected-media>.still-stage,.evolution-screen .selected-media>.inline-motion{width:100%;height:100%;max-height:none}
.evolution-screen .video-fallback,.evolution-screen .still-stage>img{width:100%!important;height:100%;max-height:none;object-fit:contain}
.evolution-screen .still-stage>img[src*="museum-first-concept"]{object-fit:cover;object-position:center}
.evolution-screen .media-footnote{color:var(--muted);text-align:center}
@media(max-width:700px){.evolution-screen .selected-media{width:min(100%,270px,33.75dvh)}}

/* Shared presentation panels connect portrait footage to each case study. */
.feature-case .case-art.full-screen-media{height:460px;padding:20px;background:#1b1d24;border-radius:8px;box-sizing:border-box}
.feature-case .case-art.full-screen-media video,.feature-case .case-art.full-screen-media img{height:100%;max-height:100%;object-fit:contain}
.feature-case .case-copy{padding:18px 0 0}
.feature-case .case-copy h3{margin:0 0 14px}
@media(max-width:700px){.feature-case .case-art.full-screen-media{height:422px;padding:16px}.feature-case .case-copy{padding-top:16px}}

/* v32: art belongs to the copy column, never over the playable board. */
.selected-feature .ability-stage{padding:0;min-width:0}
.selected-feature .ability-media{margin:0 auto;max-width:340px}
.ability-heading{display:flex;align-items:center;gap:18px;margin:12px 0 20px}
.selected-feature .ability-portrait{position:static;display:block;width:100px;height:100px;object-fit:contain;flex:0 0 100px;margin:0}
.ability-heading h3{margin:0}
.excerpt-body{min-width:0;overflow-wrap:anywhere}
.excerpt-body pre{white-space:pre-wrap;overflow-wrap:anywhere}
.career-early{padding-top:35px;padding-bottom:55px;border-top:1px solid var(--line)}
.career-early .section-head{margin-bottom:20px;align-items:end}
.career-early .section-head h2{font-size:clamp(27px,3vw,38px);line-height:1.15}
.career-early .section-head p{max-width:420px}
.career-early .career-intro-links{margin-bottom:16px}
.record-search-link{font-size:13px;margin-bottom:18px;white-space:normal}
.activity-preview-top{display:flex;align-items:center;justify-content:space-between;gap:18px}
.activity-preview-top .record-search-link{margin:0;flex:none}
.stopped-directions{padding:28px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr;gap:45px;align-items:center}
.stopped-directions h3{font-size:22px;margin:0 0 12px}.stopped-directions p{margin:0}
.stopped-directions .leadership-links{display:flex;gap:18px;flex-wrap:wrap}
@media(max-width:700px){.selected-feature .ability-media{max-width:265px}.ability-heading{gap:14px}.selected-feature .ability-portrait{width:76px;height:76px;flex-basis:76px}.career-early{padding-top:25px;padding-bottom:36px}.career-early .section-head{gap:12px}.stopped-directions{grid-template-columns:1fr;gap:18px}.activity-preview-top{align-items:start}.activity-preview-top .record-search-link{display:none}}

/* Three leadership decisions share one aligned editorial structure. */
.leadership-grid.leadership-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding:30px 0 38px;border-block:1px solid var(--line)}
.leadership-three>article{display:grid;grid-row:auto;grid-template-rows:auto 1fr auto;row-gap:0;min-width:0;padding:0}
.leadership-three .leadership-label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--yellow);margin:0 0 14px}
.leadership-three h3{font-size:1.45rem;line-height:1.3;min-height:2.6em;margin:0 0 20px}
.leadership-three>article>p{margin:0;align-self:start}
.leadership-three .leadership-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:100px;margin-top:22px}
.leadership-three .evidence-link{font-size:.86rem;line-height:1.45;text-align:left;max-width:100%;white-space:normal}
@media(min-width:701px) and (max-width:1000px){.leadership-grid.leadership-three{grid-template-columns:1fr;gap:0;padding:0}.leadership-three>article{grid-template-columns:.85fr 1.15fr;grid-template-rows:auto auto;column-gap:32px;padding:28px 0}.leadership-three>article+article{border-top:1px solid var(--line)}.leadership-three .leadership-heading{grid-row:1/3}.leadership-three h3{min-height:0;margin:0}.leadership-three .leadership-links{grid-column:2;min-height:0}}
@media(max-width:700px){.leadership-grid.leadership-three{grid-template-columns:1fr;gap:0;padding:0}.leadership-three>article{padding:26px 0}.leadership-three>article+article{border-top:1px solid var(--line)}.leadership-three h3{min-height:0;margin-bottom:16px}.leadership-three .leadership-links{min-height:0;margin-top:16px}}

/* Keep every evolution stage on a single connected rail. */
.evolution-rail{grid-template-columns:repeat(var(--stage-count),minmax(100px,1fr));min-width:calc(var(--stage-count)*100px)}
.evolution-rail:before{left:calc(50%/var(--stage-count));right:calc(50%/var(--stage-count))}
.project-transition{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:42px;border-top:1px solid var(--line);padding:34px 0 26px}
.project-transition .eyebrow{margin:0 0 10px}.project-transition h2{font-size:clamp(28px,3vw,38px)}
.project-transition>p{max-width:480px;color:var(--muted);font-size:1rem}
@media(max-width:700px){.evolution-rail{grid-template-columns:repeat(var(--stage-count),minmax(0,1fr));min-width:0}.project-transition{grid-template-columns:1fr;gap:15px;padding:27px 0 22px}.project-transition .eyebrow{font-size:.7rem}}

/* v36: preserve the full board and bottom controls while removing empty headroom. */
.gameplay-screen-crop{position:relative;width:100%;aspect-ratio:496/1016;overflow:hidden;border-radius:6px;box-shadow:0 8px 25px #0004}
.gameplay-screen-crop>img{position:absolute;bottom:0;left:0;display:block;width:100%;height:auto;max-height:none}

/* v37: identity and career, followed by one continuous featured project. */
.portfolio-intro{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-block:60px 48px}
.portfolio-intro h1{font-size:clamp(40px,5.3vw,72px);line-height:1.06;letter-spacing:-.04em;margin:18px 0 0}
.intro-summary>p:first-child{font-size:clamp(20px,2vw,25px);line-height:1.5;color:var(--text);max-width:540px}
.intro-detail{font-size:1rem;margin-top:14px}
.intro-actions,.project-actions{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:24px}
.intro-actions .evidence-link,.project-actions .evidence-link{margin:0;min-height:44px;display:inline-flex;align-items:center}
.career-early{padding-top:30px;padding-bottom:44px}
.career-early .section-head{gap:45px;margin-bottom:18px}
.career-early .section-head h2{font-size:clamp(25px,2.7vw,34px)}
.career-early .career-intro-links{margin-bottom:12px}
.project-opening{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;border-top:1px solid var(--line);padding-block:48px 40px;scroll-margin-top:100px}
.project-opening h2{font-size:clamp(40px,4.8vw,64px);line-height:1.07;margin:17px 0 14px}
.project-role{color:#e2d6b7;font-size:1.1rem;margin-bottom:18px}
.project-summary{font-size:1rem;line-height:1.75;max-width:490px}
.project-opening .hero-art{min-height:550px;height:550px;width:100%;max-width:520px;margin:0 auto}
.project-opening .hero-phone{width:250px;border-radius:28px;border-width:7px}
.project-opening .game-logo{width:155px;top:0;right:8px}
.project-opening .hero-character{width:175px}
.project-opening .hero-gizmo{left:0;bottom:24px}
.project-opening .hero-captain{right:0;bottom:40px;width:180px}
.project-opening .project-scope{margin-top:28px;padding-top:20px}
.project-opening .hero-facts span{font-size:.875rem;max-width:150px}
.project-opening .hero-facts strong{font-size:2rem}
@media(max-width:1000px) and (min-width:701px){
 .portfolio-intro{gap:30px;padding-block:44px 36px}.portfolio-intro h1{max-width:360px}
 .project-opening{gap:30px}.project-opening .hero-art{height:470px;min-height:470px}.project-opening .hero-phone{width:205px}.project-opening .hero-character{width:135px}.project-opening .hero-captain{width:145px}.project-opening .game-logo{width:125px}
}
@media(max-width:700px){
 .portfolio-intro{grid-template-columns:1fr;gap:24px;padding-block:34px 30px}.portfolio-intro h1{font-size:clamp(36px,10.5vw,62px);margin-top:14px}.portfolio-intro .eyebrow{font-size:.75rem}
 .intro-summary>p:first-child{font-size:1.25rem;line-height:1.5}.intro-detail{margin-top:12px}.intro-actions{margin-top:18px;gap:10px 22px}
 .career-early{padding-top:28px;padding-bottom:32px}.career-early .section-head{gap:12px}
 .project-opening{grid-template-columns:1fr;gap:25px;padding-block:32px 26px}.project-opening h2{font-size:clamp(36px,10vw,48px)}.project-opening .eyebrow{font-size:.75rem}
 .project-opening .hero-art{height:330px;min-height:330px;max-width:345px}.project-opening .hero-phone{width:145px;border-width:5px;border-radius:19px}.project-opening .game-logo{width:107px;top:0;right:0}.project-opening .hero-character{width:120px}.project-opening .hero-gizmo{left:0;bottom:12px}.project-opening .hero-captain{width:123px;right:0;bottom:24px}
 .project-opening .hero-facts{gap:20px 12px}.project-opening .hero-facts span{font-size:.8125rem}.project-opening .hero-facts strong{font-size:1.85rem}
}
