/* =============================================
   Sapient Senior Secondary Public School CSS
   ============================================= */
:root {
  --orange: #E07020; --orange-dark: #C45E10; --orange-light: #F09040;
  --blue: #1A3C8F; --blue-dark: #0F2660; --blue-light: #2A5AC0;
  --cyan: #00B4D8; --cyan-light: #48CAE4;
  --dark: #0D1B2A; --white: #FFFFFF; --light: #F5F7FF;
  --gray: #6C757D; --text: #1A1A2E; --text-light: #555;
  --gold: #FFD700;
  --shadow: 0 4px 30px rgba(0,0,0,0.10);
  --shadow-lg: 0 10px 50px rgba(0,0,0,0.18);
  --radius: 12px; --radius-lg: 20px;
  --transition: all 0.35s cubic-bezier(0.4,0,0.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Lato',sans-serif;color:var(--text);background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto}
a{text-decoration:none;color:inherit}

/* TYPOGRAPHY */
h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',serif;font-weight:700;line-height:1.2}
.sec-title{font-size:2.3rem;color:var(--blue);margin-bottom:.4rem}
.sec-sub{font-size:1rem;color:var(--gray);max-width:600px}
.divider{width:65px;height:4px;background:linear-gradient(90deg,var(--orange),var(--cyan));border-radius:2px;margin:1rem 0 1.5rem}
.divider.center{margin-left:auto;margin-right:auto}
.badge-tag{display:inline-block;background:var(--orange);color:#fff;font-size:.75rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:5px 16px;border-radius:30px;margin-bottom:1rem}

/* TOP BAR */
.top-bar{background:var(--blue-dark);color:#d0e4ff;font-size:.82rem;padding:7px 0;z-index:1100;position:relative}
.top-bar a{color:#d0e4ff;transition:var(--transition)}
.top-bar a:hover{color:var(--cyan-light)}
.top-bar .sep{margin:0 10px;opacity:.4}
.social-icons a{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:.75rem;transition:var(--transition);margin-left:5px}
.social-icons a:hover{background:var(--orange);transform:translateY(-2px)}
.mandatory-link{background:linear-gradient(90deg,var(--orange),var(--orange-light));color:#fff!important;padding:3px 14px;border-radius:20px;font-weight:700;font-size:.78rem;letter-spacing:.3px}

/* NAVBAR */
.navbar-main{background:#fff;box-shadow:0 2px 20px rgba(0,0,0,.1);padding:0;position:sticky;top:0;z-index:1050;transition:var(--transition)}
.navbar-main.scrolled{background:rgba(255,255,255,.97);backdrop-filter:blur(10px);box-shadow:0 4px 30px rgba(0,0,0,.15)}
.navbar-brand img{height:58px;width:auto;transition:var(--transition)}
.navbar-brand img:hover{transform:scale(1.05)}
.brand-name{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--blue);line-height:1.2}
.brand-sub{font-size:.68rem;color:var(--orange);font-weight:700;letter-spacing:1px;text-transform:uppercase}
.nav-link{font-size:.82rem;font-weight:700;color:var(--text)!important;padding:1.3rem .7rem!important;text-transform:uppercase;letter-spacing:.4px;position:relative;transition:var(--transition)}
.nav-link::after{content:'';position:absolute;bottom:0;left:50%;right:50%;height:3px;background:var(--orange);border-radius:2px 2px 0 0;transition:var(--transition)}
.nav-link:hover::after,.nav-link.active::after{left:.7rem;right:.7rem}
.nav-link:hover,.nav-link.active{color:var(--orange)!important}
.dropdown-menu{border:none;border-radius:var(--radius);box-shadow:var(--shadow-lg);border-top:3px solid var(--orange);padding:.5rem 0;min-width:200px;animation:fadeDown .2s ease}
@keyframes fadeDown{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.dropdown-item{font-size:.82rem;font-weight:600;color:var(--text);padding:.5rem 1.2rem;transition:var(--transition);border-left:3px solid transparent}
.dropdown-item:hover{background:#FFF4EC;color:var(--orange);border-left-color:var(--orange)}
.dropdown-item i{color:var(--orange);width:18px}

/* BUTTONS */
.btn-o{background:linear-gradient(135deg,var(--orange),var(--orange-dark));color:#fff;border:none;padding:12px 28px;border-radius:50px;font-weight:700;font-size:.88rem;transition:var(--transition);box-shadow:0 4px 20px rgba(224,112,32,.35);display:inline-flex;align-items:center;gap:8px}
.btn-o:hover{background:linear-gradient(135deg,var(--orange-dark),var(--blue));transform:translateY(-2px);box-shadow:0 8px 30px rgba(224,112,32,.5);color:#fff}
.btn-b{background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:#fff;border:none;padding:12px 28px;border-radius:50px;font-weight:700;font-size:.88rem;transition:var(--transition);box-shadow:0 4px 20px rgba(26,60,143,.3);display:inline-flex;align-items:center;gap:8px}
.btn-b:hover{transform:translateY(-2px);color:#fff;box-shadow:0 8px 30px rgba(26,60,143,.45)}
.btn-wh{background:rgba(255,255,255,.15);backdrop-filter:blur(4px);color:#fff;border:2px solid rgba(255,255,255,.7);padding:11px 26px;border-radius:50px;font-weight:700;font-size:.88rem;transition:var(--transition);display:inline-flex;align-items:center;gap:8px}
.btn-wh:hover{background:#fff;color:var(--blue);transform:translateY(-2px)}

/* HERO */
.hero-item{height:88vh;min-height:520px;position:relative}
.hero-item img{width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,30,70,.78) 0%,rgba(224,112,32,.38) 100%)}
.hero-content{position:absolute;inset:0;display:flex;align-items:center}
.hero-text h1{font-size:clamp(2rem,5vw,3.8rem);font-weight:800;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.4);margin-bottom:1rem}
.hero-text p{font-size:1.05rem;color:rgba(255,255,255,.92);margin-bottom:1.8rem;max-width:580px}
.hero-motto{font-family:'Playfair Display',serif;font-style:italic;font-size:1.2rem;color:var(--cyan-light);margin-bottom:1.5rem}
.carousel-indicators [data-bs-target]{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.5);border:2px solid rgba(255,255,255,.8);margin:0 4px}
.carousel-indicators .active{background:var(--orange);width:28px;border-radius:5px}

/* TICKER */
.ticker{background:linear-gradient(90deg,var(--orange-dark),var(--orange));color:#fff;padding:9px 0;overflow:hidden}
.ticker-label{background:var(--blue-dark);padding:2px 16px;font-size:.75rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;border-radius:0 4px 4px 0}
.ticker-scroll{display:flex;animation:ticker 35s linear infinite;white-space:nowrap}
.ticker-scroll span{margin:0 50px;font-size:.83rem}
@keyframes ticker{0%{transform:translateX(100vw)}100%{transform:translateX(-100%)}}

/* SECTION */
.sec{padding:80px 0}
.sec-sm{padding:55px 0}
.bg-light{background:var(--light)!important}
.bg-dark-grad{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff}
.bg-orange-grad{background:linear-gradient(135deg,var(--orange-dark),var(--orange));color:#fff}

/* PAGE HEADER */
.pg-header{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff;padding:75px 0 55px;position:relative;overflow:hidden}
.pg-header::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4z'/%3E%3C/g%3E%3C/svg%3E")}
.pg-header h1{font-size:2.6rem;margin-bottom:.5rem;position:relative}
.pg-header .breadcrumb{background:none;padding:0;position:relative}
.pg-header .breadcrumb-item{color:rgba(255,255,255,.7);font-size:.87rem}
.pg-header .breadcrumb-item.active{color:var(--cyan-light)}
.pg-header .breadcrumb-item+.breadcrumb-item::before{color:rgba(255,255,255,.4)}

/* CARDS */
.feat-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:2rem;height:100%;transition:var(--transition);position:relative;overflow:hidden}
.feat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--orange),var(--cyan))}
.feat-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}
.feat-card .icon-box{width:62px;height:62px;background:linear-gradient(135deg,#FFF4EC,#FFE0CC);border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;color:var(--orange);margin-bottom:1.2rem;transition:var(--transition)}
.feat-card:hover .icon-box{background:linear-gradient(135deg,var(--orange),var(--orange-light));color:#fff;transform:rotate(-5deg) scale(1.1)}
.feat-card h4{font-size:1.1rem;color:var(--blue);margin-bottom:.5rem}
.feat-card p{font-size:.87rem;color:var(--text-light);line-height:1.75}
.feat-card .link{font-size:.82rem;font-weight:700;color:var(--orange);display:flex;align-items:center;gap:5px;margin-top:.8rem;transition:var(--transition)}
.feat-card .link:hover{gap:10px}

.gal-card{border-radius:var(--radius);overflow:hidden;position:relative;box-shadow:var(--shadow);transition:var(--transition)}
.gal-card img{width:100%;height:215px;object-fit:cover;transition:var(--transition)}
.gal-card:hover img{transform:scale(1.08)}
.gal-card .ov{position:absolute;inset:0;background:linear-gradient(0deg,rgba(26,60,143,.8) 0%,transparent 60%);opacity:0;transition:var(--transition);display:flex;align-items:flex-end;padding:1.2rem}
.gal-card:hover .ov{opacity:1}
.gal-card .ov span{color:#fff;font-weight:700;font-size:.9rem}
.gal-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}

.person-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;transition:var(--transition)}
.person-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.person-card .person-img{width:100%;height:300px;object-fit:cover;object-position:top}
.person-card .p-body{padding:1.5rem}
.person-card h3{font-size:1.3rem;color:var(--blue)}
.person-card .role{display:inline-block;background:linear-gradient(135deg,var(--orange),var(--orange-light));color:#fff;font-size:.75rem;font-weight:700;padding:4px 14px;border-radius:20px;margin:.4rem 0 .8rem}
.person-card p{font-size:.87rem;color:var(--text-light);line-height:1.8}

.blog-card{background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);height:100%;display:flex;flex-direction:column}
.blog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.blog-card .blog-img{height:210px;overflow:hidden}
.blog-card .blog-img img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}
.blog-card:hover .blog-img img{transform:scale(1.07)}
.blog-card .blog-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}
.blog-card .tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--orange)}
.blog-card h5{font-size:1rem;color:var(--blue);margin:.5rem 0 .8rem;line-height:1.4}
.blog-card p{font-size:.85rem;color:var(--text-light);line-height:1.75;flex:1}
.blog-card .rm{font-size:.82rem;font-weight:700;color:var(--orange);display:flex;align-items:center;gap:5px;margin-top:1rem;transition:var(--transition)}
.blog-card .rm:hover{gap:10px}

.job-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.8rem;border-left:5px solid var(--orange);transition:var(--transition);margin-bottom:1.5rem}
.job-card:hover{transform:translateX(5px);box-shadow:var(--shadow-lg)}
.job-card .jbadge{display:inline-block;background:#FFF4EC;color:var(--orange);font-size:.73rem;font-weight:700;padding:4px 12px;border-radius:20px;margin-bottom:.8rem;border:1px solid var(--orange-light)}
.job-card h4{font-size:1.15rem;color:var(--blue);margin-bottom:.5rem}
.job-card p{font-size:.87rem;color:var(--text-light);line-height:1.75;margin-bottom:1rem}

.alumni-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:2rem 1.5rem;text-align:center;transition:var(--transition)}
.alumni-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.alumni-card img{width:90px;height:90px;border-radius:50%;object-fit:cover;border:4px solid var(--orange-light);margin-bottom:1rem}
.alumni-card h5{color:var(--blue);font-size:1rem;margin-bottom:.3rem}
.alumni-card .batch{font-size:.75rem;color:var(--orange);font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:.6rem}
.alumni-card p{font-size:.84rem;color:var(--text-light);line-height:1.65}

.fb-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:2rem;text-align:center;transition:var(--transition);position:relative}
.fb-card::before{content:'\201C';font-family:'Playfair Display',serif;font-size:5rem;color:var(--orange-light);opacity:.2;position:absolute;top:-10px;left:20px;line-height:1}
.fb-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.fb-card img{width:78px;height:78px;border-radius:50%;object-fit:cover;border:4px solid var(--orange);margin:0 auto 1rem;display:block}
.fb-card p{font-style:italic;color:var(--text-light);line-height:1.8;margin-bottom:1rem;font-size:.88rem}
.fb-card h5{color:var(--blue);font-size:.97rem;margin-bottom:.2rem}
.fb-card .stars{color:var(--gold);font-size:.82rem;margin-bottom:.5rem}

.media-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);margin-bottom:1.5rem}
.media-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.media-card img{width:100%;height:220px;object-fit:cover}
.media-card .mc{padding:1rem;font-size:.87rem;font-weight:600;color:var(--blue);background:var(--light)}

.achiev-card{background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:#fff;border-radius:var(--radius-lg);padding:1.8rem;text-align:center;transition:var(--transition)}
.achiev-card:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 15px 40px rgba(26,60,143,.4)}
.achiev-card .trophy{font-size:2.5rem;margin-bottom:.8rem}
.achiev-card h5{font-size:1rem;margin-bottom:.4rem}
.achiev-card p{font-size:.82rem;opacity:.85}

/* STATS */
.stats-bar{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff;padding:2.5rem 0}
.stat-item{text-align:center}
.stat-num{font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:700;color:var(--cyan-light);line-height:1}
.stat-label{font-size:.82rem;opacity:.85;text-transform:uppercase;letter-spacing:1px;margin-top:4px}
.stat-icon{font-size:1.7rem;color:var(--orange-light);margin-bottom:.5rem}

/* IMG TEXT BLOCK */
.itb .img-wrap{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);position:relative}
.itb .img-wrap::before{content:'';position:absolute;top:-14px;left:-14px;right:14px;bottom:14px;border:3px solid var(--orange);border-radius:var(--radius-lg);z-index:-1}
.itb img{width:100%;height:400px;object-fit:cover}

