body {
            background-color: #1f1f24;
        }
        .navbar {
            background-color: #1f1f24 !important;
        }
        .navbar-brand, .nav-link {
            color: #fff !important;
        }
        .nav-link:hover {
            background-color: #692f45 !important;
            color: #e8e8ea !important;
        }
        .carousel-caption {
            background: rgba(105, 47, 69, 0.6);
            border-radius: 8px;
            padding: 15px;
        }
        h1 {
            color: #e8e8ea;
            margin: 0 0 20px; 
        }
        h2 {
            color: #e8e8ea;
        }
        h3 {
            color: #692f45;
        }
        footer {
            background-color: #1f1f24;
            color: #fff;
            padding: 20px;
            text-align: center;
        }
        .card {
            border: none;
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
        }
        .btn-primary {
            background-color: #692f45;
            border-color: #692f45;
        }
        .btn-primary:hover {
            background-color: #4f2234;
            border-color: #4f2234;
        }

        .calc-mini-section {
  padding: 56px 0;
  background: linear-gradient(135deg, #f7f9fc 0%, #eef3f8 100%);
}

.calc-mini-wrap {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 28px;
  align-items: center;
}

.calc-mini-copy h2 {
  margin: 0 0 14px;
  font-size: 2rem;
  line-height: 1.15;
  color: #1f2d3d;
}

.calc-mini-copy p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.7;
  color: #52606d;
  max-width: 640px;
}

.calc-mini-badge {
  display: inline-block;
  margin-bottom: 12px;
  padding: 8px 14px;
  border-radius: 999px;
  background: #d9ecff;
  color: #165c96;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.3px;
}

.calc-mini-card {
  background: #ffffff;
  border-radius: 18px;
  padding: 24px;
  box-shadow: 0 14px 40px rgba(18, 38, 63, 0.08);
  border: 1px solid rgba(31, 45, 61, 0.08);
}

.calc-mini-label {
  display: block;
  margin-bottom: 10px;
  font-size: 0.95rem;
  font-weight: 700;
  color: #1f2d3d;
}

.calc-mini-select {
  width: 100%;
  height: 52px;
  border-radius: 12px;
  border: 1px solid #d7dee7;
  background: #fff;
  padding: 0 14px;
  font-size: 1rem;
  color: #1f2d3d;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  margin-bottom: 16px;
}

.calc-mini-select:focus {
  border-color: #4f2234;
  box-shadow: 0 0 0 4px rgba(45, 127, 249, 0.12);
}

.calc-mini-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  width: 100%;
  border-radius: 12px;
  background: #4f2234;
  color: #ffffff;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 700;
  padding: 14px 18px;
  transition: transform 0.2s ease, opacity 0.2s ease, background 0.2s ease;
}

.calc-mini-btn:hover {
  background: #4f2234;
  transform: translateY(-1px);
}

.calc-mini-btn:active {
  transform: translateY(0);
}

/* Tablet */
@media (max-width: 991px) {
  .calc-mini-section {
    padding: 46px 0;
  }

  .calc-mini-wrap {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .calc-mini-copy h2 {
    font-size: 1.8rem;
  }

  .calc-mini-copy p {
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 575px) {
  .calc-mini-section {
    padding: 38px 0;
  }

  .calc-mini-copy h2 {
    font-size: 1.55rem;
  }

  .calc-mini-copy p {
    font-size: 0.96rem;
    line-height: 1.6;
  }

  .calc-mini-card {
    padding: 18px;
    border-radius: 16px;
  }

  .calc-mini-select {
    height: 50px;
    font-size: 0.98rem;
  }

  .calc-mini-btn {
    min-height: 52px;
    font-size: 0.98rem;
  }
}

.nav-link.active {
  background-color: #692f45 !important;
  color: #e8e8ea !important;
  border-radius: 6px;
}

body.calc-page {
  padding-top: 90px;
}

@media (max-width: 575px) {
  body.calc-page {
    padding-top: 82px;
  }
}
/* ===== MEJORA DE CONTRASTE EN CALCULADORA ===== */

.calc-wrap,
.calc-card,
.preview-card,
.card,
.panel,
.form-card {
  color: #f5f7fb;
}

.calc-card h1,
.calc-card h2,
.calc-card h3,
.preview-card h1,
.preview-card h2,
.preview-card h3,
.card h1,
.card h2,
.card h3 {
  color: #ffffff;
}

.calc-card label,
.preview-card label,
.form-label,
label {
  color: #dfe7f3 !important;
  font-weight: 600;
}

.calc-card small,
.preview-card small,
.text-muted,
.muted,
.helper-text {
  color: #b8c2d3 !important;
}

.calc-card input,
.calc-card select,
.calc-card textarea,
.preview-card input,
.preview-card select,
.preview-card textarea {
  color: #ffffff;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.12);
}

.calc-card input::placeholder,
.calc-card textarea::placeholder {
  color: #aab4c8;
}

.calc-card select option {
  color: #111827;
  background: #ffffff;
}

/* Caja superior de aviso / ayuda */
.preview-note,
.preview-top,
.alert-preview,
#estado {
  color: #ffd7e3 !important;
  background: rgba(135, 35, 70, 0.18) !important;
  border: 1px solid rgba(255, 120, 170, 0.35) !important;
}

/* Vista previa del mensaje */
#preview,
#mensajePreview,
.preview-box,
.preview-content {
  color: #eaf1ff !important;
  background: rgba(7, 10, 20, 0.92) !important;
  border: 1px solid rgba(255,255,255,0.08);
  white-space: pre-line;
}

/* Texto del menú */
.navbar .nav-link,
.navbar-nav .nav-link,
.site-nav a {
  color: #ffffff !important;
}

.navbar .nav-link:hover,
.navbar-nav .nav-link:hover,
.site-nav a:hover {
  color: #ffd6e7 !important;
}

.navbar .nav-link.active,
.navbar-nav .nav-link.active,
.site-nav a.active {
  color: #ff8fbc !important;
  font-weight: 700;
}