
:root{
  --bg:#05070b;
  --panel:#0a0f16;
  --panel2:#0d131c;
  --text:#f6f8fb;
  --muted:#9aa8b8;
  --blue:#00a8ff;
  --blue2:#1d5cff;
  --pink:#ff2da6;
  --line:rgba(255,255,255,.10);
  --shadow:0 0 35px rgba(0,168,255,.14);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  overflow-x:hidden;
}

a{color:inherit;text-decoration:none}
button{font:inherit}

.bg-grid{
  position:fixed;inset:0;pointer-events:none;z-index:-3;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,black 0%,transparent 85%);
}

.glow{position:fixed;border-radius:50%;filter:blur(100px);z-index:-2;opacity:.32;pointer-events:none}
.glow-blue{width:420px;height:420px;background:var(--blue2);top:80px;left:-160px}
.glow-pink{width:340px;height:340px;background:var(--pink);right:-180px;top:520px;opacity:.17}

.site-header{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  max-width:1180px;margin:auto;padding:18px 24px;
  backdrop-filter:blur(18px);
  background:rgba(5,7,11,.72);
  border-bottom:1px solid rgba(255,255,255,.06);
}

.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.08em}
.brand-mark{
  width:36px;height:36px;border:1px solid rgba(0,168,255,.55);
  display:grid;place-items:center;border-radius:9px;
  box-shadow:0 0 22px rgba(0,168,255,.18), inset 0 0 18px rgba(0,168,255,.05);
}
.brand-text{font-size:.9rem}.brand-text b{color:var(--blue);font-weight:800}

.nav{display:flex;gap:22px;align-items:center}
.nav a{font-size:.87rem;color:#cbd5e1;transition:.2s}
.nav a:hover{color:white;text-shadow:0 0 14px rgba(0,168,255,.8)}

.menu-toggle{
  display:none;background:transparent;color:white;border:1px solid var(--line);
  border-radius:8px;padding:7px 10px;
}

main{max-width:1180px;margin:auto;padding:0 24px}

.hero{
  min-height:78vh;display:flex;flex-direction:column;justify-content:center;
  padding:90px 0 70px;position:relative;
}
.eyebrow,.kicker{
  color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;
}
.hero h1{
  margin:14px 0 18px;font-size:clamp(4rem,11vw,8.6rem);line-height:.82;
  letter-spacing:-.055em;font-weight:900;
}
.hero h1 span{
  color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.88);
  text-shadow:0 0 30px rgba(0,168,255,.12);
}
.hero-copy{max-width:690px;color:#b4c0cd;font-size:clamp(1rem,2vw,1.2rem)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 20px;border-radius:10px;font-weight:800;
  text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;transition:.2s;
}
.btn-primary{
  background:linear-gradient(135deg,var(--blue2),var(--blue));
  box-shadow:0 0 26px rgba(0,168,255,.25);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 34px rgba(0,168,255,.42)}
.btn-ghost{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.02)}
.btn-ghost:hover{border-color:rgba(255,45,166,.6);box-shadow:0 0 24px rgba(255,45,166,.16)}

