/* Shared editorial system. */
.concept-modern{--bg:#171916;--surface:#22251f;--text:#eceee6;--muted:#b0b5a8;--line:#3c4236;--olive:#c4d3a3;--ink:#171916;--max:1680px;--gutter:clamp(22px,4vw,68px);background:var(--bg);color:var(--text)}
.concept-modern main{overflow:clip}
.concept-modern h1,.concept-modern h2,.concept-modern h3{text-wrap:balance}
.concept-modern .site-header{position:relative;top:auto;padding-block:25px;border:0;background:var(--bg);box-shadow:none;backdrop-filter:none;gap:24px}
.concept-modern .wordmark{font-weight:580;letter-spacing:-.055em;font-size:22px}
.concept-modern .wordmark-mark{display:none}
.concept-modern .site-header nav{gap:24px}
.concept-modern .site-header nav a{font-size:13px;padding-block:7px}
.concept-modern .site-header nav a::after{display:none}
.concept-modern .site-header nav a[aria-current]{text-decoration:underline;text-underline-offset:7px}
.concept-modern .concept-exit{position:absolute;top:88px;right:var(--gutter);font-size:11px;color:var(--muted);z-index:2;padding:4px 0;background:none;border:0;box-shadow:none}
.concept-modern .eyebrow{font-size:11px;font-weight:500;letter-spacing:.12em;color:var(--olive)}
.concept-modern .text-link{border:0;text-decoration:underline;text-underline-offset:7px;white-space:normal;display:inline-block}
.concept-modern .button{border:1px solid var(--line);border-radius:0;box-shadow:none;font-size:14px;min-height:48px}
.concept-modern a:focus-visible,.concept-modern button:focus-visible,.concept-modern select:focus-visible{outline:2px solid var(--olive);outline-offset:5px}
.editorial-intro{padding-top:70px;padding-bottom:55px}
.editorial-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-top:25px}
.editorial-heading h1{font-size:clamp(65px,8.8vw,142px);line-height:.89;letter-spacing:-.075em;font-weight:500}
.editorial-heading h1 span{color:var(--olive)}
.editorial-description{max-width:440px;padding-bottom:5px}
.editorial-description>p:first-child{font-size:clamp(21px,2vw,30px);line-height:1.25;color:var(--text);letter-spacing:-.03em;max-width:360px}
.editorial-description>p+p{margin-top:17px;font-size:15px;line-height:1.65}
.editorial-engine{display:flex;gap:13px;align-items:center;margin-top:27px}
.editorial-engine img{width:38px;height:38px}
.editorial-engine strong,.editorial-engine span{display:block}
.editorial-engine strong{font-size:14px;font-weight:500}
.editorial-engine span{font-size:11px;color:var(--muted);margin-top:3px}
.editorial-section-label{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:20px}
.editorial-section-label h2{font-size:13px;letter-spacing:0;font-weight:500}
.editorial-section-label>span{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 22px}
.editorial-image{position:relative;overflow:hidden;background:var(--surface)}
.editorial-image img{width:100%;aspect-ratio:1.55;object-fit:cover;transition:transform .6s cubic-bezier(.2,.65,.25,1)}
.editorial-grid a:hover .editorial-image img{transform:scale(1.025)}
.editorial-caption{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-top:17px}
.editorial-caption h2{font-size:clamp(23px,2vw,31px);font-weight:460;letter-spacing:-.04em;line-height:1.15}
.editorial-caption>span{font-size:11px;color:var(--muted)}
.editorial-grid article>a>p{font-size:13px;margin-top:8px;line-height:1.6;max-width:480px}
.editorial-links{display:flex;gap:35px;justify-content:flex-end;padding-top:35px}
.editorial-links a,.editorial-action{display:inline-block;font-size:13px;text-decoration:underline;text-underline-offset:7px;padding-block:10px}
.editorial-journal{padding-block:100px 90px}
.editorial-journal .editorial-image img{aspect-ratio:1.9}
.editorial-journal article>a{display:flex;height:100%;flex-direction:column;align-items:flex-start}
.editorial-journal .editorial-image{width:100%}
.editorial-journal .editorial-action{margin-top:auto;padding-top:22px}
.editorial-media-label{position:absolute;left:16px;bottom:16px;background:#171916e8;padding:6px 11px;font-size:11px;color:var(--text)}
.concept-modern .contact-strip{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;padding-block:65px 80px;border:0;background:var(--surface)}
.concept-modern .contact-strip h2{font-size:clamp(40px,5.2vw,80px);line-height:1;letter-spacing:-.065em;margin-block:16px}
.concept-modern .contact-strip .button{justify-self:start;background:var(--olive);color:var(--ink);border-color:var(--olive);min-width:190px}
.concept-modern .contact-strip p:last-child{font-size:13px}
.concept-modern .site-footer{padding-block:30px 40px;border:0;gap:24px}
.concept-modern .site-footer .wordmark{font-size:18px}
.concept-modern .site-footer>div{font-size:12px;gap:21px}
.concept-modern .page-intro,.concept-modern .library-intro,.concept-modern .updates-intro,.concept-modern .study-intro{padding-top:75px;padding-bottom:45px;border:0}
.concept-modern .page-intro h1,.concept-modern .library-intro h1,.concept-modern .updates-intro h1,.concept-modern .study-intro h1,.concept-modern .project-title h1{font-size:clamp(46px,6vw,92px);line-height:1;letter-spacing:-.065em;max-width:1050px}
.concept-modern .lede{font-size:18px;max-width:700px;line-height:1.65}
.concept-modern .section-heading h2{font-size:clamp(32px,3.6vw,54px);letter-spacing:-.05em}
.concept-modern .project-grid,.concept-modern .featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 22px}
.concept-modern .featured-grid>.project-card:nth-child(n){grid-column:auto;margin-top:0}
.concept-modern .project-card,.concept-modern .update-card,.concept-modern .video-library-card{animation:none}
.concept-modern .card-image,.concept-modern .project-card:nth-child(n) .card-image{border-radius:0;box-shadow:none}
.concept-modern .card-image img,.concept-modern .featured-grid>.project-card:nth-child(n) .card-image img{aspect-ratio:1.55}
.concept-modern .card-caption{margin-top:17px;align-items:baseline}
.concept-modern .card-caption h3{font-size:clamp(24px,2.1vw,33px)}
.concept-modern .card-caption .eyebrow{font-size:10px}
.concept-modern .project-index{border:0;padding:0;font-size:11px}
.concept-modern .card-role{font-size:13px}
.concept-modern .industry-nav,.concept-modern .gallery-categories{border:0;gap:10px 25px}
.concept-modern .gallery-categories>a{border:0;padding:8px 0;background:none}
.concept-modern .gallery-categories>[aria-current]{color:var(--olive);text-decoration:underline;text-underline-offset:7px}
.concept-modern .filter-bar,.concept-modern .library-controls,.concept-modern .video-library-controls{padding-block:22px 32px}
.concept-modern select{background:var(--bg);border:0;border-bottom:1px solid var(--line);padding-left:0;max-width:100%}
.concept-modern .library-grid{gap:24px 16px}
.concept-modern .library-image{background:var(--surface)}
.concept-modern .library-item figcaption{font-size:12px;padding-bottom:8px}
.concept-modern .gallery-pagination{border:0;margin-top:36px}
.concept-modern .study-grid{gap:38px 20px}
.concept-modern .video-library-grid{gap:45px 22px}
.concept-modern .video-library-copy h2{font-size:24px}
.concept-modern .update-card{border:0;padding-block:40px;gap:50px}
.concept-modern .update-image{aspect-ratio:1.55}
.concept-modern .update-image>span{display:none}
.concept-modern .update-meta{border:0;padding:0;margin-bottom:17px}
.concept-modern .update-tags li,.concept-modern .tags li{border:0;padding-inline:0;color:var(--muted)}
.concept-modern .about-profile{gap:45px 70px}
.concept-modern .about-image img,.concept-modern .about-portrait img{border-radius:0}
.concept-modern .contact-links{border:0}
.concept-modern .project-overview{gap:65px;padding-block:55px}
.concept-modern .gallery-grid{gap:35px 22px}
.concept-modern .project-hero img{background:var(--bg)}
@media(max-width:1000px){.editorial-heading,.concept-modern .contact-strip{gap:35px}.concept-modern .site-header nav{gap:16px}.editorial-heading h1{font-size:clamp(68px,9vw,100px)}}
@media(max-width:700px){
 .concept-modern .site-header{padding-block:19px;position:relative}.concept-modern .wordmark{font-size:20px}.concept-modern .menu-toggle{border:0;padding:9px 0;gap:12px}.concept-modern .site-header nav{background:var(--bg);border-bottom:1px solid var(--line)}
 .concept-modern .concept-exit{top:78px;font-size:10px}.editorial-intro{padding-top:65px;padding-bottom:40px}.editorial-heading{grid-template-columns:1fr;gap:27px;margin-top:20px}.editorial-heading h1{font-size:clamp(65px,16vw,100px)}.editorial-description{max-width:440px}.editorial-description>p:first-child{font-size:23px}.editorial-description>p+p{font-size:14px;margin-top:12px}.editorial-engine{margin-top:20px}
 .editorial-grid,.concept-modern .project-grid,.concept-modern .featured-grid{grid-template-columns:1fr;gap:35px}.editorial-section-label>span{font-size:10px}.editorial-caption h2{font-size:25px}.editorial-links{justify-content:flex-start;gap:22px;flex-wrap:wrap}.editorial-journal{padding-block:65px}.editorial-journal .editorial-grid{gap:42px}
 .concept-modern .contact-strip{grid-template-columns:1fr;gap:22px;padding-block:48px}.concept-modern .contact-strip h2{font-size:45px}.concept-modern .contact-strip .button{width:auto;max-width:none}.concept-modern .site-footer{flex-wrap:wrap}.concept-modern .site-footer>div{flex-wrap:wrap}
 .concept-modern .page-intro,.concept-modern .library-intro,.concept-modern .updates-intro,.concept-modern .study-intro{padding-top:70px;padding-bottom:33px}.concept-modern .page-intro h1,.concept-modern .library-intro h1,.concept-modern .updates-intro h1,.concept-modern .study-intro h1,.concept-modern .project-title h1{font-size:46px}.concept-modern .lede{font-size:17px}.concept-modern .project-overview{grid-template-columns:1fr;gap:35px}.concept-modern .update-card{grid-template-columns:1fr;gap:25px}.concept-modern .updates-intro{grid-template-columns:1fr;gap:20px}.concept-modern .study-grid{gap:30px 12px}.concept-modern .gallery-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.concept-modern *,.concept-modern *::before,.concept-modern *::after{animation:none!important;transition:none!important}}


