:root {
  color-scheme: dark;
  --canvas-top: #0f1112;
  --canvas: #070b0f;
  --canvas-deep: #030507;
  --panel: #10161b;
  --accent: #64d2ff;
  --accent-bright: #abebff;
  --accent-ink: #00181f;
  --text: #f5f8fa;
  --muted: rgb(255 255 255 / .74);
  --faint: rgb(255 255 255 / .48);
  --glass-fill: rgb(255 255 255 / .055);
  --glass-fill-strong: rgb(255 255 255 / .085);
  --stroke: rgb(255 255 255 / .09);
  --stroke-strong: rgb(255 255 255 / .16);
  --route-line: rgb(100 210 255 / .58);
  --radius-card: 22px;
  --radius-inset: 16px;
  --shell: 1180px;
  --display-font: "Manrope", "SF Pro Display", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --body-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;
  --brand-ease: cubic-bezier(.22, 1, .36, 1);
}

* { box-sizing: border-box; }
html { background: var(--canvas-deep); scroll-behavior: smooth; scroll-padding-top: 92px; }
body { min-width: 320px; margin: 0; background: radial-gradient(circle at 78% -6%, rgb(100 210 255 / .1), transparent 31rem), linear-gradient(180deg, var(--canvas-top) 0%, var(--canvas) 24%, var(--canvas-deep) 100%); color: var(--text); font-family: var(--body-font); line-height: 1.55; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
body, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
p, h1, h2, h3 { margin-top: 0; }
::selection { background: rgb(100 210 255 / .3); color: var(--text); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; box-shadow: 0 0 0 5px var(--canvas-deep); }

.seo-page { min-height: 100dvh; overflow-x: clip; }
.seo-shell { width: min(var(--shell), calc(100% - 48px)); margin-inline: auto; }
.skip-link { position: fixed; top: 10px; left: 12px; z-index: 100; padding: 10px 14px; border-radius: 12px; background: var(--accent); color: var(--accent-ink); font-weight: 780; text-decoration: none; transform: translateY(-160%); transition: transform 180ms ease; }
.skip-link:focus { transform: translateY(0); }

.seo-header { position: sticky; top: 0; z-index: 50; min-height: 72px; border-bottom: 1px solid var(--stroke); background: rgb(7 11 15 / .94); backdrop-filter: blur(18px) saturate(135%); -webkit-backdrop-filter: blur(18px) saturate(135%); }
.seo-nav-row { display: grid; min-height: 71px; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 24px; }
.seo-brand { position: relative; display: inline-flex; width: fit-content; min-width: 0; align-items: center; gap: 11px; font-family: var(--display-font); font-size: .98rem; font-weight: 680; letter-spacing: -.015em; text-decoration: none; white-space: nowrap; }
.seo-brand::after { position: absolute; right: 0; bottom: -9px; left: 45px; height: 2px; border-radius: 999px; background: linear-gradient(90deg, transparent, var(--route-line)); content: ""; opacity: .48; transform: scaleX(.28); transform-origin: left; transition: opacity 240ms ease, transform 420ms var(--brand-ease); }
.seo-brand:hover::after, .seo-brand:focus-visible::after { opacity: 1; transform: scaleX(1); }
.seo-brand img { width: 34px; height: 34px; border-radius: 10px; background: #02141b; }
.seo-nav-links { display: flex; align-items: center; gap: 30px; color: var(--muted); font-size: .9rem; font-weight: 630; }
.seo-nav-links a { position: relative; text-decoration: none; transition: color 180ms ease; }
.seo-nav-links a::after { position: absolute; right: 0; bottom: -8px; left: 0; height: 1px; background: var(--accent); content: ""; transform: scaleX(0); transform-origin: right; transition: transform 220ms var(--brand-ease); }
.seo-nav-links a:hover, .seo-nav-links a:focus-visible { color: var(--accent); }
.seo-nav-links a:hover::after, .seo-nav-links a:focus-visible::after { transform: scaleX(1); transform-origin: left; }
.seo-mobile-menu { position: relative; display: none; }
.seo-mobile-menu summary { min-height: 42px; align-items: center; justify-content: center; padding: 0 15px; border: 1px solid var(--stroke-strong); border-radius: 999px; background: var(--glass-fill); color: var(--text); cursor: pointer; font-family: var(--display-font); font-size: .82rem; font-weight: 720; list-style: none; transition: border-color 180ms ease, background 180ms ease, color 180ms ease; }
.seo-mobile-menu summary::-webkit-details-marker { display: none; }
.seo-mobile-menu summary:hover, .seo-mobile-menu summary:focus-visible, .seo-mobile-menu[open] summary { border-color: rgb(100 210 255 / .42); background: rgb(100 210 255 / .09); color: var(--accent-bright); }
.seo-mobile-menu:not([open]) .seo-mobile-menu__panel { display: none; }
.seo-mobile-menu__panel { position: fixed; top: 72px; right: 16px; left: 16px; display: grid; overflow: hidden; border: 1px solid var(--stroke-strong); border-radius: var(--radius-inset); background: rgb(7 11 15 / .98); box-shadow: inset 0 1px 0 rgb(255 255 255 / .07), 0 24px 64px rgb(0 0 0 / .42); }
.seo-mobile-menu__panel a { padding: 16px 18px; border-bottom: 1px solid var(--stroke); color: var(--muted); font-family: var(--display-font); font-size: .94rem; font-weight: 680; text-decoration: none; transition: background 180ms ease, color 180ms ease; }
.seo-mobile-menu__panel a:last-child { border-bottom: 0; }
.seo-mobile-menu__panel a:hover, .seo-mobile-menu__panel a:focus-visible { background: rgb(100 210 255 / .08); color: var(--accent-bright); }
.header-cta { justify-self: end; }

.header-cta, .primary-cta { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 0 18px; border: 1px solid rgb(255 255 255 / .2); border-radius: 999px; background: var(--accent); box-shadow: inset 0 1px 0 rgb(255 255 255 / .38), 0 14px 36px rgb(0 92 124 / .2); color: var(--accent-ink); font-size: .88rem; font-weight: 780; letter-spacing: -.015em; text-decoration: none; white-space: nowrap; transition: background 180ms ease, box-shadow 180ms ease, transform 180ms var(--brand-ease); }
.header-cta:hover, .primary-cta:hover { background: var(--accent-bright); box-shadow: inset 0 1px 0 rgb(255 255 255 / .42), 0 18px 42px rgb(0 92 124 / .27); transform: translateY(-2px); }
.header-cta:active, .primary-cta:active { transform: scale(.98); }
.secondary-cta, .card-link { display: inline-flex; width: fit-content; align-items: center; color: var(--accent); font-weight: 720; text-decoration: none; white-space: nowrap; transition: color 180ms ease, transform 180ms var(--brand-ease); }
.secondary-cta:hover, .card-link:hover { color: var(--accent-bright); transform: translateX(3px); }
.secondary-cta:active, .card-link:active { transform: scale(.98); }

.breadcrumb { padding-top: 30px; }
.breadcrumb ol { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; color: var(--faint); font-size: .8rem; list-style: none; }
.breadcrumb li { display: inline-flex; align-items: center; gap: 8px; }
.breadcrumb a { text-decoration: none; }
.breadcrumb a:hover { color: var(--accent); }

h1, h2, h3 { font-family: var(--display-font); letter-spacing: -.035em; line-height: 1.05; text-wrap: balance; }
h1 { max-width: 790px; margin-bottom: 24px; font-size: clamp(2.75rem, 5.1vw, 4.55rem); font-weight: 700; letter-spacing: -.048em; }
h2 { margin-bottom: 18px; font-size: clamp(2.05rem, 4.2vw, 3.9rem); font-weight: 700; }
h3 { font-size: clamp(1.2rem, 1.8vw, 1.48rem); }
.page-medication-injection-tracker h1 { font-size: clamp(2.55rem, 4.4vw, 3.85rem); }
.eyebrow { margin: 0 0 16px; color: var(--accent); font-family: var(--display-font); font-size: .76rem; font-weight: 780; letter-spacing: .13em; text-transform: uppercase; }
.lede { max-width: 620px; margin: 0; color: var(--muted); font-size: clamp(1.04rem, 1.65vw, 1.2rem); line-height: 1.65; }

.page-hero { display: grid; min-height: min(680px, calc(100dvh - 112px)); grid-template-columns: minmax(0, .98fr) minmax(260px, .72fr); align-items: center; gap: clamp(40px, 7vw, 104px); padding-block: clamp(42px, 6vw, 72px); }
.page-hero--media-left { grid-template-columns: minmax(260px, .72fr) minmax(0, .98fr); }
.page-hero--media-left .page-hero__media { order: -1; }
.page-hero--landscape { grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr); gap: clamp(36px, 5vw, 76px); }
.page-hero__copy { min-width: 0; }
.page-hero__media { position: relative; display: grid; justify-items: center; justify-self: stretch; }
.media-frame { position: relative; overflow: hidden; }
.phone-frame { width: min(300px, 100%); padding: 9px; border: 1px solid var(--stroke-strong); border-radius: 38px; background: var(--glass-fill); box-shadow: inset 0 1px 0 rgb(255 255 255 / .08), 0 32px 80px rgb(0 15 24 / .3); }
.phone-frame img { width: 100%; border-radius: 30px; }
.phone-frame--quiet { width: min(290px, 100%); }
.phone-frame--small { width: min(240px, 100%); }
.brand-landscape, .landscape-frame { width: 100%; border: 1px solid var(--stroke); border-radius: var(--radius-card); background: var(--glass-fill); box-shadow: inset 0 1px 0 rgb(255 255 255 / .07), 0 28px 72px rgb(0 15 24 / .24); }
.brand-landscape img, .landscape-frame img { width: 100%; border-radius: inherit; }
.brand-field { width: 100%; border: 1px solid var(--stroke); border-radius: var(--radius-card); background: var(--glass-fill); }
.brand-field img { width: 100%; border-radius: inherit; }
.media-caption { margin: 12px 0 0; color: var(--faint); font-size: .78rem; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 32px; }

.section-block { padding-block: clamp(80px, 10vw, 132px); }
.surface-section { border-block: 1px solid var(--stroke); background: linear-gradient(180deg, rgb(255 255 255 / .034), rgb(255 255 255 / .012)); }
.section-heading { max-width: 760px; margin-bottom: 44px; }
.section-heading p, .section-block p { color: var(--muted); }
.section-heading p { max-width: 64ch; font-size: 1.03rem; line-height: 1.7; }
.routine-label { margin: 0 0 12px; color: var(--accent); font-size: .82rem; font-weight: 720; }

.safety-note { margin-block: 16px 94px; padding: 30px; border: 1px solid rgb(100 210 255 / .18); border-radius: var(--radius-card); background: rgb(100 210 255 / .055); box-shadow: inset 0 1px 0 rgb(255 255 255 / .05); }
.safety-note strong { color: var(--accent-bright); font-family: var(--display-font); }
.safety-note p { max-width: 880px; margin: 9px 0 0; color: var(--muted); }
.faq-section { max-width: var(--shell); }
.faq-list { display: grid; grid-template-columns: minmax(0, 1fr); }
.faq-list details { border-top: 1px solid var(--stroke); }
.faq-list details:last-child { border-bottom: 1px solid var(--stroke); }
.faq-list summary { padding: 24px 4px; cursor: pointer; font-family: var(--display-font); font-size: 1.08rem; font-weight: 720; }
.faq-list summary::marker { color: var(--accent); }
.faq-list p { max-width: 800px; padding: 0 4px 22px; color: var(--muted); }
.closing-panel { padding-block: clamp(82px, 11vw, 132px); border-top: 1px solid var(--stroke); background: radial-gradient(circle at 82% 45%, rgb(100 210 255 / .08), transparent 28rem); }
.closing-panel__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 40px; }
.closing-panel h2 { max-width: 760px; }
.closing-panel p { max-width: 620px; margin-bottom: 0; color: var(--muted); }

