/* ================================================================
   GeneratePress interop.
   The parent theme ships its own typography, list and button rules
   and enqueues them after this file, so anything left to the browser
   default gets GeneratePress's value instead of ours. The block below
   re-asserts the reset the standalone pages apply with `*`, scoped to
   the .rx wrapper so the rest of WordPress is untouched.
   :where() holds it to one class of specificity - above GeneratePress's
   element selectors, below our own components further down this file.
   ================================================================ */
.rx :where(*,*::before,*::after){box-sizing:border-box}
.rx :where(h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,figure,blockquote,fieldset,table){margin:0;padding:0}
.rx :where(ul,ol){list-style:none}
.rx :where(a){color:inherit;text-decoration:none}
.rx :where(img){max-width:100%;height:auto}
.rx :where(button,input,select,textarea){font:inherit;color:inherit}
.rx :where(button){background:none;border:0;cursor:pointer}
.rx :where(table){border-collapse:collapse}
.rx{line-height:1.6;color:var(--rx-ink);font-family:var(--rx-body)}
.rx :focus-visible{outline:2px solid var(--rx-crimson);outline-offset:3px}

/* ==========================================================================
   Reclaim — treatment page design system
   Everything is scoped under .rx so it cannot collide with theme or plugin CSS.
   ========================================================================== */

/* Also on :root: the header CTA buttons are injected into the WordPress nav,
   outside any .rx wrapper, and could not see these tokens there. */
:root,.rx{
  --rx-crimson:#C42026;
  --rx-crimson-deep:#8E1418;
  --rx-ink:#14161A;
  --rx-graphite:#4A4F57;
  --rx-mist:#8A9099;
  --rx-paper:#FFFFFF;
  --rx-bone:#F4F3F1;
  --rx-hairline:#E2E0DC;
  --rx-crimson-lift:#E8474D;
  --rx-display:'Barlow Condensed',Impact,sans-serif;
  --rx-body:'Inter',system-ui,-apple-system,sans-serif;
  --rx-pairing:'Newsreader',Georgia,'Times New Roman',serif;
  --rx-gutter:clamp(20px,5vw,72px);

  font-family:var(--rx-body);
  color:var(--rx-ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

.rx *,.rx *::before,.rx *::after{box-sizing:border-box}
.rx :focus-visible{outline:2px solid var(--rx-crimson);outline-offset:3px}

/* --------------------------------------------------------- shared elements */
.rx-eyebrow{
  font-family:var(--rx-display);
  font-size:14px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;
  color:var(--rx-crimson);
  margin:0 0 18px;
}
.rx-btn{
  display:inline-block;
  font-family:var(--rx-display);
  font-size:16px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  padding:12px 24px;
  background:var(--rx-crimson);color:#fff;
  border:1px solid var(--rx-crimson);
  text-decoration:none;
  transition:background .18s ease,color .18s ease;
}
.rx-btn:hover,.rx-btn:focus{background:var(--rx-crimson-deep);border-color:var(--rx-crimson-deep);color:#fff}
.rx-btn--ghost{background:transparent;color:var(--rx-ink);border-color:var(--rx-ink)}
.rx-btn--ghost:hover,.rx-btn--ghost:focus{background:var(--rx-ink);color:#fff}
.rx-btn--onDark{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.rx-btn--onDark:hover,.rx-btn--onDark:focus{background:#fff;color:var(--rx-ink);border-color:#fff}

/* ------------------------------------------------------ hero banner (home) */
.rx-herobanner{position:relative;background:var(--rx-ink);color:#fff;overflow:hidden}
.rx-herobanner__slides{display:grid}
.rx-herobanner__slide{
  grid-area:1/1;
  position:relative;
  display:flex;align-items:center;
  min-height:clamp(440px,60vh,600px);
  padding:clamp(52px,7vw,88px) var(--rx-gutter) clamp(86px,9vw,106px);
  opacity:0;visibility:hidden;
  transition:opacity .8s ease;
}
.rx-herobanner__slide.is-active{opacity:1;visibility:visible}
/* scrim over photo over fallback tint — set --slide-img inline per slide */
.rx-herobanner__slide::before{
  content:'';
  position:absolute;inset:0;z-index:0;
  background-image:
    linear-gradient(100deg,rgba(20,22,26,.95) 0%,rgba(20,22,26,.76) 46%,rgba(20,22,26,.44) 100%),
    var(--slide-img,none),
    var(--slide-tint,radial-gradient(120% 105% at 10% 90%,rgba(196,32,38,.55) 0%,rgba(20,22,26,0) 62%));
  background-size:cover;background-position:var(--slide-pos,center);background-repeat:no-repeat;
}
.rx-herobanner__inner{position:relative;z-index:1;width:100%;max-width:1320px;margin:0 auto}
.rx-herobanner .rx-eyebrow{color:var(--rx-crimson-lift);margin-bottom:16px}
.rx-herobanner h1,.rx-herobanner h2{
  font-family:var(--rx-display);
  font-weight:700;
  font-size:clamp(40px,6.6vw,82px);
  line-height:.95;letter-spacing:-.01em;text-transform:uppercase;
  max-width:17ch;margin:0;color:#fff;text-wrap:balance;
}
.rx-herobanner h1 em,.rx-herobanner h2 em{font-style:normal;color:var(--rx-crimson-lift)}
.rx-herobanner p{
  margin:22px 0 0;max-width:58ch;
  font-size:clamp(16px,1.9vw,19px);color:#D6D9DD;
}
.rx-herobanner .rx-actions{margin-top:32px}
.rx-herobanner__tag{
  display:inline-block;
  font-family:var(--rx-display);
  font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:#fff;border:1px solid rgba(255,255,255,.4);
  padding:4px 11px;margin-bottom:16px;
}
.rx-herobanner__nav{
  position:absolute;z-index:3;
  left:var(--rx-gutter);bottom:clamp(26px,4vw,38px);
  display:flex;align-items:center;gap:14px;
}
.rx-herobanner__dots{display:flex;gap:8px}
.rx-herobanner__dot{
  width:30px;height:4px;padding:0;border:0;border-radius:2px;
  background:rgba(255,255,255,.28);cursor:pointer;
  transition:background .2s ease,width .25s ease;
}
.rx-herobanner__dot:hover{background:rgba(255,255,255,.55)}
.rx-herobanner__dot.is-active{background:var(--rx-crimson-lift);width:48px}
.rx-herobanner__pause{
  display:inline-flex;align-items:center;justify-content:center;
  width:26px;height:26px;padding:0;
  background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:50%;
  color:#fff;cursor:pointer;
  transition:background .2s ease,border-color .2s ease;
}
.rx-herobanner__pause:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.6)}
.rx-herobanner__pause svg{display:block;width:9px;height:9px;fill:currentColor}
.rx-herobanner__pause .icon-play{display:none}
.rx-herobanner__pause.is-paused .icon-play{display:block}
.rx-herobanner__pause.is-paused .icon-pause{display:none}
@media(prefers-reduced-motion:reduce){
  .rx-herobanner__slide{transition:none}
}

/* ------------------------------------------------------------------- hero */
.rx-hero{
  padding:clamp(48px,8vw,104px) var(--rx-gutter) clamp(40px,6vw,76px);
  border-bottom:1px solid var(--rx-hairline);
  max-width:1320px;margin:0 auto;
}
.rx-hero h1{
  font-family:var(--rx-display);
  font-weight:700;
  font-size:clamp(42px,7vw,84px);
  line-height:.94;
  letter-spacing:-.01em;
  text-transform:uppercase;
  max-width:15ch;
  margin:0;
  color:var(--rx-ink);
}
.rx-hero h1 em{font-style:normal;color:var(--rx-crimson)}
.rx-hero p{
  margin:26px 0 0;
  max-width:60ch;
  font-size:clamp(16px,2vw,19px);
  color:var(--rx-graphite);
}
.rx-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}

/* ------------------------------------------------------------- treatments */
.rx-treatments{max-width:1320px;margin:0 auto;padding:0 var(--rx-gutter)}

/* group of medications sharing one problem — the group headline carries the
   "what this is for" job that a per-med timing line used to do */
.rx-group__head{
  border-top:2px solid var(--rx-ink);
  padding:clamp(40px,6vw,72px) 0 clamp(24px,4vw,40px);
  max-width:74ch;
}
.rx-group:first-child .rx-group__head{padding-top:clamp(20px,3vw,32px)}
.rx-group__name{
  font-family:var(--rx-display);
  font-weight:700;
  font-size:clamp(32px,5.5vw,58px);
  line-height:.98;
  text-transform:uppercase;
  letter-spacing:-.005em;
  margin:0 0 10px;
  color:var(--rx-crimson);
}
.rx-group__name em{font-style:normal;color:var(--rx-ink)}
.rx-group__head .rx-eyebrow{color:var(--rx-ink)}
.rx-group__intro{
  margin:18px 0 0;
  max-width:66ch;
  font-size:clamp(16px,1.9vw,18px);
  color:var(--rx-graphite);
}

.rx-med{
  padding:clamp(48px,7vw,92px) 0;
  border-bottom:1px solid var(--rx-hairline);
}
.rx-med__head{
  display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;
  margin-bottom:18px;
}
.rx-med__name{
  font-family:var(--rx-display);
  font-weight:700;
  font-size:clamp(38px,7vw,76px);
  line-height:.95;
  text-transform:uppercase;
  letter-spacing:-.005em;
  margin:0;
  color:var(--rx-ink);
}
.rx-med__for{
  font-family:var(--rx-display);
  font-size:15px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rx-crimson);
  padding:6px 12px;
  border:1px solid var(--rx-crimson);
}

/* timing + rationale strip, directly under the name */
.rx-meta{
  display:flex;flex-wrap:wrap;
  border-top:2px solid var(--rx-ink);
  border-bottom:1px solid var(--rx-hairline);
  margin:0 0 clamp(26px,4vw,44px);
}
.rx-meta div{flex:1 1 150px;padding:14px 24px 14px 0;margin:0}
.rx-meta dt{
  font-family:var(--rx-display);
  font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--rx-mist);
  margin-bottom:5px;
}
.rx-meta dd{
  font-family:var(--rx-display);
  font-size:clamp(20px,2.6vw,26px);font-weight:600;
  line-height:1.05;text-transform:uppercase;
  margin:0;
}
.rx-meta div:last-child dd{color:var(--rx-crimson)}

.rx-med__body{display:grid;gap:clamp(24px,4vw,56px);align-items:center}
@media(min-width:860px){
  .rx-med__body{grid-template-columns:1fr 1fr}
  .rx-med--flip .rx-med__figure{order:2}
  .rx-med--flip .rx-med__text{order:1}
}

.rx-med__figure{
  position:relative;
  aspect-ratio:4/3;
  background:var(--rx-bone);
  border:1px solid var(--rx-hairline);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:24px;overflow:hidden;margin:0;
}
.rx-med__figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rx-slot-label{
  font-family:var(--rx-display);
  font-size:13px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--rx-mist);margin-bottom:10px;
}
.rx-slot-note{font-size:13.5px;color:var(--rx-mist);max-width:32ch;line-height:1.5}

.rx-med__text p{
  font-size:clamp(16px,1.9vw,18.5px);
  color:var(--rx-graphite);
  max-width:56ch;
  margin:0;
}
.rx-med__text p + p{margin-top:16px}

/* menu-style suggested treatment */
.rx-pairing{
  margin:clamp(26px,4vw,44px) 0 0;
  padding-top:18px;
  border-top:1px solid var(--rx-hairline);
  font-family:var(--rx-pairing);
  font-style:italic;font-weight:300;
  font-size:clamp(18px,2.3vw,23px);
  line-height:1.45;
  color:var(--rx-ink);
  max-width:62ch;
}
.rx-pairing__label{
  display:block;
  font-family:var(--rx-display);
  font-style:normal;
  font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  color:var(--rx-crimson);
  margin-bottom:8px;
}
.rx-pairing__note{
  display:block;
  margin-top:10px;
  font-family:var(--rx-body);
  font-style:normal;
  font-size:12.5px;
  line-height:1.5;
  color:var(--rx-mist);
  max-width:70ch;
}
.rx-pairing--hi{border-top:0;border-left:3px solid var(--rx-crimson);background:var(--rx-bone);padding:18px clamp(18px,2.5vw,26px)}
.rx-pairing__link{display:inline-block;margin-left:6px;font-family:var(--rx-display);font-style:normal;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rx-crimson);text-decoration:none;border-bottom:2px solid var(--rx-crimson);white-space:nowrap}
.rx-pairing__link:hover{color:var(--rx-crimson-deep)}
.rx-med__tag{display:inline-block;margin-top:8px;font-family:var(--rx-display);font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--rx-crimson);padding:3px 10px}
.rx-med[id]{scroll-margin-top:96px}

