/* NMIMS CIIS — assets/css/05-responsive.css — extracted from approved source (Phase 2B) */
/* Main RESPONSIVE marker + 11 late patch style blocks in HTML order. */

/* Source marker: RESPONSIVE */
/* ── RESPONSIVE ── */
@media (max-width: 1024px) { .hero-inner { grid-template-columns: 1fr 380px; gap: 40px; } .spec-grid { grid-template-columns: repeat(2, 1fr); } .spec-card-7 { grid-column: span 1; } .faculty-stats { grid-template-columns: repeat(2, 1fr); } .footer-inner { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) { .header-cta .btn:not(.btn-primary) { display: none; } .hero-inner { grid-template-columns: 1fr; gap: 40px; padding: 40px 0 24px; } .hero-form-card { max-width: 100%; } .trust-bar-inner { justify-content: flex-start; } .spec-row-3 { grid-template-columns: 1fr; } .spec-row-1 { grid-template-columns: 1fr; } .spec-row-1 .spec-card-new { grid-column: 1; } .about-forte-grid { grid-template-columns: 1fr; max-width: 400px; } .about-card-stack { height: 260px; } .why-grid { grid-template-columns: 1fr; } .spec-grid { grid-template-columns: 1fr; } .learning-grid { grid-template-columns: 1fr; } .learning-right { position: static; } .faculty-stats { grid-template-columns: repeat(2, 1fr); } .prog-overview { grid-template-columns: 1fr; } .fees-grid { grid-template-columns: 1fr; } .admission-steps { grid-template-columns: repeat(2, 1fr); gap: 32px; } .admission-steps::before { display: none; } .lead-grid { grid-template-columns: 1fr; } .footer-inner { grid-template-columns: 1fr; gap: 28px; } .footer-bottom { flex-direction: column; gap: 8px; text-align: center; } .float-btns { bottom: 80px; } .mobile-sticky { display: block; } .final-cta-btns { flex-direction: column; align-items: center; } .sem-subjects { grid-template-columns: 1fr; } .recognition-inner { gap: 12px; } .header-cta .btn-primary { padding: 9px 16px; font-size: 0.82rem; } .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
}
@media (max-width: 480px) { .faculty-stats { grid-template-columns: 1fr 1fr; } .admission-steps { grid-template-columns: 1fr; } .hero-btns { flex-direction: column; } .hero-btns .btn { justify-content: center; } .trust-item span { font-size: 0.75rem; }
}

/* style#1 id=final-mobile-two-issues-fix */
@media (max-width: 640px){ .faculty-premium-hero{ display:flex !important; flex-direction:column !important; align-items:center !important; text-align:center !important; overflow:hidden !important; } .faculty-premium-left{ width:100% !important; max-width:100% !important; margin:0 auto !important; text-align:center !important; } .faculty-premium-left h2, .faculty-premium-left p{ text-align:center !important; margin-left:auto !important; margin-right:auto !important; } .faculty-stat-grid-new{ width:100% !important; max-width:470px !important; margin:0 auto 22px auto !important; } .faculty-mosaic{ position:relative !important; width:478px !important; max-width:478px !important; height:360px !important; left:50% !important; right:auto !important; margin:22px 0 -92px 0 !important; transform:translateX(-50%) scale(.68) !important; transform-origin:top center !important; } .faculty-mosaic::before{ left:24px !important; right:auto !important; top:34px !important; width:430px !important; height:305px !important; } .mosaic-letter{ left:50px !important; top:0 !important; } .mosaic-tile{ width:86px !important; height:86px !important; }
}
@media (max-width: 380px){ .faculty-mosaic{ transform:translateX(-50%) scale(.62) !important; margin-bottom:-118px !important; }
}

/* style#2 id=true-final-cro-spacing-popup-fix */
/* FINAL MOBILE FIX: keep desktop faculty mosaic design, only scale and CENTER it on phone */
@media (max-width: 768px) { #faculty.faculty-showcase-section{ padding:34px 0 48px !important; overflow:hidden !important; } #faculty .faculty-premium-hero{ width:calc(100% - 24px) !important; margin:0 auto !important; padding:30px 16px 36px !important; border-radius:24px !important; display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:flex-start !important; text-align:center !important; gap:22px !important; min-height:auto !important; } #faculty .faculty-premium-left{ width:100% !important; max-width:100% !important; margin:0 auto !important; text-align:center !important; } #faculty .faculty-premium-left h2{ text-align:center !important; margin:0 auto 12px !important; max-width:330px !important; font-size:clamp(2rem,9vw,2.7rem) !important; line-height:1.06 !important; } #faculty .faculty-premium-left p{ text-align:center !important; margin:0 auto 22px !important; max-width:315px !important; font-size:.96rem !important; line-height:1.55 !important; } #faculty .faculty-stat-grid-new{ width:100% !important; max-width:340px !important; margin:0 auto !important; display:grid !important; grid-template-columns:1fr 1fr !important; gap:12px !important; } #faculty .faculty-mini-stat{ min-height:108px !important; padding:12px 8px !important; display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; text-align:center !important; gap:8px !important; } #faculty .faculty-mini-stat strong{ width:66px !important; min-width:66px !important; height:52px !important; margin:0 auto !important; font-size:1.28rem !important; } #faculty .faculty-mini-stat span{ text-align:center !important; font-size:.72rem !important; line-height:1.18 !important; max-width:125px !important; } /* This is the key fix: full desktop-style mosaic scaled from center */ #faculty .faculty-mosaic{ position:relative !important; display:block !important; width:520px !important; min-width:520px !important; max-width:none !important; height:360px !important; margin:0 0 -128px 50% !important; left:0 !important; right:auto !important; top:auto !important; transform:translateX(-50%) scale(.62) !important; transform-origin:top center !important; overflow:visible !important; } #faculty .faculty-mosaic::before{ display:block !important; right:10px !important; top:24px !important; width:500px !important; height:300px !important; } #faculty .faculty-mosaic .mosaic-tile{ position:absolute !important; display:block !important; width:88px !important; height:88px !important; border-radius:50% !important; overflow:hidden !important; } #faculty .faculty-mosaic .mosaic-tile img{ display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; object-position:center top !important; } #faculty .faculty-mosaic .mosaic-tile.shape-only{display:none !important;} #faculty .faculty-mosaic .mosaic-letter{display:none !important;} /* exact same desktop arrangement */ #faculty .faculty-mosaic .m1{left:78px!important;top:0!important}#faculty .faculty-mosaic .m2{left:170px!important;top:0!important}#faculty .faculty-mosaic .m3{left:262px!important;top:0!important}#faculty .faculty-mosaic .m4{left:354px!important;top:0!important} #faculty .faculty-mosaic .m5{left:42px!important;top:92px!important}#faculty .faculty-mosaic .m6{left:134px!important;top:92px!important}#faculty .faculty-mosaic .m7{left:226px!important;top:92px!important}#faculty .faculty-mosaic .m8{left:318px!important;top:92px!important}#faculty .faculty-mosaic .m9{left:410px!important;top:92px!important} #faculty .faculty-mosaic .m10{left:82px!important;top:184px!important}#faculty .faculty-mosaic .m11{left:174px!important;top:184px!important}#faculty .faculty-mosaic .m12{left:266px!important;top:184px!important}#faculty .faculty-mosaic .m13{left:358px!important;top:184px!important} #faculty .faculty-mosaic .m14{left:128px!important;top:276px!important}#faculty .faculty-mosaic .m15{left:220px!important;top:276px!important}#faculty .faculty-mosaic .m16{left:312px!important;top:276px!important} #faculty .faculty-copy-wrap{ margin-top:22px !important; padding:0 14px !important; }
}
@media (max-width:390px){ #faculty .faculty-mosaic{ transform:translateX(-50%) scale(.58) !important; margin-bottom:-142px !important; } #faculty .faculty-stat-grid-new{max-width:318px !important;} #faculty .faculty-mini-stat{min-height:104px !important;}
}

/* style#3 id=final-faculty-mobile-center-fix */
/* FINAL FIX: bigger mobile logo + properly clickable popup close button */
@media (max-width: 768px){ #site-header{min-height:92px !important; height:92px !important; overflow:visible !important;} #site-header .container{padding-left:14px !important; padding-right:14px !important;} .header-inner{height:92px !important; min-height:92px !important; padding:8px 0 !important;} .logo-wrap{flex:1 1 auto !important; max-width:calc(100vw - 92px) !important; overflow:visible !important;} .nmims-logo-img{ width:250px !important; height:auto !important; max-width:250px !important; max-height:62px !important; object-fit:contain !important; object-position:left center !important; transform:none !important; display:block !important; } .nav-burger{width:58px !important; height:58px !important; flex-shrink:0 !important; z-index:1002 !important;} .hero{padding-top:92px !important;}
}
@media (max-width:420px){ .nmims-logo-img{width:238px !important; max-width:238px !important; max-height:58px !important;}
}
@media (max-width:390px){ .nmims-logo-img{width:228px !important; max-width:228px !important; max-height:56px !important;} .logo-wrap{max-width:calc(100vw - 88px) !important;}
}
@media (max-width:360px){ .nmims-logo-img{width:208px !important; max-width:208px !important; max-height:52px !important;}
} @media (max-width:560px){ .popup-overlay.active{ display:flex !important; align-items:flex-start !important; justify-content:center !important; padding:104px 10px calc(92px + env(safe-area-inset-bottom, 0px)) !important; overflow-y:auto !important; z-index:999990 !important; background:rgba(18,12,31,.58) !important; } .popup-modal{ width:calc(100vw - 20px) !important; max-height:calc(100dvh - 202px) !important; overflow-y:auto !important; border-radius:20px !important; position:relative !important; margin:0 auto !important; } .popup-top{ position:relative !important; top:auto !important; padding:18px 70px 16px 18px !important; z-index:2 !important; } .popup-title{font-size:1.28rem !important; line-height:1.15 !important; margin:0 0 6px 0 !important;} .popup-note{font-size:.84rem !important; line-height:1.42 !important;} .popup-body{padding:18px !important;} #popupClose.popup-close{ position:absolute !important; top:14px !important; right:14px !important; width:46px !important; height:46px !important; min-width:46px !important; min-height:46px !important; border-radius:999px !important; background:#fff !important; color:#4B2C7B !important; border:2px solid rgba(75,44,123,.18) !important; box-shadow:0 10px 28px rgba(0,0,0,.26) !important; font-size:34px !important; line-height:40px !important; z-index:999999 !important; pointer-events:auto !important; touch-action:manipulation !important; cursor:pointer !important; display:flex !important; align-items:center !important; justify-content:center !important; padding:0 !important; } #popupClose::before{content:none !important;}
}

/* style#4 id=final-last-mobile-header-disclaimer-fix */
/* Desktop hero/banner spacing optimization — design unchanged */
@media (min-width: 1025px){ .hero{ min-height: 660px !important; height: auto !important; padding-top: 68px !important; align-items: center !important; } .hero-inner{ min-height: 592px !important; padding: 34px 0 22px !important; gap: 24px !important; align-items: center !important; } .hero-left h1{ margin-bottom: 4px !important; } .hero-tagline{ margin-bottom: 8px !important; } .hero-left .hero-sub{ margin-bottom: 16px !important; line-height: 1.55 !important; } .hero-left .hero-urgency{ margin-bottom: 16px !important; } .hero-trust{ gap: 14px !important; } .hero-person-wrap{ min-height: 390px !important; align-self: end !important; transform: translateY(10px) !important; } .hero-person-bg{ width: 238px !important; height: 238px !important; } .hero-person-figure{ width: 210px !important; } .hero-tag{ padding: 9px 13px !important; font-size: .78rem !important; } .hero-tag-1{ top: 25% !important; left: 12px !important; } .hero-tag-2{ bottom: 16% !important; left: 14px !important; } .hero-tag-3{ top: 19% !important; right: 12px !important; } .hero-tag-4{ bottom: 20% !important; right: 16px !important; } .hero-form-card{ padding: 28px 28px !important; border-radius: 18px !important; align-self: center !important; } .form-card-header{ margin-bottom: 18px !important; } .form-group{ margin-bottom: 12px !important; } .form-group input, .form-group select{ padding: 10px 14px !important; }
} /* Tablet/mobile hero spacing optimization — exact same visual language */
@media (max-width: 1024px){ .section-pad-sm{ padding-top: 42px !important; padding-bottom: 42px !important; }
} @media (max-width: 768px){ .hero{ min-height: auto !important; height: auto !important; padding-top: 92px !important; align-items: flex-start !important; } .hero-inner{ padding: 16px 0 10px !important; gap: 10px !important; min-height: auto !important; } .hero-left{ text-align: center !important; max-width: 100% !important; margin: 0 auto !important; } .hero-left .hero-urgency{ margin: 0 auto 10px !important; padding: 6px 13px !important; font-size: .76rem !important; } .hero-left h1{ margin: 0 auto 4px !important; line-height: .98 !important; } .hero-tagline{ margin: 0 auto 7px !important; line-height: 1.25 !important; } .hero-left .hero-sub{ margin: 0 auto 13px !important; line-height: 1.55 !important; max-width: 340px !important; } .hero-trust{ justify-content: center !important; gap: 9px 10px !important; margin-bottom: 6px !important; } .hero-trust .trust-item{ padding: 7px 11px !important; } .hero-person-wrap{ min-height: 300px !important; margin-top: -4px !important; margin-bottom: -4px !important; overflow: visible !important; } .hero-person-bg{ width: 224px !important; height: 224px !important; } .hero-person-figure{ width: 194px !important; } .hero-tag{ font-size: .70rem !important; padding: 7px 9px !important; border-radius: 12px !important; line-height: 1.15 !important; } .hero-tag-icon{ font-size: 1rem !important; } .hero-tag-1{ top: 10% !important; left: 4px !important; } .hero-tag-2{ bottom: 11% !important; left: 6px !important; } .hero-tag-3{ display:flex !important; top: 10% !important; right: 4px !important; } .hero-tag-4{ display:flex !important; bottom: 13% !important; right: 6px !important; } .hero-form-card{ margin-top: 4px !important; padding: 24px 20px !important; } .container{ padding-left: 18px !important; padding-right: 18px !important; }
} @media (max-width: 480px){ .hero-inner{ padding-top: 14px !important; padding-bottom: 8px !important; } .hero-left h1{ font-size: clamp(2.35rem, 13vw, 3.15rem) !important; } .hero-tagline{ font-size: .98rem !important; } .hero-left .hero-sub{ font-size: .91rem !important; max-width: 330px !important; } .hero-person-wrap{ min-height: 292px !important; } .hero-person-bg{ width: 214px !important; height: 214px !important; } .hero-person-figure{ width: 186px !important; }
} @media (max-width: 390px){ .hero-person-wrap{ min-height: 276px !important; } .hero-person-bg{ width: 202px !important; height: 202px !important; } .hero-person-figure{ width: 176px !important; } .hero-tag{ font-size: .66rem !important; padding: 6px 8px !important; }
} /* Popup visibility final: X is below sticky header, full form remains scroll-safe */
@media (max-width: 768px){ .popup-overlay.active{ position: fixed !important; inset: 0 !important; z-index: 9999999 !important; display: flex !important; align-items: flex-start !important; justify-content: center !important; padding: 116px 12px 96px !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; overscroll-behavior: contain !important; } .popup-modal{ width: min(94vw, 456px) !important; max-height: calc(100dvh - 218px) !important; overflow-y: auto !important; margin: 0 auto !important; border-radius: 20px !important; transform: none !important; } #popupClose.popup-close, .popup-close{ position: fixed !important; top: 102px !important; right: 14px !important; width: 42px !important; height: 42px !important; min-width: 42px !important; min-height: 42px !important; z-index: 2147483647 !important; pointer-events: auto !important; touch-action: manipulation !important; } .popup-top{ padding: 12px 58px 9px 16px !important; min-height: 72px !important; } .popup-body{ padding: 10px 16px 12px !important; } .popup-field{ margin-bottom: 6px !important; } .popup-field input, .popup-field select{ min-height: 38px !important; padding: 8px 11px !important; font-size: .84rem !important; } .popup-submit{ padding: 10px 14px !important; font-size: .86rem !important; } .popup-whatsapp-row .btn{ padding: 9px 12px !important; font-size: .78rem !important; }
}

/* style#5 id=final-mobile-ready-polish */
@media (max-width: 640px){ /* Keep the same desktop mosaic design, only center the complete artwork on mobile */ #faculty .faculty-premium-hero{ overflow: hidden !important; } #faculty .faculty-mosaic{ position: relative !important; width: 520px !important; min-width: 520px !important; max-width: none !important; height: 360px !important; left: 50% !important; right: auto !important; margin-left: -260px !important; margin-right: 0 !important; margin-top: 22px !important; margin-bottom: -96px !important; transform: scale(.66) !important; transform-origin: top center !important; } #faculty .faculty-mosaic::before{ left: 10px !important; right: auto !important; top: 24px !important; }
}
@media (max-width: 390px){ #faculty .faculty-mosaic{ transform: scale(.62) !important; margin-bottom: -112px !important; }
}
@media (max-width: 345px){ #faculty .faculty-mosaic{ transform: scale(.58) !important; margin-bottom: -126px !important; }
}

/* style#6 id=final-mobile-two-issues-fix */
/* Final requested fixes: sticky mobile header + faculty mosaic exact mobile centering */
@media (max-width: 768px){ #site-header{ position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; z-index: 999999 !important; background: rgba(255,255,255,0.98) !important; backdrop-filter: blur(14px) !important; -webkit-backdrop-filter: blur(14px) !important; box-shadow: 0 4px 18px rgba(0,0,0,0.08) !important; } body{ padding-top: 68px !important; } #faculty .faculty-premium-hero{ display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; } #faculty .faculty-mosaic{ position: relative !important; width: 520px !important; min-width: 520px !important; max-width: 520px !important; height: 360px !important; left: 50% !important; right: auto !important; margin-left: 0 !important; margin-right: 0 !important; transform: translateX(-50%) scale(.62) !important; transform-origin: top center !important; margin-top: 6px !important; margin-bottom: -120px !important; }
}
@media (max-width: 390px){ #faculty .faculty-mosaic{ transform: translateX(-50%) scale(.60) !important; margin-bottom: -128px !important; }
}
@media (max-width: 345px){ #faculty .faculty-mosaic{ transform: translateX(-50%) scale(.56) !important; margin-bottom: -142px !important; }
}
.aep-disclaimer{ max-width:1100px; margin:26px auto 0; padding:20px 0 0; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.68); font-size:12.5px; line-height:1.75; text-align:center;
}
.aep-disclaimer strong{color:rgba(255,255,255,.86);}
@media(max-width:768px){ .aep-disclaimer{ margin-top:22px; padding:18px 10px 0; font-size:10.8px; line-height:1.65; text-align:center; }
}

