/* =========================================================
   SHRI VIDHYABHARATHI CBSE SENIOR SECONDARY SCHOOL
   ACADEMICS — CLEAN COMPACT PAGE
   Requires styles.css
   ========================================================= */

:root{
  --acad-paper:#fffdf9;
  --acad-cream:#fff8ee;
  --acad-cream-strong:#f9ead2;
  --acad-border:rgba(184,119,11,.18);
  --acad-border-soft:rgba(62,39,35,.09);
  --acad-shadow:0 14px 34px rgba(62,39,35,.09);
  --acad-shadow-lg:0 24px 52px rgba(62,39,35,.15);
  --acad-ease:cubic-bezier(.22,.75,.32,1);
}

/* ---------- base ---------- */

.academics-page{
  background:#fff;
}

.academics-page .section{
  padding:68px 0;
}

.academics-page h2,
.academics-page h3,
.academics-page h4{
  text-wrap:balance;
}

.academics-page .content-prose{
  max-width:none;
}

.academics-page .content-prose p{
  margin:0 0 13px;
  font-size:16px;
  line-height:1.72;
}

.academics-page .content-prose h2{
  margin:0 0 18px;
  font-size:clamp(30px,3.2vw,42px);
  line-height:1.12;
}

.academic-media{
  position:relative;
  margin:0;
}

.academic-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.academic-section-label{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:0 0 15px;
  color:var(--sky-deep);
  font-family:var(--head);
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.academic-section-label__icon{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:9px;
  background:rgba(245,166,35,.13);
  color:var(--navy);
}

.academic-section-label__icon .icon{
  width:16px;
  height:16px;
}

.academic-stage__meta{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:13px;
}

.academic-stage__meta span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(245,166,35,.12);
  color:var(--gold-deep);
  font-family:var(--head);
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.academic-stage__meta span + span{
  background:rgba(139,26,26,.07);
  color:var(--navy);
}

/* =========================================================
   OVERVIEW
   ========================================================= */

.academic-overview{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 15%,rgba(245,166,35,.12),transparent 26%),
    var(--cream);
}

.academic-overview::after{
  content:"";
  position:absolute;
  right:-60px;
  bottom:-70px;
  width:230px;
  height:230px;
  opacity:.28;
  background-image:radial-gradient(rgba(139,26,26,.28) 1.3px,transparent 1.3px);
  background-size:17px 17px;
  pointer-events:none;
}

.academic-overview__grid{
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(380px,.97fr);
  gap:58px;
  align-items:center;
}

.academic-overview__content h2{
  max-width:690px;
  color:var(--navy);
}

.academic-overview__content p:first-of-type{
  color:var(--ink);
}

.academic-overview__media{
  height:390px;
}

.academic-overview__media img{
  border-radius:26px;
  box-shadow:var(--acad-shadow-lg);
}

.academic-overview__media::before{
  content:"";
  position:absolute;
  inset:13px -12px -12px 13px;
  z-index:-1;
  border-radius:26px;
  background:linear-gradient(135deg,rgba(245,166,35,.22),rgba(139,26,26,.09));
}

.academic-overview__media figcaption,
.academic-assessment__media figcaption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:11px 13px;
  border-radius:12px;
  background:rgba(86,12,12,.88);
  color:#fff;
  font-family:var(--head);
  font-size:12px;
  font-weight:600;
  backdrop-filter:blur(8px);
}

.academic-overview__media figcaption .icon,
.academic-assessment__media figcaption .icon{
  width:17px;
  height:17px;
  color:var(--gold);
}

/* =========================================================
   JOURNEY — no colored top border
   ========================================================= */

.academic-journey{
  padding:35px 0 40px;
  background:#fff;
  border-block:1px solid var(--line);
}

.academic-journey__head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:20px;
}

.academic-journey__head .eyebrow{
  margin-bottom:7px;
}

.academic-journey__head h2{
  margin:0;
  color:var(--navy);
  font-size:clamp(24px,2.6vw,34px);
  line-height:1.15;
}

.academic-journey__head > p{
  max-width:370px;
  margin:0 0 2px;
  color:var(--ink-3);
  font-size:13px;
  line-height:1.6;
  text-align:right;
}

.academic-journey__line{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}

.academic-journey__line a{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:76px;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--cream);
  color:var(--ink);
  transition:
    transform .25s var(--acad-ease),
    border-color .25s ease,
    background .25s ease,
    box-shadow .25s ease;
}