/* Production interaction polish: restrained motion, clearer affordances, image-first. */
.concept-modern{--ease-ui:cubic-bezier(.2,.65,.25,1)}
.concept-modern .site-header nav a,.concept-modern .button,.concept-modern .text-link,.concept-modern .editorial-action,.concept-modern .card-caption h3,.concept-modern .editorial-caption h2{transition:color .22s ease,border-color .22s ease,transform .22s var(--ease-ui),background-color .22s ease}
.concept-modern .button span,.concept-modern .text-link span{display:inline-block;transition:transform .25s var(--ease-ui)}
@media(hover:hover){
 .concept-modern .site-header nav a:hover{color:var(--olive);text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}
 .concept-modern .button:hover{border-color:var(--olive);transform:translateY(-1px)}
 .concept-modern .button:hover span,.concept-modern .text-link:hover span{transform:translate(3px,-2px)}
 .concept-modern .project-link:hover .card-caption h3,.concept-modern .editorial-grid a:hover .editorial-caption h2{color:var(--olive)}
 .concept-modern .editorial-grid a:hover .editorial-image img,.concept-modern .project-link:hover .card-image img{transform:scale(1.018)}
}
@media(max-width:700px){
 .concept-modern .menu-toggle span{min-width:1em;text-align:center}
}
@media(prefers-reduced-motion:reduce){
 .concept-modern .site-header nav a,.concept-modern .button,.concept-modern .text-link,.concept-modern .editorial-action,.concept-modern .button span,.concept-modern .text-link span{transition:none!important;transform:none!important}
}