/* style#7 id=real-final-two-minor-fixes */
/* Keeps desktop design intact; improves phone/tablet layout, sticky header and CTA usability */
@media (max-width: 900px){ html, body{ width:100% !important; max-width:100% !important; overflow-x:hidden !important; } body{ padding-top:62px !important; padding-bottom:82px !important; } .container{ width:100% !important; max-width:100% !important; padding-left:16px !important; padding-right:16px !important; } .section-pad-sm{ padding:38px 0 !important; } h1{ font-size:clamp(2.18rem, 12vw, 3.15rem) !important; line-height:1.02 !important; letter-spacing:-.03em !important; } h2{ font-size:clamp(1.55rem, 8vw, 2.15rem) !important; line-height:1.13 !important; } h3{ line-height:1.25 !important; } p{ font-size:.94rem !important; line-height:1.65 !important; } #site-header{ position:fixed !important; top:0 !important; left:0 !important; right:0 !important; z-index:999999 !important; background:rgba(255,255,255,.98) !important; -webkit-backdrop-filter:blur(14px) !important; backdrop-filter:blur(14px) !important; box-shadow:0 4px 18px rgba(0,0,0,.08) !important; } .header-inner{ height:62px !important; min-height:62px !important; gap:10px !important; } .logo-wrap{ min-width:0 !important; flex:1 1 auto !important; } .nmims-logo-img{ height:auto !important; max-height:38px !important; max-width:156px !important; object-fit:contain !important; } .nav-burger{ display:flex !important; flex:0 0 auto !important; width:42px !important; height:42px !important; align-items:center !important; justify-content:center !important; border-radius:12px !important; background:#fff !important; border:1px solid var(--grey-light) !important; box-shadow:0 2px 10px rgba(0,0,0,.05) !important; } .nav-burger.active span:nth-child(1){ transform:translateY(7px) rotate(45deg) !important; } .nav-burger.active span:nth-child(2){ opacity:0 !important; } .nav-burger.active span:nth-child(3){ transform:translateY(-7px) rotate(-45deg) !important; } .main-nav{ position:fixed !important; top:62px !important; left:12px !important; right:12px !important; max-height:calc(100vh - 82px) !important; overflow-y:auto !important; display:none !important; flex-direction:column !important; align-items:stretch !important; padding:12px !important; gap:6px !important; background:rgba(255,255,255,.99) !important; border:1px solid var(--grey-light) !important; border-radius:0 0 18px 18px !important; box-shadow:0 18px 44px rgba(0,0,0,.16) !important; z-index:999998 !important; } .main-nav.open{ display:flex !important; } .main-nav a{ display:flex !important; align-items:center !important; min-height:46px !important; padding:12px 14px 18px 14px !important; border-radius:0px !important; font-size: 16px !important; text-align:center !important; border-bottom: 1px solid #4b2c7b2e;}  .main-nav .btn.btn-primary.nav-apply { font-size: 18px !important; border-radius: 4px !important;  margin-top: 15px !important; } .nav-wa{ background:rgba(37,211,102,.12) !important; color:#15803d !important; } .nav-apply{ margin-top:4px !important; } .hero{ min-height:auto !important; padding-top:0 !important; background:linear-gradient(180deg,#f3eefb 0%,#fff 100%) !important; overflow:hidden !important; } .hero-bg-shape{ width:100% !important; opacity:.55 !important; clip-path:none !important; } .hero-inner{ display:flex !important; flex-direction:column !important; gap:18px !important; padding:24px 0 34px !important; } .hero-left{ order:1 !important; width:100% !important; text-align:center !important; } .hero-left .hero-urgency{ margin:0 auto 14px !important; padding:7px 13px !important; font-size:.76rem !important; white-space:normal !important; justify-content:center !important; } .hero-tagline{ font-size:1rem !important; margin-bottom:8px !important; } .hero-left .hero-sub{ margin:0 auto 18px !important; max-width:340px !important; font-size:.94rem !important; } .hero-trust{ justify-content:center !important; gap:8px !important; } .trust-item{ background:#fff !important; border:1px solid var(--grey-light) !important; border-radius:999px !important; padding:7px 10px !important; box-shadow:0 3px 12px rgba(0,0,0,.05) !important; } .trust-item span{ color:var(--dark) !important; font-size:.72rem !important; } .hero-person-wrap{ order:2 !important; min-height:250px !important; width:100% !important; margin:-2px 0 -8px !important; } .hero-person-bg{ width:210px !important; height:210px !important; } .hero-person-figure{ width:172px !important; } .hero-tag{ transform:none !important; animation:none !important; font-size:.68rem !important; line-height:1.2 !important; padding:7px 9px !important; border-radius:12px !important; } .hero-tag-1{ top:18px !important; left:10px !important; } .hero-tag-2{ bottom:40px !important; left:10px !important; } .hero-tag-3{ display:flex !important; top:18px !important; right:10px !important; } .hero-tag-4{ display:none !important; } .hero-form-card{ order:3 !important; width:100% !important; max-width:430px !important; margin:0 auto !important; padding:22px 18px !important; border-radius:20px !important; box-shadow:0 14px 38px rgba(75,44,123,.18) !important; } .form-card-header{ text-align:center !important; margin-bottom:18px !important; } .form-group{ margin-bottom:12px !important; } .form-group input, .form-group select{ min-height:46px !important; font-size:16px !important; border-radius:12px !important; } .form-submit-btn{ min-height:50px !important; font-size:.95rem !important; } .recognition-inner, .trust-bar-inner{ display:grid !important; grid-auto-flow:column !important; grid-auto-columns:minmax(155px, 1fr) !important; overflow-x:auto !important; justify-content:flex-start !important; padding-bottom:6px !important; scroll-snap-type:x proximity !important; } .rec-badge, .trust-stat{ scroll-snap-align:start !important; min-width:155px !important; } .about-section{ padding:50px 0 !important; } .about-header{ margin-bottom:15px !important; } .about-forte-grid, .why-grid, .spec-grid, .lead-grid, .fees-grid, .prog-overview, .quick-cta-grid{ grid-template-columns:1fr !important; gap:14px !important; } .learning-grid, .about-grid{ grid-template-columns:1fr !important; gap:28px !important; } .faculty-stats{ grid-template-columns:1fr 1fr !important; gap:12px !important; } .faculty-stat{ padding:22px 12px !important; } .faculty-stat-num{ font-size:2.1rem !important; } .sem-tabs{ display:grid !important; grid-template-columns:1fr 1fr !important; gap:8px !important; } .sem-tab{ width:100% !important; text-align:center !important; padding:10px 8px !important; } .sem-content{ padding:18px 14px !important; } .sem-subjects{ grid-template-columns:1fr !important; } .sem-subject{ align-items:flex-start !important; gap:8px !important; } .admission-steps{ grid-template-columns:1fr !important; gap:22px !important; } .admission-steps::before{ display:none !important; } .step-circle{ width:62px !important; height:62px !important; margin-bottom:12px !important; } .eligibility-box, .fee-note, .faculty-desc, .quadrant-card, .support-card{ padding:20px 16px !important; border-radius:18px !important; } .quadrant-grid{ grid-template-columns:1fr !important; } .cta-mini-strip{ flex-direction:column !important; align-items:stretch !important; text-align:left !important; padding:18px !important; border-radius:18px !important; } .cta-mini-actions{ display:grid !important; grid-template-columns:1fr !important; width:100% !important; } .cta-mini-actions .btn, .section-cta-row .btn, .final-cta-btns .btn{ width:100% !important; justify-content:center !important; white-space:normal !important; } .faq-question{ padding:17px 16px !important; } .faq-question span{ font-size:.9rem !important; } .faq-answer-inner{ padding:0 16px 18px !important; } .footer-inner{ grid-template-columns:1fr !important; gap:24px !important; text-align:center !important; } .footer-bottom{ flex-direction:column !important; gap:8px !important; text-align:center !important; } .float-btns, .conversion-ribbon{ display:none !important; } .mobile-sticky{ display:block !important; padding:9px 12px calc(9px + env(safe-area-inset-bottom)) !important; z-index:999997 !important; } .mobile-sticky-inner{ display:grid !important; grid-template-columns:1fr 1fr 48px !important; gap:8px !important; } .mobile-sticky .btn{ min-height:46px !important; border-radius:14px !important; padding:10px 8px !important; font-size:.78rem !important; white-space:nowrap !important; } .popup-modal{ width:calc(100vw - 24px) !important; max-height:calc(100vh - 34px) !important; overflow-y:auto !important; border-radius:22px !important; } .popup-top{ padding:24px 18px 16px !important; } .popup-body{ padding:18px !important; } .popup-grid{ grid-template-columns:1fr !important; gap:0 !important; } .popup-whatsapp-row{ display:grid !important; grid-template-columns:1fr !important; }
}
@media (max-width: 390px){ .container{ padding-left:14px !important; padding-right:14px !important; } .nmims-logo-img{ max-width:138px !important; max-height:34px !important; } .hero-person-wrap{ min-height:230px !important; } .hero-person-figure{ width:156px !important; } .hero-tag{ font-size:.62rem !important; padding:6px 7px !important; } .hero-form-card{ padding:20px 14px !important; } .mobile-sticky .btn{ font-size:.72rem !important; } .faculty-stats{ grid-template-columns:1fr !important; }
}

