*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Georgia,'Times New Roman',serif;
  color:#162033;
  background:#ffffff;
  line-height:1.6;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.wrap{width:min(1180px,92vw);margin:0 auto}

.site-header{
  position:fixed;
  top:0;left:0;right:0;
  height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 4vw;
  background:rgba(7,18,35,.84);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.10);
  color:#fff;
  z-index:50;
}
.brand{
  font-size:1.8rem;
  font-weight:700;
  letter-spacing:.02em;
}
.main-nav{
  display:flex;
  gap:.58rem;
  font-size:.70rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.main-nav a{opacity:.92}
.main-nav a:hover{opacity:1}

.hero{
  min-height:100vh;
  position:relative;
  display:flex;
  align-items:center;
  padding:110px 0 110px;
  background-image:
    linear-gradient(90deg, rgba(6,16,34,.92) 0%, rgba(6,16,34,.84) 34%, rgba(6,16,34,.35) 58%, rgba(6,16,34,.20) 100%),
    url('assets/hero-discus.png');
  background-size:cover;
  background-repeat:no-repeat;
  background-position:68% 8%;
  color:#fff;
}
.hero-grid{
  display:grid;
  grid-template-columns:minmax(0, 620px) 1fr;
  gap:3rem;
  width:min(1280px,92vw);
}
.hero-copy{
  position:relative;
  z-index:2;
  max-width:620px;
}
.eyebrow{
  font-family:Arial,Helvetica,sans-serif;
  font-size:.85rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#f0c36d;
  font-weight:700;
  margin:0 0 1rem;
}
.eyebrow.dark{color:#9a6f22}
.hero h1{
  font-size:clamp(3.2rem,7vw,6.3rem);
  line-height:.95;
  margin:0 0 1.5rem;
  letter-spacing:-.04em;
}
.lead{
  font-size:clamp(1.08rem,2vw,1.5rem);
  line-height:1.6;
  max-width:700px;
  color:rgba(255,255,255,.95);
}
.hero-actions{
  display:flex;
  gap:1rem;
  margin-top:2rem;
  flex-wrap:wrap;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 1.4rem;
  border-radius:999px;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.92rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn.primary{
  background:#f0c36d;
  color:#091221;
}
.btn.secondary{
  color:#fff;
  border:1px solid rgba(255,255,255,.34);
  background:rgba(255,255,255,.06);
}

.stats{
  margin-top:-48px;
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1rem;
}
.stat-card{
  background:#0d1830;
  color:#fff;
  padding:1rem 1rem 1.1rem;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 38px rgba(7,18,35,.16);
  text-align:center;
}
.stat-label{
  display:block;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.70rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#f0c36d;
}
.stat-value{
  display:block;
  font-size:1.55rem;
  line-height:1.05;
  margin:.35rem 0;
}
.stat-note{
  display:block;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.70rem;
  color:rgba(255,255,255,.78);
}

.section{padding:5.4rem 0}
.section-cream{background:#f7f2e9}
.section-dark{
  background:#0d1830;
  color:#fff;
}
.section-dark .eyebrow{color:#f0c36d}
.section h2{
  font-size:clamp(2rem,3.8vw,3.3rem);
  line-height:1.05;
  margin:.1rem 0 1.2rem;
  letter-spacing:-.03em;
}
.split{
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(0,1.3fr);
  gap:3rem;
  align-items:start;
}

.cards{
  display:grid;
  gap:1.25rem;
  margin-top:1.8rem;
}
.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{
  background:#fff;
  border:1px solid #e7dcc7;
  border-radius:22px;
  padding:1.45rem 1.35rem;
  box-shadow:0 12px 28px rgba(24,32,51,.06);
}
.card h3{
  margin:0 0 .65rem;
  font-size:1.2rem;
}

.feature-grid{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);
  gap:.58rem;
  align-items:center;
}
.feature-grid.reverse .feature-image{order:2}
.feature-image img{
  width:100%;
  border-radius:26px;
  box-shadow:0 22px 40px rgba(16,24,42,.18);
}
.feature-copy p{margin-top:0}
.section-dark .feature-copy p{color:rgba(255,255,255,.9)}

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.58rem;
  margin-top:1.8rem;
}
.gallery-item{
  margin:0;
  background:#fff;
  border:1px solid #e8decf;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 14px 30px rgba(18,24,42,.08);
}
.gallery-item img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
}
.gallery-item figcaption{
  padding:1rem 1rem 1.1rem;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.70rem;
  color:#303a4c;
}

.closing{
  background:#0a1222;
  color:#fff;
  text-align:center;
  padding:4.8rem 0 5.4rem;
}
.closing h2{
  font-size:clamp(2rem,4vw,3.4rem);
  margin:0 0 1rem;
}
.closing p{
  width:min(760px,92vw);
  margin:0 auto;
  font-size:1.15rem;
  color:rgba(255,255,255,.88);
}

@media (max-width: 1080px){
  .stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .three-up{grid-template-columns:1fr}
  .four-up{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-grid,
  .feature-grid.reverse,
  .split{
    grid-template-columns:1fr;
  }
  .feature-grid.reverse .feature-image{order:0}
}
@media (max-width: 780px){
  .site-header{
    height:auto;
    padding:1rem 4vw;
    flex-direction:column;
    gap:.7rem;
  }
  .brand{font-size:1.45rem}
  .main-nav{
    gap:1rem;
    flex-wrap:wrap;
    justify-content:center;
    font-size:.8rem;
  }
  .hero{
    min-height:auto;
    padding:150px 0 100px;
    background-position:64% 14%;
  }
  .hero-grid{grid-template-columns:1fr}
  .stats{
    margin-top:-34px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .gallery-grid{grid-template-columns:1fr}
}
@media (max-width: 520px){
  .hero{
    background-position:60% 18%;
    padding:160px 0 88px;
  }
  .hero h1{
    font-size:clamp(2.65rem,12vw,4.1rem);
  }
  .lead{font-size:1.03rem}
  .stats{grid-template-columns:1fr}
  .four-up{grid-template-columns:1fr}
}


/* Contact form and adaptive share/save section */
.contact-section{
  background:#f7f2e9;
}
.contact-card{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  gap:2rem;
  align-items:start;
  background:#ffffff;
  border:1px solid #e4d8c3;
  border-radius:28px;
  padding:2rem;
  box-shadow:0 18px 40px rgba(18,24,42,.08);
}
.contact-intro{
  position:sticky;
  top:96px;
}
.inline-email{
  color:#0d1830;
  font-weight:800;
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
.compact-actions{
  margin-top:1.4rem;
}
.contact-actions{
  display:flex;
  flex-direction:column;
  gap:.85rem;
  align-items:stretch;
}
.contact-actions .btn{
  width:100%;
  border:0;
  cursor:pointer;
  text-align:center;
}
.btn.dark-text{
  color:#091221;
}
.bookmark-btn{
  background:#0d1830;
  color:#ffffff;
}
.bookmark-help{
  margin:.85rem 0 0;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.92rem;
  color:#4b5563;
}
.last-updated{
  margin-top:1.25rem;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.9rem;
  color:#4b5563;
}
.contact-form{
  display:grid;
  gap:1rem;
}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.form-row{
  display:flex;
  flex-direction:column;
  gap:.35rem;
}
.form-row label{
  font-family:Arial,Helvetica,sans-serif;
  font-size:.70rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#182033;
}
.optional{
  font-weight:600;
  color:#6b7280;
  letter-spacing:0;
  text-transform:none;
}
.form-row input,
.form-row select,
.form-row textarea{
  width:100%;
  border:1px solid #d8cbb5;
  border-radius:14px;
  padding:.9rem 1rem;
  font:inherit;
  color:#162033;
  background:#fffaf2;
  outline:none;
}
.form-row input:focus,
.form-row select:focus,
.form-row textarea:focus{
  border-color:#c49b45;
  box-shadow:0 0 0 4px rgba(196,155,69,.14);
  background:#ffffff;
}
.form-submit{
  width:100%;
  border:0;
  cursor:pointer;
  margin-top:.25rem;
}
.form-note{
  margin:.1rem 0 0;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.9rem;
  color:#4b5563;
}
@media (max-width:900px){
  .contact-card{
    grid-template-columns:1fr;
    padding:1.4rem;
  }
  .contact-intro{
    position:static;
  }
  .form-grid{
    grid-template-columns:1fr;
  }
}


/* Above-the-fold refinement and GATE callout */
.hero{
  min-height:82vh;
  padding:92px 0 84px;
}
.hero h1{
  font-size:clamp(2.75rem,5.9vw,5.55rem);
  line-height:.93;
  margin-bottom:1rem;
}
.lead{
  font-size:clamp(1rem,1.55vw,1.26rem);
  line-height:1.48;
  max-width:660px;
}
.hero-actions{
  margin-top:1.35rem;
}
.btn{
  min-height:48px;
  padding:0 1.15rem;
}
.stats{
  margin-top:-42px;
}
.stat-card{
  padding:.85rem .75rem .95rem;
}
.stat-label{
  font-size:.68rem;
}
.stat-value{
  font-size:1.35rem;
}
.stat-note{
  font-size:.76rem;
}
.standout-note{
  margin-top:1.35rem;
  padding:1.1rem 1.15rem;
  border-radius:22px;
  border:1px solid #d4ad63;
  background:linear-gradient(135deg,#fff8ea,#ffffff);
  box-shadow:0 14px 30px rgba(18,24,42,.08);
}
.standout-note span{
  display:block;
  margin-bottom:.45rem;
  font-family:Arial,Helvetica,sans-serif;
  color:#9a6f22;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.standout-note p{
  margin:0;
  color:#162033;
  font-size:1.02rem;
  line-height:1.45;
  font-weight:600;
}
@media (max-width:1080px){
  .hero{
    min-height:auto;
    padding:112px 0 86px;
  }
}
@media (max-width:780px){
  .hero{
    padding:138px 0 84px;
  }
  .hero h1{
    font-size:clamp(2.35rem,10vw,3.7rem);
  }
  .stats{
    margin-top:-26px;
  }
}










/* Final hero layout: discus image starts at center/right and keeps the top visible */
.hero{
  background-color:#061631;
  background-image:
    linear-gradient(90deg,
      rgba(6,22,49,1) 0%,
      rgba(6,22,49,1) 36%,
      rgba(6,22,49,.94) 46%,
      rgba(6,22,49,.70) 56%,
      rgba(6,22,49,.30) 66%,
      rgba(6,22,49,0) 78%
    ),
    url('assets/hero-discus.png');
  background-size:cover, 50% auto;
  background-repeat:no-repeat, no-repeat;
  background-position:left center, right top;
}
@media (max-width:1080px){
  .hero{
    background-image:
      linear-gradient(90deg,
        rgba(6,22,49,1) 0%,
        rgba(6,22,49,.98) 42%,
        rgba(6,22,49,.72) 58%,
        rgba(6,22,49,.20) 78%,
        rgba(6,22,49,0) 100%
      ),
      url('assets/hero-discus.png');
    background-size:cover, 52% auto;
    background-position:left center, right top;
  }
}
@media (max-width:780px){
  .hero{
    background-image:
      linear-gradient(180deg,
        rgba(6,22,49,.98) 0%,
        rgba(6,22,49,.90) 44%,
        rgba(6,22,49,.46) 76%,
        rgba(6,22,49,.18) 100%
      ),
      url('assets/hero-discus.png');
    background-size:cover, 82% auto;
    background-position:center top, right top;
  }
}
@media (max-width:520px){
  .hero{
    background-size:cover, 95% auto;
    background-position:center top, center top;
  }
}


/* Professional portrait integrated into personal story */
.portrait-card{
  margin:1.35rem 0 0;
  border-radius:26px;
  overflow:hidden;
  background:#0d1830;
  border:1px solid rgba(13,24,48,.12);
  box-shadow:0 18px 42px rgba(18,24,42,.16);
}
.portrait-card img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
  display:block;
}
.portrait-card figcaption{
  padding:.85rem 1rem;
  color:#ffffff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
}
@media (max-width:900px){
  .portrait-card{
    max-width:420px;
  }
}


/* Personal statement section layout refinement */
.story-layout{
  grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);
  gap:3rem;
}
.story-content-with-portrait{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(240px,.7fr);
  gap:1.55rem;
  align-items:start;
}
.story-copy p:first-child{
  margin-top:0;
}
.story-content-with-portrait .portrait-card{
  margin:0;
  position:sticky;
  top:96px;
}
.story-content-with-portrait .portrait-card img{
  aspect-ratio:4/5.35;
}
@media (max-width:1100px){
  .story-layout{
    grid-template-columns:1fr;
  }
  .story-content-with-portrait{
    grid-template-columns:minmax(0,1.1fr) minmax(230px,.65fr);
  }
}
@media (max-width:820px){
  .story-content-with-portrait{
    grid-template-columns:1fr;
  }
  .story-content-with-portrait .portrait-card{
    position:static;
    max-width:420px;
  }
}


/* Formspree direct-submit feedback */
.form-submit:disabled{
  opacity:.72;
  cursor:wait;
}
.form-note.form-success{
  color:#166534;
  font-weight:700;
}
.form-note.form-error{
  color:#991b1b;
  font-weight:700;
}


/* Mobile-only story image swap support */
.portrait-card picture{
  display:block;
}
.portrait-card picture img{
  width:100%;
  display:block;
}
@media (max-width:820px){
  .story-content-with-portrait .portrait-card img{
    aspect-ratio:4/5;
    object-fit:cover;
    object-position:center center;
  }
}


/* Recommendation letter section */
.recommendation-section{
  background:#ffffff;
}
.recommendation-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:2rem;
  align-items:start;
}
.recommendation-copy p{
  margin-top:0;
}
.recommendation-highlights{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin:1.5rem 0;
}
.recommendation-highlights article{
  background:#f7f2e9;
  border:1px solid #e3d3bb;
  border-radius:20px;
  padding:1rem;
}
.recommendation-highlights span{
  display:block;
  margin-bottom:.35rem;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#9a6f22;
}
.recommendation-highlights p{
  margin:0;
  font-size:.98rem;
  line-height:1.45;
}
.recommendation-quote{
  margin:1.25rem 0 0;
  padding:1rem 1.2rem;
  border-left:5px solid #d3ad62;
  background:#0d1830;
  color:#ffffff;
  border-radius:0 18px 18px 0;
  font-size:1.12rem;
  font-weight:700;
  line-height:1.45;
}
.recommendation-letter{
  margin:0;
  background:#0d1830;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 18px 42px rgba(18,24,42,.18);
  border:1px solid rgba(13,24,48,.16);
}
.recommendation-letter img{
  width:100%;
  display:block;
  background:#ffffff;
}
.recommendation-letter figcaption{
  padding:.95rem 1rem;
  color:#ffffff;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  line-height:1.35;
}
@media (max-width:980px){
  .recommendation-grid{
    grid-template-columns:1fr;
  }
  .recommendation-letter{
    max-width:640px;
  }
}
@media (max-width:640px){
  .recommendation-highlights{
    grid-template-columns:1fr;
  }
}


/* Mobile header and hero refinement: keep menu from covering the hero */
@media (max-width:780px){
  .site-header{
    height:64px;
    padding:.65rem 4vw;
    flex-direction:row;
    justify-content:center;
    gap:0;
    overflow:hidden;
  }

  .site-header .brand{
    font-size:1.35rem;
    line-height:1;
    white-space:nowrap;
  }

  .site-header .main-nav{
    display:none;
  }

  .hero{
    padding:86px 0 58px;
    min-height:auto;
  }

  .hero h1{
    font-size:clamp(2.55rem, 11.2vw, 4.25rem);
    line-height:.93;
    margin-bottom:.9rem;
  }

  .lead{
    font-size:1rem;
    line-height:1.48;
    max-width:92vw;
  }

  .hero-actions{
    margin-top:1.15rem;
    display:grid;
    grid-template-columns:1fr;
    gap:.75rem;
    max-width:360px;
  }

  .hero-actions .btn{
    min-height:48px;
    width:100%;
    padding:0 1rem;
    font-size:.82rem;
  }

  .stats{
    margin-top:-18px;
  }
}

@media (max-width:520px){
  .site-header{
    height:58px;
    padding:.58rem 4vw;
  }

  .site-header .brand{
    font-size:1.2rem;
  }

  .hero{
    padding:76px 0 50px;
  }

  .hero h1{
    font-size:clamp(2.25rem, 11vw, 3.45rem);
    line-height:.94;
  }

  .lead{
    font-size:.96rem;
  }

  .hero-actions{
    max-width:100%;
  }
}





/* Mobile-only hamburger navigation: white full-screen menu with icons */
.mobile-menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#ffffff;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  padding:0;
  position:relative;
  z-index:60;
}
.mobile-menu-toggle span{
  display:block;
  width:19px;
  height:2px;
  background:#ffffff;
  border-radius:999px;
  transition:transform .18s ease, opacity .18s ease;
}
.mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){
  transform:translateY(7px) rotate(45deg);
}
.mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){
  opacity:0;
}
.mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
}
.mobile-menu{
  display:none;
}
.mobile-menu-icon{
  width:1.45rem;
  height:1.45rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#0d1830;
  flex:0 0 auto;
}
.mobile-menu-icon svg{
  width:100%;
  height:100%;
  display:block;
}
@media (max-width:780px){
  .site-header{
    justify-content:space-between !important;
    overflow:visible !important;
    position:relative;
    z-index:60;
  }

  .site-header .main-nav{
    display:none !important;
  }

  .mobile-menu-toggle{
    display:flex;
  }

  .mobile-menu{
    position:fixed;
    top:64px;
    left:0;
    right:0;
    bottom:0;
    z-index:55;
    display:block;
    background:#ffffff;
    padding:1.15rem 7.25vw 2rem;
    overflow:auto;
  }

  .mobile-menu[hidden]{
    display:none;
  }

  .mobile-menu nav{
    display:flex;
    flex-direction:column;
    gap:1.25rem;
    max-width:520px;
    margin:0 auto;
    padding-top:.25rem;
  }

  .mobile-menu a{
    display:flex;
    align-items:center;
    gap:.9rem;
    color:#0d1830;
    background:none;
    border:none;
    border-radius:0;
    min-height:0;
    padding:.15rem 0;
    font-family:Georgia, "Times New Roman", serif;
    font-size:1.35rem;
    font-weight:700;
    letter-spacing:.01em;
    line-height:1.18;
    text-transform:none;
    text-align:left;
  }

  body.mobile-menu-open{
    overflow:hidden;
  }
}
@media (max-width:520px){
  .mobile-menu{
    top:58px;
    padding:1rem 7vw 2rem;
  }

  .mobile-menu nav{
    gap:1.15rem;
  }

  .mobile-menu a{
    font-size:1.22rem;
  }

  .mobile-menu-icon{
    width:1.35rem;
    height:1.35rem;
  }
}