/* GALLERY GRID */
.gg{display:grid;gap:14px}
.gg-2{grid-template-columns:repeat(2,1fr)}
.gg-3{grid-template-columns:repeat(3,1fr)}
.gg-4{grid-template-columns:repeat(4,1fr)}
.gi{border-radius:var(--radius);overflow:hidden;position:relative;aspect-ratio:4/3;cursor:pointer}
.gi img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}
.gi:hover img{transform:scale(1.1)}
.gi .gov{position:absolute;inset:0;background:rgba(26,60,143,.6);display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}
.gi:hover .gov{opacity:1}
.gi .gov i{color:#fff;font-size:2rem}

/* PARALLAX */
.parallax{background-attachment:fixed;background-size:cover;background-position:center;position:relative}
.parallax-ov{background:linear-gradient(135deg,rgba(10,38,96,.85),rgba(224,112,32,.6))}

/* CONTACT FORM */
.cf input,.cf textarea,.cf select{border:2px solid #e8e8e8;border-radius:var(--radius);padding:12px 18px;font-size:.9rem;transition:var(--transition);width:100%;font-family:'Lato',sans-serif}
.cf input:focus,.cf textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(224,112,32,.12);outline:none}
.cf textarea{min-height:130px;resize:vertical}
.cf label{font-size:.87rem;font-weight:700;color:var(--blue);margin-bottom:.4rem;display:block}

/* MAP */
.map-wrap{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.map-wrap iframe{width:100%;height:420px;border:0;display:block}

/* FOOTER */
.footer{background:var(--dark);color:#aab8c8}
.footer-top{padding:65px 0 40px}
.footer h5{color:#fff;font-family:'Playfair Display',serif;font-size:1.1rem;margin-bottom:1.4rem;position:relative;padding-bottom:.7rem}
.footer h5::after{content:'';position:absolute;bottom:0;left:0;width:38px;height:3px;background:var(--orange);border-radius:2px}
.foot-links{list-style:none;padding:0}
.foot-links li{margin-bottom:.5rem}
.foot-links a{color:#aab8c8;font-size:.86rem;transition:var(--transition);display:flex;align-items:center;gap:8px}
.foot-links a i{color:var(--orange);font-size:.72rem}
.foot-links a:hover{color:var(--orange-light);padding-left:5px}
.foot-contact li{display:flex;align-items:flex-start;gap:10px;margin-bottom:.9rem;font-size:.85rem}
.foot-contact li i{color:var(--orange);margin-top:3px;min-width:15px}
.foot-contact a{color:#aab8c8;transition:var(--transition)}
.foot-contact a:hover{color:var(--orange-light)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:1.1rem 0;font-size:.8rem}
.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);color:#aab8c8;margin:0 4px;transition:var(--transition)}
.foot-social a:hover{background:var(--orange);color:#fff;transform:translateY(-3px)}

/* FLOATING */
.floats{position:fixed;right:18px;bottom:88px;z-index:9999;display:flex;flex-direction:column;gap:10px}
.flt{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;transition:var(--transition);box-shadow:0 4px 20px rgba(0,0,0,.25)}
.flt.wa{background:#25D366;color:#fff}
.flt.fb{background:#1877F2;color:#fff}
.flt:hover{transform:scale(1.15) translateX(-4px);box-shadow:0 8px 30px rgba(0,0,0,.3)}
.btt{position:fixed;right:18px;bottom:28px;width:44px;height:44px;background:var(--orange);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;z-index:9998;box-shadow:var(--shadow);transition:var(--transition);opacity:0;visibility:hidden}
.btt.on{opacity:1;visibility:visible}
.btt:hover{background:var(--blue);transform:translateY(-3px)}

/* CTA */
.cta{background:linear-gradient(135deg,var(--orange-dark),var(--orange));color:#fff;padding:70px 0;text-align:center;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M20 20.5V18H0v5h20v20.5h5V23h20v-5H25V0h-5v20.5z'/%3E%3C/g%3E%3C/svg%3E")}
.cta h2{font-size:2.2rem;margin-bottom:1rem;position:relative}
.cta p{font-size:1.05rem;opacity:.92;margin-bottom:2rem;max-width:620px;margin-left:auto;margin-right:auto;position:relative}

/* QUICK LINKS */
.ql-card{background:#fff;border-radius:var(--radius-lg);padding:1.7rem 1rem;text-align:center;box-shadow:var(--shadow);transition:var(--transition);height:100%;border-bottom:4px solid transparent;display:block}
.ql-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-bottom-color:var(--orange)}
.ql-card .qi{width:58px;height:58px;background:linear-gradient(135deg,#FFF4EC,#FFE0CC);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--orange);margin:0 auto .9rem;transition:var(--transition)}
.ql-card:hover .qi{background:linear-gradient(135deg,var(--orange),var(--orange-light));color:#fff}
.ql-card h6{font-size:.86rem;color:var(--blue);margin:0;font-weight:700}

/* WHY CARDS */
.why-item{display:flex;gap:1rem;align-items:flex-start;background:#fff;border-radius:var(--radius);padding:1.3rem;box-shadow:0 2px 15px rgba(0,0,0,.06);transition:var(--transition);margin-bottom:1rem}
.why-item:hover{transform:translateX(5px);box-shadow:var(--shadow)}
.why-item .wi{width:40px;height:40px;background:linear-gradient(135deg,var(--orange),var(--orange-light));border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;font-size:1rem}
.why-item h5{font-size:.95rem;color:var(--blue);margin-bottom:.2rem}
.why-item p{font-size:.82rem;color:var(--text-light);margin:0;line-height:1.65}

/* EVENT SIDEBAR */
.ev-item{display:flex;gap:1rem;align-items:flex-start;padding:.9rem 0;border-bottom:1px dashed #e8e8e8}
.ev-item:last-child{border-bottom:none}
.ev-date{background:var(--blue);color:#fff;border-radius:var(--radius);padding:.55rem .75rem;text-align:center;min-width:52px;flex-shrink:0}
.ev-date .dy{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;line-height:1}
.ev-date .mo{font-size:.65rem;text-transform:uppercase;letter-spacing:1px;opacity:.85}
.ev-info h6{font-size:.88rem;color:var(--blue);margin-bottom:.2rem}
.ev-info p{font-size:.78rem;color:var(--gray);margin:0}

/* SCHOOL IMG GRID */
.sig{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:195px 195px;gap:12px;border-radius:var(--radius-lg);overflow:hidden}
.sig .big{grid-row:1/3}
.sig img{width:100%;height:100%;object-fit:cover;transition:var(--transition);border-radius:var(--radius)}
.sig img:hover{transform:scale(1.04)}

/* TESTIMONIAL */
.testi-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:2rem;position:relative}
.testi-card::before{content:'\201C';font-family:'Playfair Display',serif;font-size:5rem;color:var(--orange-light);opacity:.25;position:absolute;top:-8px;left:18px;line-height:1}
.testi-card p{font-style:italic;color:var(--text-light);line-height:1.8;margin-bottom:1.2rem;font-size:.9rem}
.testi-card .tp{display:flex;align-items:center;gap:12px}
.testi-card .tp img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:3px solid var(--orange-light)}
.testi-card .tp .tn{font-weight:700;color:var(--blue);font-size:.92rem}
.testi-card .tp .tr{font-size:.76rem;color:var(--gray)}

/* AFFILIATION NUMBERS */
.aff-box{color:#fff;border-radius:var(--radius-lg);padding:1.8rem;text-align:center}
.aff-num{font-family:'Playfair Display',serif;font-size:2.2rem;font-weight:800;line-height:1}
.aff-label{font-size:.8rem;opacity:.9;text-transform:uppercase;letter-spacing:1px;margin-top:.4rem;font-weight:700}

/* RESPONSIVE */
@media(max-width:1200px){.nav-link{padding:1.3rem .5rem!important;font-size:.77rem}}
@media(max-width:992px){
  .hero-item{height:62vh}
  .navbar-collapse{background:#fff;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);padding:1rem}
  .nav-link{padding:.6rem 1rem!important}
  .nav-link::after{display:none}
  .gg-3{grid-template-columns:repeat(2,1fr)}
  .gg-4{grid-template-columns:repeat(2,1fr)}
  .itb img{height:300px}
}
@media(max-width:768px){
  .hero-item{height:55vh;min-height:370px}
  .hero-text h1{font-size:1.9rem}
  .pg-header h1{font-size:2rem}
  .sec{padding:55px 0}
  .gg-2{grid-template-columns:1fr}
  .sig{grid-template-rows:150px 150px}
}
@media(max-width:576px){
  .hero-item{height:50vh}
  .floats{right:12px;bottom:78px}
  .gg-4{grid-template-columns:repeat(2,1fr)}
  .gg-3{grid-template-columns:1fr}
}

/* AOS ANIMATION */
[data-aos]{opacity:0;transition:opacity .6s ease,transform .6s ease}
[data-aos=fade-up]{transform:translateY(30px)}
[data-aos=fade-right]{transform:translateX(-30px)}
[data-aos=fade-left]{transform:translateX(30px)}
[data-aos=zoom-in]{transform:scale(.9)}
[data-aos].ao{opacity:1;transform:none!important}
