:root{--ink:#111;--muted:#666;--soft:#f4f3f0;--line:#dcdcd8;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure,dl,dd{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid #111;outline-offset:7px}::selection{color:white;background:#111}.shell{width:min(1280px,calc(100% - 8rem));margin-inline:auto}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;line-height:1.5;font-weight:600;color:var(--muted)}.skip{position:fixed;top:1rem;left:1rem;transform:translateY(-200%);padding:.75rem 1rem;background:#111;color:#fff;z-index:10}.skip:focus{transform:none}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:110px;border-bottom:1px solid var(--line)}.brand{font-weight:700;font-size:1rem;letter-spacing:-.025em;line-height:1.4}.brand span{display:block;font-size:.65rem;font-weight:400;letter-spacing:.11em;color:var(--muted);margin-top:.5rem}nav{display:flex;align-items:center;gap:2.5rem;font-size:.875rem}nav a{padding:.5rem 0}nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{display:flex;align-items:center;gap:1.5rem}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:5rem;align-items:center;padding-block:4rem 3.5rem}.hero h1{font-size:clamp(3rem,5.5vw,5.6rem);font-weight:500;letter-spacing:-.07em;line-height:1.025;margin:1.7rem 0 1.75rem}.hero h1>span{color:#777}.hero-description{max-width:27rem;font-size:1.125rem;line-height:1.6;color:#555}.button{margin-top:2rem;display:inline-flex;justify-content:space-between;align-items:center;gap:3rem;padding:.9rem 1.3rem;background:#111;color:#fff;font-size:.875rem;min-height:50px;transition:background .2s}.button:hover{background:#444}.button span{font-size:1.4rem;line-height:1}.hero figure{min-width:0;align-self:center}.hero img{display:block;width:100%;height:auto;aspect-ratio:1/1.13;object-fit:cover;object-position:center 38%}.hero figcaption{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;font-size:.75rem;line-height:1.6}.hero figcaption>span:last-child{text-align:right;color:var(--muted)}.company-line{padding:1.7rem 0;display:flex;justify-content:space-between;align-items:center;gap:2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.company-line>span{font-size:1.125rem;letter-spacing:-.035em;font-weight:700}.tm{font-size:.7rem;vertical-align:top;margin-left:.15rem}.company-line p{font-size:.75rem;color:var(--muted)}.mandates{padding-block:6rem}.section-head{display:grid;grid-template-columns:1.4fr 1fr;column-gap:4rem;align-items:end}.section-head>.eyebrow{grid-column:1/-1;margin-bottom:1.5rem}h2{font-size:clamp(2.75rem,4vw,4.25rem);font-weight:500;letter-spacing:-.06em;line-height:1.08}h2>span{color:#777}.section-intro{color:var(--muted);font-size:1.125rem;line-height:1.6;max-width:28rem}.offers{margin-top:3rem;border-bottom:1px solid #222}.offer{border-top:1px solid #222}.offer summary{display:grid;grid-template-columns:3.5rem 1fr 2rem;gap:1.5rem;align-items:center;list-style:none;cursor:pointer;padding:2rem 0}.offer summary::-webkit-details-marker{display:none}.offer-number{align-self:start;color:var(--muted);font-size:.875rem;padding-top:.55rem;font-variant-numeric:tabular-nums}.offer h3{font-size:clamp(1.7rem,2.6vw,2.5rem);font-weight:500;letter-spacing:-.045em;line-height:1.2}.offer summary p{color:var(--muted);font-size:1rem;margin-top:.7rem;line-height:1.6}.toggle{height:20px;width:20px;position:relative;justify-self:end}.toggle:before,.toggle:after{content:"";position:absolute;width:20px;height:1px;top:9px;left:0;background:#111}.toggle:after{transform:rotate(90deg);transition:transform .2s}.offer[open] .toggle:after{transform:rotate(0)}.offer summary:hover h3{color:#666}.offer-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:0 3.5rem 2.75rem 5rem}.offer-intro>p{font-size:1rem;line-height:1.75;max-width:31rem;color:#555}.offer-intro .roles{margin-top:1.5rem;font-size:.875rem;color:#111;line-height:1.8}.deliverables h4{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600}.deliverables ul{margin:.75rem 0 1.5rem;padding-left:1.1rem;color:#555;font-size:1rem;line-height:1.7}.deliverables li+li{margin-top:.5rem}.inline-link{font-size:.875rem;display:inline-flex;gap:1rem;align-items:center;border-bottom:1px solid #111;padding:.35rem 0}.inline-link:hover{color:#666}.inline-link span{font-size:1.3rem}.about{background:var(--soft);padding-block:6rem}.about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:6rem}.about h2{margin-top:2rem;font-size:clamp(3.1rem,5.3vw,5.25rem)}.about-role{font-size:.875rem;color:#555;margin-top:2rem}.bio{padding-top:3.1rem}.bio-lead{font-size:1.4rem;line-height:1.6;letter-spacing:-.025em}.bio>p+p{font-size:1rem;color:#606060;line-height:1.8;margin-top:1.5rem}.credentials{margin-top:2.5rem}.credentials>div{border-top:1px solid #ccc;display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;padding:1.3rem 0}.credentials dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#666;padding-top:.25rem}.credentials dd{font-size:1rem;font-weight:500;line-height:1.6}.credentials dd>span{display:block;font-size:.875rem;color:#666;font-weight:400;margin-top:.3rem}.contact{padding-block:6rem;display:grid;grid-template-columns:1fr 1.25fr;gap:6rem}.contact h2{margin-top:1.5rem;font-size:clamp(3.25rem,5vw,5rem)}.contact-copy{align-self:end;padding-bottom:.25rem}.contact-copy>p{font-size:1.3rem;max-width:27rem;line-height:1.5;letter-spacing:-.025em}.contact-copy>.contact-note{font-size:1rem;color:#666;margin-top:1rem;letter-spacing:0;max-width:30rem}.email{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;border-bottom:1px solid #111;padding:.65rem 0;font-size:clamp(.9rem,1.6vw,1.35rem);overflow-wrap:anywhere}.email span{font-size:1.5rem;flex:none}.email:hover{color:#666}footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid var(--line);padding-block:1.5rem;font-size:.75rem;color:#666}footer a{display:flex;gap:1.5rem;align-items:center}footer a span{font-size:1.5rem;color:#111}
@media(max-width:1100px){.shell{width:calc(100% - 5rem)}.hero{gap:3rem}.hero h1{font-size:clamp(3rem,5.4vw,5.6rem)}.offer-content{gap:2.5rem;padding-right:1rem}.about-grid,.contact{gap:3.5rem}.credentials>div{gap:1rem}}
@media(max-width:800px){.shell{width:calc(100% - 3rem)}.header-inner{min-height:94px;gap:1.5rem}.brand{font-size:.875rem}nav{gap:1.5rem}.hero{gap:2rem;padding-block:3rem}.hero h1{font-size:clamp(2.8rem,5.9vw,4.6rem)}.hero-description{font-size:1rem}.hero figcaption{display:block}.hero figcaption>span:last-child{display:block;text-align:left;margin-top:.4rem}.hero figcaption br{display:none}.section-head{gap:2rem}.section-intro{font-size:1rem}.mandates,.about,.contact{padding-block:4rem}.offer summary{grid-template-columns:2rem 1fr 1.5rem;gap:1rem}.offer-content{padding-left:3rem;gap:2rem}.about-grid,.contact{gap:2.5rem}.credentials>div{grid-template-columns:1fr;gap:.4rem}.bio-lead{font-size:1.25rem}.contact-copy>p{font-size:1.125rem}}
@media(max-width:600px){.shell{width:calc(100% - 2.5rem)}.header-inner{flex-wrap:wrap;gap:1.1rem;padding:1.3rem 0;min-height:0}.brand{font-size:.95rem}.brand span{font-size:.65rem;margin-top:.35rem}nav{width:100%;justify-content:space-between;font-size:.875rem;gap:1.2rem}.nav-contact{gap:.8rem}.hero{grid-template-columns:1fr;gap:2.5rem;padding-top:2.5rem}.hero h1{font-size:clamp(3rem,11.6vw,4.4rem);line-height:1.06;letter-spacing:-.06em;margin-top:1.25rem}.hero-description{font-size:1.125rem;max-width:27rem}.button{margin-top:1.5rem}.hero img{aspect-ratio:1/1;object-fit:cover}.hero figcaption{display:flex;font-size:.75rem}.hero figcaption>span:last-child{margin:0;text-align:right}.hero figcaption br{display:initial}.company-line{align-items:start;gap:1rem;flex-direction:column;padding:1.3rem 0}.company-line>span{font-size:1.1rem}.company-line p{font-size:.75rem}.mandates{padding-block:3.5rem}.section-head{grid-template-columns:1fr;gap:1.5rem}.section-head>.eyebrow{margin:0}h2{font-size:2.8rem;letter-spacing:-.05em}.section-intro{font-size:1rem}.offers{margin-top:2rem}.offer summary{grid-template-columns:1.4rem 1fr 1.25rem;gap:.75rem;padding:1.5rem 0}.offer-number{font-size:.75rem;padding-top:.4rem}.offer h3{font-size:1.75rem}.offer summary p{font-size:.875rem;line-height:1.6}.toggle,.toggle:before,.toggle:after{width:16px}.offer-content{grid-template-columns:1fr;padding:0 0 2rem 2.15rem;gap:1.5rem}.offer-intro .roles{margin-top:1rem}.offer-intro>p,.deliverables ul{font-size:1rem}.inline-link{font-size:.875rem;gap:.75rem}.about{padding-block:3.5rem}.about-grid{grid-template-columns:1fr;gap:2rem}.about h2{font-size:3.8rem;margin-top:1.5rem}.about-role{margin-top:1.5rem}.bio{padding:0}.bio-lead{font-size:1.3rem}.credentials>div{grid-template-columns:1fr 1.3fr;gap:1rem}.credentials dt{font-size:.75rem}.contact{grid-template-columns:1fr;gap:2rem;padding-block:3.5rem}.contact h2{font-size:3.8rem}.contact-copy>p{font-size:1.25rem}.email{font-size:clamp(.9rem,4.1vw,1.15rem);margin-top:1.5rem;gap:.75rem}footer{gap:1rem;font-size:.75rem}footer a{gap:.6rem}}
@media(max-width:350px){.shell{width:calc(100% - 2rem)}.hero h1{font-size:2.8rem}.hero figcaption{display:block}.hero figcaption>span:last-child{text-align:left;margin-top:.4rem}.offer h3{font-size:1.55rem}.credentials>div{grid-template-columns:1fr}.email{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.shell{width:100%}nav,.button,.toggle,footer a{display:none}.hero h1{font-size:3rem}.hero{gap:2rem}.mandates,.about,.contact{padding-block:2rem}.offer-content{display:grid!important}.about{background:white}.offer{break-inside:avoid}}

/* LinkedIn navigation */
.header-inner nav{flex-wrap:wrap}.linkedin-link{display:inline-flex;align-items:center;gap:.55rem;white-space:nowrap}.footer-links{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}footer{flex-wrap:wrap;row-gap:1rem}.footer-links a{font-size:.875rem}.footer-links .linkedin-link{gap:.55rem}@media(max-width:960px){.header-inner{flex-wrap:wrap;padding-block:1.3rem;gap:1rem}.header-inner nav{column-gap:1.5rem;row-gap:.25rem}}@media(max-width:600px){.header-inner nav{justify-content:space-between;column-gap:1rem}.footer-links{gap:1.5rem}}

/* Company context remains secondary to the personal profile and mandates. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.company-wordmark{font-size:1.125rem;letter-spacing:-.035em;font-weight:700}
.company-wordmark .external-arrow{display:inline-block;margin-left:.65rem;font-size:1.125rem;font-weight:400}
.company-wordmark:hover,.credentials a:hover{text-decoration:underline;text-underline-offset:5px}
/* Identical company cards: same logo size, spacing, type and link positions. */
.companies-section{padding-block:5rem;border-bottom:1px solid var(--line)}
.companies-heading h2{margin-top:1.5rem}
.companies-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:1.5rem;margin-top:3rem;align-items:stretch}
.company-card{min-width:0;padding:1.5rem;border:1px solid var(--line);display:flex;flex-direction:column;background:#fff}
.company-mark{display:block;width:72px;height:72px;object-fit:contain;flex:none;margin-bottom:1.5rem}
.company-card-heading{min-height:5.75rem}
.company-card h3{font-size:1.5rem;font-weight:500;line-height:1.2;letter-spacing:-.035em}
.company-role{font-size:.875rem;color:var(--muted);line-height:1.5;margin-top:.6rem}
.company-description{font-size:1rem;color:#555;line-height:1.75;margin-top:1rem}
.company-description p+p{margin-top:1rem}
.company-links{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:auto;padding-top:1.75rem}
.company-links .inline-link{min-height:44px}
.contact-copy{min-width:0}
@media(max-width:1000px){.companies-grid{grid-template-columns:1fr;gap:1.5rem}.company-card{padding:1.75rem}.company-card-heading{min-height:0}.company-mark{margin-bottom:1.25rem}}
@media(max-width:800px){.companies-section{padding-block:4rem}}
@media(max-width:600px){.companies-section{padding-block:3.5rem}.companies-grid{margin-top:2rem}.company-card{padding:1.5rem}.company-mark{width:56px;height:56px}.company-card h3{font-size:1.5rem}.header-inner nav{display:grid;grid-template-columns:repeat(3,max-content);justify-content:space-between;row-gap:.15rem}}
@media print{.companies-section{padding-block:2rem}.companies-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.company-card{break-inside:avoid;padding:1rem}.company-card h3{font-size:1.1rem}.company-mark{width:56px;height:56px}}

/* Vector arrows: consistent shapes across desktop and mobile. */
.ui-arrow{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.125em;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
