/* MedicGLP · folha de estilo das páginas de review (multi-idioma) */
:root{
  --ground:#FFFFFF;
  --paper:#F5F7F6;
  --ink:#15201F;
  --ink-2:#41524F;
  --ink-3:#6E7D7A;
  --rule:#DCE3E1;
  --rule-2:#BCC8C5;
  --teal:#0E6870;
  --teal-dk:#0A4E55;
  --teal-soft:#E2EFF0;
  --rust:#9C3A1C;
  --rust-soft:#F7E7E0;
  --green:#2F6B3E;
  --green-soft:#E3EFE6;
  --amber:#8A6B18;
  --amber-soft:#F4EDD9;
  --shadow:0 1px 2px rgba(21,32,31,.05),0 10px 30px -20px rgba(21,32,31,.35);
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --serif:Georgia,"Iowan Old Style","Times New Roman",serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--ground);color:var(--ink);
  font-family:var(--sans);font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--teal)}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}
strong{font-weight:650}

.wrap{max-width:1140px;margin:0 auto;padding:0 22px}
.col{max-width:720px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;background:#fff;padding:8px 14px;z-index:99}

/* ---------- topo ---------- */
.disclosure-bar{background:var(--paper);border-bottom:1px solid var(--rule);font-size:13.5px;color:var(--ink-3)}
.disclosure-bar .wrap{padding-top:9px;padding-bottom:9px}
.site-head{border-bottom:1px solid var(--rule)}
.site-head .wrap{display:flex;align-items:center;gap:18px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:9px;font-weight:700;font-size:17px;color:var(--ink);text-decoration:none;letter-spacing:-.01em}
.logo svg{flex:none}
.site-nav{margin-left:auto;display:flex;gap:20px;font-size:14.5px;flex-wrap:wrap}
.site-nav a{color:var(--ink-2);text-decoration:none}
.site-nav a:hover{color:var(--teal);text-decoration:underline}

/* ---------- cabeçalho do artigo ---------- */
.article-head{padding:38px 0 8px}
.kicker{font-family:var(--mono);font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);margin:0 0 12px}
h1{font-family:var(--serif);font-size:clamp(30px,4.6vw,46px);line-height:1.14;letter-spacing:-.015em;margin:0 0 18px;text-wrap:balance;font-weight:600}
.standfirst{font-size:19.5px;line-height:1.55;color:var(--ink-2);margin:0 0 22px}
.byline{display:flex;align-items:center;gap:13px;padding:15px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-size:14.5px;color:var(--ink-3);flex-wrap:wrap}
.byline img{width:44px;height:44px;border-radius:50%;flex:none}
.byline b{color:var(--ink);font-weight:650}
.byline .sep{color:var(--rule-2)}

/* ---------- layout ---------- */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:52px;padding:34px 0 60px;align-items:start}
.sidebar{position:sticky;top:20px;display:flex;flex-direction:column;gap:18px}

/* ---------- tipografia do corpo ---------- */
h2{font-family:var(--serif);font-size:clamp(23px,3vw,31px);line-height:1.22;letter-spacing:-.01em;margin:46px 0 16px;font-weight:600;text-wrap:balance}
h2:first-child{margin-top:0}
h3{font-size:19px;line-height:1.32;margin:30px 0 10px;font-weight:650}
.lead{font-size:18.5px;color:var(--ink-2)}
figure{margin:26px 0}
figure img{border-radius:3px}
figcaption{font-size:13.5px;color:var(--ink-3);margin-top:9px;line-height:1.5}

/* ---------- veredicto ---------- */
.verdict-box{border:1px solid var(--rule);border-top:3px solid var(--teal);background:var(--paper);padding:24px 26px;margin:0 0 34px;border-radius:3px}
.verdict-box h2{margin:0 0 14px;font-size:22px}
.verdict-box ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:9px;font-size:16.5px}
.verdict-box li::marker{color:var(--teal)}
.score-row{display:flex;align-items:baseline;gap:12px;margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--rule)}
.score{font-family:var(--serif);font-size:44px;line-height:1;color:var(--teal);font-weight:600}
.score small{font-size:17px;color:var(--ink-3);font-weight:400}
.score-label{font-size:14.5px;color:var(--ink-3);line-height:1.4}

