
:root {
    --vcc-navy-1: #022c44;
    --vcc-navy-2: #01416e;
    --vcc-navy-dark: #041c2c;
    --vcc-orange: #da251d;
    --vcc-yellow: #ffc814;
    --vcc-teal: #2fbf83;
    --vcc-cream: #fefaf0;
    --vcc-ice: #eef3fb;
    --vcc-text: #0b1f2e;
    --vcc-muted: #5b6b78;
    --vcc-font: 'Poppins', system-ui, sans-serif;
    --vcc-script: 'Caveat', cursive;
}

*{ box-sizing: border-box; }

body{
  font-family: var(--vcc-font);
  color: var(--vcc-text);
  background: #fff;
  -webkit-font-smoothing: antialiased;
}

a{ text-decoration: none; }

/* Focus visibility */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline: 3px solid var(--vcc-orange);
  outline-offset: 2px;
}

.vcc-section-title{
  font-weight: 700;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  color: var(--vcc-text);
}
.vcc-accent{ color: var(--vcc-orange); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 11px; }
.vcc-accent-yellow{ color: var(--vcc-yellow); }
.vcc-accent-teal{ color: var(--vcc-teal); }

/* =========================
   TOP BAR
========================= */
.vcc-topbar{
  background: var(--vcc-navy-dark);
  color: #cfe0ea;
  font-size: .8rem;
  padding: 7px 0;
}
.vcc-topbar-row{ display:flex; justify-content:center; align-items:center; gap:10px; flex-wrap:wrap; }
.vcc-topbar-sep{ opacity:.4; }
.vcc-topbar-item a{ color:#fff; font-weight:600; }

/* =========================
   NAVBAR
========================= */
.vcc-navbar{
  background:#fff;
  box-shadow: 0 2px 10px rgba(2,44,68,.06);
  padding: .7rem 0;
  z-index: 1030;
}
.vcc-brand{ max-width:200px; }
.vcc-brand-mark{
  font-weight:800; font-size:1.5rem; letter-spacing:1px; color:var(--vcc-navy-1);
}
.vcc-brand-v{ color: var(--vcc-orange); }
.vcc-brand-sub{ font-size:.6rem; letter-spacing:3px; color:var(--vcc-muted); font-weight:600; }

.vcc-nav-links .nav-link{
  color: var(--vcc-text);
  font-weight: 500;
  display:flex; align-items:center; gap:6px;
  padding: .5rem 1rem;
}
.vcc-nav-links .nav-link i{ width:16px; height:16px; }
.vcc-nav-links .nav-link.active{ color: var(--vcc-orange); font-weight:600; }
.vcc-nav-links .nav-link:hover{ color: var(--vcc-orange); }

.vcc-btn-primary{
  background: var(--vcc-orange);
  color:#fff;
  font-weight:600;
  border-radius: 8px;
  padding: .6rem 1.4rem;
  border: none;
}
    .vcc-btn-primary:hover {
        background: #c11e17;
        color: #fff;
    }

/* =========================
   HERO
========================= */


.carousel-control-prev, .carousel-control-next{ width:5%; opacity:1; }
.vcc-arrow{
  background:#fff; color: var(--vcc-navy-1);
  width:38px; height:38px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.vcc-indicators [data-bs-target]{
  width:8px; height:8px; border-radius:50%; background: var(--vcc-orange); opacity:.4; border:none;
}
.vcc-indicators .active{ opacity:1; }

/* =========================
   DISCLAIMER
========================= */
.vcc-disclaimer{
  background: var(--vcc-navy-dark);
  color:#cfe0ea;
  text-align:center;
  font-size:.75rem;
  padding: .5rem 1rem;
}

/* =========================
   SERVICE CARDS
========================= */
.vcc-services{ background: var(--vcc-ice); padding: 3rem 0; }
.vcc-service-card{
  background:#fff; border-radius: 12px; overflow:hidden;
  box-shadow: 0 6px 20px rgba(2,44,68,.08);
  transition: transform .2s ease;
}
.vcc-service-card:hover{ transform: translateY(-4px); }
.vcc-service-card img{ width:100%; height:320px; object-fit:cover; display:block; }
.vcc-service-label{
  text-align:center; padding: .9rem; font-weight:600; color: var(--vcc-navy-1);
}

/* =========================
   STATS
========================= */
.vcc-stats{ background: var(--vcc-navy-dark); padding: 2.5rem 0; }
.vcc-stat-num{ color: var(--vcc-yellow); font-weight:800; font-size: 2.2rem; }
.vcc-stat-label{ color:#cfe0ea; font-size:.9rem; }

/* =========================
   LEARNERS
========================= */
.vcc-learners{ background: var(--vcc-cream); padding: 3.5rem 0; }
.vcc-learner-card {
    background-color: #fff;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: 0 15px 35px -12px rgba(0, 0, 0, 0.1);
    margin: 10px;
    padding: 5px;
    transition:0.3s;
}
    .vcc-learner-card:hover{
        transform:translateY(-10px);
    }
    .vcc-learner-card h5 {
        margin-top: .8rem;
        font-weight: 700;
        font-size: 1rem;
    }
    .vcc-learner-card p {
        color: var(--vcc-orange);
        font-weight: 600;
        font-size: .82rem;
        padding: 0 15px;
    }

/* =========================
   TOPPERS
========================= */
.vcc-toppers{ background: var(--vcc-cream); padding: 1rem 0 3.5rem; }
.vcc-topper-card {
    padding: 8px;
    box-shadow: 0 15px 35px -12px rgba(0, 0, 0, 0.1);
    background: white;
    border-radius: 24px;
    overflow: hidden;
    transition: 0.3s;
}
    .vcc-topper-card img {
        border-radius: 24px 24px 0 0;
    }
.vcc-topper-card h6 {
    margin-top: .9rem;
    font-weight: 700;
    letter-spacing: .5px;
    font-size: 1rem;
}
    .vcc-topper-card:hover {
        transform: translateY(-10px);
    }
    /* =========================
   REVIEWS
========================= */
    .vcc-reviews {
        background: var(--vcc-ice);
        padding: 3.5rem 0;
    }

    .vcc-review-card {
        background: #fff;
        border-radius: 12px;
        padding: 1.3rem;
        box-shadow: 0 6px 18px rgba(2,44,68,.07);
        height: 100%;
    }

    .vcc-review-head {
        display: flex;
        align-items: center;
        gap: .7rem;
        margin-bottom: .6rem;
    }

    .vcc-review-avatar {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        color: #fff;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    .vcc-review-head h6 {
        margin: 0;
        font-weight: 700;
        font-size: .9rem;
    }

    .vcc-review-head small {
        color: var(--vcc-muted);
    }

    .vcc-google-icon {
        margin-left: auto;
        width: 18px;
        height: 18px;
        color: #4285F4;
    }

    .vcc-stars {
        color: var(--vcc-yellow);
        letter-spacing: 2px;
        margin-bottom: .5rem;
    }

        .vcc-stars .dim {
            color: #e2e2e2;
        }

    .vcc-review-card p {
        font-size: .88rem;
        color: var(--vcc-muted);
        margin: 0;
    }
    /* =========================
   3-STEP
========================= */
    .vcc-steps {
        background: var(--vcc-ice);
        padding: 1rem 0 3.5rem;
    }

    .vcc-step-card {
        background: #fff;
        border-radius: 16px;
        padding: 2rem 1.5rem;
        height: 100%;
        box-shadow: 0 6px 18px rgba(2,44,68,.06);
    }

    .vcc-step-icon {
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: #fde3cc;
        color: var(--vcc-orange);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 1rem;
    }

        .vcc-step-icon i {
            width: 26px;
            height: 26px;
        }

    .vcc-step-card h5 {
        font-weight: 700;
    }

    .vcc-step-card p {
        color: var(--vcc-muted);
        font-size: .9rem;
    }
    /* =========================
   REGISTER FORM
========================= */
    .vcc-register {
        background: var(--vcc-ice);
        padding: 3.5rem 0;
    }

    .vcc-register-panel {
        background: var(--vcc-cream);
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 10px 30px rgba(2,44,68,.08);
    }

    .vcc-register-left {
        padding: 3rem 2.5rem;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

        .vcc-register-left h2 {
            font-weight: 800;
            color: var(--vcc-navy-1);
        }

        .vcc-register-left p {
            color: var(--vcc-muted);
            margin-bottom: 2rem;
        }

    .vcc-perk {
        background: #fff;
        border-radius: 10px;
        padding: .8rem 1rem;
        display: flex;
        align-items: center;
        gap: .6rem;
        font-size: .85rem;
        font-weight: 600;
        height: 100%;
    }

        .vcc-perk i {
            width: 22px;
            height: 22px;
            flex-shrink: 0;
            color: #fff;
            background: var(--vcc-teal);
            border-radius: 50%;
            padding: 3px;
        }

    .vcc-register-progress {
        margin-top: 2rem;
        height: 4px;
        background: #e5ddc8;
        border-radius: 2px;
        width: 60%;
    }

        .vcc-register-progress span {
            display: block;
            width: 30%;
            height: 100%;
            background: #2563eb;
            border-radius: 2px;
        }

    .vcc-register-right {
        background: #fff;
        padding: 3rem 2.5rem;
    }

        .vcc-register-right h3 {
            font-weight: 700;
            color: var(--vcc-navy-1);
        }

    .vcc-register-subtext {
        color: var(--vcc-muted);
        font-size: .88rem;
        margin-bottom: 1.5rem;
    }

    .vcc-input {
        border-radius: 8px;
        border: 1px solid #dde3e8;
        padding: .65rem .9rem;
        font-size: .9rem;
    }

        .vcc-input:focus {
            border-color: var(--vcc-orange);
            box-shadow: 0 0 0 .15rem rgba(244,121,31,.15);
        }

    .vcc-btn-submit {
        background: #016DBD;
        color: #fff;
        font-weight: 700;
        border-radius: 8px;
        padding: .8rem;
    }

        .vcc-btn-submit:hover {
            background: #045897;
            color: #fff;
        }
    /* =========================
   WEBINAR
========================= */
    .vcc-webinar {
        background: linear-gradient(115deg, var(--vcc-navy-1), var(--vcc-navy-2));
        padding: 3.5rem 0;
    }

    .vcc-live-badge {
        display: inline-flex;
        align-items: center;
        gap: .4rem;
        background: #12563a;
        color: #7cf5bd;
        font-weight: 700;
        font-size: .75rem;
        padding: .35rem .9rem;
        border-radius: 20px;
        margin-bottom: 1rem;
    }

    .vcc-dot {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: var(--vcc-teal);
    }

    .vcc-webinar-title {
        color: #fff;
        font-weight: 800;
        font-size: clamp(1.5rem,2.4vw,2rem);
        margin-bottom: 1rem;
    }

    .vcc-webinar p {
        color: #cfe0ea;
    }

    .vcc-webinar-card {
        background: #0d3550;
        border-radius: 14px;
        padding: 1.6rem;
        border: 1px solid #ffffff22;
    }

    .vcc-webinar-card-head {
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #9fb8c8;
        font-size: .7rem;
        letter-spacing: 1px;
        font-weight: 700;
        margin-bottom: 1rem;
    }

        .vcc-webinar-card-head i {
            width: 18px;
            height: 18px;
        }

    .vcc-webinar-card h4 {
        color: #fff;
        font-weight: 700;
        font-size: 1.2rem;
    }

    .vcc-webinar-card p {
        color: #cfe0ea;
        margin-bottom: 1.2rem;
    }

    .vcc-btn-yellow {
        background: var(--vcc-yellow);
        color: var(--vcc-navy-1);
        font-weight: 600;
        border-radius: 8px;
        padding: .6rem 1.4rem;
        border: none;
    }

        .vcc-btn-yellow:hover {
            background: #e9b600;
            color: var(--vcc-navy-1);
        }
    /* =========================
   APP PROMO
========================= */
    .vcc-app-promo {
        padding: 4rem 0;
    }

    .vcc-eyebrow {
        color: var(--vcc-orange);
        font-weight: 700;
        font-size: .8rem;
        letter-spacing: 1.5px;
    }

    .vcc-app-title {
        font-weight: 800;
        font-size: clamp(1.6rem,2.6vw,2.2rem);
        margin: .6rem 0 1.2rem;
        color: var(--vcc-navy-1);
    }

    .vcc-app-list {
        list-style: none;
        padding: 0;
        margin-bottom: 1.6rem;
    }

        .vcc-app-list li {
            display: flex;
            align-items: center;
            gap: .6rem;
            margin-bottom: .8rem;
            color: var(--vcc-muted);
        }

        .vcc-app-list i {
            color: #e0322b;
            width: 20px;
            height: 20px;
            flex-shrink: 0;
        }

    .vcc-store-badges {
        display: flex;
        gap: .9rem;
    }

    .vcc-store-btn {
        background: var(--vcc-navy-dark);
        color: #fff;
        border-radius: 8px;
        padding: .6rem 1rem;
        display: flex;
        align-items: center;
        gap: .6rem;
        font-size: .72rem;
    }

        .vcc-store-btn b {
            font-size: .95rem;
        }

        .vcc-store-btn i {
            width: 22px;
            height: 22px;
        }

    .vcc-phones {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        gap: 1rem;
    }

    .vcc-phone {
        background: var(--vcc-navy-dark);
        border-radius: 20px;
        border: 6px solid #1a1a1a;
    }

    .vcc-phone--center {
        width: 150px;
        height: 300px;
    }

    .vcc-phone--side {
        width: 120px;
        height: 250px;
        opacity: .85;
    }
    /* =========================
   FAQ
========================= */
    .vcc-faq {
        background: var(--vcc-ice);
        padding: 3.5rem 0;
    }

    .vcc-accordion .accordion-item {
        border: none;
        border-radius: 12px !important;
        overflow: hidden;
        margin-bottom: .9rem;
        box-shadow: 0 3px 12px rgba(2,44,68,.06);
    }

    .vcc-accordion .accordion-button {
        font-weight: 700;
        color: var(--vcc-navy-1);
        background: #fff;
        padding: 1rem 1.3rem;
    }

        .vcc-accordion .accordion-button i {
            width: 18px;
            height: 18px;
        }

        .vcc-accordion .accordion-button:not(.collapsed) {
            background: #fff;
            color: var(--vcc-orange);
            box-shadow: none;
        }

        .vcc-accordion .accordion-button:focus {
            box-shadow: none;
        }

    .vcc-accordion .accordion-body {
        color: var(--vcc-muted);
        font-size: .9rem;
    }
    /* =========================
   FOOTER
========================= */
    .vcc-footer {
        background: var(--vcc-navy-dark);
        color: #cfe0ea;
        padding: 3.5rem 0 1.5rem;
    }

    .vcc-footer-brand {
        margin-bottom: 1rem;
    }

        .vcc-footer-brand .vcc-brand-mark {
            color: #fff;
        }

        .vcc-footer-brand .vcc-brand-sub {
            color: #9fb8c8;
        }

    .vcc-footer-text {
        font-size: .85rem;
    }

    .vcc-footer-heading {
        color: #fff;
        font-weight: 700;
        font-size: 1rem;
        border-bottom: 2px solid var(--vcc-orange);
        display: inline-block;
        padding-bottom: .4rem;
        margin-bottom: 1rem;
    }

    .vcc-footer-links {
        list-style: none;
        padding: 0;
    }

        .vcc-footer-links li {
            margin-bottom: .6rem;
        }

        .vcc-footer-links a {
            color: #cfe0ea;
            font-size: .9rem;
        }

            .vcc-footer-links a:hover {
                color: var(--vcc-orange);
            }

    .vcc-social {
        display: flex;
        gap: .7rem;
        margin-top: 1rem;
    }

        .vcc-social a {
            width: 34px;
            height: 34px;
            border-radius: 50%;
            background: #0d3550;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
        }

            .vcc-social a i {
                width: 16px;
                height: 20px;
            }

            .vcc-social a:hover {
                background: var(--vcc-orange);
            }

    .vcc-footer-rule {
        border-color: #ffffff22;
        margin: 2rem 0 1.2rem;
    }

    .vcc-footer-bottom {
        font-size: .8rem;
        color: #9fb8c8;
    }
    /* =========================
   RESPONSIVE
========================= */
    @media (max-width: 991.98px) {
        .vcc-hero-inner {
            grid-template-columns: 1fr;
            text-align: center;
        }

        .vcc-hero-mid {
            border-left: none;
            padding-left: 0;
            border-top: 1px solid #ffffff33;
            padding-top: 1.2rem;
        }

        .vcc-hero-features {
            justify-content: center;
        }

        .vcc-hero-price-row {
            justify-content: center;
        }

        .vcc-hero-right {
            text-align: center;
        }

        .vcc-register-left, .vcc-register-right {
            padding: 2rem 1.5rem;
        }
    }

    @media (max-width: 575.98px) {
        .vcc-hero-title {
            font-size: 1.5rem;
        }

        .vcc-stat-num {
            font-size: 1.7rem;
        }

        .vcc-phones {
            flex-wrap: wrap;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        * {
            transition: none !important;
            animation: none !important;
        }
    }

.owl-stage-outer {
    padding-top: 30px;
    padding-bottom: 40px;
}