/* Guide directory */
.guide-atlas .page-hero__media { align-self: stretch; align-items: center; }
.guide-mosaic { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 18px; }
.guide-tile { display: grid; min-height: 430px; overflow: hidden; border: 1px solid var(--stroke); border-radius: var(--radius-card); background: var(--glass-fill); box-shadow: inset 0 1px 0 rgb(255 255 255 / .05); }
.guide-tile > div { padding: 30px; align-self: end; }
.guide-tile h2 { font-size: clamp(1.7rem, 3vw, 2.45rem); }
.guide-tile h2 a, .guide-tile__media { text-decoration: none; }
.guide-tile p { color: var(--muted); }
.guide-tile__media { min-height: 250px; overflow: hidden; border-bottom: 1px solid var(--stroke); background: #0b0f12; }
.guide-tile__media .media-frame, .guide-tile__media img { width: 100%; height: 100%; }
.guide-tile__media img { object-fit: cover; object-position: top; transition: transform 520ms var(--brand-ease); }
.guide-tile:hover .guide-tile__media img { transform: scale(1.025); }
.guide-tile--glp { grid-column: span 7; grid-template-columns: minmax(200px, .75fr) minmax(0, 1.25fr); }
.guide-tile--glp .guide-tile__media { border-right: 1px solid var(--stroke); border-bottom: 0; }
.guide-tile--biologic { grid-column: span 5; }
.guide-tile--fertility { grid-column: span 5; }
.guide-tile--insulin { grid-column: span 7; grid-template-columns: minmax(0, 1.2fr) minmax(200px, .8fr); }
.guide-tile--insulin .guide-tile__media { order: 2; border-bottom: 0; border-left: 1px solid var(--stroke); }

/* GLP-1 */
.glp-product-band { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: end; gap: clamp(40px, 8vw, 100px); }
.glp-product-band p { max-width: 48ch; }
.glp-product-ribbon { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; border-top: 1px solid var(--stroke); list-style: none; }
.glp-product-ribbon li { padding: 20px 18px 20px 0; border-bottom: 1px solid var(--stroke); color: var(--accent-bright); font-family: var(--display-font); font-size: 1.08rem; font-weight: 700; }
.glp-weekline__events { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.glp-weekline__events article { grid-column: span 5; min-height: 190px; padding: 30px 34px 26px 0; border-top: 1px solid var(--stroke); }
.glp-weekline__events article:nth-child(2), .glp-weekline__events article:nth-child(4) { grid-column: 7 / span 6; padding-right: 0; }
.glp-weekline__events article:nth-child(3) { grid-column: 2 / span 5; }
.glp-weekline__events p { max-width: 46ch; }
.glp-supply-window { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); align-items: center; gap: clamp(42px, 8vw, 110px); }
.outcome-cascade { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.outcome-cascade li { padding: 18px 0; border-bottom: 1px solid var(--stroke); }

/* Biologic */
.biologic-medication-ledger { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(40px, 8vw, 96px); }
.medication-ledger { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; border-top: 1px solid var(--stroke); list-style: none; }
.medication-ledger li { padding: 19px 12px 19px 0; border-bottom: 1px solid var(--stroke); color: var(--accent-bright); font-weight: 720; }
.biologic-cadence { display: grid; grid-template-columns: minmax(270px, .78fr) minmax(0, 1.22fr); align-items: start; gap: clamp(46px, 9vw, 118px); }
.timer-frame { position: sticky; top: 102px; width: min(430px, 100%); padding: 9px; border: 1px solid var(--stroke-strong); border-radius: 30px; background: var(--glass-fill); }
.timer-frame img { width: 100%; border-radius: 22px; }
.biologic-cadence__rail article { padding: 25px 0; border-bottom: 1px solid var(--stroke); }
.biologic-cadence__rail p { max-width: 55ch; }
.biologic-outcome-ledger { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, .62fr); align-items: center; gap: clamp(50px, 10vw, 130px); }
.outcome-ledger { margin: 34px 0 0; padding: 0; list-style: none; }
.outcome-ledger li { padding: 20px 0; border-top: 1px solid var(--stroke); font-size: 1.05rem; }

/* Fertility */
.fertility-clinic-note { margin-top: 52px; }
.fertility-medication-roster { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(40px, 8vw, 100px); }
.fertility-roster { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.fertility-roster li { padding: 20px 10px 20px 0; border-top: 1px solid var(--stroke); color: var(--accent-bright); font-weight: 720; }
.fertility-night-plan { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(280px, .82fr); align-items: center; gap: clamp(44px, 8vw, 100px); }
.fertility-night-plan__events { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 38px; }
.fertility-night-plan__events article { min-height: 180px; padding: 24px 26px 22px 0; border-top: 1px solid var(--stroke); }
.fertility-night-plan__events article:nth-child(2n) { padding-left: 26px; }
.alarm-frame { width: min(420px, 100%); padding: 9px; border: 1px solid var(--stroke-strong); border-radius: 30px; background: var(--glass-fill); }
.alarm-frame img { border-radius: 22px; }
.fertility-handoff { display: grid; grid-template-columns: minmax(240px, .66fr) minmax(0, 1.34fr); align-items: center; gap: clamp(50px, 10vw, 130px); }
.handoff-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 32px; margin: 34px 0 0; padding: 0; list-style: none; }
.handoff-list li { padding-top: 17px; border-top: 1px solid var(--stroke); }

/* Insulin */
.insulin-limit-panel { margin-top: 52px; }
.insulin-product-ledger { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(40px, 8vw, 100px); }
.insulin-ledger { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; padding: 0; border-top: 1px solid var(--stroke); list-style: none; }
.insulin-ledger li { padding: 18px 10px 18px 0; border-bottom: 1px solid var(--stroke); color: var(--accent-bright); font-weight: 720; }
.insulin-dayline { display: grid; grid-template-columns: minmax(250px, .7fr) minmax(0, 1.3fr); align-items: center; gap: clamp(46px, 9vw, 118px); }
.insulin-dose-windows { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 40px; }
.insulin-dose-windows article { min-height: 190px; padding: 22px 28px 22px 0; border-top: 1px solid var(--stroke); }
.insulin-dose-windows article:nth-child(2n) { padding-left: 28px; }
.insulin-rotation-stage { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); align-items: start; gap: clamp(42px, 8vw, 100px); }
.insulin-history-column > ul { margin: 30px 0 42px; padding-left: 20px; color: var(--muted); }
.insulin-history-column > ul li { margin-bottom: 11px; }