/* style#8 id=true-final-mobile-center-fix */
/* FINAL FIX: bigger mobile logo + properly clickable popup close button */
@media (max-width: 768px){ #site-header{min-height:92px !important; height:92px !important; overflow:visible !important;} #site-header .container{padding-left:14px !important; padding-right:14px !important;} .header-inner{height:92px !important; min-height:92px !important; padding:8px 0 !important;} .logo-wrap{flex:1 1 auto !important; max-width:calc(100vw - 92px) !important; overflow:visible !important;} .nmims-logo-img{ width:250px !important; height:auto !important; max-width:250px !important; max-height:62px !important; object-fit:contain !important; object-position:left center !important; transform:none !important; display:block !important; } .nav-burger{width:58px !important; height:58px !important; flex-shrink:0 !important; z-index:1002 !important;} .hero{padding-top:92px !important;}
}
@media (max-width:420px){ .nmims-logo-img{width:238px !important; max-width:238px !important; max-height:58px !important;}
}
@media (max-width:390px){ .nmims-logo-img{width:228px !important; max-width:228px !important; max-height:56px !important;} .logo-wrap{max-width:calc(100vw - 88px) !important;}
}
@media (max-width:360px){ .nmims-logo-img{width:208px !important; max-width:208px !important; max-height:52px !important;}
} @media (max-width:560px){ .popup-overlay.active{ display:flex !important; align-items:flex-start !important; justify-content:center !important; padding:104px 10px calc(92px + env(safe-area-inset-bottom, 0px)) !important; overflow-y:auto !important; z-index:999990 !important; background:rgba(18,12,31,.58) !important; } .popup-modal{ width:calc(100vw - 20px) !important; max-height:calc(100dvh - 202px) !important; overflow-y:auto !important; border-radius:20px !important; position:relative !important; margin:0 auto !important; } .popup-top{ position:relative !important; top:auto !important; padding:18px 70px 16px 18px !important; z-index:2 !important; } .popup-title{font-size:1.28rem !important; line-height:1.15 !important; margin:0 0 6px 0 !important;} .popup-note{font-size:.84rem !important; line-height:1.42 !important;} .popup-body{padding:18px !important;} #popupClose.popup-close{ position:absolute !important; top:14px !important; right:14px !important; width:46px !important; height:46px !important; min-width:46px !important; min-height:46px !important; border-radius:999px !important; background:#fff !important; color:#4B2C7B !important; border:2px solid rgba(75,44,123,.18) !important; box-shadow:0 10px 28px rgba(0,0,0,.26) !important; font-size:34px !important; line-height:40px !important; z-index:999999 !important; pointer-events:auto !important; touch-action:manipulation !important; cursor:pointer !important; display:flex !important; align-items:center !important; justify-content:center !important; padding:0 !important; } #popupClose::before{content:none !important;}
}

