@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

body.visual-v2 {
  --v2-green: #006b5d;
  --v2-green-2: #128f7e;
  --v2-green-soft: #e7f4f0;
  --v2-gold: #d5a43d;
  --v2-ink: #20322e;
  --v2-muted: #6f7d78;
  --v2-line: #ded9cf;
  --v2-paper: #fffdf9;
  --v2-wall: #f5f1e9;
  background: radial-gradient(circle at 50% 12%, #fffdf8 0, #f5f1e9 46%, #eee8de 100%) fixed !important;
  color: var(--v2-ink) !important;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

body.visual-v2 h1,
body.visual-v2 h2,
body.visual-v2 h3,
body.visual-v2 h4 {
  color: var(--v2-ink);
  letter-spacing: -.025em;
}

body.visual-v2 header,
body.visual-v2 .header,
body.visual-v2 .topbar,
body.visual-v2 .navbar,
body.visual-v2 .nav-bar {
  background: rgba(255, 253, 249, .96) !important;
  border-color: var(--v2-line) !important;
  box-shadow: 0 8px 28px -24px rgba(33, 45, 41, .65) !important;
  backdrop-filter: blur(14px);
}

body.visual-v2 .card,
body.visual-v2 .form-card,
body.visual-v2 .content-card,
body.visual-v2 .checkout-card,
body.visual-v2 .summary-card,
body.visual-v2 .box,
body.visual-v2 .panel,
body.visual-v2 .modal-content,
body.visual-v2 .container-card {
  background: var(--v2-paper) !important;
  border: 1px solid rgba(213, 164, 61, .2) !important;
  border-radius: 20px !important;
  box-shadow: 0 18px 50px -36px rgba(37, 48, 44, .7) !important;
}

body.visual-v2 input,
body.visual-v2 select,
body.visual-v2 textarea {
  background: #fff !important;
  color: var(--v2-ink) !important;
  border: 1.5px solid #dedbd3 !important;
  border-radius: 14px !important;
  box-shadow: 0 3px 10px -8px rgba(37, 31, 24, .35) !important;
  font-family: inherit !important;
}

body.visual-v2 input:focus,
body.visual-v2 select:focus,
body.visual-v2 textarea:focus {
  border-color: var(--v2-green-2) !important;
  outline: 3px solid rgba(18, 143, 126, .12) !important;
}

body.visual-v2 .btn-primary,
body.visual-v2 button[type="submit"],
body.visual-v2 .cta,
body.visual-v2 .btn-finalizar,
body.visual-v2 .continue-btn,
body.visual-v2 .primary-button {
  background: linear-gradient(135deg, var(--v2-green-2), var(--v2-green)) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 24px -16px rgba(0, 107, 93, .9) !important;
  font-family: inherit !important;
  font-weight: 700 !important;
}

body.visual-v2 .btn-primary:hover,
body.visual-v2 button[type="submit"]:hover,
body.visual-v2 .cta:hover,
body.visual-v2 .btn-finalizar:hover,
body.visual-v2 .continue-btn:hover,
body.visual-v2 .primary-button:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
}

body.visual-v2 .option-item,
body.visual-v2 .btn-option,
body.visual-v2 .option,
body.visual-v2 .choice,
body.visual-v2 .select-option {
  background: #fff !important;
  border: 1px solid var(--v2-line) !important;
  border-radius: 14px !important;
  color: var(--v2-ink) !important;
  box-shadow: 0 8px 20px -20px rgba(37, 48, 44, .8) !important;
}

body.visual-v2 .option-item:hover,
body.visual-v2 .btn-option:hover,
body.visual-v2 .option:hover,
body.visual-v2 .choice:hover,
body.visual-v2 .select-option:hover,
body.visual-v2 .selected,
body.visual-v2 [aria-checked="true"] {
  border-color: var(--v2-green-2) !important;
  background: var(--v2-green-soft) !important;
}

body.visual-v2 .progress-fill,
body.visual-v2 .progress-bar > *,
body.visual-v2 .active .step-number,
body.visual-v2 .active .indicator,
body.visual-v2 .active-dot {
  background: linear-gradient(90deg, var(--v2-green-2), var(--v2-gold)) !important;
}

body.visual-v2 .badge,
body.visual-v2 .status,
body.visual-v2 .security-badge,
body.visual-v2 .trust-badge {
  background: #fbf4df !important;
  color: #74571c !important;
  border-color: rgba(213, 164, 61, .35) !important;
}

body.visual-v2 footer,
body.visual-v2 .footer,
body.visual-v2 .site-footer {
  background: rgba(255, 253, 249, .9) !important;
  color: var(--v2-muted) !important;
  border-color: var(--v2-line) !important;
}

body.visual-v2 a { color: var(--v2-green); }
body.visual-v2 .text-muted,
body.visual-v2 .subtitle,
body.visual-v2 .description,
body.visual-v2 small { color: var(--v2-muted) !important; }

@media (max-width: 640px) {
  body.visual-v2 .card,
  body.visual-v2 .form-card,
  body.visual-v2 .content-card,
  body.visual-v2 .checkout-card,
  body.visual-v2 .summary-card,
  body.visual-v2 .panel,
  body.visual-v2 .modal-content {
    border-radius: 18px !important;
  }
}