/* -------------------------------------------------------------- branches */
.rx-branches{max-width:1320px;margin:0 auto;padding:clamp(48px,7vw,88px) var(--rx-gutter)}
.rx-branches__head{max-width:70ch;margin-bottom:clamp(32px,5vw,52px)}
.rx-branches__head h2{
  font-family:var(--rx-display);
  font-weight:700;text-transform:uppercase;
  font-size:clamp(30px,5vw,52px);line-height:1;
  margin:14px 0 0;color:var(--rx-ink);
}
.rx-branches__grid{display:grid;gap:20px}
@media(min-width:820px){
  .rx-branches__grid{grid-template-columns:repeat(3,1fr)}
  /* four-card branch menus, so the last card never sits alone in a row */
  .rx-branches__grid--two{grid-template-columns:repeat(2,1fr)}
}

.rx-branch{
  position:relative;
  display:flex;flex-direction:column;
  border:1px solid var(--rx-hairline);
  border-top:3px solid var(--rx-ink);
  padding:clamp(28px,3vw,36px) clamp(24px,3vw,30px);
  text-decoration:none;
  color:inherit;
  transition:border-color .18s ease,transform .18s ease;
}
.rx-branch:hover{border-top-color:var(--rx-crimson);transform:translateY(-3px)}
.rx-branch--soon{cursor:default}
.rx-branch--soon:hover{border-top-color:var(--rx-ink);transform:none}
.rx-branch__tag{
  align-self:flex-start;
  font-family:var(--rx-display);
  font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rx-mist);
  border:1px solid var(--rx-hairline);
  padding:4px 10px;
  margin-bottom:16px;
}
.rx-branch__name{
  font-family:var(--rx-display);
  font-weight:700;text-transform:uppercase;
  font-size:clamp(26px,3.2vw,34px);
  line-height:1;
  margin-bottom:12px;
}
.rx-branch__desc{color:var(--rx-graphite);font-size:15.5px;flex:1 0 auto;margin:0 0 22px}
.rx-branch__cta{
  font-family:var(--rx-display);
  font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rx-crimson);
}
.rx-branch--soon .rx-branch__cta{color:var(--rx-mist)}
.rx-branch:hover .rx-branch__cta{color:var(--rx-crimson-deep)}

/* -------------------------------------------------------------- how it works */
.rx-how{background:var(--rx-ink);color:#fff;padding:clamp(52px,8vw,96px) var(--rx-gutter)}
.rx-how__inner{max-width:1320px;margin:0 auto}
.rx-how h2{
  font-family:var(--rx-display);
  font-weight:700;text-transform:uppercase;
  font-size:clamp(32px,5.5vw,56px);line-height:1;
  margin:0 0 clamp(32px,5vw,48px);color:#fff;
}
.rx-how__steps{list-style:none;display:grid;gap:32px;margin:0;padding:0}
@media(min-width:760px){.rx-how__steps{grid-template-columns:repeat(3,1fr);gap:28px}}
.rx-how__steps li{display:flex;gap:16px}
@media(min-width:760px){.rx-how__steps li{flex-direction:column;gap:14px}}
.rx-how__steps .rx-how__num{
  font-family:var(--rx-display);
  font-weight:700;font-size:20px;
  color:var(--rx-crimson);
  flex:0 0 auto;
}
.rx-how__steps b{
  display:block;
  font-family:var(--rx-display);
  font-weight:600;font-size:19px;text-transform:uppercase;letter-spacing:.02em;
  margin-bottom:6px;
}
.rx-how__steps span{color:#A9AEB5;font-size:15px;line-height:1.55}

/* ---------------------------------------------------------------- selector */
.rx-selector{background:var(--rx-ink);color:#fff;padding:clamp(52px,8vw,96px) var(--rx-gutter)}
.rx-selector__inner{max-width:1320px;margin:0 auto}
.rx-selector h2{
  font-family:var(--rx-display);
  font-weight:700;text-transform:uppercase;
  font-size:clamp(32px,5.5vw,60px);line-height:1;
  margin:0 0 34px;color:#fff;
}
.rx-selector ul{list-style:none;margin:0;padding:0;border-top:1px solid #2E3238}
.rx-selector li{display:grid;gap:6px;padding:20px 0;border-bottom:1px solid #2E3238}
@media(min-width:760px){.rx-selector li{grid-template-columns:1fr 1.4fr;gap:32px;align-items:baseline}}
.rx-selector b{
  font-family:var(--rx-display);
  font-weight:600;font-size:clamp(19px,2.4vw,24px);
  text-transform:uppercase;letter-spacing:.03em;
}
.rx-selector span{color:#A9AEB5;font-size:15.5px}
.rx-selector em{font-style:normal;color:#fff;font-weight:500}

/* ------------------------------------------------------------ start / embed */
.rx-start{max-width:1100px;margin:0 auto;padding:clamp(36px,6vw,64px) var(--rx-gutter) 40px}
.rx-start h1{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(36px,6vw,64px);line-height:.98;max-width:16ch;margin:0;color:var(--rx-ink);
}
.rx-start h1 em{font-style:normal;color:var(--rx-crimson)}
.rx-start > p{margin:16px 0 0;max-width:60ch;color:var(--rx-graphite);font-size:16.5px}
/* "you're requesting" summary, read from the plan builder by assets/plan.js */
.rx-requesting{max-width:1100px;margin:0 auto 26px;padding:0 var(--rx-gutter)}
.rx-requesting__card{border:1px solid var(--rx-hairline);border-top:3px solid var(--rx-crimson);background:var(--rx-paper);padding:20px 22px 18px}
.rx-requesting__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.rx-requesting__head .rx-eyebrow{margin:0}
.rx-requesting__clear{background:none;border:0;padding:0;cursor:pointer;font-size:12.5px;color:var(--rx-mist);text-decoration:underline}
.rx-requesting__clear:hover{color:var(--rx-crimson)}
.rx-requesting__list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column}
.rx-requesting__list li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:9px 0;border-top:1px solid var(--rx-hairline)}
.rx-requesting__name{font-family:var(--rx-display);font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:.02em;color:var(--rx-ink)}
.rx-requesting__name small{font-family:var(--rx-body);font-weight:400;font-size:12.5px;color:var(--rx-mist);text-transform:none;letter-spacing:0;margin-left:8px}
.rx-requesting__price{font-family:var(--rx-display);font-weight:600;font-size:15px;color:var(--rx-graphite);font-variant-numeric:tabular-nums}
.rx-requesting__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--rx-hairline)}
.rx-btn--small{font-size:13px;padding:9px 16px}
.rx-requesting__hint{font-size:13px;color:var(--rx-graphite)}

.rx-embed{max-width:1100px;margin:0 auto;padding:0 var(--rx-gutter) clamp(48px,7vw,80px)}
.rx-embed__frame{border:1px solid var(--rx-hairline);border-top:3px solid var(--rx-crimson);background:var(--rx-paper);overflow:hidden}
.rx-embed__frame iframe{display:block;width:100%;min-height:760px;border:0}
.rx-embed__credit{margin:12px 0 0;font-size:12.5px;color:var(--rx-mist)}
.rx-embed__credit a{color:var(--rx-graphite)}

/* --------------------------------------------------------------------- cta */
.rx-close{padding:clamp(56px,9vw,110px) var(--rx-gutter);text-align:center;max-width:840px;margin:0 auto}
.rx-close h2{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(34px,6.5vw,68px);line-height:.98;margin:0;color:var(--rx-ink);
}
.rx-close p{margin:20px auto 32px;color:var(--rx-graphite);max-width:52ch;font-size:17px}

/* ---------------------------------------------------------------- fineprint */
.rx-fineprint{
  border-top:1px solid var(--rx-hairline);
  background:var(--rx-bone);
  padding:36px var(--rx-gutter) 48px;
}
.rx-fineprint__inner{max-width:1320px;margin:0 auto}
.rx-fineprint p{font-size:12.5px;color:var(--rx-mist);max-width:88ch;line-height:1.65;margin:0}
.rx-fineprint p + p{margin-top:12px}

/* -------------------------------------------- split hero (Ignite landing) */
.rx-btn--ink{background:var(--rx-ink);border-color:var(--rx-ink)}
.rx-btn--ink:hover,.rx-btn--ink:focus{background:var(--rx-crimson);border-color:var(--rx-crimson)}
.rx-textlink{
  display:inline-block;
  font-family:var(--rx-display);
  font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rx-ink);
  text-decoration:none;
  padding-bottom:3px;
  border-bottom:2px solid var(--rx-crimson);
  transition:color .18s ease;
}
.rx-textlink:hover,.rx-textlink:focus{color:var(--rx-crimson)}
.rx-split{
  max-width:1320px;margin:0 auto;
  padding:clamp(48px,7vw,96px) var(--rx-gutter) clamp(44px,6vw,80px);
  display:grid;gap:clamp(32px,5vw,64px);
  align-items:center;
}
@media(min-width:900px){.rx-split{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
.rx-split h1{
  font-family:var(--rx-display);
  font-weight:700;
  font-size:clamp(46px,8vw,96px);
  line-height:.94;letter-spacing:-.01em;text-transform:uppercase;
  max-width:16ch;margin:0;color:var(--rx-ink);
}
.rx-split h1 em{font-style:normal;color:var(--rx-crimson)}
.rx-h1-logo{display:inline-block;height:.86em;width:auto;vertical-align:-.06em;margin-right:.08em}
.rx-split__lead{margin:26px 0 0;max-width:56ch;font-size:clamp(16px,2vw,19px);color:var(--rx-graphite)}
.rx-split__actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:34px}
.rx-split__fine{margin:22px 0 0;font-size:12.5px;color:var(--rx-mist);max-width:60ch;line-height:1.6}
.rx-split__media{
  position:relative;
  aspect-ratio:4/3;
  background:var(--rx-bone) var(--media-img,none) center/cover no-repeat;
  background-position:var(--media-pos,center);
  border:1px solid var(--rx-hairline);
}
.rx-split__media::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,22,26,0) 55%,rgba(20,22,26,.28) 100%);
}
.rx-split--stack h1{font-size:clamp(44px,6.2vw,80px);max-width:none}
.rx-split--stack .rx-h1-logo{height:.8em}
@media(min-width:900px){.rx-split--stack{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}
.rx-divider{border:0;border-top:1px solid var(--rx-hairline);margin:0}

/* --------------------------------------------------------------- formulary */
.rx-formulary{max-width:1320px;margin:0 auto;padding:clamp(52px,8vw,96px) var(--rx-gutter) clamp(44px,6vw,72px)}
.rx-formulary__head{text-align:center;max-width:720px;margin:0 auto clamp(36px,5vw,56px)}
.rx-formulary__head .rx-eyebrow{margin-bottom:14px}
.rx-formulary__head h2{
  font-family:var(--rx-display);
  font-weight:700;text-transform:uppercase;
  font-size:clamp(36px,6vw,64px);line-height:1;
  margin:0;color:var(--rx-ink);
}
.rx-formulary__head p{margin:18px 0 0;color:var(--rx-graphite);font-size:16.5px}
.rx-formulary__grid{display:grid;gap:22px}
@media(min-width:820px){.rx-formulary__grid{grid-template-columns:repeat(2,1fr)}}
.rx-card{
  display:flex;flex-direction:column;
  border:1px solid var(--rx-hairline);
  border-top:3px solid var(--rx-crimson);
  padding:clamp(26px,3vw,34px) clamp(24px,3vw,32px) clamp(22px,3vw,28px);
  background:var(--rx-paper);
}
.rx-pill{
  align-self:flex-start;
  font-family:var(--rx-display);
  font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rx-crimson);
  border:1px solid var(--rx-crimson);
  border-radius:999px;
  padding:3px 11px;margin-bottom:18px;
}
.rx-card__name{
  font-family:var(--rx-display);
  font-weight:700;text-transform:uppercase;
  font-size:clamp(30px,3.6vw,40px);line-height:1;
  margin:0;color:var(--rx-ink);
}
.rx-card__formula{
  font-family:var(--rx-display);
  font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--rx-graphite);
  margin:8px 0 16px;
}
.rx-card__desc{margin:0;color:var(--rx-ink);font-size:16px;flex:1 0 auto}
.rx-card__price{margin:12px 0 0;font-family:var(--rx-pairing);font-style:italic;font-size:14px;color:var(--rx-graphite)}
.rx-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.rx-chip{
  font-size:12.5px;font-weight:600;
  color:var(--rx-ink);
  background:var(--rx-bone);
  border:1px solid var(--rx-hairline);
  border-radius:999px;
  padding:5px 12px;
}
.rx-card__foot{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin-top:22px;padding-top:18px;
  border-top:1px solid var(--rx-hairline);
}
.rx-card__foot small{font-size:12.5px;color:var(--rx-mist)}
.rx-card__foot .rx-textlink{margin-right:auto}
.rx-card__compound{margin:14px 0 0;font-size:11.5px;color:var(--rx-mist);line-height:1.5}
.rx-strip{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;
  margin-top:28px;
  padding:22px clamp(22px,3vw,30px);
  background:var(--rx-bone);
}
.rx-strip p{margin:0;font-size:15.5px;color:var(--rx-ink)}
.rx-strip b{font-weight:600}
.rx-strip__actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}
.rx-strip__price{font-family:var(--rx-pairing);font-style:italic;font-size:14px;color:var(--rx-graphite);white-space:nowrap}
.rx-how__steps--big .rx-how__num{font-size:clamp(28px,3vw,36px);line-height:1;color:var(--rx-crimson-lift)}
/* ------------------------------------------------- ED plan builder (/ed-plan) */

