@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--ink:#19322f;--muted:#61716e;--line:#dce5e2;--soft:#f1f6f3;--paper:#fbfcfb;--accent:#2f7067;--dark:#16302c;--white:#fff;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;line-height:1.65}a{color:inherit}.nav,.hero-grid,.two,.wrap,.contact-box,footer{width:min(calc(100% - 40px),var(--max));margin:auto}header{position:sticky;top:0;z-index:10;background:rgba(251,252,251,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,229,226,.8)}.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.04em;text-decoration:none}.links{display:flex;align-items:center;gap:27px;font-size:.92rem}.links a{text-decoration:none}.links a:hover{color:var(--accent)}.pill{border:1px solid var(--line);border-radius:999px;padding:10px 17px}.menu{display:none;border:0;background:none;font:inherit;font-weight:700}.hero{padding:82px 0 105px;background:linear-gradient(120deg,#fbfcfb,#f4f8f6)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center}.eyebrow{margin:0 0 14px;color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:700}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(3.4rem,6.8vw,6rem);margin:0;font-weight:800}h1 em{font-style:normal;color:var(--accent)}h2{font-size:clamp(2.15rem,4vw,3.5rem);margin:0}.lead{max-width:620px;color:var(--muted);font-size:1.16rem;margin:26px 0 0}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;padding:13px 21px;border-radius:999px;text-decoration:none;font-weight:700;background:#fff;border:1px solid var(--line)}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.note{color:var(--muted);font-size:.85rem;margin-top:20px}.portrait{position:relative;padding:0 30px 35px 35px}.hero-card{background:#fff;border:1px solid var(--line);border-radius:30px;min-height:380px;padding:48px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 28px 70px rgba(25,50,47,.10)}.hero-card span{color:var(--accent);font-size:.75rem;letter-spacing:.13em;font-weight:700}.hero-card strong{font:800 clamp(3rem,5vw,5rem) Manrope;letter-spacing:-.05em;margin:18px 0 8px}.hero-card p{font-size:1.1rem;color:var(--muted);margin:0}.hero-card small{color:var(--muted);margin-top:35px}.badge{position:absolute;left:0;bottom:0;background:var(--dark);color:white;border-radius:17px;padding:16px 18px;width:205px;box-shadow:0 14px 35px rgba(25,50,47,.15)}.badge b{display:block;font:800 1.25rem Manrope}.badge small{display:block;color:#c5d4d1;line-height:1.4;margin-top:3px}.section{padding:105px 0}.soft{background:var(--soft)}.two{display:grid;grid-template-columns:.84fr 1.16fr;gap:90px}.prose{max-width:650px;color:var(--muted);font-size:1.06rem}.prose p{margin:0 0 20px}.prose strong{color:var(--ink)}.heading{max-width:700px;margin-bottom:44px}.heading>p:last-child{color:var(--muted);margin-top:17px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{background:white;border:1px solid var(--line);border-radius:20px;padding:30px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.cards article:hover{transform:translateY(-3px);border-color:#cbdad6;box-shadow:0 14px 32px rgba(25,50,47,.07)}.cards .icon{display:flex;width:46px;height:46px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:14px;color:var(--accent);background:var(--soft)}.cards .icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.cards h3{font-size:1.45rem;margin:28px 0 12px}.cards p,.timeline p{margin:0;color:var(--muted)}.approach{background:#fff}.approach h2 em{font-style:normal;color:var(--accent)}.timeline{border-top:1px solid var(--line);padding:30px 0;display:grid;grid-template-columns:150px 1fr;gap:30px;border-bottom:1px solid var(--line)}.timeline>span{color:var(--accent);font-weight:700}.timeline h3{font-size:1.35rem;margin:0 0 8px}.education{border-top:1px solid var(--line)}.education>div{padding:30px 0;border-bottom:1px solid var(--line)}.education span{color:var(--accent);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.education h3{margin:8px 0 0;font-size:1.28rem}.contact{padding:85px 0 120px}.contact-box{background:var(--dark);color:#fff;border-radius:28px;padding:55px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.contact-box .eyebrow,.contact-links small{color:#9bc7be}.contact-box p:not(.eyebrow){color:#c6d2cf;max-width:510px}.contact-links{display:grid;gap:12px}.contact-links a{display:block;padding:17px 18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;text-decoration:none}.contact-links small{display:block;text-transform:uppercase;letter-spacing:.1em;margin-bottom:3px}footer{padding:30px 0;color:var(--muted);font-size:.86rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}footer b{color:var(--ink)}@media(max-width:820px){.nav,.hero-grid,.two,.wrap,.contact-box,footer{width:min(calc(100% - 28px),var(--max))}.nav{min-height:68px}.menu{display:block;cursor:pointer}.links{display:none;position:absolute;left:14px;right:14px;top:62px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 30px rgba(25,50,47,.08)}.links.open{display:flex}.links a{padding:13px 14px}.pill{border:0}.hero{padding:58px 0 75px}.hero-grid,.two,.contact-box{grid-template-columns:1fr;gap:42px}.portrait{padding:0 20px 35px}.hero-card{min-height:300px;padding:34px}.section{padding:75px 0}.cards{grid-template-columns:1fr}.cards article:hover{transform:none}.timeline{grid-template-columns:1fr;gap:7px}.contact-box{padding:32px 24px}footer{flex-direction:column;align-items:flex-start}}