.academic-journey__line a:hover{
  transform:translateY(-3px);
  border-color:rgba(245,166,35,.42);
  background:#fff;
  box-shadow:0 10px 24px rgba(62,39,35,.08);
}

.journey-icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  flex:none;
  border-radius:11px;
  background:#fff;
  color:var(--navy);
  box-shadow:inset 0 0 0 1px rgba(184,119,11,.13);
}

.journey-icon .icon{
  width:19px;
  height:19px;
}

.journey-copy{
  min-width:0;
}

.journey-copy small{
  display:block;
  margin-bottom:3px;
  color:var(--orange);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}

.journey-copy b{
  display:block;
  color:var(--ink);
  font-family:var(--head);
  font-size:13px;
  line-height:1.3;
}

.journey-copy em{
  display:block;
  margin-top:2px;
  color:var(--ink-3);
  font-size:10.5px;
  font-style:normal;
  font-weight:600;
}

/* =========================================================
   SHARED STAGE LAYOUT
   ========================================================= */

.academic-stage{
  scroll-margin-top:110px;
}

.academic-stage__grid{
  display:grid;
  grid-template-columns:minmax(350px,.9fr) minmax(0,1.1fr);
  gap:58px;
  align-items:center;
}

.academic-stage__grid--reverse{
  grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);
}

.academic-stage__content h2{
  color:var(--navy);
}

.academic-stage__media{
  height:430px;
}

.academic-stage__media img{
  border-radius:24px;
  box-shadow:var(--acad-shadow-lg);
}

.academic-stage__badge{
  position:absolute;
  right:16px;
  top:16px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border-radius:999px;
  background:var(--gold);
  color:var(--navy-deep);
  font-family:var(--head);
  font-size:11px;
  font-weight:800;
  box-shadow:0 8px 18px rgba(62,39,35,.15);
}

.academic-stage__badge .icon{
  width:14px;
  height:14px;
}

.academic-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);
  gap:18px;
  margin-top:23px;
}

.academic-detail{
  padding-top:17px;
  border-top:1px solid var(--line);
}

.academic-detail h4,
.academic-inline-heading{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 13px;
  color:var(--navy);
  font-size:14px;
  font-weight:800;
}

.academic-detail h4 .icon,
.academic-inline-heading .icon{
  width:17px;
  height:17px;
  color:var(--gold-deep);
}

.academic-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 14px;
  padding:0;
  margin:0;
  list-style:none;
}

.academic-check-grid li{
  position:relative;
  padding-left:23px;
  color:var(--ink);
  font-size:12.5px;
  line-height:1.45;
}

.academic-check-grid li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:.05em;
  display:grid;
  place-items:center;
  width:16px;
  height:16px;
  border-radius:5px;
  background:var(--green);
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:9px;
  font-weight:900;
}

.academic-subjects{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  padding:0;
  margin:0;
  list-style:none;
}

.academic-subjects li{
  padding:7px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  font-size:11.5px;
  font-weight:600;
}

.academic-note{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:20px !important;
  padding:12px 14px;
  border-radius:12px;
  background:rgba(245,166,35,.10);
  color:var(--ink) !important;
  font-size:13px !important;
  line-height:1.55 !important;
}

.academic-note .icon{
  width:17px;
  height:17px;
  flex:none;
  margin-top:1px;
  color:var(--orange);
}

/* =========================================================
   KINDERGARTEN
   ========================================================= */

.academic-kindergarten{
  background:#fff;
}

.academic-kindergarten::before{
  content:"";
  position:absolute;
  left:-80px;
  bottom:-100px;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(31,157,87,.08),transparent 68%);
  pointer-events:none;
}

.academic-kindergarten .academic-stage__media img{
  border-radius:30px 64px 30px 30px;
}

/* =========================================================
   PRIMARY
   ========================================================= */

.academic-primary{
  background:linear-gradient(135deg,#fff5e5,var(--cream));
}

@media (min-width:901px){
  .academic-primary .academic-stage__grid--reverse{
    grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);
    align-items:stretch;
    gap:54px;
  }

  .academic-primary .academic-stage__media{
    align-self:stretch;
    height:auto;
    min-height:620px;
  }
}

.primary-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:21px;
}

.primary-group{
  padding:16px;
  border:1px solid var(--acad-border);
  border-radius:16px;
  background:rgba(255,255,255,.66);
}

