/* GLP1OneRx site shell — header, mobile nav, legacy components (November 2026) */
:root{
  
  --paper: #fbf6ec;             
  --paper-pure: #ffffff;        
  --surface: #f5ecd9;           
  --surface-warm: #efe2c4;      
  --surface-cool: #f8f2e3;      

  --ink: #1c2640;               
  --ink-deep: #0e1528;          
  --ink-soft: #2d3a5a;          

  --accent: #c9621f;            
  --accent-deep: #a44e16;       
  --accent-soft: #fbe3d2;       

  --gold: #b7892b;              
  --gold-soft: #f4e6c4;

  --verified: #2f7a4f;          
  --link: #1c2640;
  --link-hover: #c9621f;

  --text: #1c2640;
  --text-secondary: #4a556b;
  --text-muted: #7d8696;

  --border: #e5d9bf;            
  --border-strong: #1c2640;
  --border-soft: #efe2c4;

  
  --brand: #1c2640;
  --primary: #1c2640;
  --primary-hover: #0e1528;
  --primary-bright: #2d3a5a;
  --primary-soft: #efe2c4;
  --accent-bright: #c9621f;
  --butter: #b7892b;
  --butter-deep: #936c1f;
  --paper-warm: #f5ecd9;
  --mist: #f8f2e3;
  --mist-deep: #efe2c4;
  --text-on-primary: #fbf6ec;

  --shadow-sm: 0 1px 2px rgba(28,38,64,0.06);
  --shadow-md: 0 4px 14px rgba(28,38,64,0.08);
  --shadow-lg: 0 14px 40px rgba(28,38,64,0.12);
  --shadow-glow: 0 6px 20px rgba(201,98,31,0.22);

  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-pill: 999px;

  --container: 1240px;
  --container-narrow: 760px;

  
  --font-display: 'Fraunces', 'Source Serif 4', Georgia, 'Times New Roman', serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}