/* style#9 id=true-final-popup-mobile-visible-fix */
@media (max-width: 900px){ /* HERO: show all four floating benefit badges on mobile */ .hero-person-wrap{ position:relative !important; width:100% !important; max-width:390px !important; min-height:380px !important; margin:8px auto 8px !important; overflow:visible !important; padding:24px 0 0 !important; } .hero-person-figure{ width:166px !important; margin-top:92px !important; } .hero-person-bg{ width:210px !important; height:210px !important; bottom:20px !important; } .hero-tag{ display:flex !important; visibility:visible !important; opacity:1 !important; position:absolute !important; z-index:50 !important; max-width:148px !important; font-size:.66rem !important; line-height:1.22 !important; padding:8px 10px !important; border-radius:13px !important; white-space:normal !important; animation:none !important; } .hero-tag-1{ top:18px !important; left:8px !important; right:auto !important; bottom:auto !important; } .hero-tag-3{ top:18px !important; right:8px !important; left:auto !important; bottom:auto !important; } .hero-tag-2{ bottom:108px !important; left:8px !important; right:auto !important; top:auto !important; } .hero-tag-4{ display:flex !important; bottom:108px !important; right:8px !important; left:auto !important; top:auto !important; } /* FACULTY: keep artwork perfectly centred on mobile */ #faculty .faculty-premium-hero{ display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; overflow:hidden !important; margin-left:14px !important; margin-right:14px !important; } #faculty .faculty-mosaic{ position:relative !important; left:auto !important; right:auto !important; top:auto !important; width:520px !important; min-width:520px !important; max-width:520px !important; height:360px !important; margin:12px auto -112px auto !important; transform:scale(.64) !important; transform-origin:top center !important; } #faculty .faculty-mosaic::before{ left:10px !important; right:auto !important; top:24px !important; }
}
@media (max-width:420px){ .hero-person-wrap{ max-width:360px !important; min-height:360px !important; } .hero-person-figure{ width:158px !important; margin-top:0px !important; } .hero-tag{ max-width:132px !important; font-size:.61rem !important; padding:7px 8px !important; } .hero-tag-1{ top:16px !important; left:0 !important; } .hero-tag-3{ top:16px !important; right:0 !important; } .hero-tag-2{ bottom:104px !important; left:0 !important; } .hero-tag-4{ display:flex !important; bottom:104px !important; right:0 !important; } #faculty .faculty-mosaic{ transform:scale(.60) !important; margin-bottom:-128px !important; }
}
@media (max-width:360px){ .hero-tag{ max-width:118px !important; font-size:.57rem !important; } #faculty .faculty-mosaic{ transform:scale(.56) !important; margin-bottom:-144px !important; }
}

