:root{--ink:#152c2c;--forest:#254d48;--moss:#7a9c7e;--cream:#f6f1e8;--peach:#e7aa83;--coral:#be654b;--line:rgba(21,44,44,.16);--sans:"DM Sans",sans-serif;--serif:"Fraunces",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit}.skip{position:fixed;top:-5rem;left:1rem;z-index:100;background:#fff;padding:.75rem}.skip:focus{top:1rem}.site-header{min-height:86px;display:flex;align-items:center;justify-content:space-between;max-width:1360px;margin:auto;padding:18px 4vw;position:relative;z-index:4}.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;text-decoration:none;letter-spacing:-.04em;line-height:1.05}.brand i,footer i{color:var(--coral);font-family:var(--serif);font-weight:600}.brand small{font-size:8px;letter-spacing:.18em;display:block;margin-top:4px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--forest);color:var(--cream);font-family:var(--serif);font-size:14px;letter-spacing:-.12em}.site-header nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:600}.site-header nav>a:not(.button){text-decoration:none}.site-header nav>a:not(.button):hover{color:var(--coral)}.button{display:inline-flex;gap:12px;align-items:center;justify-content:center;padding:14px 20px;border:1px solid var(--forest);background:var(--forest);color:var(--cream);font-weight:700;text-decoration:none;border-radius:999px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#163b37}.button span{font-size:20px;line-height:.8}.button-small{padding:10px 15px}.menu-toggle{display:none;background:none;border:0;color:var(--ink);font:700 14px var(--sans)}h1,h2,h3{font-family:var(--serif);line-height:1.03;letter-spacing:-.045em;margin:0}h1{font-size:clamp(3.5rem,7vw,7.2rem)}h2{font-size:clamp(2.35rem,4vw,4.4rem)}h3{font-size:1.75rem}p{margin:0 0 1rem}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--coral);display:flex;gap:10px;align-items:center}.eyebrow:before{content:"";width:24px;height:1px;background:currentColor}.section{padding:clamp(72px,10vw,140px) 6vw;max-width:1500px;margin:auto}.section-heading{max-width:700px}.section-heading p{font-size:18px;max-width:570px;margin-top:20px}.pill{display:inline-flex;padding:7px 12px;border:1px solid var(--line);border-radius:99px;font-size:12px;font-weight:700}footer{background:var(--ink);color:var(--cream);padding:60px 6vw 26px;display:grid;grid-template-columns:1.4fr .85fr 1.25fr 1.05fr auto;gap:40px 25px;align-items:start}footer .footer-brand{font-size:22px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}footer .footer-brand p{flex-basis:100%;color:#c5d0c8;font-size:15px;margin-top:6px}footer strong{font-size:14px}footer p{font-size:14px;color:#c5d0c8;margin-top:10px}footer a{text-underline-offset:3px}footer .footer-book{background:var(--peach);border-color:var(--peach);color:var(--ink);white-space:nowrap}footer .memberships{min-width:125px}footer .membership-logos{display:flex;align-items:center;gap:13px;margin-top:10px}footer .membership-logos a{display:grid;place-items:center;height:42px}footer .membership-logos img{display:block;max-height:42px;width:auto;max-width:76px;object-fit:contain}footer .membership-logos a:first-child{background:var(--cream);border-radius:5px;padding:2px}footer .membership-logos a:first-child img{width:38px;height:38px}footer small{grid-column:1/-1;border-top:1px solid rgba(246,241,232,.18);padding-top:20px;color:#aab9ad;font-size:11px}@media(max-width:760px){.site-header{min-height:72px;padding:14px 5vw}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;padding:22px 5vw 28px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px}.site-header nav.open{display:flex}.site-header nav .button{width:100%}.section{padding-left:5vw;padding-right:5vw}footer{grid-template-columns:1fr 1fr;padding:55px 5vw 24px}footer .footer-brand,footer .footer-book,footer small{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
