/* Capa responsive compartida del Proyecto AD. Sólo actúa como salvaguarda
   para pantallas estrechas; cada sección conserva su composición de escritorio. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,.site-shell{max-width:100%;overflow-x:hidden;overflow-x:clip}
:where(main,section,article,aside,header,footer,nav,div,figure){min-width:0}
:where(img,picture,svg,video,canvas,iframe){max-width:100%}
:where(img,video){height:auto}
:where(p,li,dd,figcaption,blockquote){overflow-wrap:anywhere}
:where(button,input,select,textarea){max-width:100%;font:inherit}
:where(.dating-plot-shell,.dating-table-wrap,.sequence-chart-scroller,.evidence-table-wrap,.audit-table-wrap,.matrix-table-wrap,.signs-map,.project-nav,.section-nav .wrap,.chronology){overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
:where(.lightbox,.media-dialog,.map-dialog){max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px)}

@media(max-width:760px){
  .topbar{flex-wrap:wrap;gap:12px 20px}
  .topbar .top-links{width:100%;justify-content:flex-start}
  :where(.nav-links a,.top-links a,.project-nav a,.section-nav a,.contents a,.page-turn a,.footer-inner nav a){display:flex;align-items:center;min-height:44px}
  :where(button,[role="button"],input:not([type="checkbox"]):not([type="radio"]),select){min-height:44px}
  :where(.lightbox,.media-dialog,.map-dialog){width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);margin:auto;overflow:auto;border-radius:12px}
  .lightbox-footer{height:auto;min-height:54px;align-items:flex-start}
  .media-dialog .dialog-media{width:100%;max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);object-fit:contain}
  .map-dialog__inner>header{gap:14px}
  .map-dialog__inner>header button{flex:0 0 44px;width:44px;height:44px}
  :where(.dating-plot-shell,.sequence-chart-scroller,.matrix-table-wrap,.dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.signs-map){touch-action:pan-x pan-y}
  .footer-inner nav,.footer-grid nav{flex-wrap:wrap}
}

@media(max-width:480px){
  .dating-plot-shell{padding:12px 10px 14px}
  .sequence-chart-scroller{padding-left:58px;padding-right:8px}
  .topbar .top-links{gap:4px 14px}
  .page-turn{display:grid;grid-template-columns:1fr}
  .page-turn a{justify-content:flex-start}
  .page-turn a:last-child{justify-content:flex-end;text-align:right}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

/* Revisión integral: una sola separación lateral y navegación sin arrastre. */
:root{--page-gutter:clamp(12px,2.2vw,24px)}
h1,h2,h3,a{overflow-wrap:anywhere}
.cite::after,.cite>a::after,.citations a::after,.home-cite a::after{visibility:hidden;position:fixed;left:12px;right:12px;bottom:12px;top:auto;width:min(360px,calc(100vw - 24px));transform:none}
.cite:hover::after,.cite:focus-within::after,.cite>a:hover::after,.cite>a:focus-visible::after,.citations a:hover::after,.citations a:focus-visible::after,.home-cite a:hover::after,.home-cite a:focus-visible::after{visibility:visible}
@media(max-width:1100px){
  .cite::after,.cite>a::after,.citations a::after,.home-cite a::after{position:fixed;left:12px;right:12px;bottom:12px;top:auto;width:auto;transform:none}
  .container,.wrap,.chapter-tint>.wrap{width:calc(100% - var(--page-gutter)*2)}
  .container .container,.wrap .wrap{width:100%}
  .project-nav,.project-nav .wrap,.section-nav .wrap{flex-wrap:wrap;overflow:visible;scrollbar-gutter:auto}
  .project-nav a,.section-nav a{white-space:normal;min-width:0}
  .project-nav a{flex:1 1 140px;padding:12px;justify-content:center;text-align:center}
  .ad-home .hero{padding-inline:0;overflow:visible}
  .ad-home .nav{position:relative;z-index:10;gap:16px}
  .ad-home .menu-toggle{display:block;flex:none;cursor:pointer}
  .ad-home .nav-links{display:flex;position:absolute;top:calc(100% - 8px);left:0;right:0;max-height:calc(100dvh - 115px);overflow-y:auto;flex-direction:column;gap:4px;padding:16px;background:rgba(7,27,58,.98);box-shadow:var(--shadow);border-radius:12px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:opacity .24s ease,transform .24s ease,visibility 0s linear .24s}
  .ad-home .nav-links.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
  .ad-home .nav-links a{min-height:44px;display:flex;align-items:center;padding:8px 12px}
  .menu-toggle i{transition:transform .24s ease,opacity .24s ease}
  .menu-toggle[aria-expanded=true] i:first-of-type{transform:translateY(8px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] i:nth-of-type(2){opacity:0}
  .menu-toggle[aria-expanded=true] i:last-of-type{transform:translateY(-8px) rotate(-45deg)}
}
@media(max-width:1100px){
  .site-shell{width:100%;box-shadow:none}
  .site-shell .content{padding-inline:var(--page-gutter)}
  .symbols-hero .topbar,.symbols-hero__grid{width:calc(100% - var(--page-gutter)*2)}
  .ad-home .hero-copy{width:calc(100% - var(--page-gutter)*2)}
  .project-nav{padding-inline:0}
  .hero-facts,.date-legend{flex-wrap:wrap}
  .hero-facts div{min-width:0;flex:1 1 110px}
  .social-change,.motif-study,.event-panel,.evidence-copy,.credit-card{padding-inline:16px}
  .ratio-figure{margin-inline:0;padding:16px;width:100%;max-width:480px}
  .signs-map__stage,.signs-map figcaption{min-width:0;width:100%}
  .signs-map{overflow:visible}
  .map-key{width:100%;max-width:100%}
  .map-marker{width:36px;height:36px;border-width:2px}
  .map-marker span{max-width:80px;font-size:.6rem}
  .dating-plot-shell{overflow:visible;scrollbar-gutter:auto}
  .dating-plot{width:100%;min-width:0;max-width:100%}
  .dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.matrix-table-wrap{overflow:visible;scrollbar-gutter:auto}
  :is(.dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.matrix-table-wrap,.evidence-scroll) table{display:block;width:100%;min-width:0}
  :is(.dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.matrix-table-wrap,.evidence-scroll) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  :is(.dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.matrix-table-wrap,.evidence-scroll) tbody{display:block}
  :is(.dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.matrix-table-wrap,.evidence-scroll) tr{display:block;border-bottom:2px solid #9eb1aa;padding:10px 0}
  :is(.dating-table-wrap,.audit-table-wrap,.evidence-table-wrap,.matrix-table-wrap,.evidence-scroll) td{display:block;width:auto;padding:8px 12px;overflow-wrap:anywhere}
  td[data-label]::before{content:attr(data-label);display:block;font-size:.75rem;font-weight:700;color:var(--ink);margin-bottom:3px}
  .chronology,.timeline-layout.has-wide-chart .chronology{overflow:visible;padding:0;max-height:none;scrollbar-gutter:auto}
  .chronology ol,.timeline-layout.has-wide-chart .chronology ol{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
  .chronology ol::before,.timeline-layout.has-wide-chart .chronology ol::before{display:none}
  .chronology li,.chronology button{width:100%;min-width:0}
  .timeline-layout.has-wide-chart .timeline-choice{width:100%}
  .chronology .timeline-choice span{min-width:0;overflow-wrap:anywhere}
  .home-cite a::after{position:fixed;left:12px;right:12px;bottom:12px;width:auto;transform:none}
}
@media(max-width:380px){.chronology ol,.timeline-layout.has-wide-chart .chronology ol{grid-template-columns:1fr}.ad-wordmark{min-width:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.001ms!important;animation-duration:.001ms!important}}