/* Curated collection gallery */
.collection-browser{padding-top:12px;padding-bottom:96px}.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px;align-items:start}.collection-card{min-width:0}.collection-open{display:block;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}.collection-image{display:block;position:relative;overflow:hidden;background:#111}.collection-image img{display:block;width:100%;height:auto;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}.collection-open:hover .collection-image img,.collection-open:focus-visible .collection-image img{transform:scale(1.018);filter:brightness(1.04)}.collection-count{position:absolute;right:10px;bottom:10px;min-width:34px;padding:7px 8px;background:rgba(16,18,16,.82);backdrop-filter:blur(10px);font-size:11px;line-height:1;text-align:center}.collection-copy{display:grid;gap:5px;padding-top:11px}.collection-copy strong{font-size:15px;font-weight:600;letter-spacing:-.01em}.collection-copy>span{font-size:12px;color:var(--muted,#989d98)}.archive-note{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;border-top:1px solid var(--line,#333);margin-top:74px;padding-top:24px}.archive-note p{max-width:720px;margin:0;color:var(--muted,#aaa);line-height:1.5}.archive-note strong{color:var(--text,#eee);font-weight:500}.collection-dialog{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;background:#0d0f0e;color:#f1f3ef}.collection-dialog::backdrop{background:#0d0f0e}.dialog-open{overflow:hidden}.collection-toolbar{height:92px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:15px 26px;border-bottom:1px solid #252825}.collection-toolbar h2{margin:2px 0 0;font-size:20px;font-weight:520;letter-spacing:-.02em}.collection-toolbar .eyebrow{margin:0;font-size:10px;color:#8d938e}.collection-actions{display:flex;align-items:center;gap:18px;font-size:12px}.collection-project{color:#e8ebe7;text-decoration:none;border-bottom:1px solid #555}.collection-actions button{border:0;background:transparent;color:#e8ebe7;padding:8px 0;cursor:pointer}.collection-stage-wrap{height:calc(100vh - 220px);display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center}.collection-stage{height:100%;display:flex;align-items:center;justify-content:center;padding:18px 0}.collection-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.collection-nav{height:100%;border:0;background:transparent;color:#d9dcd8;font-size:24px;cursor:pointer;transition:background .2s ease}.collection-nav:hover{background:#151816}.collection-caption-row{height:36px;display:flex;justify-content:center;align-items:center;padding:0 70px}.collection-caption-row p{margin:0;font-size:12px;color:#a8ada8;text-align:center}.collection-thumbs{height:92px;display:flex;align-items:center;gap:8px;overflow-x:auto;padding:10px 24px 14px;border-top:1px solid #252825;scrollbar-width:thin}.collection-thumb{flex:0 0 auto;width:86px;height:62px;padding:0;border:1px solid transparent;background:#161916;cursor:pointer;opacity:.58;transition:opacity .18s ease,border-color .18s ease,transform .18s ease}.collection-thumb:hover{opacity:.9}.collection-thumb.active{opacity:1;border-color:#e9ece7;transform:translateY(-1px)}.collection-thumb img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:1100px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}.collection-stage-wrap{grid-template-columns:48px minmax(0,1fr) 48px}.collection-project{display:none}}
@media(max-width:650px){.collection-browser{padding-bottom:64px}.collection-grid{grid-template-columns:1fr;gap:34px}.collection-copy strong{font-size:16px}.archive-note{display:block;margin-top:54px}.archive-note .text-link{display:inline-block;margin-top:16px}.collection-toolbar{height:76px;padding:10px 14px}.collection-toolbar h2{font-size:16px}.collection-actions{gap:12px}.collection-stage-wrap{height:calc(100vh - 190px);grid-template-columns:38px minmax(0,1fr) 38px}.collection-stage{padding:10px 0}.collection-caption-row{height:34px;padding:0 44px}.collection-caption-row p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collection-thumbs{height:80px;padding:9px 12px 11px}.collection-thumb{width:72px;height:52px}}
@media(prefers-reduced-motion:reduce){.collection-image img,.collection-thumb{transition:none!important}}


/* V5 — recruiter-first navigation + disciplined layout */
html{scroll-padding-top:76px}
.concept-modern .site-header{
  position:sticky;top:0;z-index:90;max-width:none;width:100%;margin:0;
  padding:11px max(var(--gutter),calc((100vw - var(--max))/2 + var(--gutter)));
  min-height:60px;background:rgba(17,19,16,.93);border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 28px rgba(0,0,0,.12);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
}
.concept-modern .site-header .wordmark{font-size:18px;font-weight:620;letter-spacing:-.035em}
.concept-modern .site-header nav{gap:18px;align-items:center}
.concept-modern .site-header nav a{font-size:12.5px;padding:8px 0;color:#daddd7}
.concept-modern .site-header nav a[aria-current]{color:var(--text)}
.concept-modern .site-header nav .nav-cv{color:var(--muted)}
.concept-modern .site-header nav .nav-contact{padding:8px 13px;border:1px solid rgba(182,197,140,.65);color:var(--text)}
.concept-modern .site-header nav .nav-contact:hover{background:var(--olive);border-color:var(--olive);color:var(--ink);text-decoration:none}
.concept-modern .site-header nav .nav-contact::after{display:none}

/* Home: quick verification paths without adding another large section. */
.recruiter-shortcuts{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.recruiter-shortcuts a{font-size:12px;color:var(--muted);border-bottom:1px solid transparent}
.recruiter-shortcuts a:hover{color:var(--text);border-color:var(--olive)}

/* Collections: every cover has equal visual weight. */
.collection-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 18px}
.collection-image{aspect-ratio:1.55;background:#111310}
.collection-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.collection-copy{padding-top:12px;min-height:58px}
.collection-copy strong{font-size:14px}
.collection-copy>span{font-size:11.5px}

/* Collection viewer: images stay complete and do not overwhelm the screen. */
.collection-toolbar{height:72px;padding:12px max(22px,calc((100vw - 1560px)/2));}
.collection-toolbar h2{font-size:17px}
.collection-stage-wrap{height:calc(100vh - 196px);max-width:1560px;margin:0 auto;grid-template-columns:54px minmax(0,1fr) 54px;width:100%}
.collection-stage{padding:14px 18px 8px}
.collection-stage img{max-width:min(82vw,1320px);max-height:68vh;width:auto;height:auto;object-fit:contain}
.collection-nav{font-size:20px;border-radius:2px}
.collection-caption-row{height:28px;padding:0 80px}
.collection-caption-row p{font-size:11px}
.collection-thumbs{height:96px;justify-content:center;gap:9px;padding:12px 22px 15px;background:#0d0f0e}
.collection-thumb{width:92px;height:62px}

/* Case studies: regular rhythm, no accidental empty columns. */
.concept-modern .project-hero{padding-top:10px}
.concept-modern .project-hero img{max-height:68vh;object-fit:contain}
.concept-modern .project-overview{grid-template-columns:minmax(230px,.78fr) minmax(0,1.8fr);gap:clamp(44px,6vw,90px);padding-block:52px 66px}
.concept-modern .project-story{max-width:860px}
.concept-modern .gallery-section{padding-bottom:72px}
.concept-modern .gallery-section .section-heading{margin-bottom:24px}
.concept-modern .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px;align-items:start}
.concept-modern .gallery-item a{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;background:#111310;overflow:hidden}
.concept-modern .gallery-item img{width:100%;height:100%;object-fit:contain;background:#111310}
.concept-modern .gallery-item figcaption{font-size:11.5px;margin-top:9px;min-height:18px}
.concept-modern .process-section{padding-top:4px}
.concept-modern .process-section .gallery-grid{grid-template-columns:1fr;max-width:1080px}
.concept-modern .process-section .gallery-item a{aspect-ratio:auto;min-height:0;background:#111310}
.concept-modern .process-section .gallery-item img{height:auto;max-height:680px;object-fit:contain}
.concept-modern .outcome{max-width:var(--max);margin-inline:auto}

/* CTA/footer: use the width deliberately and keep contact/verification obvious. */
.concept-modern .contact-strip{grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center;padding-block:54px 62px}
.concept-modern .contact-strip h2{font-size:clamp(42px,4.8vw,74px);margin-block:12px 14px}
.concept-modern .contact-strip .button{justify-self:end;min-width:176px}
.concept-modern .site-footer{display:grid;grid-template-columns:1fr 1.15fr auto;align-items:end;gap:36px;padding-block:28px 38px;border-top:1px solid rgba(255,255,255,.08)}
.concept-modern .site-footer .footer-identity,.concept-modern .site-footer .footer-contact{display:grid;gap:4px}
.concept-modern .site-footer .footer-identity .wordmark{font-size:17px}
.concept-modern .site-footer p{font-size:11px;line-height:1.45;color:var(--muted)}
.concept-modern .site-footer .footer-contact>a{font-size:12px;color:var(--text)}
.concept-modern .site-footer .footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 18px;font-size:12px}

.recruiter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px;margin-top:26px}
.recruiter-actions .button{min-height:42px;padding:9px 16px}
.recruiter-actions .text-link{margin-top:0!important}

@media(max-width:1050px){
 .concept-modern .site-header nav{gap:13px}
 .concept-modern .site-header nav a{font-size:12px}
 .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}
 .concept-modern .site-footer{grid-template-columns:1fr 1fr}.concept-modern .site-footer .footer-links{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:700px){
 html{scroll-padding-top:64px}
 .concept-modern .site-header{position:sticky!important;top:0!important;min-height:58px;padding:9px var(--gutter)}
 .concept-modern .site-header .wordmark{font-size:17px}
 .concept-modern .site-header nav{top:100%;padding:14px var(--gutter) 18px;gap:0;background:rgba(17,19,16,.98)}
 .concept-modern .site-header nav a{font-size:14px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.06)}
 .concept-modern .site-header nav .nav-contact{margin-top:10px;padding:10px 12px;text-align:center;border:1px solid var(--olive)}
 .recruiter-shortcuts{gap:8px 16px;margin-top:20px}
 .collection-grid{grid-template-columns:1fr;gap:32px}
 .collection-image{aspect-ratio:1.5}
 .collection-toolbar{height:68px;padding:10px 14px}
 .collection-stage-wrap{height:calc(100vh - 182px);grid-template-columns:36px minmax(0,1fr) 36px}
 .collection-stage{padding:8px}
 .collection-stage img{max-width:100%;max-height:64vh}
 .collection-caption-row{height:28px;padding:0 46px}
 .collection-thumbs{height:86px;justify-content:flex-start;padding:10px 12px 12px}
 .collection-thumb{width:76px;height:52px}
 .concept-modern .project-overview{grid-template-columns:1fr;gap:34px;padding-block:38px 50px}
 .concept-modern .gallery-grid{grid-template-columns:1fr;gap:26px}
 .concept-modern .gallery-item a{aspect-ratio:auto;min-height:0}
 .concept-modern .gallery-item img{height:auto;max-height:72vh}
 .concept-modern .contact-strip{grid-template-columns:1fr;gap:24px;padding-block:44px}
 .concept-modern .contact-strip .button{justify-self:start}
 .concept-modern .site-footer{grid-template-columns:1fr;gap:20px;padding-block:26px 34px}
 .concept-modern .site-footer .footer-links{grid-column:auto;justify-content:flex-start;gap:10px 16px}
}


/* V6 — recruiter-first information architecture */
.concept-modern .site-header{min-height:60px;padding:10px var(--gutter)}
.header-brand{display:flex;align-items:center;gap:18px;min-width:0}
.header-engine{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:10.5px;letter-spacing:.025em;white-space:nowrap;padding-left:17px;border-left:1px solid rgba(255,255,255,.11)}
.header-engine img{width:20px;height:20px;display:block;filter:none}
.concept-modern .site-header nav .nav-linkedin,.concept-modern .site-header nav .nav-cv{color:var(--muted)}

/* Home: enter by industry, not by a mixed project list */
.home-industries{padding-top:34px;padding-bottom:86px}
.home-section-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;margin-bottom:28px}
.home-section-head h2{font-size:clamp(34px,4vw,60px);line-height:1;letter-spacing:-.055em;margin-top:11px}
.home-section-head>div>p:last-child{max-width:670px;margin-top:15px;font-size:14px;line-height:1.6;color:var(--muted)}
.industry-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 22px}
.industry-showcase-card a{display:block;height:100%}
.industry-showcase-image{overflow:hidden;background:#10120f;aspect-ratio:1.62}
.industry-showcase-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.65,.25,1),filter .3s ease}
.industry-showcase-card a:hover .industry-showcase-image img{transform:scale(1.018);filter:brightness(1.04)}
.industry-showcase-copy{padding-top:15px}
.industry-showcase-copy h3{font-size:clamp(25px,2.15vw,34px);font-weight:480;letter-spacing:-.04em;margin-top:7px}
.industry-showcase-copy>p:not(.eyebrow){font-size:13px;line-height:1.55;color:var(--muted);margin-top:8px;max-width:560px}
.industry-showcase-copy>span{display:inline-block;font-size:12px;margin-top:13px;text-decoration:underline;text-underline-offset:6px}
.recruiter-proof{display:grid;grid-template-columns:minmax(0,1.25fr) auto;align-items:center;gap:45px;padding-block:28px 32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:76px}
.recruiter-proof>div:first-child>p:last-child{font-size:14px;line-height:1.55;margin-top:8px;max-width:760px;color:var(--muted)}
.proof-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.proof-links a{font-size:13px;text-decoration:underline;text-underline-offset:6px}

/* Work navigation: category menu stays visible while browsing */
.concept-modern .page-intro{padding-top:58px;padding-bottom:30px}
.work-browser>.industry-nav,.recruiter-industry-nav{position:sticky;top:60px;z-index:45;background:rgba(23,25,22,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;flex-wrap:wrap;padding:14px 0 13px;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;margin-bottom:10px}
.concept-modern .industry-nav a{font-size:12.5px;padding:7px 0;color:var(--muted)}
.concept-modern .industry-nav a[aria-current]{color:var(--olive);text-decoration:underline;text-underline-offset:6px}
.recruiter-filter{display:flex!important;align-items:end;min-height:78px}
.recruiter-filter label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}
.recruiter-filter select{min-width:210px}
.recruiter-filter>p{margin-left:auto}