/* Mobile hamburger menu expanded spacing */
@media (max-width:780px){
  .mobile-menu{
    padding:2.25rem 8vw 2.5rem;
  }

  .mobile-menu nav{
    min-height:calc(100vh - 64px - 4.75rem);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:0;
    max-width:560px;
  }

  .mobile-menu a{
    font-size:clamp(1.62rem, 5.3vw, 2.15rem);
    padding:.6rem 0;
    line-height:1.08;
    gap:1.1rem;
  }

  .mobile-menu-icon{
    width:clamp(1.8rem, 6vw, 2.35rem);
    height:clamp(1.8rem, 6vw, 2.35rem);
  }
}

@media (max-width:520px){
  .mobile-menu{
    top:58px;
    padding:1.85rem 7.5vw 2.1rem;
  }

  .mobile-menu nav{
    min-height:calc(100vh - 58px - 4rem);
    gap:0;
  }

  .mobile-menu a{
    font-size:clamp(1.48rem, 6.2vw, 1.85rem);
    padding:.5rem 0;
    gap:1rem;
  }

  .mobile-menu-icon{
    width:clamp(1.65rem, 7vw, 2.05rem);
    height:clamp(1.65rem, 7vw, 2.05rem);
  }
}

@media (max-width:390px){
  .mobile-menu{
    padding:1.45rem 7vw 1.75rem;
  }

  .mobile-menu nav{
    min-height:calc(100vh - 58px - 3.2rem);
  }

  .mobile-menu a{
    font-size:1.34rem;
    padding:.42rem 0;
  }

  .mobile-menu-icon{
    width:1.52rem;
    height:1.52rem;
  }
}