/* ---------- tabelas ---------- */
.tw{overflow-x:auto;margin:24px 0;border:1px solid var(--rule);border-radius:3px}
table{border-collapse:collapse;width:100%;min-width:520px;font-size:15.5px}
th,td{text-align:left;padding:12px 15px;border-bottom:1px solid var(--rule);vertical-align:top}
thead th{background:var(--paper);font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);font-weight:650;border-bottom:1px solid var(--rule-2)}
tbody tr:last-child td{border-bottom:0}
td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
.chip{display:inline-block;font-size:12.5px;font-family:var(--mono);padding:2px 7px;border-radius:3px;white-space:nowrap}
.chip.no{background:var(--rust-soft);color:var(--rust)}
.chip.si{background:var(--green-soft);color:var(--green)}
.chip.mid{background:var(--amber-soft);color:var(--amber)}

/* ---------- caixas ---------- */
.note{border-left:3px solid var(--teal);background:var(--paper);padding:18px 22px;margin:26px 0;border-radius:0 3px 3px 0;font-size:16.5px}
.note.warn{border-left-color:var(--rust);background:var(--rust-soft)}
.note.good{border-left-color:var(--green);background:var(--green-soft)}
.note h3{margin:0 0 8px;font-size:17px}
.note p:last-child{margin-bottom:0}

/* ---------- checklist de checkout ---------- */
.checkout-guard{border:2px solid var(--rust);border-radius:4px;padding:26px;margin:32px 0;background:#fff}
.checkout-guard h2{margin:0 0 6px;color:var(--rust);font-size:25px}
.guard-sub{font-size:16px;color:var(--ink-2);margin:0 0 20px}
.guard-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;counter-reset:g}
.guard-list li{position:relative;padding-left:44px;min-height:30px;font-size:16px;line-height:1.55}
.guard-list li::before{
  counter-increment:g;content:counter(g);
  position:absolute;left:0;top:1px;
  width:30px;height:30px;border-radius:50%;background:var(--rust);color:#fff;
  display:grid;place-items:center;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;
}
.guard-list b{display:block}