/* Comparison directory */
.compare-recommendation { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: clamp(38px, 8vw, 98px); padding-bottom: 42px; }
.compare-recommendation h2 { max-width: 690px; }
.compare-recommendation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 24px; margin: 0; padding: 0; color: var(--muted); list-style: none; }
.compare-recommendation li { position: relative; padding: 18px 18px 18px 42px; border: 1px solid var(--stroke); border-radius: var(--radius-inset); background: var(--glass-fill); }
.compare-recommendation li::before { position: absolute; top: 26px; left: 19px; width: 10px; height: 2px; border-radius: 999px; background: var(--accent); content: ""; }
.compare-index-page .compare-scope-map { padding-top: 42px; }
.compare-scope-map { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(34px, 7vw, 82px); }
.compare-cluster h2 { max-width: 440px; font-size: clamp(1.85rem, 3vw, 2.6rem); }
.compare-cluster > div { border-top: 1px solid var(--stroke); }
.compare-cluster--general { padding-top: 88px; }
.compare-route-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 20px; padding-block: 25px; border-bottom: 1px solid var(--stroke); text-decoration: none; }
.compare-route-row strong, .compare-route-row small { display: block; }
.compare-route-row strong { margin-bottom: 7px; font-family: var(--display-font); font-size: 1.08rem; }
.compare-route-row small { max-width: 54ch; color: var(--muted); line-height: 1.55; }
.compare-route-row b { color: var(--faint); font-size: .78rem; transition: color 180ms ease, transform 180ms ease; }
.compare-route-row:hover strong, .compare-route-row:hover b { color: var(--accent); }
.compare-route-row:hover b { transform: translateX(3px); }