.primary-group__title{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:9px;
}

.primary-group__icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:none;
  border-radius:10px;
  background:rgba(245,166,35,.14);
  color:var(--navy);
}

.primary-group__icon .icon{
  width:17px;
  height:17px;
}

.primary-group__title small{
  display:block;
  margin-bottom:1px;
  color:var(--orange);
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.primary-group__title h4{
  margin:0;
  color:var(--navy);
  font-size:13px;
}

.primary-group > p{
  margin:0 0 7px !important;
  color:var(--ink-3);
  font-size:10px !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.academic-primary .academic-stage__media img{
  border:6px solid #fff;
  object-position:center;
}

/* =========================================================
   MIDDLE
   ========================================================= */

.academic-middle{
  position:relative;
  overflow:hidden;
  background:#fff;
}

.academic-middle__grid{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(430px,1.05fr);
  gap:62px;
  align-items:center;
}

.academic-middle__media{
  position:relative;
  min-height:440px;
}

.academic-middle__media-main{
  position:absolute;
  left:0;
  top:0;
  width:78%;
  height:340px;
}

.academic-middle__media-main img{
  border-radius:24px;
  box-shadow:var(--acad-shadow-lg);
}

.academic-middle__media-small{
  position:absolute;
  right:0;
  bottom:0;
  width:48%;
  height:225px;
  padding:6px;
  border-radius:20px;
  background:#fff;
  box-shadow:var(--acad-shadow);
}

.academic-middle__media-small img{
  border-radius:15px;
}

.academic-middle__media-label{
  position:absolute;
  left:18px;
  bottom:28px;
  display:flex;
  align-items:center;
  gap:8px;
  max-width:220px;
  padding:10px 12px;
  border-radius:12px;
  background:var(--navy);
  color:#fff;
  font-size:11px;
  font-weight:700;
}

.academic-middle__media-label .icon{
  width:16px;
  height:16px;
  color:var(--gold);
}


/* =========================================================
   SECONDARY — calm premium academic band
   ========================================================= */

.academic-secondary{
  position:relative;
  overflow:hidden;
  padding:68px 0;
  color:#f7efe7;

  background:
    radial-gradient(
      circle at 12% 15%,
      rgba(245,166,35,.09),
      transparent 28%
    ),
    linear-gradient(
      118deg,
      #4f1616 0%,
      #642020 46%,
      #7a2824 100%
    );
}

.academic-secondary::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,.018),
      transparent 35%,
      rgba(255,255,255,.025)
    );
}

.academic-secondary::after{
  content:"";
  position:absolute;
  right:3.5%;
  bottom:28px;
  width:145px;
  height:92px;
  opacity:.12;
  pointer-events:none;

  background-image:
    radial-gradient(
      rgba(255,255,255,.68) 1.2px,
      transparent 1.2px
    );
  background-size:15px 15px;
}

.academic-secondary__grid{
  position:relative;
  z-index:1;

  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);
  gap:64px;
  align-items:center;
}

.academic-secondary__content{
  max-width:680px;
}

.academic-stage__meta--dark{
  margin-bottom:14px;
}

.academic-stage__meta--dark span{
  background:rgba(245,166,35,.14);
  color:#ffd777;
}

.academic-stage__meta--dark span + span{
  background:rgba(255,255,255,.075);
  color:#f5e9dc;
}

.academic-secondary__content h2{
  margin:0 0 20px;

  color:#fff !important;

  font-size:clamp(36px,4vw,54px);
  line-height:1.04;
  letter-spacing:-.02em;
}

.academic-secondary__content h2 span{
  display:block;
  margin-top:4px;

  color:#f6ddd1;

  font-size:.82em;
  font-weight:700;
}

.academic-secondary__content p{
  margin:0 0 15px;
  max-width:660px;

  color:#f3e4d4;

  font-size:16px;
  line-height:1.72;
}

.academic-secondary__content strong{
  color:#fff4dc;
}

.academic-secondary__subjects{
  margin-top:23px;
  padding:18px 20px 20px;

  border:1px solid rgba(245,166,35,.34);
  border-radius:18px;

  background:
    linear-gradient(135deg,rgba(255,248,238,.98),rgba(255,239,210,.94));

  box-shadow:0 16px 34px rgba(34,8,8,.18);
}

