
:root{color-scheme:light;--ink:#25362e;--sage:#22654f;--earth:#915826;--paper:#faf9f3;--fog:#edf4e9;--line:#cbdac9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font:clamp(16px,1.3vw,19px)/1.6 system-ui,-apple-system,"Segoe UI",sans-serif}
a{color:#176244;text-underline-offset:.17em}a:focus-visible,button:focus-visible,textarea:focus-visible{outline:3px solid #b47127;outline-offset:3px}
header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;max-width:1180px;margin:auto;padding:20px 24px}
.brand{text-decoration:none;letter-spacing:.07em;font-size:.84rem;font-weight:850;color:#274534}nav{display:flex;gap:17px;flex-wrap:wrap}nav a{font-size:.88rem;font-weight:650}
main{max-width:1120px;padding:0 24px 65px;margin:auto}
.hero{background:radial-gradient(circle at 82% 20%,#dcebd3,transparent 48%),linear-gradient(135deg,#fffdf5,#ecf2e5);border:1px solid var(--line);padding:clamp(28px,6vw,82px);border-radius:24px;position:relative;overflow:hidden;min-height:470px;display:flex;flex-direction:column;justify-content:center}
.hero:before{content:"";position:absolute;right:-80px;bottom:-110px;width:330px;height:230px;border-radius:55% 45% 35% 35%;background:#d8e4d2;filter:blur(4px);opacity:.75;transform:rotate(-20deg)}
.hero>*{position:relative}.eyebrow{color:#58725b;letter-spacing:.11em;text-transform:uppercase;font-weight:750;font-size:.75rem}
h1{font-size:clamp(2.2rem,5.4vw,4.5rem);letter-spacing:-.044em;line-height:1.12;max-width:800px;margin:.25em 0}.lead{max-width:720px;font-size:clamp(1.06rem,2vw,1.36rem)}
section{margin:46px 0}h2{font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.2;letter-spacing:-.025em}h3{margin:.5em 0;font-size:1.15rem;line-height:1.3}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tile{border:1px solid var(--line);padding:25px;border-radius:20px;background:white;box-shadow:0 4px 20px #23472a0b;display:flex;flex-direction:column;gap:10px}
.tile h3{margin:0}.tile p{margin:0;flex:1}.tile a{font-weight:750}.tile .tag{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--earth);font-weight:800}
button,.primary{border:1px solid #245d49;border-radius:999px;padding:11px 22px;background:#245d49;color:white;font:inherit;cursor:pointer;display:inline-block;text-decoration:none;font-weight:720}
button:hover,.primary:hover{background:#174632;color:white}.secondary{background:transparent;color:#245d49}.secondary:hover{color:white}
.inquiry{background:#f0f4e9;border:1px solid var(--line);border-radius:20px;padding:clamp(22px,4vw,40px)}
textarea{width:100%;font:inherit;border:2px solid #547664;border-radius:12px;background:white;color:var(--ink);padding:14px 16px;min-height:100px;resize:vertical}
label{display:block;font-weight:750;margin-bottom:8px}.actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:14px}
#connections{margin-top:15px}#connections:not([hidden]){background:white;padding:20px;border-left:5px solid var(--sage);border-radius:9px}
small,.muted{color:#57685c}details{border:1px solid var(--line);background:#fff;border-radius:12px;margin:12px 0;padding:13px 17px}
details summary{cursor:pointer;font-weight:740}details[open] summary{margin-bottom:9px}
.crumb{font-size:.85rem;padding:16px 0;display:block}.source{font-size:.86rem;color:#506354}.question{margin:15px 0;padding:16px 20px;border-left:3px solid #b98747;background:#fff}
footer{border-top:1px solid var(--line);padding:28px 24px;font-size:.83rem;max-width:1120px;margin:auto}
@media(max-width:840px){.grid{grid-template-columns:1fr 1fr}}@media(max-width:580px){.grid{grid-template-columns:1fr}.hero{min-height:0;padding:27px}.tile{padding:20px}main{padding:0 16px 40px}header{padding:16px}}
