/* ==========================================================================
   annpurnadevi.com — responsive layer
   Mobile first. Breakpoints: 480 · 700 · 960 · 1240 · 1500
   ========================================================================== */

/* ---- ≤ 359px: very small phones (320) ---- */
@media (max-width:359px){
  :root{--gutter:.9rem}
  .brand__name{font-size:1.12rem}
  .contents-btn{padding:.45rem .6rem;letter-spacing:.08em}
  .contents-btn .cb-text{display:none}
  .cover__facts{grid-template-columns:1fr}
  .themes{grid-template-columns:1fr}
  .arches{grid-template-columns:1fr}
  .segments{grid-template-columns:1fr}
  .entry{grid-template-columns:2.8rem 1fr;gap:.75rem}
  .entry .entry__day{font-size:2.1rem}
}

/* ---- ≥ 480px ---- */
@media (min-width:480px){
  :root{--gutter:1.25rem}
  .dossier{padding:2rem 2rem 2.25rem}
  .form-row{grid-template-columns:1fr 1fr}
}

/* ---- ≥ 700px: large phones landscape / small tablets ---- */
@media (min-width:700px){
  :root{--gutter:2rem;--header-h:66px}
  .brand__tag{display:inline}
  .here{display:inline-flex}
  .contents__parts{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 3rem}
  .footer-cols{grid-template-columns:1.3fr 1fr 1fr}
  .arches{grid-template-columns:repeat(4,minmax(0,1fr))}
  .programmes{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
  .databand{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2rem}
  .chapter-index{grid-template-columns:1fr 1fr;column-gap:3rem}
  .next-chapter__grid{grid-template-columns:1fr 1fr;gap:3rem}
  .record-cards{grid-template-columns:1fr 1fr}
  .structure{grid-template-columns:1fr 1fr}
  .institutions{grid-template-columns:1fr 1fr}
  .lifecourse ol{grid-template-columns:repeat(2,minmax(0,1fr))}
  .helpline{grid-template-columns:auto 1fr;gap:2.5rem}
  .calendar{grid-template-columns:repeat(6,minmax(0,1fr))}
  .news-grid{grid-template-columns:1fr 1fr;column-gap:2.5rem}
  .spread--two{grid-template-columns:1fr 1fr}
  .spread--portrait{grid-template-columns:1fr 1fr;align-items:end}
  .factsheet div{grid-template-columns:12rem 1fr;gap:1.5rem}
  .register__row{grid-template-columns:10rem 1fr;gap:.4rem 2rem}
  .register__row > .register__date-col{grid-row:span 4}
  .entry{grid-template-columns:5rem 1fr;gap:1.5rem}
  .entry .entry__day{font-size:3.2rem}
  .constituency{grid-template-columns:1fr 1fr;gap:3rem}
  .segments{grid-template-columns:repeat(3,minmax(0,1fr))}
  .profile-head__grid{grid-template-columns:1.4fr 1fr}
}

/* ---- ≥ 960px: laptop / tablet landscape ---- */
@media (min-width:960px){
  :root{--fs-body:1.125rem;--header-h:70px}
  .cover{padding-block:2.25rem 4.5rem}
  .cover__grid{grid-template-columns:minmax(0,1.08fr) 3.5rem minmax(0,.92fr);gap:0;align-items:start}
  .cover__text{grid-column:1;padding-right:1rem}
  .cover__vline{display:block;grid-column:2;position:relative;align-self:stretch}
  .cover__vline::before{content:"";position:absolute;left:50%;top:-2rem;bottom:-4.5rem;width:1px;background:var(--indigo)}
  .cover__margin{display:block;position:absolute;left:50%;top:38%;transform:translate(-50%,-50%) rotate(-90deg);white-space:nowrap;background:var(--paper);background-image:var(--grain);padding:.3rem .9rem;font-size:.7rem;font-weight:600;letter-spacing:.3em;color:var(--indigo)}
  .cover__plate{grid-column:3;padding-top:.5rem}
  .intro-grid{grid-template-columns:5fr 7fr;gap:4rem}
  .intro-grid .intro-statement{position:sticky;top:calc(var(--header-h) + 2rem)}
  .women-split{grid-template-columns:1fr 1fr;gap:4rem}
  .edu-split{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:start}

  /* archive timeline becomes horizontal: one continuous line, alternating milestones */
  .archive-line{margin-top:4rem}
  .archive-line__track{left:0;right:0;top:50%;bottom:auto;width:auto;height:1px}
  .archive-line ol{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:auto auto;min-height:30rem}
  .milestone{padding:0 .9rem 0 0;display:flex;flex-direction:column;justify-content:flex-end;height:15rem;border-left:1px solid var(--rule-mid);padding-left:.8rem;padding-bottom:1.4rem}
  .milestone:nth-child(even){grid-row:2;justify-content:flex-start;padding-top:1.4rem;padding-bottom:0;margin-top:0}
  .milestone:nth-child(odd){grid-row:1}
  .milestone:nth-child(1){grid-column:1}.milestone:nth-child(2){grid-column:2}.milestone:nth-child(3){grid-column:3}.milestone:nth-child(4){grid-column:4}
  .milestone:nth-child(5){grid-column:5}.milestone:nth-child(6){grid-column:6}.milestone:nth-child(7){grid-column:7}.milestone:nth-child(8){grid-column:8}
  .milestone::before{left:-1px;top:auto;bottom:0;width:1px;height:1.4rem;background:var(--indigo)}
  .milestone:nth-child(even)::before{top:0;bottom:auto}
  .milestone::after{left:-5px;top:auto;bottom:-5px}
  .milestone:nth-child(even)::after{top:-5px;bottom:auto}
  .milestone__year{font-size:2rem}

  .toc-side{position:sticky;top:calc(var(--header-h) + 2rem);align-self:start}
  .longform{grid-template-columns:14rem minmax(0,1fr);gap:4rem}
  .feature{grid-template-columns:minmax(0,var(--measure)) minmax(0,15rem);justify-content:center}
  .feature__margin{padding-top:.5rem}
  .era{grid-template-columns:18rem minmax(0,1fr);gap:3rem}
  .era__side{position:sticky;top:calc(var(--header-h) + 1.5rem);align-self:start}
  .brief{grid-template-columns:minmax(0,1fr) 17rem;gap:3rem}
  .brief__aside .docinfo{position:sticky;top:calc(var(--header-h) + 1.5rem)}
  .wd-hero{grid-template-columns:1.05fr .95fr;gap:4rem;align-items:center}
  .structure{grid-template-columns:1fr 1fr}
  .institutions{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lifecourse ol{grid-template-columns:repeat(5,minmax(0,1fr))}
  .indicators{grid-template-columns:1fr 1fr;gap:1.6rem 3rem}
  .nt-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
  .journal__month{grid-template-columns:12rem minmax(0,1fr);gap:3rem;align-items:start}
  .journal__mh{top:calc(var(--header-h) + 1.5rem);border-bottom:0;border-top:1px solid var(--indigo);padding-top:.7rem}
  .lead-story{grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}
  .news-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:2.5rem}
  .spread--wide-narrow{grid-template-columns:1.6fr 1fr;align-items:end}
  .spread--narrow-wide{grid-template-columns:.8fr 1.6fr;align-items:end}
  .contact-grid{grid-template-columns:1fr 1.35fr;gap:5rem}
  .footer-top{grid-template-columns:1fr 1.6fr;gap:4rem}
  .register__row{grid-template-columns:11rem 1fr}
  .dossier__stamp{top:1.5rem;right:1.5rem}
}

/* ---- ≥ 1240px: desktop — inline primary navigation ---- */
@media (min-width:1240px){
  :root{--gutter:2.75rem}
  .primary-nav{display:block;margin-right:1.25rem}
  .here{display:none}
  .has-offnav .here{display:inline-flex}
  .contents__parts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer-cols{grid-template-columns:1.4fr 1fr 1fr}
  .cover__title{font-size:6.1rem}
}

/* ---- ≥ 1500px ---- */
@media (min-width:1500px){
  :root{--fs-body:1.15625rem}
  .primary-nav ul{gap:1.7rem}
}

/* ---- landscape phones: keep the overlay compact ---- */
@media (max-height:520px) and (orientation:landscape){
  .contents__head{padding-block:1rem .75rem}
  .contents__part a{padding:.5rem 0;min-height:44px}
  .lightbox img{max-height:calc(100vh - 7rem)}
}

/* ---- Reduced motion ---- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important}
  .js .reveal,.js .draw,.js .draw-y{opacity:1!important;transform:none!important}
}

/* ---- Print ---- */
@media print{
  .site-header,.contents,.site-footer .social,.filters,.search-field,.next-chapter,.lightbox,.skip-link{display:none!important}
  body{background:#fff;color:#000;font-size:11pt}
  .bg-indigo,.bg-plum,.site-footer{background:#fff!important;color:#000!important}
  .bg-indigo *,.bg-plum *{color:#000!important}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em;word-break:break-all}
  .js .reveal{opacity:1!important;transform:none!important}
}