.academic-inline-heading--dark{
  margin:0 0 13px;

  color:var(--navy) !important;
}

.academic-inline-heading--dark .icon{
  color:var(--orange) !important;
}

.academic-subjects--dark{
  gap:8px;
}

.academic-subjects--dark li{
  padding:9px 13px;

  border:1px solid rgba(184,119,11,.28);
  border-radius:999px;

  background:linear-gradient(135deg,#fff,#fff4dc);

  color:var(--navy);

  font-size:13px;
  font-weight:600;
}

.academic-subjects--dark li:nth-child(2n){
  background:linear-gradient(135deg,#fff8ee,#ffe8bf);
  border-color:rgba(232,96,44,.28);
}

.academic-secondary__closing{
  margin-top:22px !important;
  padding:17px 0 0;

  border-top:1px solid rgba(255,255,255,.10);

  color:#e9d6c3 !important;
}

.academic-secondary__media{
  height:430px;
  overflow:hidden;

  border:5px solid rgba(255,255,255,.92);
  border-radius:26px;

  box-shadow:
    0 25px 60px rgba(34,8,8,.30);
}

.academic-secondary__media img{
  border:0;
  border-radius:0;
  box-shadow:none;
}

.academic-secondary__badge{
  position:absolute;
  left:16px;
  top:16px;
  z-index:2;

  padding:8px 12px;

  border-radius:999px;

  background:#f4a51c;

  color:#4f1616;

  font-family:var(--head);
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.academic-secondary__media figcaption{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;

  display:flex;
  align-items:center;
  gap:9px;

  padding:11px 13px;

  border-radius:12px;

  background:rgba(48,13,13,.76);
  backdrop-filter:blur(8px);

  color:#fff;

  font-family:var(--head);
  font-size:11.5px;
  font-weight:600;
}

.academic-secondary__media figcaption .icon{
  width:16px;
  height:16px;
  flex:none;

  color:var(--gold);
}

/* =========================================================
   SENIOR SECONDARY
   ========================================================= */

.academic-senior{
  background:linear-gradient(145deg,#fff6e6,var(--cream));
}

.academic-senior__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);
  gap:50px;
  align-items:end;
  margin-bottom:28px;
}

.academic-senior__head h2{
  margin:0;
  color:var(--navy);
  font-size:clamp(30px,3.2vw,42px);
}

.academic-senior__head > p{
  margin:0 0 2px;
  color:var(--ink-2);
  font-size:15px;
  line-height:1.65;
}

.senior-stream-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.senior-stream{
  min-height:208px;
  padding:18px;
  border:1px solid var(--acad-border);
  border-radius:17px;
  background:#fff;
  box-shadow:0 5px 16px rgba(62,39,35,.045);
}

.senior-stream__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:13px;
}

.senior-stream__head span{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:9px;
  background:rgba(245,166,35,.14);
  color:var(--gold-deep);
  font-size:12px;
  font-weight:800;
}

.senior-stream__head .icon{
  width:20px;
  height:20px;
  color:var(--navy);
}

.senior-stream h3{
  margin:0 0 13px;
  color:var(--navy);
  font-size:15px;
  line-height:1.35;
}

.senior-stream ul{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:0;
  margin:0;
  list-style:none;
}

.senior-stream li{
  padding:6px 8px;
  border-radius:999px;
  background:var(--cream);
  color:var(--ink);
  font-size:10.5px;
  font-weight:600;
}

.senior-stream--optional{
  background:linear-gradient(145deg,var(--navy-deep),var(--navy));
  border-color:transparent;
}

.senior-stream--optional h3,
.senior-stream--optional p{
  color:#fff;
}

.senior-stream--optional li{
  background:rgba(255,255,255,.10);
  color:#fff;
}

.senior-stream--optional .senior-stream__head span{
  background:var(--gold);
  color:var(--navy-deep);
}

.senior-stream--optional .senior-stream__head .icon{
  color:var(--gold);
}

.senior-stream--optional p{
  margin:13px 0 0;
  font-size:11.5px;
  line-height:1.55;
  color:#f1dcc0;
}

/* =========================================================
   METHODOLOGY
   ========================================================= */

.academic-method{
  background:#fff;
}

.academic-method__shell{
  display:grid;
  grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);
  overflow:hidden;
  border:1px solid var(--acad-border);
  border-radius:24px;
  background:var(--cream);
  box-shadow:var(--acad-shadow);
}

