/* V2.1 — a coherent palette, distinct editorial compositions. */
:root{--paper:#f2f0e8;--ink:#252b29;--muted:#5d635c;--olive:#5f6b51;--olive-display:#697459;--sage:#e7eadb;--forest:#293d33;--line:#cbcfc1;--focus:#4e613e;--lime:var(--sage);--surface:var(--paper);--surface-secondary:var(--sage);--text-primary:var(--ink);--text-secondary:var(--muted);--accent:var(--olive);--button-bg:var(--ink);--button-hover:var(--forest);--border:var(--line)}
.button{background:var(--button-bg);min-height:48px}.button:hover{background:var(--button-hover);transform:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:5px}.dark a:focus-visible{outline-color:var(--paper)}.skip:focus{z-index:100}.text-link{font-size:13px;min-height:42px}.site-footer{display:grid;grid-template-columns:1fr 1fr;gap:35px;background:var(--sage);padding:38px 5% 22px;color:var(--ink)}.footer-name{font:24px Georgia}.footer-identity p{font-size:12px;margin:8px 0 0;letter-spacing:.5px}.site-footer .footer-links{justify-content:flex-end;align-content:start;gap:18px 25px;font-size:12px}.footer-links a{padding:6px 0}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #bcc3b0;padding-top:18px;font-size:11px;color:var(--muted)}
/* Landing: portrait, positioning and one clear invitation. */
.landing .portrait-hero{min-height:0;padding:38px 0 24px;gap:26px 6%}.landing .portrait-frame{max-height:660px;height:64svh;min-height:460px;aspect-ratio:auto}.landing .portrait-hero h1{font-size:clamp(52px,5.3vw,82px);margin-bottom:25px}.landing .hero-description{font-size:17px;line-height:1.75;max-width:470px}.landing .hero-roles{font-size:11px;letter-spacing:.6px;margin-top:24px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:24px}.hero-geography{font-size:12px;line-height:1.8;max-width:430px;color:var(--muted);margin:25px 0 0}.landing .hero-portrait figcaption{font-size:9px}.landing-signoff{padding-top:18px}.landing .site-footer{display:flex;justify-content:space-between;background:transparent;padding:16px 5% 22px;align-items:center}.landing .footer-identity{display:none}.landing .footer-bottom{border:0;padding:0;font-size:10px;order:-1}.landing .footer-bottom span:last-child{display:none}.landing .site-footer .footer-links{font-size:11px}.landing main{min-height:0}

.cta{background:var(--sage);border-top:1px solid var(--line);padding:32px 5%}.cta h2{font-size:32px}.dark em{color:#c0ccaf}

@media(max-width:1050px) and (min-width:801px){header nav{gap:17px}.landing .portrait-hero h1{font-size:55px}.landing .portrait-frame{height:600px}}
@media(max-width:800px){header{position:relative;z-index:20}.menu{min-width:62px;min-height:44px;padding:0}.brand{font-size:15px}header nav{top:100%;padding:20px 6%;gap:12px;box-shadow:0 12px 18px #252b290d}header nav a{padding:8px 0;min-height:44px}.wrap{padding:0 6%}.site-footer{grid-template-columns:1fr;padding:30px 6% 22px;gap:22px}.site-footer .footer-links{justify-content:flex-start;gap:12px 20px}.footer-bottom{flex-direction:column;gap:6px}.landing .portrait-hero{padding-top:30px;grid-template-columns:1fr;gap:22px}.landing .portrait-hero h1{font-size:clamp(40px,10.7vw,69px);line-height:1.09;grid-row:2;margin:0}.landing .portrait-frame{height:auto;min-height:0;max-height:none;aspect-ratio:1.05}.landing .hero-description{grid-row:4;margin:0;font-size:16px}.landing .hero-roles{grid-row:5;margin:0;font-size:10px}.hero-actions{grid-row:6;margin:0;gap:25px}.hero-geography{grid-row:7;margin:0;font-size:12px!important}.landing-signoff{grid-row:8}.landing .site-footer{display:grid;padding:10px 6% 20px;gap:12px}.landing .footer-bottom{order:2}.landing .hero-portrait figcaption{font-size:8px}.cta{padding:28px 6%}.cta h2{font-size:30px}}
@media(max-width:360px){.landing .portrait-hero h1{font-size:39px}.hero-actions{gap:20px}.landing .hero-roles{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.landing h1 em{color:var(--olive-display)}