/* Gallery: visible depth below the collection covers */
.library-intro{padding-bottom:34px!important}
.library-intro>.scroll-cue{margin-left:auto;align-self:end;font-size:11px;color:var(--olive);white-space:nowrap}
.collection-browser{padding-top:0!important}
.collection-continuation{padding-top:74px}
.continuation-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);gap:45px;align-items:end;margin-bottom:24px;padding-top:28px;border-top:1px solid var(--line)}
.continuation-heading h2{font-size:clamp(32px,3.8vw,54px);letter-spacing:-.05em;line-height:1;margin-top:10px}
.continuation-heading>p{font-size:13px;line-height:1.6;color:var(--muted)}
.collection-peek-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px}
.collection-peek{padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}
.collection-peek img{display:block;width:100%;aspect-ratio:1.42;object-fit:cover;background:#111310;transition:transform .35s ease,filter .3s ease}
.collection-peek:hover img,.collection-peek:focus-visible img{filter:brightness(1.05);transform:translateY(-2px)}
.collection-peek span{display:block;margin-top:9px;font-size:11px;color:var(--muted)}
.archive-note{margin-top:58px!important;padding:23px 0!important;align-items:center!important}

/* Motion: selected first, complete archive one click deeper */
.video-library-intro{padding-bottom:28px!important}
.video-library{padding-bottom:68px!important}
.motion-continuation{margin-top:72px;padding-top:28px;border-top:1px solid var(--line)}
.motion-peek-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:24px}
.motion-peek-grid article a{display:block}
.motion-peek-grid img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#111;display:block}
.motion-peek-grid span{display:block;padding-top:10px}
.motion-peek-grid strong{display:block;font-size:15px;font-weight:520;line-height:1.3}
.motion-peek-grid small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.motion-actions{display:flex;gap:24px;align-items:center;margin-top:30px}
.motion-actions .button{min-height:44px;padding:10px 16px}

/* About: recruiter-readable capability proof */
.recruiter-capabilities{padding-block:36px 54px}
.capabilities-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);gap:55px;align-items:end;padding-top:28px;border-top:1px solid var(--line);margin-bottom:25px}
.capabilities-heading h2{font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.055em;margin-top:10px}
.capabilities-heading>p{font-size:14px;line-height:1.6;color:var(--muted)}
.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.capability-grid article{border:1px solid var(--line);padding:20px 18px;min-height:215px;background:rgba(255,255,255,.012)}
.capability-grid h3{font-size:17px;font-weight:540;letter-spacing:-.02em;margin-bottom:15px}
.capability-grid ul{list-style:none;margin:0;padding:0}
.capability-grid li{font-size:12.5px;line-height:1.45;color:var(--muted);padding:7px 0;border-top:1px solid rgba(255,255,255,.07)}
.capability-evidence{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding-top:22px;font-size:12px}
.capability-evidence>span{color:var(--muted);margin-right:4px}
.capability-evidence a{text-decoration:underline;text-underline-offset:5px}
.about-production-image{margin-top:0!important}
.about-production-image img{max-height:620px!important;aspect-ratio:2/1;object-fit:cover!important;object-position:center}
.contact-proof{margin-top:42px;padding-top:24px;border-top:1px solid var(--line);max-width:760px}
.contact-proof>p:not(.eyebrow){margin-top:8px;color:var(--muted)}
.contact-proof>div{display:flex;gap:24px;flex-wrap:wrap;margin-top:15px}
.contact-proof a{font-size:13px;text-decoration:underline;text-underline-offset:6px}

@media(max-width:1200px){
 .header-engine span{display:none}.header-engine{padding-left:12px}
 .collection-peek-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 .concept-modern .site-header nav{gap:12px}.concept-modern .site-header nav a{font-size:11.5px}
 .industry-showcase-grid{grid-template-columns:1fr}
 .recruiter-proof{grid-template-columns:1fr;gap:18px}.proof-links{justify-content:flex-start}
 .continuation-heading,.capabilities-heading{grid-template-columns:1fr;gap:16px}
}
@media(max-width:700px){
 .concept-modern .site-header{min-height:58px;padding:9px var(--gutter)!important}
 .header-brand{gap:10px}.header-engine{padding-left:10px}.header-engine img{width:19px;height:19px}
 .home-industries{padding-top:16px;padding-bottom:58px}.home-section-head{grid-template-columns:1fr;gap:14px}.industry-showcase-grid{gap:34px}
 .recruiter-proof{margin-bottom:52px;padding-block:24px}.proof-links{gap:18px}
 .work-browser>.industry-nav,.recruiter-industry-nav{top:58px;flex-wrap:nowrap;overflow-x:auto;gap:22px!important;padding-block:12px;margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter);scrollbar-width:none}
 .work-browser>.industry-nav::-webkit-scrollbar{display:none}.concept-modern .industry-nav a{flex:0 0 auto;white-space:nowrap}
 .recruiter-filter{min-height:66px}.recruiter-filter select{min-width:0;width:100%}
 .library-intro>.scroll-cue{display:none}
 .collection-continuation{padding-top:50px}.collection-peek-grid{grid-template-columns:1fr 1fr;gap:22px 10px}.collection-peek span{font-size:10px}
 .motion-continuation{margin-top:50px}.motion-peek-grid{grid-template-columns:1fr}.motion-actions{align-items:flex-start;flex-direction:column;gap:14px}
 .capability-grid{grid-template-columns:1fr}.capability-grid article{min-height:0}.recruiter-capabilities{padding-block:25px 42px}.about-production-image img{aspect-ratio:1.35;max-height:none!important}
}

/* V7 — connect selected work to the deeper visual archive */

/* Keep the active industry state minimal: one quiet line only. */
.concept-modern .industry-nav a[aria-current]{
  color:var(--text);
  text-decoration:none;
  position:relative;
}
.concept-modern .industry-nav a[aria-current]::after{
  content:"";
  display:block!important;
  position:absolute;
  left:0;right:0;bottom:0;
  height:1px;
  background:var(--olive);
}

/* Case-study image rhythm: previews fill the composition; the lightbox keeps the full frame. */
.concept-modern .gallery-section:not(.process-section) .gallery-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:24px 18px;
  align-items:start;
}
.concept-modern .gallery-section:not(.process-section) .gallery-item{
  grid-column:span 6;
  min-width:0;
}
.concept-modern .gallery-section:not(.process-section) .gallery-item:last-child:nth-child(odd){
  grid-column:1 / -1;
}
.concept-modern .gallery-section:not(.process-section) .gallery-item a{
  width:100%;
  aspect-ratio:16/10;
  background:#111310;
  overflow:hidden;
}
.concept-modern .gallery-section:not(.process-section) .gallery-item:last-child:nth-child(odd) a{
  aspect-ratio:2.05/1;
}
.concept-modern .gallery-section:not(.process-section) .gallery-item img{
  width:100%;height:100%;
  object-fit:cover;
  background:#111310;
}

/* Process becomes a compact evidence strip rather than another tall gallery chapter. */
.concept-modern .process-section{
  display:grid;
  grid-template-columns:minmax(170px,.32fr) minmax(0,1fr);
  gap:28px;
  align-items:start;
  padding-top:24px;
  padding-bottom:44px;
  border-top:1px solid var(--line);
}
.concept-modern .process-section .section-heading{
  display:block;
  margin:0;
  padding-top:2px;
}
.concept-modern .process-section .section-heading h2{
  font-size:clamp(25px,2.4vw,36px);
  letter-spacing:-.04em;
  margin-top:6px;
}
.concept-modern .process-section .section-heading .gallery-hint{
  margin-top:10px;
  font-size:11px;
  line-height:1.5;
}
.concept-modern .process-section .gallery-grid{
  max-width:none;
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.concept-modern .process-section .gallery-item:only-child{grid-column:1/-1}
.concept-modern .process-section .gallery-item a{
  aspect-ratio:16/9;
  width:100%;
  overflow:hidden;
  background:#111310;
}
.concept-modern .process-section .gallery-item:only-child a{aspect-ratio:2/1}
.concept-modern .process-section .gallery-item img{
  width:100%;height:100%;max-height:none;
  object-fit:cover;
}
.concept-modern .process-section .gallery-item figcaption{font-size:10.5px;margin-top:7px}

/* Visual bridge between a case study / industry and its complete category gallery. */
.related-category-gallery{
  padding-top:38px;
  padding-bottom:76px;
  border-top:1px solid var(--line);
}
.related-category-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:38px;
  margin-bottom:22px;
}
.related-category-head h2{
  font-size:clamp(31px,3.6vw,52px);
  line-height:1;
  letter-spacing:-.05em;
  margin-top:8px;
}
.related-category-head p:not(.eyebrow){
  max-width:650px;
  margin-top:11px;
  color:var(--muted);
  font-size:12.5px;
}
.related-category-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.related-category-item{
  position:relative;
  display:block;
  overflow:hidden;
  background:#10120f;
  aspect-ratio:1.34;
}
.related-category-item img{
  width:100%;height:100%;object-fit:cover;
  display:block;
  transition:transform .45s cubic-bezier(.2,.65,.25,1),filter .25s ease;
}
.related-category-item:hover img,.related-category-item:focus-visible img{transform:scale(1.025);filter:brightness(1.06)}
.related-category-item span{
  position:absolute;inset:auto 8px 8px 8px;
  background:linear-gradient(transparent,rgba(8,9,8,.82));
  padding:24px 8px 7px;
  color:#f2f4ef;
  font-size:10.5px;
  line-height:1.3;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .2s ease,transform .2s ease;
}
.related-category-item:hover span,.related-category-item:focus-visible span{opacity:1;transform:none}