/* Quote integration */
.quote-band{
  padding:3.4rem 0 2.2rem;
  background:#ffffff;
}
.quote-band-inner{
  width:min(980px,92vw);
  text-align:center;
}
.quote-band-label{
  margin:0 0 .7rem;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#9a6f22;
}
.quote-band blockquote{
  margin:0;
  font-size:clamp(1.8rem,3vw,2.8rem);
  line-height:1.18;
  letter-spacing:-.025em;
  color:#0d1830;
}
.quote-band cite{
  display:block;
  margin-top:1rem;
  font-style:normal;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.95rem;
  color:#516173;
}

.hero-mobile-image,
.hero-mobile-stats{
  display:none;
}

/* Mobile-only hero restructure */
@media (max-width:780px){
  .site-header{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    z-index:60;
  }

  .hero{
    min-height:auto;
    padding:68px 0 54px;
    background-image:linear-gradient(180deg, #071223 0%, #0b1830 72%, #0d1830 100%) !important;
    background-color:#0d1830;
    background-size:auto;
    background-position:center;
    align-items:flex-start;
  }

  .hero-grid{
    display:block;
    width:min(100%, 94vw);
  }

  .hero-copy{
    max-width:none;
    width:100%;
  }

  .hero-copy .eyebrow,
  .hero-copy h1{
    text-align:center;
  }

  .hero-copy .eyebrow{
    margin:0 0 .8rem;
  }

  .hero-copy h1{
    font-size:clamp(2.42rem, 9.6vw, 4.3rem);
    line-height:.94;
    margin:0 auto 1rem;
    max-width:12.8ch;
  }

  .hero-mobile-image{
    display:block;
    width:100%;
    aspect-ratio: 4 / 5;
    border-radius:22px;
    margin:0 auto 1rem;
    background:
      linear-gradient(180deg, rgba(13,24,48,.02) 0%, rgba(13,24,48,.06) 100%),
      url('assets/hero-mobile-campus.png') center top / cover no-repeat;
    box-shadow:0 20px 36px rgba(3,10,24,.24);
  }

  .hero-mobile-stats{
    display:block;
    margin:0 auto 1rem;
  }

  .mobile-stat-row{
    display:grid;
    gap:.68rem;
  }

  .mobile-stat-row + .mobile-stat-row{
    margin-top:.68rem;
  }

  .mobile-stat-row-three{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }

  .mobile-stat-row-two{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .mobile-stat-card{
    background:#0d1830;
    color:#fff;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 12px 28px rgba(5,13,28,.22);
    text-align:center;
    padding:.85rem .5rem .82rem;
  }

  .mobile-stat-card .stat-label{
    font-size:.62rem;
    letter-spacing:.12em;
  }

  .mobile-stat-card .stat-value{
    font-size:1.22rem;
    margin:.28rem 0;
    line-height:1.04;
  }

  .mobile-stat-card .stat-note{
    font-size:.63rem;
    line-height:1.25;
    color:rgba(255,255,255,.82);
  }

  .hero .lead{
    max-width:100%;
    margin:0;
  }

  .stats{
    display:none;
  }

  .quote-band{
    padding:2.2rem 0 1rem;
  }
}

@media (max-width:520px){
  .site-header{
    position:fixed !important;
  }

  .hero{
    padding:60px 0 50px;
  }

  .hero-copy .eyebrow{
    font-size:.77rem;
    margin-bottom:.72rem;
  }

  .hero-copy h1{
    font-size:clamp(2.2rem, 10.8vw, 3.65rem);
    max-width:11.8ch;
    margin-bottom:.92rem;
  }

  .hero-mobile-image{
    border-radius:20px;
    margin-bottom:.92rem;
  }

  .hero-mobile-stats{
    margin-bottom:.92rem;
  }

  .mobile-stat-row{
    gap:.56rem;
  }

  .mobile-stat-row + .mobile-stat-row{
    margin-top:.56rem;
  }

  .mobile-stat-card{
    padding:.78rem .36rem .74rem;
    border-radius:16px;
  }

  .mobile-stat-card .stat-label{
    font-size:.56rem;
    letter-spacing:.11em;
  }

  .mobile-stat-card .stat-value{
    font-size:1.07rem;
  }

  .mobile-stat-card .stat-note{
    font-size:.57rem;
  }

  .hero .lead{
    font-size:.98rem;
    line-height:1.48;
  }

  .quote-band{
    padding:2rem 0 .9rem;
  }

  .quote-band blockquote{
    font-size:1.55rem;
  }

  .quote-band cite{
    font-size:.9rem;
  }
}


/* Mobile-only: place highlight tiles over lower hero image so all five show before the fold */
@media (max-width:780px){
  .hero{
    padding-top:64px;
    padding-bottom:34px;
  }

  .hero-copy .eyebrow{
    margin-bottom:.55rem;
  }

  .hero-copy h1{
    font-size:clamp(2.1rem, 8.9vw, 3.75rem);
    line-height:.91;
    margin-bottom:.7rem;
  }

  .hero-mobile-image{
    position:relative;
    aspect-ratio:4 / 4.65;
    margin-bottom:0;
    overflow:visible;
    background-position:center top;
  }

  .hero-mobile-stats{
    position:relative;
    z-index:6;
    width:calc(100% - .55rem);
    margin:-7.35rem auto .9rem;
    padding:0;
  }

  .mobile-stat-row{
    gap:.46rem;
  }

  .mobile-stat-row + .mobile-stat-row{
    margin-top:.46rem;
  }

  .mobile-stat-card{
    padding:.56rem .28rem .54rem;
    border-radius:14px;
    background:rgba(13,24,48,.94);
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 10px 22px rgba(0,0,0,.24);
    backdrop-filter:blur(8px);
  }

  .mobile-stat-card .stat-label{
    font-size:.50rem;
    letter-spacing:.10em;
  }

  .mobile-stat-card .stat-value{
    font-size:.96rem;
    margin:.18rem 0;
    line-height:1.02;
  }

  .mobile-stat-card .stat-note{
    font-size:.50rem;
    line-height:1.12;
  }

  .hero .lead{
    margin-top:0;
  }
}

@media (max-width:520px){
  .hero{
    padding-top:60px;
    padding-bottom:32px;
  }

  .hero-copy .eyebrow{
    font-size:.72rem;
    margin-bottom:.48rem;
  }

  .hero-copy h1{
    font-size:clamp(1.96rem, 9.8vw, 3.18rem);
    line-height:.91;
    max-width:12.2ch;
    margin-bottom:.62rem;
  }

  .hero-mobile-image{
    aspect-ratio:4 / 4.55;
  }

  .hero-mobile-stats{
    width:calc(100% - .35rem);
    margin:-6.85rem auto .82rem;
  }

  .mobile-stat-row{
    gap:.38rem;
  }

  .mobile-stat-row + .mobile-stat-row{
    margin-top:.38rem;
  }

  .mobile-stat-card{
    padding:.50rem .20rem .48rem;
    border-radius:13px;
  }

  .mobile-stat-card .stat-label{
    font-size:.45rem;
    letter-spacing:.09em;
  }

  .mobile-stat-card .stat-value{
    font-size:.85rem;
    margin:.16rem 0;
  }

  .mobile-stat-card .stat-note{
    font-size:.45rem;
  }
}

@media (max-width:390px){
  .hero-copy h1{
    font-size:clamp(1.78rem, 9.5vw, 2.65rem);
  }

  .hero-mobile-stats{
    margin-top:-6.25rem;
  }

  .mobile-stat-card{
    padding:.44rem .15rem .42rem;
  }

  .mobile-stat-card .stat-value{
    font-size:.78rem;
  }
}

/* Mobile-only: larger left-column stat tiles, evenly distributed over the hero image */
@media (max-width:780px){
  .hero{
    padding-top:64px;
    padding-bottom:36px;
  }

  .hero-copy .eyebrow{
    margin-bottom:.55rem;
  }

  .hero-copy h1{
    font-size:clamp(2rem, 8.8vw, 3.55rem);
    line-height:.91;
    margin-bottom:.72rem;
    max-width:12.2ch;
  }

  .hero-mobile-image{
    display:block;
    position:relative;
    width:100%;
    aspect-ratio:4 / 5.15;
    border-radius:22px;
    overflow:hidden;
    margin:0 auto .95rem;
    background:
      linear-gradient(90deg, rgba(13,24,48,.20) 0%, rgba(13,24,48,.07) 34%, rgba(13,24,48,0) 54%),
      url('assets/hero-mobile-campus.png') 64% top / cover no-repeat;
    box-shadow:0 20px 36px rgba(3,10,24,.24);
  }

  .hero-mobile-image .hero-mobile-stats{
    display:grid;
    grid-template-rows:repeat(5, 1fr);
    align-items:stretch;
    justify-items:stretch;
    position:absolute;
    left:.72rem;
    top:.72rem;
    bottom:.72rem;
    width:min(43.5%, 12.9rem);
    margin:0;
    z-index:3;
    gap:.46rem;
  }

  .hero-mobile-image .mobile-stat-row,
  .hero-mobile-image .mobile-stat-row-three,
  .hero-mobile-image .mobile-stat-row-two{
    display:contents;
    grid-template-columns:none;
    margin:0;
  }

  .hero-mobile-image .mobile-stat-row + .mobile-stat-row{
    margin-top:0;
  }

  .hero-mobile-image .mobile-stat-card{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    min-height:0;
    padding:.82rem .62rem .78rem;
    border-radius:16px;
    background:rgba(13,24,48,.65);
    border:1px solid rgba(255,255,255,.18);
    box-shadow:0 10px 24px rgba(0,0,0,.24);
    text-align:center;
    backdrop-filter:blur(8px);
  }

  .hero-mobile-image .mobile-stat-card .stat-label{
    font-size:.78rem;
    letter-spacing:.11em;
  }

  .hero-mobile-image .mobile-stat-card .stat-value{
    font-size:1.35rem;
    margin:.20rem 0;
    line-height:1.05;
  }

  .hero-mobile-image .mobile-stat-card .stat-note{
    font-size:.74rem;
    line-height:1.16;
    color:rgba(255,255,255,.86);
  }
}

@media (max-width:520px){
  .hero{
    padding-top:60px;
    padding-bottom:34px;
  }

  .hero-copy .eyebrow{
    font-size:.72rem;
    margin-bottom:.48rem;
  }

  .hero-copy h1{
    font-size:clamp(1.9rem, 9.4vw, 3rem);
    line-height:.91;
    margin-bottom:.62rem;
    max-width:12.1ch;
  }

  .hero-mobile-image{
    aspect-ratio:4 / 5.05;
    border-radius:20px;
    margin-bottom:.9rem;
    background-position:64% top;
  }

  .hero-mobile-image .hero-mobile-stats{
    left:.6rem;
    top:.6rem;
    bottom:.6rem;
    width:min(44%, 12.15rem);
    gap:.40rem;
  }

  .hero-mobile-image .mobile-stat-card{
    padding:.74rem .52rem .70rem;
    border-radius:14px;
  }

  .hero-mobile-image .mobile-stat-card .stat-label{
    font-size:.70rem;
    letter-spacing:.10em;
  }

  .hero-mobile-image .mobile-stat-card .stat-value{
    font-size:1.24rem;
    margin:.18rem 0;
  }

  .hero-mobile-image .mobile-stat-card .stat-note{
    font-size:.68rem;
  }
}

@media (max-width:390px){
  .hero-copy h1{
    font-size:clamp(1.72rem, 9.3vw, 2.52rem);
  }

  .hero-mobile-image{
    aspect-ratio:4 / 5;
  }

  .hero-mobile-image .hero-mobile-stats{
    width:min(44.5%, 11.15rem);
    left:.5rem;
    top:.5rem;
    bottom:.5rem;
    gap:.34rem;
  }

  .hero-mobile-image .mobile-stat-card{
    padding:.62rem .42rem .58rem;
  }

  .hero-mobile-image .mobile-stat-card .stat-label{
    font-size:.62rem;
  }

  .hero-mobile-image .mobile-stat-card .stat-value{
    font-size:1.08rem;
  }

  .hero-mobile-image .mobile-stat-card .stat-note{
    font-size:.60rem;
  }
}


/* Desktop-only story section redesign with full-width background image */
@media (min-width: 821px){
  .story-layout{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0, 1.9fr) minmax(300px, .95fr);
    gap:2rem;
    align-items:stretch;
    padding:3rem;
    border-radius:30px;
    overflow:hidden;
    background:
      linear-gradient(90deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 34%, rgba(255,255,255,.10) 100%),
      url('assets/story-desktop-wide.png') center center / cover no-repeat;
    box-shadow:0 18px 48px rgba(10,20,40,.12);
  }

  .story-layout .story-intro{
    order:2;
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    padding:2rem 1.8rem;
    border-radius:26px;
    background:rgba(247, 242, 233, .92);
    border:1px solid rgba(227, 211, 187, .95);
    backdrop-filter:blur(5px);
    box-shadow:0 12px 30px rgba(0,0,0,.12);
  }

  .story-layout .story-intro h2{
    margin-bottom:1.15rem;
  }

  .story-layout .story-content-with-portrait{
    order:1;
    display:block;
    min-width:0;
  }

  .story-layout .story-content-with-portrait .portrait-card{
    display:none;
  }

  .story-layout .story-copy{
    max-width:100%;
    padding:2rem 2rem 2.1rem;
    border-radius:26px;
    background:rgba(255,255,255,.90);
    border:1px solid rgba(255,255,255,.85);
    backdrop-filter:blur(5px);
    box-shadow:0 12px 30px rgba(0,0,0,.10);
  }

  .story-layout .story-copy p:last-child{
    margin-bottom:0;
  }
}

@media (min-width: 821px) and (max-width: 1100px){
  .story-layout{
    grid-template-columns:minmax(0, 1.45fr) minmax(280px, .9fr);
    padding:2.35rem;
    gap:1.5rem;
  }

  .story-layout .story-copy,
  .story-layout .story-intro{
    padding:1.6rem 1.45rem;
  }
}





/* Desktop-only correction: force left story text into the narrower center-left area */
@media (min-width: 821px){
  .story-layout .story-content-with-portrait{
    width:clamp(320px, 27vw, 390px) !important;
    max-width:390px !important;
    justify-self:end !important;
    align-self:start !important;
  }

  .story-layout .story-copy{
    width:100% !important;
    max-width:390px !important;
    margin-left:auto !important;
    margin-right:0 !important;
    padding:1.65rem 1.75rem 1.7rem !important;
  }
}

@media (min-width: 821px) and (max-width: 1100px){
  .story-layout .story-content-with-portrait{
    width:clamp(300px, 31vw, 350px) !important;
    max-width:350px !important;
  }

  .story-layout .story-copy{
    max-width:350px !important;
    padding:1.45rem 1.5rem !important;
  }
}


/* Desktop-only story update: pan image right, swap panel locations, reduce tile opacity, and add academic icon */
@media (min-width: 821px){
  .story-layout{
    grid-template-columns:minmax(300px, .92fr) minmax(380px, 1.08fr) !important;
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 53% center / cover no-repeat !important;
  }

  .story-layout .story-intro{
    order:1 !important;
    width:clamp(300px, 25vw, 360px) !important;
    max-width:360px !important;
    justify-self:start !important;
    align-self:start !important;
    background:rgba(247, 242, 233, .70) !important;
    border-color:rgba(227, 211, 187, .78) !important;
  }

  .story-layout .story-content-with-portrait{
    order:2 !important;
    width:clamp(360px, 32vw, 465px) !important;
    max-width:465px !important;
    justify-self:end !important;
    align-self:start !important;
  }

  .story-layout .story-copy{
    width:100% !important;
    max-width:465px !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding:1.7rem 1.8rem 1.75rem !important;
    background:rgba(255,255,255,.70) !important;
    border-color:rgba(255,255,255,.78) !important;
  }

  .story-layout .standout-note{
    position:relative;
    overflow:hidden;
    padding:1.15rem 1.2rem 1.2rem !important;
    background:rgba(255,255,255,.70) !important;
    border-color:rgba(212,173,99,.78) !important;
  }

  .story-layout .standout-note p{
    padding-right:4.25rem;
  }

  .story-layout .standout-note-icon{
    position:absolute;
    right:1rem;
    bottom:1rem;
    width:54px;
    height:54px;
    color:rgba(154,111,34,.88);
    opacity:.95;
    pointer-events:none;
  }

  .story-layout .standout-note-icon svg{
    display:block;
    width:100%;
    height:100%;
  }
}

@media (min-width: 821px) and (max-width: 1100px){
  .story-layout{
    grid-template-columns:minmax(280px, .9fr) minmax(340px, 1fr) !important;
  }

  .story-layout .story-intro{
    width:clamp(280px, 27vw, 330px) !important;
    max-width:330px !important;
  }

  .story-layout .story-content-with-portrait{
    width:clamp(330px, 33vw, 410px) !important;
    max-width:410px !important;
  }

  .story-layout .story-copy{
    max-width:410px !important;
    padding:1.5rem 1.55rem !important;
  }

  .story-layout .standout-note p{
    padding-right:3.75rem;
  }

  .story-layout .standout-note-icon{
    width:48px;
    height:48px;
    right:.9rem;
    bottom:.9rem;
  }
}


/* Final desktop-only story positioning tweak: pan image slightly left and move statement tile into the center area */
@media (min-width: 821px){
  .story-layout{
    grid-template-columns:minmax(0, 1fr) minmax(400px, 465px) !important;
    column-gap:2.25rem !important;
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 51% center / cover no-repeat !important;
  }

  .story-layout .story-intro{
    order:1 !important;
    justify-self:center !important;
    align-self:start !important;
    margin-left:clamp(120px, 14vw, 210px) !important;
    margin-right:0 !important;
    width:clamp(300px, 27vw, 360px) !important;
    max-width:360px !important;
    background:rgba(247,242,233,.70) !important;
  }

  .story-layout .story-content-with-portrait{
    order:2 !important;
    justify-self:end !important;
    align-self:start !important;
    width:clamp(390px, 33vw, 465px) !important;
    max-width:465px !important;
  }

  .story-layout .story-copy{
    max-width:465px !important;
    background:rgba(255,255,255,.70) !important;
  }
}

@media (min-width: 821px) and (max-width: 1100px){
  .story-layout{
    grid-template-columns:minmax(0, 1fr) minmax(340px, 410px) !important;
    column-gap:1.5rem !important;
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 51% center / cover no-repeat !important;
  }

  .story-layout .story-intro{
    margin-left:clamp(70px, 9vw, 130px) !important;
    width:clamp(280px, 29vw, 330px) !important;
    max-width:330px !important;
  }

  .story-layout .story-content-with-portrait{
    width:clamp(330px, 36vw, 410px) !important;
    max-width:410px !important;
  }

  .story-layout .story-copy{
    max-width:410px !important;
  }
}


/* V49 refinements: story panel nudges, bookmark-style academic icon, and quote relocation */
.future-quote{
  margin:1.5rem 0 0;
  padding:1rem 1.15rem;
  background:#ffffff;
  border-left:4px solid #d3ad62;
  border-radius:0 16px 16px 0;
  box-shadow:0 10px 24px rgba(12,24,48,.08);
}
.future-quote p{
  margin:0;
  font-size:1.06rem;
  line-height:1.5;
  color:#0d1830;
}
.future-quote cite{
  display:block;
  margin-top:.55rem;
  font-style:normal;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.9rem;
  color:#516173;
}

.quote-band blockquote{
  max-width:18ch;
  margin:0 auto;
}
.quote-band cite{
  max-width:740px;
  margin:1rem auto 0;
  line-height:1.45;
}

@media (min-width:821px){
  .story-layout{
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 50% center / cover no-repeat !important;
  }
  .story-layout .story-intro{
    margin-left:calc(clamp(120px, 14vw, 210px) + 1%) !important;
  }
  .story-layout .story-content-with-portrait{
    transform:translateX(1%);
  }
  .story-layout .standout-note-icon{
    width:58px !important;
    height:58px !important;
    right:.9rem !important;
    bottom:.85rem !important;
    color:rgba(154,111,34,.92) !important;
  }
}

@media (min-width:821px) and (max-width:1100px){
  .story-layout{
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 50% center / cover no-repeat !important;
  }
  .story-layout .story-intro{
    margin-left:calc(clamp(70px, 9vw, 130px) + 1%) !important;
  }
}

@media (max-width:780px){
  .quote-band blockquote{
    max-width:100%;
  }
  .quote-band cite{
    max-width:100%;
  }
}


/* V50 desktop refinements: wider coach quote, story image pan, panel shifts, and 60% panel opacity */
@media (min-width:821px){
  .quote-band-inner{
    width:min(1320px, 96vw) !important;
    max-width:none !important;
  }

  .quote-band blockquote{
    max-width:none !important;
    width:100% !important;
    margin:0 auto !important;
    font-size:clamp(1.9rem, 2.8vw, 3.05rem) !important;
    line-height:1.14 !important;
  }

  .quote-band cite{
    max-width:none !important;
    width:100% !important;
  }

  .story-layout{
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 49% center / cover no-repeat !important;
  }

  .story-layout .story-intro{
    margin-left:calc(clamp(120px, 14vw, 210px) + 2%) !important;
    background:rgba(247,242,233,.60) !important;
  }

  .story-layout .story-content-with-portrait{
    transform:translateX(2%) !important;
  }

  .story-layout .story-copy{
    background:rgba(255,255,255,.60) !important;
  }
}

@media (min-width:821px) and (max-width:1100px){
  .quote-band-inner{
    width:min(1120px, 95vw) !important;
  }

  .story-layout{
    background:
      linear-gradient(90deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.07) 34%, rgba(255,255,255,.09) 100%),
      url('assets/story-desktop-wide.png') 49% center / cover no-repeat !important;
  }

  .story-layout .story-intro{
    margin-left:calc(clamp(70px, 9vw, 130px) + 2%) !important;
  }
}