/* style#10 id=final-desktop-enquiry-form-fit-fix */
/* TRUE FINAL MOBILE FIX: faculty collage centered + all 4 hero badges visible */
@media (max-width: 768px){ #faculty.faculty-showcase-section{overflow:hidden!important;padding:34px 0 56px!important;} #faculty .faculty-premium-hero{ width:calc(100% - 28px)!important; max-width:520px!important; margin:0 auto!important; padding:30px 18px 30px!important; display:flex!important; flex-direction:column!important; align-items:center!important; justify-content:flex-start!important; text-align:center!important; overflow:hidden!important; } #faculty .faculty-premium-left, #faculty .faculty-stat-grid-new{margin-left:auto!important;margin-right:auto!important;} /* remove old absolute/translate scaling that was pushing collage to one side */ #faculty .faculty-mosaic{ position:relative!important; width:100%!important; min-width:0!important; max-width:340px!important; height:auto!important; margin:8px auto 0!important; left:auto!important; right:auto!important; top:auto!important; transform:none!important; transform-origin:center!important; display:grid!important; grid-template-columns:repeat(4, 1fr)!important; gap:9px!important; justify-items:center!important; align-items:center!important; padding:16px 10px!important; border-radius:24px!important; background:rgba(255,255,255,.16)!important; box-shadow:inset 0 1px 0 rgba(255,255,255,.26)!important; overflow:visible!important; } #faculty .faculty-mosaic::before, #faculty .faculty-mosaic .mosaic-letter, #faculty .faculty-mosaic .shape-only{display:none!important;} #faculty .faculty-mosaic .mosaic-tile, #faculty .faculty-mosaic .m1, #faculty .faculty-mosaic .m2, #faculty .faculty-mosaic .m3, #faculty .faculty-mosaic .m4, #faculty .faculty-mosaic .m5, #faculty .faculty-mosaic .m6, #faculty .faculty-mosaic .m7, #faculty .faculty-mosaic .m8, #faculty .faculty-mosaic .m9, #faculty .faculty-mosaic .m10, #faculty .faculty-mosaic .m11, #faculty .faculty-mosaic .m12, #faculty .faculty-mosaic .m13, #faculty .faculty-mosaic .m14, #faculty .faculty-mosaic .m15, #faculty .faculty-mosaic .m16{ position:static!important; left:auto!important; top:auto!important; right:auto!important; bottom:auto!important; width:66px!important; height:66px!important; border-radius:50%!important; display:block!important; border:2px solid rgba(255,255,255,.88)!important; box-shadow:0 10px 20px rgba(55,35,92,.16)!important; overflow:hidden!important; background:rgba(255,255,255,.55)!important; } #faculty .faculty-mosaic .mosaic-tile img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;display:block!important;} /* hero mobile: force all 4 small cards to show inside the visual area */ .hero-person-wrap{position:relative!important;overflow:visible!important;min-height:270px!important;padding:10px 0 0!important;} .hero-tag{display:flex!important;visibility:visible!important;opacity:1!important;z-index:20!important;font-size:.68rem!important;line-height:1.15!important;padding:7px 9px!important;max-width:132px!important;white-space:normal!important;} .hero-tag-1{top:12px!important;left:6px!important;right:auto!important;bottom:auto!important;} .hero-tag-3{top:12px!important;right:6px!important;left:auto!important;bottom:auto!important;} .hero-tag-2{bottom:92px!important;left:6px!important;right:auto!important;top:auto!important;} .hero-tag-4{bottom:126px!important;right:6px!important;left:auto!important;top:auto!important;}
}
@media (max-width:390px){ #faculty .faculty-mosaic{max-width:320px!important;gap:8px!important;padding:14px 8px!important;} #faculty .faculty-mosaic .mosaic-tile{width:60px!important;height:60px!important;} .hero-tag{font-size:.62rem!important;max-width:118px!important;}
} /* === FINAL MOBILE POPUP VISIBILITY OPTIMIZATION === Keeps the popup X, heading and bottom buttons visible on small phones. Desktop design remains untouched. */
@media (max-width: 768px){ .popup-overlay.active{ align-items: flex-start !important; justify-content: center !important; padding: 86px 12px 92px !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; } .popup-modal{ width: min(94vw, 460px) !important; max-height: calc(100dvh - 178px) !important; overflow-y: auto !important; border-radius: 20px !important; transform: none !important; margin: 0 auto !important; } .popup-top{ padding: 14px 54px 12px 16px !important; min-height: auto !important; } .popup-title{ font-size: 1.12rem !important; line-height: 1.15 !important; margin: 0 0 4px 0 !important; } .popup-note{ font-size: .76rem !important; line-height: 1.28 !important; max-width: 100% !important; } .popup-kicker{ display: none !important; } #popupClose.popup-close, .popup-close{ position: fixed !important; top: 74px !important; right: 14px !important; width: 42px !important; height: 42px !important; min-width: 42px !important; min-height: 42px !important; border-radius: 50% !important; background: #fff !important; color: var(--purple) !important; border: 2px solid rgba(75,44,123,.16) !important; box-shadow: 0 10px 26px rgba(0,0,0,.22) !important; z-index: 2147483647 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: auto !important; touch-action: manipulation !important; } .popup-body{ padding: 12px 16px 14px !important; } .popup-field{ margin-bottom: 7px !important; } .popup-field label{ font-size: .62rem !important; margin-bottom: 3px !important; } .popup-field input, .popup-field select{ padding: 10px 12px !important; min-height: 42px !important; font-size: .86rem !important; border-radius: 12px !important; } .popup-submit{ padding: 11px 14px !important; font-size: .88rem !important; } .popup-whatsapp-row{ margin-top: 8px !important; gap: 7px !important; } .popup-whatsapp-row .btn{ padding: 10px 12px !important; font-size: .80rem !important; } .popup-mini{ font-size: .62rem !important; line-height: 1.25 !important; margin-top: 6px !important; }
} @media (max-width: 390px){ .popup-overlay.active{ padding-top: 78px !important; padding-bottom: 88px !important; } .popup-modal{ max-height: calc(100dvh - 166px) !important; } #popupClose.popup-close, .popup-close{ top: 66px !important; right: 10px !important; width: 40px !important; height: 40px !important; } .popup-top{ padding: 12px 50px 10px 14px !important; } .popup-title{ font-size: 1.04rem !important; } .popup-note{ font-size: .72rem !important; } .popup-body{ padding: 10px 14px 12px !important; } .popup-field input, .popup-field select{ min-height: 40px !important; padding: 9px 11px !important; }
}

