/* =========================================================================
   GuiaArg — adaptaciones responsive (mobile first sobre style.css)
   Puntos de control: 1180 / 1024 / 900 / 768 / 560 / 380 px
   ========================================================================= */

@media (max-width: 1180px) {
  .nav { gap: 16px; }
  .nav__list { gap: 14px; }
  .nav__link { font-size: 0.88rem; }
}

@media (max-width: 1024px) {
  .hero__grid { grid-template-columns: 1fr; }
  .verify-panel { max-width: 560px; }
  .cards { grid-template-columns: 1fr 1fr; }
  .feature-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
}

@media (max-width: 900px) {
  .nav-toggle { display: inline-flex; order: 3; }

  .nav {
    position: fixed;
    inset: 110px 16px auto;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    padding: 18px;
    background: var(--ink-700);
    border: 1px solid var(--line-strong);
    border-radius: var(--radius-lg);
    box-shadow: 0 30px 70px -28px rgba(0, 0, 0, 0.9);
    max-height: calc(100dvh - 140px);
    overflow-y: auto;
  }
  .nav.is-open { display: flex; }

  .nav__list { flex-direction: column; align-items: stretch; gap: 0; }
  .nav__list li { border-bottom: 1px solid var(--line); }
  .nav__list li:last-child { border-bottom: 0; }
  .nav__link { display: block; padding: 14px 4px; font-size: 1rem; }
  .nav__link::after { display: none; }
  .nav__link.is-current { color: var(--celeste); }
  .nav__cta { margin-top: 12px; width: 100%; }

  .operator { grid-template-columns: 1fr; }
  .operator__side { border-top: 1px solid var(--paper-line); padding-top: 20px; }
}

@media (max-width: 768px) {
  .wrap { padding-left: 16px; padding-right: 16px; }
  .cards { grid-template-columns: 1fr; }
  .feature-grid { grid-template-columns: 1fr; }
  .cookie { inset: auto 10px 10px; padding: 18px; }
  .cookie__actions { width: 100%; }
  .cookie__actions .btn { flex: 1 1 140px; }
  .disclaimer { flex-direction: column; gap: 12px; }
}

@media (max-width: 560px) {
  body { font-size: 0.97rem; }
  .topbar__text { font-size: 0.74rem; }
  .site-header__inner { min-height: 64px; }
  .brand__sub { display: none; }
  .nav { inset: 100px 12px auto; }

  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { width: 100%; }

  .card { padding: 20px; }
  .verify-panel { padding: 20px; }
  .accordion__trigger { padding: 16px; font-size: 0.95rem; }
  .accordion__panel { padding: 0 16px 18px; }
  .table th, .table td { padding: 12px 14px; }
  .footer-grid { grid-template-columns: 1fr; }
  .btn { width: auto; }
  .form .btn { width: 100%; }
}

@media (max-width: 380px) {
  .wrap { padding-left: 12px; padding-right: 12px; }
  .card__head { gap: 8px; }
  .card__brand { font-size: 1.08rem; }
  .btn { padding: 12px 18px; font-size: 0.9rem; }
}

/* Pantallas grandes: se limita el ancho de línea, no se estira el layout. */
@media (min-width: 1600px) {
  :root { --wrap: 1240px; }
}

@media print {
  .site-header, .topbar, .cookie, .nav, .btn { display: none !important; }
  body { background: #fff; color: #000; }
}
