:root{--ink:#17181c;--muted:#5e6675;--line:#d8dde6;--paper:#f7f3eb;--white:#fff;--green:#1f5f50;--coral:#c95f43;--gold:#b7842f;--shadow:0 18px 50px rgba(23,24,28,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(20px,5vw,72px);border-bottom:1px solid rgba(23,24,28,.08);background:hsla(40,43%,95%,.88);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800}.brand img{display:block}nav{display:flex;align-items:center;gap:clamp(12px,3vw,30px);color:var(--muted);font-size:15px}nav a:hover{color:var(--ink)}.hero{min-height:calc(100vh - 73px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);align-items:center;grid-gap:clamp(32px,7vw,96px);gap:clamp(32px,7vw,96px);padding:clamp(52px,8vw,112px) clamp(20px,5vw,72px) clamp(42px,7vw,84px)}.hero-copy{max-width:780px}.eyebrow,.section-kicker{margin:0 0 12px;color:var(--coral);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:anywhere}h1{font-size:clamp(64px,12vw,152px);font-weight:700;line-height:.9}h1,h2{margin:0;font-family:Georgia,Times New Roman,serif;letter-spacing:0}h2{font-size:clamp(34px,5vw,66px);line-height:1}h3{margin:18px 0 10px;font-size:22px;line-height:1.2}.lead{max-width:700px;margin:28px 0 0;color:var(--muted);font-size:clamp(18px,2vw,24px)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid var(--ink);border-radius:4px;font-weight:800}.button.primary{background:var(--ink);color:var(--white)}.button.secondary{background:transparent}.portrait{margin:0;justify-self:center;width:min(100%,390px);aspect-ratio:4/5;display:grid;place-items:center;padding:34px;background:linear-gradient(135deg,rgba(31,95,80,.1),rgba(201,95,67,.12)),var(--white);border:1px solid rgba(23,24,28,.1);box-shadow:var(--shadow)}.portrait img{width:min(74%,250px);height:auto}.portrait figcaption{align-self:end;color:var(--muted);font-size:14px;font-weight:700;text-align:center}.intro-band,.quote-band{background:var(--ink);color:var(--white)}.section-inner{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:clamp(64px,9vw,112px) 0}.two-column{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1fr);grid-gap:clamp(28px,6vw,80px);gap:clamp(28px,6vw,80px)}.body-text{color:hsla(0,0%,100%,.76);font-size:18px}.body-text p:first-child,.contact-section p{margin-top:0}.focus-section{padding-bottom:clamp(58px,8vw,96px)}.section-heading{max-width:720px;margin-bottom:34px}.focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.focus-grid article{min-height:260px;padding:28px;border:1px solid rgba(23,24,28,.11);border-radius:8px;background:hsla(0,0%,100%,.58)}.contact-section p,.focus-grid p{color:var(--muted)}.card-number{color:var(--gold);font-size:14px;font-weight:900}.quote-band{padding:clamp(56px,8vw,104px) 20px}blockquote{width:min(980px,100%);margin:0 auto;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,5vw,72px);line-height:1.08;text-align:center}.contact-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:center;grid-gap:30px;gap:30px}.contact-card{display:grid;grid-gap:8px;gap:8px;padding:28px;border:1px solid rgba(23,24,28,.14);border-radius:8px;background:var(--white);box-shadow:0 12px 34px rgba(23,24,28,.08)}.contact-card span{color:var(--coral);font-weight:800}.contact-card strong{font-size:22px;overflow-wrap:anywhere}footer{padding:28px 20px 36px;border-top:1px solid rgba(23,24,28,.1);color:var(--muted);text-align:center}@media (max-width:820px){.site-header{align-items:flex-start;flex-direction:column;gap:12px}.contact-section,.hero,.two-column{grid-template-columns:1fr}.hero{min-height:auto}.portrait{justify-self:stretch;max-width:440px}.focus-grid{grid-template-columns:1fr}}@media (max-width:520px){nav{width:100%;justify-content:space-between}h1{font-size:58px}.button{width:100%}.portrait{aspect-ratio:1/1}}