/* style#11 id=patch-10 */
/* TRUE FINAL POPUP MOBILE FIX The previous issue happened mainly because mobile autofocus was pushing the popup content upward. This override keeps the complete popup header, X button and bottom buttons visible without changing the design. */
@media (max-width: 768px){ body.popup-open-mobile{ overflow: hidden !important; } .popup-overlay.active{ position: fixed !important; inset: 0 !important; z-index: 9999999 !important; display: flex !important; align-items: flex-start !important; justify-content: center !important; padding: 104px 12px 92px !important; /* safely below sticky header + above bottom CTA */ overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; } .popup-modal{ width: min(94vw, 460px) !important; max-height: calc(100dvh - 206px) !important; overflow-y: auto !important; margin: 0 auto !important; border-radius: 20px !important; transform: none !important; overscroll-behavior: contain !important; } .popup-top{ display: block !important; padding: 12px 56px 10px 16px !important; min-height: 76px !important; } .popup-kicker{display:none !important;} .popup-title{ display:block !important; font-size: 1.08rem !important; line-height: 1.15 !important; margin: 0 0 4px !important; } .popup-note{ display:block !important; font-size: .74rem !important; line-height: 1.25 !important; margin: 0 !important; } #popupClose.popup-close, .popup-close{ position: fixed !important; top: 88px !important; right: 14px !important; width: 42px !important; height: 42px !important; min-width: 42px !important; min-height: 42px !important; border-radius: 50% !important; background: #fff !important; color: var(--purple) !important; border: 2px solid rgba(75,44,123,.16) !important; box-shadow: 0 10px 26px rgba(0,0,0,.22) !important; z-index: 2147483647 !important; display: flex !important; align-items: center !important; justify-content: center !important; pointer-events: auto !important; touch-action: manipulation !important; line-height: 1 !important; } .popup-body{padding: 10px 16px 12px !important;} .popup-field{margin-bottom: 6px !important;} .popup-field label{font-size:.60rem !important; margin-bottom: 2px !important;} .popup-field input, .popup-field select{ min-height: 39px !important; padding: 8px 11px !important; font-size: .84rem !important; border-radius: 12px !important; } .popup-submit{padding: 10px 14px !important; font-size:.86rem !important; margin-top: 4px !important;} .popup-whatsapp-row{display:grid !important; grid-template-columns:1fr !important; gap:6px !important; margin-top:7px !important;} .popup-whatsapp-row .btn{padding: 9px 12px !important; font-size:.78rem !important; justify-content:center !important;} .popup-mini{font-size:.60rem !important; line-height:1.22 !important; margin-top:5px !important;}
}
@media (max-width: 390px){ .popup-overlay.active{padding-top: 102px !important; padding-bottom: 88px !important;} .popup-modal{max-height: calc(100dvh - 198px) !important;} #popupClose.popup-close, .popup-close{top: 86px !important; right: 10px !important; width: 40px !important; height: 40px !important;} .popup-top{min-height: 68px !important; padding: 10px 52px 8px 14px !important;} .popup-title{font-size: 1.0rem !important;} .popup-note{font-size:.70rem !important;} .popup-body{padding: 9px 14px 10px !important;} .popup-field input, .popup-field select{min-height: 38px !important; padding:8px 10px !important;}
}

