@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300;9..144,400;9..144,500;9..144,600&family=Inter:wght@300;400;500;600;700;800;900&display=swap");
:root{--green:#16a34a;--green2:#86efac;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--bg:#f8fafc;--card:#fff}*{box-sizing:border-box}body{margin:0;font-family:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}.shell{max-width:1080px;margin:0 auto;padding:0 1.25rem}.nav{position:sticky;top:0;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:50000;isolation:isolate}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0}.brand{font-family:"Fraunces",Georgia,serif;font-weight:600;letter-spacing:-.02em;text-decoration:none;color:var(--green)}.menu{position:relative}.menu button{border:1px solid var(--line);background:white;border-radius:999px;padding:.55rem .8rem;font-weight:800}.menu-content{display:none;position:absolute;right:0;top:100%;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 50px rgba(15,23,42,.14);min-width:260px;z-index:60000;padding:.5rem}.menu:hover .menu-content,.menu:focus-within .menu-content,.menu.is-open .menu-content{display:grid}.menu-content a{padding:.75rem;border-radius:12px;color:var(--ink);text-decoration:none}.menu-content a:hover{background:#f1f5f9}.menu-divider{height:1px;background:var(--line);margin:.35rem .25rem}.hero{padding:4rem 0 2rem}.eyebrow{color:var(--green);font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}h1{font-family:"Fraunces",Georgia,serif;font-weight:500;font-variation-settings:"opsz" 144;font-size:clamp(2.2rem,6vw,4.8rem);line-height:.95;margin:.5rem 0 1rem;letter-spacing:-.05em}h2{font-family:"Fraunces",Georgia,serif;font-weight:500;font-variation-settings:"opsz" 144;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.05;margin:0 0 .75rem}.lead{font-size:1.2rem;color:#334155;max-width:780px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:1.25rem;box-shadow:0 10px 30px rgba(15,23,42,.04)}.callout{border-left:5px solid var(--green);background:#ecfdf5;padding:1rem 1.25rem;border-radius:16px;margin:1rem 0}.button{display:inline-block;background:var(--green);color:white;text-decoration:none;border-radius:999px;padding:.8rem 1.05rem;font-weight:850}.muted{color:var(--muted)}ul{padding-left:1.2rem}.footer{border-top:1px solid var(--line);margin-top:3rem;padding:2rem 0;color:var(--muted)}.footer-sitemap{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:1rem}.footer-sitemap a{color:var(--muted);text-decoration:none}.footer-sitemap a:hover{color:var(--ink);text-decoration:underline}@media(max-width:760px){.grid{grid-template-columns:1fr}.hero{padding:2.5rem 0 1rem}.nav-inner{align-items:flex-start}.menu-content{right:0;left:auto}}
@media(hover:none){.menu:hover .menu-content:not(.is-open){display:none}}@media(max-width:760px){.menu-content{position:absolute;top:100%;right:0;min-width:min(88vw,320px);max-height:78vh;overflow:auto}}
/* Footer sitemap: keep links brand-green, including visited state. */
.footer-sitemap{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;margin:0 auto 16px;max-width:860px;line-height:1.5}.footer-sitemap a,.footer-sitemap a:visited{color:var(--green);font-weight:800;text-decoration:none}.footer-sitemap a:hover,.footer-sitemap a:focus{color:#15803d;text-decoration:underline}

/* Mobile menu hardening: full-width tap-friendly panel on phones. */
@media(max-width:760px){.nav-inner{align-items:center;flex-direction:row}.brand{min-width:0}.menu{position:static;margin-left:auto}.menu button{min-height:44px;white-space:nowrap}.menu-content{position:fixed;top:64px;left:14px;right:14px;width:auto;min-width:0;max-height:calc(100vh - 86px);overflow:auto;z-index:60000}.menu-content a{min-height:44px;display:flex;align-items:center}}
@media(max-width:420px){.shell{padding:0 1rem}.menu-content{top:58px;left:10px;right:10px;max-height:calc(100vh - 76px)}}

/* Mobile menu portal: moves open menu to body so it cannot render behind page content. */
body.site-menu-open::before{content:"";position:fixed;inset:0;background:rgba(15,23,42,.18);z-index:2147483646}.mobile-menu-portal{display:grid!important;position:fixed!important;top:64px!important;left:12px!important;right:12px!important;width:auto!important;min-width:0!important;max-height:calc(100dvh - 80px)!important;overflow:auto!important;padding:12px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:20px!important;box-shadow:0 28px 80px rgba(0,0,0,.34)!important;z-index:2147483647!important}.mobile-menu-portal a{min-height:44px;display:flex;align-items:center}

/* Simple static email forms. */
.stacked-form{display:grid;gap:1rem}.stacked-form label{display:grid;gap:.45rem;font-weight:800}.stacked-form input,.stacked-form textarea,.stacked-form select{width:100%;border:1px solid var(--line);border-radius:16px;padding:.85rem 1rem;font:inherit;background:#fff;color:var(--ink)}.stacked-form input:focus,.stacked-form textarea:focus,.stacked-form select:focus{outline:3px solid rgba(22,163,74,.18);border-color:var(--green)}
/* Support page safety notice. */
.safety-alert{border-left-color:#dc2626;background:#fff7ed;margin:-.35rem 0 1.5rem;box-shadow:0 12px 32px rgba(154,52,18,.08)}.safety-alert .eyebrow{color:#dc2626;margin:0 0 .35rem}.safety-alert h2{font-family:"Fraunces",Georgia,serif;font-weight:500;font-variation-settings:"opsz" 144;font-size:clamp(1.35rem,3vw,2.1rem);margin:0 0 .55rem;color:#7f1d1d}.safety-alert p:last-child{margin:0;color:#431407;font-weight:650}