/* no-JS fallback; masthead.js replaces this with the measured header height */
.rx{--rx-masthead-h:122px}
.rx-hero__note{margin-top:14px;font-family:var(--rx-pairing);font-style:italic;font-size:15px;color:var(--rx-graphite)}
.rx-pill{display:inline-block}
.rx-tier button,.rx-planbar button{cursor:pointer}
.rx-planbar .rx-btn{border:1px solid var(--rx-crimson)}
/* ---------- jump bar ---------- */
.rx-jump{
  position:sticky;top:var(--rx-masthead-h);z-index:40;
  background:var(--rx-bone);border-top:1px solid var(--rx-hairline);border-bottom:1px solid var(--rx-hairline);
}
.rx-jump__inner{max-width:1320px;margin:0 auto;padding:0 var(--rx-gutter);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.rx-jump__inner::-webkit-scrollbar{display:none}
.rx-jump a{
  flex:0 0 auto;padding:13px 14px;
  font-family:var(--rx-display);font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rx-graphite);text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-1px;
}
.rx-jump a:hover,.rx-jump a.is-current{color:var(--rx-crimson);border-bottom-color:var(--rx-crimson)}

/* ---------- options ---------- */
.rx-options{max-width:1320px;margin:0 auto;padding:0 var(--rx-gutter)}
.rx-option{
  scroll-margin-top:calc(var(--rx-masthead-h) + 52px);
  padding:clamp(40px,6vw,64px) 0;
  border-bottom:1px solid var(--rx-hairline);
  display:grid;gap:clamp(24px,4vw,48px);
}
@media(min-width:900px){.rx-option{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}}
.rx-option:last-child{border-bottom:0}
.pill{
  display:inline-block;font-family:var(--rx-display);
  font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rx-crimson);border:1px solid var(--rx-crimson);border-radius:999px;padding:3px 11px;margin-bottom:16px;
}
.rx-pill--ink{color:var(--rx-graphite);border-color:var(--rx-hairline)}
.rx-option h2{margin:0;color:var(--rx-ink);font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(34px,4.5vw,52px);line-height:1}
.rx-option__formula{font-family:var(--rx-display);font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rx-graphite);margin:8px 0 16px}
.rx-option__desc{color:var(--rx-ink);font-size:16px;max-width:52ch}
.rx-option__from{margin-top:12px;font-family:var(--rx-pairing);font-style:italic;font-size:15px;color:var(--rx-graphite)}
.rx-option__compound{margin-top:16px;font-size:11.5px;color:var(--rx-mist);line-height:1.5;max-width:52ch}
.rx-option__back{display:inline-block;margin-top:18px;font-size:13px;color:var(--rx-graphite)}

/* pricing table */
.rx-tiers{border:1px solid var(--rx-hairline);border-top:3px solid var(--rx-ink)}
.rx-tiers__summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px clamp(16px,2vw,22px);font-family:var(--rx-display);font-size:17px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;user-select:none}
.rx-tiers__summary::-webkit-details-marker{display:none}
.rx-tiers__summary:hover{color:var(--rx-crimson)}
.rx-tiers__toggle{flex:0 0 auto;width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s ease;margin-top:-4px}
.rx-tiers[open] .rx-tiers__toggle{transform:rotate(-135deg);margin-top:4px}
.rx-tiers__body{border-top:1px solid var(--rx-hairline)}
.rx-tiers__title{margin:0;padding:14px clamp(16px,2vw,22px) 10px;font-family:var(--rx-display);font-size:18px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--rx-ink);border-bottom:1px solid var(--rx-hairline)}
.rx-tiers__title--second{border-top:3px solid var(--rx-ink)}
.rx-tier__save{display:inline-block;margin-top:5px;font-family:var(--rx-display);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--rx-crimson);padding:2px 8px;white-space:nowrap;line-height:1.5}
.rx-tiers__summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px clamp(16px,2vw,22px);font-family:var(--rx-display);font-size:17px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;user-select:none}
.rx-tiers__summary::-webkit-details-marker{display:none}
.rx-tiers__summary:hover{color:var(--rx-crimson)}
.rx-tiers__toggle{flex:0 0 auto;width:12px;height:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s ease;margin-top:-4px}
.rx-tiers[open] .rx-tiers__toggle{transform:rotate(-135deg);margin-top:4px}
.rx-tiers__body{border-top:1px solid var(--rx-hairline)}
.rx-tier__save{display:inline-block;margin-top:5px;font-family:var(--rx-display);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--rx-crimson);padding:2px 8px;white-space:nowrap;line-height:1.5}
.rx-tiers__head{
  display:grid;grid-template-columns:1.2fr 1fr 1.2fr 118px;gap:12px;align-items:center;
  padding:12px clamp(16px,2vw,22px);
  font-family:var(--rx-display);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-mist);
  border-bottom:1px solid var(--rx-hairline);
}
.rx-tier{
  display:grid;grid-template-columns:1.2fr 1fr 1.2fr 118px;gap:12px;align-items:center;
  padding:16px clamp(16px,2vw,22px);
  border-bottom:1px solid var(--rx-hairline);
  transition:background .18s ease;
}
.rx-tier:last-child{border-bottom:0}
.rx-tier.is-in{background:#FBF1F1}
.rx-tier.is-disabled{opacity:.38}
.rx-tier.is-disabled .rx-tier__add{background:var(--rx-mist);border-color:var(--rx-mist);cursor:not-allowed}
.rx-tier__name{font-weight:600;font-size:15.5px}
.rx-tier__name small{display:block;font-weight:400;font-size:12.5px;color:var(--rx-mist)}
.rx-tier__price{font-family:var(--rx-display);font-weight:600;font-size:20px;font-variant-numeric:tabular-nums}
.rx-tier__per{font-size:13.5px;color:var(--rx-graphite);font-variant-numeric:tabular-nums}
.rx-tier__price.is-tbd,.rx-tier__per.is-tbd{color:var(--rx-mist);font-weight:400}
.rx-tier__name b{display:block;font-family:var(--rx-display);font-weight:700;font-size:18px;line-height:1.15;letter-spacing:.02em;text-transform:uppercase}
.rx-tier__name small{margin-top:3px}
.rx-tier__price{text-align:center;justify-self:center;display:flex;flex-direction:column;align-items:center}
.rx-tier__price b{display:block;font-family:var(--rx-display);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--rx-graphite);line-height:1.2;margin-bottom:2px}
.rx-tiers__head span:nth-child(2){text-align:center}
.rx-tier__add{
  font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:9px 16px;background:var(--rx-crimson);color:#fff;border:1px solid var(--rx-crimson);white-space:nowrap;
  transition:background .18s ease,color .18s ease;
}
.rx-tier__add:hover{background:var(--rx-crimson-deep);border-color:var(--rx-crimson-deep)}
.rx-tier.is-in .rx-tier__add{background:var(--rx-ink);border-color:var(--rx-ink)}
.rx-tier.is-in .rx-tier__add::before{content:"✓ "}
.rx-tiers__note{padding:12px clamp(16px,2vw,22px);font-size:12px;color:var(--rx-mist);border-top:1px solid var(--rx-hairline);background:var(--rx-bone)}
@media(max-width:600px){
  .rx-tiers__head{display:none}
  .rx-tier{grid-template-columns:1fr auto;grid-template-areas:"name add" "price add" "per add"}
  .rx-tier__name{grid-area:name}.rx-tier__price{grid-area:price}.rx-tier__per{grid-area:per}.rx-tier__price{text-align:left;justify-self:start;align-items:flex-start}.rx-tier__save{grid-area:save}.rx-tier__add{grid-area:add}
}

