*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--step-0)/1.55 var(--font-body);
     text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:64rem;margin-inline:auto;padding-inline:var(--gutter)}

/* Tier 2 — persistent medical disclaimer. Present on every funnel page. */
.med-bar{background:var(--cold-void);color:var(--cold-fluoro);font-size:.78rem;line-height:1.45;
         padding:.6rem var(--gutter);text-align:center}
.med-bar strong{color:#fff}
.med-bar a{color:#fff;text-decoration:underline;text-underline-offset:2px}

/* Tier 1 — inline affiliate disclosure, sits adjacent to an outbound link. */
.aff-disclosure{display:block;font-size:.78rem;line-height:1.4;color:#5c5550;margin:.5rem 0 0;
                border-left:2px solid var(--accent);padding-left:.6rem}

/* Capture form */
.capture{display:grid;gap:.9rem;margin-top:1.5rem}
.capture label{display:block;font-weight:600;font-size:.9rem}
.capture input[type=email],.capture input[type=tel]{
  width:100%;padding:.85rem 1rem;font:inherit;border:1px solid var(--rule);border-radius:.4rem;background:#fff}
.capture input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.consent{display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:start;
         font-size:.82rem;line-height:1.45;color:#453f3a}
.consent input{margin-top:.2rem;width:1.1rem;height:1.1rem;flex:none}
.btn{appearance:none;border:0;border-radius:.4rem;background:var(--accent);color:#fff;
     font:600 var(--step-0) var(--font-body);padding:1rem 1.5rem;min-height:3rem;cursor:pointer}
.btn:hover{background:var(--accent-deep)}
.field-error{color:#9c2c14;font-size:.82rem}

.prose{padding-block:2.5rem 4rem;max-width:42rem}
.prose h1{font:700 var(--step-3)/1.1 var(--font-warm);margin:0 0 1.25rem}
.prose h2{font:600 var(--step-1) var(--font-body);margin:2rem 0 .5rem}
.prose p,.prose li{margin:0 0 .9rem}
.site-foot{border-top:1px solid var(--rule);padding-block:1.5rem 2.5rem;font-size:.82rem}
.site-foot nav{margin-bottom:.5rem}

.capture-success{background:#fff;border:1px solid var(--rule);border-radius:.5rem;padding:1.5rem;margin-top:1.5rem}
.capture-success h3{margin:0 0 .5rem;font:700 var(--step-2) var(--font-warm)}
.capture-success p{margin:0 0 .75rem}
.fine{font-size:.78rem;color:#5c5550;line-height:1.45}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;
                       scroll-behavior:auto!important}
}
