:root{--ink:#102432;--navy:#0b1d2a;--paper:#f5f1e8;--white:#fff;--muted:#60717b;--gold:#c9924a;--line:rgba(16,36,50,.14);--serif:"Manrope",sans-serif;--sans:"DM Sans",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}
a{color:inherit}
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:99}
.site-header{height:86px;max-width:1440px;margin:auto;padding:0 clamp(1.2rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-family:var(--serif);font-weight:700;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;font-size:.75rem;letter-spacing:.08em}
nav{display:flex;align-items:center;gap:2.1rem}nav a{text-decoration:none;font-size:.88rem;font-weight:600}nav a:hover,.text-link:hover,.linkedin-link:hover{color:#9a6529}.nav-cta{border:1px solid var(--ink);padding:.65rem 1rem}
.menu-button{display:none;background:none;border:1px solid var(--ink);padding:.55rem .8rem}
.hero{max-width:1440px;margin:auto;min-height:720px;padding:clamp(5rem,9vw,9rem) clamp(1.2rem,7vw,7rem);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:clamp(3rem,8vw,8rem);align-items:center}
.eyebrow{margin:0 0 1.5rem;color:#966124;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700}
h1,h2,h3{font-family:var(--serif);margin-top:0;line-height:1.08;letter-spacing:-.045em}
h1{font-size:clamp(3.3rem,6.7vw,7rem);max-width:950px;margin-bottom:2rem}h2{font-size:clamp(2.25rem,4.5vw,4.7rem);margin-bottom:1.4rem}h3{font-size:1.25rem;letter-spacing:-.02em}
.hero-lede{font-size:clamp(1.08rem,1.8vw,1.35rem);max-width:690px;color:#435762}
.hero-actions,.contact-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:2.4rem}.button{display:inline-flex;gap:1rem;align-items:center;justify-content:center;padding:1rem 1.35rem;text-decoration:none;font-weight:600;font-size:.92rem;transition:.2s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--navy);color:#fff}.button-secondary{border:1px solid var(--ink)}
.hero-card{background:var(--navy);color:white;min-height:500px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;box-shadow:0 28px 70px rgba(11,29,42,.18)}
.portrait{position:relative;min-height:350px;background:var(--navy);overflow:hidden}.portrait img{display:block;width:100%;height:350px;object-fit:cover;object-position:center 36%}
.profile-caption{padding:2rem}.profile-caption p{margin:.2rem 0;color:#b9c5ca}.profile-caption .profile-name{color:#fff;font-family:var(--serif);font-size:1.25rem;font-weight:700}
.proof{background:var(--white);display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.proof div{padding:2rem clamp(1rem,4vw,4rem);border-right:1px solid var(--line)}.proof div:last-child{border:0}.proof strong{display:block;font:700 2rem var(--serif);letter-spacing:-.05em}.proof span{color:var(--muted);font-size:.84rem}
.section{max-width:1440px;margin:auto;padding:clamp(5rem,9vw,9rem) clamp(1.2rem,7vw,7rem)}.section-heading{max-width:810px;margin-bottom:4.2rem}.section-heading>p:last-child{max-width:620px;color:var(--muted);font-size:1.1rem}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:2.3rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:270px}.service-grid article>span{font-size:.72rem;color:#a57338}.service-grid h3{margin:3.5rem 0 1rem}.service-grid p{color:var(--muted);font-size:.94rem}
.experience{max-width:none;background:var(--navy);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(4rem,10vw,10rem);padding-inline:max(calc((100vw - 1440px)/2 + 7rem),7vw)}.experience-copy>p:not(.eyebrow){color:#b4c1c7;max-width:680px}.text-link{display:inline-block;color:#fff;text-decoration:none;border-bottom:1px solid var(--gold);margin-top:1rem;font-weight:600}
.track-record{border-top:1px solid rgba(255,255,255,.2)}.track-label{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:#aebcc3;margin:1.3rem 0}.value-item{border-top:1px solid rgba(255,255,255,.13);padding:1.35rem 0}.value-item h3{font:600 1.25rem var(--serif);color:#e5b370;margin:0 0 .45rem}.value-item p{color:#d6dfe2;margin:0;line-height:1.65}
.approach{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem)}.steps{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.steps li{display:grid;grid-template-columns:70px 1fr;gap:1rem;padding:2rem 0;border-bottom:1px solid var(--line)}.steps li>span{color:#a57338;font-size:.75rem}.steps h3{margin-bottom:.55rem}.steps p{margin:0;color:var(--muted)}
.contact{background:#c68d45;color:#142733;padding:clamp(5rem,9vw,8rem) max(calc((100vw - 1440px)/2 + 7rem),7vw)}.contact .eyebrow{color:#533416}.contact h2{max-width:900px}.contact>p:not(.eyebrow){max-width:640px}.button-light{background:#fff}.linkedin-link{font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink)}
footer{max-width:1440px;margin:auto;padding:2.2rem clamp(1.2rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;font-size:.8rem;color:var(--muted)}
@media(max-width:900px){.menu-button{display:block}nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:1.5rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);z-index:10}nav.open{display:flex}.hero{grid-template-columns:1fr;min-height:auto}.hero-card{min-height:460px}.proof{grid-template-columns:repeat(2,1fr)}.proof div:nth-child(2){border-right:0}.service-grid{grid-template-columns:repeat(2,1fr)}.experience,.approach{grid-template-columns:1fr}.experience{padding-inline:7vw}.contact{padding-inline:7vw}}
@media(max-width:600px){body{font-size:16px}.site-header{height:72px}.brand>span:last-child{font-size:.92rem}nav{top:72px}.hero{padding-top:4.5rem}.hero-card{min-height:400px}.portrait{min-height:275px}.portrait img{height:275px;object-position:center 34%}.proof{grid-template-columns:1fr 1fr}.proof div{padding:1.4rem}.proof strong{font-size:1.55rem}.service-grid{grid-template-columns:1fr}.service-grid article{min-height:230px}.service-grid h3{margin-top:2.5rem}.value-item h3{font-size:1.2rem}footer{align-items:flex-start;gap:1rem;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