/* Shared comparison pieces */
.comparison-page .section-block ul { color: var(--muted); }
.comparison-page .section-block li { margin-bottom: 10px; }
.source-section { margin-block: 20px 90px; padding-top: 22px; border-top: 1px solid var(--stroke); color: var(--faint); font-size: .82rem; }
.source-section p { max-width: 800px; }
.source-note a { color: var(--accent); }
.source-note a:hover { color: var(--accent-bright); }
.choice-label { margin: 0 0 9px; color: var(--accent); font-size: .72rem; font-weight: 780; letter-spacing: .095em; text-transform: uppercase; }
.preferred-choice { padding: 26px; border: 1px solid rgb(100 210 255 / .24); border-radius: var(--radius-inset); background: rgb(100 210 255 / .065); box-shadow: inset 0 1px 0 rgb(255 255 255 / .06); }
.alternative-choice { align-self: start; padding-block: 25px; border-top: 1px solid var(--stroke); }
.alternative-choice h3 { color: var(--text) !important; }
.mit-apple-fit, .medisafe-choice, .guava-scope-decision, .calendar-platform-choice, .injectly-export-strip, .shotsy-scope-decision { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 6vw, 72px); }
.mit-apple-fit h3, .medisafe-choice h3, .guava-scope-decision h3, .calendar-platform-choice h3, .injectly-export-strip h3, .shotsy-scope-decision h3 { margin-bottom: 12px; color: var(--accent-bright); }