/* style#12 id=patch-11 */
@media (min-width: 1025px){ /* Keep the banner style same, only make the right enquiry form fit cleanly in first screen */ .hero{ min-height: 620px !important; } .hero-inner{ min-height: 548px !important; padding-top: 20px !important; padding-bottom: 16px !important; align-items: center !important; } .hero-form-card{ width: 100% !important; max-width: 352px !important; padding: 20px 26px 16px !important; border-radius: 18px !important; align-self: center !important; transform: none !important; max-height: calc(100vh - 92px) !important; overflow: visible !important; } .form-card-header{ margin-bottom: 12px !important; } .form-card-header h3{ font-size: 1.28rem !important; line-height: 1.08 !important; margin-bottom: 3px !important; } .form-card-header p{ font-size: .78rem !important; line-height: 1.25 !important; } .hero-form-card .form-group{ margin-bottom: 9px !important; } .hero-form-card .form-group label{ font-size: .68rem !important; margin-bottom: 4px !important; line-height: 1.1 !important; } .hero-form-card .form-group input, .hero-form-card .form-group select{ height: 38px !important; padding: 8px 13px !important; font-size: .82rem !important; border-radius: 10px !important; } .hero-form-card .form-submit-btn{ min-height: 42px !important; padding: 10px 16px !important; font-size: .88rem !important; margin-top: 4px !important; } .hero-form-card .form-disclaimer{ font-size: .66rem !important; line-height: 1.35 !important; margin-top: 8px !important; }
} /* Slight extra fit for laptop screens with smaller height */
@media (min-width: 1025px) and (max-height: 740px){ .hero-form-card{ max-width: 340px !important; padding: 16px 24px 12px !important; } .form-card-header{ margin-bottom: 9px !important; } .form-card-header h3{ font-size: 1.18rem !important; } .form-card-header p{ font-size: .74rem !important; } .hero-form-card .form-group{ margin-bottom: 7px !important; } .hero-form-card .form-group label{ font-size: .65rem !important; margin-bottom: 3px !important; } .hero-form-card .form-group input, .hero-form-card .form-group select{ height: 34px !important; padding: 7px 12px !important; font-size: .78rem !important; } .hero-form-card .form-submit-btn{ min-height: 38px !important; padding: 9px 14px !important; font-size: .84rem !important; } .hero-form-card .form-disclaimer{ font-size: .62rem !important; margin-top: 6px !important; line-height: 1.25 !important; }
}