/* ---------- preços ---------- */
.pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:26px 0}
.pack{border:1px solid var(--rule);border-radius:4px;padding:20px;display:flex;flex-direction:column;gap:6px;background:#fff}
.pack.best{border:2px solid var(--teal);box-shadow:var(--shadow)}
.pack .tagbest{align-self:flex-start;background:var(--teal);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:3px;margin-bottom:4px}
.pack .name{font-weight:650;font-size:16px}
.pack .unit{font-family:var(--serif);font-size:32px;line-height:1.1;color:var(--ink);font-variant-numeric:tabular-nums}
.pack .unit span{font-size:14px;color:var(--ink-3);font-family:var(--sans)}
.pack .was{font-size:14px;color:var(--ink-3);text-decoration:line-through}
.pack .total{font-size:14.5px;color:var(--ink-2);font-variant-numeric:tabular-nums}
.pack .perday{font-size:14.5px;color:var(--teal);font-weight:650;font-variant-numeric:tabular-nums}
.pack .save{font-size:13.5px;color:var(--rust);font-weight:650}

/* ---------- CTA ---------- */
.cta-block{border:1px solid var(--rule);background:var(--paper);border-radius:4px;padding:26px;margin:32px 0;text-align:center}
.cta-block h3{margin:0 0 8px;font-size:20px}
.cta-block p{font-size:15.5px;color:var(--ink-2);max-width:52ch;margin:0 auto 18px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:54px;padding:0 30px;border-radius:5px;
  background:var(--teal);color:#fff;text-decoration:none;font-weight:700;font-size:16.5px;
  border:1px solid var(--teal-dk);
}
.btn:hover{background:var(--teal-dk)}
.btn.ghost{background:#fff;color:var(--teal);border:1px solid var(--rule-2);font-weight:650}
.btn.ghost:hover{background:var(--teal-soft)}
.btn-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cta-fine{font-size:13px;color:var(--ink-3);margin:14px 0 0}

/* ---------- sidebar ---------- */
.side-card{border:1px solid var(--rule);border-radius:4px;padding:18px;background:#fff;font-size:14.5px}
.side-card h3{margin:0 0 12px;font-size:15px;letter-spacing:.02em}
.side-card .bottle{max-width:150px;margin:0 auto 12px}
.side-card .btn{width:100%;min-height:48px;font-size:15.5px;padding:0 16px}
.side-facts{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px;color:var(--ink-2)}
.side-facts li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--rule);padding-bottom:7px}
.side-facts li:last-child{border-bottom:0;padding-bottom:0}
.side-facts b{color:var(--ink);text-align:right;font-weight:650}
.toc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.toc a{color:var(--ink-2);text-decoration:none;font-size:14px;line-height:1.4}
.toc a:hover{color:var(--teal);text-decoration:underline}

/* ---------- prós e contras ---------- */
.proscons{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px;margin:26px 0}
.pc{border:1px solid var(--rule);border-radius:4px;padding:20px}
.pc.pro{border-top:3px solid var(--green)}
.pc.con{border-top:3px solid var(--rust)}
.pc h3{margin:0 0 12px;font-size:17px}
.pc ul{margin:0;padding-left:19px;display:flex;flex-direction:column;gap:9px;font-size:15.5px;color:var(--ink-2)}
.pc.pro li::marker{color:var(--green)}
.pc.con li::marker{color:var(--rust)}

/* ---------- FAQ ---------- */
details{border-bottom:1px solid var(--rule);padding:15px 0}
details summary{cursor:pointer;font-weight:650;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+";color:var(--teal);font-weight:400;font-size:22px;line-height:1;flex:none}
details[open] summary::after{content:"−"}
details p{margin:11px 0 0;color:var(--ink-2);font-size:16px}

/* ---------- fontes / autor ---------- */
.sources{font-size:14.5px;color:var(--ink-2)}
.sources ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.author-box{display:grid;grid-template-columns:76px 1fr;gap:18px;border:1px solid var(--rule);border-radius:4px;padding:20px;margin:34px 0;background:var(--paper)}
.author-box img{width:76px;height:76px;border-radius:50%}
.author-box h3{margin:0 0 6px;font-size:17px}
.author-box p{font-size:15px;color:var(--ink-2);margin:0}

/* ---------- rodapé ---------- */
.site-foot{border-top:1px solid var(--rule);background:var(--paper);margin-top:20px}
.site-foot .wrap{padding-top:34px;padding-bottom:46px;display:flex;flex-direction:column;gap:16px}
.foot-nav{display:flex;gap:20px;flex-wrap:wrap;font-size:14.5px}
.foot-nav a{color:var(--ink-2)}
.legal{font-size:13.5px;color:var(--ink-3);max-width:82ch;line-height:1.6}

/* ---------- barra fixa mobile ---------- */
.sticky-cta{display:none}

@media (max-width:960px){
  .layout{grid-template-columns:1fr;gap:0;padding-bottom:40px}
  .sidebar{position:static;margin-top:40px}
}
@media (max-width:640px){
  body{font-size:16.5px}
  .wrap{padding:0 16px}
  .byline{font-size:13.5px}
  .checkout-guard{padding:20px 17px}
  .author-box{grid-template-columns:1fr}
  .author-box img{margin-bottom:-4px}
  body{padding-bottom:74px}
  .sticky-cta{
    display:block;position:fixed;left:0;right:0;bottom:0;z-index:60;
    padding:9px 14px;background:rgba(255,255,255,.96);border-top:1px solid var(--rule);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  .sticky-cta .btn{width:100%;min-height:50px;font-size:16px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