/* Medication & Injection Tracker */
.mit-scope-nest { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); align-items: center; gap: 0; }
.mit-broader-shell { min-height: 500px; padding: clamp(42px, 6vw, 72px); border: 1px solid var(--stroke); border-radius: var(--radius-card); background: var(--glass-fill); }
.mit-focused-core { position: relative; z-index: 1; margin-right: -42px; padding: clamp(36px, 5vw, 58px); border: 1px solid rgb(100 210 255 / .24); border-radius: var(--radius-card); background: #0b1115; box-shadow: inset 0 1px 0 rgb(255 255 255 / .06); }
.mit-fact-rails { display: grid; }
.mit-fact-rails article { display: grid; grid-template-columns: minmax(170px, .36fr) minmax(0, 1fr); gap: 42px; padding: 27px 0; border-bottom: 1px solid var(--stroke); }
.mit-fact-rails article:first-child { border-top: 1px solid var(--stroke); }
.mit-fact-rails h3 { margin: 0; }
.mit-fact-rails dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; margin: 0; }
.mit-fact-rails dt { margin-bottom: 7px; font-size: .8rem; font-weight: 760; }
.mit-fact-rails dd { margin: 0; color: var(--muted); }

/* Medisafe */
.medisafe-spectrum__endpoints { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(46px, 10vw, 130px); padding-top: 32px; }
.medisafe-spectrum__endpoints::before { position: absolute; top: 0; right: 0; left: 0; height: 1px; background: linear-gradient(90deg, var(--accent), var(--stroke-strong)); content: ""; }
.medisafe-spectrum__endpoints article:last-child { padding-top: 68px; }
.medisafe-bands article { display: grid; grid-template-columns: minmax(160px, .34fr) repeat(2, minmax(0, 1fr)); gap: 34px; padding: 27px 0; border-bottom: 1px solid var(--stroke); }
.medisafe-bands article:first-child { border-top: 1px solid var(--stroke); }
.medisafe-bands h3 { margin: 0; }
.medisafe-bands dl { display: contents; }
.medisafe-bands dl > div { min-width: 0; }
.medisafe-bands dt { margin-bottom: 7px; font-size: .78rem; font-weight: 760; }
.medisafe-bands dd { margin: 0; color: var(--muted); }