/* ---------- plan bar ---------- */
.rx-planbar{
  position:fixed;left:0;right:0;bottom:0;z-index:45;
  background:var(--rx-ink);color:#fff;
  border-top:1px solid rgba(255,255,255,.1);
  transform:translateY(100%);transition:transform .25s ease;
}
.rx-planbar.is-open{transform:none}
.rx-planbar__inner{max-width:1320px;margin:0 auto;padding:14px var(--rx-gutter);display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.rx-planbar__count{font-family:var(--rx-display);font-weight:700;font-size:20px;text-transform:uppercase;letter-spacing:.04em}
.rx-planbar__count b{color:var(--rx-crimson-lift)}
.rx-planbar__est{font-size:14px;color:#A9AEB5}
.rx-planbar__est b{color:#fff;font-family:var(--rx-display);font-size:18px;font-weight:600}
.rx-planbar__spacer{flex:1 1 auto}
.rx-planbar__clear{font-size:13px;color:#A9AEB5;text-decoration:underline}
.rx-planbar__clear:hover{color:#fff}
.rx-planbar__actions{display:flex;flex-wrap:wrap;gap:10px}
.rx-planbar__actions .rx-btn{font-size:14px;padding:11px 18px}
/* ---------- hair: tabs, three-up grid, tags ---------- */
.rx-formulary__grid--three{gap:18px}
@media(min-width:1040px){.rx-formulary__grid--three{grid-template-columns:repeat(3,1fr)}}
.rx-tabs__input{position:absolute;opacity:0;pointer-events:none}
.rx-tabs__bar{display:flex;gap:0;border-bottom:1px solid var(--rx-hairline);margin-bottom:26px}
.rx-tabs__tab{flex:1 1 0;cursor:pointer;padding:14px 18px 12px;border-bottom:3px solid transparent;margin-bottom:-1px;text-align:center;transition:color .18s ease,border-color .18s ease}
.rx-tabs__tab b{display:block;font-family:var(--rx-display);font-size:22px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1.1;color:var(--rx-graphite)}
.rx-tabs__tab span{display:block;font-size:12.5px;color:var(--rx-mist);margin-top:2px}
.rx-tabs__tab:hover b{color:var(--rx-crimson)}
#mhl-tab-oral:checked ~ .rx-tabs__bar label[for="mhl-tab-oral"],#mhl-tab-topical:checked ~ .rx-tabs__bar label[for="mhl-tab-topical"],
#whl-tab-oral:checked ~ .rx-tabs__bar label[for="whl-tab-oral"],#whl-tab-topical:checked ~ .rx-tabs__bar label[for="whl-tab-topical"]{border-bottom-color:var(--rx-crimson)}
#mhl-tab-oral:checked ~ .rx-tabs__bar label[for="mhl-tab-oral"] b,#mhl-tab-topical:checked ~ .rx-tabs__bar label[for="mhl-tab-topical"] b,
#whl-tab-oral:checked ~ .rx-tabs__bar label[for="whl-tab-oral"] b,#whl-tab-topical:checked ~ .rx-tabs__bar label[for="whl-tab-topical"] b{color:var(--rx-ink)}
.rx-tabs__panel{display:none}
#mhl-tab-oral:checked ~ .rx-tabs__panel--oral,#mhl-tab-topical:checked ~ .rx-tabs__panel--topical,
#whl-tab-oral:checked ~ .rx-tabs__panel--oral,#whl-tab-topical:checked ~ .rx-tabs__panel--topical{display:block}
.rx-tabs__panel .rx-reveal{opacity:1;transform:none}
.rx-card__tag{align-self:flex-start;margin:-6px 0 12px;font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--rx-crimson);padding:3px 9px}
.rx-split__slot{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--rx-display);font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-mist);text-align:center;padding:20px}
/* ---------- hair plan: kind headings, jump groups ---------- */
.rx-tier--addon{grid-template-columns:1fr auto;grid-template-areas:none;margin-top:14px;padding:12px 16px;border:1px solid var(--rx-hairline);border-left:3px solid var(--rx-crimson);background:var(--rx-bone);max-width:52ch}
.rx-tier--addon .rx-tier__name b{font-size:15px;text-transform:none;letter-spacing:0;font-family:var(--rx-body);font-weight:600}
.rx-tier--addon .rx-tier__add{padding:7px 12px;font-size:12px}
.rx-card__note{margin:10px 0 0;font-size:13.5px;font-weight:600;color:var(--rx-crimson)}
.rx-options__kind{scroll-margin-top:calc(var(--rx-masthead-h) + 52px);font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(22px,3vw,30px);letter-spacing:.04em;color:var(--rx-crimson);padding:clamp(28px,4vw,40px) 0 0;margin:0}
.rx-options__kind + .rx-option{padding-top:clamp(20px,3vw,32px)}
.rx-jump__group{color:var(--rx-ink)!important;border-left:1px solid var(--rx-hairline);margin-left:8px;padding-left:18px}
.rx-jump__group:first-child{border-left:0;margin-left:0;padding-left:14px}
.rx-option .rx-card__tag{margin:0 0 12px}
/* ---------- plan drawer ---------- */
.rx-drawer{position:fixed;inset:0;z-index:70;visibility:hidden;pointer-events:none}
.rx-drawer.is-open{visibility:visible;pointer-events:auto}
.rx-drawer__scrim{position:absolute;inset:0;background:rgba(20,22,26,.55);opacity:0;transition:opacity .25s ease}
.rx-drawer.is-open .rx-drawer__scrim{opacity:1}
.rx-drawer__panel{position:absolute;top:0;bottom:0;right:0;width:min(440px,92vw);background:var(--rx-paper);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s ease;box-shadow:-12px 0 40px rgba(20,22,26,.18)}
.rx-drawer.is-open .rx-drawer__panel{transform:none}
.rx-drawer__head{display:flex;align-items:flex-start;gap:16px;padding:22px 22px 16px;border-bottom:1px solid var(--rx-hairline)}
.rx-drawer__head .rx-eyebrow{margin-bottom:6px}
.rx-drawer__title{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:26px;line-height:1;margin:0}
.rx-drawer__x{font-size:30px;line-height:1;color:var(--rx-graphite);padding:0 4px;cursor:pointer;background:none;border:0}
.rx-drawer__x:hover{color:var(--rx-crimson)}
.rx-drawer__list{list-style:none;margin:0;padding:6px 22px;overflow-y:auto;flex:1 1 auto}
.rx-drawer__item{display:grid;grid-template-columns:1fr auto auto;gap:6px 14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rx-hairline)}
.rx-drawer__item b{display:block;font-family:var(--rx-display);font-weight:700;font-size:17px;text-transform:uppercase;letter-spacing:.02em;line-height:1.15}
.rx-drawer__item small{display:block;font-size:12.5px;color:var(--rx-mist);margin-top:2px}
.rx-drawer__price{font-family:var(--rx-display);font-weight:600;font-size:18px;font-variant-numeric:tabular-nums}
.rx-drawer__remove{width:30px;height:30px;border:1px solid var(--rx-hairline);background:var(--rx-bone);color:var(--rx-graphite);font-size:18px;line-height:1;cursor:pointer;border-radius:999px}
.rx-drawer__remove:hover{border-color:var(--rx-crimson);color:var(--rx-crimson)}
.rx-drawer__empty{padding:28px 22px;color:var(--rx-mist);font-size:14.5px;margin:0}
.rx-drawer.has-items .rx-drawer__empty{display:none}
.rx-drawer__foot{padding:18px 22px 22px;border-top:3px solid var(--rx-ink);background:var(--rx-bone);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.rx-drawer__total span{display:block;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--rx-graphite);font-family:var(--rx-display);font-weight:600}
.rx-drawer__total b{display:block;font-family:var(--rx-display);font-weight:700;font-size:30px;line-height:1.05;font-variant-numeric:tabular-nums}
.rx-drawer__total small{display:block;font-size:11.5px;color:var(--rx-mist);margin-top:4px;max-width:26ch}
.rx-drawer__send{font-size:15px;padding:12px 20px;cursor:pointer}
@media(prefers-reduced-motion:reduce){.rx-drawer__panel,.rx-drawer__scrim{transition:none}}

/* ---------- GLP-1 pricing guide ---------- */
.rx-guide{max-width:1320px;margin:0 auto;padding:clamp(44px,7vw,88px) var(--rx-gutter) clamp(40px,6vw,72px);display:grid;gap:clamp(32px,5vw,64px);align-items:start}
@media(min-width:960px){.rx-guide{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}
.rx-guide h1{font-family:var(--rx-display);font-weight:700;font-size:clamp(46px,7vw,88px);line-height:.94;letter-spacing:-.01em;text-transform:uppercase;max-width:12ch}
.rx-guide h1 em{font-style:normal;color:var(--rx-crimson)}
.rx-guide__sub{margin-top:14px;font-family:var(--rx-display);font-size:clamp(20px,2.4vw,26px);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--rx-graphite)}
.rx-guide__lead{margin-top:26px;font-size:clamp(16px,1.9vw,18px);color:var(--rx-ink);max-width:60ch}
.rx-guide__lead a{color:var(--rx-crimson);font-weight:600;text-decoration:none;border-bottom:2px solid var(--rx-crimson)}
.rx-guide__h{margin-top:30px;font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:20px;letter-spacing:.04em;color:var(--rx-ink)}
.rx-guide__text p:not(.rx-guide__lead):not(.rx-guide__sub):not(.rx-eyebrow):not(.rx-guide__fine){margin-top:10px;font-size:14.5px;line-height:1.6;color:var(--rx-graphite);max-width:60ch}
.rx-guide__text p strong{color:var(--rx-ink);font-weight:600}
.rx-guide__actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px}
.rx-guide__fine{margin-top:20px;font-size:12px;color:var(--rx-mist);max-width:60ch;line-height:1.55}
.rx-guide__charts{display:grid;gap:22px}
@media(min-width:960px){.rx-guide__charts{position:sticky;top:calc(var(--rx-masthead-h,66px) + 20px)}}
.rx-chart{width:100%;border-collapse:collapse;border:1px solid var(--rx-hairline);border-top:4px solid var(--rx-crimson);background:var(--rx-paper)}
.rx-chart caption{text-align:left;padding:18px 20px 12px;caption-side:top}
.rx-chart__cap{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.rx-chart__cap .rx-btn{margin-top:4px;white-space:nowrap}
.rx-chart__name{display:block;font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:30px;line-height:1}
.rx-chart__sub{display:block;margin-top:4px;font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rx-graphite)}
.rx-chart th,.rx-chart td{padding:11px 20px;border-top:1px solid var(--rx-hairline);vertical-align:middle;font-size:15px}
.rx-chart th{text-align:left;font-weight:600;color:var(--rx-ink)}
.rx-chart th small{display:block;font-weight:400;font-size:12px;color:var(--rx-mist);margin-top:1px}
.rx-chart td{text-align:right;font-family:var(--rx-display);font-weight:700;font-size:22px;white-space:nowrap;font-variant-numeric:tabular-nums}
.rx-chart td small{font-family:var(--rx-body);font-weight:400;font-size:12px;color:var(--rx-mist);margin-left:2px}
.rx-chart__member th,.rx-chart__member td{background:var(--rx-bone)}
.rx-chart__member th a{color:var(--rx-crimson);text-decoration:none;border-bottom:2px solid var(--rx-crimson)}
.rx-chart__member th a:hover{color:var(--rx-crimson-deep)}
.rx-chart tfoot td{text-align:left;font-family:var(--rx-body);font-weight:400;font-size:12.5px;color:var(--rx-graphite);background:var(--rx-bone);white-space:normal;border-top:2px solid var(--rx-ink)}
.rx-chart tfoot b{font-weight:600;color:var(--rx-ink)}

/* ---------- GLP-1 plan: stacked dropdowns, required tag ---------- */
.rx-req{font-style:normal;color:var(--rx-crimson);font-size:12px;letter-spacing:.12em;margin-left:4px}
.rx-tiers__note a{color:var(--rx-crimson);font-weight:600;text-decoration:none;border-bottom:1px solid var(--rx-crimson)}
.rx-tier__price.is-tbd{font-size:16px;font-weight:600;color:var(--rx-graphite)}

.rx-tiers--three .rx-tiers__head,.rx-tiers--three .rx-tier{grid-template-columns:1.3fr 1fr 118px}
.rx-tiers--three .rx-tier__price{align-items:center}
.rx-tiers--three .rx-tier__price small{display:block;font-family:var(--rx-body);font-weight:400;font-size:12px;color:var(--rx-mist);margin-top:1px;text-transform:none;letter-spacing:0}
@media(max-width:600px){.rx-tiers--three .rx-tier{grid-template-columns:1fr auto;grid-template-areas:"name add" "price add"}.rx-tiers--three .rx-tier__price{align-items:flex-start}}

/* ---------- winter program cards ---------- */
.rx-card--program{border-top-width:4px}
.rx-program__price{margin:14px 0 4px;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
.rx-program__price b{font-family:var(--rx-display);font-weight:700;font-size:44px;line-height:1;letter-spacing:-.01em}
.rx-program__price span{font-size:13.5px;color:var(--rx-graphite)}
.rx-program__arc{list-style:none;margin:14px 0 0;padding:0;border-top:1px solid var(--rx-hairline)}
.rx-program__arc li{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--rx-hairline);font-size:13.5px}
.rx-program__arc b{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:14px}
.rx-program__arc span{color:var(--rx-graphite)}
.rx-program__incl{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px}
.rx-program__incl li{position:relative;padding-left:22px;font-size:14px;color:var(--rx-ink)}
.rx-program__incl li::before{content:'';position:absolute;left:0;top:.5em;width:12px;height:7px;border-left:2.5px solid var(--rx-crimson);border-bottom:2.5px solid var(--rx-crimson);transform:rotate(-45deg)}
.rx-card--program .rx-card__note{margin-top:14px}
.rx-card--program .rx-card__desc{display:none}