/* V51 desktop story section: keep panels off the subject and lower panel opacity */
@media (min-width:821px){
  .story-layout{
    grid-template-columns:minmax(150px, .50fr) minmax(320px, .88fr) minmax(420px, 1.06fr) !important;
    gap:1.8rem !important;
    padding:2rem !important;
    background:
      linear-gradient(90deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.05) 34%, rgba(255,255,255,.08) 100%),
      url('assets/story-desktop-wide.png') 50% center / cover no-repeat !important;
  }

  .story-layout .story-intro{
    order:initial !important;
    grid-column:2 !important;
    justify-self:start !important;
    align-self:start !important;
    margin:0 !important;
    width:100% !important;
    max-width:360px !important;
    transform:translateX(1%) !important;
    background:rgba(247,242,233,.55) !important;
    border-color:rgba(227,211,187,.58) !important;
    backdrop-filter:blur(5px) !important;
  }

  .story-layout .story-content-with-portrait{
    order:initial !important;
    grid-column:3 !important;
    justify-self:end !important;
    align-self:start !important;
    width:100% !important;
    max-width:470px !important;
    transform:translateX(1%) !important;
  }

  .story-layout .story-copy{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    background:rgba(255,255,255,.55) !important;
    border-color:rgba(255,255,255,.60) !important;
    backdrop-filter:blur(5px) !important;
  }

  .story-layout .standout-note{
    background:rgba(255,255,255,.55) !important;
    border-color:rgba(212,173,99,.60) !important;
  }
}

@media (min-width:821px) and (max-width:1100px){
  .story-layout{
    grid-template-columns:minmax(90px, .22fr) minmax(295px, .83fr) minmax(360px, 1fr) !important;
    gap:1.45rem !important;
    padding:1.6rem !important;
  }

  .story-layout .story-intro{
    max-width:340px !important;
  }

  .story-layout .story-content-with-portrait{
    max-width:410px !important;
  }
}


/* V53 mobile refinement: shrink academic foundation icon on mobile story card */
@media (max-width:820px){
  .standout-note{
    position:relative;
  }

  .standout-note .standout-note-icon{
    display:block;
    width:clamp(68px, 18vw, 96px);
    height:clamp(68px, 18vw, 96px);
    margin:.55rem auto 1rem;
    color:#14213f;
    opacity:.96;
  }

  .standout-note .standout-note-icon svg{
    display:block;
    width:100%;
    height:100%;
  }
}