/* Guava */
.guava-context-field { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); align-items: center; gap: 0; }
.guava-narrow-core { position: relative; z-index: 1; display: grid; justify-items: start; gap: 24px; margin-right: -28px; padding: clamp(34px, 5vw, 54px); border: 1px solid rgb(100 210 255 / .2); border-radius: var(--radius-card); background: #0b1115; }
.guava-wide-context { min-height: 580px; padding: clamp(54px, 8vw, 94px) clamp(38px, 6vw, 72px) clamp(54px, 8vw, 94px) clamp(64px, 8vw, 100px); border: 1px solid var(--stroke); border-radius: var(--radius-card); background: var(--glass-fill); }
.guava-data-streams { display: grid; gap: 18px; }
.guava-data-streams article { display: grid; max-width: 900px; grid-template-columns: minmax(150px, .3fr) minmax(0, 1fr); gap: 36px; padding: 26px 30px; border: 1px solid var(--stroke); border-radius: var(--radius-inset); background: rgb(3 5 7 / .32); }
.guava-data-streams article:nth-child(even) { margin-left: auto; }
.guava-data-streams h3 { margin: 0; }
.guava-data-streams dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; margin: 0; }
.guava-data-streams dt { margin-bottom: 7px; font-size: .78rem; font-weight: 760; }
.guava-data-streams dd { margin: 0; color: var(--muted); }

/* Google Calendar */
.calendar-event-flow { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(42px, 9vw, 118px); }
.calendar-event-flow__sequence { display: grid; align-content: start; }
.calendar-event-flow__sequence article { position: relative; padding: 26px 0 26px 46px; border-top: 1px solid var(--stroke); }
.calendar-event-flow__sequence article::before { position: absolute; top: 32px; left: 3px; width: 20px; height: 2px; background: var(--accent); content: ""; }
.calendar-injection-gap { display: grid; grid-template-columns: minmax(250px, .68fr) minmax(0, 1.32fr); align-items: center; gap: clamp(46px, 9vw, 118px); }
.calendar-fact-pairs { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 18px; }
.calendar-fact-pairs article { grid-column: span 5; padding: 30px; border: 1px solid var(--stroke); border-radius: var(--radius-inset); background: var(--glass-fill); }
.calendar-fact-pairs article:nth-child(2), .calendar-fact-pairs article:nth-child(4) { grid-column: 7 / span 6; }
.calendar-fact-pairs article:nth-child(3) { grid-column: 2 / span 5; }
.calendar-fact-pairs dl, .calendar-fact-pairs dd { margin: 0; }
.calendar-fact-pairs dl { display: grid; gap: 18px; }
.calendar-fact-pairs dt { margin-bottom: 5px; font-size: .78rem; font-weight: 760; }
.calendar-fact-pairs dd { color: var(--muted); }