.academic-method__intro{
  padding:34px 32px;
  background:
    radial-gradient(circle at 100% 0,rgba(245,166,35,.18),transparent 34%),
    linear-gradient(145deg,var(--navy-deep),var(--navy));
  color:#fff;
}

.academic-method__intro .eyebrow{
  color:var(--gold);
}

.academic-method__intro h2{
  margin:0 0 16px;
  color:#fff;
  font-size:clamp(27px,3vw,38px);
  line-height:1.14;
}

.academic-method__intro p{
  margin:0 0 12px;
  color:#f0ddc4;
  font-size:13.5px;
  line-height:1.65;
}

.academic-method__body{
  padding:30px;
}

.academic-method__body h3{
  margin:0 0 15px;
  color:var(--navy);
  font-size:16px;
}

.method-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  padding:0;
  margin:0;
  list-style:none;
}

.method-grid li{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  font-size:12px;
  font-weight:600;
  line-height:1.4;
}

.method-grid li > span{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  flex:none;
  border-radius:9px;
  background:rgba(245,166,35,.12);
  color:var(--navy);
}

.method-grid li:nth-child(3n + 2) > span{
  background:rgba(31,157,87,.10);
  color:var(--green);
}

.method-grid li:nth-child(3n + 3) > span{
  background:rgba(139,26,26,.08);
  color:var(--navy);
}

.method-grid .icon{
  width:15px;
  height:15px;
}


/* =========================================================
   ASSESSMENT — editorial, open and balanced
   ========================================================= */

.academic-assessment{
  position:relative;
  overflow:hidden;

  background:
    linear-gradient(
      180deg,
      #fffaf2 0%,
      #fff7e9 100%
    );
}

.academic-assessment::before{
  content:"";
  position:absolute;

  right:-90px;
  top:-90px;

  width:300px;
  height:300px;

  border-radius:50%;

  background:
    radial-gradient(
      circle,
      rgba(245,166,35,.11),
      transparent 68%
    );

  pointer-events:none;
}

.academic-assessment__head{
  position:relative;
  z-index:1;

  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(310px,.68fr);
  gap:54px;

  align-items:end;

  margin-bottom:32px;
  padding-bottom:24px;

  border-bottom:1px solid rgba(184,119,11,.18);
}

.academic-assessment__head h2{
  margin:0;

  color:var(--navy);

  font-size:clamp(31px,3.4vw,44px);
  line-height:1.1;
}

.academic-assessment__head > p{
  margin:0 0 3px;

  color:var(--ink-2);

  font-size:14px;
  line-height:1.65;
}

.academic-assessment__layout{
  position:relative;
  z-index:1;

  display:grid;
  grid-template-columns:minmax(380px,.82fr) minmax(0,1.18fr);

  gap:44px;
  align-items:stretch;
}

.academic-assessment__media{
  position:relative;

  height:auto;

  overflow:hidden;

  border-radius:24px;

  box-shadow:
    0 22px 50px rgba(62,39,35,.14);
}

@media (min-width:901px){
  .academic-assessment__media{
    min-height:620px;
  }
}

.academic-assessment__media img{
  border-radius:0;
  box-shadow:none;
}

.academic-assessment__media figcaption{
  left:16px;
  right:16px;
  bottom:16px;

  padding:11px 13px;

  border-radius:11px;

  background:rgba(74,25,19,.82);
}

.academic-assessment__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:26px 28px;
  border:1px solid rgba(184,119,11,.13);
  border-radius:22px;
  background:rgba(255,255,255,.58);
  box-shadow:0 16px 38px rgba(62,39,35,.055);
}

.academic-assessment__content > p:first-child{
  margin:0 0 21px;

  max-width:720px;

  color:var(--ink);

  font-size:16px;
  line-height:1.72;
}

.academic-assessment__methods{
  padding:20px 0 18px;

  border-top:1px solid rgba(184,119,11,.16);
  border-bottom:1px solid rgba(184,119,11,.16);
}

.academic-assessment__methods h4{
  margin:0 0 15px;

  color:var(--navy);

  font-size:12px;
  font-weight:800;

  letter-spacing:.11em;
  text-transform:uppercase;
}

.assessment-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));

  gap:0 18px;

  padding:0;
  margin:0;

  list-style:none;
}