/* Home: a lightweight random strip immediately after the hero. */
.home-random-showcase{
  padding-top:10px;
  padding-bottom:62px;
}
.home-random-head,.home-updates-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,460px);
  gap:40px;
  align-items:end;
  margin-bottom:20px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.home-random-head h2,.home-updates-head h2{
  font-size:clamp(30px,3.4vw,48px);
  line-height:1;
  letter-spacing:-.05em;
  margin-top:8px;
}
.home-random-head>div:last-child p,.home-updates-head>div:last-child p{font-size:12.5px;color:var(--muted);margin-bottom:12px}
.home-random-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
}
.home-random-item{position:relative;display:block;aspect-ratio:1.05;overflow:hidden;background:#10120f}
.home-random-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .25s ease}
.home-random-item:hover img{transform:scale(1.03);filter:brightness(1.06)}
.home-random-item span{position:absolute;left:8px;bottom:7px;font-size:9.5px;color:#fff;background:rgba(8,9,8,.72);padding:4px 6px;opacity:0;transition:opacity .2s ease}
.home-random-item:hover span,.home-random-item:focus-visible span{opacity:1}

/* Home updates: current LinkedIn activity returns without overwhelming the portfolio. */
.home-updates{padding-top:6px;padding-bottom:78px}
.home-updates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-update-card a{display:block;height:100%;border-top:1px solid var(--line);padding-top:10px}
.home-update-card img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#10120f;display:block}
.home-update-card> a > div{padding-top:12px}
.home-update-card time{font-size:10px;color:var(--olive)}
.home-update-card h3{font-size:19px;line-height:1.15;letter-spacing:-.025em;margin-top:7px;font-weight:520}
.home-update-card span{display:inline-block;font-size:11px;color:var(--muted);margin-top:12px;text-decoration:underline;text-underline-offset:5px}

/* Updates in the permanent nav should behave like the other recruiter-access links. */
.concept-modern .site-header nav a[href="/updates/"]{color:#daddd7}
.concept-modern .site-header nav a[href="/updates/"][aria-current]{color:var(--text)}

@media(max-width:1100px){
  .related-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-random-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
  .concept-modern .process-section{grid-template-columns:1fr;gap:16px;padding-bottom:36px}
  .concept-modern .process-section .section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:20px}
  .concept-modern .process-section .section-heading .gallery-hint{text-align:right;margin:0}
  .related-category-head,.home-random-head,.home-updates-head{grid-template-columns:1fr;gap:14px}
  .related-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-updates-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .concept-modern .gallery-section:not(.process-section) .gallery-grid{grid-template-columns:1fr;gap:22px}
  .concept-modern .gallery-section:not(.process-section) .gallery-item,.concept-modern .gallery-section:not(.process-section) .gallery-item:last-child:nth-child(odd){grid-column:auto}
  .concept-modern .gallery-section:not(.process-section) .gallery-item a,.concept-modern .gallery-section:not(.process-section) .gallery-item:last-child:nth-child(odd) a{aspect-ratio:auto;min-height:0}
  .concept-modern .gallery-section:not(.process-section) .gallery-item img{height:auto;max-height:72vh;object-fit:contain}
  .concept-modern .process-section .section-heading{display:block}.concept-modern .process-section .section-heading .gallery-hint{text-align:left;margin-top:8px}
  .concept-modern .process-section .gallery-grid{grid-template-columns:1fr}
  .concept-modern .process-section .gallery-item a,.concept-modern .process-section .gallery-item:only-child a{aspect-ratio:16/9}
  .related-category-gallery{padding-top:30px;padding-bottom:55px}
  .related-category-grid{grid-template-columns:1fr 1fr;gap:7px}
  .related-category-item span{display:none}
  .home-random-showcase{padding-bottom:48px}
  .home-random-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .home-updates{padding-bottom:56px}.home-updates-grid{grid-template-columns:1fr}
}

/* Three-project industry pages should read as one complete row, not a 2+1 grid. */
@media(min-width:1101px){
  .concept-modern .work-browser.three-projects .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 18px}
  .concept-modern .work-browser.three-projects .card-caption h3{font-size:clamp(21px,1.9vw,29px)}
}


/* V8 — final copy/structure pass */
/* The gallery follows selected projects on the home page. */
.home-industries{padding-bottom:50px}
.home-random-showcase{padding-top:0;padding-bottom:64px}