header.topbar.gxh{
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 36px;
  background: rgba(251, 246, 236, 0.92);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
  flex-wrap: wrap;
  gap: 16px;
}
header.gxh .topbar-logo{
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--ink);
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
header.gxh .topbar-logo::before{
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: inset 0 0 0 3px var(--paper);
}
header.gxh .topbar-logo strong{ font-weight: 700; color: var(--ink); font-style: normal; }
header.gxh .topbar-logo:hover{ color: var(--accent); }
header.gxh .topbar-nav{
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  align-items: center;
}
header.gxh .topbar-nav a{
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  color: var(--ink);
  text-decoration: none !important;
  padding: 9px 14px;
  border-radius: var(--radius-sm);
  transition: color 0.15s, background 0.15s;
}
header.gxh .topbar-nav a:hover{ color: var(--accent); background: rgba(201,98,31,0.06); }
header.gxh .topbar-cta{
  display: inline-block;
  padding: 11px 22px;
  background: var(--accent);
  color: var(--paper) !important;
  border-radius: var(--radius-pill);
  font-weight: 700;
  font-size: 14px;
  text-decoration: none !important;
  transition: background 0.15s, transform 0.15s;
  box-shadow: var(--shadow-sm);
}
header.gxh .topbar-cta:hover{ background: var(--accent-deep); transform: translateY(-1px); }
@media (max-width: 900px){header.topbar.gxh{ padding: 14px 20px; }}
header.gxh{
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  background: rgba(251, 246, 236, 0.92) !important;
  backdrop-filter: saturate(180%) blur(14px) !important;
  -webkit-backdrop-filter: saturate(180%) blur(14px) !important;
  border-bottom: 1px solid rgba(229, 217, 191, 0.6) !important;
  box-shadow: 0 2px 16px rgba(28, 38, 64, 0.04);
}
@media (max-width: 880px){header.gxh .topbar-nav{ display: none !important; }
header.gxh .topbar-cta{ display: none !important; }
header.topbar.gxh nav.topbar-nav,header.gxh .topbar-inner nav,header.gxh nav.topbar-nav{ display: none !important; }
header.topbar.gxh{ padding: 12px 16px !important; }
header.gxh .topbar-inner{ padding: 0 16px !important; }}
.gpx-hamb{ display: none; background: var(--paper-pure, #fff); border: 1px solid var(--border, #e5d9bf); cursor: pointer; padding: 0; width: 44px; height: 44px; border-radius: 10px; align-items: center; justify-content: center; transition: background 0.15s, border-color 0.15s; flex-shrink: 0; }
.gpx-hamb:hover{ background: var(--paper-warm, #f5ecd9); border-color: var(--accent, #c9621f); }
.gpx-hamb:active{ transform: scale(0.96); }
.gpx-hamb svg{ width: 22px; height: 22px; stroke: var(--ink, #1c2640); }
.gpx-mnav{ position: fixed; top: 0; right: 0; width: 88%; max-width: 360px; height: 100vh; height: 100dvh; background: var(--paper, #fbf6ec); z-index: 100001; transform: translateX(102%); transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: -8px 0 32px rgba(0,0,0,0.22); display: flex; flex-direction: column; overflow: hidden; }
.gpx-mnav.open{ transform: translateX(0); }
.gpx-mnav-bd{ position: fixed; inset: 0; background: rgba(15, 20, 32, 0.55); z-index: 100000; opacity: 0; pointer-events: none; transition: opacity 0.32s ease; backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.gpx-mnav-bd.open{ opacity: 1; pointer-events: auto; }
.gpx-mnav-head{ padding: 18px 22px; border-bottom: 1px solid var(--border, #e5d9bf); display: flex; justify-content: space-between; align-items: center; background: linear-gradient(135deg, var(--paper-warm, #f5ecd9) 0%, var(--mist, #f8f2e3) 100%); flex-shrink: 0; }
.gpx-mnav-logo{ font-family: 'Fraunces', Georgia, serif; font-size: 1.32rem; color: var(--ink, #1c2640); text-decoration: none; font-weight: 700; letter-spacing: -0.01em; }
.gpx-mnav-logo strong{ font-weight: 600; color: var(--accent, #c9621f); }
.gpx-mnav-close{ background: var(--paper-pure, #fff); border: 1px solid var(--border, #e5d9bf); font-size: 1.4rem; cursor: pointer; color: var(--ink, #1c2640); width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; line-height: 1; padding: 0; }
.gpx-mnav-close:hover{ background: var(--accent-soft, #fbe3d2); color: var(--accent, #c9621f); }
.gpx-mnav-body{ flex: 1; overflow-y: auto; -webkit-overflow-scrolling: touch; padding-bottom: 8px; }
.gpx-mnav-sec{ padding: 18px 22px 6px; font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--accent-deep, #a44e16); border-bottom: 1px solid var(--border, #e5d9bf); background: var(--mist, #f8f2e3); margin: 0; }
.gpx-mnav-link{ display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 22px; color: var(--ink, #1c2640); text-decoration: none; font-size: 1rem; font-weight: 500; border-bottom: 1px solid var(--border, #e5d9bf); position: relative; transition: background 0.12s, padding-left 0.18s; }
.gpx-mnav-link:active, .gpx-mnav-link:hover{ background: var(--accent-soft, #fbe3d2); padding-left: 28px; color: var(--accent-deep, #a44e16); }
.gpx-mnav-link .gpx-mnav-label{ flex: 1; line-height: 1.3; }
.gpx-mnav-link .gpx-mnav-sub{ display: block; font-size: 0.78rem; color: var(--ink-soft, #2d3a5a); font-weight: 400; margin-top: 2px; }
.gpx-mnav-link .gpx-mnav-chev{ color: var(--accent, #c9621f); font-size: 1.3rem; opacity: 0.55; flex-shrink: 0; }
.gpx-mnav-link:hover .gpx-mnav-chev{ opacity: 1; }
.gpx-mnav-pricing{ margin: 12px 22px; padding: 14px 16px; background: linear-gradient(135deg, var(--accent, #c9621f) 0%, var(--accent-deep, #a44e16) 100%); border-radius: 14px; color: #fff; }
.gpx-mnav-pricing-eyebrow{ font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; opacity: 0.85; margin-bottom: 4px; }
.gpx-mnav-pricing h4{ font-family: 'Fraunces', Georgia, serif; font-size: 1.04rem; margin: 0 0 6px; font-weight: 600; }
.gpx-mnav-pricing p{ font-size: 0.82rem; line-height: 1.45; margin: 0 0 10px; opacity: 0.95; }
.gpx-mnav-pricing a{ display: block; background: #fff; color: var(--accent, #c9621f) !important; text-decoration: none; text-align: center; padding: 10px; border-radius: 8px; font-weight: 700; font-size: 0.88rem; }
.gpx-mnav-foot{ padding: 14px 22px; border-top: 1px solid var(--border, #e5d9bf); background: var(--paper-warm, #f5ecd9); flex-shrink: 0; }
.gpx-mnav-foot a{ display: inline-block; color: var(--ink-soft, #2d3a5a); text-decoration: none; font-size: 0.82rem; margin-right: 14px; margin-bottom: 4px; }
.gpx-mnav-foot a:hover{ color: var(--accent, #c9621f); }
@media (max-width: 880px){.gpx-hamb{ display: flex !important; }}
@media (min-width: 881px){.gpx-hamb{ display: none !important; }}
body.gpx-mnav-open{ overflow: hidden !important; }

/* legacy components that had no styles */
.compare-header{max-width:1040px;margin:8px auto 28px;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch}
.compare-col{background:#fff;border:1px solid var(--border,#e5d9bf);border-radius:16px;padding:18px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}
.compare-col h3{margin:4px 0 0;font-family:var(--font-display);font-size:1.25rem}
.compare-logo{width:auto;max-width:150px;max-height:44px;height:auto;display:block}
.compare-vial{display:none}
.compare-meta{font-size:.84rem;color:var(--text-secondary,#4a556b);line-height:1.5}
.compare-pick-badge{display:inline-block;background:var(--accent,#c9621f);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 10px}
.compare-divider{display:flex;align-items:center}.compare-divider span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ink,#1c2640);color:#fff;font-weight:700;font-size:.85rem}
@media(max-width:640px){.compare-header{grid-template-columns:1fr 1fr;gap:10px;padding:0 16px}.compare-divider{display:none}.compare-col{padding:14px 10px}}
.provider-id-card{max-width:1040px;margin:4px auto 24px;padding:0 24px}
.provider-id-grid{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid var(--border,#e5d9bf);border-radius:16px;padding:16px 20px}
.provider-id-logo-wrap{display:flex;align-items:center;gap:18px;min-width:0}
.provider-id-logo{width:auto;max-width:140px;max-height:44px;height:auto;display:block}
.provider-id-tag{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-deep,#a44e16)}
.provider-id-name{margin:2px 0;font-family:var(--font-display);font-size:1.3rem}
.provider-id-drugs{font-size:.88rem;color:var(--text-secondary,#4a556b)}
.provider-id-vial-wrap{display:none}
.provider-id-vial-wrap.is-nexlife{display:block}.provider-id-vial-wrap.is-nexlife img{max-height:110px;width:auto}
@media(max-width:640px){.provider-id-card{padding:0 16px}.provider-id-logo-wrap{flex-direction:column;align-items:flex-start;gap:8px}}
.dir-card-logo-img{max-width:120px;max-height:36px;width:auto;height:auto}.dir-card-vial-thumb{display:none}
.references{border-top:1px solid var(--border,#e5d9bf);margin-top:32px;padding-top:16px;font-size:.9rem}
.references ol{padding-left:1.2rem}.references li{margin:0 0 10px;line-height:1.5}
.ref-authors{color:var(--text-secondary,#4a556b)}.ref-title{font-weight:600}.ref-journal{font-style:italic;color:var(--text-muted,#7d8696)}
.toc{background:var(--paper-warm,#f5ecd9);border:1px solid var(--border,#e5d9bf);border-radius:12px;padding:14px 18px;margin:18px 0;font-size:.92rem}
.toc ol,.toc ul{margin:6px 0 0;padding-left:1.2rem}.toc li{margin:3px 0}
.page-dates{font-size:.82rem;color:var(--text-muted,#7d8696)}
.gx-chart-data summary{cursor:pointer;font-size:.85rem;margin-top:8px}
.gx-pick>div{flex:1 1 auto!important;min-width:min(100%,320px)}
@media(max-width:640px){.gx-pick{flex-direction:column!important;align-items:stretch!important}.gx-pick>div{flex:0 0 auto!important;min-width:0}.gx-pick .gx-btn{text-align:center}}
