/* ============================================================
   ICONE MEDICAL - Componentes: ROI + Modal Duvidas + ScrollTop
   ============================================================ */

/* ---- ROI Section ---- */
.icone-roi-section {
  background: #f4f8fb;
  padding: 60px 0;
}
.roi-header {
  text-align: center;
  margin-bottom: 36px;
}
.roi-titulo {
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: #04dacb !important;
  margin-bottom: 8px !important;
}
.roi-header p { color: #555 !important; font-size: 1rem !important; }
.roi-header p strong { color: #1a2a3a !important; }

.roi-card {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.08) !important;
  padding: 36px !important;
  display: flex !important;
  flex-direction: row !important;
  gap: 40px !important;
  flex-wrap: wrap !important;
}
.roi-left { flex: 1 !important; min-width: 260px !important; }
.roi-left h4 {
  font-size: 1.1rem !important; font-weight: 700 !important;
  color: #04dacb !important; margin-bottom: 28px !important;
}
.roi-slider-group { margin-bottom: 28px !important; }
.roi-slider-label {
  display: flex !important; justify-content: space-between !important;
  align-items: center !important; margin-bottom: 10px !important;
  font-size: 0.95rem !important; color: #333 !important;
}
.roi-slider-label span { color: #333 !important; }
.roi-valor-destaque { color: #04dacb !important; font-weight: 700 !important; font-size: 1.05rem !important; }
.roi-range { width: 100% !important; accent-color: #04dacb !important; cursor: pointer !important; }
.roi-slider-minmax {
  display: flex !important; justify-content: space-between !important;
  font-size: 0.78rem !important; margin-top: 4px !important;
}
.roi-slider-minmax span { color: #999 !important; font-size: 0.78rem !important; }

.roi-right {
  flex: 1 !important; min-width: 260px !important;
  display: flex !important; flex-direction: column !important; gap: 16px !important;
}
.roi-resultado {
  display: flex !important; align-items: center !important; gap: 16px !important;
  background: #f9f9f9 !important; border-radius: 12px !important;
  padding: 18px 20px !important; border-left: 4px solid #04dacb !important;
}
.roi-resultado.roi-anual { border-left-color: #f5a623 !important; }
.roi-resultado-icon {
  width: 44px !important; height: 44px !important; border-radius: 10px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-size: 1.3rem !important; background: #e8f9f8 !important; flex-shrink: 0 !important;
}
.roi-resultado.roi-anual .roi-resultado-icon { background: #fef6e4 !important; }
.roi-resultado-label { display: block !important; font-size: 0.82rem !important; color: #777 !important; margin-bottom: 2px !important; }
.roi-resultado-valor { display: block !important; font-size: 1.4rem !important; font-weight: 700 !important; color: #04dacb !important; }
.roi-resultado.roi-anual .roi-resultado-valor { color: #f5a623 !important; }

.roi-exemplo {
  display: flex !important; align-items: flex-start !important; gap: 16px !important;
  background: #fff !important; border-radius: 12px !important;
  border: 1px solid #e8e8e8 !important; padding: 20px !important; margin-top: 24px !important;
}
.roi-exemplo-icon { font-size: 1.6rem !important; flex-shrink: 0 !important; }
.roi-exemplo strong { display: block !important; font-weight: 700 !important; margin-bottom: 6px !important; color: #1a2a3a !important; }
.roi-exemplo p, #roi-texto-exemplo { font-size: 0.9rem !important; color: #555 !important; margin: 0 !important; }

/* ---- Modal Tire suas Duvidas ---- */
.icone-modal-overlay {
  position: fixed !important; inset: 0 !important; background: rgba(0,0,0,0.55) !important;
  z-index: 99999 !important; display: flex !important; align-items: center !important;
  justify-content: center !important; padding: 16px !important;
}
.icone-modal-box {
  background: #fff !important; border-radius: 16px !important;
  padding: 36px 32px 28px !important; width: 100% !important; max-width: 480px !important;
  position: relative !important; box-shadow: 0 12px 48px rgba(0,0,0,0.18) !important;
  max-height: 90vh !important; overflow-y: auto !important;
}
.icone-modal-close {
  position: absolute !important; top: 14px !important; right: 18px !important;
  background: none !important; border: none !important; font-size: 1.6rem !important;
  cursor: pointer !important; color: #999 !important; line-height: 1 !important;
}
.icone-modal-close:hover { color: #c80f0d !important; }
.icone-modal-box h3 { font-size: 1.4rem !important; font-weight: 700 !important; color: #1a2a3a !important; margin-bottom: 6px !important; }
.icone-modal-sub { font-size: 0.9rem !important; color: #777 !important; margin-bottom: 20px !important; }
.icone-modal-field { margin-bottom: 14px !important; }
.icone-modal-field label { display: block !important; font-size: 0.85rem !important; font-weight: 600 !important; color: #444 !important; margin-bottom: 4px !important; }
.icone-modal-actions { display: flex !important; gap: 12px !important; margin-top: 20px !important; flex-wrap: wrap !important; }
.icone-btn-whats, .icone-btn-email {
  flex: 1 !important; min-width: 160px !important; display: inline-flex !important;
  align-items: center !important; justify-content: center !important;
  padding: 13px 18px !important; border-radius: 8px !important;
  font-weight: 600 !important; font-size: 0.9rem !important;
  cursor: pointer !important; border: none !important; transition: opacity 0.2s !important;
}
.icone-btn-whats { background: #25D366 !important; color: #fff !important; }
.icone-btn-email { background: #004a65 !important; color: #fff !important; }
.icone-btn-whats:hover, .icone-btn-email:hover { opacity: 0.85 !important; }
.icone-modal-aviso { text-align: center !important; font-size: 0.78rem !important; color: #aaa !important; margin-top: 12px !important; }

/* ---- Scroll To Top Fix ---- */
#scrollUp {
  background-color: #c80f0d !important; width: 40px !important; height: 40px !important;
  border-radius: 4px !important; display: flex !important; align-items: center !important;
  justify-content: center !important; text-decoration: none !important;
}
#scrollUp i {
  color: #fff !important; font-size: 16px !important; display: inline-block !important;
  font-family: 'FontAwesome', 'Font Awesome 5 Free', 'Font Awesome 6 Free', sans-serif !important;
  font-weight: 900 !important; -webkit-font-smoothing: antialiased;
  text-rendering: auto; font-style: normal !important;
}

@media (max-width: 768px) {
  .roi-card { flex-direction: column !important; gap: 24px !important; }
  .icone-modal-box { padding: 24px 18px 20px !important; }
  .icone-modal-actions { flex-direction: column !important; }
}

/* ---- Menu mobile - scroll no submenu de produtos ---- */
@media (max-width: 768px) {
  .mean-nav ul {
    max-height: 60vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }
}
