/* ============================================================
   Remédios na viagem (/remedios-viagem/) - estilos escopados
   Carregado por css.php quando $pag == "remedios-viagem/def".
   Prefixo rmd- : nao conflita com bootstrap.min.css / style.css

   Paleta da marca: #003766 (azul) e #aac046 (verde).
   Sobre o verde: com texto branco ele rende 2,03:1 de contraste e
   reprova em qualquer criterio WCAG. Por isso, todo botao verde leva
   texto em #003766 (5,95:1) e as ocorrencias pequenas usam o tom
   escurecido --rmd-accent-deep.
   ============================================================ */
.rmd-page{
  --rmd-navy:#003766;
  --rmd-navy-deep:#002545;
  --rmd-blue:#1466b8;
  --rmd-accent:#aac046;
  --rmd-accent-deep:#7d9429;
  --rmd-accent-soft:#f2f6e4;
  --rmd-ink:#3b4249;
  --rmd-muted:#767b7f;
  --rmd-line:#e3e8ee;
  --rmd-bg:#f6f9fc;
  --rmd-ok:#5f7318;
  --rmd-warn:#b3541e;
  --rmd-danger:#b3261e;
  --rmd-radius:8px;
  color:var(--rmd-ink);
  line-height:1.7;
  /* style.css aplica Lato em p/a/span/ul/input; details, summary e div nao entram naquela
     lista e cairiam no Helvetica do bootstrap */
  font-family:Lato,sans-serif;
}
.rmd-page *,.rmd-page *::before,.rmd-page *::after{box-sizing:border-box}
/* h1-h6 do style.css sao Merriweather/serif (fonte nem carregada no head) */
.rmd-page h2,.rmd-page h3,.rmd-page h4,.rmd-page summary,.rmd-page label,.rmd-page input,
.rmd-page select,.rmd-page button{font-family:Lato,sans-serif}

.rmd-page h2{
  font-size:22px;color:var(--rmd-navy);margin:0 0 16px;font-weight:700;
  display:flex;align-items:center;gap:10px;
}
.rmd-page h2::before{content:'';width:22px;height:3px;background:var(--rmd-accent);border-radius:2px;flex:none}
.rmd-page h3{font-size:17px;color:var(--rmd-navy);font-weight:700;margin:0 0 10px}
.rmd-block{margin:0 0 44px}
.rmd-lead{font-size:16px}

/* ---- Como funciona (passos) ---- */
.rmd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none;counter-reset:rmdstep}
.rmd-steps li{
  position:relative;background:#fff;border:1px solid var(--rmd-line);border-radius:var(--rmd-radius);
  padding:22px 20px 20px;box-shadow:0 2px 10px rgba(0,55,102,.05);
}
.rmd-steps li::before{
  counter-increment:rmdstep;content:counter(rmdstep);
  display:flex;align-items:center;justify-content:center;
  width:32px;height:32px;border-radius:50%;background:var(--rmd-navy);color:#fff;
  font-weight:700;font-size:15px;margin-bottom:12px;
}
.rmd-steps h3{margin:0 0 6px;font-size:15px}
.rmd-steps p{margin:0;font-size:14px;color:var(--rmd-muted)}

/* ---- Formulário ---- */
.rmd-form-card{
  background:#fff;border:1px solid var(--rmd-line);border-top:4px solid var(--rmd-accent);
  border-radius:var(--rmd-radius);padding:32px;box-shadow:0 6px 26px rgba(0,55,102,.09);margin:0 0 48px;
  scroll-margin-top:20px;
}
.rmd-form-card > h2{margin-top:0}
.rmd-form-card .rmd-hint{color:var(--rmd-muted);font-size:14px;margin:-6px 0 24px}

.rmd-field{margin:0 0 24px}
.rmd-label{display:block;font-weight:700;color:var(--rmd-navy);font-size:15px;margin:0 0 4px}
.rmd-sublabel{display:block;font-size:13px;color:var(--rmd-muted);margin:0 0 12px;font-weight:400}

