/* Monteaguado Asociados — estilos propios sobre Tailwind */

:root {
  --tinta: #132137;
  --noche: #05152D;
  --oro: #AC8642;
  --oro-viejo: #9E792B;
  --marfil: #F7F4EC;
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

::selection { background: var(--oro); color: var(--noche); }

.wrap { width: 100%; max-width: 72rem; margin-inline: auto; padding-inline: 1.25rem; }
@media (min-width: 768px) { .wrap { padding-inline: 2rem; } }

.section-pad { padding-block: 5rem; }
@media (min-width: 768px) { .section-pad { padding-block: 7rem; } }

.kicker {
  font-family: 'Cinzel', Georgia, serif;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

.btn-gold { letter-spacing: 0.04em; }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline: 2px solid var(--oro-viejo);
  outline-offset: 3px;
}

/* Header: sombra al hacer scroll */
#header.scrolled { box-shadow: 0 10px 30px -18px rgba(5, 21, 45, 0.35); }

/* Enlace de navegación activo/hover con subrayado dorado */
.nav-link { position: relative; padding-block: 0.4rem; }
.nav-link::after {
  content: ""; position: absolute; left: 0; bottom: 0; height: 1px; width: 100%;
  background: var(--oro-viejo); transform: scaleX(0); transform-origin: left;
  transition: transform 0.25s ease;
}
.nav-link:hover::after, .nav-link[aria-current="page"]::after { transform: scaleX(1); }

/* FAQ con <details> nativo */
details.faq summary::-webkit-details-marker { display: none; }
details.faq summary { list-style: none; }
details.faq[open] .faq-chevron { transform: rotate(180deg); }

/* Línea vertical del proceso */
.proceso::before {
  content: ""; position: absolute; left: 15px; top: 8px; bottom: 8px; width: 1px;
  background: linear-gradient(to bottom, rgba(158, 121, 43, 0.5), rgba(158, 121, 43, 0.08));
}

/* Formulario */
.field {
  width: 100%; border: 1px solid rgba(19, 33, 55, 0.18); background: #fff;
  padding: 0.85rem 1rem; font-size: 0.95rem; color: var(--tinta);
  transition: border-color 0.2s ease;
}
.field::placeholder { color: rgba(90, 98, 115, 0.6); }
.field:focus { border-color: var(--oro-viejo); outline: none; }
.field:user-invalid { border-color: #b4372f; }

/* Honeypot antispam: fuera de pantalla para humanos */
.hp-field { position: absolute !important; left: -9999px !important; height: 0; overflow: hidden; }

/* Imágenes: nunca desbordar */
img { max-width: 100%; height: auto; }

/* Botón flotante de WhatsApp */
.wa-float {
  position: fixed; right: 1.1rem; bottom: 1.1rem; z-index: 60;
  display: flex; height: 3.4rem; width: 3.4rem; align-items: center; justify-content: center;
  background: var(--noche); color: var(--marfil);
  border: 1px solid rgba(172, 134, 66, 0.65);
  box-shadow: 0 14px 30px -12px rgba(5, 21, 45, 0.5);
  transition: transform 0.2s ease, background 0.2s ease;
}
.wa-float:hover { transform: translateY(-2px); background: var(--tinta); }
