:root{--ink:#16332b;--muted:#44594f;--forest:#173d35;--paper:#faf8f0;--soft:#eaf0e7;--line:#d2dbd0;--gold:#e5b977}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:1.5rem}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 system-ui,sans-serif}
a{color:inherit;text-underline-offset:.22em}
a:focus-visible{outline:3px solid #906121;outline-offset:4px}
img{display:block;max-width:100%;height:auto}
.wrap{width:min(100% - 3rem,72rem);margin-inline:auto}
.skip{position:absolute;left:1rem;top:-6rem;background:white;padding:.6rem 1rem;z-index:2}
.skip:focus{top:1rem}
.site-header,.hero{background:#173d35;color:#fff}
.site-header .wrap,.hero .wrap{width:100%;max-width:1080px;padding-inline:28px}
.site-header .bar{min-height:0;padding-block:22px;gap:20px}
.bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:5rem}
.brand{font-size:24px;font-weight:750;letter-spacing:-1px;text-decoration:none;white-space:nowrap}
.brand-accent{color:#d6ac71}
nav{display:flex;flex-wrap:wrap;gap:24px;font-size:14px}
nav a{text-decoration:none}
nav a:hover{text-decoration:underline}
.hero{padding:90px 0 115px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.65rem,5vw,4.5rem);align-items:center}
.hero-copy{max-width:850px}
.hero-mobile-photo{display:none}
h1,h2,h3,p{margin-top:0}
h2{font-family:Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.045em}
h1{font-size:clamp(38px,6vw,82px);font-weight:700;line-height:1.07;letter-spacing:-3px;margin:22px 0;overflow-wrap:anywhere}
h2{font-size:clamp(2.35rem,4.3vw,4.2rem);margin-bottom:1.15rem}
h3{line-height:1.3;font-size:1.23rem;margin-bottom:.65rem}
.eyebrow,.number{font-size:.76rem;line-height:1.4;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#3a6555;margin-bottom:.9rem}
p{color:var(--muted);margin-bottom:1rem}
.hero .eyebrow{color:#d6ac71;font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:0}
.lead{color:#dce8e2;font-size:clamp(17px,2vw,21px);max-width:630px;margin-bottom:0}
.story-photo{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:1.3rem;background:var(--soft)}
.button{display:inline-flex;align-items:center;gap:1rem;padding:.75rem 1.12rem;border-radius:.5rem;background:var(--forest);color:#fff;font-weight:700;text-decoration:none}
.button:hover{background:#265347}
.hero .button{background:#d6ac71;color:#21382f;padding:13px 23px;gap:.45rem;border-radius:7px;margin-top:32px}
.hero .button:hover{background:#e5b977}
.site-header a:focus-visible,.hero a:focus-visible{outline-color:#e5b977}
.section{padding:clamp(3rem,7vw,6rem) 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.8rem}
.cards article,.note{background:#fffdf8;border:1px solid var(--line);border-radius:1rem;padding:clamp(1.15rem,2.5vw,1.8rem)}
.cards p:last-child,.note p:last-child{margin-bottom:0}
.soft{background:var(--soft)}
.story-heading-accent{color:#875b2b}
.story-page{max-width:48rem}
.story-page h1{font-family:Georgia,serif;font-size:clamp(2rem,4.5vw,3.6rem);font-weight:400;letter-spacing:-.035em;margin:0 0 1.5rem}
.story-quote{margin:1.5rem 0;padding:.2rem 0 .2rem 1rem;border-left:3px solid #b68543;font-weight:700}
.practical{align-items:start}
.contact,footer{background:var(--forest);color:#fff}
.contact p{color:#e2eee5;max-width:36rem}
.contact .eyebrow{color:var(--gold)}
.contact .button{background:var(--gold);color:var(--forest)}
.contact .button:hover{background:#f2ca91}
.contact-detail{margin-top:.9rem}
.story-photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.8rem 0}
.story-photos img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:.8rem}
.site-footer{border-top:1px solid #58756a;padding-top:2.5rem}
.footer-columns{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1.75rem}
.site-footer h2{font:700 .95rem/1.4 system-ui,sans-serif;letter-spacing:0;margin:0 0 .55rem}
.site-footer p,.footer-links{color:#e2eee5;font-size:.9rem;margin:.5rem 0 0}
.footer-links{list-style:none;padding:0;display:grid;gap:.3rem}
.footer-bottom{border-top:1px solid #58756a;margin-top:1.8rem;padding-block:1rem;color:#e2eee5}
.site-footer a:focus-visible{outline-color:#e5b977}
@media(max-width:570px){.footer-columns,.story-photos{grid-template-columns:1fr}.site-footer{padding-top:1.75rem}}
@media(max-width:760px){.site-header .wrap,.hero .wrap{padding-inline:20px}.hero{padding:65px 0 36px}.hero-mobile-photo{display:block;width:100%;margin-top:2rem;border-radius:.8rem;aspect-ratio:3/2;object-fit:cover}h1{letter-spacing:-2px}nav{gap:12px;font-size:12px}.wrap{width:min(100% - 2rem,72rem)}.split{grid-template-columns:1fr}.story-photo{order:2}.cards{grid-template-columns:1fr}}
@media(max-width:420px){.site-header .bar{align-items:flex-start;flex-direction:column;padding-block:14px;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
