:root{--sand:#F4F8F3;--dune:#E4EFE5;--brand:#0A5C46;--em:#0C6C50;--brand-pale:#E3F1EA;
--ink:#0E2019;--ink-2:#2C4237;--body:#4A5C51;--muted:#7E9186;--line:#D6E4D8;
--serif:"Cormorant Garamond",Garamond,Georgia,serif}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Jost,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--sand);
color:var(--body);line-height:1.7;-webkit-font-smoothing:antialiased;font-weight:400}
a{color:inherit;text-decoration:none}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px}
header{border-bottom:1px solid var(--line);background:#FAFDF8}
header .wrap{display:flex;align-items:center;gap:14px;height:78px}
header img{width:46px;height:46px;object-fit:contain}
header .n{font-family:var(--serif);font-size:1.2rem;color:var(--ink);letter-spacing:.02em}
header .n em{font-style:italic;color:var(--em)}
.intro{padding:56px 0 34px}
.kicker{display:block;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;
color:var(--muted);margin-bottom:14px}
h1{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,5vw,3.2rem);line-height:1.08;
color:var(--ink);letter-spacing:-.01em}
h1 em{font-style:italic;color:var(--em)}
.intro p{margin-top:16px;max-width:62ch;font-size:1.02rem}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 40px;padding:8px 0 64px}
.grp h2{font-family:Jost;font-size:.68rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;
color:var(--muted);padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:12px}
.grp ul{list-style:none;display:flex;flex-direction:column;gap:2px}
.grp li a{display:block;padding:7px 0;font-size:.93rem;color:var(--ink-2);
border-bottom:1px solid transparent;transition:color .3s,padding-left .3s}
.grp li a:hover{color:var(--em);padding-left:6px}
.back{display:inline-flex;align-items:center;gap:9px;margin:0 0 64px;padding:16px 30px;
background:var(--ink);color:#FAFDF8;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}
footer{background:#041124;color:#8CA096;padding:44px 0;font-size:.86rem}
footer a{color:#CFE3D6}
@media(max-width:900px){.grid{grid-template-columns:1fr 1fr}}
@media(max-width:660px){
.wrap{padding:0 20px}
.intro{padding:38px 0 24px}
.grid{grid-template-columns:1fr;gap:26px;padding-bottom:44px}
.grp li a{padding:11px 0;font-size:.95rem;border-bottom:1px solid var(--line)}
.back{width:100%;justify-content:center;margin-bottom:44px}
}
footer .foot-h{font-size:.95rem;font-weight:600;margin-bottom:12px}
footer .foot-h5{font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin:0}
