@font-face{font-family:Ador;src:url('../fonts/AdorNoirrit.ttf') format('truetype');font-display:swap}
:root{--green:#047857;--dark:#064e3b;--light:#ecfdf5;--gold:#fbbf24;--ink:#1e293b;--muted:#64748b;--line:#dbe7e2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Ador,system-ui,sans-serif;background:#fff;line-height:1.7}a{color:inherit;text-decoration:none}.container{width:min(1180px,90%);margin:auto}.topbar{background:var(--dark);color:#fff;font-size:14px}.topbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:25px}.topbar a:hover{color:var(--gold)}.topbar i{color:var(--gold);margin-right:7px}.sep{margin:0 16px;color:#6ee7b7}.top-links{display:flex;gap:24px}.nav{position:relative;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid #d1fae5;box-shadow:0 4px 20px rgba(6,78,59,.04)}.nav.sticky{position:fixed;top:0;left:0;right:0}.nav-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo img{width:120px;max-height:70px;object-fit:contain}.nav-links{display:flex;align-items:center;gap:24px;font-weight:700}.nav-links a:hover{color:var(--green)}.nav-actions{display:flex;align-items:center;gap:10px}.language-toggle,.translate-toggle{border:1px solid #a7f3d0;color:var(--dark);padding:8px 12px;border-radius:99px;font-weight:800;font-size:14px;background:#fff}.translate-toggle{display:inline-flex;align-items:center;gap:8px}.translate-toggle i{font-size:14px;margin:0}.translate-picker{position:relative}.translate-picker .dropdown-menu{left:auto;right:0;transform:none;min-width:220px}.admission,.button.primary{background:var(--green);color:white;border-radius:99px;padding:12px 20px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer}.admission:hover,.button.primary:hover{background:var(--dark)}.menu-button{display:none;width:44px;height:44px;border:0;border-radius:50%;background:#d1fae5;color:var(--dark)}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#ecfdf5,#fff 55%,#f0fdf4);padding:85px 0}.pattern{position:absolute;inset:0;opacity:.04;background-image:linear-gradient(45deg,var(--dark) 1px,transparent 1px),linear-gradient(-45deg,var(--dark) 1px,transparent 1px);background-size:45px 45px}.hero-grid{position:relative;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:70px}.eyebrow{display:inline-flex;gap:8px;align-items:center;background:#d1fae5;color:var(--dark);padding:8px 15px;border-radius:99px;font-weight:800}.hero h1{font-size:clamp(42px,5vw,68px);line-height:1.17;margin:20px 0 22px;font-weight:900}.hero h1 em{font-style:normal;color:var(--green)}.hero>div p,.hero-grid>div>p{font-size:19px;color:var(--muted);max-width:680px}.hero-actions{display:flex;gap:14px;margin:30px 0}.button{padding:13px 24px;display:inline-flex;border-radius:99px;font-weight:800}.button.secondary{border:2px solid var(--green);color:var(--green)}.hero-card{position:relative}.hero-card>img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:40px 8px 40px 8px;box-shadow:0 30px 80px rgba(6,78,59,.18)}.hero-badge{position:absolute;bottom:-22px;left:-28px;background:white;padding:16px 20px;border-radius:16px;box-shadow:0 15px 40px rgba(15,23,42,.15);display:flex;align-items:center;gap:12px;font-weight:800;max-width:250px}.hero-badge i{font-size:30px;color:var(--green)}.section{padding:85px 0}.section.soft{background:#f8fafc}.section-heading{text-align:center;max-width:700px;margin:0 auto 45px}.section-heading.left{text-align:left;margin-left:0}.section-heading span{color:var(--green);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.section-heading h2{font-size:clamp(34px,4vw,48px);line-height:1.25;margin:8px 0}.section-heading p{font-size:18px;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.course-card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 25px rgba(15,23,42,.05);transition:.25s}.course-card:hover{transform:translateY(-5px);border-color:#6ee7b7;box-shadow:0 18px 45px rgba(6,78,59,.12)}.card-top{background:linear-gradient(135deg,#047857,#059669);color:white;padding:25px;min-height:150px}.card-top span{background:rgba(255,255,255,.18);border-radius:99px;padding:4px 10px;font-size:12px}.card-top h3{font-size:23px;line-height:1.35;margin:15px 0 4px}.card-image{width:100%;height:210px;object-fit:cover}.card-body{padding:24px;flex:1;display:flex;flex-direction:column}.card-body h2{font-size:23px;line-height:1.35}.card-body p{color:var(--muted);flex:1}.card-body>a{color:var(--green);font-weight:800}.fee{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.fee span{background:#ecfdf5;color:var(--dark);padding:4px 9px;border-radius:8px;font-size:13px}.center{text-align:center;margin-top:40px}.two-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}.notice-list{display:grid;gap:12px}.notice-list a{background:#fff;border:1px solid var(--line);padding:17px;border-radius:14px;display:flex;align-items:center;gap:16px}.notice-list time{color:var(--green);font-weight:800;min-width:55px}.notice-list strong{flex:1}.notice-list a:hover{border-color:#34d399;color:var(--green)}.why{background:var(--dark);color:white;padding:40px;border-radius:30px}.why h2{font-size:35px;line-height:1.35}.why .eyebrow{background:rgba(255,255,255,.12);color:#a7f3d0}.feature{display:flex;gap:18px;margin:28px 0}.feature>i{width:52px;height:52px;border-radius:14px;background:#059669;display:grid;place-items:center;font-size:21px;flex:0 0 auto}.feature h3,.feature p{margin:0}.feature p{color:#d1fae5}.page-hero{background:linear-gradient(135deg,var(--dark),var(--green));color:#fff;padding:60px 0}.page-hero h1{font-size:clamp(36px,5vw,56px);margin:6px 0;line-height:1.25}.page-hero span{color:#a7f3d0;font-weight:800}.article-wrap,.checkout-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:45px;align-items:start}.article,.checkout-form,.purchase{background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:30px}.featured{max-width:100%;border-radius:16px}.prose{font-size:18px}.prose img{max-width:100%;height:auto}.prose table{width:100%;border-collapse:collapse}.prose td,.prose th{border:1px solid var(--line);padding:10px}.purchase{position:sticky;top:25px;box-shadow:0 10px 40px rgba(6,78,59,.1)}.price{font-size:35px;font-weight:900;color:var(--green);margin:14px 0}.checkout-form{display:grid;gap:18px}.checkout-form label{display:grid;gap:7px;font-weight:800}.checkout-form input,.checkout-form textarea,.search-form input{width:100%;padding:13px;border:1px solid #cbd5e1;border-radius:10px;font:inherit}.checkout-form textarea{min-height:110px}.form-errors,.flash.error{background:#fee2e2;color:#991b1b}.form-errors{padding:10px 18px;border-radius:10px}.flash{padding:12px;text-align:center;font-weight:800}.flash.success{background:#d1fae5;color:#065f46}.search-form{display:flex;max-width:650px}.search-form button{border:0;background:#fbbf24;padding:0 25px;font-weight:800}.pagination{display:flex;gap:8px;margin-top:30px}footer{background:#052e27;color:#d1fae5;padding-top:55px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px}.footer-grid img{width:135px;background:white;border-radius:8px}.footer-grid>div{display:flex;flex-direction:column;align-items:start}.footer-grid h3{color:#fff}.footer-grid a{margin:4px 0}.copyright{text-align:center;border-top:1px solid rgba(255,255,255,.12);padding:18px;margin-top:40px}.mobile-bottom{display:none}
@media(max-width:1050px){.nav-links{display:none;position:absolute;top:90px;left:0;right:0;background:#fff;padding:24px 5%;flex-direction:column;align-items:start;box-shadow:0 15px 25px rgba(0,0,0,.1)}.nav-links.open{display:flex}.menu-button{display:block}.admission{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:35px}.card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){body{padding-bottom:62px}.topbar-inner{justify-content:center}.top-links,.sep{display:none}.nav-inner{height:76px}.logo img{width:95px}.language-toggle{font-size:12px;padding:7px 9px}.hero{padding:55px 0}.hero-grid,.two-columns,.article-wrap,.checkout-wrap{grid-template-columns:1fr}.hero-card{margin:15px}.hero h1{font-size:42px}.card-grid{grid-template-columns:1fr}.section{padding:60px 0}.why{padding:28px}.footer-grid{grid-template-columns:1fr;gap:28px}.mobile-bottom{position:fixed;z-index:100;bottom:0;left:0;right:0;height:62px;background:white;display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 -5px 25px rgba(15,23,42,.12)}.mobile-bottom a{font-size:11px;display:flex;flex-direction:column;align-items:center;justify-content:center}.mobile-bottom i{font-size:17px}.mobile-bottom .active{color:var(--green)}}
.staff-section{margin-bottom:75px}.staff-grid{grid-template-columns:repeat(4,1fr)}.staff-card{text-align:center}.staff-image{width:145px;height:145px;object-fit:cover;border-radius:50%;border:6px solid var(--light);margin:26px auto 0}.staff-card .card-body h3{font-size:22px;line-height:1.35;margin:8px 0}.staff-designation{display:block;color:var(--green);margin-bottom:10px}@media(max-width:1050px){.staff-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.staff-grid{grid-template-columns:1fr}}
.about-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:28px;align-items:start}.about-main,.about-side{display:grid;gap:24px}.about-side{position:sticky;top:24px}.about-panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 8px 25px rgba(15,23,42,.05)}.about-panel h2{margin-top:0;color:var(--dark)}.about-panel summary{cursor:pointer;color:var(--dark);font-size:20px;font-weight:800}.about-panel details{border-top:1px solid var(--line);padding:16px 0}.about-panel details:first-of-type{border-top:0}.intro-panel{border-left:5px solid var(--green)}.goal-list{list-style:none;padding:0;display:grid;gap:14px}.goal-list li{display:flex;gap:10px}.goal-list i{color:var(--green);margin-top:6px}.leader-list{display:grid;gap:18px}.leader{display:grid;justify-items:center;text-align:center}.leader img{width:120px;height:120px;object-fit:cover;border-radius:50%;border:5px solid var(--light)}.leader strong{font-size:19px;margin-top:8px}.leader span{color:var(--green)}@media(max-width:850px){.about-grid{grid-template-columns:1fr}.about-side{position:static}}
.nav-container{width:min(1760px,94%);margin:auto}.nav-inner{height:116px;gap:18px}.logo{flex:0 0 auto}.logo img{width:440px;max-height:100px}.nav-links{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:22px;flex:1;min-width:0;font-size:18px}.nav-links>li{position:relative}.nav-links>li>a,.nav-dropdown-toggle{font:inherit;font-weight:800;color:#334155;white-space:nowrap;background:transparent;border:0;padding:14px 0;cursor:pointer}.nav-links>li>a:hover,.nav-dropdown-toggle:hover,.nav-dropdown.open>.nav-dropdown-toggle{color:var(--green)}.nav-dropdown-toggle i{font-size:13px;margin-left:8px;transition:transform .2s}.nav-dropdown.open .nav-dropdown-toggle i{transform:rotate(180deg)}.dropdown-menu{display:none;position:absolute;z-index:100;top:100%;left:50%;transform:translateX(-50%);width:270px;max-height:calc(100vh - 150px);overflow:auto;margin:0;padding:10px;list-style:none;background:#fff;border:1px solid #e2e8f0;box-shadow:0 18px 45px rgba(15,23,42,.15)}.nav-dropdown.open>.dropdown-menu{display:block}.dropdown-menu li+li{border-top:1px solid #edf2f7}.dropdown-menu a{display:block;padding:11px 10px;font-weight:800;line-height:1.35}.dropdown-menu a:hover{background:#ecfdf5;color:var(--green)}.nav-actions{flex:0 0 auto}.admission{padding:15px 22px;font-size:16px}.topbar{min-height:10px}.topbar-inner{min-height:42px}@media(min-width:1051px){.nav-dropdown:hover>.dropdown-menu{display:block}.nav-dropdown:hover>.nav-dropdown-toggle i{transform:rotate(180deg)}}@media(max-width:1540px){.nav-container{width:min(1440px,95%)}.logo img{width:310px}.nav-links{gap:15px;font-size:16px}.nav-actions{gap:7px}.admission{padding:12px 17px;font-size:14px}}@media(max-width:1220px){.logo img{width:220px}.nav-links{gap:11px;font-size:14px}.nav-links>li>a,.nav-dropdown-toggle{padding:12px 0}.language-toggle{padding:7px 9px}.admission{padding:11px 13px;font-size:13px}}@media(max-width:1050px){.nav-container{width:min(1180px,90%)}.nav-inner{height:76px}.logo img{width:130px;max-height:65px}.nav-links{display:none;position:absolute;top:76px;left:0;right:0;max-height:calc(100vh - 76px);overflow:auto;background:#fff;padding:14px 5%;box-shadow:0 15px 25px rgba(0,0,0,.1);align-items:stretch;gap:0;font-size:17px}.nav-links.open{display:flex}.nav-links>li{border-bottom:1px solid #e2e8f0}.nav-links>li>a,.nav-dropdown-toggle{display:flex;width:100%;justify-content:space-between;text-align:left;padding:15px 0}.dropdown-menu{position:static;transform:none;width:auto;max-height:none;box-shadow:none;border:0;border-left:2px solid #a7f3d0;margin:0 0 12px 14px;padding:0 0 0 12px}.dropdown-menu a{padding:11px 0}.admission{display:inline-flex}.menu-button{display:block}}@media(max-width:720px){.logo img{width:110px}.admission{display:none}.nav-actions{gap:6px}.nav-links{top:76px}.dropdown-menu{font-size:16px}}
.translate-picker .translate-toggle span{display:inline-block}.translate-menu a{white-space:nowrap}@media(max-width:1220px){.translate-toggle span{display:none}.translate-toggle{padding:8px 11px}.translate-toggle i{margin:0;font-size:15px}}@media(max-width:1050px){.translate-picker .dropdown-menu{right:auto}}@media(max-width:720px){.translate-toggle{padding:7px 10px}}
.developer-credit{text-align:center;color:#a7f3d0;padding:0 0 22px;font-weight:700;font-size:14px}
.ask-iom{position:fixed;z-index:90;right:24px;bottom:24px;background:var(--green);color:#fff;border-radius:999px;padding:13px 20px;font-weight:800;box-shadow:0 12px 30px rgba(6,78,59,.28)}.ask-iom:hover{background:var(--dark)}.review-card{max-width:760px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:50px;margin:auto;box-shadow:0 12px 35px rgba(15,23,42,.07)}.review-card>i{font-size:48px;color:#1877f2}.review-card h2{color:var(--dark)}@media(max-width:720px){.ask-iom{bottom:74px;right:14px;padding:10px 14px;font-size:14px}.review-card{padding:30px 22px}}

/* Homepage: stats, featured course, sidebar directory, why-grid, testimonials */
.hero-floating{position:absolute;top:10%;left:-30px;background:#fff;padding:14px 18px;border-radius:16px;box-shadow:0 15px 40px rgba(15,23,42,.15);display:flex;align-items:center;gap:12px;font-weight:800}
.hero-floating i{width:44px;height:44px;border-radius:50%;background:var(--light);color:var(--green);display:grid;place-items:center;font-size:18px}
.hero-floating small{display:block;color:var(--muted);font-weight:700;font-size:13px}
.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;margin-top:-45px;z-index:5}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 10px 30px rgba(15,23,42,.06);text-align:center;padding:26px 14px;transition:.25s}
.stat-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(6,78,59,.1)}
.stat-card i{width:56px;height:56px;border-radius:50%;background:var(--light);color:var(--green);display:grid;place-items:center;font-size:22px;margin:0 auto 14px}
.stat-card b{display:block;font-size:28px;color:var(--dark)}
.stat-card span{color:var(--muted);font-weight:700;font-size:14px}
.course-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start}
.featured-course{position:relative;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:0 15px 45px rgba(6,78,59,.1);overflow:hidden;margin-bottom:36px}
.featured-course .fc-head{background:linear-gradient(135deg,#047857,#059669);color:#fff;padding:28px}
.featured-course .fc-head span{background:rgba(255,255,255,.18);border-radius:99px;padding:5px 12px;font-size:12px;font-weight:800}
.featured-course .fc-head h2{font-size:30px;margin:12px 0 4px}
.featured-course .fc-body{padding:24px 28px}
.featured-course .fc-actions{display:flex;flex-wrap:wrap;gap:12px;padding:0 28px 28px}
.other-courses-heading{margin:0 0 6px;font-size:22px;color:var(--dark)}
.other-courses-sub{color:var(--muted);margin:0 0 18px}
.sidebar-stack{display:grid;gap:24px}
.side-panel{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 10px 30px rgba(15,23,42,.05);overflow:hidden}
.side-panel .sp-head{background:linear-gradient(135deg,#047857,#0d9488);color:#fff;padding:20px;text-align:center}
.side-panel .sp-head h3{margin:0;font-size:20px}
.side-panel .sp-head p{margin:6px 0 0;color:#d1fae5;font-size:14px}
.side-panel .sp-body{padding:18px}
.directory-group{margin-bottom:16px}
.directory-group h4{color:var(--green);border-bottom:1px solid var(--line);padding-bottom:6px;margin:0 0 10px;font-size:15px}
.directory-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.directory-links a{background:var(--light);border-radius:12px;padding:9px 10px;font-size:13px;font-weight:700;color:var(--dark);display:block}
.directory-links a small{display:block;color:var(--muted);font-weight:600;font-size:11px}
.steps-list{display:grid;gap:12px}
.step-card{border-radius:16px;padding:14px 16px;border:1px solid var(--line);background:var(--light)}
.step-card h4{margin:0 0 6px;color:var(--dark)}
.step-card p{margin:0;font-size:13px;color:var(--muted)}
.dept-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.dept-chip{border-radius:10px;padding:11px;text-align:center;font-weight:800;font-size:13px}
.dept-chip.c-green{background:#d1fae5;color:var(--dark)}
.dept-chip.c-red{background:#fee2e2;color:#991b1b}
.dept-chip.c-orange{background:#ffedd5;color:#9a3412}
.dept-chip.c-purple{background:#ede9fe;color:#5b21b6}
.dept-chip.c-blue{background:#dbeafe;color:#1e40af}
.dept-chip.c-yellow{background:#fef9c3;color:#854d0e}
.dept-chip.c-pink{background:#fce7f3;color:#9d174d}
.thesis-box{background:linear-gradient(135deg,#ecfdf5,#eff6ff);border-radius:20px;padding:22px;text-align:center}
.thesis-box p{color:var(--muted);font-size:14px}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.why-num-card{border-radius:18px;padding:22px;box-shadow:0 6px 20px rgba(15,23,42,.05)}
.why-num-card .num{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-weight:900;font-size:18px;color:#fff;margin-bottom:14px}
.why-num-card h3{margin:0 0 8px;font-size:17px}
.why-num-card p{margin:0;font-size:14px;color:#334155}
.why-num-card.c-green{background:#d1fae5}.why-num-card.c-green .num{background:#059669}
.why-num-card.c-red{background:#fee2e2}.why-num-card.c-red .num{background:#dc2626}
.why-num-card.c-purple{background:#ede9fe}.why-num-card.c-purple .num{background:#7c3aed}
.why-num-card.c-yellow{background:#fef9c3}.why-num-card.c-yellow .num{background:#ca8a04}
.why-num-card.c-pink{background:#fce7f3}.why-num-card.c-pink .num{background:#db2777}
.why-num-card.c-blue{background:#dbeafe}.why-num-card.c-blue .num{background:#2563eb}
.testimonial-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.testimonial-card{background:#fff;border-radius:20px;box-shadow:0 10px 30px rgba(15,23,42,.06);border-bottom:4px solid var(--green);text-align:center;padding:26px 14px}
.testimonial-card img{width:110px;height:110px;object-fit:cover;border-radius:50%;border:4px solid var(--light);margin:0 auto 14px}
.testimonial-card h3{margin:0;font-size:16px}
@media(max-width:1050px){.course-layout{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:repeat(2,1fr)}.testimonial-grid{grid-template-columns:repeat(2,1fr)}.hero-floating{display:none}}
@media(max-width:720px){.stats-row{grid-template-columns:repeat(2,1fr);margin-top:20px}.dept-grid{grid-template-columns:1fr}.directory-links{grid-template-columns:1fr}}

/* Lazy-loading YouTube thumbnails: only the poster image loads until clicked */
.yt-lazy{position:relative;width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;cursor:pointer;background:#000;margin:14px 0}
.yt-lazy img{width:100%;height:100%;object-fit:cover;display:block}
.yt-lazy .yt-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;background:rgba(220,38,38,.9);border:0;border-radius:50%;color:#fff;font-size:20px;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.yt-lazy .yt-play:hover{background:#dc2626}
iframe.yt-embed{width:100%;aspect-ratio:16/9;border-radius:14px;border:0;margin:14px 0;display:block}

/* Imported Gutenberg column layouts (used for video/scholar grids) */
.prose .wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin:20px 0}
.prose .wp-block-column{min-width:0}
.prose figure{margin:0}
.prose figcaption{margin-top:8px;font-size:14px;color:var(--muted);text-align:center}
.footer-social{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.footer-social a{width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;background:rgba(255,255,255,.06);color:#fff}
.footer-social a:hover{background:rgba(255,255,255,.14)}

/* Photo/Video gallery: image grid + lightbox, video grid reusing .yt-lazy */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery-grid a{position:relative;display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;box-shadow:0 8px 25px rgba(15,23,42,.06)}
.gallery-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:.25s}
.gallery-grid a:hover img{transform:scale(1.06)}
.video-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.video-card .yt-lazy{margin:0}
.video-title{margin:10px 0 0;font-weight:800;color:var(--dark);font-size:15px;line-height:1.4}
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(6,20,15,.92);display:grid;place-items:center;padding:30px}
.lightbox img{max-width:100%;max-height:90vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lightbox-close{position:absolute;top:20px;right:26px;background:rgba(255,255,255,.15);color:#fff;border:0;width:44px;height:44px;border-radius:50%;font-size:22px;cursor:pointer}
.lightbox-close:hover{background:rgba(255,255,255,.3)}
@media(max-width:1050px){.gallery-grid,.video-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.gallery-grid,.video-gallery-grid{grid-template-columns:1fr}}

/* Alumni map: click-to-load iframe so the homepage never pays its network/JS cost until asked */
.map-embed-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:280px;border-radius:24px;background:linear-gradient(135deg,var(--light),#eff6ff);border:1px solid var(--line);text-align:center;padding:20px;cursor:pointer}
.map-embed-card i{font-size:48px;color:var(--green)}
.map-embed-card iframe{width:100%;height:600px;border:0;border-radius:24px;display:block;cursor:auto}
.map-embed-card.has-preview{background-size:cover;background-position:center;aspect-ratio:8/3;min-height:0}
.map-embed-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;background:rgba(4,120,87,.92);border-radius:50%;color:#fff;font-size:22px;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.3)}