/* A quiet contact prompt: useful, never a competing hero. */
.concept-modern .contact-strip{
  background:transparent!important;
  border-top:1px solid var(--line)!important;
  border-bottom:0!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:28px!important;
  padding-block:30px 34px!important;
  margin-top:24px;
}
.concept-modern .contact-strip .eyebrow{margin:0 0 7px!important}
.concept-modern .contact-strip h2{
  font-size:clamp(22px,2.25vw,32px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0 0 7px!important;
  max-width:720px;
}
.concept-modern .contact-strip p:last-child{font-size:11.5px!important;color:var(--muted)}
.concept-modern .contact-strip .button{
  justify-self:end!important;
  min-width:0!important;
  padding:10px 14px!important;
  background:transparent!important;
  color:var(--text)!important;
  border-color:var(--line)!important;
}
.concept-modern .contact-strip .button:hover{border-color:var(--olive)!important;color:var(--olive)!important}

/* Related gallery is a closing visual chapter after the case-study outcome. */
.related-category-gallery{padding-top:34px;padding-bottom:58px;margin-top:14px}
.related-category-head h2{font-size:clamp(28px,3vw,44px)}
.related-category-head p:not(.eyebrow){max-width:720px}

/* Result copy stays compact before the related gallery. */
.concept-modern .outcome{padding-bottom:28px}

@media(max-width:700px){
  .concept-modern .contact-strip{grid-template-columns:1fr!important;gap:15px!important;padding-block:24px 28px!important}
  .concept-modern .contact-strip .button{justify-self:start!important}
  .home-industries{padding-bottom:40px}
  .home-random-showcase{padding-bottom:50px}
}


/* V8.1 — one-project industry pages use the available width instead of leaving a half-empty grid. */
@media(min-width:901px){
  .concept-modern .work-browser.one-project .project-grid{grid-template-columns:1fr;max-width:980px}
  .concept-modern .work-browser.one-project .project-card{max-width:980px}
  .concept-modern .work-browser.one-project .card-image{aspect-ratio:1.7}
}


/* V9.1 — subtle protection and copyright treatment. */
.protected-media,
img.protected-media{
  -webkit-user-drag:none;
  -webkit-touch-callout:none;
  user-select:none;
}
.portfolio-copyright{
  flex-basis:100%;
  margin:.9rem 0 0;
  padding-top:.65rem;
  border-top:1px solid rgba(255,255,255,.08);
  color:var(--muted,#9a9d96);
  font-size:.69rem;
  letter-spacing:.02em;
  opacity:.72;
}
/* V10 — AE2 brand finish */
/* The background borrows the sage / olive / blue atmosphere of Alfonso's current AE2 mark,
   but stays deliberately dark so artwork remains the focal point. */
body.concept-modern{
  --bg:#0d1211;
  --surface:#171c18;
  --surface-raised:#1b211c;
  --text:#eff1e9;
  --muted:#aeb7aa;
  --line:#344139;
  --olive:#d0d9a1;
  --brand-sage:#78917c;
  --brand-blue:#465a78;
  --ink:#0d1211;
  background-color:var(--bg);
  background-image:
    radial-gradient(900px 560px at 72% -8%,rgba(196,202,112,.095),transparent 67%),
    radial-gradient(1050px 780px at -8% 38%,rgba(105,135,109,.085),transparent 69%),
    radial-gradient(1100px 850px at 108% 96%,rgba(67,85,119,.13),transparent 66%),
    linear-gradient(180deg,#0f1412 0%,#0d1211 46%,#0b0f10 100%);
  background-attachment:fixed;
}
body.concept-modern main{background:transparent}
body.concept-modern .site-header{
  background:rgba(12,17,15,.91);
  border-bottom-color:rgba(194,210,166,.10);
  box-shadow:0 10px 32px rgba(0,0,0,.16);
}
body.concept-modern .site-header::after{
  content:"";position:absolute;left:var(--gutter);right:var(--gutter);bottom:-1px;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(120,145,124,.24) 20%,rgba(208,217,161,.44) 50%,rgba(70,90,120,.30) 82%,transparent 100%);
}
/* Exact AE2 mark extracted from the supplied logo; kept small so the name remains readable. */
body.concept-modern .site-header .wordmark{display:inline-flex;align-items:center;gap:10px}
body.concept-modern .site-header .wordmark::before{
  content:"";width:44px;height:16px;flex:0 0 44px;background:url('/assets/ae2-mark.png') center/contain no-repeat;opacity:.92;
}
body.concept-modern .header-engine{border-left-color:rgba(208,217,161,.14)}
body.concept-modern .button,
body.concept-modern .nav-contact{
  position:relative;
}
body.concept-modern .button::after,
body.concept-modern .nav-contact::before{
  content:"";position:absolute;right:-1px;top:-1px;width:9px;height:9px;
  border-top:1px solid rgba(208,217,161,.62);transform:skewY(45deg);transform-origin:top right;pointer-events:none;opacity:.8;
}
body.concept-modern .contact-strip{background:rgba(24,30,25,.78);border:1px solid rgba(208,217,161,.07)}
body.concept-modern .site-footer{border-top-color:rgba(208,217,161,.08)}

/* Cleaner hover labels: small translucent chips instead of a broad black mask. */
body.concept-modern .related-category-item span{
  inset:auto auto 8px 8px;max-width:calc(100% - 16px);padding:6px 8px;
  background:rgba(10,15,13,.76);border:1px solid rgba(229,238,212,.10);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  box-shadow:0 5px 16px rgba(0,0,0,.16);
}
body.concept-modern .home-random-item span{
  left:8px;right:auto;bottom:8px;max-width:calc(100% - 16px);padding:5px 7px;
  background:rgba(10,15,13,.74);border:1px solid rgba(229,238,212,.09);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
body.concept-modern .library-item figcaption{
  inset:auto 8px 8px 8px;padding:9px 10px;background:rgba(9,14,12,.78);
  border:1px solid rgba(229,238,212,.09);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);
  box-shadow:0 8px 22px rgba(0,0,0,.20);
}
body.concept-modern .library-image .image-open,
body.concept-modern .image-open{
  background:rgba(10,15,13,.74);border:1px solid rgba(229,238,212,.10);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}

/* Slight brand-colour reflections in section rules without turning the portfolio into a themed UI. */
body.concept-modern .related-category-gallery,
body.concept-modern .home-random-head,
body.concept-modern .home-updates-head{
  border-top-color:rgba(156,177,139,.20);
}
body.concept-modern .eyebrow{color:#cfd9a3}

@media(max-width:900px){
  body.concept-modern{background-attachment:scroll}
  body.concept-modern .site-header .wordmark::before{width:37px;height:14px;flex-basis:37px}
}
@media(max-width:700px){
  body.concept-modern .site-header .wordmark{gap:8px}
  body.concept-modern .site-header .wordmark::before{width:32px;height:12px;flex-basis:32px}
  body.concept-modern .site-header::after{left:22px;right:22px}
}
@media(prefers-reduced-motion:reduce){
  body.concept-modern{background-attachment:scroll}
}

/* V10.2 — layout stability and quieter project browser */
/* Text should never move when a recruiter hovers a link. Motion is reserved for imagery. */
body.concept-modern .project-link h3,
body.concept-modern .project-link:hover h3,
body.concept-modern .project-link:focus-visible h3,
body.concept-modern .editorial-caption h2,
body.concept-modern .editorial-grid a:hover .editorial-caption h2,
body.concept-modern .editorial-grid a:focus-visible .editorial-caption h2,
body.concept-modern .button,
body.concept-modern .button:hover,
body.concept-modern .button:focus-visible,
body.concept-modern .button span,
body.concept-modern .button:hover span,
body.concept-modern .button:focus-visible span,
body.concept-modern .text-link,
body.concept-modern .text-link:hover,
body.concept-modern .text-link:focus-visible,
body.concept-modern .text-link span,
body.concept-modern .text-link:hover span,
body.concept-modern .text-link:focus-visible span{
  transform:none!important;
}
body.concept-modern .project-link h3,
body.concept-modern .editorial-caption h2{
  transition:color .18s ease!important;
}
body.concept-modern .button,
body.concept-modern .text-link{
  transition:color .18s ease,border-color .18s ease,background-color .18s ease!important;
}

/* Selected Work: one clear reading axis from intro -> industries -> capability -> projects. */
body.concept-modern .work-browser{
  padding-bottom:84px;
}
body.concept-modern .work-browser>.industry-nav,
body.concept-modern .recruiter-industry-nav{
  top:60px;
  margin:0 0 12px!important;
  padding:11px 0 10px!important;
  background:rgba(13,18,17,.94)!important;
  border-top:0!important;
  border-bottom:1px solid rgba(208,217,161,.16)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.08);
}
body.concept-modern .industry-nav a{
  min-height:34px;
  padding:5px 0!important;
  line-height:1.2;
  transition:color .18s ease!important;
  transform:none!important;
}
body.concept-modern .industry-nav a:hover,
body.concept-modern .industry-nav a:focus-visible{
  transform:none!important;
}
body.concept-modern .industry-nav a[aria-current]::after{
  bottom:-1px;
}
body.concept-modern .recruiter-filter{
  padding:16px 0 30px!important;
  min-height:0;
  align-items:flex-end;
}
body.concept-modern .recruiter-filter label{
  gap:4px;
}
body.concept-modern .recruiter-filter select{
  min-height:40px;
  padding-top:7px;
  padding-bottom:7px;
}
body.concept-modern .recruiter-filter>p{
  padding-bottom:8px;
}

/* Project captions stay anchored even when the title colour changes. */
body.concept-modern .project-card .card-caption{
  align-items:flex-end;
  min-height:58px;
}
body.concept-modern .project-card .card-caption>div{
  min-width:0;
}
body.concept-modern .project-card .card-caption h3{
  margin:0;
  transform:none!important;
}
body.concept-modern .project-card .project-index{
  flex:0 0 auto;
  padding-bottom:3px;
}
body.concept-modern .project-card .card-role{
  min-height:1.5em;
}

@media(max-width:700px){
  body.concept-modern .work-browser>.industry-nav,
  body.concept-modern .recruiter-industry-nav{
    top:58px;
    margin-inline:calc(var(--gutter)*-1)!important;
    padding:10px var(--gutter) 9px!important;
    box-shadow:0 8px 20px rgba(0,0,0,.10);
  }
  body.concept-modern .project-card .card-caption{min-height:0}
  body.concept-modern .recruiter-filter{padding:14px 0 24px!important}
}
/* No positional hover motion on labels or link copy anywhere in the modern portfolio. */
body.concept-modern .industry-list>a:hover{
  padding-left:0!important;
}
body.concept-modern .hero-image:hover .hero-link{
  transform:none!important;
}
body.concept-modern .library-item figcaption,
body.concept-modern .library-item:hover figcaption,
body.concept-modern .library-item:focus-within figcaption,
body.concept-modern .related-category-item span,
body.concept-modern .related-category-item:hover span,
body.concept-modern .related-category-item:focus-visible span{
  transform:none!important;
}
body.concept-modern .library-item figcaption{
  transition:opacity .18s ease!important;
}
body.concept-modern .related-category-item span{
  transition:opacity .18s ease!important;
}

/* V10.3 — mobile gallery: unobstructed images */
@media(max-width:700px){
  body.concept-modern .library-item figcaption{
    display:none!important;
  }
  body.concept-modern .library-image .image-open,
  body.concept-modern .library-item .image-open{
    display:none!important;
  }
  body.concept-modern .library-grid{
    gap:8px!important;
  }
}

/* V10.4 — mobile navigation and gallery ergonomics */
body.menu-open{overflow:hidden!important}
.back-to-top{
  position:fixed;right:24px;bottom:24px;z-index:88;width:46px;height:46px;padding:0;
  display:grid;place-items:center;border:1px solid rgba(201,211,165,.55);background:rgba(14,18,17,.92);
  color:var(--text);font-size:22px;line-height:1;opacity:0;visibility:hidden;transform:translateY(10px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease,background-color .18s ease;
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}
.back-to-top:hover,.back-to-top:focus-visible{background:var(--olive);color:var(--ink);border-color:var(--olive)}
body.menu-open .back-to-top,body.lightbox-open .back-to-top{opacity:0!important;visibility:hidden!important}
.gallery-pagination .page-ellipsis{min-width:28px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}

@media(max-width:700px){
  .concept-modern .site-header nav.open{
    position:fixed!important;top:58px!important;right:0!important;bottom:0!important;left:0!important;
    z-index:89!important;display:flex!important;flex-direction:column!important;align-items:center!important;
    padding:32px 28px calc(34px + env(safe-area-inset-bottom))!important;background:rgba(10,13,12,.995)!important;
    overflow-y:auto;overscroll-behavior:contain
  }
  .concept-modern .site-header nav.open a{width:min(100%,320px);padding:15px 10px!important;text-align:center;font-size:17px!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
  .concept-modern .site-header nav.open .nav-contact{margin-top:14px!important;width:min(100%,180px);border:1px solid var(--olive)!important}
  .gallery-categories{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;gap:6px!important;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;padding-inline:0!important}
  .gallery-categories::-webkit-scrollbar,.gallery-types::-webkit-scrollbar{display:none}
  .gallery-categories>a{flex:0 0 auto;white-space:nowrap;padding-inline:12px!important}
  .gallery-types{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;width:100%;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  .gallery-types a{flex:0 0 auto;white-space:nowrap}
  .gallery-pagination{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;gap:10px 14px!important}
  .gallery-pagination>div{grid-column:1/-1;order:1!important;width:100%;display:flex!important;justify-content:center!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none}
  .gallery-pagination .page-step{order:2;min-width:0!important;width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}
  .gallery-pagination .page-step:last-child{order:3}
  .gallery-pagination>div a{min-width:44px;flex:0 0 auto}
  .back-to-top{left:18px;right:auto;bottom:calc(18px + env(safe-area-inset-bottom));width:44px;height:44px;font-size:20px}

  .lightbox{height:100dvh!important;background:#090c0b!important;overscroll-behavior:none}
  .lightbox:fullscreen,.lightbox.is-fullscreen{width:100vw!important;height:100dvh!important;background:#090c0b!important}
  .lightbox[open]{grid-template-rows:auto minmax(0,1fr) auto!important}
  .lightbox-toolbar{padding:8px 10px!important;gap:8px!important;min-height:58px;background:#0b0e0d}
  .lightbox-toolbar>div{gap:6px!important}
  .lightbox-toolbar p{font-size:12px!important;white-space:nowrap}
  .lightbox button{min-height:42px!important;padding:7px 10px!important;font-size:12px!important}
  #lightbox-fullscreen{min-width:76px}
  #lightbox-zoom{min-width:68px}
  #lightbox-close{min-width:64px}
  .lightbox-stage{min-height:0!important;padding:0!important;touch-action:pan-y;overscroll-behavior:contain;background:#090c0b}
  .lightbox-stage>img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}
  .lightbox-stage.zoomed{display:block!important;overflow:auto!important;touch-action:pan-x pan-y!important;-webkit-overflow-scrolling:touch}
  .lightbox-stage.zoomed>img{width:auto;height:auto!important;max-width:none!important;max-height:none!important;object-fit:initial!important;display:block!important;margin:0!important}
  .lightbox-bottom{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:8px!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;min-height:82px;background:#0b0e0d}
  .lightbox-bottom button{width:44px;height:44px;padding:0!important;font-size:24px!important}
  .lightbox-description p{font-size:11px!important;line-height:1.35!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lightbox-description a{min-height:32px!important;font-size:11px!important;padding-top:3px}
}

/* V10.5 — robust mobile menu + compact gallery controls */
@media(max-width:700px){
  /* The mobile nav is moved to <body> while open so header blur cannot trap fixed positioning. */
  body.concept-modern nav.mobile-nav-panel{
    display:none;
    position:fixed!important;
    top:var(--mobile-nav-top,58px)!important;
    left:0!important;right:0!important;bottom:0!important;
    z-index:1000!important;
    margin:0!important;
    padding:clamp(24px,5vh,42px) 28px calc(28px + env(safe-area-inset-bottom))!important;
    background:rgba(9,13,12,.995)!important;
    border:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
  }
  body.concept-modern nav.mobile-nav-panel.open{display:flex!important}
  body.concept-modern nav.mobile-nav-panel a{
    display:flex!important;align-items:center;justify-content:center;
    width:min(100%,320px)!important;min-height:50px;
    padding:12px 10px!important;margin:0!important;
    color:#eef0eb!important;font-size:17px!important;line-height:1.2;text-align:center;
    border:0!important;border-bottom:1px solid rgba(255,255,255,.07)!important;
    text-decoration:none!important;
  }
  body.concept-modern nav.mobile-nav-panel a[aria-current]{color:var(--olive)!important}
  body.concept-modern nav.mobile-nav-panel .nav-contact{
    width:min(100%,190px)!important;margin-top:18px!important;
    border:1px solid rgba(208,217,161,.72)!important;
  }
  body.menu-open .site-header{
    background:#0b0f0e!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }

  /* Gallery controls: three compact, readable horizontal bands. */
  body.concept-modern .collection-switch,
  body.concept-modern .gallery-categories,
  body.concept-modern .gallery-types{
    display:flex!important;flex-wrap:nowrap!important;
    overflow-x:auto!important;overflow-y:hidden!important;
    width:100%;max-width:100%;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
  }
  body.concept-modern .collection-switch::-webkit-scrollbar,
  body.concept-modern .gallery-categories::-webkit-scrollbar,
  body.concept-modern .gallery-types::-webkit-scrollbar{display:none}
  body.concept-modern .collection-switch{
    gap:24px!important;margin:0!important;padding:0 0 10px!important;
    border-bottom:1px solid rgba(208,217,161,.10);
  }
  body.concept-modern .collection-switch a{
    flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;
    min-height:40px!important;padding:5px 0!important;font-size:15px!important;
  }
  body.concept-modern .gallery-categories{
    gap:24px!important;margin:0!important;padding:10px 0 9px!important;
    border:0!important;border-bottom:1px solid rgba(208,217,161,.10)!important;
  }
  body.concept-modern .gallery-categories>a{
    position:relative;flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;
    min-height:38px!important;padding:6px 0!important;gap:7px!important;
    border:0!important;text-decoration:none!important;
  }
  body.concept-modern .gallery-categories>a[aria-current]{
    color:var(--olive)!important;text-decoration:none!important;
  }
  body.concept-modern .gallery-categories>a[aria-current]::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--olive);
  }
  body.concept-modern .library-controls{
    gap:12px!important;padding:10px 0 18px!important;margin:0!important;
  }
  body.concept-modern .gallery-types{
    gap:22px!important;padding:0 0 4px!important;
  }
  body.concept-modern .gallery-types a{
    flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;
    min-height:40px!important;padding:5px 0!important;
  }
  body.concept-modern .library-tools{margin-top:2px!important}

  /* Pagination never renders a blank disabled rectangle. */
  body.concept-modern .gallery-pagination{
    display:grid!important;grid-template-columns:1fr 1fr!important;
    gap:10px 12px!important;margin-top:28px!important;padding-top:14px!important;
  }
  body.concept-modern .gallery-pagination .page-numbers{
    grid-column:1/-1!important;grid-row:1!important;
    width:100%;display:flex!important;align-items:center;justify-content:center!important;
    gap:4px!important;overflow-x:auto;scrollbar-width:none;
  }
  body.concept-modern .gallery-pagination .page-numbers::-webkit-scrollbar{display:none}
  body.concept-modern .gallery-pagination .page-step{
    min-width:0!important;width:100%!important;min-height:46px!important;
    display:flex!important;align-items:center;justify-content:center;
    border:1px solid rgba(208,217,161,.20)!important;
  }
  body.concept-modern .gallery-pagination .page-prev{grid-column:1;grid-row:2}
  body.concept-modern .gallery-pagination .page-next{grid-column:2;grid-row:2}
  body.concept-modern .gallery-pagination:not(.has-prev) .page-next{grid-column:1/-1}
  body.concept-modern .gallery-pagination:not(.has-next) .page-prev{grid-column:1/-1}
}

/* V10.6 — reliable gallery zoom + fullscreen viewer */
.lightbox.viewer-fullscreen[open]{display:block!important;overflow:hidden!important;background:#080b0a!important}
.lightbox.viewer-fullscreen .lightbox-stage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:0!important;background:#080b0a!important}
.lightbox.viewer-fullscreen .lightbox-toolbar{position:absolute!important;top:0!important;left:0!important;right:0!important;z-index:4!important;border-bottom:0!important;background:linear-gradient(180deg,rgba(5,8,7,.92),rgba(5,8,7,.58) 62%,transparent)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding-top:calc(12px + env(safe-area-inset-top))!important}
.lightbox.viewer-fullscreen .lightbox-bottom{position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:4!important;border-top:0!important;background:linear-gradient(0deg,rgba(5,8,7,.92),rgba(5,8,7,.60) 68%,transparent)!important;padding-bottom:calc(12px + env(safe-area-inset-bottom))!important}
.lightbox-stage{touch-action:manipulation}
.lightbox-stage.zoomed{display:block!important;overflow:auto!important;touch-action:pan-x pan-y pinch-zoom!important;overscroll-behavior:contain!important}
.lightbox-stage.zoomed>img{max-width:none!important;max-height:none!important;object-fit:fill!important;display:block!important}
#lightbox-fullscreen[aria-pressed="true"]{border-color:var(--olive)!important;color:var(--olive)!important}

@media(max-width:700px){
  .lightbox-stage{touch-action:manipulation!important}
  .lightbox-stage.zoomed{touch-action:pan-x pan-y pinch-zoom!important}
  .lightbox-stage.zoomed>img{max-width:none!important;max-height:none!important;object-fit:fill!important}
  .lightbox.viewer-fullscreen .lightbox-toolbar{padding:calc(8px + env(safe-area-inset-top)) 10px 8px!important}
  .lightbox.viewer-fullscreen .lightbox-bottom{padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important}
}


/* V10.7 — mobile horizontal navigation affordance */
@media(max-width:700px){
  body.concept-modern .mobile-scroll-nav{
    scroll-snap-type:x proximity;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    transition:-webkit-mask-image .18s ease,mask-image .18s ease;
  }
  body.concept-modern .mobile-scroll-nav.is-scrollable.can-scroll-right:not(.can-scroll-left){
    -webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 34px),transparent 100%);
    mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 34px),transparent 100%);
  }
  body.concept-modern .mobile-scroll-nav.is-scrollable.can-scroll-right{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M7 4l6 6-6 6' fill='none' stroke='%23d0d9a1' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 12px center;
    background-size:18px 18px;
  }
  body.concept-modern .mobile-scroll-nav.is-scrollable.can-scroll-left:not(.can-scroll-right){
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 34px,#000 100%);
    mask-image:linear-gradient(to right,transparent 0,#000 34px,#000 100%);
  }
  body.concept-modern .mobile-scroll-nav.is-scrollable.can-scroll-left.can-scroll-right{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 34px,#000 calc(100% - 34px),transparent 100%);
    mask-image:linear-gradient(to right,transparent 0,#000 34px,#000 calc(100% - 34px),transparent 100%);
  }
  body.concept-modern .mobile-scroll-nav>a{
    scroll-snap-align:center;
  }
  body.concept-modern .mobile-scroll-nav>a[aria-current]{
    scroll-snap-stop:normal;
  }
}


/* V10.8 — recognition, awards and press */
.home-recognition{padding-block:72px 78px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.recognition-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:60px;align-items:end;margin-bottom:32px}
.recognition-heading h2{font-size:clamp(36px,4.2vw,62px);line-height:1;letter-spacing:-.055em;margin-top:11px;max-width:800px}
.recognition-heading>div:last-child>p{font-size:14px;line-height:1.65;max-width:560px}
.recognition-heading .text-link{display:inline-block;margin-top:18px}
.recognition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.recognition-card{min-height:270px;padding:28px 28px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;background:rgba(255,255,255,.008)}
.recognition-card:hover{background:rgba(255,255,255,.018)}
.recognition-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.recognition-meta time{color:var(--olive)}
.recognition-card h3{font-size:clamp(21px,2vw,29px);line-height:1.14;margin-top:28px;max-width:600px}
.recognition-card>p:not(.recognition-meta){font-size:13px;line-height:1.65;margin-top:14px;max-width:630px}
.recognition-card>a,.recognition-card .recognition-links{margin-top:auto;padding-top:25px;font-size:12px}
.recognition-card>a,.recognition-links a{text-decoration:underline;text-underline-offset:6px}
.recognition-links{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:center}
.recognition-featured{background:rgba(182,197,140,.035)}
.about-recognition{padding-block:35px 68px}
.recognition-heading.compact{padding-top:30px;border-top:1px solid var(--line);margin-bottom:28px}
.recognition-heading.compact h2{font-size:clamp(34px,3.8vw,54px)}
.recognition-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.recognition-strip>a{display:grid;gap:5px;min-height:142px;padding:21px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.recognition-strip>a:hover{background:rgba(255,255,255,.018)}
.recognition-strip span{font-size:11px;color:var(--olive)}
.recognition-strip strong{font-size:17px;font-weight:520;line-height:1.25;letter-spacing:-.02em}
.recognition-strip small{align-self:end;color:var(--muted);font-size:11px;line-height:1.4}

.recognition-intro{padding-block:74px 70px;border-bottom:1px solid var(--line)}
.recognition-intro-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:70px;align-items:end;margin-top:12px}
.recognition-intro h1{font-size:clamp(56px,8vw,118px);line-height:.88;letter-spacing:-.072em;max-width:930px}
.recognition-intro h1 span{color:var(--olive)}
.recognition-intro .lede{font-size:clamp(18px,1.6vw,23px);margin:0;max-width:620px}
.recognition-note{font-size:13px;line-height:1.65;margin-top:20px;max-width:610px;padding-top:18px;border-top:1px solid var(--line)}
.recognition-section{padding-block:74px}
.recognition-section+.recognition-section{border-top:1px solid var(--line)}
.recognition-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:60px;align-items:end;margin-bottom:30px}
.recognition-section-head h2{font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.052em;margin-top:10px}
.recognition-section-head>p{font-size:14px;line-height:1.65;max-width:550px}
.recognition-timeline{border-top:1px solid var(--line)}
.recognition-timeline article{display:grid;grid-template-columns:90px 150px minmax(0,1fr);gap:25px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}
.recognition-year{font-size:13px;color:var(--olive)}
.recognition-kind{font-size:11px;line-height:1.4;text-transform:uppercase;letter-spacing:.075em;color:var(--muted)}
.recognition-copy h3{font-size:clamp(22px,2.2vw,31px);font-weight:480;line-height:1.15;letter-spacing:-.035em;max-width:860px}
.recognition-copy p{font-size:14px;line-height:1.68;max-width:810px;margin-top:12px}
.recognition-copy strong{color:var(--text);font-weight:520}
.recognition-copy>a,.recognition-copy .recognition-links{display:flex;margin-top:17px;font-size:12px}
.recognition-projects{padding-top:70px}
.recognition-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:65px;padding-block:70px;border-top:1px solid var(--line)}
.recognition-identity h2{font-size:clamp(38px,4.5vw,66px);line-height:1;letter-spacing:-.055em;margin-top:10px}
.recognition-identity>div:last-child>p{font-size:14px;line-height:1.7;max-width:660px}
.recognition-identity strong{color:var(--text);font-weight:520}
.recognition-identity .recognition-links{margin-top:22px;font-size:12px}
.site-footer .footer-links a[href="/recognition/"][aria-current]{color:var(--text);text-decoration:underline;text-underline-offset:5px}

@media(max-width:900px){
 .recognition-heading,.recognition-section-head,.recognition-intro-grid,.recognition-identity{grid-template-columns:1fr;gap:20px}
 .recognition-grid{grid-template-columns:1fr 1fr}
 .recognition-intro-grid{gap:32px}.recognition-intro h1{font-size:clamp(58px,11vw,90px)}
 .recognition-timeline article{grid-template-columns:70px 120px minmax(0,1fr);gap:18px}
}
@media(max-width:700px){
 .home-recognition{padding-block:48px 52px}.recognition-heading{margin-bottom:24px}.recognition-heading h2{font-size:39px}
 .recognition-grid{grid-template-columns:1fr}.recognition-card{min-height:0;padding:23px 20px}.recognition-card h3{margin-top:20px}.recognition-card>a,.recognition-card .recognition-links{margin-top:20px;padding-top:0}
 .about-recognition{padding-block:18px 50px}.recognition-heading.compact{padding-top:24px}.recognition-strip{grid-template-columns:1fr}.recognition-strip>a{min-height:118px}
 .recognition-intro{padding-block:45px 46px}.recognition-intro h1{font-size:clamp(50px,16vw,72px);line-height:.92}.recognition-intro-grid{gap:27px}
 .recognition-section{padding-block:50px}.recognition-section-head{margin-bottom:22px}.recognition-section-head h2{font-size:38px}
 .recognition-timeline article{grid-template-columns:62px minmax(0,1fr);gap:10px 14px;padding:25px 0}.recognition-kind{grid-column:2}.recognition-copy{grid-column:1/-1;padding-top:7px}.recognition-copy h3{font-size:25px}
 .recognition-identity{padding-block:50px}.recognition-identity h2{font-size:43px}
}