/* destinos como cartões-rádio */
.rmd-destinos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rmd-destino{position:relative;margin:0}
.rmd-destino input{position:absolute;opacity:0;width:1px;height:1px}
.rmd-destino span{
  display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;
  padding:16px 10px;border:2px solid var(--rmd-line);border-radius:var(--rmd-radius);
  background:#fff;cursor:pointer;font-weight:700;color:var(--rmd-navy);font-size:15px;
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.rmd-destino span small{display:block;font-weight:400;font-size:12px;color:var(--rmd-muted)}
/* bandeiras: SVG do /css/flags/ em vez de emoji - o Windows nao renderiza
   os emoji de bandeira (regional indicators) e mostrava "CA", "AU", "US" */
.rmd-page img.rmd-flag{
  width:30px;height:30px;flex:none;display:block;border-radius:50%;
  object-fit:cover;border:1px solid rgba(0,55,102,.15);background:#fff;
}
.rmd-destino span:hover{border-color:#b9cadb}
.rmd-destino input:focus-visible + span{outline:2px solid var(--rmd-blue);outline-offset:2px}
.rmd-destino input:checked + span{
  border-color:var(--rmd-navy);background:#f1f6fa;box-shadow:0 4px 14px rgba(0,55,102,.12);
}

/* lista de remédios */
.rmd-item{position:relative;display:flex;align-items:center;gap:10px;margin:0 0 10px}
.rmd-num{
  flex:none;width:28px;height:28px;border-radius:50%;background:var(--rmd-bg);color:var(--rmd-navy);
  border:1px solid var(--rmd-line);display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:700;
}
.rmd-item input[type=text]{
  flex:1 1 auto;width:100%;padding:12px 14px;font-size:15px;border:1px solid var(--rmd-line);
  border-radius:var(--rmd-radius);outline:none;background:#fff;color:var(--rmd-ink);height:auto;
}
.rmd-item input[type=text]:focus{border-color:var(--rmd-navy);box-shadow:0 2px 10px rgba(0,55,102,.14)}
.rmd-item input[type=text]::placeholder{color:#a8b0b7}
.rmd-remove{
  flex:none;width:34px;height:34px;border:1px solid var(--rmd-line);background:#fff;border-radius:var(--rmd-radius);
  color:var(--rmd-muted);font-size:16px;line-height:1;cursor:pointer;transition:all .15s;
}
.rmd-remove:hover{border-color:#e6bcb8;background:#fdf3f2;color:var(--rmd-danger)}

.rmd-list-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 0}
.rmd-add{
  border:1px dashed var(--rmd-navy);background:#fff;color:var(--rmd-navy);font-weight:700;font-size:14px;
  padding:10px 18px;border-radius:var(--rmd-radius);cursor:pointer;transition:all .15s;
}
.rmd-add:hover{background:var(--rmd-navy);color:#fff;border-style:solid}
.rmd-count{font-size:13px;color:var(--rmd-muted);margin:0}

.rmd-input{
  width:100%;padding:12px 14px;font-size:15px;border:1px solid var(--rmd-line);
  border-radius:var(--rmd-radius);outline:none;background:#fff;color:var(--rmd-ink);height:auto;
}
.rmd-input:focus{border-color:var(--rmd-navy);box-shadow:0 2px 10px rgba(0,55,102,.14)}

.rmd-submit{
  width:100%;border:0;background:var(--rmd-accent);color:var(--rmd-navy);font-weight:700;font-size:17px;
  padding:16px 20px;border-radius:var(--rmd-radius);cursor:pointer;transition:filter .15s;
  box-shadow:0 4px 14px rgba(170,192,70,.38);
}
.rmd-submit:hover{filter:brightness(.94)}
.rmd-submit[disabled]{opacity:.65;cursor:default;box-shadow:none}

.rmd-privacy{font-size:12.5px;color:var(--rmd-muted);margin:16px 0 0;line-height:1.6}
.rmd-alert{border-radius:var(--rmd-radius);padding:16px 18px;margin:0 0 20px;font-size:15px}
.rmd-alert-erro{background:#fdf3f2;border:1px solid #f0cfcb;color:var(--rmd-danger)}
.rmd-ok{text-align:center;padding:14px 0 6px}
.rmd-ok-ic{
  width:70px;height:70px;border-radius:50%;background:var(--rmd-accent-soft);color:var(--rmd-ok);
  display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 18px;
}
.rmd-ok-titulo{font-size:24px;font-weight:700;color:var(--rmd-navy);margin:0 0 14px;line-height:1.3}
.rmd-ok p{max-width:560px;margin:0 auto 12px}
.rmd-ok-mail{font-weight:700;color:var(--rmd-navy)}

/* ---- Cartões por destino ---- */
.rmd-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rmd-card{
  background:#fff;border:1px solid var(--rmd-line);border-radius:var(--rmd-radius);
  padding:22px;box-shadow:0 2px 10px rgba(0,55,102,.05);
}
.rmd-card-head{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.rmd-card-head h3{margin:0}
.rmd-card ul{margin:0;padding:0 0 0 18px}
.rmd-card li{margin:0 0 9px;font-size:14px}
.rmd-card li:last-child{margin-bottom:0}
.rmd-tag{
  display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  padding:2px 8px;border-radius:999px;background:var(--rmd-accent-soft);color:var(--rmd-navy);margin:0 0 12px;
}

/* ---- Listas de conteúdo ---- */
.rmd-check{list-style:none;margin:0;padding:0}
.rmd-check li{position:relative;padding:0 0 0 30px;margin:0 0 12px;font-size:15px}
.rmd-check li::before{
  content:'\f00c';font-family:'Font Awesome 5 Free';font-weight:900;position:absolute;left:0;top:1px;
  color:var(--rmd-ok);font-size:14px;
}
.rmd-warnlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.rmd-warnlist li{
  position:relative;padding:14px 16px 14px 44px;background:#fff;border:1px solid var(--rmd-line);
  border-left:3px solid var(--rmd-warn);border-radius:var(--rmd-radius);font-size:14px;
}
/* amarelo/ambar aqui e cor funcional de alerta, como o vermelho do erro - nao e cor de marca */
.rmd-warnlist li::before{
  content:'\f071';font-family:'Font Awesome 5 Free';font-weight:900;position:absolute;left:16px;top:15px;
  color:var(--rmd-warn);font-size:14px;
}
.rmd-warnlist strong{color:var(--rmd-navy)}

.rmd-note{
  background:var(--rmd-bg);border:1px solid var(--rmd-line);border-radius:var(--rmd-radius);
  padding:18px 20px;font-size:14px;color:var(--rmd-ink);margin:24px 0 0;
}
.rmd-note strong{color:var(--rmd-navy)}

/* ---- FAQ (details/summary, indexável sem JS) ---- */
.rmd-item-faq{
  background:#fff;border:1px solid var(--rmd-line);border-radius:var(--rmd-radius);
  margin:0 0 10px;overflow:hidden;transition:box-shadow .15s,border-color .15s;
}
.rmd-item-faq[open]{box-shadow:0 4px 16px rgba(0,55,102,.08);border-color:#c9d7e5}
.rmd-item-faq summary{
  cursor:pointer;list-style:none;padding:16px 46px 16px 20px;position:relative;
  font-weight:700;color:var(--rmd-navy);font-size:15.5px;
}
.rmd-item-faq summary::-webkit-details-marker{display:none}
.rmd-item-faq summary::after{
  content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);
  font-size:22px;font-weight:400;color:var(--rmd-accent-deep);line-height:1;
}
.rmd-item-faq[open] summary::after{content:'\2212'}
.rmd-item-faq summary:hover{background:#fafcfe}
.rmd-answer{padding:0 20px 18px;font-size:14.5px}
.rmd-answer p{margin:0 0 10px}
.rmd-answer p:last-child{margin-bottom:0}
.rmd-answer ul,.rmd-answer ol{margin:0 0 10px;padding-left:20px}
.rmd-answer li{margin:0 0 6px}

/* ---- CTA ---- */
.rmd-cta{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;
  background:linear-gradient(135deg,var(--rmd-navy) 0%,var(--rmd-navy-deep) 100%);
  border-radius:var(--rmd-radius);padding:28px 32px;margin:0;
}
.rmd-cta h2{color:#fff;margin:0 0 6px;font-size:20px}
.rmd-cta h2::before{display:none}
.rmd-cta p{color:#c5d6e6;margin:0;font-size:14.5px}
.rmd-cta-btn{
  flex:none;background:var(--rmd-accent);color:var(--rmd-navy);font-weight:700;font-size:15px;
  padding:14px 26px;border-radius:var(--rmd-radius);text-decoration:none;
}
.rmd-cta-btn:hover,.rmd-cta-btn:focus{background:#9bb03a;color:var(--rmd-navy);text-decoration:none}

/* ---- Responsivo ---- */
@media (max-width:991px){
  .rmd-cards,.rmd-steps{grid-template-columns:1fr 1fr}
  .rmd-cards .rmd-card:last-child,.rmd-steps li:last-child{grid-column:1 / -1}
}
@media (max-width:767px){
  .rmd-form-card{padding:22px 18px}
  .rmd-cards,.rmd-steps,.rmd-warnlist,.rmd-destinos{grid-template-columns:1fr}
  .rmd-cards .rmd-card:last-child,.rmd-steps li:last-child{grid-column:auto}
  .rmd-destino span{flex-direction:row;justify-content:flex-start;gap:12px;text-align:left;padding:14px 16px}
  .rmd-destino span small{display:inline}
  .rmd-cta{padding:24px 20px;text-align:center;justify-content:center}
  .rmd-page h2{font-size:19px}
}