.hero-line{
  width:min(560px,75vw);height:1px;margin-top:54px;
  background:linear-gradient(90deg,var(--pink),var(--blue),transparent);
  box-shadow:0 0 14px rgba(255,45,166,.5);
}
.microcopy{font-size:.7rem;letter-spacing:.22em;color:#667384;margin-top:12px}

.section{padding:80px 0;border-top:1px solid rgba(255,255,255,.07)}
.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}
h2{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:10px 0 0;letter-spacing:-.035em}
.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.card{
  min-height:290px;padding:24px;border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));
  border-radius:14px;display:flex;flex-direction:column;transition:.25s;
}
.card:hover{
  transform:translateY(-5px);
  border-color:rgba(0,168,255,.42);
  box-shadow:var(--shadow);
}
.card:nth-child(even):hover{border-color:rgba(255,45,166,.36);box-shadow:0 0 34px rgba(255,45,166,.09)}
.card-icon{font-size:1.5rem;margin-bottom:28px}
.card h3{font-size:1.35rem;margin:0 0 10px}
.card p{color:var(--muted);font-size:.95rem}
.card a{margin-top:auto;color:#dfe8f2;font-weight:700;font-size:.9rem}

.split{
  display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start;
}
.split-copy{color:#bac4cf;font-size:1.05rem}
.statement{
  color:white;border-left:2px solid var(--pink);padding-left:20px;margin-top:28px;
  font-weight:800;font-size:1.15rem;line-height:1.8;
}

.mission-panel{
  display:grid;grid-template-columns:1.1fr .9fr;gap:70px;
  padding:60px;border:1px solid rgba(0,168,255,.18);
  border-radius:18px;background:linear-gradient(135deg,rgba(0,168,255,.06),rgba(255,45,166,.025));
  box-shadow:inset 0 0 45px rgba(0,168,255,.025);
}
.mission-copy{color:#bac4cf}
.text-link{display:inline-block;margin-top:18px;color:var(--blue);font-weight:800}

.community{text-align:center;padding-bottom:100px}
.community h2{max-width:800px;margin:12px auto}
.community>p{max-width:680px;margin:18px auto;color:var(--muted)}
.community-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}
.small-note{font-size:.8rem!important;color:#657181!important}

footer{
  max-width:1180px;margin:auto;padding:36px 24px 55px;
  border-top:1px solid rgba(255,255,255,.07);
  color:#738091;font-size:.78rem;
}
.footer-brand{margin-bottom:18px}
.copyright{margin-top:18px}

@media (max-width:900px){
  .menu-toggle{display:block}
  .nav{
    display:none;position:absolute;top:72px;left:18px;right:18px;
    flex-direction:column;align-items:stretch;padding:16px;
    background:#080c12;border:1px solid var(--line);border-radius:12px;
  }
  .nav.open{display:flex}
  .nav a{padding:10px 4px}
  .card-grid{grid-template-columns:repeat(2,1fr)}
  .split,.mission-panel{grid-template-columns:1fr;gap:30px}
  .mission-panel{padding:34px}
}
@media (max-width:560px){
  main{padding:0 18px}
  .site-header{padding:15px 18px}
  .brand-text{font-size:.78rem}
  .hero{min-height:74vh;padding-top:72px}
  .hero h1{font-size:clamp(3.6rem,20vw,5.8rem)}
  .card-grid{grid-template-columns:1fr}
  .card{min-height:230px}
  .section{padding:62px 0}
  .mission-panel{padding:26px}
  .btn{width:100%}
  .hero-actions,.community-buttons{width:100%}
}


/* V2 tweak: branding without SCIENCE */
.hero h1{
  max-width: 720px;
}


/* ---------- V6: CUENTAS + ACCESO 21+ ---------- */
.account-link{
  border:1px solid rgba(0,168,255,.35);
  background:rgba(0,168,255,.06);
  color:#e9f5ff;
  border-radius:9px;
  padding:8px 12px;
  cursor:pointer;
  font-weight:800;
  font-size:.82rem;
  letter-spacing:.04em;
  transition:.2s;
}
.account-link:hover{
  border-color:rgba(255,45,166,.55);
  box-shadow:0 0 20px rgba(255,45,166,.10);
}
.auth-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(2,4,8,.78);
  backdrop-filter:blur(14px);
}
.auth-overlay.open{display:flex}
.auth-modal{
  width:min(560px,100%);
  position:relative;
  border:1px solid rgba(0,168,255,.28);
  border-radius:18px;
  padding:32px;
  background:
    radial-gradient(circle at 10% 0%, rgba(0,168,255,.12), transparent 36%),
    radial-gradient(circle at 100% 100%, rgba(255,45,166,.08), transparent 35%),
    #080c12;
  box-shadow:0 25px 100px rgba(0,0,0,.55),0 0 55px rgba(0,168,255,.08);
}
.auth-close{
  position:absolute;
  right:16px;
  top:12px;
  background:transparent;
  color:#9aa8b8;
  border:0;
  font-size:2rem;
  cursor:pointer;
}
.auth-badge{
  display:inline-block;
  color:var(--blue);
  font-weight:900;
  font-size:.72rem;
  letter-spacing:.22em;
  margin-bottom:12px;
}
.auth-modal h2{
  margin:0 0 12px;
  font-size:clamp(2rem,6vw,3.3rem);
}
.auth-copy{
  color:#aeb9c7;
  margin:0 0 22px;
}
.age-panel{
  border:1px solid rgba(255,255,255,.09);
  border-radius:13px;
  padding:16px;
  background:rgba(255,255,255,.025);
  display:grid;
  gap:14px;
}
.check-row{
  display:flex;
  align-items:flex-start;
  gap:11px;
  color:#c9d2dd;
  font-size:.94rem;
  cursor:pointer;
}
.check-row input{
  margin-top:4px;
  width:18px;
  height:18px;
  accent-color:#0aa8ff;
  flex:0 0 auto;
}
.auth-main-btn{
  width:100%;
  margin-top:18px;
  border:0;
  cursor:pointer;
}
.auth-login-btn{
  width:100%;
  margin-top:12px;
  padding:14px 10px;
  border:1px solid rgba(255,255,255,.12);
  background:transparent;
  color:#d9e2ec;
  border-radius:10px;
  cursor:pointer;
}
.auth-login-btn:hover{border-color:rgba(255,45,166,.45)}
.auth-note{
  color:#667384;
  font-size:.74rem;
  margin:16px 0 0;
  line-height:1.5;
}
.site-toast{
  position:fixed;
  left:50%;
  bottom:24px;
  transform:translate(-50%,20px);
  z-index:10000;
  opacity:0;
  pointer-events:none;
  padding:12px 16px;
  border:1px solid rgba(0,168,255,.32);
  background:#09111a;
  color:#eef7ff;
  border-radius:10px;
  box-shadow:0 15px 45px rgba(0,0,0,.4);
  transition:.25s;
  font-size:.88rem;
  text-align:center;
}
.site-toast.show{
  opacity:1;
  transform:translate(-50%,0);
}

@media (max-width:900px){
  .account-link{width:100%;text-align:left;padding:10px 4px;background:transparent;border:0}
}
@media (max-width:560px){
  .auth-modal{padding:26px 20px}
}


.page-shell{max-width:1180px;margin:auto;padding:0 24px}
.inner-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 0;border-bottom:1px solid rgba(255,255,255,.07);
}
.back-link{color:#aeb9c7;font-size:.88rem}
.back-link:hover{color:white}
.page-hero{padding:72px 0 42px}
.page-hero h1{font-size:clamp(3.2rem,8vw,7rem);line-height:.9;letter-spacing:-.05em;margin:12px 0 18px}
.page-hero p{max-width:760px;color:#aeb9c7;font-size:1.05rem}
.search-wrap{margin:26px 0 14px}
.search-input{
  width:100%;padding:16px 18px;border-radius:12px;
  border:1px solid rgba(255,255,255,.12);background:#080d14;color:white;
  outline:none;font-size:1rem;
}
.search-input:focus{border-color:rgba(0,168,255,.55);box-shadow:0 0 24px rgba(0,168,255,.10)}
.filter-row{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0 30px}
.filter-chip{
  border:1px solid rgba(255,255,255,.10);background:transparent;color:#aeb9c7;
  padding:9px 12px;border-radius:999px;cursor:pointer;font-weight:700;font-size:.8rem
}
.filter-chip.active,.filter-chip:hover{color:white;border-color:rgba(0,168,255,.42);background:rgba(0,168,255,.06)}
.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:80px}
.library-card{
  min-height:240px;padding:24px;border-radius:15px;border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));
  display:flex;flex-direction:column;transition:.2s
}
.library-card:hover{transform:translateY(-4px);border-color:rgba(0,168,255,.42);box-shadow:0 0 35px rgba(0,168,255,.10)}
.library-card .symbol{font-size:1rem;font-weight:900;color:var(--blue);letter-spacing:.12em}
.library-card h3{font-size:1.45rem;margin:18px 0 8px}
.library-card p{color:#96a4b5;font-size:.93rem}
.library-card a,.library-card .coming{margin-top:auto;font-weight:800;font-size:.88rem}
.coming{color:#5f6b79}
.resource-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:38px;padding-bottom:90px}
.resource-main section{padding:34px 0;border-top:1px solid rgba(255,255,255,.08)}
.resource-main section:first-child{border-top:0;padding-top:0}
.resource-main h2{font-size:clamp(1.8rem,4vw,3rem);margin:0 0 16px}
.resource-main p,.resource-main li{color:#b1bdca}
.resource-main strong{color:white}
.info-box{
  border:1px solid rgba(0,168,255,.22);background:rgba(0,168,255,.045);
  border-radius:14px;padding:18px;margin:20px 0
}
.warning-box{
  border:1px solid rgba(255,45,166,.28);background:rgba(255,45,166,.045);
  border-radius:14px;padding:18px;margin:20px 0
}
.data-table{width:100%;border-collapse:collapse;margin:18px 0 8px;overflow:hidden;border-radius:12px}
.data-table th,.data-table td{border-bottom:1px solid rgba(255,255,255,.08);padding:13px 12px;text-align:left}
.data-table th{color:#e8f3ff;background:rgba(255,255,255,.035);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}
.data-table td{color:#aeb9c7}
.side-card{
  position:sticky;top:94px;border:1px solid rgba(255,255,255,.10);border-radius:15px;
  padding:20px;background:#080d14;height:max-content
}
.side-card h3{margin-top:0}
.side-card a{display:block;padding:9px 0;color:#aeb9c7;border-bottom:1px solid rgba(255,255,255,.06);font-size:.9rem}
.side-card a:hover{color:white}
.source-list{display:grid;gap:12px}
.source-list a{
  border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:13px 14px;
  color:#aeb9c7;word-break:break-word
}
.source-list a:hover{border-color:rgba(0,168,255,.35);color:white}
.calc-placeholder{
  min-height:50vh;display:grid;place-items:center;text-align:center;
  border:1px solid rgba(255,255,255,.10);border-radius:18px;
  background:linear-gradient(135deg,rgba(0,168,255,.05),rgba(255,45,166,.025));
  margin-bottom:80px;padding:40px
}
.calc-placeholder p{color:#aeb9c7;max-width:600px}
@media(max-width:900px){
  .library-grid{grid-template-columns:repeat(2,1fr)}
  .resource-layout{grid-template-columns:1fr}
  .side-card{position:relative;top:0}
}
@media(max-width:560px){
  .page-shell{padding:0 18px}
  .library-grid{grid-template-columns:1fr}
}


/* ---------- V9 CALCULADORA ---------- */
.calculator-shell{padding-bottom:90px}
.calc-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:20px}
.calc-tab{
  border:1px solid rgba(255,255,255,.11);background:transparent;color:#aeb9c7;
  padding:11px 14px;border-radius:10px;cursor:pointer;font-weight:800
}
.calc-tab.active,.calc-tab:hover{
  color:white;border-color:rgba(0,168,255,.5);background:rgba(0,168,255,.07);
  box-shadow:0 0 20px rgba(0,168,255,.08)
}
.calc-panel{display:none;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}
.calc-panel.active{display:grid}
.calc-form,.calc-result{
  border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015))
}
.calc-form{display:grid;gap:15px}
.calc-form label{display:grid;gap:7px;color:#b9c4d0;font-size:.9rem;font-weight:700}
.calc-form input{
  width:100%;padding:14px 15px;border-radius:10px;border:1px solid rgba(255,255,255,.12);
  background:#070b11;color:white;outline:none;font-size:1rem
}
.calc-form input:focus{border-color:rgba(0,168,255,.55);box-shadow:0 0 20px rgba(0,168,255,.08)}
.calc-action{border:0;cursor:pointer;margin-top:4px}
.calc-result{display:flex;flex-direction:column;justify-content:center;min-height:280px}
.calc-result h3{font-size:clamp(2rem,5vw,4rem);margin:10px 0 12px;line-height:1}
.calc-result p{color:#aeb9c7;margin:5px 0}
.calc-formula{margin-top:18px!important;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);font-size:.85rem!important;color:#718092!important}

/* ---------- V9 EDUCACION ---------- */
.edu-grid{display:grid;gap:12px;padding-bottom:70px}
.edu-card{
  border:1px solid rgba(255,255,255,.10);border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012));
  overflow:hidden
}
.edu-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:18px 20px;border:0;background:transparent;color:white;text-align:left;
  cursor:pointer;font-size:1rem;font-weight:800
}
.edu-toggle b{color:var(--blue);font-size:.75rem;letter-spacing:.14em;margin-right:10px}
.edu-toggle span:last-child{font-size:1.6rem;color:var(--pink);font-weight:400}
.edu-content{display:none;padding:0 20px 22px;border-top:1px solid rgba(255,255,255,.06)}
.edu-card.open .edu-content{display:block}
.edu-content p,.edu-content li{color:#b0bcc8}
.edu-content ol,.edu-content ul{padding-left:22px}
.formula-box{
  border-left:2px solid var(--blue);background:rgba(0,168,255,.045);
  padding:14px 16px;margin:15px 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#e9f7ff
}

@media(max-width:760px){
  .calc-panel.active{grid-template-columns:1fr}
  .calc-result{min-height:220px}
}


/* ---------- V13 BATCH 20 ---------- */
.variant-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}
.variant-tab{
  padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);
  background:transparent;color:#9facba;font-weight:800;cursor:pointer
}
.variant-tab.active,.variant-tab:hover{
  color:white;border-color:rgba(0,168,255,.52);background:rgba(0,168,255,.07);
  box-shadow:0 0 20px rgba(0,168,255,.08)
}
.variant-panel{display:none}
.variant-panel.active{display:block}
.protocol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}
.protocol-stat{
  padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.02)
}
.protocol-stat span{display:block;color:#68788b;font-size:.7rem;letter-spacing:.12em;margin-bottom:8px}
.protocol-stat strong{font-size:1rem}
.protocol-highlight{
  margin:18px 0;padding:22px;border-radius:14px;
  border:1px solid rgba(255,45,166,.22);
  background:linear-gradient(135deg,rgba(255,45,166,.055),rgba(0,168,255,.04))
}
.protocol-highlight h3{font-size:clamp(1.4rem,4vw,2.2rem);margin:8px 0;line-height:1.2}
@media(max-width:700px){.protocol-grid{grid-template-columns:1fr}}

.library-category-heading{
  grid-column:1/-1;
  padding:24px 2px 6px;
  border-top:1px solid rgba(255,255,255,.06);
  margin-top:8px;
}
.library-category-heading:first-child{border-top:0;margin-top:0}

/* V16 — primary-source ficha additions */
.source-stack{display:grid;gap:10px;margin-top:14px}
.source-link{
  display:block;padding:14px 16px;border:1px solid rgba(0,168,255,.2);
  background:rgba(0,168,255,.04);border-radius:12px;color:#dfefff;text-decoration:none
}
.source-link:hover{border-color:rgba(0,168,255,.55);background:rgba(0,168,255,.075)}
.muted{color:#7e8b99;font-size:.92rem}

/* V17 CORREGIDA — alphabetic library + split presentations */
.az-nav{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0 24px}
.az-nav a{
  min-width:30px;height:30px;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.1);border-radius:8px;
  color:#aab8c8;text-decoration:none;font-weight:800;font-size:.78rem
}
.az-nav a:hover{color:white;border-color:rgba(0,168,255,.55);background:rgba(0,168,255,.07)}
.letter-heading{
  grid-column:1/-1;display:flex;align-items:center;gap:12px;
  margin:24px 0 4px;border-top:1px solid rgba(255,255,255,.07);padding-top:18px
}
.letter-heading span{
  font-size:1.4rem;font-weight:900;letter-spacing:.08em;color:white;
  text-shadow:0 0 18px rgba(0,168,255,.25)
}
.split-dose-tabs{margin-top:18px}
.variant-panel{display:none}
.variant-panel.active{display:block}

/* V20 protocol tables */
.protocol-table-wrap{overflow-x:auto;margin:14px 0 22px;border:1px solid rgba(255,255,255,.08);border-radius:14px}
.protocol-table{width:100%;border-collapse:collapse;min-width:620px;background:rgba(255,255,255,.015)}
.protocol-table th,.protocol-table td{padding:13px 14px;text-align:left;border-bottom:1px solid rgba(255,255,255,.07)}
.protocol-table th{font-size:.72rem;letter-spacing:.08em;color:#7fa8c9;background:rgba(0,168,255,.04)}
.protocol-table td{color:#d8e2ec}
.protocol-table tr:last-child td{border-bottom:0}
.variant-panel{display:none}
.variant-panel.active{display:block}

/* V21 — guide-style protocol pages */
.guide-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}
.toc-card{
  position:sticky;top:18px;padding:20px;border:1px solid rgba(255,255,255,.09);
  border-radius:16px;background:rgba(8,12,18,.9);display:grid;gap:6px
}
.toc-card h3{margin:0 0 10px;font-size:1.2rem}
.toc-card a{
  padding:11px 12px;border-radius:10px;text-decoration:none;color:#aab8c8;
  border-left:2px solid transparent
}
.toc-card a:hover,.toc-card a.active{
  color:white;background:rgba(0,168,255,.08);border-left-color:#00a8ff
}
.guide-main{min-width:0}
.guide-banner{
  display:flex;gap:14px;align-items:center;padding:22px 24px;border-radius:15px;
  background:linear-gradient(135deg,rgba(0,168,255,.28),rgba(0,102,204,.2));
  border:1px solid rgba(0,168,255,.26);margin-bottom:20px
}
.guide-banner h2{margin:0;font-size:clamp(1.5rem,3vw,2rem)}
.guide-banner p{margin:5px 0 0;color:#b8cce0}
.guide-icon{font-size:1.5rem}
.guide-section{padding:26px 0;border-top:1px solid rgba(255,255,255,.07)}
.guide-section h2 span{font-size:.8em;color:#9fb1c4}
.protocol-table-blue thead th{background:rgba(0,124,255,.24);color:white}
.guide-callout{font-size:1rem;color:#c8d6e4;line-height:1.7}
.numbered-steps{display:grid;gap:14px;padding-left:24px;color:#dbe5ee}
.numbered-steps li{padding-left:6px;line-height:1.65}
@media(max-width:900px){
  .guide-layout{grid-template-columns:1fr}
  .toc-card{position:static}
}

/* V22 — SIMPLE GUIDE SYSTEM FOR ALL PRODUCT FICHAS */
.guide-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:30px;align-items:start}
.guide-main{min-width:0}
.toc-card{
 position:sticky;top:18px;padding:22px;border:1px solid rgba(255,255,255,.10);
 border-radius:17px;background:rgba(8,12,18,.94);display:grid;gap:5px
}
.toc-card h3{font-size:1.25rem;margin:0 0 12px;padding-bottom:12px;border-bottom:2px solid rgba(0,168,255,.55)}
.toc-card a{padding:10px 11px;border-radius:9px;color:#aebdcb;text-decoration:none;line-height:1.25}
.toc-card a:hover{background:rgba(0,168,255,.09);color:white}
.guide-banner{
 display:flex;gap:14px;align-items:center;padding:24px;border-radius:16px;margin:0 0 24px;
 background:linear-gradient(135deg,rgba(0,168,255,.30),rgba(19,104,196,.20));
 border:1px solid rgba(0,168,255,.28)
}
.guide-banner h2{margin:0;font-size:clamp(1.45rem,3vw,2rem)}
.guide-banner p{margin:5px 0 0;color:#c0d2e2}
.guide-icon{font-size:1.55rem}
.guide-section{padding:24px 0;border-top:1px solid rgba(255,255,255,.07)}
.protocol-table-blue thead th{background:rgba(0,120,240,.26);color:#fff}
.numbered-steps{display:grid;gap:13px;padding-left:24px}
.numbered-steps li{line-height:1.6}
@media(max-width:900px){.guide-layout{grid-template-columns:1fr}.toc-card{position:static}}

/* V27 — Reviews */
.reviews-showcase,.review-submit-panel{max-width:1180px;margin:0 auto;padding:34px 20px 70px}
.review-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}
.review-card{background:rgba(8,12,20,.86);border:1px solid rgba(70,148,255,.22);border-radius:22px;padding:24px;box-shadow:0 18px 60px rgba(0,0,0,.28)}
.review-empty{min-height:220px;display:flex;flex-direction:column;justify-content:center}
.review-anon{font-size:28px;margin-bottom:10px}
.review-form{background:rgba(7,10,17,.9);border:1px solid rgba(81,157,255,.26);border-radius:24px;padding:26px;box-shadow:0 22px 80px rgba(0,0,0,.3)}
.review-form label,.form-label{display:block;font-weight:700;margin:0 0 9px}
.review-form input[type="text"],.review-form input[type="email"],.review-form textarea{width:100%;box-sizing:border-box;background:#090d15;color:#f6f8ff;border:1px solid rgba(255,255,255,.13);border-radius:14px;padding:13px 14px;margin-top:7px;outline:none}
.review-form input:focus,.review-form textarea:focus{border-color:#4ea0ff;box-shadow:0 0 0 3px rgba(78,160,255,.10)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.review-choice{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.025)}
.review-choice .form-label{width:100%;margin-bottom:0}
.review-choice label{font-weight:600;margin:0}
.photo-upload{border:1px dashed rgba(82,164,255,.38);border-radius:18px;padding:16px;min-height:180px;background:rgba(31,83,152,.05)}
.photo-upload input{display:block;margin-top:12px;max-width:100%}
.upload-preview{display:block;width:100%;max-height:320px;object-fit:cover;margin-top:14px;border-radius:14px;border:1px solid rgba(255,255,255,.12)}
.review-consent{margin:18px 0}
.review-submit{margin-top:8px}
.form-muted{font-weight:400;opacity:.68;font-size:.88rem}
.hidden-field{display:none}
@media(max-width:720px){.form-grid{grid-template-columns:1fr}.review-form{padding:18px}.review-choice{align-items:flex-start}}

/* V28 — Guides + Favorites */
.guide-hub-grid{max-width:1180px;margin:0 auto;padding:20px 20px 80px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.guide-hub-card{display:block;text-decoration:none;color:inherit;background:linear-gradient(160deg,rgba(10,16,28,.96),rgba(6,9,15,.96));border:1px solid rgba(71,151,255,.22);border-radius:24px;padding:26px;min-height:270px;transition:.2s ease;box-shadow:0 22px 65px rgba(0,0,0,.26)}
.guide-hub-card:hover{transform:translateY(-4px);border-color:rgba(73,165,255,.58);box-shadow:0 26px 80px rgba(0,0,0,.36)}
.guide-hub-card h2{font-size:1.45rem;margin:.5rem 0 .8rem}.guide-hub-card p{color:#9fb0c2;line-height:1.65}.guide-hub-icon{font-size:2rem;margin-bottom:18px}.guide-open{display:inline-block;margin-top:18px;color:#6db6ff;font-weight:800}
.math-card{border:1px solid rgba(71,151,255,.24);background:rgba(0,126,255,.055);border-radius:18px;padding:22px}.math-card p{font-size:1.05rem;line-height:1.7;margin:8px 0}
.clean-list{display:grid;gap:12px;color:#d7e1ea;line-height:1.55}
.syringe-demo{margin:18px 0 26px}.syringe-labels{display:flex;justify-content:space-between;color:#97a9bb;font-size:.78rem;margin-bottom:8px}.syringe-bar{height:68px;border:2px solid rgba(126,186,255,.55);border-radius:12px;display:flex;justify-content:space-between;align-items:stretch;padding:0 6px;background:linear-gradient(90deg,rgba(0,153,255,.05),rgba(255,255,255,.02));position:relative}.syringe-bar:after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(255,255,255,.08)}.syringe-bar i{display:block;width:1px;background:rgba(210,231,255,.72);height:52%}.syringe-bar i:nth-child(odd){height:76%}
.favorites-section{max-width:1180px;margin:0 auto;padding:24px 20px 80px}.carousel-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.carousel-controls{display:flex;gap:10px}.carousel-controls button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#0b111c;color:white;font-size:1.25rem;cursor:pointer}.favorites-carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 16px;scrollbar-width:none}.favorites-carousel::-webkit-scrollbar{display:none}.favorite-slide{flex:0 0 min(420px,84vw);scroll-snap-align:center;background:radial-gradient(circle at top right,rgba(0,133,255,.18),transparent 38%),rgba(7,11,18,.95);border:1px solid rgba(72,157,255,.25);border-radius:24px;padding:28px;min-height:310px}.favorite-slide h2{font-size:2rem;margin:.5rem 0}.favorite-slide p{color:#9fb1c3;min-height:48px}.favorite-symbol{width:70px;height:70px;border-radius:18px;display:grid;place-items:center;background:rgba(0,133,255,.12);border:1px solid rgba(69,157,255,.34);font-weight:950;font-size:1.2rem;margin-bottom:28px}.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:10px}.carousel-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.22)}.carousel-dots button.active{width:24px;border-radius:10px;background:rgba(97,177,255,.9)}
.favorite-home-card{border-color:rgba(59,148,255,.32)!important}.favorites-home-section{padding-top:0}.mini-favorites-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 16px;scrollbar-width:none}.mini-favorites-track::-webkit-scrollbar{display:none}.mini-fav{scroll-snap-align:start;flex:0 0 220px;text-decoration:none;color:white;border:1px solid rgba(72,157,255,.22);background:rgba(7,12,20,.9);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:18px}.mini-fav span{color:#65b3ff;font-weight:800;font-size:.88rem}
@media(max-width:900px){.guide-hub-grid{grid-template-columns:1fr}.carousel-head{align-items:center}.guide-hub-card{min-height:0}}

/* V29 — Marie Solei / Conóceme / Spanish-first hero */
.hero-impact-strip{
  display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 8px
}
.hero-impact-strip span{
  display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;
  border:1px solid rgba(75,158,255,.28);background:rgba(18,75,135,.12);
  color:#b9dbff;font-size:.78rem;font-weight:850;letter-spacing:.08em
}
.about-marie{padding:70px 20px 90px}
.about-marie-wrap{max-width:1180px;margin:0 auto}
.about-heading h2{max-width:850px}
.about-marie-grid{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:22px;align-items:start
}
.about-story-card{
  background:
    radial-gradient(circle at top right,rgba(0,137,255,.14),transparent 34%),
    rgba(7,11,18,.94);
  border:1px solid rgba(76,157,255,.23);border-radius:26px;padding:30px;
  box-shadow:0 24px 80px rgba(0,0,0,.28)
}
.about-story-card p{color:#c7d4e1;line-height:1.78;font-size:1rem}
.about-story-card .about-lead{font-size:1.18rem;color:#eef7ff;line-height:1.65;margin-top:0}
.about-pillars{display:grid;gap:14px}
.about-pillar{
  position:relative;background:rgba(8,12,20,.9);border:1px solid rgba(255,255,255,.09);
  border-radius:21px;padding:22px 22px 22px 72px
}
.about-pillar h3{margin:.15rem 0 .55rem;font-size:1.15rem}
.about-pillar p{margin:0;color:#aebccc;line-height:1.65}
.pillar-number{
  position:absolute;left:20px;top:22px;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;
  color:#69b6ff;background:rgba(0,132,255,.10);border:1px solid rgba(69,157,255,.30);font-weight:900;font-size:.78rem
}
.about-quote{
  margin-top:22px;border-radius:24px;padding:28px 30px;
  background:linear-gradient(120deg,rgba(0,117,255,.10),rgba(255,0,121,.055));
  border:1px solid rgba(80,154,255,.22)
}
.about-quote>span{display:block;color:#65b2ff;font-weight:850;letter-spacing:.1em;font-size:.76rem;margin-bottom:9px}
.about-quote blockquote{margin:0;color:#f3f8ff;font-size:clamp(1.15rem,2.5vw,1.7rem);line-height:1.5;font-weight:760}
.footer-spanish-tag{opacity:.7;text-align:center;margin-top:10px}
@media(max-width:860px){
  .about-marie-grid{grid-template-columns:1fr}
  .about-story-card{padding:23px}
  .about-pillar{padding-left:68px}
}

/* V30 — Hero title size correction */
.hero-main-title{
  font-size:clamp(1.9rem,3vw,2.7rem)!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-0.025em!important;
  max-width:760px!important;
}
@media(max-width:720px){
  .hero-main-title{
    font-size:clamp(1.65rem,8vw,2.15rem)!important;
    line-height:1.12!important;
  }
}

/* ---------- V32 MEMBERSHIP HERO — estilo laboratorio azul/rosa ---------- */
.hero{position:relative;overflow:hidden;isolation:isolate}
.hero::before,.hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:.28;filter:drop-shadow(0 0 10px rgba(35,118,255,.35))}
.hero::before{width:290px;height:240px;left:-80px;top:8%;background:radial-gradient(circle at 20% 20%,#2b74ff 0 2px,transparent 3px),linear-gradient(30deg,transparent 46%,rgba(37,105,255,.22) 47% 49%,transparent 50%);background-size:74px 64px}
.hero::after{width:310px;height:260px;right:-90px;top:3%;background:radial-gradient(circle at 70% 30%,#2b74ff 0 2px,transparent 3px),linear-gradient(-30deg,transparent 46%,rgba(37,105,255,.2) 47% 49%,transparent 50%);background-size:82px 70px}
.membership-cta{width:min(1120px,100%);margin:32px auto 8px;padding:24px 20px 18px;border-radius:30px;background:radial-gradient(circle at 18% 50%,rgba(255,139,197,.10),transparent 32%),radial-gradient(circle at 82% 50%,rgba(38,112,255,.12),transparent 32%);border:1px solid rgba(89,139,255,.10);box-shadow:inset 0 1px rgba(255,255,255,.025)}
.membership-buttons{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.membership-primary,.membership-secondary{min-height:112px;border-radius:24px;display:flex;align-items:center;justify-content:center;gap:22px;padding:22px 28px;text-decoration:none;font-size:clamp(1.15rem,2.2vw,2rem);font-weight:900;letter-spacing:-.025em;transition:.2s ease}
.membership-primary{color:#071020;background:linear-gradient(135deg,#f6a4cc,#f2b5d6);border:2px solid rgba(255,229,244,.78);box-shadow:0 0 34px rgba(245,130,190,.26),inset 0 1px rgba(255,255,255,.6)}
.membership-primary:hover{transform:translateY(-2px);box-shadow:0 0 44px rgba(245,130,190,.42),inset 0 1px rgba(255,255,255,.7)}
.membership-secondary{color:#fff;background:linear-gradient(135deg,rgba(3,16,42,.96),rgba(3,12,28,.96));border:2px solid rgba(55,119,255,.72);box-shadow:0 0 24px rgba(35,101,255,.10),inset 0 0 26px rgba(14,71,174,.05)}
.membership-secondary:hover{transform:translateY(-2px);border-color:#4f8cff;box-shadow:0 0 32px rgba(35,101,255,.22)}
.membership-icon{font-size:1.65em;line-height:1;filter:drop-shadow(0 0 10px rgba(255,255,255,.12))}.calculator-icon{color:#5590ff;text-shadow:0 0 15px rgba(48,119,255,.7)}
.membership-community{margin:22px auto 0;text-align:center;color:#c5cfdf;font-size:clamp(.94rem,1.45vw,1.15rem)}
.membership-community strong{color:#f09dc8}.membership-people{color:#5b94ff;font-size:1.4em;margin-right:6px}.auth-membership-btn{margin-top:12px;text-align:center;width:100%}.btn-membership{background:linear-gradient(135deg,#f3a0ca,#f4bad8);color:#071020;border:1px solid rgba(255,255,255,.5);font-weight:900}
@media (max-width:760px){.membership-cta{padding:14px 0;background:none;border:0}.membership-buttons{grid-template-columns:1fr;gap:12px}.membership-primary,.membership-secondary{min-height:78px;border-radius:19px;font-size:1.08rem;padding:16px 18px}.membership-community{padding:0 12px;line-height:1.5}.hero::before,.hero::after{opacity:.13}}


/* === Ms.Tide V33: Membership / neon laboratory refresh === */
:root{--v33-bg:#020b1d;--v33-bg2:#000714;--v33-blue:#3787ff;--v33-cyan:#5be7ff;--v33-pink:#ff82c5;--v33-pink2:#ff3fa6;--v33-text:#f7f8fc;--v33-muted:#a8b7d2;--v33-line:rgba(68,130,255,.32)}
.v33-body{background:radial-gradient(circle at 50% 12%,rgba(17,65,142,.20),transparent 28%),linear-gradient(180deg,var(--v33-bg2),var(--v33-bg));color:var(--v33-text);min-height:100vh}
.v33-body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(circle at 10% 12%,#3787ff 0 1px,transparent 2px),radial-gradient(circle at 86% 18%,#5be7ff 0 1px,transparent 2px),radial-gradient(circle at 70% 75%,#ff82c5 0 1px,transparent 2px);background-size:140px 140px,190px 190px,230px 230px;z-index:-1}
.v33-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:24px;padding:15px clamp(18px,4vw,70px);background:rgba(0,7,20,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(80,130,220,.18)}
.v33-brand{font-family:Georgia,serif;font-size:30px;color:#fff;text-decoration:none;white-space:nowrap}.v33-brand span{color:var(--v33-pink)}
.v33-nav{display:flex;align-items:center;gap:18px;margin-left:auto}.v33-nav a,.v33-account{color:#eef4ff;background:none;border:0;text-decoration:none;font:inherit;font-size:14px;cursor:pointer}.v33-nav a:hover{color:var(--v33-pink)}.v33-account{padding:10px 15px;border-radius:8px;background:linear-gradient(135deg,var(--v33-pink2),#b92884);box-shadow:0 0 20px rgba(255,63,166,.28)}
.v33-menu-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--v33-line);color:#fff;border-radius:9px;padding:8px 11px}
.v33-hero{min-height:610px;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;padding:76px 20px 50px;border-bottom:1px solid rgba(71,126,230,.15)}
.v33-hero:after{content:"";position:absolute;inset:auto 8% 0;height:240px;background:radial-gradient(ellipse at center,rgba(47,100,255,.13),transparent 70%);pointer-events:none}
.v33-hero-inner{position:relative;z-index:2;max-width:1100px}.v33-hero h1{font-family:Georgia,serif;font-size:clamp(72px,10vw,150px);line-height:.88;margin:0;color:#fff;text-shadow:0 0 36px rgba(70,120,255,.12)}.v33-hero h1 span{color:var(--v33-pink)}
.v33-tagline{letter-spacing:.38em;color:#6eb3ff;font-size:clamp(13px,1.8vw,24px);margin:28px 0 54px}
.v33-hero-actions{display:flex;justify-content:center;gap:26px;flex-wrap:wrap}.v33-btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 28px;border-radius:14px;text-decoration:none;font-weight:800;letter-spacing:.01em;border:1px solid transparent;cursor:pointer}.v33-btn-pink{background:linear-gradient(135deg,#ffb4d9,#ed78b7);color:#11071a;border-color:#ffd8ec;box-shadow:0 0 30px rgba(255,107,186,.38)}.v33-btn-blue{background:rgba(0,10,28,.74);color:#fff;border-color:#3382ff;box-shadow:inset 0 0 30px rgba(30,92,230,.08),0 0 24px rgba(34,113,255,.14)}.v33-hero-actions .v33-btn{min-width:min(420px,88vw);font-size:clamp(18px,2vw,27px);min-height:92px}
.v33-free-note{color:#b8c8e1;font-size:17px;margin-top:32px}.v33-free-note strong{color:#75aaff}
.v33-features{max-width:1250px;margin:0 auto;padding:42px 24px;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.v33-feature{text-decoration:none;color:#fff;text-align:center;padding:22px 10px;border-right:1px solid rgba(83,128,215,.18)}.v33-feature:last-child{border-right:0}.v33-feature b{display:block;font-size:33px;margin-bottom:12px}.v33-feature h3{color:var(--v33-pink);margin:0 0 8px;font-size:17px}.v33-feature p{color:var(--v33-muted);font-size:13px;margin:0;line-height:1.5}
.v33-membership{max-width:1250px;margin:20px auto 80px;padding:0 24px;display:grid;grid-template-columns:1fr 270px;gap:20px}.v33-membership-card,.v33-community-count{border:1px solid #244679;border-radius:18px;background:linear-gradient(180deg,rgba(4,18,46,.88),rgba(1,10,28,.92));box-shadow:0 0 40px rgba(29,75,180,.08)}.v33-membership-card{padding:34px;display:grid;grid-template-columns:180px 1fr;gap:30px;align-items:center}.v33-dna{font-size:110px;text-align:center;filter:drop-shadow(0 0 18px rgba(255,73,169,.35))}.v33-kicker{color:#6baaff;letter-spacing:.2em;font-size:12px;font-weight:800}.v33-membership h2{font-size:44px;color:#ff69b4;margin:7px 0 20px}.v33-membership h2 small{font-size:23px;font-weight:400}.v33-benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;margin-bottom:24px;color:#e7effe}.v33-benefits span:before{color:var(--v33-pink)}.v33-tiny{color:var(--v33-muted);font-size:12px}.v33-community-count{padding:32px;text-align:center;display:flex;flex-direction:column;justify-content:center}.v33-community-count>div:first-child{font-size:52px}.v33-community-count strong{font-size:42px;color:var(--v33-pink);margin-top:8px}.v33-community-count p{color:#d2dbee;line-height:1.5}.v33-stars-row{color:var(--v33-pink);letter-spacing:5px;margin:10px 0}.v33-community-count small{color:var(--v33-muted)}
.v33-split{max-width:1250px;margin:0 auto 50px;padding:40px 24px;display:grid;grid-template-columns:1fr 1fr;gap:50px;border-top:1px solid rgba(61,116,216,.2)}.v33-split h2{font-size:38px}.v33-split p{color:#b9c7dc;line-height:1.8}.v33-trust{max-width:1250px;margin:0 auto 70px;padding:28px 24px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(58,117,225,.25);border-radius:16px}.v33-trust div{text-align:center;padding:10px;border-right:1px solid rgba(58,117,225,.2);font-size:25px}.v33-trust div:last-child{border:0}.v33-trust b,.v33-trust span{display:block}.v33-trust b{font-size:14px;margin-top:8px}.v33-trust span{font-size:12px;color:var(--v33-muted);margin-top:3px}
.v33-footer{padding:34px clamp(20px,4vw,70px);border-top:1px solid rgba(56,105,194,.2);display:flex;gap:24px;align-items:center;flex-wrap:wrap;color:#8799b9}.v33-footer p{margin:0;font-size:12px}.v33-footer .v33-brand{font-size:25px;margin-right:auto}
.v33-page{max-width:1150px;margin:0 auto;padding:50px 24px 90px}.v33-page-hero{text-align:center;padding:55px 0 45px}.v33-page-hero h1{font-size:clamp(40px,7vw,74px);margin:10px 0 18px}.v33-page-hero p{color:var(--v33-muted);max-width:760px;margin:0 auto 28px;line-height:1.7}.v33-filter-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:30px}.v33-filter-row span{padding:9px 15px;border:1px solid #253e6c;border-radius:8px;color:#b9c9e4;font-size:13px}.v33-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.v33-news-grid article{padding:24px;border:1px solid #203b6b;border-radius:13px;background:rgba(3,15,38,.78)}.v33-news-grid em{font-style:normal;font-size:10px;color:var(--v33-pink);font-weight:800}.v33-news-grid h3{font-size:20px}.v33-news-grid p{color:var(--v33-muted);line-height:1.6}.v33-news-grid small{color:#6fa5f4}
.v33-consult-card{max-width:850px;margin:0 auto;display:grid;grid-template-columns:260px 1fr;gap:36px;align-items:center;padding:44px;border:1px solid #22447a;border-radius:18px;background:rgba(3,15,38,.8)}.v33-consult-icon{font-size:140px;text-align:center;filter:drop-shadow(0 0 20px rgba(255,63,166,.3))}.v33-consult-card li{margin:13px 0;color:#c8d5e9}.v33-order-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0 34px}.v33-order-steps div{display:flex;gap:12px;align-items:center;padding:18px;border:1px solid #244374;border-radius:12px}.v33-order-steps b{display:grid;place-items:center;min-width:36px;height:36px;border-radius:50%;background:#173b84;color:#fff}.v33-order-steps span{font-size:13px}.v33-form{max-width:820px;margin:0 auto;display:grid;gap:16px;padding:30px;border:1px solid #244374;border-radius:18px;background:rgba(3,15,38,.8)}.v33-form label{display:grid;gap:8px;color:#dce7f8;font-size:14px}.v33-form input,.v33-form textarea,.v33-form select{background:#020b1d;border:1px solid #2c4f89;border-radius:10px;color:#fff;padding:13px 14px;font:inherit}.v33-legal-note{max-width:820px;margin:18px auto;color:#7f91b1;font-size:11px;line-height:1.6}.v33-calc-meter{max-width:900px;margin:0 auto 22px;padding:20px 24px;border:1px solid #2250a0;border-radius:14px;background:linear-gradient(180deg,rgba(2,22,62,.8),rgba(2,12,35,.9));text-align:center}.v33-calc-meter h2{margin:7px 0;color:#79aaff}.v33-calc-meter p{margin:0;color:#9fb0cc}
@media(max-width:980px){.v33-menu-toggle{display:block}.v33-nav{display:none;position:absolute;left:18px;right:18px;top:70px;flex-direction:column;align-items:stretch;background:#020b1d;border:1px solid #254579;border-radius:14px;padding:18px}.v33-nav.open{display:flex}.v33-features{grid-template-columns:repeat(3,1fr)}.v33-membership{grid-template-columns:1fr}.v33-membership-card{grid-template-columns:1fr}.v33-dna{font-size:70px}.v33-trust{grid-template-columns:repeat(2,1fr)}.v33-news-grid{grid-template-columns:1fr}.v33-consult-card{grid-template-columns:1fr}.v33-consult-icon{font-size:95px}.v33-order-steps{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.v33-header{padding:12px 16px}.v33-brand{font-size:25px}.v33-hero{min-height:560px;padding-top:55px}.v33-tagline{letter-spacing:.22em;margin-bottom:36px}.v33-hero-actions .v33-btn{min-height:70px;font-size:18px}.v33-features{grid-template-columns:repeat(2,1fr)}.v33-feature{border-right:0;border-bottom:1px solid rgba(83,128,215,.15)}.v33-membership-card{padding:24px}.v33-benefits{grid-template-columns:1fr}.v33-split{grid-template-columns:1fr}.v33-trust{grid-template-columns:1fr}.v33-trust div{border-right:0;border-bottom:1px solid rgba(58,117,225,.2)}.v33-order-steps{grid-template-columns:1fr}.v33-page{padding-left:16px;padding-right:16px}.v33-form{padding:20px}.v33-consult-card{padding:25px}}

/* === V34 mobile centering + blog articles === */
html,body{max-width:100%;overflow-x:hidden}.v33-hero-inner{width:100%;max-width:1100px;margin-inline:auto;padding-inline:0;box-sizing:border-box}.v33-tagline{width:100%;max-width:100%;text-align:center;box-sizing:border-box}.v33-tagline span{color:var(--v33-pink);letter-spacing:0}.v33-hero-actions{width:100%;box-sizing:border-box}.v33-hero-actions .v33-btn{box-sizing:border-box;max-width:100%}.v33-readmore{display:inline-block;margin:10px 0 12px;color:var(--v33-pink);font-weight:800;text-decoration:none}.v33-readmore:hover{text-decoration:underline}.v33-news-card{display:flex;flex-direction:column}.v33-news-card .v33-readmore{margin-top:auto}.v33-article{width:min(900px,calc(100% - 32px));margin:0 auto;padding:56px 0 90px}.v33-article article{border:1px solid #203b6b;border-radius:20px;background:linear-gradient(180deg,rgba(3,15,38,.88),rgba(2,10,28,.94));padding:clamp(24px,5vw,54px);box-shadow:0 0 45px rgba(25,76,178,.08)}.v33-article h1{font-size:clamp(38px,7vw,72px);line-height:1.02;margin:12px 0 18px}.v33-article h2{font-size:clamp(23px,4vw,32px);margin:38px 0 12px;color:#f6f8ff}.v33-article p{color:#bcc9dd;line-height:1.85;font-size:16px}.v33-article-dek{font-size:clamp(17px,2.4vw,21px)!important;color:#dce7f7!important}.v33-back{display:inline-block;color:#79adff;text-decoration:none;margin-bottom:24px}.v33-source-badge{display:inline-block;margin:8px 0 12px;padding:8px 12px;border:1px solid #285597;border-radius:999px;color:#7fb3ff;font-size:11px;font-weight:900;letter-spacing:.08em}.v33-callout{margin:28px 0;padding:20px 22px;border-left:4px solid var(--v33-pink);background:rgba(255,92,176,.07);border-radius:0 12px 12px 0;color:#dfe8f6;line-height:1.7}.v33-sources{margin-top:42px;padding-top:26px;border-top:1px solid #203b6b}.v33-sources ul{padding-left:20px}.v33-sources li{margin:12px 0;color:#9eb1ce}.v33-sources a{color:#79adff;word-break:break-word}.v33-article-disclaimer{margin-top:36px;padding:18px;border:1px solid #35425a;border-radius:12px;color:#8fa0bb;font-size:12px;line-height:1.7}
@media(max-width:620px){.v33-hero{padding-left:16px;padding-right:16px}.v33-hero h1{font-size:clamp(68px,20vw,96px);width:100%;text-align:center}.v33-tagline{font-size:12px;letter-spacing:.12em;line-height:1.7;margin:24px auto 34px;padding:0 4px;white-space:normal}.v33-hero-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.v33-hero-actions .v33-btn{width:100%;min-width:0!important;max-width:100%;padding:14px 12px;font-size:17px}.v33-free-note{font-size:15px;line-height:1.55;padding:0 8px}.v33-article{width:min(100% - 24px,900px);padding-top:30px}.v33-article article{padding:24px 18px}.v33-article h1{font-size:38px}.v33-article p{font-size:15px}}

/* ---------- V35: Order Form + Member Community ---------- */
.order-hero{padding-bottom:28px}
.order-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.order-badges span{border:1px solid rgba(0,168,255,.22);background:rgba(0,168,255,.05);padding:8px 11px;border-radius:999px;font-size:.78rem;color:#cfeeff}
.order-member-note{max-width:850px;margin:0 auto 22px;padding:18px 20px;border:1px solid rgba(255,45,166,.28);border-radius:14px;background:rgba(255,45,166,.055)}
.order-member-note strong{color:#ff75c4}.order-member-note p{margin:6px 0 0;color:#b8c3cf}
.order-form-ready{max-width:850px;margin:0 auto 70px}
.form-section-title{display:flex;align-items:center;gap:12px;margin:30px 0 14px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}
.form-section-title:first-of-type{margin-top:0;border-top:0;padding-top:0}
.form-section-title>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(0,168,255,.12);border:1px solid rgba(0,168,255,.32);font-size:.75rem;font-weight:900;color:#8bdcff}
.form-section-title b{display:block}.form-section-title small{display:block;color:#7f8b99;margin-top:2px}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.order-form-ready label{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;font-weight:700;color:#e7eef6}
.order-form-ready input,.order-form-ready textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#080d14;color:#fff;padding:13px 14px;outline:none;font:inherit}
.order-form-ready input:focus,.order-form-ready textarea:focus{border-color:rgba(0,168,255,.65);box-shadow:0 0 0 3px rgba(0,168,255,.08)}
.shipping-box{margin:20px 0;padding:16px 18px;border:1px solid rgba(0,168,255,.25);border-radius:12px;background:rgba(0,168,255,.045)}
.shipping-box>div{display:flex;justify-content:space-between;gap:20px;font-weight:900}.shipping-box strong{color:#69d4ff}.shipping-box p{margin:5px 0 0;color:#8493a3;font-size:.85rem}
.terms-summary{margin:22px 0 14px;padding:18px;border-left:2px solid var(--pink);background:rgba(255,255,255,.025);border-radius:0 10px 10px 0}.terms-summary h3{margin:0 0 8px}.terms-summary p{color:#aeb9c7;font-size:.88rem;margin:7px 0}
.order-accept{flex-direction:row!important;align-items:flex-start!important;gap:10px!important;font-weight:500!important}.order-accept input{width:auto!important;margin-top:4px}
.hidden-field{position:absolute!important;left:-9999px!important}
.order-tiny{text-align:center;margin-top:12px}
.community-private{text-align:center;max-width:760px;margin:auto;align-items:center}
.community-private h1{margin-left:auto;margin-right:auto}.community-private p{max-width:650px}
.member-status{margin:18px 0 14px;padding:10px 14px;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#b8c3cf;background:rgba(255,255,255,.025)}
#communityJoinBtn:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.45)}
@media(max-width:650px){.form-grid-2{grid-template-columns:1fr}.order-badges{justify-content:center}.shipping-box>div{align-items:center}.order-form-ready{margin-bottom:45px}}

/* V36 — selectable order catalog */
.product-group{margin:4px 0 20px}.product-group h3{margin:0 0 10px;font-size:1rem;color:#f3f7ff}.product-list{display:grid;gap:9px}.product-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between;gap:14px!important;margin:0!important;padding:14px 15px;border:1px solid rgba(81,137,229,.22);border-radius:12px;background:rgba(4,12,29,.74);transition:.18s ease}.product-row:has(.product-check:checked){border-color:rgba(255,92,176,.6);background:rgba(255,92,176,.055);box-shadow:0 0 22px rgba(255,61,167,.06)}.product-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.product-check{width:18px!important;height:18px;padding:0!important;flex:0 0 auto;accent-color:#ff59b6}.product-name{font-weight:800;line-height:1.25}.product-price{margin-left:auto;color:#7dc2ff;font-weight:900;white-space:nowrap}.qty-wrap{display:flex;align-items:center;gap:7px;font-size:.78rem!important;color:#8da1bf!important;font-weight:700!important}.qty-wrap .product-qty{width:64px!important;padding:8px 7px!important;text-align:center}.sold-out{opacity:.58;border-style:dashed}.sold-out .product-price{color:#ff86c7}.sold-badge{font-size:.7rem;padding:5px 8px;border-radius:999px;border:1px solid rgba(255,92,176,.25);color:#ff9fd0;white-space:nowrap}.order-total-box{margin:20px 0 4px;padding:18px;border:1px solid rgba(0,168,255,.3);border-radius:14px;background:linear-gradient(180deg,rgba(0,117,255,.06),rgba(2,11,27,.72))}.order-total-box>div{display:flex;justify-content:space-between;gap:20px;padding:7px 0;color:#c7d5e8}.order-total-box strong{color:#77d2ff}.order-total-box .grand-total{margin-top:7px;padding-top:13px;border-top:1px solid rgba(255,255,255,.1);font-size:1.08rem}.order-total-box .grand-total strong{color:#ff8aca;font-size:1.2rem}.order-total-box small{display:block;margin-top:8px;color:#788ca9}.product-error{display:none;color:#ff9bcf;font-size:.85rem;margin:-4px 0 12px}.product-error.show{display:block}
@media(max-width:650px){.product-row{align-items:flex-start!important;flex-direction:column!important}.product-main{width:100%}.product-price{margin-left:auto}.qty-wrap{width:100%;justify-content:flex-end}.sold-badge{align-self:flex-end}}


/* V37 cart refinements */
.order-kit-note{margin:18px 0;padding:18px 20px;border:1px solid rgba(74,163,255,.35);border-radius:18px;background:rgba(8,26,52,.58)}
.order-kit-note strong{display:block;color:#ff85c4;font-size:1.05rem;margin-bottom:5px}
.order-kit-note p{margin:0;color:#c8d5ea;line-height:1.55}
.cart-actions{display:flex;flex-direction:column;gap:8px;align-items:stretch;margin:22px 0 14px}
.cart-actions small{color:#8fa1bd;text-align:center}
@media(max-width:600px){.cart-actions .v33-btn{width:100%}.product-qty{max-width:88px}}


/* ---------- V39: New hero with pink/blue science blend ---------- */
.v39-hero{
  min-height:760px;
  padding:86px 20px 62px;
  background:
    linear-gradient(180deg,rgba(2,9,24,.82) 0%,rgba(2,9,24,.60) 30%,rgba(2,9,24,.76) 100%),
    radial-gradient(circle at 18% 20%,rgba(66,121,255,.20),transparent 25%),
    radial-gradient(circle at 82% 10%,rgba(255,67,176,.22),transparent 24%),
    url("assets/hero-pink-blue-lab-v39.png") center/cover no-repeat;
}
.v39-hero:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 12% 25%,rgba(82,133,255,.16) 0 2px,transparent 3px),
    radial-gradient(circle at 85% 20%,rgba(255,95,193,.20) 0 2px,transparent 3px),
    radial-gradient(circle at 68% 80%,rgba(100,192,255,.14) 0 2px,transparent 3px);
  background-size:160px 160px,220px 220px,260px 260px;
  opacity:.75;
}
.v39-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,6,18,.12),rgba(2,6,18,.10));pointer-events:none}
.v39-hero-inner{max-width:900px;padding-inline:10px}
.v39-hero-mark{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 8px;position:relative;width:min(320px,78vw)}
.v39-ms-wrap{position:relative;display:flex;align-items:flex-end;gap:4px;font-family:Georgia,serif;font-size:clamp(88px,14vw,170px);line-height:.85;text-shadow:0 0 28px rgba(255,255,255,.10)}
.v39-ms-pink{color:#ff4ba8}
.v39-ms-white{color:#fff}
.v39-molecule{position:absolute;right:-8px;top:8px;width:78px;height:58px}
.v39-molecule i{position:absolute;display:block;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#ff85ca 60%,#de2e8f 100%);box-shadow:0 0 12px rgba(255,108,190,.55)}
.v39-molecule i:nth-child(1){right:8px;top:0}
.v39-molecule i:nth-child(2){left:20px;top:20px}
.v39-molecule i:nth-child(3){right:22px;top:24px}
.v39-molecule i:nth-child(4){left:0;bottom:0}
.v39-molecule:before,.v39-molecule:after{content:"";position:absolute;height:2px;background:linear-gradient(90deg,#ff7fca,#75b8ff);transform-origin:left center;opacity:.9}
.v39-molecule:before{left:8px;top:28px;width:52px;transform:rotate(-20deg)}
.v39-molecule:after{left:24px;top:23px;width:30px;transform:rotate(42deg)}
.v39-wave{display:block;width:170px;height:14px;margin-top:-6px;position:relative}
.v39-wave:before,.v39-wave:after{content:"";position:absolute;left:0;right:0;border-radius:999px;height:3px;background:linear-gradient(90deg,#ff3f9f 0%,#ff82c5 45%,#6fb2ff 100%);box-shadow:0 0 12px rgba(255,72,171,.35)}
.v39-wave:before{top:2px;transform:skewX(-18deg)}
.v39-wave:after{top:8px;left:16px;right:16px;opacity:.9;transform:skewX(-18deg)}
.v39-hero-title{font-family:Georgia,serif!important;font-size:clamp(78px,10vw,132px)!important;line-height:.88;margin:8px 0 0!important;color:#fff;text-shadow:0 0 36px rgba(27,93,240,.12)}
.v39-hero-title span{color:var(--v33-pink)}
.v39-tagline{margin:18px 0 44px;color:#dfeafe;text-shadow:0 0 12px rgba(24,70,180,.12)}
.v39-hero .v33-hero-actions .v33-btn{backdrop-filter:blur(6px)}
.v39-hero .v33-btn-pink{background:linear-gradient(135deg,#ff8dc6,#f24695);color:#fff;border-color:rgba(255,212,236,.7);box-shadow:0 0 30px rgba(255,75,167,.35)}
.v39-hero .v33-btn-blue{background:rgba(4,12,33,.68);border-color:#ff3f9f;box-shadow:inset 0 0 30px rgba(20,78,198,.14),0 0 22px rgba(255,72,171,.14)}
.v39-hero .v33-free-note{max-width:740px;margin:28px auto 0;color:#d5def0;text-shadow:0 0 10px rgba(14,31,89,.18)}
@media(max-width:620px){
  .v39-hero{min-height:690px;padding-top:60px;padding-bottom:40px;background-position:center top}
  .v39-hero-inner{padding-inline:2px}
  .v39-ms-wrap{font-size:clamp(72px,25vw,112px)}
  .v39-molecule{right:-2px;top:6px;transform:scale(.82);transform-origin:top right}
  .v39-wave{width:130px;height:13px;margin-top:-3px}
  .v39-hero-title{font-size:clamp(62px,18vw,92px)!important}
  .v39-tagline{margin:16px auto 28px;font-size:12px;letter-spacing:.18em;line-height:1.6;padding:0 4px}
}


/* ---------- V41: Clean hero + molecule branding ---------- */
.v41-brand{
  display:flex;
  align-items:center;
  gap:10px;
}
.v41-brand-text{
  font-family:Georgia,serif;
  color:#fff;
}
.v41-header-molecule{
  position:relative;
  width:34px;
  height:28px;
  display:inline-block;
  flex:0 0 auto;
}
.v41-header-molecule i{
  position:absolute;
  width:8px;
  height:8px;
  border-radius:50%;
  box-shadow:0 0 10px currentColor;
}
.v41-header-molecule i:nth-child(1){left:0;top:10px;color:#ff55ae;background:#ff55ae}
.v41-header-molecule i:nth-child(2){left:12px;top:1px;color:#ff78bf;background:#ff78bf}
.v41-header-molecule i:nth-child(3){left:13px;top:18px;color:#65b8ff;background:#65b8ff}
.v41-header-molecule i:nth-child(4){right:0;top:7px;color:#3da5ff;background:#3da5ff}
.v41-header-molecule i:nth-child(5){right:0;bottom:0;color:#82d3ff;background:#82d3ff}
.v41-header-molecule:before,
.v41-header-molecule:after{
  content:"";
  position:absolute;
  height:2px;
  transform-origin:left center;
  background:linear-gradient(90deg,#ff5aac 0 48%,#65b8ff 52% 100%);
  opacity:.95;
}
.v41-header-molecule:before{
  left:5px; top:12px; width:24px; transform:rotate(-17deg);
}
.v41-header-molecule:after{
  left:15px; top:8px; width:17px; transform:rotate(48deg);
}

.v41-hero{
  min-height:610px;
  padding:76px 20px 52px;
  background:
    radial-gradient(circle at 18% 18%,rgba(45,116,255,.16),transparent 28%),
    radial-gradient(circle at 82% 20%,rgba(255,71,170,.15),transparent 27%),
    radial-gradient(circle at 50% 72%,rgba(69,137,255,.08),transparent 34%),
    linear-gradient(180deg,#020b1d 0%,#031027 52%,#020b1d 100%);
}
.v41-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.55;
  background-image:
    radial-gradient(circle at 10% 20%,#4a94ff 0 1px,transparent 2px),
    radial-gradient(circle at 84% 16%,#ff68b9 0 1px,transparent 2px),
    radial-gradient(circle at 72% 74%,#69c7ff 0 1px,transparent 2px);
  background-size:160px 160px,210px 210px,250px 250px;
}
.v41-hero:after{
  content:"";
  position:absolute;
  inset:auto 8% 0;
  height:180px;
  background:radial-gradient(ellipse at center,rgba(38,90,210,.10),transparent 70%);
  pointer-events:none;
}
.v41-hero-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:980px;
  margin-inline:auto;
}
.v41-title-wrap{
  position:relative;
  width:max-content;
  max-width:100%;
  margin:0 auto;
}
.v41-hero-title{
  font-family:Georgia,serif!important;
  font-size:clamp(76px,10vw,145px)!important;
  line-height:.88!important;
  margin:0!important;
  color:#fff;
  text-shadow:0 0 32px rgba(73,135,255,.10);
}
.v41-hero-title span{color:var(--v33-pink)}
.v41-title-molecule{
  position:absolute;
  right:-55px;
  top:-26px;
  width:82px;
  height:64px;
}
.v41-title-molecule i{
  position:absolute;
  width:13px;
  height:13px;
  border-radius:50%;
  background:linear-gradient(135deg,#ff5aaa,#6dbdff);
  box-shadow:0 0 14px rgba(105,185,255,.45),0 0 16px rgba(255,80,170,.35);
}
.v41-title-molecule i:nth-child(1){left:5px;top:31px;background:#ff58aa}
.v41-title-molecule i:nth-child(2){left:30px;top:9px;background:#ff87c6}
.v41-title-molecule i:nth-child(3){right:8px;top:27px;background:#4aa8ff}
.v41-title-molecule i:nth-child(4){left:34px;bottom:2px;background:#80d2ff}
.v41-title-molecule:before,
.v41-title-molecule:after{
  content:"";
  position:absolute;
  height:2px;
  background:linear-gradient(90deg,#ff5aaa,#6dbdff);
  transform-origin:left center;
  opacity:.9;
}
.v41-title-molecule:before{
  left:13px;top:35px;width:51px;transform:rotate(-21deg);
}
.v41-title-molecule:after{
  left:34px;top:19px;width:34px;transform:rotate(42deg);
}
.v41-tagline{
  margin:26px auto 48px;
  color:#81b9ff;
  text-align:center;
}
.v41-hero .v33-btn-pink{
  background:linear-gradient(135deg,#ff9dcc,#ef67aa);
  border-color:#ffd0e8;
  box-shadow:0 0 28px rgba(255,84,172,.30);
}
.v41-hero .v33-btn-blue{
  background:rgba(2,12,35,.72);
  border-color:#3c8cff;
  box-shadow:inset 0 0 28px rgba(31,91,215,.08),0 0 22px rgba(43,112,255,.12);
}

@media(max-width:620px){
  .v41-brand{gap:8px}
  .v41-header-molecule{width:30px;height:25px}
  .v41-hero{
    min-height:565px;
    padding:62px 16px 42px;
  }
  .v41-title-wrap{
    width:100%;
    display:flex;
    justify-content:center;
  }
  .v41-hero-title{
    font-size:clamp(66px,19vw,94px)!important;
    width:auto!important;
  }
  .v41-title-molecule{
    right:4px;
    top:-18px;
    transform:scale(.72);
    transform-origin:top right;
  }
  .v41-tagline{
    margin:22px auto 34px;
    font-size:12px;
    letter-spacing:.13em;
    line-height:1.7;
  }
}

.invoice-confirm-line{margin:8px 0 4px;text-align:center;color:#c9d7ed;font-size:.92rem;line-height:1.55}.invoice-confirm-line::first-letter{filter:drop-shadow(0 0 5px rgba(255,216,77,.4))}

/* V45 - Netlify Forms submit fix */
.order-submit-status{
  min-height:24px;
  margin:8px 0 0;
  text-align:center;
  color:#8fc4ff;
  font-weight:700;
}
.order-submit-status.error{color:#ff8dbb}
.order-form-ready button[disabled]{opacity:.65;cursor:wait}

/* V49 - 30 day free trial promo */
.v49-trial-badge{
  display:inline-block;
  margin:10px 0 4px;
  padding:9px 14px;
  border:1px solid rgba(255,216,77,.55);
  border-radius:999px;
  background:rgba(255,216,77,.08);
  color:#ffd84d;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  box-shadow:0 0 18px rgba(255,216,77,.08);
}

/* V51 membership management */
.v51-manage-wrap{
  max-width:760px;
  margin:24px auto 42px;
  padding:0 20px;
  text-align:center;
}
.manage-membership-btn{
  margin-top:10px;
}
.manage-membership-btn:disabled{
  opacity:.65;
  cursor:wait;
}

/* V52 member state */
.member-active-status{
  margin:12px 0 6px;
  font-weight:900;
  letter-spacing:.08em;
  color:#8dffb2;
}

/* V53 Member benefits experience */
.member-benefits-banner{
  max-width:980px;
  margin:22px auto;
  padding:18px 20px;
  border:1px solid rgba(72,196,255,.35);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(40,89,255,.10),rgba(255,70,180,.08));
  box-shadow:0 0 28px rgba(70,160,255,.08);
  text-align:left;
  gap:14px;
  align-items:flex-start;
}
.member-benefits-banner[style*="display:none"]{display:none!important;}
.member-benefits-banner:not([style*="display:none"]){display:flex;}
.member-benefits-icon{
  font-size:24px;
  line-height:1;
}
.member-benefits-banner strong{
  display:block;
  font-size:16px;
  margin-bottom:5px;
}
.member-benefits-banner span{
  display:block;
  opacity:.86;
  margin-bottom:8px;
}
.member-benefits-banner a{
  font-weight:800;
  text-decoration:none;
}
.member-active-status{
  cursor:default;
  user-select:none;
}

/* =========================
   V54 CUSTOM MY ACCOUNT
   ========================= */
body.mstide-account-open{overflow:hidden}

.mstide-account-overlay{
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(1,7,18,.78);
  backdrop-filter:blur(10px);
}
.mstide-account-overlay.is-open{display:flex}

.mstide-account-card{
  position:relative;
  width:min(760px,100%);
  max-height:90vh;
  overflow:auto;
  padding:26px;
  border:1px solid rgba(79,184,255,.24);
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 0%,rgba(53,141,255,.16),transparent 30%),
    radial-gradient(circle at 95% 10%,rgba(255,74,181,.12),transparent 28%),
    #07111f;
  box-shadow:0 30px 90px rgba(0,0,0,.55),0 0 35px rgba(71,165,255,.08);
  color:#eef7ff;
}
.mstide-account-close{
  position:absolute;
  right:18px;
  top:14px;
  border:0;
  background:transparent;
  color:#9eb2c9;
  font-size:30px;
  cursor:pointer;
}
.mstide-account-brand{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:18px;
}
.mstide-account-orb{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:13px;
  border:1px solid rgba(255,95,190,.35);
  background:rgba(255,80,180,.08);
  font-size:22px;
}
.mstide-account-kicker{
  display:block;
  font-size:11px;
  letter-spacing:.18em;
  font-weight:900;
  color:#70d6ff;
}
.mstide-account-brand h2,
.mstide-orders-head h3{
  margin:2px 0 0;
}
.mstide-account-profile{
  display:flex;
  align-items:center;
  gap:13px;
  padding:17px;
  border-radius:18px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.07);
}
.mstide-account-avatar{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(255,76,183,.92),rgba(70,179,255,.9));
  color:white;
  font-weight:900;
  font-size:20px;
}
.mstide-account-profile strong{
  display:block;
  font-size:16px;
}
.mstide-account-profile span:not(.mstide-account-member-badge){
  display:block;
  margin-top:3px;
  color:#93a8bc;
  font-size:13px;
  word-break:break-all;
}
.mstide-account-member-badge{
  margin-left:auto;
  padding:7px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  background:rgba(255,255,255,.06);
  color:#aebdca;
  white-space:nowrap;
}
.mstide-account-member-badge.is-member{
  border:1px solid rgba(92,255,165,.25);
  background:rgba(92,255,165,.08);
  color:#8dffb2;
}
.mstide-account-benefits{
  margin:14px 0;
  padding:14px 16px;
  border-radius:15px;
  border:1px solid rgba(79,184,255,.2);
  background:linear-gradient(90deg,rgba(49,130,255,.08),rgba(255,71,178,.06));
}
.mstide-account-benefits strong,
.mstide-account-benefits span{
  display:block;
}
.mstide-account-benefits span{
  margin-top:4px;
  color:#a7bacd;
  font-size:13px;
}
.mstide-account-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin:16px 0 22px;
}
.mstide-account-tile{
  min-height:110px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:5px;
  padding:14px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.03);
  color:#eef7ff;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
}
button.mstide-account-tile{font:inherit}
.mstide-account-tile:hover{
  transform:translateY(-1px);
  border-color:rgba(82,187,255,.3);
}
.mstide-account-tile span{font-size:20px}
.mstide-account-tile strong{font-size:13px}
.mstide-account-tile small{color:#879bae;font-size:11px}
.mstide-orders-section{
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
}
.mstide-orders-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:10px;
  margin-bottom:12px;
}
.mstide-small-link{
  color:#79d8ff;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
}
.mstide-order-history{
  display:grid;
  gap:10px;
}
.mstide-order-empty{
  padding:18px;
  border:1px dashed rgba(255,255,255,.12);
  border-radius:14px;
  color:#8296a9;
  font-size:13px;
}
.mstide-order-card{
  padding:14px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.07);
}
.mstide-order-card-top{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.mstide-order-card-top span{
  color:#8296a9;
  font-size:11px;
}
.mstide-order-items{
  margin-top:8px;
  color:#afc0cf;
  font-size:12px;
}
.mstide-order-total{
  margin-top:7px;
  font-weight:900;
}
.mstide-order-card small{
  display:block;
  margin-top:5px;
  color:#778a9d;
}
.mstide-account-footer{
  display:flex;
  justify-content:flex-end;
  margin-top:18px;
}
.mstide-logout-btn{
  padding:10px 14px;
  border-radius:12px;
  border:1px solid rgba(255,111,111,.22);
  background:rgba(255,78,78,.07);
  color:#ffaaaa;
  font-weight:800;
  cursor:pointer;
}

@media(max-width:720px){
  .mstide-account-card{padding:20px 16px}
  .mstide-account-grid{grid-template-columns:repeat(2,1fr)}
  .mstide-account-profile{align-items:flex-start}
  .mstide-account-member-badge{font-size:9px}
}

.v33-btn small{display:block;line-height:1.2}

/* V56 WhatsApp contact nav */
.v33-nav a[href*="wa.me/qr/"]{font-weight:800;}

/* V57 cancellation state */
.mstide-cancel-membership-btn.is-cancel-scheduled{
  border-color:rgba(92,255,165,.28);
  background:rgba(92,255,165,.06);
}
.mstide-cancel-membership-btn.is-cancel-scheduled small{
  color:#8dffb2;
}
.mstide-cancel-membership-btn:disabled{
  opacity:.65;
  cursor:wait;
}

/* V62 mobile-first research catalog */
.v62-shop-page{max-width:1120px;margin:0 auto;padding:24px 14px 50px}
.v62-shop-hero{text-align:center;padding:24px 8px 18px}
.v62-shop-hero h1{margin:6px 0 8px;font-size:clamp(30px,6vw,52px)}
.v62-shop-hero p{max-width:720px;margin:0 auto;color:#9eb2c5}
.v62-section{margin:28px 0}
.v62-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.v62-section-head>div{display:flex;align-items:center;gap:9px}
.v62-section-head h2{margin:0;font-size:20px}
.v62-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.v62-card{
  min-width:0;padding:11px;border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
}
.v62-card h3{margin:9px 0 2px;font-size:14px;line-height:1.15}
.v62-card p{margin:0 0 8px;color:#879bad;font-size:11px;line-height:1.3}
.v62-price{font-size:15px}
.v62-info-btn{
  display:block;margin-top:8px;padding:9px 7px;border-radius:11px;
  background:rgba(74,180,255,.09);border:1px solid rgba(74,180,255,.22);
  color:#91ddff;text-align:center;text-decoration:none;font-size:11px;font-weight:900;
}
.v62-vial,.v62-liquid,.v62-water{
  position:relative;height:92px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.08),rgba(2,9,19,.92));
}
.v62-vial:before,.v62-liquid:before,.v62-water:before{
  content:"";position:absolute;width:38px;height:58px;border-radius:6px 6px 9px 9px;
  border:1px solid rgba(255,255,255,.3);bottom:9px;
}
.v62-vial:after,.v62-liquid:after,.v62-water:after{
  content:"";position:absolute;width:30px;height:10px;border-radius:4px 4px 2px 2px;
  background:linear-gradient(#d8dde2,#7f8991);bottom:66px;
}
.v62-vial span,.v62-liquid span,.v62-water span{position:relative;z-index:2;font-size:10px;font-weight:900;margin-top:26px}
.v62-vial.white:before{background:linear-gradient(to top,#f4f4f4 0 17%,rgba(255,255,255,.06) 18%)}
.v62-vial.blue:before{background:linear-gradient(to top,#1479ff 0 19%,rgba(255,255,255,.06) 20%)}
.v62-vial.orange:before{background:linear-gradient(to top,#ff7a19 0 19%,rgba(255,255,255,.06) 20%)}
.v62-vial.amber:before{background:linear-gradient(to top,#dccdba 0 16%,rgba(130,67,13,.78) 17%)}
.v62-liquid.red-light:before{background:linear-gradient(to top,#d75762 0 62%,rgba(255,255,255,.05) 63%)}
.v62-liquid.red-dark:before{background:linear-gradient(to top,#831e2b 0 62%,rgba(255,255,255,.05) 63%)}
.v62-liquid.yellow:before{background:linear-gradient(to top,#d7db4c 0 62%,rgba(255,255,255,.05) 63%)}
.v62-liquid.brown:before{background:linear-gradient(to top,#69451f 0 70%,rgba(93,51,18,.75) 71%)}
.v62-water:before{background:linear-gradient(to top,rgba(202,239,255,.32) 0 65%,rgba(255,255,255,.05) 66%)}
.v62-extras{display:grid;gap:10px}
.v62-extra-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.v62-extra-row span strong,.v62-extra-row span small{display:block}
.v62-extra-row small{margin-top:3px;color:#8498aa}
.v62-policy{margin-top:34px;padding:20px;border-radius:18px;border:1px solid rgba(255,106,184,.18);background:linear-gradient(135deg,rgba(255,79,171,.05),rgba(63,161,255,.05))}
.v62-policy h2{margin-top:0}
.v62-policy>p{color:#9eb1c2}
.v62-contact-form{display:grid;gap:12px}
.v62-contact-form label{display:grid;gap:6px;font-size:12px;font-weight:800}
.v62-contact-form input,.v62-contact-form textarea{width:100%;box-sizing:border-box;padding:12px;border-radius:11px;border:1px solid rgba(255,255,255,.11);background:#071321;color:#eef7ff}
.v62-policy-check{grid-template-columns:20px 1fr!important;align-items:flex-start!important;font-weight:500!important;line-height:1.45;color:#9cb0c1}
.v62-policy-check input{width:auto;margin-top:3px}
.v62-submit{padding:14px;border:0;border-radius:12px;background:linear-gradient(90deg,#ff4fae,#3dafff);color:white;font-weight:900;cursor:pointer}
@media(min-width:760px){.v62-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1050px){.v62-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* V63 interest list */
.v63-price{
  display:block;
  margin:4px 0 8px;
  font-size:16px;
  font-weight:900;
  color:#f4f8ff;
}
.v63-add-interest{
  width:100%;
  padding:9px 7px;
  border-radius:11px;
  border:1px solid rgba(255,84,175,.24);
  background:linear-gradient(90deg,rgba(255,70,171,.13),rgba(67,167,255,.12));
  color:#fff;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}
.v63-add-interest.is-added{
  border-color:rgba(93,255,169,.28);
  background:rgba(93,255,169,.08);
  color:#91ffb9;
}
.v63-extra-select{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
}
.v63-extra-select input{margin-top:3px}
.v63-extra-select span strong,.v63-extra-select span small{display:block}
.v63-extra-select small{margin-top:3px;color:#8498aa}
.v63-list-panel{
  margin-top:30px;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(75,180,255,.18);
  background:linear-gradient(135deg,rgba(55,150,255,.05),rgba(255,80,176,.045));
}
.v63-list-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.v63-list-head>div{display:flex;align-items:center;gap:9px}
.v63-list-head h2{margin:0;font-size:20px}
.v63-list-head>span{font-size:11px;color:#8da3b5}
.v63-selected-list{display:grid;gap:8px}
.v63-selected-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.025);
}
.v63-selected-row strong,.v63-selected-row small{display:block}
.v63-selected-row small{margin-top:3px;color:#8195a6;font-size:11px}
.v63-selected-row button{
  border:0;
  background:transparent;
  color:#ff8bbd;
  font-size:22px;
  cursor:pointer;
}
.v63-list-note{
  margin:12px 0 0;
  color:#879bad;
  font-size:11px;
  line-height:1.45;
}

/* V64 clean text-only catalog cards */
.v62-card{
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:14px;
}
.v62-card h3{
  margin:0 0 5px;
  font-size:15px;
  line-height:1.18;
}
.v62-card p{
  min-height:30px;
  margin:0 0 8px;
}
.v63-price{
  margin-top:auto;
  padding-top:7px;
}
.v63-add-interest{
  margin-top:8px;
}
.v62-vial,.v62-liquid,.v62-water{
  display:none!important;
}
@media(max-width:640px){
  .v62-card{
    min-height:145px;
    padding:12px;
  }
  .v62-card h3{font-size:14px}
}

/* V66 reference total + automatic shipping */
.v66-reference-totals{
  margin-top:14px;
  padding:14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
}
.v66-reference-totals>div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:6px 0;
  font-size:13px;
}
.v66-reference-totals>div span{
  color:#98acbd;
}
.v66-reference-totals>div strong{
  color:#f4f8ff;
}
.v66-reference-grand{
  margin-top:5px;
  padding-top:10px!important;
  border-top:1px solid rgba(255,255,255,.08);
  font-size:16px!important;
}
.v66-reference-grand strong{
  color:#91ffb9!important;
}
.v66-reference-totals small{
  display:block;
  margin-top:8px;
  color:#7f93a5;
  font-size:10px;
  line-height:1.45;
}

/* V67 quantity + water/extras messaging */
.v67-qty{
  display:grid;
  grid-template-columns:34px 1fr 34px;
  gap:6px;
  align-items:center;
  margin-top:8px;
}
.v67-qty button{
  height:34px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:18px;
  cursor:pointer;
}
.v67-qty input{
  width:100%;
  height:34px;
  box-sizing:border-box;
  text-align:center;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.10);
  background:#071321;
  color:#fff;
  font-weight:800;
}
.v67-water-warning,
.v67-extras-hook{
  margin:14px 0 16px;
  padding:14px 16px;
  border-radius:15px;
}
.v67-water-warning{
  border:1px solid rgba(74,182,255,.25);
  background:rgba(74,182,255,.07);
}
.v67-extras-hook{
  border:1px solid rgba(255,86,177,.24);
  background:linear-gradient(90deg,rgba(255,75,175,.07),rgba(68,166,255,.06));
}
.v67-water-warning strong,
.v67-water-warning span,
.v67-extras-hook strong,
.v67-extras-hook span{
  display:block;
}
.v67-water-warning strong{
  color:#8dddff;
}
.v67-extras-hook strong{
  color:#ff8fc4;
}
.v67-water-warning span,
.v67-extras-hook span{
  margin-top:4px;
  color:#a7bacb;
  font-size:12px;
  line-height:1.45;
}

/* V69 floating list indicator + toast */
.v69-floating-list{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9998;
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,95,184,.28);
  background:rgba(5,16,30,.94);
  backdrop-filter:blur(14px);
  box-shadow:0 12px 34px rgba(0,0,0,.35);
  color:#fff;
  cursor:pointer;
}
.v69-cart-icon{font-size:17px}
.v69-cart-label{font-size:12px;font-weight:900}
.v69-cart-count{
  min-width:22px;
  height:22px;
  display:grid;
  place-items:center;
  padding:0 5px;
  border-radius:999px;
  background:linear-gradient(135deg,#ff55ad,#5baaff);
  color:#fff;
  font-size:11px;
  font-weight:900;
}
.v69-toast{
  position:fixed;
  left:50%;
  bottom:82px;
  transform:translate(-50%,18px);
  z-index:9999;
  width:min(90vw,390px);
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(4,14,27,.96);
  color:#f7fbff;
  box-shadow:0 14px 38px rgba(0,0,0,.38);
  text-align:center;
  font-size:12px;
  font-weight:800;
  opacity:0;
  pointer-events:none;
  transition:.22s ease;
}
.v69-toast.show{
  opacity:1;
  transform:translate(-50%,0);
}
@media(max-width:640px){
  .v69-floating-list{right:12px;bottom:12px}
  .v69-cart-label{display:none}
  .v69-floating-list{padding:10px}
  .v69-toast{bottom:70px}
}

/* V70 — highlight list briefly after floating-cart jump */
.v70-list-focus{
  outline:2px solid rgba(255,88,180,.45);
  box-shadow:0 0 0 6px rgba(255,88,180,.06), 0 18px 50px rgba(0,0,0,.25);
  transition:box-shadow .25s ease, outline-color .25s ease;
}

/* V71 GLOBAL ANNOUNCEMENT STRIPS */
.v71-top-ticker{
  position:relative;
  z-index:25;
  width:100%;
  overflow:hidden;
  border-top:1px solid rgba(72,181,255,.16);
  border-bottom:1px solid rgba(72,181,255,.22);
  background:linear-gradient(90deg,#031123,#061a35,#031123);
  color:#bfe8ff;
  white-space:nowrap;
}
.v71-ticker-track{
  display:inline-flex;
  align-items:center;
  gap:18px;
  width:max-content;
  min-width:200%;
  padding:9px 0;
  font-size:11px;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
  animation:v71TickerMove 24s linear infinite;
}
.v71-ticker-track span{display:inline-block}
.v71-ticker-track b{
  color:#ff6bb5;
  font-size:12px;
}
@keyframes v71TickerMove{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.v71-vacation-strip{
  position:relative;
  z-index:24;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 14px;
  width:100%;
  box-sizing:border-box;
  padding:10px 16px;
  border-bottom:1px solid rgba(255,92,177,.27);
  background:linear-gradient(90deg,rgba(255,59,154,.20),rgba(255,111,190,.12),rgba(74,169,255,.13));
  color:#f7f8ff;
  text-align:center;
  font-size:12px;
  line-height:1.35;
}
.v71-vacation-strip strong{
  color:#ff9ac8;
  font-weight:950;
  letter-spacing:.03em;
}
.v71-vacation-strip span{
  color:#dbe7f4;
  font-weight:650;
}
.v71-vacation-strip em{
  padding:4px 9px;
  border-radius:999px;
  border:1px solid rgba(255,218,86,.35);
  background:rgba(255,218,86,.08);
  color:#ffe27b;
  font-style:normal;
  font-weight:900;
  white-space:nowrap;
}
@media(max-width:640px){
  .v71-ticker-track{
    gap:14px;
    padding:8px 0;
    font-size:10px;
    animation-duration:20s;
  }
  .v71-vacation-strip{
    display:block;
    padding:9px 12px 10px;
    font-size:10.5px;
  }
  .v71-vacation-strip strong,
  .v71-vacation-strip span{
    display:block;
    margin-bottom:3px;
  }
  .v71-vacation-strip em{
    display:inline-block;
    margin-top:2px;
  }
}
@media (prefers-reduced-motion: reduce){
  .v71-ticker-track{animation:none}
}


/* V73 — easier login / register + robust account access */
.v33-account{
  font-weight:900!important;
  letter-spacing:.025em;
}
.mstide-auth-chooser{
  position:fixed;
  inset:0;
  z-index:10050;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(1,7,18,.84);
  backdrop-filter:blur(10px);
}
.mstide-auth-chooser.is-open{display:flex}
body.mstide-auth-chooser-open{overflow:hidden}
.mstide-auth-chooser-card{
  position:relative;
  width:min(460px,100%);
  padding:27px 22px 22px;
  border:1px solid rgba(78,177,255,.22);
  border-radius:24px;
  background:linear-gradient(155deg,#071425,#020a17 58%,#071121);
  box-shadow:0 30px 90px rgba(0,0,0,.55);
  color:#fff;
}
.mstide-auth-chooser-close{
  position:absolute;right:13px;top:11px;
  width:38px;height:38px;border:0;border-radius:50%;
  background:rgba(255,255,255,.05);color:#b9c9d8;font-size:23px;cursor:pointer;
}
.mstide-auth-symbol{
  width:52px;height:52px;border-radius:17px;display:grid;place-items:center;
  margin-bottom:13px;font-size:23px;
  border:1px solid rgba(255,82,174,.26);
  background:linear-gradient(135deg,rgba(255,66,164,.14),rgba(56,165,255,.14));
}
.mstide-auth-kicker{display:block;color:#ff84bd;font-size:10px;font-weight:950;letter-spacing:.18em}
.mstide-auth-chooser-card h2{margin:6px 0 7px;font-size:27px;line-height:1.05}
.mstide-auth-chooser-card>p{margin:0 0 18px;color:#91a7bb;font-size:13px;line-height:1.5}
.mstide-auth-choice{
  width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;
  margin-top:10px;padding:15px 14px;border-radius:16px;text-align:left;cursor:pointer;
  color:#fff;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);
}
.mstide-auth-choice:hover{transform:translateY(-1px);border-color:rgba(80,179,255,.34)}
.mstide-auth-choice>span{font-size:22px}
.mstide-auth-choice div strong,.mstide-auth-choice div small{display:block}
.mstide-auth-choice div strong{font-size:14px;letter-spacing:.02em}
.mstide-auth-choice div small{margin-top:3px;color:#8ea3b7;font-size:11px}
.mstide-auth-choice>b{font-size:20px;color:#75c8ff}
.mstide-auth-login-choice{border-color:rgba(72,174,255,.22)}
.mstide-auth-signup-choice{border-color:rgba(255,78,176,.20)}
.mstide-auth-signup-choice>b{color:#ff86bd}
.mstide-auth-help{margin-top:15px;padding-top:13px;border-top:1px solid rgba(255,255,255,.07);color:#7f93a6;font-size:10.5px;line-height:1.45;text-align:center}
@media(max-width:640px){
  .v33-account{width:100%;padding:13px 15px!important;background:linear-gradient(90deg,rgba(255,70,168,.12),rgba(58,163,255,.12))!important;border:1px solid rgba(255,255,255,.08)!important}
  .mstide-auth-chooser{align-items:flex-end;padding:10px}
  .mstide-auth-chooser-card{width:100%;border-radius:24px 24px 18px 18px;padding:25px 16px 18px}
  .mstide-auth-chooser-card h2{font-size:25px}
  .mstide-auth-choice{padding:16px 13px;min-height:72px}
}

/* V74 — MOBILE LIBRARY FIT FIX + TIPS BUTTON
   Scoped to guide/library layouts so existing desktop/site design is preserved. */

.v74-tip-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:8px 12px;
  border:1px solid rgba(255,92,176,.36);
  border-radius:10px;
  background:linear-gradient(135deg,rgba(255,79,171,.14),rgba(255,79,171,.05));
  color:#ff9dce!important;
  text-decoration:none!important;
  font-weight:900;
  white-space:nowrap;
  box-sizing:border-box;
}
.v74-tip-link:hover{
  border-color:rgba(255,125,194,.68);
  background:rgba(255,79,171,.14);
}
.inner-header .v74-tip-inner{
  margin-left:auto;
  font-size:.82rem;
}

/* Flex/grid children on guide pages must be allowed to shrink. */
.guide-layout,
.guide-main,
.guide-main > *,
.guide-banner,
.guide-banner > div,
.toc-card{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.guide-banner h2,
.guide-banner p,
.guide-main h1,
.guide-main h2,
.guide-main h3,
.guide-main p,
.protocol-highlight,
.protocol-stat{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}
.guide-main img,
.guide-main video,
.guide-main iframe{
  max-width:100%;
  height:auto;
}
.protocol-table-wrap{
  width:100%;
  max-width:100%;
  -webkit-overflow-scrolling:touch;
}

/* Mobile: stack guide banner and make every library section fit the viewport. */
@media(max-width:700px){
  .page-shell{
    width:100%;
    max-width:100%;
    padding-left:16px!important;
    padding-right:16px!important;
    box-sizing:border-box;
  }
  .guide-layout{
    display:block!important;
    width:100%;
    max-width:100%;
  }
  .toc-card{
    width:100%;
    max-width:100%;
    margin-bottom:20px;
  }
  .guide-main{
    display:block;
    width:100%;
    max-width:100%;
    overflow:visible;
  }
  .guide-banner{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr);
    align-items:start;
    width:100%;
    max-width:100%;
    padding:18px 16px!important;
    gap:10px!important;
  }
  .guide-banner > div{
    width:100%;
    max-width:100%;
  }
  .guide-banner h2{
    font-size:clamp(1.18rem,6vw,1.55rem)!important;
    line-height:1.18;
    white-space:normal!important;
  }
  .guide-banner p{
    font-size:.93rem;
    line-height:1.45;
    white-space:normal!important;
  }
  .guide-icon{
    font-size:1.15rem!important;
  }
  .protocol-grid{
    width:100%;
    grid-template-columns:minmax(0,1fr)!important;
  }
  .protocol-stat,
  .protocol-highlight{
    width:100%;
    box-sizing:border-box;
  }
  .variant-tabs{
    width:100%;
    max-width:100%;
  }
  .protocol-table-wrap{
    overflow-x:auto!important;
    overscroll-behavior-inline:contain;
  }
  .inner-header{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
  }
  .inner-header .brand{
    margin-right:auto;
  }
  .inner-header .v74-tip-inner{
    order:3;
    margin-left:0;
  }
  .v33-nav .v74-tip-link{
    width:100%;
    margin:4px 0;
  }
}

/* V75 — MS.TIDE LIBRARY MOBILE REDESIGN
   Mobile-only visual reorganization inspired by modern editorial/reference layouts.
   No third-party copy, colors, branding, or assets used. */

@media(max-width:700px){

  /* Overall reading width + rhythm */
  body{
    overflow-x:hidden;
  }
  .page-shell{
    width:100%;
    max-width:100%;
    padding-left:14px!important;
    padding-right:14px!important;
  }

  /* Header: compact and usable */
  .inner-header{
    padding-top:12px;
    padding-bottom:10px;
    row-gap:8px;
  }
  .inner-header .brand{
    min-width:0;
  }
  .inner-header .back-link{
    font-size:.82rem;
  }
  .inner-header .v74-tip-inner{
    margin-left:auto;
    padding:7px 10px;
    font-size:.76rem;
  }

  /* Hero: editorial, compact, centered on the information */
  .page-hero{
    padding:42px 2px 26px!important;
  }
  .page-hero .kicker{
    display:inline-block;
    margin-bottom:9px;
    font-size:.73rem;
    letter-spacing:.17em;
  }
  .page-hero h1{
    margin:0 0 14px!important;
    font-size:clamp(2.25rem,12vw,3.65rem)!important;
    line-height:.96!important;
    letter-spacing:-.045em!important;
    overflow-wrap:anywhere;
  }
  .page-hero p{
    margin:0;
    max-width:none;
    font-size:.98rem!important;
    line-height:1.58;
    color:#aebed0;
  }

  /* One clean content column */
  .guide-layout{
    display:flex!important;
    flex-direction:column;
    gap:16px!important;
    width:100%;
    max-width:100%;
  }

  /* Table of contents as its own clear card */
  .toc-card{
    order:0;
    position:static!important;
    width:100%!important;
    padding:17px!important;
    margin:0!important;
    border-radius:17px!important;
    background:
      linear-gradient(145deg,rgba(8,22,43,.96),rgba(4,12,27,.96))!important;
    border:1px solid rgba(91,167,255,.18)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.18);
  }
  .toc-card h3{
    margin:0 0 12px!important;
    padding:0 0 11px!important;
    font-size:1.02rem!important;
    border-bottom:1px solid rgba(96,184,255,.18)!important;
  }
  .toc-card a{
    display:flex!important;
    align-items:center;
    min-height:44px;
    margin:7px 0 0;
    padding:10px 12px!important;
    border-radius:11px!important;
    border:1px solid rgba(255,255,255,.055);
    background:rgba(255,255,255,.025);
    color:#c6d4e2!important;
    font-size:.9rem;
    line-height:1.28;
  }
  .toc-card a::after{
    content:"→";
    margin-left:auto;
    color:#55b8ff;
    font-weight:900;
  }

  .guide-main{
    order:1;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  /* Intro card */
  .guide-banner{
    width:100%!important;
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    gap:11px!important;
    align-items:start!important;
    padding:18px!important;
    margin:0 0 16px!important;
    border-radius:18px!important;
    border:1px solid rgba(0,181,255,.26)!important;
    background:
      radial-gradient(circle at 0 0,rgba(0,180,255,.12),transparent 42%),
      linear-gradient(145deg,rgba(4,38,68,.98),rgba(11,27,57,.97))!important;
    box-shadow:0 14px 38px rgba(0,0,0,.2);
  }
  .guide-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    margin:0!important;
    border-radius:10px;
    background:rgba(0,180,255,.10);
    color:#68caff;
    font-size:1rem!important;
  }
  .guide-banner h2{
    margin:0!important;
    font-size:1.18rem!important;
    line-height:1.2!important;
    letter-spacing:-.02em;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .guide-banner p{
    margin:6px 0 0!important;
    font-size:.88rem!important;
    line-height:1.5!important;
    color:#b5c7d9!important;
    white-space:normal!important;
  }

  /* Every major library section becomes a clean reading card */
  .guide-main > section{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    margin:0 0 16px!important;
    padding:18px 16px!important;
    border:1px solid rgba(255,255,255,.075);
    border-radius:18px;
    background:
      linear-gradient(180deg,rgba(8,16,31,.94),rgba(5,11,23,.96));
    box-shadow:0 10px 30px rgba(0,0,0,.15);
    overflow:hidden;
  }
  .guide-main > section > h2:first-child{
    margin-top:0!important;
  }
  .guide-main section h2{
    font-size:1.45rem!important;
    line-height:1.12!important;
    letter-spacing:-.025em;
    overflow-wrap:anywhere;
  }
  .guide-main section h3{
    font-size:1.08rem!important;
    line-height:1.25!important;
  }
  .guide-main section p,
  .guide-main section li{
    font-size:.94rem!important;
    line-height:1.62!important;
    color:#b8c5d2;
  }

  /* Variant selector becomes easy thumb-sized pills */
  .variant-tabs{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px!important;
    width:100%;
    margin:15px 0!important;
  }
  .variant-tabs button,
  .variant-tab{
    width:100%;
    min-height:42px;
    white-space:normal;
    text-align:center;
    border-radius:11px!important;
    font-size:.83rem!important;
  }

  /* Stats: 2-up when possible, otherwise stacked */
  .protocol-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .protocol-stat{
    min-width:0!important;
    padding:13px!important;
    border-radius:13px!important;
  }
  .protocol-stat span{
    margin-bottom:6px!important;
    font-size:.62rem!important;
  }
  .protocol-stat strong{
    display:block;
    font-size:.92rem!important;
    line-height:1.28;
    overflow-wrap:anywhere;
  }

  /* Highlight box */
  .protocol-highlight{
    padding:16px!important;
    border-radius:15px!important;
    max-width:100%!important;
  }
  .protocol-highlight h3{
    font-size:1.2rem!important;
  }

  /* Tables stay inside the card and swipe only themselves */
  .protocol-table-wrap,
  .table-wrap,
  .responsive-table{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    border-radius:12px;
  }
  table{
    max-width:none;
  }

  /* Buttons/links don't overflow */
  .guide-main a,
  .guide-main button{
    max-width:100%;
  }

  /* Long formulas/numbers cannot blow out viewport */
  code, pre{
    max-width:100%;
    overflow-x:auto;
  }

  /* Footer/bottom breathing room */
  .guide-main{
    padding-bottom:32px;
  }
}

@media(max-width:420px){
  .page-shell{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .page-hero h1{
    font-size:clamp(2.05rem,11.5vw,3rem)!important;
  }
  .guide-main > section{
    padding:16px 14px!important;
  }
  .protocol-grid{
    grid-template-columns:1fr!important;
  }
}




/* V78 — SMALL DECORATIVE VIAL + RESEARCH FOCUS ON LIBRARY DETAIL PAGES */
.v78-page-hero{
  padding-bottom:18px!important;
}
.v78-research-intro{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:100px minmax(0,1fr);
  align-items:center;
  gap:18px;
  margin:0 0 20px;
  padding:18px 20px;
  border:1px solid rgba(75,180,255,.16);
  border-radius:18px;
  background:
    radial-gradient(circle at 10% 20%,rgba(55,166,255,.09),transparent 34%),
    linear-gradient(135deg,rgba(8,20,39,.96),rgba(5,12,26,.97));
  box-shadow:0 14px 36px rgba(0,0,0,.17);
  overflow:hidden;
}
.v78-mini-vial{
  position:relative;
  width:78px;
  height:112px;
  margin:0 auto;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.28));
}
.v78-vial-cap{
  position:absolute;
  top:0;
  left:15px;
  width:48px;
  height:18px;
  border-radius:6px 6px 4px 4px;
  border:1px solid rgba(138,178,219,.34);
  background:linear-gradient(180deg,#b7c9d9,#53677a 52%,#233447);
  box-shadow:inset 0 2px 3px rgba(255,255,255,.35);
  z-index:3;
}
.v78-vial-neck{
  position:absolute;
  top:16px;
  left:22px;
  width:34px;
  height:15px;
  border-left:1px solid rgba(134,196,255,.30);
  border-right:1px solid rgba(134,196,255,.30);
  background:rgba(95,170,220,.07);
}
.v78-vial-body{
  position:absolute;
  left:8px;
  bottom:0;
  width:62px;
  height:84px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(126,202,255,.30);
  border-radius:12px 12px 14px 14px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.05),transparent 20%,transparent 72%,rgba(91,188,255,.08)),
    linear-gradient(180deg,rgba(13,45,69,.50),rgba(5,21,38,.68));
  box-shadow:inset 0 0 18px rgba(81,190,255,.08), 0 0 18px rgba(43,159,255,.05);
  overflow:hidden;
}
.v78-vial-body::after{
  content:"";
  position:absolute;
  left:7px;
  top:7px;
  width:8px;
  height:58px;
  border-radius:99px;
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0));
  opacity:.42;
}
.v78-vial-label{
  position:relative;
  z-index:2;
  width:52px;
  min-height:43px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  padding:5px 3px;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.08);
  border-radius:6px;
  background:linear-gradient(135deg,rgba(4,22,39,.92),rgba(14,31,56,.92));
  text-align:center;
}
.v78-vial-label span{
  color:#ff77b9;
  font-size:5px;
  font-weight:900;
  letter-spacing:.14em;
}
.v78-vial-label strong{
  max-width:100%;
  color:#f7fbff;
  font-size:8.5px;
  line-height:1.05;
  font-weight:950;
  overflow-wrap:anywhere;
}
.v78-vial-long .v78-vial-label strong{
  font-size:6.7px;
}
.v78-vial-label small{
  color:#65c8ff;
  font-size:4.6px;
  font-weight:900;
  letter-spacing:.12em;
}
.v78-research-copy{
  min-width:0;
}
.v78-research-kicker{
  display:block;
  margin:0 0 5px;
  color:#ff78b9;
  font-size:.68rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.14em;
}
.v78-research-copy h2{
  margin:0 0 7px!important;
  color:#f6f9ff;
  font-size:1.35rem!important;
  line-height:1.12!important;
  letter-spacing:-.02em;
}
.v78-research-copy p{
  margin:0!important;
  color:#aebfd0!important;
  font-size:.92rem!important;
  line-height:1.55!important;
}

@media(max-width:700px){
  .v78-page-hero{
    padding-bottom:12px!important;
  }
  .v78-research-intro{
    grid-template-columns:82px minmax(0,1fr);
    gap:12px;
    margin-bottom:16px;
    padding:14px 14px;
    border-radius:16px;
  }
  .v78-mini-vial{
    width:67px;
    height:96px;
  }
  .v78-vial-cap{
    left:13px;
    width:41px;
    height:16px;
  }
  .v78-vial-neck{
    top:14px;
    left:19px;
    width:29px;
    height:14px;
  }
  .v78-vial-body{
    left:6px;
    width:55px;
    height:72px;
    border-radius:10px 10px 12px 12px;
  }
  .v78-vial-label{
    width:46px;
    min-height:39px;
    padding:4px 2px;
  }
  .v78-vial-label strong{
    font-size:7.5px;
  }
  .v78-vial-long .v78-vial-label strong{
    font-size:6px;
  }
  .v78-research-kicker{
    font-size:.58rem;
  }
  .v78-research-copy h2{
    margin-bottom:5px!important;
    font-size:1.08rem!important;
  }
  .v78-research-copy p{
    font-size:.82rem!important;
    line-height:1.45!important;
  }
}

@media(max-width:370px){
  .v78-research-intro{
    grid-template-columns:70px minmax(0,1fr);
    padding:12px;
    gap:10px;
  }
  .v78-mini-vial{
    transform:scale(.90);
    transform-origin:center;
  }
}


/* V79 APOYAME IN ACCOUNT */
.v74-tip-link{display:none!important}
.mstide-support-card{
  display:flex;align-items:center;gap:14px;width:100%;margin:18px 0 24px;
  padding:18px 20px;border-radius:20px;text-decoration:none;color:#fff;
  border:1px solid rgba(255,69,183,.72);
  background:linear-gradient(110deg,rgba(255,45,167,.12),rgba(73,139,255,.10));
  box-shadow:0 0 24px rgba(255,47,176,.10), inset 0 0 0 1px rgba(89,176,255,.08);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.mstide-support-card:hover{transform:translateY(-1px);box-shadow:0 0 28px rgba(255,47,176,.18);border-color:#ff4fbd}
.mstide-support-icon{
  flex:0 0 54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:27px;
  border:1px solid rgba(255,69,183,.58);background:rgba(15,28,52,.72)
}
.mstide-support-copy{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.mstide-support-copy strong{font-size:1.14rem;line-height:1.15;color:#ff72c7}
.mstide-support-copy span{font-size:.95rem;line-height:1.45;color:#b9c5da}
.mstide-support-arrow{font-size:2rem;line-height:1;color:#fff;opacity:.92}
@media(max-width:560px){
  .mstide-support-card{padding:15px 14px;gap:11px;border-radius:18px;margin:16px 0 22px}
  .mstide-support-icon{flex-basis:46px;height:46px;font-size:23px;border-radius:14px}
  .mstide-support-copy strong{font-size:1.06rem}
  .mstide-support-copy span{font-size:.88rem;line-height:1.38}
  .mstide-support-arrow{font-size:1.75rem}
}

/* V80 - compact home hero, subscription benefits, youtube tile, static VIP community */
.v80-hero-compact{
  min-height:auto;
  padding-top:42px;
  padding-bottom:20px;
}
.v80-hero-kicker{
  margin:0 auto 10px;
  text-align:center;
  color:#d9e9ff;
  font-size:clamp(16px,2.2vw,22px);
  font-weight:900;
  letter-spacing:.02em;
}
.v80-benefits-hero{
  width:min(780px,100%);
  margin:0 auto 26px;
  padding:18px 18px 14px;
  border:1px solid rgba(73,129,235,.28);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(9,24,60,.84),rgba(34,16,58,.72));
  box-shadow:0 0 28px rgba(41,88,187,.10), inset 0 0 26px rgba(255,91,172,.05);
  text-align:center;
}
.v80-benefits-hero strong{
  display:block;
  margin-bottom:12px;
  font-size:clamp(20px,2.6vw,28px);
  color:#fff;
}
.v80-benefit-pills{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
}
.v80-benefit-pills span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(104,154,255,.35);
  background:rgba(2,12,34,.56);
  color:#d9e8ff;
  font-size:13px;
  font-weight:800;
}
.v80-feature-static{
  cursor:default;
}
.v80-feature-static:hover{
  transform:none;
}
@media(max-width:620px){
  .v80-hero-compact{
    padding-top:28px;
    padding-bottom:10px;
  }
  .v41-tagline{
    margin:0 auto 16px;
  }
  .v80-hero-kicker{
    font-size:18px;
    line-height:1.35;
    margin-bottom:8px;
  }
  .v80-benefits-hero{
    margin-bottom:18px;
    padding:15px 12px 12px;
    border-radius:18px;
  }
  .v80-benefits-hero strong{
    font-size:20px;
    margin-bottom:10px;
  }
  .v80-benefit-pills{
    gap:8px;
  }
  .v80-benefit-pills span{
    min-height:34px;
    padding:7px 12px;
    font-size:12px;
  }
  .v33-hero-actions .v33-btn{
    min-height:60px;
    font-size:16px;
  }
  .v33-free-note{
    font-size:14px;
    margin-top:8px;
  }
  .v33-features{
    padding:20px 16px 32px;
    gap:6px;
  }
  .v33-feature{
    padding:18px 8px;
  }
  .v33-feature b{
    font-size:28px;
    margin-bottom:10px;
  }
  .v33-feature h3{
    font-size:15px;
    line-height:1.25;
  }
  .v33-feature p{
    font-size:12px;
    line-height:1.45;
  }
}


/* V85 — YouTube logo on homepage card */
.v85-youtube-mark{display:flex !important;justify-content:center;align-items:center;margin-bottom:10px;line-height:1;}
.v85-youtube-mark svg{display:block;width:38px;height:auto;filter:drop-shadow(0 8px 18px rgba(255,0,51,.28));}
@media(max-width:620px){.v85-youtube-mark svg{width:34px;}}

/* V87 — legal links for AdSense readiness */
.mstide-legal-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;padding:20px 16px 24px;border-top:1px solid rgba(113,156,255,.18);background:rgba(1,8,24,.82);color:#93a8c9;font-size:12px;text-align:center}
.mstide-legal-links a{color:#b9d8ff;text-decoration:none}
.mstide-legal-links a:hover{text-decoration:underline;color:#ff87c8}
@media(max-width:620px){.mstide-legal-links{flex-direction:column;gap:7px;padding:18px 14px 22px}}
