:root{--primary:#0d6efd;--secondary:#ffc107;--ink:#102548;--light:#f6f8fc;--text:#212529;--muted:#657085}*{box-sizing:border-box}body{font-family:Manrope,sans-serif;color:var(--text);margin:0}h1,h2,h3,.navbar-brand strong{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800}p{color:var(--muted);line-height:1.75}.topbar{background:var(--ink);color:#dce5f4;padding:.55rem 0;font-size:.75rem}.navbar{min-height:74px}.navbar-brand img{border-radius:9px}.navbar-brand small{display:block;font-size:.58rem;letter-spacing:.16em;color:var(--muted)}.nav-link{font-weight:700;border-radius:6px;padding:.65rem .8rem!important}.nav-link:hover,.nav-link.active{color:var(--primary)!important;background:#e9f2ff}.hero{min-height:680px;background:linear-gradient(90deg,rgba(16,37,72,.96),rgba(16,37,72,.62),transparent),url('../images/banner.jpg') center/cover}.hero-copy{max-width:730px;color:white}.hero h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.08}.hero p{font-size:1.1rem;color:#e1e8f3;max-width:650px}.hero .badge{background:rgba(255,255,255,.13);padding:.75rem 1rem;color:white}.btn{border-radius:7px;font-weight:800;padding:.75rem 1.2rem}.section{padding:80px 0}.eyebrow{color:var(--primary);font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.section h2{font-size:clamp(2rem,4vw,2.8rem);margin:.6rem 0 1rem}.section-title{text-align:center;max-width:650px;margin:0 auto 42px}.feature-card,.value-card,.facility-card,.contact-form{background:#fff;border:1px solid #e5eaf1;border-radius:9px;padding:1.5rem;box-shadow:0 12px 32px rgba(16,37,72,.07);transition:.25s}.feature-card:hover,.activity-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(16,37,72,.13)}.feature-card>i{display:grid;place-items:center;width:50px;height:50px;border-radius:8px;background:#e9f2ff;color:var(--primary);font-size:1.25rem;margin-bottom:1rem}.feature-card h3,.activity-card h3{font-size:1.15rem}.stats{padding:55px 0;background:var(--primary);color:white}.stats strong{display:block;font:800 2.5rem 'Plus Jakarta Sans'}.stats span{color:#dbe8ff}.principal,.principal-band{background:var(--ink);color:white;border-radius:10px;overflow:hidden}.principal img,.principal-band img{width:100%;height:100%;max-height:580px;object-fit:cover;object-position:top}.principal blockquote{font:700 clamp(1.5rem,3vw,2.2rem)/1.5 'Plus Jakarta Sans'}.principal p,.principal small,.principal-band p{color:#bdc9da}.activity-card{background:white;border-radius:9px;overflow:hidden;box-shadow:0 10px 28px rgba(16,37,72,.09);transition:.25s}.activity-card img{width:100%;height:230px;object-fit:cover;transition:.4s}.activity-card:hover img{transform:scale(1.04)}.activity-card small{color:var(--primary);font-weight:800;letter-spacing:.12em}.gallery-preview{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}.cta{padding:55px 0;background:var(--primary);color:white}.cta p{color:#dbe8ff;margin-bottom:0}.page-banner{padding:65px 0;background:linear-gradient(100deg,var(--ink),var(--primary));color:white}.page-banner a,.page-banner p{color:#dbe8ff;text-decoration:none}.value-card,.facility-card{text-align:center;height:100%}.value-card i,.facility-card i{display:block;color:var(--primary);font-size:1.5rem;margin-bottom:.8rem}.gallery-button{border:0;padding:0;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:8px;box-shadow:0 8px 20px rgba(16,37,72,.12)}.gallery-button img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery-button:hover img{transform:scale(1.08)}.contact-detail{display:flex;gap:1rem;padding:1rem;border:1px solid #e4e8ef;border-radius:8px;margin-top:.8rem}.contact-detail>i{display:grid;place-items:center;width:44px;height:44px;background:#e9f2ff;color:var(--primary);border-radius:7px}.contact-detail small,.contact-detail strong{display:block}.contact-form{background:var(--light);padding:2rem}.form-control{padding:.8rem}.map{width:100%;height:420px;border:0;display:block}footer{background:var(--ink);color:white}footer h3{font-size:1.1rem;margin-bottom:1.2rem}footer p,footer a{color:#b9c5d7;font-size:.88rem;text-decoration:none}footer>div a{display:block;margin-bottom:.55rem}footer i{color:var(--secondary)}.socials{display:flex;gap:.5rem}.socials a{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.18);border-radius:6px}.copyright{border-top:1px solid rgba(255,255,255,.12);color:#aebbd0;font-size:.8rem}@media(max-width:767px){.section{padding:58px 0}.hero{min-height:610px}.hero h1{font-size:2.65rem}.principal img{height:420px}.gallery-filters .btn{font-size:.78rem;padding:.55rem .8rem}}