/* ---------- skin: two-button card foot, guide sections, pairing box ---------- */
.rx-card__foot--two{justify-content:flex-start;gap:10px}
.rx-card__foot--two .rx-btn{flex:1 1 auto;text-align:center}
.rx-pairbox{margin:22px 0 0;background:var(--rx-bone);border-left:3px solid var(--rx-crimson);padding:16px 18px}
.rx-pairbox__label{display:block;font-family:var(--rx-display);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--rx-crimson);margin-bottom:10px}
.rx-pairbox dl{margin:0;display:grid;gap:8px}
.rx-pairbox dl div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:baseline}
.rx-pairbox dt{font-family:var(--rx-display);font-weight:700;font-size:14px;letter-spacing:.08em;color:var(--rx-ink)}
.rx-pairbox dd{margin:0;font-size:14.5px;color:var(--rx-ink)}
.rx-pairbox figcaption{margin-top:10px;font-size:13px;color:var(--rx-graphite);line-height:1.5}
.rx-pairbox--sm{margin-top:16px;padding:12px 14px;max-width:52ch}
.rx-pairbox--sm dd{font-size:13.5px}
.rx-gwrap{max-width:1320px;margin:0 auto;padding:0 var(--rx-gutter)}
.rx-gsec{scroll-margin-top:calc(var(--rx-masthead-h,66px) + 52px);padding:clamp(40px,6vw,64px) 0;border-bottom:1px solid var(--rx-hairline);display:grid;gap:clamp(24px,4vw,48px)}
@media(min-width:960px){.rx-gsec{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}}
.rx-gsec__intro h2{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(34px,4.5vw,52px);line-height:1;margin:0}
.rx-gsec__intro h2 em{font-style:normal;color:var(--rx-crimson)}
.rx-gsec__intro > p:not(.rx-eyebrow){margin-top:14px;font-size:16px;color:var(--rx-graphite);max-width:56ch}
.rx-gsec__intro .rx-btn{margin-top:22px}
.rx-gsec__list{display:grid;gap:14px}
.rx-ing{border:1px solid var(--rx-hairline);border-top:3px solid var(--rx-ink);padding:18px 20px 16px;background:var(--rx-paper)}
.rx-ing__head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}
.rx-ing__tier{font-family:var(--rx-display);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--rx-crimson);padding:3px 9px}
.rx-ing__maint{font-family:var(--rx-display);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-graphite);border:1px solid var(--rx-hairline);padding:2px 8px}
.rx-ing__name{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:20px;line-height:1.1;margin:0}
.rx-ing__form{margin:4px 0 10px;font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rx-graphite)}
.rx-ing__why{margin:0;font-size:14.5px;color:var(--rx-ink)}
.rx-ing__limit{margin:10px 0 0;padding:10px 12px;background:var(--rx-bone);border-left:3px solid var(--rx-crimson);font-size:13px;color:var(--rx-ink);line-height:1.5}
.rx-ing__limit b{color:var(--rx-crimson)}
.rx-gsec--rules .rx-gsec__list{gap:10px}
.rx-gsec--rules .rx-ing{border-top-color:var(--rx-crimson)}
.rx-gsec--rules .rx-ing__name{font-size:17px}
.rx-tier__flag{color:var(--rx-crimson);font-weight:600}
.rx-ing__badge{font-family:var(--rx-display);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-crimson);border:1px solid var(--rx-crimson);padding:2px 8px}
.rx-tier__badge{display:inline-block;vertical-align:middle;margin-left:8px;font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-crimson);border:1px solid var(--rx-crimson);padding:1px 7px;line-height:1.5}
.rx-ing__tier{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:24px;line-height:1;letter-spacing:.02em;color:var(--rx-crimson);background:none;padding:0;margin:0}
.rx-ing__name{margin:6px 0 0;font-family:var(--rx-pairing);font-style:italic;font-weight:400;font-size:15px;line-height:1.35;text-transform:none;color:var(--rx-graphite)}
.rx-ing__form{margin-top:6px}
.rx-tiers--three .rx-tier__name b{font-size:20px;color:var(--rx-crimson)}
.rx-tiers--three .rx-tier__name small{font-family:var(--rx-pairing);font-style:italic;font-size:13.5px;color:var(--rx-graphite);line-height:1.45}
.rx-tiers--three .rx-tier__name small br+*{font-family:var(--rx-body);font-style:normal}
.rx-ing__star{margin:10px 0 0;font-family:var(--rx-pairing);font-style:italic;font-size:14px;color:var(--rx-crimson)}
.rx-tier__star{font-style:italic;color:var(--rx-crimson)}
.rx-tiers--three .rx-tier__name small{line-height:1.45}

.rx-btn--soon{background:var(--rx-bone);color:var(--rx-mist);border-color:var(--rx-hairline);cursor:default}
.rx-card__compound a{color:var(--rx-crimson)}

.rx-formulary__group{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(20px,2.6vw,26px);letter-spacing:.04em;color:var(--rx-crimson);margin:0 0 14px;padding-top:10px}
.rx-formulary__grid+.rx-formulary__group{margin-top:34px}

.rx-split__media--full{aspect-ratio:1672/934;border:0;background-size:cover}
@media(min-width:900px){.rx-split__media--full{aspect-ratio:1672/934}}
.rx-split__media--full::after{display:none}
.rx-split--hormones h1{max-width:16ch}
.rx-split--hormones h1 em{display:block;font-size:.72em;margin-top:.12em}

/* ---------- straight answers ---------- */
.rx-qa{background:var(--rx-bone);padding:clamp(52px,7vw,88px) var(--rx-gutter)}
.rx-qa__inner{max-width:820px;margin:0 auto}
.rx-qa h2{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(32px,5vw,52px);line-height:1;margin:0 0 clamp(26px,4vw,40px)}
.rx-qa h2 em{font-style:normal;color:var(--rx-crimson)}
.rx-qa__item{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px 0;border-top:1px solid var(--rx-hairline)}
.rx-qa__item:last-child{border-bottom:1px solid var(--rx-hairline)}
.rx-qa__num{font-family:var(--rx-display);font-weight:700;font-size:22px;line-height:1.1;color:var(--rx-crimson)}
.rx-qa__item h3{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(19px,2.3vw,24px);line-height:1.1;margin:0 0 6px;letter-spacing:.02em}
.rx-qa__item p{margin:0;font-size:15.5px;line-height:1.6;color:var(--rx-graphite)}
.rx-qa .rx-reveal{opacity:1;transform:none}

.rx-ing__routes{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px;border-top:1px solid var(--rx-hairline);padding-top:12px}
.rx-ing__routes li{font-size:14px;line-height:1.5;color:var(--rx-graphite);padding-left:14px;position:relative}
.rx-ing__routes li::before{content:'';position:absolute;left:0;top:.62em;width:6px;height:6px;background:var(--rx-crimson)}
.rx-ing__routes b{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:13.5px;color:var(--rx-ink);margin-right:4px}

.rx-ing[id]{scroll-margin-top:calc(var(--rx-masthead-h,66px) + 52px + 40px)}

.rx-avail{color:var(--rx-graphite)!important}
.rx-avail b{color:var(--rx-crimson)}

/* ------------------------------------------------------------------ reveal */
.rx-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.rx-reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .rx-reveal{opacity:1;transform:none}
  .rx *{animation:none!important;transition:none!important}
}

/* ---------- daily block: price per month, total underneath ---------- */
.rx-option__stack{display:grid;gap:16px}
.rx-tiers--nper .rx-tiers__head,.rx-tiers--nper .rx-tier{grid-template-columns:1.6fr 1fr 118px}
.rx-tier__total{display:block;font-family:var(--rx-body);font-size:11.5px;font-weight:400;letter-spacing:.01em;text-transform:none;color:var(--rx-mist);margin-top:3px}
.rx-tier__name .rx-tier__avail{display:block;margin-top:5px;font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rx-crimson)}
.rx-drawer__alert{margin:0;padding:12px 22px;background:#FBF1F1;border-top:1px solid var(--rx-hairline);font-size:12.5px;line-height:1.5;color:var(--rx-ink);display:none}
.rx-drawer__alert.is-on{display:block}
@media(max-width:600px){
  .rx-tiers--nper .rx-tier{grid-template-columns:1fr auto}
}

.rx-gsec__group{margin:26px 0 -6px;font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-graphite);border-bottom:1px solid var(--rx-hairline);padding-bottom:8px}
.rx-gsec__list > .rx-gsec__group:first-child{margin-top:0}

/* ---------- artwork slide: a finished banner, never cropped ---------- */
.rx-herobanner__slide--art{display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,3.5vw,40px) 0 clamp(86px,9vw,106px);background:#0A0406}
.rx-herobanner__slide--art::before{display:none}
.rx-herobanner__art{display:block;width:100%;max-width:1320px;margin:0 auto;height:auto;max-height:clamp(300px,44vh,520px);object-fit:contain}
.rx-herobanner__slide--art .rx-herobanner__inner{margin-top:clamp(16px,2.4vw,26px);text-align:center}
.rx-herobanner__slide--art .rx-actions{justify-content:center;margin-top:0}

/* ---------- standalone artwork banner ---------- */
.rx-artbanner{background:#0A0406}
.rx-artbanner a{display:block}
.rx-artbanner img{display:block;width:100%;max-width:1320px;margin:0 auto;height:auto}
/* ---------- feature card: full width, first in the grid ---------- */
.rx-card--feature{border-top-width:5px}
@media(min-width:820px){
  .rx-card--feature{grid-column:1/-1;padding:clamp(30px,3.4vw,40px) clamp(28px,3.4vw,38px) clamp(24px,3vw,30px)}
  .rx-card--feature .rx-card__name{font-size:clamp(40px,5vw,58px)}
  .rx-card--feature .rx-card__desc{font-size:17.5px;max-width:70ch}
}
.rx-card--feature .rx-card__flag{
  align-self:flex-start;margin:0 0 12px;
  font-family:var(--rx-display);font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;background:var(--rx-crimson);padding:4px 11px;
}
.rx-formulary__head h2 em{font-style:normal;color:var(--rx-crimson)}
.rx-formulary .rx-card[id]{scroll-margin-top:calc(var(--rx-masthead-h,66px) + 24px)}

/* ---------- pay-for-what-you-need promise ---------- */
.rx-promise{background:var(--rx-bone);padding:clamp(44px,6vw,72px) var(--rx-gutter);border-top:1px solid var(--rx-hairline)}
.rx-promise__inner{max-width:1320px;margin:0 auto}
.rx-promise h2{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(28px,4vw,46px);line-height:1;margin:0}
.rx-promise h2 em{font-style:normal;color:var(--rx-crimson)}
.rx-promise__lead{margin-top:14px;font-size:16.5px;color:var(--rx-graphite);max-width:62ch}
.rx-promise__list{list-style:none;margin:clamp(24px,3vw,34px) 0 0;padding:0;display:grid;gap:22px}
@media(min-width:820px){.rx-promise__list{grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,40px)}}
.rx-promise__list li{border-top:3px solid var(--rx-crimson);padding-top:14px}
.rx-promise__list b{display:block;font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:19px;letter-spacing:.02em;line-height:1.1;margin-bottom:7px}
.rx-promise__list span{font-size:15px;color:var(--rx-graphite);line-height:1.55}

