:root{--blue:#266DD2;--green:#62B82F;--lblue:#82C0E8;--yellow:#F9BA3E;--purple:#9A4B9F;--dark:#1a2d4a;--body-bg:#f5f9ff;}
body{font-family:'Inter',sans-serif;background:var(--body-bg);color:var(--dark);}
h1,h2,h3,h4{font-family:'Nunito',sans-serif;font-weight:800;}
.section-label{font-family:'Poppins',sans-serif;font-weight:600;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;}
.navbar{border-bottom:1px solid rgba(38,109,210,.12);}
.nav-link{font-family:'Poppins',sans-serif;font-weight:600;font-size:.9rem;color:var(--dark)!important;transition:color .2s;}
.nav-link:hover,.nav-link.active{color:var(--blue)!important;background:rgba(38,109,210,.07);}
.hero-section{background:linear-gradient(135deg,#e4f0fb 0%,#f5f9ff 50%,#eafadf 100%);min-height:85vh;display:flex;align-items:center;}
.hero-badge{background:rgba(38,109,210,.1);color:var(--blue);border-radius:50px;font-family:'Poppins',sans-serif;font-weight:600;font-size:.85rem;}
.hero-title{font-family:'Nunito',sans-serif;font-weight:900;font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.15;color:var(--dark);}
.hero-img{border-radius:1.5rem;box-shadow:0 20px 60px rgba(0,0,0,.15);object-fit:cover;height:440px;width:100%;}
.stats-bar{background:var(--blue);}
.stat-value{font-family:'Nunito',sans-serif;font-weight:900;font-size:2.2rem;color:#fff;line-height:1;}
.stat-label{color:var(--lblue);font-family:'Poppins',sans-serif;font-weight:500;font-size:.9rem;}
.feature-card{border:1px solid #e8f0fb;border-radius:1.25rem;transition:box-shadow .25s,transform .25s;}
.feature-card:hover{box-shadow:0 8px 32px rgba(38,109,210,.12);transform:translateY(-4px);}
.feature-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;}
.section-title{font-family:'Nunito',sans-serif;font-weight:800;font-size:clamp(1.8rem,3.5vw,2.5rem);color:var(--dark);}
.section-sub{color:#5a7a9a;max-width:600px;margin:0 auto;}
.program-card{border-radius:1.5rem;overflow:hidden;border:1px solid #e8f0fb;transition:box-shadow .25s;}
.program-card:hover{box-shadow:0 12px 40px rgba(0,0,0,.1);}
.gallery-img{border-radius:1rem;overflow:hidden;cursor:pointer;position:relative;}
.gallery-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.gallery-img:hover img{transform:scale(1.05);}
.gallery-img .overlay{position:absolute;inset:0;background:rgba(38,109,210,0);transition:background .3s;border-radius:1rem;}
.gallery-img:hover .overlay{background:rgba(38,109,210,.3);}
.schedule-item{background:#fff;border-radius:.75rem;border:1px solid rgba(130,192,232,.2);}
.schedule-dot{width:8px;height:40px;border-radius:4px;}
.form-control,.form-select{border:1.5px solid rgba(130,192,232,.4);background:#f0f7ff;border-radius:.75rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;}
.form-control:focus,.form-select:focus{border-color:var(--blue);box-shadow:0 0 0 .2rem rgba(38,109,210,.15);background:#fff;}
.form-label{font-family:'Poppins',sans-serif;font-weight:600;font-size:.9rem;color:var(--dark);}
.btn-primary{background:var(--blue);border-color:var(--blue);font-family:'Poppins',sans-serif;font-weight:700;border-radius:50px;}
.btn-primary:hover{background:#1e5ab0;border-color:#1e5ab0;}
.btn-success{background:var(--green);border-color:var(--green);font-family:'Poppins',sans-serif;font-weight:700;border-radius:50px;}
.btn-success:hover{background:#52a021;border-color:#52a021;}
.btn-outline-primary{border-color:var(--blue);color:var(--blue);font-family:'Poppins',sans-serif;font-weight:700;border-radius:50px;}
.btn-outline-primary:hover{background:var(--blue);color:#fff;}
.clock-display{font-family:'Nunito',sans-serif;font-weight:900;font-size:3.5rem;color:var(--blue);letter-spacing:-.02em;}
.punch-btn{font-family:'Poppins',sans-serif;font-weight:800;font-size:1.05rem;border-radius:50px;padding:.9rem 3rem;}
.stat-card{border-radius:1.25rem;border:1px solid #e8f0fb;}
.stat-card .stat-num{font-family:'Nunito',sans-serif;font-weight:900;font-size:1.8rem;}
.page-hero{background:linear-gradient(135deg,var(--dark) 0%,var(--blue) 100%);padding:5rem 0 4rem;}
.page-hero h1{font-family:'Nunito',sans-serif;font-weight:900;color:#fff;}
.page-hero p{color:var(--lblue);}
.testimonial-card{background:#f5f9ff;border-radius:1.25rem;border:1px solid rgba(130,192,232,.2);}
.accordion-button{font-family:'Poppins',sans-serif;font-weight:600;color:var(--dark)!important;background:#fff!important;}
.accordion-button:not(.collapsed){color:var(--blue)!important;box-shadow:none!important;}
.accordion-item{border:1px solid rgba(130,192,232,.2)!important;border-radius:.75rem!important;margin-bottom:.5rem;overflow:hidden;}
.text-blue{color:var(--blue)!important;}.text-green{color:var(--green)!important;}.text-yellow{color:var(--yellow)!important;}.text-purple{color:var(--purple)!important;}
.bg-blue{background:var(--blue)!important;}.bg-green{background:var(--green)!important;}
.bg-light-blue{background:#e4f0fb!important;}.bg-light-green{background:#eafadf!important;}.bg-light-yellow{background:#fff8e6!important;}.bg-light-purple{background:#f5e6f7!important;}
.rounded-3xl{border-radius:1.5rem!important;}.shadow-sm-custom{box-shadow:0 2px 12px rgba(0,0,0,.06);}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
@media(max-width:768px){.hero-section{min-height:auto;padding:3rem 0;}.clock-display{font-size:2.5rem;}.stat-value{font-size:1.8rem;}}

.feature-slider{
    overflow:hidden;
    width:100%;
    position:relative;
}

.feature-track{
    display:flex;
    gap:24px;
    width:max-content;
    animation:scrollRight 25s linear infinite;
}

.feature-card-scroll{
    width:300px;
    flex-shrink:0;
}

.feature-card{
    border-radius:18px;
    transition:.3s;
}

.feature-card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 40px rgba(0,0,0,.12);
}

/* Left → Right */
@keyframes scrollRight{
    from{
        transform:translateX(-50%);
    }
    to{
        transform:translateX(0);
    }
}

/* Pause on hover */
.feature-slider:hover .feature-track{
    animation-play-state:paused;
}

/* Mobile */
@media(max-width:768px){
    .feature-card-scroll{
        width:260px;
    }

    .feature-track{
        animation-duration:18s;
    }
}

.gallery-masonry{
    column-count:4;
    column-gap:18px;
}

.gallery-item{
    break-inside:avoid;
    margin-bottom:18px;
}

.gallery-card{
    position:relative;
    overflow:hidden;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.gallery-card img{
    width:100%;
    height:auto;
    display:block;
    transition:.4s;
    cursor: pointer;
}

.gallery-card:hover img{
    transform:scale(1.05);
}

.gallery-overlay{
    position:absolute;
    inset:0;
    display:flex;
    justify-content:flex-end;
    align-items:flex-start;
    padding:12px;
    background:linear-gradient(to top,
    rgba(0,0,0,.35),
    transparent 40%);
    opacity:0;
    transition:.3s;
}

.gallery-card:hover .gallery-overlay{
    opacity:1;
}

.gallery-overlay{
    pointer-events:none;
}

/* Responsive */

@media(max-width:1200px){
    .gallery-masonry{
        column-count:3;
    }
}

@media(max-width:768px){
    .gallery-masonry{
        column-count:2;
    }
}

@media(max-width:576px){
    .gallery-masonry{
        column-count:1;
    }
}