.assessment-grid li{
  display:flex;
  align-items:center;
  gap:10px;

  min-width:0;
  min-height:48px;

  padding:10px 8px 10px 0;

  border:0;
  border-bottom:1px solid rgba(236,217,184,.78);
  border-radius:0;

  background:transparent;

  color:var(--ink);

  font-size:12.5px;
  font-weight:600;
}

.assessment-grid li:nth-last-child(-n+2){
  border-bottom:0;
}

.assessment-grid li > span{
  display:grid;
  place-items:center;

  width:24px;
  height:24px;
  flex:none;

  border-radius:7px;

  background:rgba(245,166,35,.13);

  color:var(--orange);
}

.assessment-grid li > span .icon{
  width:13px;
  height:13px;
}

.academic-assessment__closing{
  margin:21px 0 0 !important;

  max-width:760px;

  color:var(--ink-2) !important;

  font-size:14px !important;
  line-height:1.72 !important;
}

/* =========================================================
   INTERACTION
   ========================================================= */

@media (hover:hover){
  .academic-media img{
    transition:transform .55s var(--acad-ease);
  }

  .academic-overview__media:hover img,
  .academic-stage__media:hover img,
  .academic-middle__media-main:hover img,
  .academic-middle__media-small:hover img,
  .academic-secondary__media:hover img,
  .academic-assessment__media:hover img{
    transform:scale(1.018);
  }

  .senior-stream{
    transition:
      transform .25s var(--acad-ease),
      box-shadow .25s ease,
      border-color .25s ease;
  }

  .senior-stream:hover{
    transform:translateY(-3px);
    border-color:rgba(245,166,35,.32);
    box-shadow:0 12px 28px rgba(62,39,35,.08);
  }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width:1100px){
  .academic-overview__grid,
  .academic-stage__grid,
  .academic-stage__grid--reverse,
  .academic-middle__grid,
  .academic-secondary__grid,
  .academic-assessment__grid{
    gap:38px;
  }

  .academic-overview__grid{
    grid-template-columns:minmax(0,1fr) minmax(340px,.86fr);
  }

  .academic-stage__grid{
    grid-template-columns:minmax(310px,.82fr) minmax(0,1.18fr);
  }

  .academic-stage__grid--reverse{
    grid-template-columns:minmax(0,1.18fr) minmax(310px,.82fr);
  }

  .academic-middle__grid{
    grid-template-columns:minmax(0,1fr) minmax(380px,.95fr);
  }

  .academic-secondary__grid{
    grid-template-columns:minmax(340px,.88fr) minmax(0,1.12fr);
  }
}

