/* Desktop interior-page density. Content, source links, controls and mobile
   layouts remain intrinsic; only excess spacing and artwork sizing change. */
@media screen and (min-width:1024px) {
  /* Interior proof cards inherited both a gap and a large header margin. */
  body:not(.ccs-home) main .stat-card {
    padding:1.25rem;
    gap:.8rem;
  }
  body:not(.ccs-home) main .stat-card__head {
    margin-bottom:.4rem;
    gap:.75rem;
  }
  body:not(.ccs-home) main .split { gap:2rem; }
  body:not(.ccs-home) main .glance { padding:1.25rem; }
  body:not(.ccs-home) main .glance__head {
    padding:.7rem .8rem;
    flex-wrap:wrap;
    gap:.35rem 1rem;
  }
  body:not(.ccs-home) main .glance dl { column-gap:1.25rem; }
  body:not(.ccs-home) main .glance dl>div { padding:.7rem 0; }

  /* Keep all three awards in a single desktop row instead of allowing a
     large plaque to force a second row on the Results/Academics pages. */
  body:not(.ccs-home) main .plaque { --pw:10.5rem; }
  body:not(.ccs-home) main .plaque--lg { --pw:12rem; }
  body:not(.ccs-home) main .plaque--sm { --pw:8.25rem; }
  body:not(.ccs-home) main .plaque--xs { --pw:6.5rem; }
  body:not(.ccs-home) main .plaque-row { gap:.75rem; }
  .results-refined .page-hero__grid {
    grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
    gap:1.5rem;
  }
  .results-refined .page-hero .plaque-row { gap:.75rem; }
  .results-refined .result-leaders { gap:1rem; }
  .results-refined .result-proof-grid { gap:1.25rem; }
  .results-refined .result-rank-chart { padding:1.25rem; }
  .results-refined .result-rank-lanes { margin-top:1rem; gap:.85rem; }
  .results-refined .result-report-card { padding:1.25rem; gap:.65rem; }
  .results-refined .result-report-grid { margin-top:1.25rem; }
  .results-refined .result-tuition-chart { padding-top:.85rem; }
  .results-refined .result-tuition-row { margin-top:.75rem; }
  .results-refined .result-jumps { padding-block:.5rem; }

  /* The recognition timeline previously occupied one long narrow column.
     Its chronology stays in source order across readable desktop cards. */
  .results-refined .result-recognition>.container.split {
    grid-template-columns:minmax(0,1fr);
    gap:1.25rem;
  }
  .results-refined .result-recognition>.container.split>div {
    max-width:var(--container);
  }
  .results-refined .result-recognition .lede { max-width:78ch; }
  .results-refined .result-recognition .timeline {
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding:0;
    border-left:0;
    gap:1rem;
  }
  .results-refined .result-recognition .timeline>li {
    padding:1rem;
    border:1px solid var(--line);
    border-top:2px solid var(--gold);
    border-radius:5px;
    background:var(--paper);
    min-width:0;
  }
  .results-refined .result-recognition .timeline>li::before { display:none; }

  /* Campus pages: use horizontal desktop space for the enrollment card and
     nine-grade openings table, which previously stacked into a tall column. */
  .campus-hero { padding-block:1.75rem 2.25rem; }
  .campus-hero>.container.campus-hero__grid {
    grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);
    gap:2rem;
    align-items:start;
  }
  .campus-hero__media { aspect-ratio:16/10; }
  .campus-hero .campus-hero__place { margin-bottom:.5rem; }
  .campus-hero .btn-row { gap:.6rem; }
  .campus-hero .btn-row .btn { padding-inline:1rem; }
  .campus-hero .campus-application-note { margin-top:.75rem; }
  .campus-hero .campus-hero__leader { margin-top:.75rem; }
  .campus-hero .campus-location-note { padding:.75rem .9rem; }
  .campus-parent-links { margin-top:1rem; padding-top:.5rem; }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"]>.split {
    grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);
    gap:1.5rem;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"]>.split>div:last-child {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1rem;
    align-items:start;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"] .oe-cal {
    margin-top:1.4rem;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"] .oe-cal__dates {
    margin-inline:.75rem;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"] .glance dd {
    overflow-wrap:anywhere;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"] .oe-cal+.mt-4 {
    margin-top:0;
    min-width:0;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="glance-title"] :is(td,th) {
    padding:.55rem .65rem;
  }
  main:has(>.campus-hero)>.section[aria-labelledby="num-title"] .grid-3 {
    grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));
  }
  main:has(>.campus-hero) .chart {
    width:min(100%,760px);
    margin:0 auto;
  }
  main:has(>.campus-hero) .score-explorer__chart { height:180px; }
  main:has(>.campus-hero) :is(.campus-activities,.campus-recognition)>li {
    padding:1rem;
  }
  main:has(>.campus-hero) #results>.container>.split {
    grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);
  }

  /* Four schools fit in one row on the school directory and Apply routes. */
  body:not(.ccs-home) main .campus-cards {
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:1rem;
  }
  body:not(.ccs-home) main .campus-card__media { aspect-ratio:16/10; }
  body:not(.ccs-home) main .campus-card__body { padding:1.1rem; }
  body:not(.ccs-home) main .campus-card__links {
    gap:.4rem 1rem;
    margin-top:.75rem;
    padding-top:.6rem;
  }
  .application-choice-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1rem;
  }
  .application-choice { padding:1.25rem; }
  .application-choice p { margin-bottom:1rem; }
  .application-choice .btn-row {
    flex-direction:column;
    align-items:stretch;
    gap:.4rem;
  }
  .application-choice .btn-row .link-strong {
    display:inline-flex;
    align-items:center;
    min-height:44px;
  }
  body:not(.ccs-home) main .steps li { padding:1.15rem; }
  body:not(.ccs-home) main .mini-timeline { margin-top:1.25rem; }
  body:not(.ccs-home) main .mini-timeline li { padding-block:.65rem; }

  /* Document lists had outer list-item padding plus inner link padding.
     Retain a full-size link target while removing the duplicated space. */
  body:not(.ccs-home) main .doc-list li { padding:0!important; }
  body:not(.ccs-home) main .doc-list a {
    min-height:48px;
    padding:.7rem 1rem;
  }
  body:not(.ccs-home) main .parent-doc-group .doc-list a { padding:.65rem .75rem; }
  body:not(.ccs-home) main .parent-doc-groups {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));
    gap:1rem 1.25rem;
    align-items:start;
  }
  #campus-resources .campus-view>.split {
    grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);
  }
  #campus-resources .parent-archive .parent-doc-groups {
    grid-template-columns:minmax(0,1fr);
  }
  .parent-calendar-grid {
    grid-template-columns:minmax(0,300px) minmax(0,1fr);
    gap:2rem;
  }
  .parent-calendar-preview { max-width:300px; }
  .parent-calendar-overview h2 { max-width:24ch; }
  body:not(.ccs-home) main :is(.year-group h2,.year-group h3) { margin-top:1.5rem; }
  body:not(.ccs-home) main .entity-group+.entity-group { margin-top:1.5rem; }
  body:not(.ccs-home) main .record-detail { margin-bottom:1rem; }
  body:not(.ccs-home) main .parent-archive { margin-block:.75rem; }

  /* Desktop academic illustrations and quote cards use content-led heights. */
  body:not(.ccs-home) main .trio__item { padding:1.25rem; }
  body:not(.ccs-home) main .type-tile {
    aspect-ratio:auto;
    min-height:180px;
    padding:1.15rem;
    gap:1rem;
  }
  body:not(.ccs-home) main .law {
    padding-block:1.5rem;
    column-gap:1.5rem;
  }
  body:not(.ccs-home) main .transcript li { padding:.7rem 1rem; }
  body:not(.ccs-home) main .voice--quote {
    aspect-ratio:auto;
    min-height:0!important;
    justify-content:flex-start;
  }
  body:not(.ccs-home) main .voice--quote .voice__mark { padding:.75rem 1.25rem 0; }
  body:not(.ccs-home) main .voice--quote .voice__body { padding:1.25rem; }
  body:not(.ccs-home) main .about-experience__photo {
    max-width:480px;
    margin-inline:auto;
  }
  body:not(.ccs-home) main .strip {
    grid-auto-columns:calc((100% - 2rem)/3);
  }
  body:not(.ccs-home) main .strip__tile { aspect-ratio:16/10; }
  body:not(.ccs-home) main .strip-nav { margin-top:.5rem; }

  /* Forms, FAQs and search keep their full text and input/target dimensions. */
  body:not(.ccs-home) main .panel { padding:1.5rem; }
  body:not(.ccs-home) main .panel--flat { padding:0; }
  body:not(.ccs-home) main .portal-shell { min-height:0; }
  body:not(.ccs-home) main .portal-main { min-height:0; }
  body:not(.ccs-home) main .portal { padding-block:1.5rem 2rem; }
  body:not(.ccs-home) main .field { margin-bottom:1rem; }
  body:not(.ccs-home) main .filters .field,
  body:not(.ccs-home) main .staff-claim .field { margin-bottom:0; }
  body:not(.ccs-home) main .form-nav { margin-top:1.5rem; padding-top:1rem; }
  body:not(.ccs-home) main .faq summary { min-height:48px; padding-block:.8rem; }
  body:not(.ccs-home) main .faq__a { padding-bottom:1rem; }
  body:not(.ccs-home) main .faq-group+.faq-group { margin-top:1.75rem; }
  body:not(.ccs-home) main .search-results { margin-top:1rem; }
  body:not(.ccs-home) main .search-results li { padding:.8rem 0; }
}

@media screen and (min-width:1280px) {
  body:not(.ccs-home) main .strip {
    grid-auto-columns:calc((100% - 3rem)/4);
  }
}