/* ---------- OK Capsule packs ---------- */
.rx-packs{max-width:1320px;margin:0 auto;padding:clamp(30px,4vw,46px) var(--rx-gutter);scroll-margin-top:calc(var(--rx-masthead-h,66px) + 60px)}
.rx-packs+.rx-packs{border-top:1px solid var(--rx-hairline)}
.rx-packs__head h2{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(26px,3.4vw,38px);line-height:1;margin:0}
.rx-packs__head p{margin-top:10px;font-size:15.5px;color:var(--rx-graphite);max-width:68ch}
.rx-packs__list{list-style:none;margin:clamp(18px,2.4vw,26px) 0 0;padding:0}
.rx-packs__cols{display:none}
@media(min-width:860px){
  .rx-packs__cols{display:grid;grid-template-columns:1fr 156px 156px;gap:16px;padding:0 0 8px;border-bottom:1px solid var(--rx-hairline);font-family:var(--rx-display);font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-mist)}
  .rx-packs__cols span+span{text-align:center}
}
.rx-pack{scroll-margin-top:calc(var(--rx-masthead-h,66px) + 60px);display:grid;gap:10px 16px;padding:15px 0;border-bottom:1px solid var(--rx-hairline);align-items:start}
@media(min-width:860px){.rx-pack{grid-template-columns:1fr 156px 156px}}
.rx-pack__id b{display:block;font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:21px;line-height:1.1;letter-spacing:.02em}
.rx-pack__id span{display:block;margin-top:3px;font-size:13px;color:var(--rx-graphite);line-height:1.45}
/* these rows carry .rx-tier so the plan builder picks them up; undo the table styling it brings */
.rx-pack__buy{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:0;border-bottom:0;grid-template-columns:none}
.rx-pack__buy.is-in{background:none}
.rx-pack__buy b{font-family:var(--rx-display);font-weight:700;font-size:20px;font-variant-numeric:tabular-nums}
.rx-pack__buy span{font-size:11.5px;color:var(--rx-mist);font-family:var(--rx-display);letter-spacing:.1em;text-transform:uppercase}
.rx-pack__add{font-family:var(--rx-display);font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;background:var(--rx-crimson);color:#fff;border:1px solid var(--rx-crimson);white-space:nowrap;cursor:pointer}
.rx-pack__add:hover{background:var(--rx-crimson-deep);border-color:var(--rx-crimson-deep)}
.rx-pack__buy.is-in .rx-pack__add{background:var(--rx-ink);border-color:var(--rx-ink)}
.rx-pack__buy.is-disabled{opacity:.38}
.rx-pack__buy.is-disabled .rx-pack__add{background:var(--rx-mist);border-color:var(--rx-mist);cursor:not-allowed}
@media(min-width:860px){
  .rx-pack__buy{flex-direction:column;align-items:center;gap:6px}
  .rx-pack__buy span{display:none}
  .rx-pack__add{width:100%;text-align:center}
}


/* ===== ED plan: one collapsed control per product ===== */
/* ---------- one collapsed control per product ---------- */
.rx-pick__rows{display:none}
.rx-pick{border:1px solid var(--rx-hairline);border-top:3px solid var(--rx-crimson);background:var(--rx-paper)}
.rx-pickgroup .rx-pick{border-top-width:1px}
.rx-pick__row{display:grid;gap:10px;padding:14px clamp(14px,2vw,18px)}
@media(min-width:620px){.rx-pick__row{grid-template-columns:1fr 150px;align-items:center}}
.rx-pick__select{
  font-family:var(--rx-body);font-size:15px;color:var(--rx-ink);background:var(--rx-paper);
  border:1px solid var(--rx-hairline);padding:12px 14px;width:100%;cursor:pointer;
  appearance:none;-webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--rx-graphite) 50%),linear-gradient(135deg,var(--rx-graphite) 50%,transparent 50%);
  background-position:calc(100% - 19px) 50%,calc(100% - 13px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;
  padding-right:40px;
}
.rx-pick__select:focus{outline:2px solid var(--rx-crimson);outline-offset:1px}
.rx-pick__add{
  font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:12px 16px;background:var(--rx-crimson);color:#fff;border:1px solid var(--rx-crimson);white-space:nowrap;cursor:pointer;
  transition:background .18s ease,border-color .18s ease;
}
.rx-pick__add:hover:not(:disabled){background:var(--rx-crimson-deep);border-color:var(--rx-crimson-deep)}
.rx-pick__add:disabled{background:var(--rx-bone);color:var(--rx-mist);border-color:var(--rx-hairline);cursor:not-allowed}
.rx-pick.is-in{border-top-color:var(--rx-ink);background:#FBF1F1}
.rx-pick.is-in .rx-pick__add{background:var(--rx-ink);border-color:var(--rx-ink);color:#fff;cursor:pointer}
.rx-pick.is-in .rx-pick__add::before{content:"\2713\00a0"}
.rx-pick.is-disabled{opacity:.42}
.rx-pick.is-disabled .rx-pick__select,.rx-pick.is-disabled .rx-pick__add{cursor:not-allowed}
.rx-picknote{padding:12px clamp(16px,2vw,22px);font-size:12px;color:var(--rx-mist);border:1px solid var(--rx-hairline);background:var(--rx-bone);margin:0}
/* each daily formulation gets its own heading + control */
.rx-pickgroup{border:1px solid var(--rx-hairline);background:var(--rx-paper)}
.rx-pickgroup+.rx-pickgroup{margin-top:-1px}
.rx-pickgroup__head{padding:14px clamp(14px,2vw,18px) 0}
.rx-pickgroup__head b{display:block;font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:19px;letter-spacing:.02em;color:var(--rx-crimson);line-height:1.1}
.rx-pickgroup__head span{display:block;margin-top:3px;font-family:var(--rx-pairing);font-style:italic;font-size:13.5px;color:var(--rx-graphite)}
.rx-pickgroup__head .rx-pick__flag{display:inline-block;margin-top:6px;font-family:var(--rx-display);font-style:normal;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rx-crimson)}
.rx-pickgroup .rx-pick{border:0}
/* the add-on leads the daily section */
.rx-addon{border:2px solid var(--rx-crimson);background:#FFF8F8}
.rx-addon__head{padding:16px clamp(16px,2vw,20px) 0}
.rx-addon__tag{display:inline-block;font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--rx-crimson);padding:3px 9px;margin-bottom:9px}
.rx-addon__head b{display:block;font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:22px;letter-spacing:.02em;line-height:1.1}
.rx-addon__head span{display:block;margin-top:6px;font-size:14px;color:var(--rx-graphite);line-height:1.5;max-width:62ch}
.rx-addon .rx-pick{border:0;background:none}


/* ---------- skin plan: compare the tiers, then pick one ---------- */
/* the comparison needs the whole width, so it drops below the copy and the control */
.rx-option--spec>*{min-width:0}
@media(min-width:900px){
  .rx-option--spec{grid-template-areas:"copy pick" "spec spec"}
  .rx-option--spec>div:first-child{grid-area:copy}
  .rx-option--spec>.rx-pickwrap{grid-area:pick}
  .rx-option--spec>.rx-spec{grid-area:spec;margin-top:4px}
}
.rx-pickwrap{display:grid;gap:14px;align-content:start}
.rx-spec{border:1px solid var(--rx-hairline);border-top:3px solid var(--rx-ink);background:var(--rx-paper)}
.rx-spec__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.rx-spec__table{width:100%;border-collapse:collapse;font-size:13.5px;white-space:nowrap}
.rx-spec__table th,.rx-spec__table td{padding:9px 12px;text-align:center;border-bottom:1px solid var(--rx-hairline)}
.rx-spec__table thead th{
  font-family:var(--rx-display);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--rx-mist);background:var(--rx-bone);border-bottom:1px solid var(--rx-hairline);
}
.rx-spec__table tbody th[scope=row]{
  text-align:left;font-family:var(--rx-display);font-size:15px;font-weight:700;letter-spacing:.02em;
  text-transform:uppercase;color:var(--rx-crimson);white-space:nowrap;
}
.rx-spec__table thead th:first-child,.rx-spec__table tbody th[scope=row]{position:sticky;left:0;background:var(--rx-paper);z-index:1}
.rx-spec__table thead th:first-child{background:var(--rx-bone)}
.rx-spec__table tbody tr:last-child th,.rx-spec__table tbody tr:last-child td{border-bottom:0}
.rx-spec__up{font-weight:700;color:var(--rx-crimson);background:#FBF1F1}
.rx-spec__no{color:var(--rx-mist)}
.rx-spec__when{font-family:var(--rx-pairing);font-style:italic;color:var(--rx-graphite);white-space:nowrap}
.rx-spec__flag{display:block;font-family:var(--rx-display);font-size:9.5px;font-weight:600;letter-spacing:.08em;color:var(--rx-mist);text-transform:uppercase;margin-top:2px}
.rx-spec__group th{
  text-align:left!important;font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--rx-ink);background:var(--rx-bone);position:static!important;
}
.rx-spec__key{margin:0;padding:9px 12px;font-size:11.5px;color:var(--rx-mist);border-top:1px solid var(--rx-hairline);background:var(--rx-bone)}
.rx-pick__detail{
  margin:0;padding:0 clamp(14px,2vw,18px) 14px;font-family:var(--rx-pairing);font-style:italic;
  font-size:14px;color:var(--rx-graphite);line-height:1.45;
}
.rx-spec,.rx-pick{min-width:0}
/* two selects plus a button only fit side by side once the column is wide */
@media(min-width:620px){
  .rx-pick--two .rx-pick__row{grid-template-columns:1fr 1fr}
  .rx-pick--two .rx-pick__add{grid-column:1 / -1}
}
@media(min-width:1180px){
  .rx-pick--two .rx-pick__row{grid-template-columns:1fr 1fr 150px}
  .rx-pick--two .rx-pick__add{grid-column:auto}
}

/* ---------- where we can treat you ---------- */
.rx-states{border-top:1px solid var(--rx-hairline);background:var(--rx-bone)}
.rx-states__inner{max-width:1320px;margin:0 auto;padding-inline:var(--rx-gutter);padding-block:clamp(34px,5vw,54px)}
.rx-states__head{max-width:62ch}
.rx-states__head h2{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(28px,3.6vw,42px);line-height:1;letter-spacing:.01em;margin:6px 0 12px;
}
.rx-states__head h2 em{font-style:normal;color:var(--rx-crimson)}
.rx-states__head p{margin:0;color:var(--rx-graphite);font-size:15.5px;line-height:1.6}
.rx-states__grid{
  list-style:none;margin:20px 0 0;padding:0;
  display:grid;gap:1px;background:var(--rx-hairline);
  grid-template-columns:repeat(auto-fill,minmax(132px,1fr));
  border:1px solid var(--rx-hairline);
}
.rx-states__item{
  background:var(--rx-paper);padding:10px 12px;
  display:flex;align-items:baseline;gap:8px;min-width:0;
}
.rx-states__item b{
  font-family:var(--rx-display);font-weight:700;font-size:17px;letter-spacing:.04em;
  color:var(--rx-crimson);flex:0 0 auto;
}
.rx-states__item span{
  font-size:13px;color:var(--rx-graphite);line-height:1.3;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;
}
.rx-states__group{margin-top:26px;padding-bottom:8px;border-bottom:2px solid var(--rx-ink)}
.rx-states__group--second{margin-top:30px}
.rx-states__group h3{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:18px;letter-spacing:.03em;line-height:1.1;margin:0;
}
.rx-states__group p{
  margin:3px 0 0;font-family:var(--rx-pairing);font-style:italic;
  font-size:13.5px;color:var(--rx-mist);
}
.rx-states__note{
  margin:18px 0 0;font-size:13px;color:var(--rx-mist);line-height:1.6;max-width:78ch;
}
.rx-states__note b{color:var(--rx-graphite);font-weight:600}
.rx-states__note a{color:var(--rx-crimson);font-weight:600;text-decoration:none;border-bottom:1px solid var(--rx-crimson)}


/* ================================================================
   The WordPress header.
   GeneratePress renders the logo and the menu; reclaim_header_cta()
   adds the buttons as the last <li> of that same menu, so the layout
   has to be arranged from inside the list rather than around it.
   Target: logo left, menu centred, buttons hard right - the shape the
   reference pages use - and the whole bar pinned to the top.
   ================================================================ */
/* Doubled class names throughout: GeneratePress's main.min.css is enqueued
   after this file, so one class of specificity is not enough to beat it. */
.site-header.site-header{
  position:sticky;top:0;z-index:50;

  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--rx-hairline);
}
/* the logged-in admin bar sits above everything */
.admin-bar .site-header{top:32px}
@media screen and (max-width:782px){.admin-bar .site-header{top:46px}}

.site-header .inside-header{
  display:flex;align-items:center;gap:24px;
  padding-top:10px;padding-bottom:10px;
}
.site-header .site-logo img,.site-header .header-image{max-height:46px;width:auto}

/* let the menu take the space between the logo and the buttons */
/* The header is a flex row; the real nav has to grow before the auto margins
   below have any free space to push into. GeneratePress renders a second,
   empty .main-navigation for the mobile toggle - that one must not grow. */
.site-header .inside-header > nav.main-navigation:not(.mobile-menu-control-wrapper){flex:1 1 auto;min-width:0}
.site-header .inside-header .inside-navigation{display:flex;align-items:center;width:100%;padding:0}
.site-header .inside-header .inside-navigation > .main-nav{flex:1 1 auto;min-width:0}
.site-header .inside-header .main-nav > ul{display:flex;align-items:center;flex-wrap:nowrap;width:100%}
/* two auto margins: the items centre in the free space, the buttons anchor right */
.site-header .inside-header .main-nav > ul > li:first-child{margin-left:auto}
.site-header .inside-header .main-nav > ul > li.rx-menu-cta{margin-left:auto}

/* ---------- the header buttons ---------- */
/* GeneratePress's `.main-navigation .main-nav ul li a` (0,2,3) sets
   line-height:60px, font-size:15px and padding:0 20px, so these match its
   shape and add our own class to outrank it. */
