/* Ajustes globales para móvil, accesibilidad y políticas. */
img,svg,video{max-width:100%}
.menu{min-width:48px;min-height:48px;align-items:center;justify-content:center;cursor:pointer;color:var(--navy)}
.privacy-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
.privacy-status{color:var(--muted);font-size:.95rem}
.policy-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:24px 0}
.policy-table{width:100%;min-width:680px;border-collapse:collapse}
.policy-table th,.policy-table td{padding:13px;border:1px solid var(--line);text-align:left;vertical-align:top}
.policy-table th{background:#e8f1ff}
@media(max-width:900px){
  .header{backdrop-filter:none}
  .nav{min-height:68px}
  .menu{display:inline-flex}
  .links.open{top:68px;max-height:calc(100vh - 68px);overflow-y:auto;box-shadow:0 18px 35px rgba(7,26,49,.16)}
  .links.open a{width:100%;min-height:44px;display:flex;align-items:center}
  .layout{gap:28px}
}
@media(max-width:560px){
  .wrap{width:min(100% - 28px,1160px)}
  body{overflow-x:hidden;font-size:16px}
  h1{font-size:clamp(2.15rem,11vw,2.8rem)}
  h2{font-size:clamp(1.65rem,8vw,2.2rem)}
  .top{font-size:.76rem;line-height:1.45;padding:8px 14px}
  .section,.article-hero,.category-hero{padding:44px 0}
  .hero p,.article-deck,.lead{font-size:1.05rem}
  .actions{display:grid;grid-template-columns:1fr;width:100%}
  .actions .btn{width:100%}
  .panel,.card,.area-card,.feature{padding:22px}
  .prose p,.prose li{font-size:1rem}
  .prose table{white-space:normal}
  .footer{padding-top:40px}
  .footer-grid{gap:20px}
  .fine{overflow-wrap:anywhere}
}
