/* ==========================================================================
   SEGTI — Responsive Rules
   All breakpoints live here. Loaded after style.css so these overrides apply.
   ========================================================================== */

@media (max-width:900px){
  .main-nav{
    position:fixed;top:78px;right:0;left:0;bottom:0;
    width:100%;max-width:100vw;
    height:calc(100vh - 78px);height:calc(100dvh - 78px);
    background:#fff;
    flex-direction:column;align-items:flex-start;
    padding:28px 24px;gap:4px;
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    transform:translateX(100%);transition:transform .3s var(--ease);
    box-shadow:-12px 0 32px rgba(0,0,0,.14);
    z-index:150;
  }
  .main-nav.open{transform:translateX(0);}
  .main-nav a{
    font-size:17px;opacity:1;width:100%;
    padding:13px 4px;border-bottom:1px solid var(--line);
    min-height:44px;display:flex;align-items:center;
  }
  .main-nav a.active::after{display:none;}
  .btn-apply{margin-top:14px;justify-content:center;border-bottom:0 !important;}
  .nav-toggle{display:flex;}
}

@media (max-width:1120px) and (min-width:901px){
  .main-nav{gap:12px;}
  .main-nav a{font-size:12.5px;}
  .btn-apply{padding-inline:13px;}
}

@media (max-width:768px){
  .section{padding:56px 0;}
  .section-tight{padding:36px 0;}
}

@media (max-width:800px){
  .schools-grid{grid-template-columns:1fr;}
  .beyond-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .gov-grid{grid-template-columns:1fr;}
  .editorial-row{grid-template-columns:40px 1fr;row-gap:12px;padding:24px 4px;}
  .er-cta{grid-column:2;}
}

@media (max-width:480px){
  .footer-grid{grid-template-columns:1fr;gap:28px;}
  .footer-brand-logo{height:56px;}
}

@media (max-width:900px){
  .levels-row{grid-template-columns:repeat(2,1fr);}
  .pillars-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:500px){
  .levels-row{grid-template-columns:1fr 1fr;}
}

@media (max-width:820px){
  .journey{flex-direction:column;align-items:flex-start;gap:18px;}
  .journey-stage{width:100%;}
  .journey-line{display:none;}
  .tracks-grid{grid-template-columns:1fr;}
  .timeline{flex-direction:column;gap:28px;}
  .timeline::before{top:0;bottom:0;left:20px;width:2px;height:auto;right:auto;}
}

@media (max-width:860px){
  .glance-layout{grid-template-columns:1fr;gap:34px;}
  .glance-intro{max-width:620px;}
  .incub-feature{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .news-grid{grid-template-columns:1fr;}
  .glance-grid{grid-template-columns:1fr 1fr;}
  .pro-grid{grid-template-columns:1fr;}
  .pro-feature{min-height:320px;}
  .pro-side{flex-direction:row;}
  .news-feature-grid{grid-template-columns:1fr 1fr;}
  .news-feature:first-child{grid-column:1 / -1;}
  .archive-band .container{align-items:flex-start;flex-direction:column;}
}
@media (max-width:560px){
  .pro-side{flex-direction:column;}
  .news-feature-grid{grid-template-columns:1fr;}
  .news-feature:first-child{grid-column:auto;}
}
@media (max-width:520px){
  .glance-grid{grid-template-columns:1fr;}
}

@media (max-width:900px){
  .logo img{height:52px;}
}

@media (max-width:900px){
  .values-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:520px){
  .values-grid{grid-template-columns:1fr;}
}

@media (max-width:700px){
  .leader-card{grid-template-columns:1fr;text-align:center;}
}

@media (max-width:900px){
  .masonry{columns:2;}
}
@media (max-width:560px){
  .masonry{columns:1;}
}
@media (max-width:600px){
  .lightbox-prev,.lightbox-next{width:38px;height:38px;}
}

@media (max-width:800px){
  .steps-row{grid-template-columns:1fr 1fr;}
}

/* Admissions download card — stack on narrow screens so the button never
   gets squeezed into overflow alongside the icon and text */
@media (max-width:560px){
  .download-card{
    flex-direction:column;align-items:stretch;text-align:left;
    padding:24px;gap:16px;
  }
  .download-card .download-icon{width:44px;height:44px;}
  .download-card .btn{width:100%;justify-content:center;}
}

/* Hero — full-bleed background, so mobile just tightens spacing/type */
@media (max-width:900px){
  .hero{min-height:min(100vh,760px);}
  .hero{min-height:720px;align-items:flex-start;}
  .hero-bg img{inset:0;width:100%;height:44%;object-position:center 28%;}
  .hero-bg::after{background:linear-gradient(180deg,rgba(16,47,85,.28) 0%,#f4f8fc 49%,#f4f8fc 100%);}
  .hero-inner{padding:78px 0 170px;}
  .hero .hero-eyebrow{color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.25);}
  .hero .institutional-fact{color:var(--pink);}
  .hero-side-card{right:28px;bottom:28px;width:min(330px,calc(100% - 56px));}
  .hero::after{display:none;}
}
@media (max-width:520px){
  .hero{min-height:0;display:block;background:#f4f8fc;}
  .hero-bg{height:285px;}
  .hero-bg img{height:235px;object-position:center 30%;}
  .hero-bg::after{background:linear-gradient(180deg,rgba(16,47,85,.18) 0%,rgba(244,248,252,.12) 42%,#f4f8fc 100%);}
  .hero-inner{padding:248px 28px 28px;}
  .hero .hero-eyebrow{color:var(--blue-deep);text-shadow:none;margin-bottom:20px;}
  .hero .institutional-fact{display:block;margin-top:0;}
  .kinetic-headline{font-size:clamp(34px,11vw,44px);}
  .hero-dots{display:none;}
  .hero-side-card{position:relative;right:auto;bottom:auto;width:auto;margin:0 18px 24px;padding:20px;}
  .hero-side-card strong{font-size:17px;}
}