.main-navigation .main-nav ul li a.rx-btn,
.rx-masthead__cta a.rx-btn{
  display:inline-block;line-height:1.1;
  font-family:var(--rx-display);font-size:14px;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;
  padding:11px 18px;border:1px solid var(--rx-crimson);
  background:var(--rx-crimson);color:#fff;white-space:nowrap;border-radius:0;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.main-navigation .main-nav ul li a.rx-btn:hover,
.main-navigation .main-nav ul li a.rx-btn:focus,
.rx-masthead__cta a.rx-btn:hover,
.rx-masthead__cta a.rx-btn:focus{
  background:var(--rx-crimson-deep);border-color:var(--rx-crimson-deep);color:#fff;
}
/* "Submit plan" is the ink variant on the reference pages */
.main-navigation .main-nav ul li a.rx-btn--ink,
.rx-masthead__cta a.rx-btn--ink{background:var(--rx-ink);border-color:var(--rx-ink);color:#fff}
.main-navigation .main-nav ul li a.rx-btn--ink:hover,
.rx-masthead__cta a.rx-btn--ink:hover{background:var(--rx-crimson);border-color:var(--rx-crimson);color:#fff}
.main-navigation .main-nav ul li a.rx-btn--ghost,
.rx-masthead__cta a.rx-btn--ghost{background:transparent;color:var(--rx-ink);border-color:var(--rx-ink)}
.main-navigation .main-nav ul li a.rx-btn--ghost:hover,
.rx-masthead__cta a.rx-btn--ghost:hover{background:var(--rx-ink);color:#fff;border-color:var(--rx-ink)}

.main-navigation .main-nav ul li.rx-menu-cta{display:flex;align-items:center}
.main-navigation .main-nav ul li.rx-menu-cta > .rx-masthead__cta{display:flex;align-items:center;gap:8px;padding-left:14px}
.rx-masthead__cta [hidden]{display:none!important}

@media(max-width:1024px){
  .main-navigation .main-nav ul li a.rx-btn,
  .rx-masthead__cta a.rx-btn{font-size:13px;padding:9px 13px;letter-spacing:.06em}
}
@media(max-width:768px){
  .site-header .inside-header{gap:12px}
  .site-header .inside-header .main-nav > ul > li:first-child{margin-left:0}
}

/* ---------- weight loss tabs ---------- */
/* The mhl-/whl- pairs were ported when the hair pages moved across; the
   three-way weight loss set was not, so its panels never switched. */
#wl-tab-glp:checked ~ .rx-tabs__bar label[for="wl-tab-glp"],
#wl-tab-inj:checked ~ .rx-tabs__bar label[for="wl-tab-inj"],
#wl-tab-oral:checked ~ .rx-tabs__bar label[for="wl-tab-oral"]{border-bottom-color:var(--rx-crimson);color:var(--rx-ink)}
#wl-tab-glp:checked ~ .rx-tabs__bar label[for="wl-tab-glp"] b,
#wl-tab-inj:checked ~ .rx-tabs__bar label[for="wl-tab-inj"] b,
#wl-tab-oral:checked ~ .rx-tabs__bar label[for="wl-tab-oral"] b{color:var(--rx-ink)}
#wl-tab-glp:checked ~ .rx-tabs__panel--glp,
#wl-tab-inj:checked ~ .rx-tabs__panel--inj,
#wl-tab-oral:checked ~ .rx-tabs__panel--oral{display:block}

/* ---------- card: a plain-English label, and a bundle rate ---------- */
/* The label sits above the medication name so the benefit is read first. */
.rx-card__for{
  margin:0 0 4px;font-family:var(--rx-display);font-size:16px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--rx-crimson);line-height:1.15;
}
.rx-card__bundle{
  margin:4px 0 0;font-family:var(--rx-display);font-size:15px;font-weight:600;
  letter-spacing:.02em;color:var(--rx-ink);
}
.rx-card__bundle b{font-weight:700;color:var(--rx-crimson)}

/* ---------- hero: two programmes side by side ---------- */
.rx-herobanner__opts{display:grid;gap:9px;margin:14px 0 0;max-width:64ch}
.rx-herobanner__opts p{margin:0;font-size:15.5px;line-height:1.55}
.rx-herobanner__opts b{font-family:var(--rx-display);font-size:17px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}

/* ================================================================
   Blog
   The post body is ours; WordPress renders the title, byline and the
   archive listing with GeneratePress's markup, so the second half of
   this block styles that markup rather than classes of our own.
   ================================================================ */
.rx-post{max-width:760px;margin:0 auto;padding:clamp(28px,5vw,52px) var(--rx-gutter) clamp(40px,6vw,72px)}
.rx-post p{margin:0 0 18px;font-size:17px;line-height:1.72;color:var(--rx-ink)}
.rx-post__lead{font-size:20px!important;line-height:1.6!important;color:var(--rx-graphite)!important}
.rx-post h2{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(24px,3vw,32px);line-height:1.05;letter-spacing:.01em;
  margin:34px 0 12px;color:var(--rx-ink);
}
.rx-post__list{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:9px}
.rx-post__list li{position:relative;padding-left:22px;font-size:17px;line-height:1.6}
.rx-post__list li::before{content:"";position:absolute;left:0;top:11px;width:9px;height:2px;background:var(--rx-crimson)}
.rx-post__steps{margin:0 0 18px;padding:0;list-style:none;counter-reset:s;display:grid;gap:16px}
.rx-post__steps li{counter-increment:s;display:grid;grid-template-columns:34px 1fr;gap:4px 12px;align-items:baseline}
.rx-post__steps li::before{
  content:counter(s,decimal-leading-zero);grid-row:1 / span 2;
  font-family:var(--rx-display);font-size:19px;font-weight:700;color:var(--rx-crimson);
}
.rx-post__steps b{font-family:var(--rx-display);font-size:19px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.rx-post__steps span{font-size:16.5px;line-height:1.6;color:var(--rx-graphite)}
.rx-post__cta{margin:30px 0 0}
.rx-post__fine{margin-top:40px;padding-top:20px;border-top:1px solid var(--rx-hairline)}
.rx-post__fine p{font-size:12px;line-height:1.6;color:var(--rx-mist);margin:0 0 8px}
.rx-post__head{max-width:760px;margin:0 auto;padding:clamp(34px,6vw,64px) var(--rx-gutter) 0}
.rx-post__head h1{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(34px,6vw,62px);line-height:1;letter-spacing:.01em;margin:6px 0 10px;
}
.rx-post__byline{font-family:var(--rx-pairing);font-style:italic;font-size:16px;color:var(--rx-graphite);margin:0}

/* ---------- the index ---------- */
.rx-postlist{max-width:1000px;margin:0 auto;padding:0 var(--rx-gutter) clamp(44px,6vw,72px);display:grid;gap:1px;background:var(--rx-hairline);border:1px solid var(--rx-hairline)}
.rx-postcard{display:block;background:var(--rx-paper);padding:clamp(20px,3vw,30px);text-decoration:none;color:inherit;border-left:3px solid transparent;transition:border-color .18s ease,background .18s ease}
.rx-postcard:hover{border-left-color:var(--rx-crimson);background:var(--rx-bone)}
.rx-postcard__meta{font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--rx-mist);margin:0 0 6px}
.rx-postcard__title{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;font-size:clamp(24px,3.2vw,34px);line-height:1.05;margin:0 0 8px;color:var(--rx-ink)}
.rx-postcard__excerpt{margin:0 0 12px;font-size:16px;line-height:1.6;color:var(--rx-graphite);max-width:68ch}
.rx-postcard__more{font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rx-crimson)}

/* ---------- WordPress blog markup ---------- */
/* Doubled class names: main.min.css is enqueued after this file. */
body.blog .site-main,body.archive .site-main,body.single-post .site-main{max-width:1000px;margin:0 auto;padding:clamp(30px,5vw,56px) var(--rx-gutter)}
body.single-post .site-main{max-width:860px}
body.blog article.post,body.archive article.post{
  padding:clamp(20px,3vw,30px) 0;border-bottom:1px solid var(--rx-hairline);
}
body.blog .entry-title,body.archive .entry-title,body.single-post .entry-title{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(28px,4.6vw,52px);line-height:1.02;letter-spacing:.01em;
  margin:0 0 10px;color:var(--rx-ink);
}
body.blog .entry-title a,body.archive .entry-title a{color:inherit;text-decoration:none}
body.blog .entry-title a:hover,body.archive .entry-title a:hover{color:var(--rx-crimson)}
body.blog .entry-meta,body.archive .entry-meta,body.single-post .entry-meta{
  font-family:var(--rx-pairing);font-style:italic;font-size:14.5px;color:var(--rx-mist);
}
body.blog .entry-summary,body.archive .entry-summary{font-size:16.5px;line-height:1.65;color:var(--rx-graphite)}
body.single-post .entry-content{padding:0}
body.single-post .entry-header{max-width:760px;margin:0 auto;padding:0 var(--rx-gutter)}
body.single-post .entry-content .rx-post{padding-left:var(--rx-gutter);padding-right:var(--rx-gutter)}

.rx-post__figure{margin:0 0 26px;max-width:520px}
.rx-post__figure img{display:block;width:100%;height:auto;border:1px solid var(--rx-hairline)}

/* ---------- blog: the featured image ---------- */
/* Shown on the listing, hidden on the post itself, where the body already
   carries the same picture. Doubled class names to outrank main.min.css. */
body.single-post .featured-image,
body.single-post .post-image,
body.single-post .inside-article > .post-image{display:none!important}

body.blog article.post,body.archive article.post{
  display:grid;gap:clamp(16px,3vw,28px);align-items:start;
}
@media(min-width:720px){
  body.blog article.post:has(.post-image),
  body.archive article.post:has(.post-image){grid-template-columns:260px minmax(0,1fr)}
}
body.blog .post-image,body.archive .post-image{margin:0}
body.blog .post-image img,body.archive .post-image img{
  display:block;width:100%;height:auto;border:1px solid var(--rx-hairline);
}

/* ---------- blog: the intro printed by the theme ---------- */
.rx-bloghero{max-width:1000px;margin:0 auto;padding:0 0 clamp(20px,3vw,30px)}
.rx-bloghero h1{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(34px,6vw,62px);line-height:1;letter-spacing:.01em;margin:6px 0 12px;
  color:var(--rx-ink);
}
.rx-bloghero h1 em{font-style:normal;color:var(--rx-crimson)}
.rx-bloghero > p:last-child{margin:0;font-size:17px;line-height:1.6;color:var(--rx-graphite);max-width:60ch}
/* GeneratePress would otherwise print its own heading above this one */
body.blog .page-header,body.blog .page-title{display:none}

/* the drawer alert carries several notes once a plan spans lines */
.rx-drawer__alert p{margin:0 0 8px}
.rx-drawer__alert p:last-child{margin-bottom:0}
.rx-drawer__group{
  font-family:var(--rx-display);font-size:11px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--rx-mist);padding:14px 0 4px;list-style:none;
}
.rx-drawer__more{list-style:none;padding:12px 0 0}
.rx-drawer__more a{font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rx-crimson);text-decoration:none}

.rx-requesting__group{
  font-family:var(--rx-display);font-size:10.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--rx-mist);padding:12px 0 2px;list-style:none;
}
.rx-requesting__group:first-child{padding-top:0}

/* ============================================================
   Legal pages
   How Reclaim works, state notices, privacy policy, notice of
   privacy practices. These are long prose rather than product
   cards, so the scoped reset at the top of this file has to be
   undone deliberately: inside .rx a bare <p> has no margin and
   a bare <ul> has no bullets.
   ============================================================ */
.rx-legal{display:grid;gap:14px;max-width:84ch}
.rx-legal>p{font-size:15.5px;line-height:1.7;color:var(--rx-graphite)}
.rx-legal b,.rx-legal strong{color:var(--rx-ink);font-weight:600}
.rx-legal em{font-style:italic}
.rx-legal h3{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:18px;line-height:1.15;color:var(--rx-ink);margin:10px 0 0}
.rx-legal h3:first-child{margin-top:0}
.rx-legal ul,.rx-legal ol{display:grid;gap:9px;padding-left:24px}
.rx-legal li{font-size:15.5px;line-height:1.65;color:var(--rx-graphite)}
.rx-legal ul>li{list-style:disc}
.rx-legal ol>li{list-style:decimal}
.rx-legal li::marker{color:var(--rx-crimson)}
.rx-legal a{color:var(--rx-crimson);text-decoration:underline;text-underline-offset:2px}
.rx-legal a:hover{color:var(--rx-crimson-deep)}
.rx-legal__note{border-left:3px solid var(--rx-crimson);background:var(--rx-bone);padding:14px 18px;display:grid;gap:8px}
.rx-legal__note p{font-size:15px;line-height:1.65;color:var(--rx-ink)}
.rx-legal__updated{font-family:var(--rx-display);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rx-mist)}
.rx-legal__q{font-family:var(--rx-display);font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rx-crimson)}

/* A notice whose wording is set by statute. Boxed so it reads as a quoted
   document rather than as our own copy, and so nobody edits it to fit a
   layout. Georgia's rule in particular fixes the wording exactly. */