/* ── CF7 mobile + compact integration (Phase 13E) ── */
@media (max-width: 768px) {
	.hero-form-card .wpcf7-form-control:not(.wpcf7-submit),
	#leadPopup .wpcf7-form-control:not(.wpcf7-submit) {
		font-size: 16px !important;
		min-height: 44px;
	}

	.hero-form-card .wpcf7 label {
		font-size: 0.72rem;
	}

	#leadPopup .wpcf7 label {
		font-size: 0.64rem;
		margin-bottom: 4px;
	}

	#leadPopup .popup-body .wpcf7-form .popup-grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	#leadPopup .popup-body .wpcf7-form > p,
	#leadPopup .popup-body .wpcf7-form .popup-field {
		margin-bottom: 8px;
	}

	#leadPopup .wpcf7-form-control:not(.wpcf7-submit) {
		padding: 9px 11px;
		border-radius: 11px;
		font-size: 16px !important;
	}

	#leadPopup .wpcf7-submit {
		padding: 12px 16px;
		font-size: 0.94rem;
		min-height: 46px;
	}
}

@media (max-width: 560px) {
	#leadPopup .popup-body .wpcf7-form .popup-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (min-width: 1025px) {
	.hero-form-card .wpcf7-form > p {
		margin-bottom: 9px !important;
	}

	.hero-form-card .wpcf7 label {
		font-size: 0.68rem !important;
		margin-bottom: 4px !important;
		line-height: 1.15 !important;
	}

	.hero-form-card .wpcf7-form-control:not(.wpcf7-submit) {
		height: 38px !important;
		padding: 8px 13px !important;
		font-size: 0.82rem !important;
		border-radius: 10px !important;
	}

	.hero-form-card .wpcf7-form-control.wpcf7-textarea {
		height: auto !important;
		min-height: 72px !important;
	}

	.hero-form-card .wpcf7-submit {
		min-height: 42px !important;
		padding: 10px 16px !important;
		font-size: 0.88rem !important;
		margin-top: 4px !important;
	}
}

@media (min-width: 1025px) and (max-height: 740px) {
	.hero-form-card .wpcf7-form > p {
		margin-bottom: 7px !important;
	}

	.hero-form-card .wpcf7 label {
		font-size: 0.65rem !important;
		margin-bottom: 3px !important;
	}

	.hero-form-card .wpcf7-form-control:not(.wpcf7-submit) {
		height: 34px !important;
		padding: 7px 12px !important;
		font-size: 0.78rem !important;
	}

	.hero-form-card .wpcf7-submit {
		min-height: 38px !important;
		padding: 9px 14px !important;
		font-size: 0.84rem !important;
	}
}

/* ── Phase 13C: unified mobile header offsets + popup safety ── */
@media (max-width: 768px) {
	.voices-head.reveal.visible {
    flex-flow: column;
	align-items: start;	
}
	.voices-badge {
    margin: 0 !important;
}
	.voice-card{
		width: 310px;
	}
	.voices-cta-card.reveal.reveal-delay-2 {
    flex-direction: column;
}
	.faq-list {
    margin-top: 25px;
}
	.footer-brand p {
    text-align: start;
}
	.footer-links ul {
    text-align: start;
}
	.footer-links h4 {
    text-align: start;
}
	    .aep-disclaimer {
        margin: 0;
        border-top: none;
        text-align: start;
        border-bottom: 1px solid #ffffff24;
        padding-bottom: 15px;
    }
	.btn.btn-ghost, .btn.btn-whatsapp,  .btn.btn-primary {
    padding: 10px 20px !important;
}
	.learning-method-panel.reveal.reveal-delay-2.visible {
    margin-top: 30px;
}
	.hero {
		padding-top: 80px !important;
	}
	.why-grid {margin-top: 25px;}
	.rec-badge {
    flex-direction: column;
    align-items: stretch;
}
	.rec-badge-text span {font-size: 9px;}
	.learning-showcase {
    gap: 0px !important;
}
	.prog-overview{ margin-top: 25px !important; margin-bottom: 25px !important}
	
	body {
		padding-top: 40px !important;
		padding-bottom: 60px !important;
	}

	#site-header {
		min-height: var(--nmims-header-mobile-height) !important;
		height: var(--nmims-header-mobile-height) !important;
	}

	.header-inner {
		height: var(--nmims-header-mobile-height) !important;
		min-height: var(--nmims-header-mobile-height) !important;
	}

	.main-nav {
		top: var(--nmims-header-mobile-height) !important;
	}

	

	body.popup-open-mobile {
		overflow: hidden !important;
	}

	.popup-overlay.active {
		position: fixed !important;
		inset: 0 !important;
		z-index: 9999999 !important;
		display: flex !important;
		align-items: flex-start !important;
		justify-content: center !important;
		padding: calc(var(--nmims-header-mobile-height) + 12px) 12px calc(var(--nmims-mobile-sticky-bar-height) + env(safe-area-inset-bottom, 0px)) !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch !important;
		overscroll-behavior: contain !important;
	}

	.popup-overlay.active .popup-modal {
		width: min(94vw, 460px) !important;
		max-height: calc(100dvh - var(--nmims-header-mobile-height) - var(--nmims-mobile-sticky-bar-height) - 24px) !important;
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
		margin: 0 auto !important;
		border-radius: 20px !important;
		transform: none !important;
	}

	.popup-overlay.active .popup-top {
		position: relative !important;
		flex-shrink: 0 !important;
		padding: 14px 52px 12px 16px !important;
	}

	.popup-overlay.active #popupClose.popup-close,
	.popup-overlay.active .popup-close {
		position: absolute !important;
		top: 14px !important;
		right: 14px !important;
		width: 42px !important;
		height: 42px !important;
		min-width: 42px !important;
		min-height: 42px !important;
		z-index: 10 !important;
		pointer-events: auto !important;
		touch-action: manipulation !important;
	}

	.popup-overlay.active .popup-body,
	#leadPopup .popup-body {
		flex: 1 1 auto !important;
		min-height: 0 !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch !important;
		padding: 12px 16px 16px !important;
	}

	#leadPopup .wpcf7-form {
		min-height: 0 !important;
	}

	#leadPopup .wpcf7-response-output {
		margin: 8px 0 0 !important;
	}
}

/* ── Phase 15: tablet header alignment (769px–900px) — wins over legacy 900px block ── */
@media (min-width: 769px) and (max-width: 900px) {
	body {
		padding-top: var(--nmims-header-tablet-height, 63px) !important;
	}

	#site-header {
		min-height: var(--nmims-header-tablet-height, 63px) !important;
		height: var(--nmims-header-tablet-height, 63px) !important;
	}

	.header-inner {
		height: var(--nmims-header-tablet-height, 63px) !important;
		min-height: var(--nmims-header-tablet-height, 63px) !important;
	}

	.main-nav {
		top: var(--nmims-header-tablet-height, 63px) !important;
	}

	.hero {
		padding-top: var(--nmims-header-tablet-height, 63px) !important;
	}
}


@media (max-width: 576px){
	.learning-premium{padding-top: 40px !important}
}