/* Pure Health Path – design system */
:root{
  --phs-forest:#164E36; --phs-deep:#103B2A; --phs-sage:#A8C3A0; --phs-ivory:#FAF9F4;
  --phs-gold:#D6B46A; --phs-text:#26332C; --phs-muted:#5C6760; --phs-white:#FFFFFF;
  --phs-line:#E4E3D8; --phs-sage-soft:#EEF3EA;
  --phs-radius:16px; --phs-radius-sm:10px;
  --phs-shadow:0 2px 14px rgba(16,59,42,.07);
  --phs-serif:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif;
  --phs-sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --bs-body-font-family:var(--phs-sans); --bs-body-color:var(--phs-text); --bs-body-bg:var(--phs-ivory);
  --bs-link-color:var(--phs-forest); --bs-link-hover-color:var(--phs-deep);
}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--phs-ivory);color:var(--phs-text);line-height:1.65}
h1,h2,h3,h4,.serif{font-family:var(--phs-serif);color:var(--phs-deep);font-weight:600;letter-spacing:-.01em}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,.form-check-input:focus-visible{outline:3px solid var(--phs-gold);outline-offset:2px;box-shadow:none}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--phs-deep);color:#fff;padding:.5rem 1rem;border-radius:8px;z-index:2000}
.skip-link:focus{left:8px;color:#fff}
.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--phs-forest);font-weight:600}
.section{padding:4.5rem 0}.section-alt{background:var(--phs-white);border-block:1px solid var(--phs-line)}
.section-head{max-width:640px;margin:0 auto 2.5rem;text-align:center}
.section-head p{color:var(--phs-muted)}
/* announcement */
.announce{background:var(--phs-deep);color:var(--phs-ivory);font-size:.85rem;text-align:center;padding:.45rem 2.5rem;position:relative}
.announce button{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--phs-ivory);padding:.4rem}
/* nav */
.site-nav{background:rgba(250,249,244,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--phs-line)}
.navbar-brand{font-family:var(--phs-serif);font-weight:700;color:var(--phs-deep);display:flex;align-items:center;gap:.55rem}
.brand-mark{width:34px;height:34px;border-radius:50%;background:var(--phs-forest);color:var(--phs-gold);display:grid;place-items:center;font-size:1.05rem}
.nav-link{color:var(--phs-text);font-weight:500;padding:.5rem .8rem!important;border-bottom:2px solid transparent}
.nav-link:hover{color:var(--phs-forest)}
.nav-link.active{color:var(--phs-forest);border-bottom-color:var(--phs-gold)}
/* buttons */
.btn{border-radius:999px;font-weight:600;padding:.65rem 1.4rem}
.btn-brand{background:var(--phs-forest);color:#fff;border:1px solid var(--phs-forest)}
.btn-brand:hover,.btn-brand:focus{background:var(--phs-deep);color:#fff;border-color:var(--phs-deep)}
.btn-outline-brand{border:1px solid var(--phs-forest);color:var(--phs-forest);background:transparent}
.btn-outline-brand:hover{background:var(--phs-forest);color:#fff}
.btn-gold{background:var(--phs-gold);color:var(--phs-deep);border:1px solid var(--phs-gold)}
.btn-gold:hover{background:#c9a455;color:var(--phs-deep)}
/* hero */
.hero{padding:4rem 0 3.5rem;background:radial-gradient(circle at 85% 20%,var(--phs-sage-soft),transparent 55%)}
.hero h1{font-size:clamp(2.1rem,5vw,3.6rem);line-height:1.1}
.hero .lead{color:var(--phs-muted);max-width:34rem}
.hero-art{background:var(--phs-sage-soft);border-radius:28px;border:1px solid var(--phs-line);padding:1rem;box-shadow:var(--phs-shadow)}
.hero-art img{width:100%;height:auto;display:block;border-radius:20px}
.trust-row{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;color:var(--phs-muted);font-size:.9rem;margin-top:1.5rem}
.trust-row i{color:var(--phs-forest);margin-right:.35rem}
/* categories */
.cat-card{display:block;height:100%;background:var(--phs-white);border:1px solid var(--phs-line);border-radius:var(--phs-radius);overflow:hidden;color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}
.cat-card:hover{transform:translateY(-3px);box-shadow:var(--phs-shadow);color:inherit}
.cat-img{aspect-ratio:16/9;display:grid;place-items:center;background:var(--phs-sage-soft);color:var(--phs-forest);font-size:2.4rem}
.cat-body{padding:1.1rem 1.2rem 1.3rem}
.cat-body h3{font-size:1.15rem;margin-bottom:.35rem}
.cat-body p{color:var(--phs-muted);font-size:.92rem;margin-bottom:.7rem}
.cat-link{font-weight:600;font-size:.9rem;color:var(--phs-forest)}
/* products */
.filters{background:var(--phs-white);border:1px solid var(--phs-line);border-radius:var(--phs-radius);padding:1rem}
.product-card{height:100%;display:flex;flex-direction:column;background:var(--phs-white);border:1px solid var(--phs-line);border-radius:var(--phs-radius);overflow:hidden;transition:box-shadow .2s,transform .2s}
.product-card:hover{box-shadow:var(--phs-shadow);transform:translateY(-2px)}
.product-media{aspect-ratio:1/1;background:var(--phs-sage-soft);display:grid;place-items:center;padding:1rem}
.product-media img{max-width:100%;max-height:100%;object-fit:contain}
.product-body{padding:1.1rem;display:flex;flex-direction:column;flex:1}
.product-cat{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--phs-forest);font-weight:600}
.product-name{font-size:1.2rem;margin:.25rem 0 .4rem}
.product-desc{font-size:.92rem;color:var(--phs-muted);flex:1}
.product-meta{font-size:.85rem;color:var(--phs-text);margin-bottom:.5rem}
.disclose{font-size:.74rem;color:var(--phs-muted);margin:.6rem 0 .7rem}
.product-card .btn{width:100%}
.btn[disabled],.btn.disabled{background:#E9E8DF;color:#5C6760;border-color:#E9E8DF;opacity:1;cursor:not-allowed}
.empty-state{text-align:center;padding:2.5rem 1rem;color:var(--phs-muted);border:1px dashed var(--phs-sage);border-radius:var(--phs-radius)}
/* benefit + articles */
.benefit{height:100%;background:var(--phs-ivory);border:1px solid var(--phs-line);border-radius:var(--phs-radius);padding:1.5rem}
.benefit i{font-size:1.6rem;color:var(--phs-forest)}
.article-card{height:100%;background:var(--phs-white);border:1px solid var(--phs-line);border-radius:var(--phs-radius);overflow:hidden}
.article-thumb{aspect-ratio:16/9;display:grid;place-items:center;font-size:2.2rem;color:var(--phs-deep);background:linear-gradient(135deg,var(--phs-sage-soft),#F4EBD3)}
.article-card .body{padding:1.1rem 1.2rem 1.3rem}
/* newsletter */
.newsletter{background:var(--phs-deep);color:var(--phs-ivory);border-radius:28px;padding:3rem 1.5rem}
.newsletter h2{color:#fff}.newsletter p{color:#D9E3DC}
.newsletter a{color:var(--phs-gold)}
/* footer */
.site-footer{background:var(--phs-deep);color:#D9E3DC;padding:3.5rem 0 1.5rem;margin-top:0}
.site-footer h3{font-size:1rem;color:#fff;font-family:var(--phs-sans);letter-spacing:.05em;text-transform:uppercase}
.site-footer a{color:#D9E3DC;text-decoration:none}.site-footer a:hover{color:var(--phs-gold);text-decoration:underline}
.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin-bottom:.4rem}
.footer-disclosure{border-top:1px solid rgba(255,255,255,.15);margin-top:2rem;padding-top:1.2rem;font-size:.85rem}
/* content pages */
.page-hero{padding:3rem 0 1.5rem}
.prose{max-width:760px}.prose h2{font-size:1.5rem;margin-top:2rem}
.breadcrumb{--bs-breadcrumb-divider-color:var(--phs-muted);font-size:.88rem}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