@media (max-width:900px){
  .academics-page .section{
    padding:58px 0;
  }

  .academic-overview__grid,
  .academic-stage__grid,
  .academic-stage__grid--reverse,
  .academic-middle__grid,
  .academic-secondary__grid,
  .academic-assessment__grid{
    grid-template-columns:1fr;
  }

  .academic-overview__media,
  .academic-stage__media,
  .academic-secondary__media,
  .academic-assessment__media{
    width:min(100%,680px);
    height:360px;
    margin:0 auto;
  }

  .academic-stage__grid--reverse .academic-stage__media{
    order:-1;
  }

  .academic-journey__head{
    align-items:start;
  }

  .academic-journey__head > p{
    display:none;
  }

  .academic-journey__line{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .academic-middle__media{
    width:min(100%,680px);
    min-height:430px;
    margin:0 auto;
  }

  .academic-senior__head{
    grid-template-columns:1fr;
    gap:10px;
  }

  .senior-stream-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .academic-method__shell{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .academics-page .section{
    padding:48px 0;
  }

  .academics-page .content-prose p{
    font-size:15px;
    line-height:1.68;
  }

  .academic-overview__media,
  .academic-stage__media,
  .academic-secondary__media,
  .academic-assessment__media{
    height:280px;
  }

  .academic-journey{
    padding:28px 0 32px;
  }

  .academic-journey__head{
    margin-bottom:15px;
  }

  .academic-journey__line{
    grid-template-columns:1fr;
    gap:7px;
  }

  .academic-journey__line a{
    min-height:64px;
    padding:11px 12px;
  }

  .journey-icon{
    width:36px;
    height:36px;
  }

  .academic-detail-grid,
  .primary-groups{
    grid-template-columns:1fr;
  }

  .academic-check-grid{
    grid-template-columns:1fr;
  }

  .academic-middle__media{
    min-height:330px;
  }

  .academic-middle__media-main{
    width:88%;
    height:260px;
  }

  .academic-middle__media-small{
    width:48%;
    height:160px;
  }

  .academic-middle__media-label{
    display:none;
  }

  .senior-stream-grid{
    grid-template-columns:1fr;
  }

  .senior-stream{
    min-height:0;
  }

  .academic-method__intro,
  .academic-method__body{
    padding:24px 20px;
  }

  .method-grid,
  .assessment-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:430px){
  .academic-stage__meta{
    flex-wrap:wrap;
  }

  .academic-overview__media,
  .academic-stage__media,
  .academic-secondary__media,
  .academic-assessment__media{
    height:240px;
  }

  .academic-middle__media{
    min-height:285px;
  }

  .academic-middle__media-main{
    height:220px;
  }

  .academic-middle__media-small{
    height:135px;
  }
}

@media (prefers-reduced-motion:reduce){
  .academics-page *,
  .academics-page *::before,
  .academics-page *::after{
    transition:none !important;
    animation:none !important;
  }
}


/* =========================================================
   SECONDARY + ASSESSMENT RESPONSIVE REFINEMENTS
   ========================================================= */

@media (max-width:1100px){
  .academic-secondary__grid{
    grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);
    gap:44px;
  }

  .academic-assessment__layout{
    grid-template-columns:minmax(340px,.85fr) minmax(0,1.15fr);
    gap:40px;
  }
}

@media (max-width:900px){
  .academic-secondary{
    padding:58px 0;
  }

  .academic-secondary__grid,
  .academic-assessment__head,
  .academic-assessment__layout{
    grid-template-columns:1fr;
  }

  .academic-secondary__content{
    max-width:none;
  }

  .academic-secondary__media{
    width:min(100%,680px);
    height:380px;
    margin:0 auto;
  }

  .academic-assessment__head{
    gap:10px;
    margin-bottom:26px;
  }

  .academic-assessment__head > p{
    max-width:640px;
  }

  .academic-assessment__layout{
    gap:30px;
  }

  .academic-assessment__media{
    position:relative;
    top:auto;

    width:min(100%,680px);
    height:350px;

    margin:0 auto;
  }
}

@media (max-width:640px){
  .academic-secondary{
    padding:50px 0;
  }

  .academic-secondary__content h2{
    font-size:34px;
  }

  .academic-secondary__media{
    height:285px;
    border-width:4px;
    border-radius:20px;
  }

  .academic-secondary__media figcaption{
    left:10px;
    right:10px;
    bottom:10px;
  }

  .academic-assessment__head{
    padding-bottom:18px;
  }

  .academic-assessment__layout{
    gap:24px;
  }

  .academic-assessment__media{
    height:280px;
    border-radius:19px;
  }

  .assessment-grid{
    grid-template-columns:1fr;
    gap:0;
  }

  .assessment-grid li:nth-last-child(-n+2){
    border-bottom:1px solid rgba(236,217,184,.78);
  }

  .assessment-grid li:last-child{
    border-bottom:0;
  }
}

/* Project typography polish */
.academics-page .content-prose p,
.academic-primary__content > p,
.academic-secondary__content > p,
.academic-assessment__head > p,
.academic-assessment__intro,
.academic-assessment__closing,
.academic-note{
  font-size:16px;
  line-height:1.7;
}

.academic-primary__content > p,
.academic-secondary__content > p,
.academic-assessment__head > p,
.academic-assessment__intro,
.academic-assessment__closing{
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
}

.academic-check-grid li,
.method-grid li,
.assessment-grid li,
.senior-stream li,
.academic-criteria li{
  font-size:14px !important;
  line-height:1.52;
}

.academic-subjects li,
.primary-group > p,
.academic-stage-pill,
.academic-primary__media figcaption,
.academic-secondary__media figcaption{
  font-size:12.5px !important;
  line-height:1.42;
}

.primary-group > p,
.academic-stage-pill,
.academic-kicker,
.academic-section-label,
.academic-section-label > span:last-child{
  font-size:12.5px !important;
  letter-spacing:.12em;
}

@media (max-width:640px){
  .academic-primary__content > p,
  .academic-secondary__content > p,
  .academic-assessment__head > p,
  .academic-assessment__intro,
  .academic-assessment__closing{
    text-align:left;
    hyphens:none;
  }
}
