/* Nova Axis — aviso.css (herramienta de aviso de videovigilancia) */
.av-grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.av-checks { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem 1.6rem; }
.av-checks label, .av-estilos label { display: flex; gap: 0.9rem; align-items: flex-start; font-size: 1.45rem; line-height: 1.45; cursor: pointer; }
.av-checks input, .av-legal input, .av-estilos input { accent-color: var(--red-ink); width: 1.7rem; height: 1.7rem; margin-top: 0.1rem; flex: none; }
.av-estilos { display: flex; gap: 2.4rem; flex-wrap: wrap; }
.av-estilos .sw { width: 2rem; height: 2rem; border-radius: 4px; border: 0.5px solid rgba(0,0,0,0.2); flex: none; }
.sw-a { background: #FFD400; } .sw-n { background: #0e0e0e; }
.lb .opt, span.lb .opt { font-weight: 400; color: var(--gray); }
.f > span.lb { display: block; font-size: 1.3rem; font-weight: 500; margin-bottom: 0.8rem; }
.av-legal { margin: 2rem 0 1.6rem; padding: 1.8rem; background: var(--cream); border-radius: var(--radius-sm); display: grid; gap: 1.4rem; }
.av-legal label { display: flex; gap: 1rem; align-items: flex-start; font-size: 1.35rem; line-height: 1.6; color: rgba(0,0,0,0.75); cursor: pointer; }
.av-legal a { color: var(--red-ink); text-decoration: underline; }
.av-legal em { color: var(--gray); font-style: normal; }
.av-enviar { width: 100%; justify-content: center; padding: 1.5rem; font-size: 1.55rem; }

/* Vista previa: réplica de la página 1 del PDF */
.av-out { top: 9rem; }
.av-hoja { aspect-ratio: 8.5 / 11; background: #fff; border: 0.5px solid rgba(0,0,0,0.12); border-radius: 4px; overflow: hidden;
  box-shadow: 0 14px 34px -18px rgba(0,0,0,0.3); display: flex; flex-direction: column; }
.av-top { background: #FFD400; color: #0e0e0e; flex: 0 0 46%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.8rem; padding: 1.6rem; text-align: center; }
.av-top i { font-size: 5.4rem; }
.av-top b { font-size: clamp(2rem, 2.6vw, 2.8rem); font-weight: 600; letter-spacing: -0.02em; line-height: 1.1; }
.av-top span { font-size: 1.25rem; }
.av-hoja.negro .av-top { background: #0e0e0e; color: #fff; }
.av-body { padding: 1.8rem 2.2rem; display: grid; gap: 1rem; align-content: start; overflow: hidden; }
.av-body p { font-size: 1.12rem; line-height: 1.45; color: #1a1a1a; margin: 0; }
.av-body em { display: block; font-style: normal; font-weight: 600; font-size: 0.95rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--red-ink); margin-bottom: 0.2rem; }
.av-body span { white-space: pre-line; }
.av-ok { display: flex; gap: 1.4rem; margin-top: 2rem; padding: 2rem; background: #e9f7ef; border: 0.5px solid #bde5cd; border-radius: var(--radius-sm); }
.av-ok[hidden] { display: none; }
.av-ok > i { color: #0f7a3d; font-size: 2.4rem; flex: none; }
.av-ok b { display: block; font-size: 1.6rem; font-weight: 600; color: #0b5a2d; margin-bottom: 0.4rem; }
.av-ok span { display: block; font-size: 1.4rem; color: #1f4d32; line-height: 1.6; margin-bottom: 1.4rem; }
@media (max-width: 991px) { .av-grid { grid-template-columns: 1fr; } .av-out { position: static; } .av-hoja { max-width: 42rem; margin: 0 auto; } }
@media (max-width: 600px) { .av-checks { grid-template-columns: 1fr; } }

/* Herramienta: política de tratamiento de datos (2026-10-07) */
.pol-top { background: #0e0e0e; color: #fff; flex-basis: 34%; }
.pol-top i { font-size: 4.2rem; color: #FF564B; }
.pol-top b { font-size: clamp(1.5rem, 2vw, 2rem); }
.pol-hoja .av-body p { font-size: 1.08rem; }
