:root{--wine:#700020;--wine-dark:#3b0011;--wine-soft:#970033;--gold:#d6a52e;--gold-light:#f6d775;--ink:#172033;--muted:#667085;--surface:#fff;--surface-soft:#f7f4f5;--line:#e8e1e4;--shadow:0 20px 55px rgba(68,0,20,.12);--radius:24px;--header-h:114px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:#fff;color:var(--ink);font-family:Manrope,Arial,sans-serif;line-height:1.65;overflow-x:hidden}body.menu-open{overflow:hidden}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.site-container{width:min(1180px,calc(100% - 36px));margin:auto}.site-progress{position:fixed;inset:0 0 auto;height:3px;z-index:1200;background:transparent}.site-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),#ffea9a);box-shadow:0 0 12px var(--gold)}.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(112,0,32,.08);transition:.25s}.site-header.scrolled{box-shadow:0 12px 36px rgba(42,0,12,.1)}.site-topbar{height:34px;background:linear-gradient(90deg,var(--wine-dark),var(--wine));color:#fff;font-size:12px}.topbar-inner{height:100%;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.topbar-left a,.topbar-right span{display:flex;align-items:center;gap:7px}.topbar-right{color:#f8e8ed}.topbar-divider{width:1px;height:14px;background:rgba(255,255,255,.3)}.site-navbar{height:80px}.navbar-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand{display:flex;align-items:center;gap:12px;min-width:250px}.site-brand img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(66,0,20,.15))}.site-brand span{display:flex;flex-direction:column;line-height:1.08}.site-brand strong{font-size:18px;color:var(--wine);letter-spacing:.3px}.site-brand small{margin-top:5px;font-size:9px;color:#9d173e;font-weight:800;letter-spacing:.55px}.desktop-nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}.desktop-nav a{position:relative;padding:27px 0 24px;color:#344054}.desktop-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:15px;height:3px;border-radius:10px;background:var(--gold);transition:.25s}.desktop-nav a:hover,.desktop-nav a.active{color:var(--wine)}.desktop-nav a:hover:after,.desktop-nav a.active:after{left:0;right:0}.navbar-actions{display:flex;align-items:center;gap:9px}.theme-button,.mobile-menu-button{width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--wine);cursor:pointer;display:grid;place-items:center}.nav-login,.nav-apply{height:44px;padding:0 16px;border-radius:14px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;transition:.2s}.nav-login{border:1px solid var(--line);color:var(--wine)}.nav-apply{background:linear-gradient(135deg,var(--wine),var(--wine-soft));color:#fff;box-shadow:0 10px 24px rgba(112,0,32,.22)}.nav-apply:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(112,0,32,.3)}.mobile-menu-button{display:none}.mobile-menu,.mobile-menu-backdrop{display:none}.section{padding:92px 0}.section-soft{background:linear-gradient(180deg,#fbf8f9,#fff)}.section-dark{background:linear-gradient(135deg,var(--wine-dark),var(--wine));color:#fff}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#f5e9ed;color:var(--wine);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.eyebrow i{color:var(--gold)}.section-heading{max-width:740px;margin-bottom:38px}.section-heading.center{margin-left:auto;margin-right:auto;text-align:center}.section-heading h2{font-family:"Playfair Display",serif;font-size:clamp(34px,4.5vw,54px);line-height:1.08;margin:15px 0;color:var(--wine-dark)}.section-heading p{margin:0;color:var(--muted);font-size:16px}.section-dark .section-heading h2,.section-dark .section-heading p{color:#fff}.hero{position:relative;min-height:690px;padding:72px 0 80px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 90% 15%,rgba(214,165,46,.22),transparent 27%),linear-gradient(135deg,#fff 0%,#fff6f8 55%,#f4e8ec 100%)}.hero:before{content:"";position:absolute;width:540px;height:540px;border:1px solid rgba(112,0,32,.08);border-radius:50%;right:-220px;top:-150px}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:74px;align-items:center}.hero-copy h1{font-family:"Playfair Display",serif;font-size:clamp(48px,6vw,78px);line-height:.98;margin:18px 0 22px;color:var(--wine-dark);letter-spacing:-1.6px}.hero-copy h1 span{color:var(--wine);position:relative}.hero-copy h1 span:after{content:"";position:absolute;left:2px;right:0;bottom:-6px;height:7px;background:linear-gradient(90deg,var(--gold),transparent);border-radius:10px}.hero-copy>p{max-width:650px;color:#536075;font-size:18px}.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 30px}.hero-badges span{padding:9px 13px;border-radius:12px;background:#fff;border:1px solid #eadfe2;font-size:12px;font-weight:800;color:#4a2030;box-shadow:0 7px 20px rgba(72,0,22,.06)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.primary-button,.secondary-button{min-height:52px;padding:0 21px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;transition:.2s}.primary-button{background:linear-gradient(135deg,var(--wine),#a00036);color:#fff;box-shadow:0 15px 34px rgba(112,0,32,.25)}.primary-button:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(112,0,32,.32)}.secondary-button{background:#fff;color:var(--wine);border:1px solid #dfced4}.hero-note{display:flex;align-items:center;gap:12px;margin-top:28px;color:#5e6675;font-size:13px}.avatar-stack{display:flex}.avatar-stack span{width:32px;height:32px;border:3px solid #fff;border-radius:50%;background:linear-gradient(135deg,#e6c3ce,#87002a);margin-left:-8px}.avatar-stack span:first-child{margin-left:0}.hero-visual{position:relative;min-height:520px}.hero-main-card{position:absolute;inset:25px 20px 30px 40px;border-radius:38px;background:linear-gradient(145deg,var(--wine-dark),#91002f);box-shadow:0 35px 80px rgba(73,0,22,.28);overflow:hidden;color:#fff;padding:38px}.hero-main-card:before,.hero-main-card:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.12)}.hero-main-card:before{width:380px;height:380px;right:-180px;top:-120px}.hero-main-card:after{width:260px;height:260px;left:-120px;bottom:-130px}.hero-card-brand{display:flex;align-items:center;gap:15px;position:relative;z-index:2}.hero-card-brand img{width:72px;height:72px;background:#fff;border-radius:22px;padding:5px}.hero-card-brand strong{font-size:22px;display:block}.hero-card-brand small{color:var(--gold-light);font-weight:800}.hero-screen{position:relative;z-index:2;margin-top:35px;background:#fff;border-radius:24px;padding:22px;color:var(--ink);box-shadow:0 20px 40px rgba(0,0,0,.16)}.screen-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.screen-head strong{color:var(--wine)}.screen-head span{font-size:11px;background:#e8fbef;color:#16804b;padding:6px 9px;border-radius:99px;font-weight:800}.screen-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.screen-item{min-height:100px;padding:16px;border-radius:17px;background:#f8f5f6;display:flex;flex-direction:column;justify-content:space-between}.screen-item i{font-size:22px;color:var(--wine)}.screen-item strong{font-size:13px}.floating-card{position:absolute;z-index:4;background:#fff;border-radius:18px;box-shadow:0 20px 45px rgba(60,0,18,.18);padding:15px 17px;display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800}.floating-card i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--gold),#e6bc58)}.floating-one{left:-5px;top:80px}.floating-two{right:-10px;bottom:55px}.quick-section{position:relative;margin-top:-38px;z-index:5}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:25px;box-shadow:var(--shadow);overflow:hidden;border:1px solid #eee4e7}.quick-card{padding:26px 24px;display:flex;align-items:center;gap:16px;position:relative;transition:.2s}.quick-card:not(:last-child){border-right:1px solid var(--line)}.quick-card:hover{background:#fff7f9;transform:translateY(-3px)}.quick-card i{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:#f5e7ec;color:var(--wine);font-size:20px}.quick-card strong{display:block;font-size:14px}.quick-card small{color:var(--muted);font-size:11px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:42px}.stat-card{padding:24px;border-radius:20px;border:1px solid var(--line);background:#fff}.stat-card strong{display:block;font-size:34px;color:var(--wine);font-weight:800}.stat-card span{color:var(--muted);font-size:13px}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.about-visual{min-height:500px;position:relative;border-radius:34px;background:linear-gradient(145deg,#f3e5e9,#fff);overflow:hidden}.about-visual-main{position:absolute;inset:35px;border-radius:28px;background:linear-gradient(145deg,var(--wine-dark),var(--wine));display:grid;place-items:center;color:#fff;text-align:center;padding:40px}.about-visual-main img{width:150px;margin:auto}.about-visual-main h3{font-family:"Playfair Display",serif;font-size:33px;margin:15px 0 5px}.about-corner{position:absolute;right:15px;bottom:15px;background:var(--gold);color:#2e1c00;border-radius:20px;padding:18px 22px;font-weight:800;box-shadow:0 15px 30px rgba(70,45,0,.18)}.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:28px 0}.feature-item{display:flex;gap:12px;padding:15px;border:1px solid var(--line);border-radius:16px}.feature-item i{width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:#f7e8ed;color:var(--wine);display:grid;place-items:center}.feature-item strong{font-size:13px;display:block}.feature-item small{font-size:11px;color:var(--muted)}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.course-card{position:relative;border:1px solid var(--line);border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 14px 38px rgba(73,0,21,.07);transition:.25s}.course-card:hover{transform:translateY(-8px);box-shadow:0 25px 55px rgba(73,0,21,.14)}.course-media{height:170px;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#5a001b,#980033);overflow:hidden}.course-media img{width:100%;height:100%;object-fit:cover}.course-media i{font-size:60px;color:#fff}.course-media:after{content:"";position:absolute;inset:auto -10% -55px;height:90px;background:#fff;border-radius:50% 50% 0 0}.course-code{position:absolute;left:18px;top:16px;padding:7px 11px;border-radius:10px;background:rgba(255,255,255,.94);color:var(--wine);font-size:11px;font-weight:800}.course-content{padding:20px 22px 24px}.course-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.course-meta span{font-size:10px;font-weight:800;padding:6px 9px;border-radius:99px;background:#f6edf0;color:#7b2440}.course-content h3{font-size:19px;margin:0 0 9px;color:var(--wine-dark)}.course-content p{font-size:13px;color:var(--muted);margin:0 0 18px;min-height:62px}.course-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.course-footer strong{color:var(--wine);font-size:13px}.course-footer a{font-size:12px;font-weight:800;color:var(--wine);display:flex;align-items:center;gap:6px}.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.why-card{padding:25px 18px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);text-align:center;transition:.25s}.why-card:hover{background:rgba(255,255,255,.14);transform:translateY(-6px)}.why-card i{width:56px;height:56px;margin:0 auto 14px;border-radius:18px;background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#3a2000;display:grid;place-items:center;font-size:22px}.why-card h3{font-size:14px;margin:0 0 7px}.why-card p{font-size:11px;color:#eadfe3;margin:0}.steps-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;counter-reset:steps}.step-card{position:relative;padding:25px 20px;border-radius:22px;border:1px solid var(--line);background:#fff;counter-increment:steps}.step-card:before{content:"0" counter(steps);font-size:38px;font-weight:800;color:#f0dfe5;position:absolute;right:16px;top:8px}.step-card i{width:48px;height:48px;border-radius:15px;background:#f4e5ea;color:var(--wine);display:grid;place-items:center;margin-bottom:18px}.step-card h3{font-size:14px;margin:0 0 7px}.step-card p{font-size:11px;color:var(--muted);margin:0}.facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.facility-card{padding:22px;border-radius:20px;background:#fff;border:1px solid var(--line);display:flex;gap:14px}.facility-card i{color:var(--wine);font-size:22px;margin-top:3px}.facility-card strong{font-size:13px;display:block}.facility-card small{font-size:11px;color:var(--muted)}.exam-banner{border-radius:34px;padding:48px;background:radial-gradient(circle at 90% 0,rgba(246,215,117,.25),transparent 27%),linear-gradient(135deg,var(--wine-dark),var(--wine));color:#fff;display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center;overflow:hidden}.exam-banner h2{font-family:"Playfair Display",serif;font-size:44px;line-height:1.1;margin:10px 0}.exam-banner p{color:#efe3e7}.exam-points{display:flex;flex-wrap:wrap;gap:10px}.exam-points span{padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.1);font-size:11px;font-weight:700}.exam-visual{background:#fff;border-radius:24px;padding:20px;color:var(--ink);box-shadow:0 18px 45px rgba(0,0,0,.2)}.exam-question{font-size:13px;font-weight:800;margin-bottom:14px}.exam-option{padding:11px 13px;border-radius:12px;background:#f7f3f4;margin-top:8px;font-size:11px}.exam-option.active{border:1px solid #1a9c5a;background:#ebfff4}.verify-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.verify-card,.placement-card{padding:35px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 15px 40px rgba(70,0,20,.07)}.verify-icon{width:66px;height:66px;border-radius:20px;background:#f4e4e9;color:var(--wine);display:grid;place-items:center;font-size:28px}.verify-card h3{font-size:24px;margin:18px 0 8px;color:var(--wine-dark)}.verify-card p{color:var(--muted);font-size:13px}.placement-logos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.placement-logos span{height:60px;border-radius:14px;background:#f7f4f5;display:grid;place-items:center;color:#7c6870;font-weight:800;font-size:11px}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-card{padding:28px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 35px rgba(60,0,18,.06)}.testimonial-stars{color:#e4aa1d;font-size:12px;margin-bottom:15px}.testimonial-card>p{font-size:13px;color:#4c5667;min-height:84px}.testimonial-user{display:flex;align-items:center;gap:12px;margin-top:18px}.testimonial-user img,.testimonial-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.testimonial-avatar{background:linear-gradient(135deg,var(--wine),#b0003d);color:#fff;display:grid;place-items:center;font-weight:800}.testimonial-user strong{font-size:13px;display:block}.testimonial-user small{color:var(--muted);font-size:11px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px}.gallery-item{position:relative;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#f0dfe5,#fff);border:1px solid var(--line)}.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-item:hover img{transform:scale(1.06)}.gallery-placeholder{height:100%;display:grid;place-items:center;text-align:center;color:var(--wine);padding:25px}.gallery-placeholder i{font-size:44px;display:block;margin-bottom:10px}.gallery-caption{position:absolute;left:12px;right:12px;bottom:12px;padding:12px 14px;border-radius:13px;background:rgba(43,0,13,.75);backdrop-filter:blur(8px);color:#fff;font-size:12px}.updates-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.update-card{padding:24px;border-radius:22px;border:1px solid var(--line);background:#fff}.update-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.update-head span{font-size:10px;font-weight:800;padding:6px 9px;border-radius:99px;background:#f4e5ea;color:var(--wine)}.update-head time{font-size:10px;color:var(--muted)}.update-card h3{font-size:16px;margin:0 0 8px;color:var(--wine-dark)}.update-card p{font-size:12px;color:var(--muted);margin:0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px}.contact-info{padding:36px;border-radius:28px;background:linear-gradient(145deg,var(--wine-dark),var(--wine));color:#fff}.contact-info h2{font-family:"Playfair Display",serif;font-size:38px;margin:12px 0}.contact-info>p{color:#eee0e5}.contact-list{display:grid;gap:14px;margin-top:28px}.contact-list div{display:grid;grid-template-columns:45px 1fr;gap:12px;align-items:center}.contact-list i{width:45px;height:45px;border-radius:14px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:var(--gold-light)}.contact-list strong{display:block;font-size:12px}.contact-list span,.contact-list a{font-size:11px;color:#eee}.site-form{padding:32px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 15px 45px rgba(65,0,18,.07)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group.full{grid-column:1/-1}.form-group label{display:block;font-size:11px;font-weight:800;margin-bottom:7px;color:#424c5d}.site-form input,.site-form select,.site-form textarea{width:100%;border:1px solid #dfd6d9;border-radius:14px;padding:13px 14px;background:#fff;color:var(--ink);outline:none;transition:.2s}.site-form textarea{min-height:110px;resize:vertical}.site-form input:focus,.site-form select:focus,.site-form textarea:focus{border-color:var(--wine);box-shadow:0 0 0 4px rgba(112,0,32,.07)}.honeypot{position:absolute!important;left:-9999px!important}.form-alert{padding:13px 15px;border-radius:13px;margin-bottom:15px;font-size:12px;font-weight:700}.form-alert.success{background:#eafbf1;color:#167447}.form-alert.warning{background:#fff7df;color:#8a6200}.form-alert.danger{background:#fff0f1;color:#a11b2c}.page-hero{padding:75px 0;background:radial-gradient(circle at 90% 0,rgba(214,165,46,.22),transparent 30%),linear-gradient(135deg,var(--wine-dark),var(--wine));color:#fff}.page-hero .eyebrow{background:rgba(255,255,255,.1);color:#fff}.page-hero h1{font-family:"Playfair Display",serif;font-size:clamp(42px,6vw,68px);line-height:1;margin:15px 0}.page-hero p{max-width:720px;color:#eee1e5}.breadcrumb{display:flex;gap:8px;font-size:11px;color:#e8cfd7}.breadcrumb a{color:var(--gold-light)}.content-card{padding:34px;border:1px solid var(--line);border-radius:25px;background:#fff}.content-card h2,.content-card h3{color:var(--wine-dark)}.branch-grid,.faculty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.branch-card,.faculty-card{border:1px solid var(--line);border-radius:23px;background:#fff;overflow:hidden}.branch-card{padding:28px}.branch-card i{width:52px;height:52px;border-radius:16px;background:#f3e3e8;color:var(--wine);display:grid;place-items:center;font-size:22px}.branch-card h3{margin:17px 0 8px}.branch-card p{font-size:12px;color:var(--muted)}.faculty-photo{height:230px;background:linear-gradient(145deg,#f1e4e8,#fff);display:grid;place-items:center}.faculty-photo img{width:100%;height:100%;object-fit:cover}.faculty-photo i{font-size:68px;color:#c6a6b1}.faculty-copy{padding:20px}.faculty-copy h3{margin:0;color:var(--wine-dark)}.faculty-copy p{margin:4px 0;color:var(--wine);font-size:12px;font-weight:800}.faculty-copy small{color:var(--muted)}.course-detail-grid{display:grid;grid-template-columns:1fr 360px;gap:30px}.course-detail-main,.course-detail-side{padding:32px;border:1px solid var(--line);border-radius:25px;background:#fff}.course-detail-side{position:sticky;top:135px;height:max-content}.course-detail-side .fee{font-size:31px;font-weight:800;color:var(--wine)}.detail-list{display:grid;gap:12px;margin:22px 0}.detail-list div{display:flex;justify-content:space-between;gap:15px;padding-bottom:11px;border-bottom:1px solid var(--line);font-size:12px}.footer-cta{padding:50px 0;background:#f6edef}.footer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-cta span{color:var(--wine);font-size:11px;font-weight:800;text-transform:uppercase}.footer-cta h2{margin:5px 0;font-family:"Playfair Display",serif;color:var(--wine-dark);font-size:35px}.footer-cta p{margin:0;color:var(--muted);font-size:13px}.footer-cta-actions{display:flex;gap:10px}.footer-cta-actions a{padding:13px 17px;border-radius:13px;background:var(--wine);color:#fff;font-size:12px;font-weight:800}.footer-cta-actions a:last-child{background:#168b50}.site-footer{padding:65px 0 20px;background:#26000c;color:#fff}.footer-grid{display:grid;grid-template-columns:1.35fr .7fr .8fr 1fr;gap:42px}.site-footer .site-brand strong,.site-footer .site-brand small{color:#fff}.footer-brand>p{font-size:12px;color:#cdbac0;max-width:380px}.social-links{display:flex;gap:9px;margin-top:20px}.social-links a{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.08);display:grid;place-items:center}.site-footer h3{font-size:13px;margin:0 0 17px;color:var(--gold-light)}.site-footer>div>div:not(.footer-brand) a{display:block;color:#cdbac0;font-size:11px;margin:10px 0}.footer-contact p{display:grid;grid-template-columns:20px 1fr;gap:9px;margin:10px 0;color:#cdbac0;font-size:11px}.footer-contact i{color:var(--gold-light);margin-top:4px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);padding-top:20px;margin-top:45px;color:#a9959c;font-size:10px}.footer-bottom div{display:flex;gap:16px}.mobile-quickbar{display:none}.back-to-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border:0;border-radius:15px;background:var(--wine);color:#fff;box-shadow:0 13px 30px rgba(80,0,24,.3);opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s;z-index:800}.back-to-top.show{opacity:1;visibility:visible;transform:none}.reveal{opacity:0;transform:translateY(22px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}[data-site-theme=dark] body{background:#11050a;color:#f5edf0}[data-site-theme=dark] .site-header{background:rgba(25,7,13,.95);border-color:#3f242d}[data-site-theme=dark] .site-navbar,[data-site-theme=dark] .theme-button{background:#19070d;color:#fff}[data-site-theme=dark] .desktop-nav a,[data-site-theme=dark] .nav-login{color:#eadde1}[data-site-theme=dark] .site-brand strong{color:#fff}[data-site-theme=dark] .site-brand small{color:#e9b8c7}[data-site-theme=dark] .hero{background:radial-gradient(circle at 90% 15%,rgba(214,165,46,.18),transparent 27%),linear-gradient(135deg,#14070b,#250812)}[data-site-theme=dark] .hero-copy h1,[data-site-theme=dark] .section-heading h2,[data-site-theme=dark] .course-content h3,[data-site-theme=dark] .update-card h3,[data-site-theme=dark] .verify-card h3,[data-site-theme=dark] .content-card h2,[data-site-theme=dark] .content-card h3{color:#fff}[data-site-theme=dark] .hero-copy>p,[data-site-theme=dark] .section-heading p,[data-site-theme=dark] .course-content p,[data-site-theme=dark] .update-card p,[data-site-theme=dark] .testimonial-card>p{color:#bfaeb5}[data-site-theme=dark] .quick-grid,[data-site-theme=dark] .course-card,[data-site-theme=dark] .stat-card,[data-site-theme=dark] .feature-item,[data-site-theme=dark] .step-card,[data-site-theme=dark] .facility-card,[data-site-theme=dark] .verify-card,[data-site-theme=dark] .placement-card,[data-site-theme=dark] .testimonial-card,[data-site-theme=dark] .update-card,[data-site-theme=dark] .site-form,[data-site-theme=dark] .content-card,[data-site-theme=dark] .branch-card,[data-site-theme=dark] .faculty-card,[data-site-theme=dark] .course-detail-main,[data-site-theme=dark] .course-detail-side{background:#1c0b11;border-color:#3b252d}[data-site-theme=dark] .section-soft{background:#15070c}[data-site-theme=dark] .site-form input,[data-site-theme=dark] .site-form select,[data-site-theme=dark] .site-form textarea{background:#12060a;border-color:#4a3038;color:#fff}@media(max-width:1100px){.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.nav-login span{display:none}.hero-grid{gap:35px}.why-grid{grid-template-columns:repeat(3,1fr)}.steps-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-contact{grid-column:1/-1}}@media(max-width:900px){:root{--header-h:82px}.site-topbar,.desktop-nav,.nav-login,.nav-apply{display:none}.site-navbar{height:76px}.site-brand{min-width:0}.site-brand img{width:50px;height:50px}.site-brand strong{font-size:14px}.site-brand small{font-size:7px}.mobile-menu-button{display:grid}.mobile-menu-backdrop{display:block;position:fixed;inset:0;background:rgba(12,0,5,.62);z-index:1040;opacity:0;visibility:hidden;transition:.25s}.mobile-menu{display:flex;position:fixed;left:0;top:0;bottom:0;width:min(360px,88vw);background:#fff;z-index:1050;transform:translateX(-105%);transition:.3s;flex-direction:column;padding:18px;box-shadow:30px 0 70px rgba(0,0,0,.2)}body.menu-open .mobile-menu{transform:none}body.menu-open .mobile-menu-backdrop{opacity:1;visibility:visible}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--line)}.mobile-menu-head .site-brand img{width:48px;height:48px}.mobile-menu-head button{width:42px;height:42px;border:0;border-radius:13px;background:#f5e8ec;color:var(--wine)}.mobile-menu nav{display:grid;gap:6px;padding:18px 0;overflow:auto}.mobile-menu nav a{display:flex;align-items:center;gap:14px;padding:12px 13px;border-radius:13px;font-size:13px;font-weight:700}.mobile-menu nav a i{width:34px;height:34px;border-radius:11px;background:#f5e8ec;color:var(--wine);display:grid;place-items:center}.mobile-menu-actions{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-menu-actions a{padding:12px;border-radius:12px;text-align:center;background:#f5e8ec;color:var(--wine);font-size:11px;font-weight:800}.mobile-menu-actions a:last-child{background:var(--wine);color:#fff}[data-site-theme=dark] .mobile-menu{background:#19080e}[data-site-theme=dark] .mobile-menu nav a{color:#fff}.hero{min-height:auto;padding:60px 0 82px}.hero-grid,.about-grid,.contact-grid,.course-detail-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-badges,.hero-note{justify-content:center}.hero-visual{min-height:500px;max-width:610px;width:100%;margin:auto}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-card:nth-child(2){border-right:0}.quick-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.course-grid,.testimonial-grid,.updates-grid,.branch-grid,.faculty-grid{grid-template-columns:repeat(2,1fr)}.facility-grid{grid-template-columns:repeat(2,1fr)}.exam-banner{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.course-detail-side{position:static}.footer-cta-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:repeat(2,1fr)}.footer-contact{grid-column:auto}}@media(max-width:1000px){.site-container{width:min(100% - 22px,1180px)}.site-navbar{height:70px}.site-brand img{width:46px;height:46px}.site-brand strong{font-size:12px}.site-brand small{max-width:190px}.navbar-actions{gap:6px}.theme-button,.mobile-menu-button{width:41px;height:41px;border-radius:13px}.section{padding:68px 0}.hero{padding:42px 0 65px}.hero-copy h1{font-size:43px}.hero-copy>p{font-size:14px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.primary-button,.secondary-button{padding:0 12px;font-size:12px}.hero-visual{min-height:420px}.hero-main-card{inset:18px 4px 20px 4px;padding:24px;border-radius:28px}.hero-card-brand img{width:58px;height:58px}.hero-card-brand strong{font-size:17px}.hero-screen{margin-top:26px;padding:16px}.screen-item{min-height:83px;padding:12px}.floating-card{padding:10px 12px}.floating-one{left:-3px;top:98px}.floating-two{right:-3px;bottom:38px}.quick-section{margin-top:-28px}.quick-grid{border-radius:21px}.quick-card{padding:18px 13px;gap:10px}.quick-card i{width:42px;height:42px;border-radius:13px}.quick-card strong{font-size:11px}.quick-card small{font-size:9px}.stats-grid{grid-template-columns:repeat(2,1fr)}.section-heading h2{font-size:36px}.about-visual{min-height:390px}.about-visual-main{inset:18px;padding:25px}.about-visual-main img{width:110px}.feature-list,.course-grid,.testimonial-grid,.updates-grid,.branch-grid,.faculty-grid,.verify-grid{grid-template-columns:1fr}.course-content p{min-height:auto}.why-grid{grid-template-columns:repeat(2,1fr)}.steps-grid{grid-template-columns:1fr 1fr}.facility-grid{grid-template-columns:1fr}.exam-banner{padding:28px 22px;border-radius:25px}.exam-banner h2{font-size:35px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:230px}.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:auto}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:auto}.site-form,.contact-info{padding:24px}.page-hero{padding:55px 0}.page-hero h1{font-size:43px}.footer-cta h2{font-size:29px}.footer-cta-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.footer-cta-actions a{text-align:center}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;padding-bottom:70px}.mobile-quickbar{display:grid;position:fixed;left:10px;right:10px;bottom:9px;height:64px;grid-template-columns:repeat(4,1fr);background:linear-gradient(135deg,var(--wine-dark),var(--wine));border-radius:20px;z-index:900;box-shadow:0 18px 40px rgba(60,0,18,.35);overflow:hidden}.mobile-quickbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:9px;gap:3px}.mobile-quickbar i{font-size:17px}.back-to-top{bottom:82px;right:15px}.footer-cta{padding:42px 0}.placement-logos{grid-template-columns:repeat(2,1fr)}}

/* =========================================================
   VIIT Professional Banner Slider + Smooth Homepage Motion
   ========================================================= */
.public-home-html{scroll-behavior:smooth;scroll-padding-top:var(--header-h)}
.public-home{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}
.public-home .site-header{will-change:transform,box-shadow}
.public-home main{overflow:clip}
@media (min-width:901px) and (prefers-reduced-motion:no-preference){
  .public-home-html.home-scroll-snap-html{scroll-snap-type:y proximity}
  .public-home.home-scroll-snap .home-snap-section{scroll-snap-align:start;scroll-margin-top:var(--header-h)}
}
.banner-slider-section{position:relative;background:#16060b;isolation:isolate;overflow:hidden}
.viit-banner-slider{position:relative;width:100%;height:var(--banner-desktop-height,590px);overflow:hidden;touch-action:pan-y;user-select:none;background:linear-gradient(135deg,#21030c,#830025);color:#fff}
.banner-track{display:flex;width:100%;height:100%;transform:translate3d(0,0,0);transition:transform var(--banner-transition,850ms) cubic-bezier(.22,.78,.18,1);will-change:transform}
.banner-slide{position:relative;flex:0 0 100%;height:100%;overflow:hidden;isolation:isolate}
.banner-picture,.banner-picture img{position:absolute;inset:0;width:100%;height:100%;display:block}
.banner-picture img{object-fit:cover;object-position:center;transform:scale(1.035);transition:transform 7s cubic-bezier(.2,.7,.2,1),filter .8s ease;will-change:transform}
.banner-slide.is-active .banner-picture img{transform:scale(1)}
.banner-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,0,8,var(--banner-overlay,.56)) 0%,rgba(45,0,13,calc(var(--banner-overlay,.56)*.62)) 48%,rgba(14,0,5,.12) 100%);z-index:1}
.banner-shade:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(0deg,rgba(12,0,4,.5),transparent)}
.banner-content{position:relative;z-index:2;height:100%;display:flex;align-items:center;padding-top:24px;padding-bottom:52px;pointer-events:none}
.banner-content-left{justify-content:flex-start;text-align:left}
.banner-content-center{justify-content:center;text-align:center}
.banner-content-right{justify-content:flex-end;text-align:right}
.banner-content-card{width:min(680px,65%);padding:30px 34px;border:1px solid rgba(255,255,255,.2);border-radius:28px;background:linear-gradient(135deg,rgba(35,0,10,.72),rgba(94,0,28,.34));box-shadow:0 25px 70px rgba(0,0,0,.26);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:auto;opacity:0;transform:translate3d(-42px,18px,0);transition:opacity .7s .18s ease,transform .85s .15s cubic-bezier(.2,.8,.2,1)}
.banner-content-center .banner-content-card{transform:translate3d(0,34px,0)}
.banner-content-right .banner-content-card{transform:translate3d(42px,18px,0)}
.banner-slide.is-active .banner-content-card{opacity:1;transform:translate3d(0,0,0)}
.banner-kicker{display:inline-flex;align-items:center;gap:9px;margin-bottom:14px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.banner-kicker i{color:var(--gold)}
.banner-content h2{margin:0;color:#fff;font-family:"Playfair Display",serif;font-size:clamp(42px,5.2vw,76px);line-height:1.02;text-wrap:balance;text-shadow:0 8px 28px rgba(0,0,0,.35)}
.banner-content p{max-width:620px;margin:18px 0 0;color:rgba(255,255,255,.9);font-size:clamp(14px,1.45vw,20px);line-height:1.7;text-wrap:balance}
.banner-content-center p{margin-left:auto;margin-right:auto}.banner-content-right p{margin-left:auto}
.banner-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.banner-content-center .banner-actions{justify-content:center}.banner-content-right .banner-actions{justify-content:flex-end}
.banner-primary,.banner-secondary{min-height:50px;padding:0 22px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:900;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;text-decoration:none}
.banner-primary{color:#281600;background:linear-gradient(135deg,#f7da72,#d7a92e);box-shadow:0 14px 34px rgba(223,174,48,.25)}
.banner-secondary{color:#fff;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.34)}
.banner-primary:hover,.banner-secondary:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(0,0,0,.24)}
.banner-arrow{position:absolute;z-index:5;top:50%;width:50px;height:50px;border:1px solid rgba(255,255,255,.28);border-radius:16px;background:rgba(25,0,8,.42);color:#fff;display:grid;place-items:center;transform:translateY(-50%);backdrop-filter:blur(10px);cursor:pointer;transition:.25s}
.banner-arrow:hover{background:var(--wine);transform:translateY(-50%) scale(1.06)}.banner-prev{left:22px}.banner-next{right:22px}
.banner-bottom-ui{position:absolute;left:50%;bottom:20px;z-index:5;transform:translateX(-50%);display:flex;align-items:center;gap:14px}
.banner-dots{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:rgba(15,0,5,.34);backdrop-filter:blur(10px)}
.banner-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:.3s}.banner-dots button.is-active{width:28px;border-radius:999px;background:var(--gold)}
.banner-timer{width:110px;height:4px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.25)}.banner-timer span{display:block;width:0;height:100%;border-radius:inherit;background:var(--gold)}
.viit-banner-slider.is-playing .banner-timer span{animation:bannerTimer var(--banner-duration,5s) linear forwards}@keyframes bannerTimer{from{width:0}to{width:100%}}
.banner-swipe-hint{display:none;position:absolute;z-index:4;right:13px;bottom:14px;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(20,0,7,.34);color:rgba(255,255,255,.86);font-size:9px;font-weight:700;backdrop-filter:blur(8px)}
.viit-banner-slider.is-dragging .banner-track{transition:none}.viit-banner-slider.is-dragging{cursor:grabbing}
[data-site-theme=dark] .banner-slider-section{background:#080305}

/* More tactile, modern frontend motion */
.reveal{opacity:0;transform:translate3d(0,42px,0) scale(.985);filter:blur(3px);transition:opacity .75s var(--reveal-delay,0ms) ease,transform .88s var(--reveal-delay,0ms) cubic-bezier(.18,.78,.18,1),filter .75s var(--reveal-delay,0ms) ease}
.reveal.reveal-left{transform:translate3d(-52px,20px,0) scale(.985)}.reveal.reveal-right{transform:translate3d(52px,20px,0) scale(.985)}
.reveal.visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:none}
.quick-card,.course-card,.why-card,.facility-card,.step-card,.testimonial-card,.update-card,.stat-card{will-change:transform;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}
.quick-card:hover,.course-card:hover,.why-card:hover,.facility-card:hover,.step-card:hover,.testimonial-card:hover,.update-card:hover,.stat-card:hover{transform:translateY(-7px);box-shadow:0 22px 52px rgba(84,0,25,.13)}

@media(max-width:900px){
  .viit-banner-slider{height:var(--banner-mobile-height,540px)}
  .banner-shade{background:linear-gradient(0deg,rgba(25,0,8,.78) 0%,rgba(53,0,16,.36) 70%,rgba(10,0,3,.08) 100%)}
  .banner-content{align-items:flex-end;padding:22px 16px 64px}
  .banner-content-left,.banner-content-center,.banner-content-right{justify-content:center;text-align:left}
  .banner-content-card{width:100%;padding:22px 20px;border-radius:22px;background:linear-gradient(135deg,rgba(34,0,10,.76),rgba(104,0,31,.46));transform:translate3d(0,35px,0)}
  .banner-content h2{font-size:clamp(34px,9.5vw,52px)}
  .banner-content p{font-size:13px;line-height:1.55;margin-top:12px}
  .banner-actions{margin-top:18px}.banner-primary,.banner-secondary{min-height:46px;padding:0 17px;font-size:11px}
  .banner-arrow{width:43px;height:43px;border-radius:14px;top:38%}.banner-prev{left:10px}.banner-next{right:10px}
  .banner-bottom-ui{left:16px;bottom:17px;transform:none}.banner-timer{width:78px}
  .banner-swipe-hint{display:flex}
}

/* Dedicated tablet banner: 701px to 1100px. Loaded after desktop/mobile rules. */
@media (min-width:701px) and (max-width:1100px){
  .viit-banner-slider{
    width:var(--banner-tablet-width,100%) !important;
    height:var(--banner-tablet-height,430px) !important;
    min-height:0 !important;
    max-height:none !important;
  }
  .banner-picture img{
    object-fit:var(--banner-tablet-fit,fill) !important;
    object-position:center center !important;
  }
}

/* V21 — official frontend online admission application. */
.online-admission-page{padding-top:34px!important}.online-admission-alert{max-width:1180px;margin:0 auto 18px!important;display:flex;align-items:center;gap:10px}.online-admission-shell{--oa-wine:#85002a;--oa-dark:#520019;--oa-soft:#fff5f8;--oa-line:#ead6dd;max-width:1180px;margin:auto;overflow:hidden;border:1px solid var(--oa-line);border-radius:18px;background:#fff;box-shadow:0 22px 60px rgba(71,0,24,.10)}
.online-admission-letterhead{min-height:112px;padding:18px 24px;display:grid;grid-template-columns:minmax(310px,1fr) auto minmax(205px,.4fr);align-items:center;gap:22px;border-bottom:1px solid var(--oa-line);background:linear-gradient(115deg,#fff 0%,#fff 68%,#fff7fa 100%)}
.online-admission-brand{display:flex;align-items:center;gap:14px}.online-admission-brand img{width:70px;height:70px;object-fit:contain}.online-admission-brand strong,.online-admission-brand span{display:block}.online-admission-brand strong{color:#d51f2b;font-size:clamp(24px,2.4vw,34px);font-weight:950;line-height:1}.online-admission-brand span{margin-top:5px;color:#171717;font-size:clamp(12px,1.2vw,17px);font-weight:850;letter-spacing:.3px}.online-admission-cert{display:flex;gap:8px}.online-admission-cert span{width:52px;height:52px;display:grid;place-items:center;border:1px solid #dce0e8;border-radius:50%;color:#33476b;background:#fff;font-size:10px;font-weight:900;box-shadow:0 6px 16px rgba(25,39,72,.07)}
.online-application-box{padding:11px 12px;display:grid;grid-template-columns:auto 1fr;gap:7px 9px;border:1px solid #d8b8c3;border-radius:10px;background:#fff}.online-application-box small{align-self:center;color:#6b6670;font-size:9px;font-weight:800}.online-application-box strong,.online-application-box b{min-height:30px;padding:7px 9px;display:flex;align-items:center;border:1px solid #dbc0c9;border-radius:6px;color:var(--oa-wine);font-size:10px;overflow-wrap:anywhere}.online-application-box b{border-color:#c9ead8;color:#087a43;background:#effaf4}
.online-admission-title{min-height:88px;padding:15px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--oa-line);background:linear-gradient(90deg,#fff7fa,#fff)}.online-admission-title span{padding:5px 10px;border-radius:999px;color:#fff;background:var(--oa-wine);font-size:9px;font-weight:850}.online-admission-title h2{margin:7px 0 3px;color:var(--oa-dark);font-size:clamp(25px,3vw,39px);font-weight:950;letter-spacing:-.6px}.online-admission-title p{margin:0;color:#6d6570;font-size:11px}.online-admission-title>i{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:var(--oa-wine);background:#fff0f5;font-size:22px}
.online-admission-form{padding:22px 24px 28px}.online-admission-main{display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:stretch;gap:18px}.online-form-section{margin-bottom:18px;padding:18px;border:1px solid var(--oa-line);border-radius:11px;background:#fff}.online-form-section h3{min-height:42px;margin:-18px -18px 18px;padding:0 14px;display:flex;align-items:center;gap:9px;border-bottom:1px solid var(--oa-line);color:var(--oa-dark);background:#fff9fb;font-size:13px;font-weight:900}.online-form-section h3 span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:#fff;background:linear-gradient(135deg,var(--oa-dark),var(--oa-wine));font-size:10px}.online-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.online-form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.online-form-grid label{min-width:0;display:grid;gap:6px}.online-form-grid label.full{grid-column:1/-1}.online-form-grid label>span{color:#303644;font-size:10px;font-weight:800}.online-form-grid input,.online-form-grid select,.online-form-grid textarea{width:100%;min-height:43px;padding:9px 11px;border:1px solid #dadee6;border-radius:8px;outline:0;color:#1b2333;background:#fff;font:600 12px/1.4 inherit;transition:.2s}.online-form-grid textarea{resize:vertical}.online-form-grid input:focus,.online-form-grid select:focus,.online-form-grid textarea:focus{border-color:#a3385b;box-shadow:0 0 0 3px rgba(133,0,42,.08)}
.online-photo-panel{padding:14px;display:grid;align-content:start;justify-items:center;gap:10px;border:1px solid var(--oa-line);border-radius:11px;background:linear-gradient(180deg,#fff,#fff8fa)}.online-photo-panel>strong{color:#402832;font-size:12px}.online-photo-preview{width:144px;height:176px;display:grid;place-items:center;overflow:hidden;border:1px dashed #a67d8a;border-radius:9px;background:#fff;cursor:pointer}.online-photo-preview>i{color:#b9b2b6;font-size:68px}.online-photo-preview img{width:100%;height:100%;object-fit:cover;object-position:center top}.online-photo-button{padding:9px 14px;border-radius:7px;color:#fff;background:linear-gradient(110deg,var(--oa-dark),var(--oa-wine));font-size:10px;font-weight:850;cursor:pointer}.online-photo-panel>small{color:#7a7075;font-size:8px;line-height:1.5;text-align:center}.online-review-note{width:100%;margin-top:6px;padding:11px;display:grid;grid-template-columns:27px 1fr;gap:8px;border:1px solid #d6e3f1;border-radius:9px;color:#465469;background:#f5f9fd}.online-review-note>i{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;color:#1468be;background:#e1efff}.online-review-note p{margin:0;font-size:9px;line-height:1.55}
.online-media-divider{width:100%;height:1px;margin:4px 0;background:var(--oa-line)}.online-signature-preview{width:100%;height:74px;display:grid;place-items:center;overflow:hidden;border:1px dashed #a67d8a;border-radius:9px;background:#fff;cursor:pointer}.online-signature-preview>i{color:#b9b2b6;font-size:35px}.online-signature-preview img{width:100%;height:100%;padding:7px;object-fit:contain;background:#fff}.online-photo-button.is-signature{background:linear-gradient(110deg,#233b65,#5b3f91)}
.online-declaration{padding:13px 15px;display:flex;align-items:flex-start;gap:10px;border:1px solid #ead1d9;border-radius:9px;color:#69434f;background:#fff7f9;font-size:10px;line-height:1.5}.online-declaration input{margin-top:2px;accent-color:var(--oa-wine)}.online-admission-actions{margin-top:17px;display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.online-admission-actions button,.online-admission-actions a{min-width:210px;min-height:45px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--oa-wine);border-radius:8px;text-decoration:none;font-size:11px;font-weight:900}.online-admission-actions button{color:#fff;background:linear-gradient(110deg,var(--oa-dark),var(--oa-wine))}.online-admission-actions a{color:var(--oa-wine);background:#fff}
[data-site-theme=dark] .online-admission-shell{--oa-soft:#14101a;--oa-line:#382634;background:#0c121d;color:#f4f6fb;border-color:#382634}[data-site-theme=dark] .online-admission-letterhead,[data-site-theme=dark] .online-admission-title,[data-site-theme=dark] .online-form-section,[data-site-theme=dark] .online-photo-panel{border-color:#382634;background:linear-gradient(145deg,#111927,#0b131f)}[data-site-theme=dark] .online-admission-brand span,[data-site-theme=dark] .online-admission-title h2,[data-site-theme=dark] .online-form-section h3,[data-site-theme=dark] .online-form-grid label>span,[data-site-theme=dark] .online-photo-panel>strong{color:#f4f6fb}[data-site-theme=dark] .online-admission-title p{color:#aab3c1}[data-site-theme=dark] .online-form-section h3{border-color:#382634;background:#141722}[data-site-theme=dark] .online-form-grid input,[data-site-theme=dark] .online-form-grid select,[data-site-theme=dark] .online-form-grid textarea,[data-site-theme=dark] .online-photo-preview,[data-site-theme=dark] .online-signature-preview,[data-site-theme=dark] .online-application-box{border-color:#3b3541;color:#eef2f8;background:#111a27}[data-site-theme=dark] .online-review-note{border-color:#263b52;color:#b7c4d5;background:#0d1c2c}[data-site-theme=dark] .online-declaration{border-color:#4a2b38;color:#d8bcc7;background:#1a1119}[data-site-theme=dark] .online-admission-actions a{color:#ff5c8e;background:#111927}
@media(max-width:1050px){.online-admission-letterhead{grid-template-columns:minmax(280px,1fr) minmax(190px,.42fr)}.online-admission-cert{display:none}.online-form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.online-admission-page{padding:14px 10px 24px!important}.online-admission-shell{border-radius:14px}.online-admission-letterhead{grid-template-columns:1fr;gap:12px;padding:15px}.online-admission-brand{justify-content:center}.online-admission-brand img{width:56px;height:56px}.online-admission-brand strong{font-size:21px}.online-admission-brand span{font-size:10px}.online-application-box{grid-template-columns:92px 1fr}.online-admission-title{align-items:flex-start;padding:14px 15px}.online-admission-title h2{font-size:24px}.online-admission-title>i{width:40px;height:40px;flex:0 0 40px}.online-admission-form{padding:13px}.online-admission-main,.online-form-grid,.online-form-grid.four{grid-template-columns:1fr}.online-photo-panel{margin-bottom:18px;grid-row:1}.online-form-section{padding:14px}.online-form-section h3{margin:-14px -14px 14px}.online-admission-actions{display:grid}.online-admission-actions button,.online-admission-actions a{width:100%;min-width:0}}

/* V38 public-site fixes: actual birthday count and non-overlapping inner header. */
@media(min-width:761px){
  .birthday-showcase.birthday-count-1{padding:62px 0 68px}
  .birthday-showcase.birthday-count-1 .birthday-heading{max-width:760px;margin-inline:auto}
  .birthday-showcase.birthday-count-1 .birthday-carousel{display:flex;justify-content:center;overflow:visible;padding-bottom:12px}
  .birthday-showcase.birthday-count-1 .birthday-atm-card{width:min(620px,100%);min-width:0;flex:0 1 620px;scroll-snap-align:center}
  .birthday-showcase.birthday-count-2 .birthday-carousel{grid-auto-columns:calc((100% - 18px)/2)}
  .public-about-page .site-header .site-topbar,.public-about-page .site-header .site-navbar{transition:height .22s ease,opacity .22s ease}
  .public-about-page .site-header.scrolled .site-topbar{height:0;opacity:0;overflow:hidden}
  .public-about-page .site-header.scrolled .site-navbar{height:68px}
  .public-about-page .site-header.scrolled .site-brand img{width:48px;height:48px}
  .public-about-page .site-header.scrolled .desktop-nav a{padding-top:20px;padding-bottom:18px}
  .public-about-page .about-leadership-section{padding-top:68px}
}
@media(max-width:600px){
  .banner-slider-section{margin-top:0}
  .viit-banner-slider{height:var(--banner-mobile-height,540px);min-height:440px;max-height:78svh}
  .banner-picture img{object-position:center center}
  .banner-content{padding:15px 11px 68px}
  .banner-content-card{padding:18px 17px;border-radius:20px}
  .banner-kicker{font-size:9px;margin-bottom:10px;padding:7px 10px}
  .banner-content h2{font-size:clamp(30px,9vw,43px)}
  .banner-content p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .banner-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.banner-primary,.banner-secondary{width:100%;padding:0 10px}
  .banner-arrow{display:none}.banner-bottom-ui{bottom:17px}.banner-swipe-hint{bottom:15px}
}
@media(prefers-reduced-motion:reduce){
  .banner-track,.banner-picture img,.banner-content-card,.reveal{transition:none!important;animation:none!important}
  .public-home-html{scroll-behavior:auto}
}

/* =========================================================
   Banner Responsive Fill + Mobile Overlap Fix
   Fills the banner cleanly on desktop/mobile and prevents
   floating service cards from overlapping in mobile view.
   ========================================================= */
.banner-slider-section{
  background:linear-gradient(135deg,#22030d 0%,#6c0023 100%) !important;
}

.viit-banner-slider{
  height:clamp(380px, 46vw, 620px) !important;
  min-height:380px !important;
  max-height:620px !important;
  background:linear-gradient(135deg,#22030d 0%,#7b0028 100%) !important;
}

.banner-track,
.banner-slide,
.banner-picture,
.banner-picture img{
  width:100%;
  height:100%;
}

.banner-slide{
  min-height:inherit;
}

.banner-picture{
  background:linear-gradient(135deg,#1f020b 0%,#7b0028 100%);
}

.banner-picture img{
  object-fit:cover !important;
  object-position:center center !important;
  transform:none !important;
  padding:0 !important;
}

.banner-slide.is-active .banner-picture img{
  transform:none !important;
}

.banner-shade{
  background:linear-gradient(90deg, rgba(20,0,7,.10) 0%, rgba(35,0,11,.06) 46%, rgba(18,0,6,.04) 100%) !important;
}

.banner-shade:after{
  height:16% !important;
  background:linear-gradient(0deg, rgba(10,0,4,.14), transparent) !important;
}

@media(max-width:900px){
  .viit-banner-slider{
    height:clamp(260px, 70vw, 380px) !important;
    min-height:260px !important;
    max-height:380px !important;
  }

  .banner-picture img{
    object-position:center top !important;
  }

  .banner-content{
    padding:14px 12px 22px !important;
  }

  .banner-bottom-ui{
    left:12px !important;
    right:12px;
    width:auto;
    justify-content:flex-start;
  }

  .hero-visual{
    min-height:auto !important;
    display:grid !important;
    gap:12px;
  }

  .hero-main-card{
    position:relative !important;
    inset:auto !important;
    margin:0 !important;
  }

  .floating-card{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100%;
    font-size:11px;
    padding:12px 14px;
    border-radius:16px;
  }
}

@media(max-width:600px){
  .viit-banner-slider{
    height:clamp(230px, 72vw, 330px) !important;
    min-height:230px !important;
    max-height:330px !important;
  }

  .banner-picture img{
    object-position:center top !important;
  }

  .banner-content-card{
    width:100% !important;
  }

  .hero-main-card{
    padding:20px 16px !important;
    border-radius:24px !important;
  }

  .hero-screen{
    margin-top:20px !important;
    padding:14px !important;
  }

  .screen-grid{
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .screen-item{
    min-height:78px !important;
    padding:12px !important;
  }

  .floating-card{
    gap:10px;
  }

  .floating-card i{
    width:34px;
    height:34px;
    border-radius:11px;
  }
}

/* =========================================================
   VIIT LIVE BANNER SIZE SETTINGS
   Controlled from Admin → Website Manager → Homepage Banners.
   ========================================================= */
.banner-slider-section{
  width:100%;
  overflow:hidden;
  display:flex;
  justify-content:center;
}

.viit-banner-slider{
  width:var(--banner-desktop-width,100%) !important;
  height:var(--banner-desktop-height,520px) !important;
  min-height:0 !important;
  max-height:none !important;
  margin-inline:auto;
  transition:width .28s ease,height .28s ease;
}

.banner-track,
.banner-slide,
.banner-picture,
.banner-picture img{
  width:100% !important;
  height:100% !important;
}

.banner-picture img{
  object-fit:var(--banner-desktop-fit,fill) !important;
  object-position:center center !important;
  transform:none !important;
}

/* Keep the two service cards aligned below the main card on desktop. */
@media(min-width:901px){
  .hero-visual{
    min-height:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    align-content:start;
  }

  .hero-main-card{
    position:relative !important;
    inset:auto !important;
    grid-column:1 / -1;
    min-height:470px;
    margin:0 !important;
  }

  .floating-card,
  .floating-one,
  .floating-two{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100%;
    min-height:72px;
    padding:14px 16px;
    border:1px solid rgba(112,0,32,.10);
    box-shadow:0 14px 34px rgba(60,0,18,.12);
  }
}

@media(max-width:900px){
  .viit-banner-slider{
    width:var(--banner-mobile-width,100%) !important;
    height:var(--banner-mobile-height,330px) !important;
  }

  .banner-picture img{
    object-fit:var(--banner-mobile-fit,fill) !important;
    object-position:center center !important;
  }

  .hero-visual{
    min-height:auto !important;
    display:grid !important;
    gap:12px;
  }

  .hero-main-card{
    position:relative !important;
    inset:auto !important;
    margin:0 !important;
  }

  .floating-card,
  .floating-one,
  .floating-two{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100%;
  }
}

/* =========================================================
   VIIT Public Showcase Sections
   Birthday • Facilities • Leadership • Faculty • Toppers
   Certifications • About Leadership
   ========================================================= */
.birthday-showcase{position:relative;padding:82px 0;overflow:hidden;background:radial-gradient(circle at 12% 18%,rgba(246,215,117,.18),transparent 26%),linear-gradient(135deg,#3c0012 0%,#760024 52%,#31000e 100%);color:#fff}
.birthday-showcase:before,.birthday-showcase:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.08)}.birthday-showcase:before{width:420px;height:420px;left:-230px;top:-160px}.birthday-showcase:after{width:360px;height:360px;right:-180px;bottom:-190px}
.birthday-heading{position:relative;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.birthday-kicker{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#ffe49a;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.birthday-heading h2{font-family:"Playfair Display",serif;font-size:clamp(38px,5vw,60px);line-height:1.02;margin:13px 0 6px;color:#fff}.birthday-heading p{margin:0;color:#dbc2ca}.birthday-controls{display:flex;gap:9px}.birthday-controls button{width:46px;height:46px;border:1px solid rgba(255,255,255,.24);border-radius:14px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;transition:.25s}.birthday-controls button:hover{transform:translateY(-3px);background:#fff;color:var(--wine)}
.birthday-carousel{position:relative;z-index:2;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--birthday-desktop-cards,3) - 1)*18px)/var(--birthday-desktop-cards,3));gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:5px 2px 18px;scrollbar-width:none;touch-action:pan-y}.birthday-carousel::-webkit-scrollbar{display:none}
.birthday-atm-card{position:relative;scroll-snap-align:start;min-height:255px;aspect-ratio:1.58/1;border-radius:27px;padding:22px;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,#fff 0%,#fff8eb 52%,#f8e5c3 100%);color:#3a0715;box-shadow:0 28px 55px rgba(0,0,0,.3);transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease}.birthday-atm-card:hover{transform:translateY(-8px) rotateX(2deg) rotateY(-2deg);box-shadow:0 36px 70px rgba(0,0,0,.38)}
.birthday-atm-card:before{content:"";position:absolute;inset:auto -12% -37% -12%;height:62%;z-index:-1;border-radius:50% 50% 0 0;background:linear-gradient(135deg,#5a001b,#9c0034)}.birthday-atm-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-75px;top:-95px;background:radial-gradient(circle,#efca62 0 25%,#8d002d 26% 58%,#5b001a 59%);opacity:.9;z-index:-1}
.birthday-card-glow{position:absolute;inset:-50% auto auto -20%;width:60%;height:180%;transform:rotate(20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);animation:birthdayShine 5.5s ease-in-out infinite}@keyframes birthdayShine{0%,62%{left:-65%;opacity:0}70%{opacity:.85}100%{left:120%;opacity:0}}
.birthday-confetti{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 18% 20%,#d5a32c 0 2px,transparent 3px),radial-gradient(circle at 42% 14%,#8c002b 0 2px,transparent 3px),radial-gradient(circle at 76% 22%,#d5a32c 0 2px,transparent 3px),radial-gradient(circle at 88% 58%,#8c002b 0 2px,transparent 3px);opacity:.65}
.birthday-brand{display:flex;align-items:center;gap:9px;max-width:55%}.birthday-brand img{width:45px;height:45px;object-fit:contain}.birthday-brand span{display:flex;flex-direction:column;line-height:1.05}.birthday-brand strong{font-size:11px;color:#690020}.birthday-brand small{font-size:6.5px;font-weight:900;letter-spacing:.08em;color:#a36613}
.birthday-copy{position:relative;z-index:2;width:58%;margin-top:16px}.birthday-label{font-family:"Playfair Display",serif;font-size:24px;color:#9a6a12}.birthday-copy h3{margin:2px 0 7px;font-family:"Playfair Display",serif;font-size:29px;line-height:1;color:#65001d}.birthday-copy p{margin:0;color:#573c46;font-size:10.5px;line-height:1.45}.birthday-course{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:7px 9px;border-radius:10px;background:#f7e8ec;color:#760024;font-size:9px;font-weight:900}.birthday-photo-wrap{position:absolute;right:17px;top:67px;width:34%;height:48%;border-radius:25px 25px 40% 40%;overflow:hidden;border:4px solid #d8ac3e;background:linear-gradient(135deg,#7e0027,#3d0012);box-shadow:0 15px 30px rgba(76,0,22,.25)}.birthday-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center top}.birthday-photo-wrap span{width:100%;height:100%;display:grid;place-items:center;color:#fff;font-size:52px;font-weight:900}.birthday-signature{position:absolute;left:22px;right:22px;bottom:14px;color:#fff4d0;font-family:"Playfair Display",serif;font-size:9.5px;text-align:center;letter-spacing:.02em}

.showcase-facilities{background:linear-gradient(180deg,#fff,#fbf5f7)}.showcase-facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.showcase-facility-card{position:relative;min-height:245px;padding:28px;border-radius:28px;overflow:hidden;background:#fff;border:1px solid #eee3e7;box-shadow:0 18px 40px rgba(65,0,20,.08);transition:.35s}.showcase-facility-card:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(65,0,20,.15)}.showcase-facility-card:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-55px;bottom:-65px;background:var(--facility-accent,#f3dbe4)}.showcase-facility-card>span{position:absolute;right:22px;top:20px;font:900 34px/1 Manrope;color:rgba(112,0,32,.08)}.showcase-facility-icon{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,var(--wine),var(--wine-soft));color:#fff;font-size:27px;box-shadow:0 15px 30px rgba(112,0,32,.23)}.showcase-facility-card>img{width:100%;height:110px;object-fit:cover;border-radius:20px;margin-bottom:18px}.showcase-facility-card h3{margin:23px 0 8px;color:var(--wine-dark);font-size:18px}.showcase-facility-card p{margin:0;color:var(--muted);font-size:12px}.facility-tone-2{--facility-accent:#e4f4ed}.facility-tone-2 .showcase-facility-icon{background:linear-gradient(135deg,#0d7349,#1aa26d)}.facility-tone-3{--facility-accent:#fff0d7}.facility-tone-3 .showcase-facility-icon{background:linear-gradient(135deg,#b66b08,#e6a437)}.facility-tone-4{--facility-accent:#e2edff}.facility-tone-4 .showcase-facility-icon{background:linear-gradient(135deg,#2459a5,#2d79dc)}

.leadership-section{background:radial-gradient(circle at 85% 10%,rgba(214,165,46,.16),transparent 25%),linear-gradient(135deg,#22000a,#720020);color:#fff}.leadership-section .section-heading h2,.leadership-section .section-heading p{color:#fff}.leadership-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.leader-card{position:relative;display:grid;grid-template-columns:180px 1fr;min-height:250px;border-radius:30px;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.16);box-shadow:0 25px 55px rgba(0,0,0,.2)}.leader-card.leader-ceo{grid-column:1/-1;grid-template-columns:300px 1fr;min-height:330px;background:linear-gradient(135deg,#fff,#f7e8ed);color:var(--ink)}.leader-photo{height:100%;min-height:250px;background:linear-gradient(145deg,#9d0035,#390011);overflow:hidden}.leader-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.leader-photo span{width:100%;height:100%;display:grid;place-items:center;font-size:72px;color:#fff;font-weight:900}.leader-info{padding:30px;display:flex;flex-direction:column;justify-content:center}.leader-info>span{display:inline-flex;align-self:flex-start;padding:7px 10px;border-radius:999px;background:var(--gold);color:#3b2100;font-size:10px;font-weight:900;text-transform:uppercase}.leader-info h3{margin:13px 0 3px;font-family:"Playfair Display",serif;font-size:30px}.leader-info strong{color:#f2cf70}.leader-ceo .leader-info strong{color:var(--wine)}.leader-info small{display:flex;align-items:center;gap:7px;margin-top:11px;color:#dcc5cc}.leader-ceo .leader-info small{color:#6b5960}.leader-info p{margin:16px 0 0;color:#d4bcc4;font-size:12px;line-height:1.7}.leader-ceo .leader-info p{color:#5d5055;font-size:14px}

.faculty-showcase-section{background:#fff}.faculty-showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.faculty-profile-card{position:relative;padding:14px 14px 22px;border-radius:26px;background:linear-gradient(180deg,#fff,#fff7f9);border:1px solid #eadfe3;box-shadow:0 20px 44px rgba(76,0,23,.1);overflow:hidden;transition:.35s}.faculty-profile-card:nth-child(even){transform:translateY(18px)}.faculty-profile-card:hover{transform:translateY(-7px) rotate(-1deg)}.faculty-profile-card:nth-child(even):hover{transform:translateY(8px) rotate(1deg)}.faculty-rank{position:absolute;right:18px;top:20px;z-index:2;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.9);display:grid;place-items:center;color:var(--wine);font-size:10px;font-weight:900}.faculty-photo{height:245px;border-radius:21px;overflow:hidden;background:linear-gradient(145deg,#f0dce3,#7b0028)}.faculty-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.faculty-photo span{width:100%;height:100%;display:grid;place-items:center;color:#fff;font-size:70px;font-weight:900}.faculty-info{padding:17px 6px 0}.faculty-info h3{margin:0;color:var(--wine-dark);font-size:18px}.faculty-info strong{display:block;margin-top:5px;color:var(--wine);font-size:12px}.faculty-info p{margin:6px 0 0;color:var(--muted);font-size:11px}.faculty-info small{display:flex;align-items:center;gap:7px;margin-top:10px;color:#805765;font-size:10px}

.certification-showcase-section{background:linear-gradient(180deg,#faf6f7,#fff)}.certification-showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.certification-showcase-card{position:relative;min-height:310px;padding:30px;border-radius:28px;background:#fff;border:1px solid #eadfe3;box-shadow:0 20px 48px rgba(76,0,23,.09);overflow:hidden}.certification-showcase-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;background:linear-gradient(90deg,var(--wine),var(--gold),var(--wine))}.certification-badge{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;margin-bottom:22px;background:radial-gradient(circle,#fff 0 48%,#f4d978 49% 56%,#740020 57%);box-shadow:0 15px 30px rgba(112,0,32,.18)}.certification-badge img{width:70px;height:70px;object-fit:contain;border-radius:50%;background:#fff;padding:5px}.certification-badge i{font-size:31px;color:#fff}.certification-showcase-card>span{color:#9a6a13;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.certification-showcase-card h3{margin:8px 0;color:var(--wine-dark);font-size:21px}.certification-showcase-card p{color:var(--muted);font-size:12px}.certification-showcase-card a{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--wine);font-size:11px;font-weight:900}

.topper-showcase-section{background:linear-gradient(135deg,#fff9e8,#fff)}.topper-showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.topper-card{position:relative;padding:30px 20px 24px;text-align:center;border-radius:30px;background:#fff;border:1px solid #ebdfc2;box-shadow:0 22px 48px rgba(95,61,0,.11);overflow:hidden}.topper-card:after{content:"";position:absolute;inset:auto -15% -65px;width:130%;height:120px;border-radius:50%;background:linear-gradient(135deg,#6b001f,#9b0033)}.topper-medal{position:absolute;left:16px;top:16px;z-index:2;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#f8da73,#c98e16);color:#4b2b00}.topper-medal span{position:absolute;right:-7px;bottom:-6px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--wine);color:#fff;font-size:8px}.topper-photo{width:126px;height:126px;margin:0 auto 16px;border-radius:50%;overflow:hidden;border:6px solid #f2d575;background:linear-gradient(135deg,#7b0028,#3a0010)}.topper-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.topper-photo span{width:100%;height:100%;display:grid;place-items:center;color:#fff;font-size:48px;font-weight:900}.topper-card h3{margin:0;color:var(--wine-dark);font-size:19px}.topper-card p{margin:6px 0;color:var(--muted);font-size:11px}.topper-card>strong{display:block;margin-top:11px;color:#a56e09;font-size:22px}.topper-card>small{position:relative;z-index:2;display:block;margin-top:8px;color:#7b5964;font-size:10px}.topper-card.rank-1{transform:translateY(-12px)}.topper-card.rank-1 .topper-photo{width:142px;height:142px}

.about-leadership-section{background:linear-gradient(180deg,#fff,#faf5f7)}.about-leadership-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.about-leader-card{display:grid;grid-template-columns:180px 1fr;border-radius:28px;overflow:hidden;background:#fff;border:1px solid #eadfe3;box-shadow:0 20px 45px rgba(72,0,22,.09)}.about-leader-card.is-ceo{grid-column:1/-1;grid-template-columns:300px 1fr}.about-leader-photo{min-height:250px;background:linear-gradient(135deg,#780027,#3a0010)}.about-leader-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.about-leader-photo span{width:100%;height:100%;display:grid;place-items:center;color:#fff;font-size:70px;font-weight:900}.about-leader-card>div:last-child{padding:30px;display:flex;flex-direction:column;justify-content:center}.about-leader-card>div:last-child>span{color:#9a6a13;font-size:10px;font-weight:900;text-transform:uppercase}.about-leader-card h3{margin:8px 0 3px;color:var(--wine-dark);font-family:"Playfair Display",serif;font-size:29px}.about-leader-card strong{color:var(--wine)}.about-leader-card small{display:flex;align-items:center;gap:7px;margin-top:10px;color:#77646b}.about-leader-card p{margin:14px 0 0;color:#5f5156;font-size:12px;line-height:1.7}

.testimonial-card{position:relative}.testimonial-card:before{content:"\201C";position:absolute;right:20px;top:2px;font:800 86px/1 "Playfair Display",serif;color:rgba(112,0,32,.08)}

@media(max-width:1100px){.showcase-facility-grid,.faculty-showcase-grid,.topper-showcase-grid{grid-template-columns:repeat(2,1fr)}.certification-showcase-grid{grid-template-columns:repeat(2,1fr)}.birthday-carousel{grid-auto-columns:calc((100% - 18px)/2)}.leadership-grid{grid-template-columns:1fr}.leader-card.leader-ceo{grid-column:auto}}
@media(max-width:760px){.birthday-showcase{padding:60px 0}.birthday-heading{align-items:flex-start}.birthday-controls{display:none}.birthday-carousel{grid-auto-columns:88%;gap:14px}.birthday-atm-card{min-height:235px}.leadership-grid,.about-leadership-grid{grid-template-columns:1fr}.leader-card,.leader-card.leader-ceo,.about-leader-card,.about-leader-card.is-ceo{grid-template-columns:1fr}.leader-photo,.about-leader-photo{height:300px;min-height:300px}.faculty-profile-card:nth-child(even){transform:none}.certification-showcase-grid{grid-template-columns:1fr}.topper-showcase-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.showcase-facility-grid,.faculty-showcase-grid,.topper-showcase-grid{grid-template-columns:1fr}.birthday-carousel{grid-auto-columns:94%}.birthday-atm-card{min-height:225px;padding:17px;border-radius:23px}.birthday-brand{max-width:60%}.birthday-brand img{width:38px;height:38px}.birthday-copy{width:61%;margin-top:11px}.birthday-label{font-size:20px}.birthday-copy h3{font-size:23px}.birthday-copy p{font-size:8.5px}.birthday-photo-wrap{right:12px;top:60px;width:34%;height:43%;border-width:3px}.birthday-signature{font-size:7.5px;left:15px;right:15px;bottom:11px}.leader-photo,.about-leader-photo{height:260px;min-height:260px}.leader-info,.about-leader-card>div:last-child{padding:23px}.topper-card.rank-1{transform:none}}

/* V13 Contact Us professional photo/location section */
.contact-showcase-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:24px;align-items:stretch}.contact-visual-card{min-height:430px;border-radius:30px;overflow:hidden;position:relative;background:#27000c;color:#fff;box-shadow:0 28px 70px rgba(72,0,22,.18)}.contact-visual-photo{position:absolute;inset:0}.contact-visual-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(35,0,10,.91) 0%,rgba(55,0,16,.62) 48%,rgba(20,0,7,.18) 100%)}.contact-visual-photo>img{width:100%;height:100%;object-fit:cover}.contact-photo-placeholder{height:100%;display:grid;place-content:center;text-align:center;background:linear-gradient(135deg,#4a0016,#960033);padding:40px}.contact-photo-placeholder img{width:130px;margin:0 auto 16px}.contact-photo-placeholder strong{font-size:24px}.contact-photo-placeholder span{color:#f5d06a}.contact-visual-copy{position:relative;z-index:2;max-width:620px;padding:52px}.contact-visual-copy>span{display:inline-flex;gap:9px;align-items:center;border:1px solid #ffffff42;background:#ffffff17;padding:8px 13px;border-radius:999px;font-size:11px;font-weight:800}.contact-visual-copy h2{font-family:"Playfair Display",serif;font-size:clamp(36px,4.5vw,58px);line-height:1.05;margin:18px 0}.contact-visual-copy p{font-size:15px;color:#f3e8ec;max-width:540px}.contact-visual-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.contact-map-section{padding:0 0 80px;background:linear-gradient(180deg,#fff,#fbf7f8)}.contact-map-frame{height:430px;border-radius:28px;overflow:hidden;box-shadow:0 25px 65px rgba(68,0,20,.13);border:1px solid #eadfe3}.contact-map-frame iframe{width:100%;height:100%;border:0}@media(max-width:900px){.contact-showcase-grid{grid-template-columns:1fr}.contact-visual-card{min-height:390px}.contact-visual-copy{padding:38px}}@media(max-width:600px){.contact-visual-card{min-height:410px;border-radius:24px}.contact-visual-copy{padding:28px 22px}.contact-visual-copy h2{font-size:36px}.contact-visual-actions{display:grid;grid-template-columns:1fr}.contact-map-frame{height:330px;border-radius:22px}}

/* =========================================================
   V13 Banner Effects, Infinite Loop & Scroll Performance
   ========================================================= */
.public-home-html.home-scroll-snap-html{scroll-snap-type:none!important}
.public-home.home-scroll-snap .home-snap-section{scroll-snap-align:none!important}
.public-home main{overflow-x:clip;overflow-y:visible}
.public-home .section,
.public-home .home-service-strip,
.public-home .birthday-showcase{content-visibility:auto;contain-intrinsic-size:1px 720px}
.banner-track{backface-visibility:hidden;transform-style:preserve-3d}
.banner-slide{backface-visibility:hidden;contain:layout paint}
.banner-slide .banner-picture img{animation:none;transform-origin:center center;backface-visibility:hidden}
.banner-slide.is-active .banner-picture img{animation-duration:var(--banner-effect-duration,850ms);animation-fill-mode:both;animation-timing-function:cubic-bezier(.2,.78,.18,1)}
.banner-slide.is-active[data-transition="slide-left"] .banner-picture img{animation-name:viitBannerSlideLeft}
.banner-slide.is-active[data-transition="slide-right"] .banner-picture img{animation-name:viitBannerSlideRight}
.banner-slide.is-active[data-transition="fade"] .banner-picture img{animation-name:viitBannerFade}
.banner-slide.is-active[data-transition="zoom-in"] .banner-picture img{animation-name:viitBannerZoomIn}
.banner-slide.is-active[data-transition="zoom-out"] .banner-picture img{animation-name:viitBannerZoomOut}
.banner-slide.is-active[data-transition="pan-left"] .banner-picture img{animation-name:viitBannerPanLeft}
.banner-slide.is-active[data-transition="pan-right"] .banner-picture img{animation-name:viitBannerPanRight}
.banner-slide.is-active[data-transition="blur-in"] .banner-picture img{animation-name:viitBannerBlur}
.banner-slide.is-active[data-transition="rotate-in"] .banner-picture img{animation-name:viitBannerRotate}
.banner-slide.is-active[data-transition="flip-x"] .banner-picture img{animation-name:viitBannerFlipX}
.banner-slide.is-active[data-transition="flip-y"] .banner-picture img{animation-name:viitBannerFlipY}
.banner-slide.is-active[data-transition="wipe-left"] .banner-picture img{animation-name:viitBannerWipeLeft}
.banner-slide.is-active[data-transition="wipe-right"] .banner-picture img{animation-name:viitBannerWipeRight}
.banner-slide.is-active[data-transition="wipe-up"] .banner-picture img{animation-name:viitBannerWipeUp}
.banner-slide.is-active[data-transition="wipe-down"] .banner-picture img{animation-name:viitBannerWipeDown}
.banner-slide.is-active[data-transition="diagonal"] .banner-picture img{animation-name:viitBannerDiagonal}
.banner-slide.is-active[data-transition="scale-up"] .banner-picture img{animation-name:viitBannerScaleUp}
.banner-slide.is-active[data-transition="scale-down"] .banner-picture img{animation-name:viitBannerScaleDown}
.banner-slide.is-active[data-transition="glow"] .banner-picture img{animation-name:viitBannerGlow}
.banner-slide.is-active[data-transition="bounce-soft"] .banner-picture img{animation-name:viitBannerBounce}
@keyframes viitBannerSlideLeft{from{opacity:.3;transform:translate3d(7%,0,0) scale(1.03)}to{opacity:1;transform:none}}
@keyframes viitBannerSlideRight{from{opacity:.3;transform:translate3d(-7%,0,0) scale(1.03)}to{opacity:1;transform:none}}
@keyframes viitBannerFade{from{opacity:0}to{opacity:1}}
@keyframes viitBannerZoomIn{from{opacity:.4;transform:scale(1.14)}to{opacity:1;transform:scale(1)}}
@keyframes viitBannerZoomOut{from{opacity:.35;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
@keyframes viitBannerPanLeft{from{opacity:.5;transform:scale(1.08) translate3d(5%,0,0)}to{opacity:1;transform:scale(1) translate3d(0,0,0)}}
@keyframes viitBannerPanRight{from{opacity:.5;transform:scale(1.08) translate3d(-5%,0,0)}to{opacity:1;transform:scale(1) translate3d(0,0,0)}}
@keyframes viitBannerBlur{from{opacity:0;filter:blur(18px);transform:scale(1.05)}to{opacity:1;filter:blur(0);transform:scale(1)}}
@keyframes viitBannerRotate{from{opacity:0;transform:scale(1.06) rotate(-1.8deg)}to{opacity:1;transform:none}}
@keyframes viitBannerFlipX{from{opacity:0;transform:perspective(1200px) rotateX(18deg) scale(.97)}to{opacity:1;transform:perspective(1200px) rotateX(0) scale(1)}}
@keyframes viitBannerFlipY{from{opacity:0;transform:perspective(1200px) rotateY(-18deg) scale(.97)}to{opacity:1;transform:perspective(1200px) rotateY(0) scale(1)}}
@keyframes viitBannerWipeLeft{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}
@keyframes viitBannerWipeRight{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@keyframes viitBannerWipeUp{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0)}}
@keyframes viitBannerWipeDown{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
@keyframes viitBannerDiagonal{from{opacity:.2;clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}
@keyframes viitBannerScaleUp{from{opacity:.4;transform:scale(.82)}to{opacity:1;transform:scale(1)}}
@keyframes viitBannerScaleDown{from{opacity:.4;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}
@keyframes viitBannerGlow{0%{opacity:.35;filter:brightness(.75) saturate(.8);box-shadow:inset 0 0 0 60px rgba(214,165,46,.35)}65%{opacity:1;filter:brightness(1.08) saturate(1.08)}100%{filter:none;box-shadow:none}}
@keyframes viitBannerBounce{0%{opacity:0;transform:scale(.94) translateY(20px)}60%{opacity:1;transform:scale(1.018) translateY(-4px)}100%{transform:none}}
@media(max-width:700px){
  .public-home .section,.public-home .home-service-strip,.public-home .birthday-showcase{contain-intrinsic-size:1px 560px}
  .banner-slide.is-active[data-transition="flip-x"] .banner-picture img,
  .banner-slide.is-active[data-transition="flip-y"] .banner-picture img,
  .banner-slide.is-active[data-transition="rotate-in"] .banner-picture img{animation-name:viitBannerFade}
}
@media(prefers-reduced-motion:reduce){.banner-slide.is-active .banner-picture img{animation:none!important}.banner-track{transition:none!important}}

/* V13 smoother frontend scrolling on phones and low-power WebViews */
@media(max-width:900px){
  .public-home-html{scroll-behavior:auto!important}
  .public-home .reveal{filter:none!important;transform:translate3d(0,20px,0) scale(.995)}
  .public-home .reveal.visible{transform:none}
  .site-header{backdrop-filter:none;-webkit-backdrop-filter:none}
  .banner-dots,.banner-arrow,.banner-swipe-hint{backdrop-filter:none;-webkit-backdrop-filter:none}
}

/* =========================================================
   V14 Mobile grouped menu + larger public header branding
   ========================================================= */
@media (max-width:900px){
  .site-navbar .site-brand{
    flex:1 1 auto;
    min-width:0;
    gap:9px;
  }
  .site-navbar .site-brand img{
    width:52px;
    height:52px;
    flex:0 0 52px;
  }
  .site-navbar .site-brand span{
    min-width:0;
  }
  .site-navbar .site-brand strong{
    font-size:clamp(14px,3.65vw,16px);
    line-height:1.02;
    white-space:nowrap;
    letter-spacing:.15px;
  }
  .site-navbar .site-brand small{
    margin-top:4px;
    font-size:clamp(6.6px,1.75vw,8px);
    line-height:1.05;
    white-space:nowrap;
    letter-spacing:.28px;
  }
  .mobile-menu{
    padding:16px;
    overflow:hidden;
  }
  .mobile-menu-head .site-brand{
    min-width:0;
    flex:1;
  }
  .mobile-menu-head .site-brand strong{
    font-size:15px;
    white-space:nowrap;
  }
  .mobile-menu-head .site-brand small{
    font-size:7px;
    white-space:nowrap;
  }
  .mobile-nav-tree{
    display:grid!important;
    align-content:start;
    gap:7px!important;
    padding:15px 0 20px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }
  .mobile-nav-tree>a,
  .mobile-nav-group-toggle{
    width:100%;
    min-height:52px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:9px 11px!important;
    border:1px solid transparent;
    border-radius:15px!important;
    background:transparent;
    color:var(--ink);
    font-size:13px!important;
    font-weight:800!important;
    text-align:left;
    cursor:pointer;
  }
  .mobile-nav-tree>a:hover,
  .mobile-nav-group-toggle:hover,
  .mobile-nav-group.is-open>.mobile-nav-group-toggle{
    background:#f8edf1;
    border-color:#efdce3;
    color:var(--wine);
  }
  .mobile-nav-tree>a>i,
  .mobile-nav-group-toggle>span>i{
    width:36px!important;
    height:36px!important;
    flex:0 0 36px;
    display:grid!important;
    place-items:center;
    border-radius:12px!important;
    background:#f5e8ec!important;
    color:var(--wine)!important;
  }
  .mobile-nav-group-toggle>span{
    min-width:0;
    flex:1;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .mobile-nav-chevron{
    width:auto!important;
    height:auto!important;
    flex:0 0 auto!important;
    background:transparent!important;
    transition:transform .28s ease;
  }
  .mobile-nav-group.is-open .mobile-nav-chevron{
    transform:rotate(180deg);
  }
  .mobile-nav-submenu{
    max-height:0;
    overflow:hidden;
    opacity:0;
    transform:translateY(-6px);
    transition:max-height .38s cubic-bezier(.2,.8,.2,1),opacity .25s ease,transform .3s ease;
  }
  .mobile-nav-group.is-open .mobile-nav-submenu{
    max-height:650px;
    opacity:1;
    transform:none;
    padding-top:6px;
  }
  .mobile-nav-submenu a{
    min-height:45px;
    margin:4px 0 4px 18px;
    padding:7px 10px!important;
    display:flex;
    align-items:center;
    gap:10px;
    border-left:2px solid #edd4dc;
    border-radius:12px!important;
    background:#fcf8f9;
    color:#4d2633;
    font-size:11.5px!important;
    font-weight:700!important;
  }
  .mobile-nav-submenu a i{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px;
    border-radius:10px!important;
    background:#f2e3e8!important;
    color:var(--wine)!important;
    display:grid!important;
    place-items:center;
  }
  [data-site-theme=dark] .mobile-nav-tree>a,
  [data-site-theme=dark] .mobile-nav-group-toggle{
    color:#f7edf1;
  }
  [data-site-theme=dark] .mobile-nav-tree>a:hover,
  [data-site-theme=dark] .mobile-nav-group-toggle:hover,
  [data-site-theme=dark] .mobile-nav-group.is-open>.mobile-nav-group-toggle{
    background:#32121d;
    border-color:#53303b;
  }
  [data-site-theme=dark] .mobile-nav-submenu a{
    background:#241018;
    border-left-color:#613246;
    color:#eadde2;
  }
}

@media (max-width:600px){
  .site-navbar .site-brand img{
    width:48px;
    height:48px;
    flex-basis:48px;
  }
  .site-navbar .site-brand strong{
    font-size:clamp(13.5px,3.75vw,15px);
  }
  .site-navbar .site-brand small{
    font-size:clamp(6.2px,1.72vw,7.4px);
  }
  .navbar-actions{
    flex:0 0 auto;
  }
}

/* V20 final tablet override — must remain after every legacy banner rule. */
@media (min-width:701px) and (max-width:1100px){
  .banner-slider-section .viit-banner-slider{
    width:var(--banner-tablet-width,100%) !important;
    height:var(--banner-tablet-height,430px) !important;
    min-height:0 !important;
    max-height:none !important;
  }
  .banner-slider-section .banner-picture img{
    object-fit:var(--banner-tablet-fit,fill) !important;
    object-position:center center !important;
  }
}
.course-duration-only{display:inline-flex;align-items:center;gap:6px;color:#6f0025;font-size:12px;font-weight:800}
.public-empty-state{max-width:680px;margin:20px auto;padding:64px 28px;text-align:center;border:1px solid rgba(111,0,37,.12);border-radius:28px;background:linear-gradient(145deg,#fff,#fff7fa);box-shadow:0 20px 50px rgba(25,8,15,.08)}
.public-empty-state>i{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 18px;border-radius:22px;background:#fff0f5;color:#9f0039;font-size:28px}.public-empty-state h2{margin:0 0 8px}.public-empty-state p{margin:0 0 24px;color:#667085}
.course-detail-cover{width:100%;max-height:420px;object-fit:cover;border-radius:19px;margin-bottom:26px;border:1px solid var(--line)}
