@font-face{font-family:"Quicksand";src:url("assets/Quicksand.ttf") format("truetype");font-weight:300 700;font-display:swap}
:root{--dark:#101612;--dark2:#1a231d;--light:#F2F6EF;--sage:#BCCB9A;--sage2:#DCE6C8;--sage-deep:#2F4A22;--peach:#E8957A;--ink2:#3d4a3f;--r1:14px;--r2:24px;--r3:32px;--head:"Quicksand","Nunito","Varela Round",ui-rounded,"SF Pro Rounded",system-ui,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--light);color:var(--dark);font-family:var(--body);font-size:1.125rem;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--sage-deep);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--dark);text-decoration-color:var(--peach)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--dark);outline-offset:3px;border-radius:6px}
.on-dark a:focus-visible,.site-footer a:focus-visible{outline-color:var(--light)}
h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.1;letter-spacing:-.02em;margin:0 0 .5em}
h1{font-size:clamp(2.6rem,7vw,4.6rem)}
h2{font-size:clamp(1.9rem,4.5vw,2.9rem)}
h3{font-size:1.4rem;line-height:1.2}
p{margin:0 0 1em}
.wrap{width:min(1100px,100% - 2.5rem);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--dark);color:var(--light);padding:.75rem 1rem;z-index:10;border-radius:0 0 var(--r1) 0}
.skip:focus{left:0}
.site-header{background:var(--sage)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1rem;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:.75rem;font-family:var(--head);font-weight:700;font-size:1.5rem;color:var(--dark);text-decoration:none}
.brand img{width:44px;height:44px;border-radius:10px}
.nav{display:flex;gap:1.5rem;flex-wrap:wrap}
.nav a{color:var(--dark);font-weight:600;text-decoration:none;padding:.5rem 0}
.nav a:hover,.nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--peach)}
.hero{background:var(--sage);padding-block:2rem 4.5rem}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:center}
.lead{font-size:clamp(1.2rem,2.4vw,1.5rem);max-width:34ch;line-height:1.45;margin-bottom:1.75rem}
.badge{display:inline-block;line-height:0;border-radius:var(--r1)}
.hero-art{justify-self:center;width:min(100%,480px);background:var(--sage2);border-radius:50%;aspect-ratio:1}
.section{padding-block:4rem}
.section.alt{background:var(--sage2)}
.section-intro{max-width:40ch}
.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:2rem}
.card{background:var(--dark2);color:var(--light);border-radius:var(--r2);padding:1.75rem}
.card h3{color:var(--sage)}
.card p{margin:0;color:var(--light)}
.card .tag{display:inline-block;margin-bottom:.9rem;width:44px;height:6px;border-radius:3px;background:var(--peach)}
.safety{background:var(--dark);color:var(--light)}
.safety h2{color:var(--light)}
.safety ul{padding-left:1.25rem;margin:0 0 1.5rem}
.safety li{margin-bottom:.4rem}
.safety a{color:var(--sage)}
.safety a:hover{color:var(--light)}
.sources{border-top:2px solid var(--dark2);padding-top:1.25rem;font-size:1rem}
.sources p{margin-bottom:.4rem}
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:2rem}
.plan{border-radius:var(--r3);padding:2rem;background:var(--light)}
.plan.plus{background:var(--dark);color:var(--light)}
.plan.plus h3{color:var(--sage)}
.plan ul{padding-left:1.25rem;margin:0}
.plan li{margin-bottom:.45rem}
.plan .note{margin-top:1.25rem;font-weight:600;color:var(--sage-deep)}
.plan.plus .note{color:var(--peach)}
.site-footer{background:var(--dark);color:var(--light);padding-block:2.5rem;font-size:1rem}
.site-footer .wrap{display:grid;gap:1rem}
.site-footer nav{display:flex;gap:1.5rem}
.site-footer a{color:var(--sage)}
.site-footer a:hover{color:var(--light)}
.site-footer p{margin:0;max-width:60ch}
.page{padding-block:3rem 5rem}
.page .wrap{max-width:760px}
.page h1{font-size:clamp(2.2rem,6vw,3.4rem)}
.page h2{font-size:clamp(1.4rem,3.5vw,1.9rem);margin-top:2.25rem}
.meta{color:var(--ink2);font-size:1rem}
.faq details{background:var(--sage2);border-radius:var(--r1);padding:1rem 1.25rem;margin-bottom:.75rem}
.faq summary{cursor:pointer;font-family:var(--head);font-weight:700;font-size:1.2rem;padding:.25rem 0}
.faq details p{margin:.75rem 0 0}
.contact{background:var(--sage);border-radius:var(--r2);padding:1.5rem 1.75rem;margin:1.5rem 0 2rem}
.contact p{margin:0}
.notfound{text-align:center;padding-block:5rem 6rem}
.notfound .wrap{display:grid;justify-items:center;gap:1rem}
.notfound img{width:min(260px,70%);margin-bottom:.5rem}
.btn{display:inline-block;background:var(--dark);color:var(--light);font-family:var(--head);font-weight:700;font-size:1.2rem;padding:.9rem 1.75rem;border-radius:var(--r1);text-decoration:none;min-height:48px}
.btn:hover{background:var(--sage-deep);color:var(--light)}
@media (max-width:760px){
.hero .wrap{grid-template-columns:minmax(0,1fr);gap:2rem}
.hero-art{order:-1;width:min(70%,320px)}
.features,.plans{grid-template-columns:minmax(0,1fr)}
.section{padding-block:3rem}
}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
