/* Section navigation and the expanded leadership story. */
.section-rail{position:sticky;top:90px;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}
.section-nav{display:flex;align-items:center;justify-content:flex-start;gap:32px;max-width:1280px;width:calc(100% - 112px);margin:auto;padding:13px 0;font-size:11px;overflow-x:auto;scrollbar-width:thin}
.section-nav>a{display:flex;gap:9px;align-items:center;padding:4px 0;white-space:nowrap}
.section-nav>a>span{font:8px var(--mono);color:#8a907e}
.section-nav>a:hover,.section-nav>a.is-active{color:#12649a}
.section-nav>a.is-active>span{color:#12649a}
html{scroll-padding-top:165px}
.anchor-alias{position:absolute;top:0}
.work-section{position:relative}
.past-section{padding-top:55px;padding-bottom:58px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.career-card>.eyebrow{font-size:8px;color:var(--muted);margin-top:20px}
.career-card h3{font-size:25px;letter-spacing:-.035em;line-height:1.2;margin-top:10px}
.career-card h3 a:hover{color:#12649a}
.career-card>p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:15px}
.career-card .archive-visual img{object-fit:contain}
.selected-section .work-card:first-child .card-visual img{width:82%;height:77%;object-fit:cover;box-shadow:0 9px 22px #2529211c}
.strategy-callout{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-block:1px solid #c8cebc;padding:29px 0;margin-top:36px}
.strategy-callout .eyebrow{font-size:8px;color:var(--muted)}
.strategy-callout h3{font-size:35px;margin-top:13px;line-height:1.12}
.strategy-callout>p{font-size:14px;color:var(--muted);line-height:1.9;max-width:480px;align-self:center}
.hero-image-link:focus-visible{outline-offset:7px}
.recognition-art .world-window>img{object-fit:contain;background:#1265a0}
.recognition-art .agent-window img{object-fit:contain;background:#07101f}
.recognition-art .agent-window{width:77%;top:251px;left:0}
.recognition-art .agent-window img{height:188px}
.recognition-art .maker-stamp{right:-13px;top:330px;width:110px;height:116px;font-size:24px;padding:13px}
.recognition-art .maker-stamp>span:not(.stamp-arrow){font-size:27px}
.recognition-art .art-note{top:470px;left:35%}
@media(min-width:1200px){
 .hero{padding-top:65px;column-gap:25px}
 .hero h1{font-size:clamp(52px,5.2vw,78px)}
 .hero-art{height:490px}
 .hero-lead{font-size:22px}
 .hero-description{max-width:425px}
 .hero-actions{gap:22px}
 .hero-actions .button{font-size:12px;padding-inline:17px;gap:24px}
 .container{width:min(1280px,calc(100% - 96px))}
}
@media(min-width:1500px){.recognition-art .agent-window{top:270px}.recognition-art .agent-window img{height:200px}.recognition-art .art-note{top:488px}.recognition-art .maker-stamp{top:347px}}
@media(max-width:1199px){.hero{padding-top:44px}.hero-art{margin-top:10px}.recognition-art .agent-window{top:225px}.recognition-art .agent-window img{height:161px}.recognition-art .maker-stamp{top:295px}.recognition-art .art-note{top:435px}}
@media(max-width:800px){.section-rail{top:76px}.section-nav{width:calc(100% - 48px);font-size:10px;gap:24px;padding-block:11px}.section-nav>a{gap:7px}.section-nav>a>span{font-size:7px}.hero-art{margin-top:30px}.recognition-art .agent-window{top:230px;width:75%}.recognition-art .agent-window img{height:180px}.recognition-art .maker-stamp{top:320px;right:0}.recognition-art .art-note{top:448px}.career-grid{gap:20px}.career-card h3{font-size:21px}.career-card>p{font-size:11px}.career-card>.eyebrow{font-size:7px}.strategy-callout{gap:30px}.strategy-callout h3{font-size:30px}.strategy-callout>p{font-size:13px}}
@media(max-width:560px){
 .nav-wrap{height:auto;min-height:72px;flex-wrap:wrap;gap:13px;padding-block:16px 12px}
 .menu-toggle{display:none}
 .site-header #navigation{display:flex;position:static;width:100%;padding:0;background:transparent;box-shadow:none;border:0;flex-direction:row;align-items:center;justify-content:flex-start;gap:24px;font-size:10px}
 .site-header #navigation>a{padding:5px 0}
 .site-header #navigation>.nav-contact{margin:0 0 0 auto;padding:7px 10px;gap:12px;justify-content:space-between}
 .section-rail{top:111px}
 .section-nav{width:calc(100% - 40px);gap:22px;padding:11px 0}
 .section-nav>a{font-size:10px;gap:6px;padding:4px 0}
 html{scroll-padding-top:178px}
 .hero{padding-top:30px}
 .hero-art{height:365px}
 .recognition-art .agent-window{top:178px;width:79%}
 .recognition-art .agent-window img{height:132px}
 .recognition-art .maker-stamp{top:229px;width:83px;height:91px;font-size:18px;padding:10px;right:-2px}
 .recognition-art .maker-stamp>span:not(.stamp-arrow){font-size:21px}
 .recognition-art .art-note{top:333px;font-size:11px;left:32%}
 .career-grid{grid-template-columns:1fr;gap:33px}
 .career-card>.eyebrow{font-size:8px;margin-top:17px}
 .career-card h3{font-size:26px}
 .career-card>p{font-size:13px;margin-top:12px}
 .past-section{padding-top:42px;padding-bottom:40px}
 .strategy-callout{grid-template-columns:1fr;gap:20px;padding:25px 0;margin-top:26px}
 .strategy-callout h3{font-size:32px}
 .strategy-callout>p{font-size:13px}
}
@media print{body{padding-left:0}.section-rail{display:none}}

/* Full project collections and three equal-weight leadership introductions. */
.availability{align-items:flex-start}
.availability-label{padding-top:4px}
.availability .availability-intro{font-size:14px;color:var(--ink);line-height:1.5;margin:0 0 9px;letter-spacing:-.015em}
.availability-copy{min-width:0}
.availability-copy>p:last-child{margin-top:0;line-height:1.9}
.case-story p+p{margin-top:16px}
.archive-visual img.project-screenshot{object-fit:contain;background:#20241f}
.archive-visual:has(.box-cover),.archive-visual:has(.box-cover-row){background:#11131b}
.archive-visual img.box-cover{object-fit:contain;padding:9px;background:#0b0b0c}
.box-cover-row{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;padding:10px}
.archive-visual .box-cover-row img{width:calc((100% - 12px)/3);height:100%;min-width:0;object-fit:contain;flex:1}

/* Blue accents, an optional workspace, and the final contact form. */
nav .resume-nav{font-weight:600;text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:6px}
.maker-stamp{color:#fff}
.contact-section{background:#126ba5;color:#f5fbff}
.contact-section .status-dot{background:#c0eaff}
.contact-section .email-link{border-color:currentColor}
.contact-bottom{border-top-color:#ffffff45}
.workspace-section{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding:20px 0 75px}
.workspace-preview{position:relative;background:#e3e8e7;border:1px solid var(--line);overflow:hidden}
.workspace-preview img{width:100%;aspect-ratio:1.25;object-fit:cover}
.workspace-preview>span{position:absolute;bottom:13px;left:13px;background:var(--paper);font:8px var(--mono);padding:7px 10px}
.workspace-copy h2{font-size:clamp(34px,3.8vw,49px);margin-top:20px}
.workspace-copy p{font-size:13px;color:var(--muted);line-height:1.85;margin-top:20px;max-width:410px}
.workspace-copy .button{margin-top:26px}
#workspace-dialog{width:min(1400px,94vw);max-width:none;height:min(890px,92vh);max-height:none;border:1px solid #5b7d96;background:#101c2b;color:#edf6ff;padding:0;overflow:hidden}
#workspace-dialog::backdrop{background:#091724d9;backdrop-filter:blur(5px)}
.workspace-dialog-header{height:53px;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid #385267}
.workspace-dialog-header h2{font-size:15px;letter-spacing:-.02em}
.workspace-close{background:none;border:1px solid #63859f;color:#edf6ff;padding:6px 12px;font-size:12px;cursor:pointer}
.workspace-close:hover{background:#136da7}
.workspace-frame{height:calc(100% - 53px)}
.workspace-frame iframe{width:100%;height:100%;border:0;display:block}
.contact-form-section{padding-top:50px;padding-bottom:55px}
.contact-form-section>div>h2{font-size:clamp(49px,6.2vw,83px)}
.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:75px;border-top:1px solid #ffffff50;margin-top:35px;padding-top:35px}
.contact-intro h3{font-size:27px;line-height:1.2;letter-spacing:-.035em}
.contact-intro p{font-size:14px;line-height:1.9;margin-top:20px;max-width:350px;color:#e0f1fc}
.contact-resume,.contact-email{font-size:13px;text-decoration:underline;text-underline-offset:5px;display:block;margin-top:24px}
.contact-email{margin-top:16px}
#contact-form label{display:block;font-size:12px;line-height:1.6;font-weight:600}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:18px}
#contact-form input,#contact-form textarea{display:block;width:100%;border:1px solid #9dcde9;background:#f8fcff;color:#202d37;font:14px var(--sans);padding:12px 13px;border-radius:0;margin-top:7px;min-width:0}
#contact-form textarea{resize:vertical;min-height:120px}
#contact-form .contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#contact-form .button{margin-top:20px;cursor:pointer;background:#f5fbff;color:#115c8b;border-color:#f5fbff}
#contact-form .button:hover{background:#d4efff}
#contact-form .button:disabled{cursor:wait;opacity:.65}
.contact-help,.contact-status{font-size:11px;line-height:1.8;margin-top:13px;color:#e0f1fc}
.contact-status:empty{display:none}
.contact-alternative{font-size:11px;text-decoration:underline;text-underline-offset:4px;display:inline-block;margin-top:15px}
.contact-form-section a:focus-visible,.contact-form-section button:focus-visible,.contact-form-section input:focus-visible,.contact-form-section textarea:focus-visible{outline-color:#d0efff}
@media(max-width:800px){.workspace-section{gap:35px;padding-bottom:55px}.contact-layout{gap:35px}.contact-intro p{font-size:13px}.contact-fields{grid-template-columns:1fr;gap:15px}.workspace-copy h2{font-size:34px}}
@media(max-width:560px){.site-header #navigation{gap:14px;font-size:9px}.site-header #navigation>.nav-contact{gap:8px;padding-inline:9px}.workspace-section{grid-template-columns:1fr;gap:27px;padding:0 0 45px}.workspace-preview img{aspect-ratio:1.5}.workspace-copy h2{font-size:35px;margin-top:14px}.workspace-copy p{margin-top:16px}.workspace-copy .button{margin-top:22px}.contact-form-section{padding:35px 0}.contact-layout{grid-template-columns:1fr;gap:30px;margin-top:25px;padding-top:25px}.contact-intro h3{font-size:25px}.contact-intro p{font-size:13px;margin-top:15px}.contact-fields{grid-template-columns:1fr;gap:15px}.contact-resume{margin-top:20px}#workspace-dialog{width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0}.workspace-dialog-header{padding-inline:14px}.workspace-dialog-header h2{font-size:13px}}
.complete-career-grid .archive-card h3,.complete-project-grid .archive-card h3{font-size:23px;line-height:1.2;letter-spacing:-.035em;margin-top:10px}
.complete-career-grid .archive-card h3 a:hover,.complete-project-grid .archive-card h3 a:hover{color:#12649a}
.project-collection{margin-top:55px;border-top:1px solid var(--line);padding-top:30px}
.collection-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:28px}
.collection-heading h3{font-size:29px;line-height:1.2}
.collection-heading p{font-size:12px;color:var(--muted)}
.leadership-rows{margin-top:16px}
.leadership-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:34px 0;border-bottom:1px solid #c8cebc}
.leadership-row h2,.leadership-row h3{font-size:clamp(30px,3vw,42px);font-weight:500;line-height:1.12;letter-spacing:-.055em;margin:0}
.leadership-row p{font-size:14px;line-height:1.9;color:var(--muted);max-width:500px;margin:0}
.leadership-row p+p{margin-top:14px}
@media(max-width:800px){.leadership-row{gap:30px}.leadership-row p{font-size:13px}.collection-heading{display:block}.collection-heading p{margin-top:12px}}
@media(max-width:560px){.leadership-row{grid-template-columns:1fr;gap:20px;padding:27px 0}.leadership-row h2,.leadership-row h3{font-size:32px}.leadership-row p{font-size:13px}.complete-career-grid .archive-card h3,.complete-project-grid .archive-card h3{font-size:25px}.project-collection{margin-top:35px;padding-top:26px}}

/* Project stories share the hiring portfolio design. */
.project-main-art{background:#e8eadf;padding:24px}.project-main-art>img{width:100%;max-height:520px;object-fit:contain}.project-main-art .box-cover-row{min-height:320px;justify-content:center;gap:24px}.project-main-art .box-cover-row img{max-width:30%;max-height:430px;object-fit:contain}
.project-detail{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:70px;margin-top:48px;border-top:1px solid var(--line);padding-top:35px}.project-story{max-width:780px;overflow-wrap:anywhere}.project-story p,.project-story li{font-size:15px;line-height:1.85;color:var(--muted)}.project-story p+p{margin-top:18px}.project-story h2,.project-story h3{font-size:26px;line-height:1.25;margin:30px 0 14px;letter-spacing:-.025em}.project-story h2:first-child,.project-story h3:first-child{margin-top:0}.project-story ul,.project-story ol{padding-left:24px;margin:16px 0}.project-story a,.image-credit a{text-decoration:underline;text-underline-offset:4px}.project-story img{max-width:100%;height:auto}.project-capabilities{border-left:1px solid var(--line);padding-left:26px}.project-capabilities h2{font-size:19px;margin-bottom:18px}.project-capabilities ul{list-style:none;padding:0}.project-capabilities li{font:10px var(--mono);line-height:1.8;padding:9px 0;border-bottom:1px solid var(--line)}.project-film{margin-top:42px;border-top:1px solid var(--line);padding-top:28px}.project-film h2{font-size:25px;margin-bottom:18px}.film-stage{margin-top:18px;aspect-ratio:16/9;background:#111}.film-stage iframe,.film-stage video{width:100%;height:100%;border:0}.case-outlinks{display:flex;flex-wrap:wrap;gap:12px}.case-gallery img{max-height:600px;object-fit:contain;background:#e8eadf}.case-intro>div p{overflow-wrap:anywhere}
@media(max-width:800px){.project-detail{grid-template-columns:1fr;gap:30px}.project-capabilities{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.project-capabilities ul{display:flex;gap:10px 22px;flex-wrap:wrap}.project-main-art{padding:14px}.project-main-art .box-cover-row{min-height:160px;gap:10px}}
@media(max-width:560px){.project-story p,.project-story li{font-size:13px}.project-story h2,.project-story h3{font-size:23px}.project-detail{margin-top:30px;padding-top:25px}.project-main-art .box-cover-row img{max-height:260px}}

.music-subheading{margin-top:58px}

.email-options{margin-top:15px;font-size:12px;line-height:1.8}.email-options summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;width:fit-content}.email-options[open] summary{margin-bottom:12px}.email-options-actions{display:flex;flex-wrap:wrap;gap:12px 22px;margin:10px 0}.email-options-actions a,.email-options-actions button{text-decoration:underline;text-underline-offset:4px;font:inherit;color:inherit}.email-options-actions button{border:0;padding:0;background:none;cursor:pointer}.email-options #email-address{overflow-wrap:anywhere;font-size:14px}.email-options #email-option-status{font-size:11px;color:#e0f1fc;margin:10px 0 0}

/* Accessible, searchable resume content alongside the supplied PDF. */
.resume-location{margin:18px 0 10px;font-size:14px;color:var(--muted)}.resume-downloads{display:flex;align-items:center;flex-wrap:wrap;gap:18px 25px;margin:26px 0 38px;font-size:12px}.resume-downloads>a:not(.button){text-decoration:underline;text-underline-offset:4px}.resume-readable{max-width:900px}.resume-text-section{border-top:1px solid var(--line);padding:26px 0 12px}.resume-text-section h2{font-size:28px;line-height:1.25;margin:0 0 20px}.resume-text-section p,.resume-text-section li{font-size:14px;line-height:1.85;color:var(--muted);overflow-wrap:anywhere}.resume-text-section p{margin:12px 0}.resume-role{margin:27px 0}.resume-role h3{font-size:20px;line-height:1.35}.resume-role ul{padding-left:22px;margin-top:14px}.resume-role li+li{margin-top:10px}.resume-role .resume-role-dates{font:11px var(--mono);margin:10px 0}.resume-html-link{display:block;width:fit-content;font-size:12px;margin-top:20px;text-decoration:underline;text-underline-offset:4px}.contact-intro .resume-html-link+.contact-resume{margin-top:13px}@media(max-width:560px){.resume-text-section h2{font-size:25px}.resume-role h3{font-size:18px}.resume-text-section p,.resume-text-section li{font-size:13px}.resume-downloads{gap:16px}.resume-location{font-size:12px}}
