/* ==========================================================================
   AGENCYNAB · legal.css
   Estilos exclusivos para páginas de documentos legales
   (política de tratamiento de datos, términos, etc).
   Se carga DESPUÉS de styles.css y reutiliza sus variables.
   ========================================================================== */

.legal{ padding-top: 160px; padding-bottom: 100px; }

.legal__wrap{ max-width: 820px; }

.legal__head{ margin-bottom: 40px; }
.legal__head h1{
  font-size: clamp(1.9rem, 3.6vw, 2.6rem);
  letter-spacing: -0.01em;
  margin-bottom: 14px;
}
.legal__updated{ font-size: .88rem; color: var(--text-2); }

.legal__box{
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: 26px 28px;
  margin-bottom: 44px;
  color: var(--text-1);
}

.legal__section{
  padding-block: 30px;
  border-top: 1px solid var(--border);
}
.legal__section:last-of-type{ padding-bottom: 0; }

.legal__section h2{
  display:flex; align-items:center; gap:14px;
  font-size: 1.25rem;
  margin-bottom: 14px;
}
.legal__num{
  display:inline-flex; align-items:center; justify-content:center;
  width: 36px; height:36px; border-radius: 50%;
  font-family: var(--font-mono); font-size: .82rem; font-weight:600;
  background: rgba(56,189,248,0.1);
  border: 1px solid rgba(56,189,248,0.25);
  color: var(--nab-cyan-light);
  flex-shrink:0;
}

.legal__section p{ color: var(--text-1); font-size: .98rem; margin-bottom: 12px; }
.legal__section p:last-child{ margin-bottom:0; }
.legal__section a{ color: var(--nab-cyan-light); text-decoration: underline; text-underline-offset: 3px; }

.legal__list{ display:flex; flex-direction:column; gap:10px; margin-block: 6px 12px; }
.legal__list li{
  position:relative; padding-left: 22px;
  font-size: .96rem; color: var(--text-1);
}
.legal__list li::before{
  content:''; position:absolute; left:0; top:9px;
  width:8px; height:8px; border-radius:50%;
  background: var(--grad-brand);
}

.legal__box--contact{
  margin-top: 20px;
  display:flex; align-items:center; gap:20px; flex-wrap:wrap;
  background: linear-gradient(160deg, rgba(139,47,224,0.14), var(--surface));
  border-color: var(--border-strong);
}
.legal__box--contact i{
  font-size: 1.6rem; color: var(--nab-cyan-light);
  width:52px; height:52px; flex-shrink:0;
  border-radius: var(--radius-sm);
  background: rgba(56,189,248,0.1);
  display:flex; align-items:center; justify-content:center;
}
.legal__box--contact h3{ font-size: 1.05rem; margin-bottom:4px; }
.legal__box--contact p{ color: var(--text-2); font-size:.92rem; margin:0; }
.legal__box--contact .btn{ margin-left:auto; }

@media (max-width: 640px){
  .legal{ padding-top: 130px; }
  .legal__box--contact{ flex-direction:column; align-items:flex-start; }
  .legal__box--contact .btn{ margin-left:0; width:100%; }
}