/* Injectly */
.injectly-summary { padding-bottom: 48px; }
.injectly-protocol-lanes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(40px, 8vw, 100px); }
.injectly-lane { border-top: 2px solid var(--accent); }
.injectly-lane--preferred { padding: 0 24px 8px; border-radius: 0 0 var(--radius-inset) var(--radius-inset); background: linear-gradient(180deg, rgb(100 210 255 / .07), transparent 78%); }
.injectly-lane:last-child { border-top-color: var(--stroke-strong); }
.injectly-lane > .choice-label { padding-top: 25px; }
.injectly-lane > h2 { padding-top: 4px; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.injectly-lane article { padding: 22px 0; border-bottom: 1px solid var(--stroke); }
.injectly-lane article h3 { margin-bottom: 8px; }
.injectly-lane article p { margin-bottom: 0; }
.injectly-tool-break { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); align-items: center; gap: clamp(42px, 8vw, 104px); }
.tool-preview { width: min(440px, 100%); padding: 9px; border: 1px solid var(--stroke-strong); border-radius: 30px; background: var(--glass-fill); }
.tool-preview img { border-radius: 22px; }

/* Shotsy */
.shotsy-lens { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: clamp(42px, 8vw, 100px); }
.shotsy-lens__lead { align-self: center; }
.shotsy-journey-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 14px; }
.shotsy-journey-grid article { grid-column: span 5; min-height: 150px; padding: 24px; border: 1px solid var(--stroke); border-radius: var(--radius-inset); background: var(--glass-fill); }
.shotsy-journey-grid article.is-wide { grid-column: span 7; grid-row: span 2; min-height: 314px; background: linear-gradient(145deg, rgb(100 210 255 / .11), var(--glass-fill)); }
.shotsy-journey-grid article:nth-child(4) { grid-column: 8 / span 5; background: rgb(100 210 255 / .06); }
.shotsy-journey-grid p { margin-bottom: 0; color: var(--text); font-family: var(--display-font); font-size: 1.04rem; font-weight: 680; }
.shotsy-fact-pairs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.shotsy-fact-pairs article { padding: 28px; border: 1px solid var(--stroke); border-radius: var(--radius-inset); background: rgb(3 5 7 / .3); }
.shotsy-fact-pairs article:first-child { grid-column: span 2; display: grid; grid-template-columns: minmax(160px, .34fr) minmax(0, 1fr); gap: 34px; }
.shotsy-fact-pairs dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; margin: 0; }
.shotsy-fact-pairs dt { margin-bottom: 7px; font-size: .78rem; font-weight: 760; }
.shotsy-fact-pairs dd { margin: 0; color: var(--muted); }
.shotsy-routine-breadth { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(300px, .82fr); align-items: center; gap: clamp(42px, 8vw, 100px); }

.seo-footer { padding-block: 42px 36px; border-top: 1px solid var(--stroke); background: var(--canvas-deep); }
.footer-directory { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin-bottom: 38px; }
.footer-link-group { display: grid; align-content: start; gap: 11px; color: var(--muted); font-size: .9rem; }
.footer-link-group strong { margin-bottom: 4px; color: var(--text); font-family: var(--display-font); font-size: .82rem; }
.footer-link-group a { width: fit-content; text-decoration: none; transition: color 180ms ease; }
.footer-link-group a:hover { color: var(--accent); }
.disclaimers { color: var(--faint); font-size: .76rem; }
.disclaimers p { max-width: 900px; }