.rx-notice{border:2px solid var(--rx-ink);padding:clamp(18px,3vw,26px);display:grid;gap:12px;background:var(--rx-paper)}
.rx-notice__hd{font-family:var(--rx-display);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:15px;line-height:1.2;color:var(--rx-crimson)}
.rx-notice p{font-size:14.5px;line-height:1.65;color:var(--rx-ink)}
.rx-notice b{font-weight:600}
.rx-notice ol,.rx-notice ul{display:grid;gap:8px;padding-left:24px}
.rx-notice li{font-size:14.5px;line-height:1.6;color:var(--rx-ink)}
.rx-notice ol>li{list-style:decimal}
.rx-notice ul>li{list-style:disc}
.rx-notice__warn{font-weight:600;color:var(--rx-ink)}
.rx-notice address{font-style:normal;font-size:14.5px;line-height:1.6;color:var(--rx-ink)}

/* Georgia prescribes a serif face, black on white, and a minimum size.
   Point sizes do not translate to a screen, so this is as close as a web
   page gets: serif, pure black, larger than the body text, undecorated. */
.rx-notice--ga{border-color:#000;background:#fff}
.rx-notice--ga .rx-notice__hd{color:#000}
.rx-notice--ga p,.rx-notice--ga address{font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.55;color:#000}

/* The state directory: one row per state, scannable rather than a table. */
.rx-slist{display:grid;gap:0;border-top:1px solid var(--rx-hairline)}
.rx-slist__row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,3fr);gap:8px 20px;padding:14px 0;border-bottom:1px solid var(--rx-hairline)}
.rx-slist__st{font-family:var(--rx-display);font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:15px;color:var(--rx-ink)}
.rx-slist__body{font-size:14.5px;line-height:1.6;color:var(--rx-graphite)}
.rx-slist__body b{color:var(--rx-ink)}
@media (max-width:640px){
  .rx-slist__row{grid-template-columns:1fr;gap:4px}
}

/* ============================================================
   The legal footer
   Printed by the theme on every page, including pages that do
   not load this stylesheet, so it carries its own styles in
   functions.php and uses rxlegal- names that cannot collide.
   Nothing here styles it; this comment is here so the next
   person looks in the right file.
   ============================================================ */

/* A chip that links straight to its option on the plan page. Same pill as a
   plain chip, with the affordances a link needs: a pointer, a visible focus
   ring for keyboard users, and a small arrow so it does not read as a label. */
.rx-chip--link{
  text-decoration:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:5px;
  transition:color .14s ease,border-color .14s ease,background-color .14s ease;
}
.rx-chip--link::after{
  content:"\2192";font-size:11px;line-height:1;
  opacity:.45;transition:opacity .14s ease,transform .14s ease;
}
.rx-chip--link:hover,.rx-chip--link:focus-visible{
  color:var(--rx-crimson);border-color:var(--rx-crimson);background:var(--rx-paper);
}
.rx-chip--link:hover::after,.rx-chip--link:focus-visible::after{
  opacity:1;transform:translateX(2px);
}
.rx-chip--link:focus-visible{outline:2px solid var(--rx-crimson);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  .rx-chip--link,.rx-chip--link::after{transition:none}
  .rx-chip--link:hover::after{transform:none}
}

/* Chip targets that are not whole sections - the four Ignite Daily picks and
   the Wolverine Stack - need the same scroll offset the sections get, or the
   sticky masthead lands on top of them. */
.rx-pick[id],.rx-tiers[id]{scroll-margin-top:calc(var(--rx-masthead-h,66px) + 52px)}

/* Full-width section, for a page that reads as prose rather than as an index. */
.rx-gsec--full .rx-gsec__list{max-width:none}
@media(min-width:960px){
  .rx-gsec--full{grid-template-columns:minmax(0,1fr);gap:clamp(18px,2.5vw,28px)}
  .rx-gsec--full .rx-gsec__intro h2{max-width:22ch}
  .rx-gsec--full .rx-gsec__intro > p:not(.rx-eyebrow){max-width:72ch}
}

/* Two items abreast. Used for the pair of medications and the pair of plan
   cards on the GLP-1 guide, where the comparison is the point and stacking
   them hides it. */
.rx-duo{display:grid;gap:16px}
@media(min-width:860px){.rx-duo{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rx-duo > *{height:100%}

/* A plan card: a heading, a sentence, and a link down to the detail. These
   are the fork in the road, so they are clickable in their entirety rather
   than carrying a small link the eye has to find. */
.rx-path{
  display:flex;flex-direction:column;gap:10px;
  padding:clamp(20px,3vw,28px);
  background:var(--rx-bone);
  border:1px solid var(--rx-hairline);
  border-top:3px solid var(--rx-crimson);
  text-decoration:none;color:inherit;
  transition:background-color .15s ease,border-color .15s ease;
}
.rx-path:hover,.rx-path:focus-visible{background:var(--rx-paper);border-color:var(--rx-crimson)}
.rx-path:focus-visible{outline:2px solid var(--rx-crimson);outline-offset:3px}
.rx-path__eyebrow{
  font-family:var(--rx-display);font-size:11.5px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--rx-crimson);margin:0;
}
.rx-path h3{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(21px,2.4vw,27px);line-height:1.05;letter-spacing:.01em;
  color:var(--rx-ink);margin:0;
}
.rx-path p{font-size:15.5px;line-height:1.6;color:var(--rx-graphite);margin:0}
.rx-path__go{
  margin-top:auto;padding-top:6px;
  font-family:var(--rx-display);font-size:13px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--rx-crimson);
}
.rx-path:hover .rx-path__go{color:var(--rx-crimson-deep)}

/* Five steps read better as five cards than as a 3 + 2 grid with a ragged
   second row. Boxed so each step is a discrete thing on the dark band. */
.rx-how__steps--cards li{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.14);
  border-top:2px solid var(--rx-crimson-lift);
  padding:20px 18px 22px;
}
@media(min-width:1180px){
  .rx-how__steps--cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
}

/* A promotional banner with the artwork as a background and the words as
   real text on top. The two campaign banners used to be flat JPEGs with the
   copy baked in: on a narrow screen the type shrank with the image until it
   was unreadable, and inside the carousel the fixed aspect ratio letterboxed
   into black bars. Same treatment as the hero slides, so it reflows. */
.rx-promo{
  position:relative;
  display:flex;align-items:center;
  min-height:clamp(380px,46vw,520px);
  padding:clamp(36px,5vw,64px) var(--rx-gutter);
  background:var(--rx-ink);color:#fff;overflow:hidden;
}
.rx-promo::before{
  content:'';position:absolute;inset:0;z-index:0;
  background-image:
    linear-gradient(100deg,rgba(20,22,26,.94) 0%,rgba(20,22,26,.78) 44%,rgba(20,22,26,.30) 100%),
    var(--promo-img,none);
  background-size:cover;
  background-position:var(--promo-pos,center);
  background-repeat:no-repeat;
}
/* Photo on the left, words on the right: flip the scrim to match. */
.rx-promo--right::before{
  background-image:
    linear-gradient(260deg,rgba(20,22,26,.94) 0%,rgba(20,22,26,.78) 44%,rgba(20,22,26,.30) 100%),
    var(--promo-img,none);
}
.rx-promo__inner{position:relative;z-index:1;width:100%;max-width:1320px;margin:0 auto}
.rx-promo--right .rx-promo__inner{display:flex;justify-content:flex-end}
.rx-promo__body{max-width:46ch}
.rx-promo .rx-eyebrow{color:var(--rx-crimson-lift);margin:0 0 12px}
.rx-promo h2{
  font-family:var(--rx-display);font-weight:700;text-transform:uppercase;
  font-size:clamp(30px,5.4vw,58px);line-height:.98;letter-spacing:.01em;margin:0;
}
.rx-promo h2 em{font-style:normal;color:var(--rx-crimson-lift)}
.rx-promo__lead{margin:14px 0 0;font-size:clamp(15px,1.5vw,18px);line-height:1.5;color:#D7DADE}
.rx-promo__points{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:7px}
.rx-promo__points li{position:relative;padding-left:22px;font-size:clamp(14.5px,1.4vw,16px);color:#EDEFF1}
.rx-promo__points li::before{
  content:'';position:absolute;left:0;top:.52em;width:9px;height:9px;
  border-radius:999px;background:var(--rx-crimson-lift);
}
.rx-promo__prices{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 0}
.rx-promo__price{
  display:flex;flex-direction:column;gap:2px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.2);
  padding:10px 16px;
}
.rx-promo__price b{
  font-family:var(--rx-display);font-size:12px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:#C8CCD1;
}
.rx-promo__price span{font-family:var(--rx-display);font-size:clamp(22px,2.6vw,30px);font-weight:700;line-height:1;color:#fff}
.rx-promo__price span small{font-size:.5em;letter-spacing:.08em;color:#C8CCD1;margin-left:4px}
.rx-promo .rx-actions{margin-top:22px}
@media(max-width:700px){
  .rx-promo{min-height:0;padding:clamp(30px,8vw,44px) var(--rx-gutter)}
  .rx-promo::before,.rx-promo--right::before{
    background-image:
      linear-gradient(180deg,rgba(20,22,26,.62) 0%,rgba(20,22,26,.90) 62%,rgba(20,22,26,.96) 100%),
      var(--promo-img,none);
    background-position:var(--promo-pos-sm,center 14%);
  }
  .rx-promo--right .rx-promo__inner{justify-content:flex-start}
  .rx-promo__body{max-width:none}
}

/* The reassurance under the cart total. It was <small> grey text; this makes
   it the second thing the eye lands on after the number itself. */
.rx-drawer__due{
  display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
  margin:10px 0 0;padding:10px 12px;
  background:var(--rx-bone);
  border:1px solid var(--rx-hairline);
  border-left:3px solid var(--rx-crimson);
}
.rx-drawer__due b{
  font-family:var(--rx-display);font-weight:700;
  font-size:15px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--rx-ink);
}
.rx-drawer__due span{font-size:13px;line-height:1.45;color:var(--rx-graphite)}

/* The monthly rate on the testosterone banner. It used to sit in a bordered
   chip, which capped how large it could be; on a banner the price is the
   argument, so it is set at headline scale with the supply prices beneath. */
.rx-promo__rate{margin:22px 0 0}
.rx-promo__rate-main{
  margin:0;font-family:var(--rx-display);font-weight:700;
  text-transform:uppercase;letter-spacing:.01em;line-height:.95;
  font-size:clamp(34px,5.2vw,58px);color:#fff;
}
.rx-promo__rate-main b{font-weight:700;color:var(--rx-crimson-lift)}
.rx-promo__rate-sub{
  margin:10px 0 0;font-family:var(--rx-display);font-weight:600;
  text-transform:uppercase;letter-spacing:.1em;line-height:1.4;
  font-size:clamp(13px,1.5vw,16px);color:#C8CCD1;
}

/* The masthead plan button, in its two states. Empty it is a quiet outline so
   it does not compete with the nav; the moment something is in the plan it
   fills crimson and shows a count, the way a cart does. */
.rx-cart{display:inline-flex;align-items:center;gap:8px}
.rx-masthead__cta a.rx-cart.is-empty,
.main-navigation .main-nav ul li a.rx-cart.is-empty,
.rx-cart.is-empty{
  background:transparent;
  color:var(--rx-mist);
  border:1px solid var(--rx-hairline);
}
.rx-masthead__cta a.rx-cart.is-empty:hover,
.rx-cart.is-empty:hover{color:var(--rx-graphite);border-color:var(--rx-graphite);background:transparent}
.rx-masthead__cta a.rx-cart.has-items,
.rx-cart.has-items{background:var(--rx-crimson);color:#fff;border:1px solid var(--rx-crimson)}
.rx-cart.has-items:hover{background:var(--rx-crimson-deep);border-color:var(--rx-crimson-deep)}
.rx-cart__count{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:20px;height:20px;padding:0 6px;
  border-radius:999px;background:rgba(255,255,255,.22);
  font-family:var(--rx-display);font-size:12px;font-weight:700;line-height:1;
}
.rx-cart__count[hidden]{display:none}

/* A flag under a card name on an ordinary card. The existing rule only
   covers .rx-card--feature, so a plain card using the same class rendered
   as unstyled body text. */
.rx-card:not(.rx-card--feature) .rx-card__flag{
  margin:6px 0 0;
  font-family:var(--rx-display);font-size:12.5px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--rx-crimson);
}



/* Reclaim Blog Archive Layout Fix */
body.blog .site-content,
body.blog .content-area,
body.blog .site-main {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    float: none;
    box-sizing: border-box;
}

body.blog .site-main > article {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

body.blog .site-main > article .inside-article {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

body.blog .site-main > article .entry-title {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: normal;
}

