/* ============================================================
   ASPN Pharmacies, LLC — pharmacy wall theme
   Shell-white counters, cross-green accents, vault-deep wells.
   ============================================================ */

:root {
  --shell: #F3F4F0;
  --shell-panel: #FAFBF8;
  --ink: #26292C;
  --cross: #2E7A5E;
  --vault: #1C2724;
  --cabinet: #5A6260;
  --script: #C24A3A;
  --cross-dark: #225C47;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  background-color: #F3F4F0;
  color: #26292C;
  overflow-x: hidden;
}

h1, h2, h3, h4 { line-height: 1.2; margin: 0 0 14px; color: #26292C; }
p { margin: 0 0 14px; }
a { color: #2E7A5E; }
img { max-width: 100%; }

/* ---------- shared reveal ---------- */
.revealable { opacity: 1; }
.js-on .revealable { opacity: 1; transform: none; }
.js-on .revealable.is-hidden { opacity: 1; transform: none; }

/* ============================================================
   CANISTER RAIL NAV
   ============================================================ */
.pillhead {
  background-color: #1C2724;
  border-bottom: 4px solid #2E7A5E;
}
.pillhead-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 10px 24px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.pillhead-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  background-color: #243330;
  border: 1px solid #3C4F49;
  border-radius: 10px;
  padding: 8px 16px 8px 10px;
  flex-shrink: 0;
}
.pillhead-cross {
  width: 30px;
  height: 30px;
  background-color: #2E7A5E;
  border-radius: 6px;
  position: relative;
  flex-shrink: 0;
}
.pillhead-cross::before,
.pillhead-cross::after {
  content: "";
  position: absolute;
  background-color: #F3F4F0;
  border-radius: 2px;
}
.pillhead-cross::before { width: 6px; height: 20px; left: 12px; top: 5px; }
.pillhead-cross::after { width: 20px; height: 6px; left: 5px; top: 12px; }
.pillhead-brandtext { display: flex; flex-direction: column; }
.pillhead-brandtext strong { color: #F3F4F0; font-size: 15px; letter-spacing: 0.3px; }
.pillhead-brandtext small { color: #9FB4AC; font-size: 11px; letter-spacing: 0.6px; text-transform: uppercase; }

.pillhead-nav {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  margin-left: auto;
}
.pillhead-can {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  background-color: #F3F4F0;
  border-radius: 6px 6px 4px 4px;
  padding: 8px 14px 9px;
  min-width: 74px;
  border: 1px solid #3C4F49;
  transition: transform 0.15s ease;
}
.pillhead-can:hover { transform: translateY(-3px); }
.pillhead-cap {
  display: block;
  width: 34px;
  height: 8px;
  border-radius: 3px;
  background-color: #5A6260;
  margin-bottom: 6px;
}
.pillhead-can-active .pillhead-cap { background-color: #2E7A5E; }
.pillhead-label { color: #26292C; font-size: 13px; font-weight: 600; }
.pillhead-can-active { border-color: #2E7A5E; }
.pillhead-toggle {
  display: none;
  margin-left: auto;
  background-color: #2E7A5E;
  color: #F3F4F0;
  border: none;
  border-radius: 8px;
  padding: 10px 16px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

/* ============================================================
   PHARMACY COUNTER HERO
   ============================================================ */
.rxcounter {
  background-color: #F3F4F0;
  padding: 52px 0 0;
}
.rxcounter-open {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px 40px;
}
.rxcounter-kicker {
  color: #2E7A5E;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  margin-bottom: 18px;
}
.rxcounter-headline {
  font-size: 64px;
  line-height: 1.02;
  font-weight: 800;
  letter-spacing: -1.5px;
  margin: 0 0 22px;
  max-width: 720px;
}
.rxcounter-line-one,
.rxcounter-line-three { display: block; color: #26292C; }
.rxcounter-line-two { display: block; color: #2E7A5E; }
.rxcounter-lede {
  max-width: 720px;
  font-size: 17px;
  color: #26292C;
  margin: 0;
}

.rxcounter-band {
  background-color: #1C2724;
  display: grid;
  grid-template-columns: 1.1fr 1.4fr 1fr;
  gap: 0;
  min-height: 360px;
  border-top: 6px solid #2E7A5E;
  border-bottom: 6px solid #2E7A5E;
}

.rxcounter-wall {
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
  background-color: #212D2A;
  border-right: 2px solid #384743;
}
.rxcounter-shelf {
  display: flex;
  gap: 10px;
  align-items: flex-end;
  border-bottom: 5px solid #5A6260;
  padding-bottom: 6px;
}
.rxcounter-jar {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #F3F4F0;
  border-radius: 8px 8px 4px 4px;
  padding: 6px 4px;
  flex: 1;
}
.rxcounter-jar i {
  display: block;
  width: 24px;
  height: 10px;
  border-radius: 3px 3px 0 0;
  margin-bottom: 6px;
}
.cap-green { background-color: #2E7A5E; }
.cap-red { background-color: #C24A3A; }
.rxcounter-jar b {
  font-size: 9px;
  color: #26292C;
  font-weight: 700;
  letter-spacing: 0.4px;
}

.rxcounter-mid {
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
}
.rxcounter-shade {
  position: absolute;
  top: 26px;
  left: 22px;
  right: 22px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.rxcounter-shade-roll {
  display: block;
  height: 12px;
  border-radius: 6px;
  background-color: #5A6260;
  border: 1px solid #7C8683;
}
.rxcounter-shade-slat {
  display: block;
  height: 9px;
  border-radius: 2px;
  background-color: #243330;
  border: 1px solid #384743;
}
.rxcounter-top {
  position: relative;
  margin-top: 120px;
  border-top: 8px solid #5A6260;
  padding-top: 22px;
  height: 100px;
}
.rxcounter-tray {
  position: absolute;
  left: 8%;
  top: 30px;
  width: 44%;
  height: 52px;
  background-color: #F3F4F0;
  border: 2px solid #8A948F;
  border-radius: 6px;
}
.rxcounter-vial {
  position: absolute;
  bottom: 0;
  width: 26px;
  height: 62px;
  background-color: #FAFBF8;
  border: 2px solid #5A6260;
  border-radius: 4px 4px 8px 8px;
}
.rxcounter-vial::before {
  content: "";
  position: absolute;
  top: -9px;
  left: 4px;
  right: 4px;
  height: 9px;
  background-color: #2E7A5E;
  border-radius: 3px 3px 0 0;
}
.rxcounter-vial-a { right: 30%; }
.rxcounter-vial-b { right: 20%; }

.rxcounter-front-rail {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #16201D;
  border-top: 3px solid #2E7A5E;
  display: flex;
  justify-content: space-around;
  padding: 8px 12px;
}
.rxcounter-front-rail span {
  color: #B9C8C2;
  font-size: 11px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  font-weight: 600;
}

.rxcounter-station {
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  background-color: #212D2A;
  border-left: 2px solid #384743;
  position: relative;
}
.rxcounter-cross {
  width: 62px;
  height: 62px;
  background-color: #2E7A5E;
  border-radius: 10px;
  position: relative;
}
.rxcounter-cross::before,
.rxcounter-cross::after {
  content: "";
  position: absolute;
  background-color: #F3F4F0;
  border-radius: 3px;
}
.rxcounter-cross::before { width: 12px; height: 42px; left: 25px; top: 10px; }
.rxcounter-cross::after { width: 42px; height: 12px; left: 10px; top: 25px; }
.rxcounter-worktray {
  width: 78%;
  height: 44px;
  background-color: #F3F4F0;
  border: 2px solid #8A948F;
  border-radius: 6px;
}
.rxcounter-tote {
  width: 74%;
  background-color: #5A6260;
  color: #F3F4F0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-align: center;
  padding: 14px 6px;
  border-radius: 4px;
  border: 2px solid #7C8683;
}
.rxcounter-tote-b { background-color: #46504D; }

.rxcounter-ctas {
  max-width: 1180px;
  margin: 0 auto;
  padding: 36px 24px 48px;
  display: flex;
  gap: 20px;
  align-items: flex-start;
  flex-wrap: wrap;
}
.rxcounter-vialcard {
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-decoration: none;
  border-radius: 10px;
  padding: 20px 24px;
  min-width: 300px;
  flex: 1 1 300px;
  max-width: 420px;
}
.rxcounter-vialcard strong { font-size: 18px; }
.rxcounter-vialcard span { font-size: 14px; }
.rxcounter-vialcard-solid {
  background-color: #2E7A5E;
  color: #F3F4F0;
  margin-top: 0;
}
.rxcounter-vialcard-solid strong,
.rxcounter-vialcard-solid span { color: #F3F4F0; }
.rxcounter-vialcard-ghost {
  background-color: #FAFBF8;
  border: 2px solid #2E7A5E;
  color: #26292C;
  margin-top: 26px;
}
.rxcounter-vialcard-ghost strong { color: #26292C; }
.rxcounter-vialcard-ghost span { color: #46504D; }

/* ============================================================
   INTRO
   ============================================================ */
.rxintro { background-color: #FAFBF8; padding: 60px 0; border-bottom: 2px solid #DCE0D9; }
.rxintro-grid {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 48px;
}
.rxintro-lead h2 { font-size: 34px; margin-bottom: 18px; }
.rxintro-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-content: start;
}
.rxintro-fact {
  background-color: #F3F4F0;
  border-left: 4px solid #2E7A5E;
  border-radius: 6px;
  padding: 14px 16px;
}
.rxintro-fact strong { display: block; margin-bottom: 4px; font-size: 15px; }
.rxintro-fact span { font-size: 13px; color: #46504D; }

/* ============================================================
   FILL STATION ROWS
   ============================================================ */
.fillrows { background-color: #F3F4F0; padding: 64px 0 72px; }
.fillrows-head {
  max-width: 1180px;
  margin: 0 auto 44px;
  padding: 0 24px;
}
.fillrows-head h2 { font-size: 36px; }
.fillrows-head p { max-width: 780px; color: #46504D; }
.fillrows-wall {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 34px;
}

.fillrow {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 26px;
  background-color: #FAFBF8;
  border: 2px solid #DCE0D9;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 2px 0 #DCE0D9;
}
.fillrow-a { margin-left: 0; width: 100%; }
.fillrow-b { margin-left: 8%; width: 88%; }
.fillrow-c { margin-left: 3%; width: 94%; }
.fillrow-d { margin-left: 12%; width: 84%; }
.fillrow-e { margin-left: 5%; width: 90%; }
.fillrow-f { margin-left: 9%; width: 86%; }

.fillrow-bay {
  background-color: #E9EBE5;
  border: 2px solid #5A6260;
  border-radius: 10px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: flex-end;
}
.fillrow-tray {
  height: 40px;
  background-color: #5A6260;
  border-radius: 6px;
  border: 2px solid #7C8683;
}
.fillrow-cans { display: flex; gap: 12px; }
.fillrow-can {
  flex: 1;
  height: 84px;
  background-color: #FAFBF8;
  border: 2px solid #8A948F;
  border-radius: 6px 6px 12px 12px;
  display: flex;
  justify-content: center;
  padding-top: 8px;
}
.fillrow-can i { display: block; width: 34px; height: 12px; border-radius: 4px; }
.fillrow-cap-g { background-color: #2E7A5E; }
.fillrow-cap-r { background-color: #C24A3A; }

.fillrow-plate { position: relative; }
.fillrow-tag {
  display: inline-block;
  background-color: #1C2724;
  color: #F3F4F0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.6px;
  padding: 4px 10px;
  border-radius: 4px;
  margin-bottom: 10px;
}
.fillrow-plate h3 { font-size: 23px; margin-bottom: 10px; }
.fillrow-plate p { color: #3A4240; }

.fillrow-stamp {
  display: inline-block;
  margin-top: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2.2px;
  padding: 6px 14px;
  border-radius: 4px;
}
.fillrow-stamp-green {
  background-color: #2E7A5E;
  color: #F3F4F0;
  transform: rotate(-3deg);
}
.fillrow-seal {
  display: inline-block;
  margin-top: 10px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2.2px;
  padding: 6px 14px;
  border-radius: 4px;
  border: 3px solid #C24A3A;
  color: #C24A3A;
  transform: rotate(-3deg);
}

/* ============================================================
   WAIT STRIP
   ============================================================ */
.waitstrip { background-color: #1C2724; border-top: 5px solid #2E7A5E; border-bottom: 5px solid #2E7A5E; }
.waitstrip-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 16px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.waitstrip-left { display: flex; align-items: center; gap: 14px; }
.waitstrip-cross {
  width: 26px;
  height: 26px;
  background-color: #2E7A5E;
  border-radius: 5px;
  position: relative;
  flex-shrink: 0;
}
.waitstrip-cross::before,
.waitstrip-cross::after {
  content: "";
  position: absolute;
  background-color: #F3F4F0;
  border-radius: 2px;
}
.waitstrip-cross::before { width: 5px; height: 17px; left: 10.5px; top: 4.5px; }
.waitstrip-cross::after { width: 17px; height: 5px; left: 4.5px; top: 10.5px; }
.waitstrip-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #2E7A5E;
  flex-shrink: 0;
}
.waitstrip-left p { color: #F3F4F0; margin: 0; font-size: 15px; font-weight: 600; }
.waitstrip-right { display: flex; align-items: baseline; gap: 6px; flex-shrink: 0; }
.waitstrip-digit {
  color: #C24A3A;
  font-size: 30px;
  font-weight: 800;
  letter-spacing: 1px;
}
.waitstrip-unit { color: #C24A3A; font-size: 14px; font-weight: 700; letter-spacing: 2px; }

/* ============================================================
   PROCESS
   ============================================================ */
.rxprocess { background-color: #FAFBF8; padding: 64px 0; border-bottom: 2px solid #DCE0D9; }
.rxprocess-inner { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.rxprocess-inner h2 { font-size: 34px; margin-bottom: 36px; }
.rxprocess-track {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.rxprocess-step {
  background-color: #F3F4F0;
  border-top: 5px solid #2E7A5E;
  border-radius: 8px;
  padding: 22px 20px;
  position: relative;
}
.rxprocess-num {
  display: inline-block;
  font-size: 26px;
  font-weight: 800;
  color: #2E7A5E;
  margin-bottom: 10px;
}
.rxprocess-step h3 { font-size: 18px; }
.rxprocess-step p { font-size: 14px; color: #46504D; margin: 0; }

/* ============================================================
   ABOUT
   ============================================================ */
.rxabout { background-color: #E9EBE5; padding: 64px 0; }
.rxabout-inner { max-width: 900px; margin: 0 auto; padding: 0 24px; }
.rxabout-inner h2 { font-size: 32px; }

/* ============================================================
   CTA
   ============================================================ */
.rxcta { background-color: #1C2724; padding: 60px 0; }
.rxcta-inner { max-width: 900px; margin: 0 auto; padding: 0 24px; text-align: center; }
.rxcta-inner h2 { color: #F3F4F0; font-size: 34px; }
.rxcta-inner p { color: #C4D2CC; font-size: 16px; }
.rxcta-buttons { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-top: 22px; }
.rxcta-primary {
  background-color: #2E7A5E;
  color: #F3F4F0;
  text-decoration: none;
  font-weight: 700;
  padding: 14px 28px;
  border-radius: 9px;
}
.rxcta-secondary {
  background-color: #F3F4F0;
  color: #1C2724;
  text-decoration: none;
  font-weight: 700;
  padding: 14px 28px;
  border-radius: 9px;
  border: 2px solid #2E7A5E;
}

/* ============================================================
   PAGE HERO (secondary pages)
   ============================================================ */
.pagehero { background-color: #F3F4F0; padding: 56px 0 44px; border-bottom: 2px solid #DCE0D9; }
.pagehero-inner { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.pagehero-kicker {
  color: #2E7A5E;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.pagehero h1 { font-size: 46px; max-width: 820px; }
.pagehero-lede { max-width: 820px; font-size: 17px; color: #26292C; }

/* ============================================================
   CONTACT
   ============================================================ */
.contactzone { background-color: #F3F4F0; padding: 56px 0; }
.contactzone-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 40px;
  align-items: start;
}
.contactform-card {
  background-color: #FAFBF8;
  border: 2px solid #DCE0D9;
  border-top: 6px solid #2E7A5E;
  border-radius: 12px;
  padding: 28px;
}
.contactform-card h2 { font-size: 26px; }
.contactform-note { font-size: 14px; color: #46504D; }
.contactform { display: flex; flex-direction: column; gap: 16px; margin-top: 8px; }
.contactform-field { display: flex; flex-direction: column; gap: 6px; }
.contactform-field span { font-size: 13px; font-weight: 700; letter-spacing: 0.4px; text-transform: uppercase; color: #2E7A5E; }
.contactform-field input,
.contactform-field textarea {
  font-family: inherit;
  font-size: 15px;
  color: #26292C;
  background-color: #F3F4F0;
  border: 2px solid #C3C9C0;
  border-radius: 8px;
  padding: 11px 13px;
}
.contactform-field input:focus,
.contactform-field textarea:focus {
  outline: none;
  border-color: #2E7A5E;
}
.contactform-submit {
  align-self: flex-start;
  background-color: #2E7A5E;
  color: #F3F4F0;
  border: none;
  border-radius: 9px;
  font-size: 16px;
  font-weight: 700;
  padding: 13px 30px;
  cursor: pointer;
}
.contactform-submit:hover { background-color: #225C47; }
.contactform-status { font-size: 14px; font-weight: 600; color: #C24A3A; margin: 0; min-height: 20px; }

.contactdetails { display: flex; flex-direction: column; gap: 22px; }
.contactdetails-block {
  background-color: #FAFBF8;
  border: 2px solid #DCE0D9;
  border-left: 5px solid #2E7A5E;
  border-radius: 10px;
  padding: 20px 22px;
}
.contactdetails-block h2 { font-size: 20px; margin-bottom: 8px; }
.contactdetails-block p { margin: 0; }
.contacthours { list-style: none; margin: 0; padding: 0; }
.contacthours li {
  display: flex;
  justify-content: space-between;
  padding: 7px 0;
  border-bottom: 1px solid #DCE0D9;
  font-size: 14px;
}
.contacthours li:last-child { border-bottom: none; }
.contacthours span:last-child { font-weight: 700; color: #26292C; }

.contactfaq { background-color: #E9EBE5; padding: 56px 0; }
.contactfaq-inner { max-width: 900px; margin: 0 auto; padding: 0 24px; }
.contactfaq-inner > h2 { font-size: 32px; margin-bottom: 30px; }
.contactfaq-item {
  background-color: #FAFBF8;
  border: 2px solid #DCE0D9;
  border-radius: 10px;
  padding: 22px 24px;
  margin-bottom: 18px;
}
.contactfaq-item h3 { font-size: 19px; color: #225C47; }
.contactfaq-item p { margin: 0; color: #3A4240; }

/* ============================================================
   FILE DRAWER FOOTER
   ============================================================ */
.filedraw { background-color: #1C2724; border-top: 6px solid #2E7A5E; }
.filedraw-room {
  max-width: 1180px;
  margin: 0 auto;
  padding: 44px 24px 30px;
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 40px;
  align-items: center;
}
.filedraw-nameplate {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.filedraw-cross {
  width: 34px;
  height: 34px;
  background-color: #2E7A5E;
  border-radius: 6px;
  position: relative;
}
.filedraw-cross::before,
.filedraw-cross::after {
  content: "";
  position: absolute;
  background-color: #F3F4F0;
  border-radius: 2px;
}
.filedraw-cross::before { width: 6px; height: 22px; left: 14px; top: 6px; }
.filedraw-cross::after { width: 22px; height: 6px; left: 6px; top: 14px; }
.filedraw-nameplate strong { color: #F3F4F0; font-size: 20px; }
.filedraw-nameplate p { color: #A9BAB3; font-size: 14px; margin: 0; max-width: 420px; }

.filedraw-bank {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}
.filedraw-drawer {
  background-color: #5A6260;
  border: 2px solid #7C8683;
  border-radius: 7px;
  padding: 12px 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
}
.filedraw-window {
  display: block;
  width: 100%;
  background-color: #F3F4F0;
  color: #46504D;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-align: center;
  border-radius: 3px;
  padding: 3px 0;
}
.filedraw-drawer a {
  color: #1C2724;
  background-color: #FAFBF8;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  border-radius: 5px;
  padding: 6px 10px;
  width: 100%;
  text-align: center;
}
.filedraw-drawer a:hover { background-color: #2E7A5E; color: #F3F4F0; }

.filedraw-strip {
  border-top: 1px solid #384743;
  max-width: 1180px;
  margin: 0 auto;
  padding: 16px 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  align-items: center;
}
.filedraw-strip span { color: #A9BAB3; font-size: 13px; }
.filedraw-glyph {
  width: 12px;
  height: 12px;
  background-color: #2E7A5E;
  border-radius: 3px;
  position: relative;
}
.filedraw-glyph::before,
.filedraw-glyph::after {
  content: "";
  position: absolute;
  background-color: #1C2724;
}
.filedraw-glyph::before { width: 2px; height: 8px; left: 5px; top: 2px; }
.filedraw-glyph::after { width: 8px; height: 2px; left: 2px; top: 5px; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 980px) {
  .rxcounter-headline { font-size: 48px; }
  .rxcounter-band { grid-template-columns: 1fr; }
  .rxcounter-wall { border-right: none; border-bottom: 2px solid #384743; }
  .rxcounter-station { border-left: none; border-top: 2px solid #384743; }
  .rxintro-grid { grid-template-columns: 1fr; gap: 30px; }
  .rxprocess-track { grid-template-columns: 1fr 1fr; }
  .contactzone-inner { grid-template-columns: 1fr; }
  .filedraw-room { grid-template-columns: 1fr; gap: 26px; }
  .pagehero h1 { font-size: 36px; }
}

@media (max-width: 760px) {
  .pillhead-inner { flex-wrap: wrap; }
  .pillhead-toggle { display: block; }
  .pillhead-nav {
    display: none;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    margin-left: 0;
  }
  .pillhead-nav.pillhead-open { display: flex; }
  .pillhead-can { flex-direction: row; justify-content: flex-start; gap: 12px; min-width: 0; }
  .pillhead-cap { width: 22px; margin-bottom: 0; }
  .rxcounter-headline { font-size: 36px; letter-spacing: -0.8px; }
  .fillrow-b,
  .fillrow-c,
  .fillrow-d,
  .fillrow-e,
  .fillrow-f { margin-left: 0; width: 100%; }
  .fillrow { grid-template-columns: 1fr; }
  .rxintro-facts { grid-template-columns: 1fr; }
  .rxprocess-track { grid-template-columns: 1fr; }
  .filedraw-bank { grid-template-columns: 1fr 1fr; }
  .waitstrip-inner { flex-direction: column; align-items: flex-start; }
  .rxcounter-ctas { flex-direction: column; }
  .rxcounter-vialcard { min-width: 0; max-width: none; width: 100%; }
  .rxcounter-vialcard-ghost { margin-top: 0; }
}