@media (prefers-reduced-motion: no-preference) {
  .page-hero__copy { animation: hero-copy-in 720ms var(--brand-ease) both; }
  .page-hero__media { animation: hero-media-in 820ms 80ms var(--brand-ease) both; }
  .media-frame img { transition: transform 520ms var(--brand-ease); }
  .page-hero__media:hover .media-frame > img { transform: scale(1.012); }
  @keyframes hero-copy-in { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
  @keyframes hero-media-in { from { opacity: 0; transform: translateY(26px) scale(.975); } to { opacity: 1; transform: translateY(0) scale(1); } }
}

@media (max-width: 1020px) {
  .seo-nav-links a:first-child, .seo-nav-links a:last-child { display: none; }
  .page-hero--landscape { grid-template-columns: minmax(0, .9fr) minmax(340px, 1.1fr); }
  .footer-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .guide-tile--glp, .guide-tile--biologic, .guide-tile--fertility, .guide-tile--insulin { grid-column: span 6; grid-template-columns: minmax(0, 1fr); }
  .guide-tile--glp .guide-tile__media, .guide-tile--insulin .guide-tile__media { order: 0; border-right: 0; border-bottom: 1px solid var(--stroke); border-left: 0; }
  .mit-apple-fit, .medisafe-choice, .guava-scope-decision, .calendar-platform-choice, .injectly-export-strip, .shotsy-scope-decision { grid-template-columns: minmax(0, .8fr) repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .seo-shell { width: min(var(--shell), calc(100% - 32px)); }
  .seo-nav-row { grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; }
  .seo-nav-links { display: none; }
  .seo-mobile-menu, .seo-mobile-menu summary { display: flex; }
  .page-hero, .page-hero--media-left, .page-hero--landscape { min-height: auto; grid-template-columns: minmax(0, 1fr); gap: 38px; padding-block: 52px 74px; }
  .page-hero--media-left .page-hero__media { order: 0; }
  .page-hero__media { justify-self: center; width: 100%; }
  .phone-frame { width: min(280px, 64vw); }
  .page-hero--landscape .page-hero__media { width: 100%; }
  .closing-panel__inner, .glp-product-band, .glp-supply-window, .biologic-medication-ledger, .biologic-cadence, .biologic-outcome-ledger, .fertility-medication-roster, .fertility-night-plan, .fertility-handoff, .insulin-product-ledger, .insulin-dayline, .insulin-rotation-stage, .compare-recommendation, .compare-scope-map, .mit-scope-nest, .medisafe-spectrum__endpoints, .guava-context-field, .calendar-event-flow, .calendar-injection-gap, .injectly-protocol-lanes, .injectly-tool-break, .shotsy-lens, .shotsy-routine-breadth, .mit-apple-fit, .medisafe-choice, .guava-scope-decision, .calendar-platform-choice, .injectly-export-strip, .shotsy-scope-decision { grid-template-columns: minmax(0, 1fr); }
  .compare-recommendation ul { grid-template-columns: minmax(0, 1fr); }
  .guide-mosaic { grid-template-columns: minmax(0, 1fr); }
  .guide-tile--glp, .guide-tile--biologic, .guide-tile--fertility, .guide-tile--insulin { grid-column: auto; }
  .glp-weekline__events, .calendar-fact-pairs, .shotsy-journey-grid { grid-template-columns: minmax(0, 1fr); }
  .glp-weekline__events article, .glp-weekline__events article:nth-child(2), .glp-weekline__events article:nth-child(3), .glp-weekline__events article:nth-child(4), .calendar-fact-pairs article, .calendar-fact-pairs article:nth-child(2), .calendar-fact-pairs article:nth-child(3), .calendar-fact-pairs article:nth-child(4), .shotsy-journey-grid article, .shotsy-journey-grid article.is-wide, .shotsy-journey-grid article:nth-child(4) { grid-column: auto; grid-row: auto; }
  .fertility-roster, .insulin-ledger { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fertility-night-plan__events, .handoff-list, .insulin-dose-windows, .shotsy-fact-pairs { grid-template-columns: minmax(0, 1fr); }
  .fertility-night-plan__events article:nth-child(2n), .insulin-dose-windows article:nth-child(2n) { padding-left: 0; }
  .timer-frame { position: relative; top: auto; justify-self: center; }
  .compare-cluster--general { padding-top: 26px; }
  .mit-focused-core, .guava-narrow-core { margin-right: 0; margin-bottom: -20px; }
  .mit-broader-shell, .guava-wide-context { min-height: 0; padding-top: 52px; }
  .mit-fact-rails article, .medisafe-bands article, .guava-data-streams article, .shotsy-fact-pairs article:first-child { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .mit-fact-rails dl, .guava-data-streams dl, .shotsy-fact-pairs dl { grid-template-columns: minmax(0, 1fr); }
  .medisafe-bands article { display: grid; }
  .medisafe-bands dl { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .medisafe-spectrum__endpoints article:last-child { padding-top: 0; }
  .guava-data-streams article:nth-child(even) { margin-left: 0; }
  .shotsy-fact-pairs article:first-child { grid-column: auto; }
  .footer-directory { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 520px) {
  .seo-header { min-height: 64px; }
  .seo-nav-row { min-height: 63px; gap: 12px; }
  .seo-mobile-menu__panel { top: 64px; }
  .seo-brand span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .header-cta { min-height: 42px; padding-inline: 14px; font-size: .8rem; }
  h1 { font-size: clamp(2.35rem, 12vw, 3.25rem); }
  .page-medication-injection-tracker h1 { font-size: clamp(2.15rem, 10.5vw, 2.85rem); }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .glp-product-ribbon, .medication-ledger { grid-template-columns: minmax(0, 1fr); }
  .guide-tile { min-height: 0; }
  .guide-tile > div { padding: 24px; }
  .section-block { padding-block: 72px; }
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .seo-header { background: var(--canvas); }
}

@media (prefers-reduced-transparency: reduce) {
  .seo-header { background: var(--canvas); backdrop-filter: none; -webkit-backdrop-filter: none; }
}

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