


@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

:root {
    --bs-primary: #0b2a6b;
    --bs-secondary: #f89200;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;


    --ink:#132A2C;
    --paper:#EEF1EC;
    --paper-raise:#FFFFFF;
    --stamp-green:#1F6F5C;
    --stamp-green-dim:#DCEAE5;
    --stamp-amber:#B0752B;
    --stamp-amber-dim:#F3E3CE;
    --stamp-red:#9C3B34;
    --stamp-red-dim:#F1DAD7;
    --line:#CDD3CC;
    --muted:#5B6A63;


      --navy:#0B2A6B;
    --navy-deep:#071c47;
    --orange:#FF6B35;
    --red:#E63946;
    --paper:#F7F7F5;
    --card:#FFFFFF;
    --grey:#666666;
    --grey-light:#9a9a96;
    --line:#E4E3DD;
    --radius:14px;
}


.gvc-logo img{
    width: 150px;
}

/* ============================================================
   Gateway Visa Consultants - Custom Styles
   All classes prefixed with 'gvc-' to avoid Bootstrap conflicts
   ============================================================ */

/* ---------- Base & Typography ---------- */



body {
    font-family: 'Open Sans', sans-serif;
    color: #666666;
    background: #FFFFFF;
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;;
    font-weight: 600;
    color: #0B2A6B;
}

.gvc-section-title {
    font-weight: 700;
    letter-spacing: -0.02em;
}

/* ---------- Buttons ---------- */
.gvc-btn-gradient {
    background: linear-gradient(135deg, #F89200 0%, #E31F29 100%);
    color: #FFFFFF !important;
    border: none;
    transition: all 0.3s ease;
    background-size: 200% 200%;
    box-shadow: 0 4px 15px rgba(232, 30, 40, 0.3);
}

.gvc-btn-gradient:hover {
    background-position: right center;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(232, 30, 40, 0.4);
    color: #FFFFFF !important;
}

.gvc-btn-gradient:active,
.gvc-btn-gradient:focus {
    background: linear-gradient(135deg, #F89200 0%, #E31F29 100%);
    color: #FFFFFF !important;
    box-shadow: 0 4px 15px rgba(232, 30, 40, 0.3);
}

.gvc-client  {
    background: #0B2A6B;
    color: #FFFFFF !important;
    border: none;
    transition: all 0.3s ease;
}
.gvc-client:hover  {
    background: #FFFFFF;
    color: #0B2A6B !important;
    border: 1px solid #0B2A6B;
    transition: all 0.3s ease;
}

.btn-light {
  background: #FFFFFF;
  color: #0B2A6B !important;
  border: 3px solid #0B2A6B !important;
  transition: all 0.3s ease;
}

.btn-light:hover {
  background: #0B2A6B;
  color: #FFFFFF !important;
  border: 3px solid #0B2A6B;
  transition: all 0.3s ease;
}

/* ---------- Navbar ---------- */
.gvc-navbar {
    background-color: var(--bs-light);
    box-shadow: 0 2px 30px rgba(11, 42, 107, 0.15);
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.gvc-navbar .navbar-nav .nav-link {
    color: var(--bs-primary) !important;
    font-weight: 500;
    padding: 0.5rem 1rem;
    transition: color 0.2s ease;
    font-size: 0.95rem;
}

.gvc-navbar .navbar-nav .nav-link:hover,
.gvc-navbar .navbar-nav .nav-link.active {
    color: var(--bs-secondary) !important;
}

.gvc-navbar .navbar-brand {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    letter-spacing: -0.5px;
}

/* Mega Menu */
.gvc-mega-dropdown .dropdown-menu {
    border: none;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
    padding: 1.5rem 2rem !important;
    margin-top: 0.5rem;
}

.gvc-mega-title {
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    color: #0B2A6B;
    margin-bottom: 0.75rem;
    text-transform: uppercase;
}

.gvc-mega-link {
    color: #666666;
    text-decoration: none;
    font-size: 0.9rem;
    padding: 0.25rem 0;
    display: inline-block;
    transition: color 0.2s ease;
}

.gvc-mega-link:hover {
    color: #F89200;
}

/* ---------- Hero Carousel ---------- */
.gvc-hero-carousel .carousel-item {
    background-size: cover !important;
    background-position: center !important;
}

.gvc-hero-title {
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.2);
}

.gvc-hero-carousel .carousel-control-prev-icon,
.gvc-hero-carousel .carousel-control-next-icon {
    background-color: rgba(11, 42, 107, 0.5);
    border-radius: 50%;
    padding: 20px;
    background-size: 60% 60%;
}

.gvc-hero-carousel .carousel-indicators button {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #FFFFFF;
    margin: 0 6px;
}

.gvc-hero-carousel .carousel-indicators .active {
    background: #F89200;
    border-color: #F89200;
}

/* ---------- Cards & Containers ---------- */
.gvc-service-card,
.gvc-icon-card,
.gvc-dest-card,
.gvc-testimonial-card,
.gvc-review-card,
.gvc-success-card,
.gvc-related-card,
.gvc-info-card,
.gvc-contact-reason,
.gvc-value-card,
.gvc-trust-card,
.gvc-feature-card,
.gvc-visa-type-card,
.gvc-dest-card-student,
.gvc-recommend-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: none !important;
    background: #FFFFFF;
}

.gvc-service-card:hover,
.gvc-dest-card:hover,
.gvc-review-card:hover,
.gvc-success-card:hover,
.gvc-related-card:hover,
.gvc-info-card:hover,
.gvc-contact-reason:hover,
.gvc-value-card:hover,
.gvc-trust-card:hover,
.gvc-feature-card:hover,
.gvc-visa-type-card:hover,
.gvc-dest-card-student:hover,
.gvc-recommend-card:hover,
.gvc-icon-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
}

/* ---------- Why Choose Gateway (6 icon cards) ---------- */
.gvc-icon-card {
    border-radius: 16px;
    padding: 1.5rem 1rem;
    background: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.gvc-icon-card i {
    font-size: 2.5rem;
    background: linear-gradient(135deg, #F89200, #E31F29);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ---------- Step circles ---------- */
.gvc-step-icon,
.gvc-step-circle {
    background: #FFFFFF;
    border-radius: 50%;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gvc-step-icon:hover,
.gvc-step-circle:hover {
    transform: scale(1.05);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.1);
}

/* ---------- Testimonials ---------- */
.gvc-testimonial-card {
    border-radius: 20px;
    padding: 2rem;
    background: #FFFFFF;
}

.gvc-testimonial-card .bi-star-fill {
    font-size: 1.1rem;
    margin-right: 2px;
}

/* ---------- FAQ Accordion ---------- */
.gvc-faq .accordion-item,
.gvc-faq-student .accordion-item,
.gvc-faq-visit .accordion-item,
.gvc-faq-testimonials .accordion-item,
.gvc-faq-contact .accordion-item {
    border: none;
    margin-bottom: 0.75rem;
    border-radius: 12px !important;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
}

.gvc-faq .accordion-button,
.gvc-faq-student .accordion-button,
.gvc-faq-visit .accordion-button,
.gvc-faq-testimonials .accordion-button,
.gvc-faq-contact .accordion-button {
    font-weight: 600;
    color: #0B2A6B;
    background: #FFFFFF;
    padding: 1.25rem 1.5rem;
    border: none;
    font-family: 'Poppins', sans-serif;
}

.gvc-faq .accordion-button:not(.collapsed),
.gvc-faq-student .accordion-button:not(.collapsed),
.gvc-faq-visit .accordion-button:not(.collapsed),
.gvc-faq-testimonials .accordion-button:not(.collapsed),
.gvc-faq-contact .accordion-button:not(.collapsed) {
    background: #FFFFFF;
    color: #0B2A6B;
    box-shadow: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.gvc-faq .accordion-button:focus,
.gvc-faq-student .accordion-button:focus,
.gvc-faq-visit .accordion-button:focus,
.gvc-faq-testimonials .accordion-button:focus,
.gvc-faq-contact .accordion-button:focus {
    box-shadow: none;
    border-color: transparent;
}

.gvc-faq .accordion-body,
.gvc-faq-student .accordion-body,
.gvc-faq-visit .accordion-body,
.gvc-faq-testimonials .accordion-body,
.gvc-faq-contact .accordion-body {
    color: #666666;
    padding: 1.25rem 1.5rem;
    background: #FFFFFF;
}

/* ---------- Breadcrumb ---------- */
.gvc-page-banner .breadcrumb {
    background: transparent;
    padding: 0;
    margin-bottom: 0.5rem;
}

.gvc-page-banner .breadcrumb-item a {
    color: #0B2A6B;
    text-decoration: none;
    font-weight: 500;
}

.gvc-page-banner .breadcrumb-item.active {
    color: #666666;
}

.gvc-page-banner .breadcrumb-item + .breadcrumb-item::before {
    content: "›";
    color: #666666;
    font-size: 1.2rem;
    line-height: 1;
}

/* ---------- Contact Form ---------- */
.gvc-contact-form-section .form-control,
.gvc-contact-form-section .form-select {
    border-radius: 12px;
    border: 1px solid #e0e4e8;
    padding: 0.75rem 1rem;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    font-family: 'Inter', sans-serif;
}

.gvc-contact-form-section .form-control:focus,
.gvc-contact-form-section .form-select:focus {
    border-color: #F89200;
    box-shadow: 0 0 0 4px rgba(248, 146, 0, 0.08);
}

.gvc-contact-form-section .form-label {
    font-size: 0.9rem;
    margin-bottom: 0.35rem;
}

/* ---------- Map placeholder ---------- */
.gvc-map-placeholder {
    border-radius: 20px;
    background: #f0f2f5;
    border: 2px dashed #d0d5dd;
}

/* ---------- Floating Elements ---------- */
/* ==========================================================
   Gateway Visa Consultants - Floating WhatsApp Button
   Class Prefix: gvc-
   ========================================================== */

.gvc-floating-whatsapp {
    position: fixed;
    left: 24px;
    bottom: 24px;
    width: 62px;
    height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    text-decoration: none;
    box-shadow: 0 10px 30px rgba(37, 211, 102, 0.35);
    z-index: 1055;
    transition: all 0.3s ease;
    animation: gvcWhatsappFloat 2s ease-in-out infinite;
}

.gvc-floating-whatsapp:hover {
    color: #fff;
    transform: translateY(-4px) scale(1.08);
    box-shadow: 0 16px 36px rgba(37, 211, 102, 0.45);
}

.gvc-floating-whatsapp i {
    font-size: 2rem;
    line-height: 1;
}

/* Optional Online Badge */
.gvc-floating-whatsapp::before {
    content: "Chat with us";
    position: absolute;
    right: 78px;
    white-space: nowrap;
    background: #ffffff;
    color: #0B2A6B;
    padding: 8px 14px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(0,0,0,.12);
    opacity: 0;
    visibility: hidden;
    transform: translateX(10px);
    transition: all .3s ease;
}

.gvc-floating-whatsapp:hover::before {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

/* Small notification dot */
.gvc-floating-whatsapp::after {
    content: "";
    position: absolute;
    top: 6px;
    right: 6px;
    width: 12px;
    height: 12px;
    background: #28a745;
    border: 2px solid #fff;
    border-radius: 50%;
}

/* Floating Animation */
@keyframes gvcWhatsappFloat {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-6px);
    }
    100% {
        transform: translateY(0);
    }
}

/* Mobile */
@media (max-width: 768px) {
    .gvc-floating-whatsapp {
        width: 56px;
        height: 56px;
        right: 18px;
        bottom: 18px;
    }

    .gvc-floating-whatsapp i {
        font-size: 1.8rem;
    }

    .gvc-floating-whatsapp::before {
        display: none;
    }
}

.gvc-back-top {
    z-index: 1040;
}

.gvc-back-top .btn {
    background: #0B2A6B;
    border: none;
    transition: all 0.3s ease;
}

.gvc-back-top .btn:hover {
    background: #F89200;
    transform: translateY(-3px);
}

/* ---------- Sticky Mobile CTA ---------- */
.gvc-sticky-mobile {
    display: none;
}

@media (max-width: 576px) {
    .gvc-sticky-mobile {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1050;
        background: #FFFFFF;
        padding: 10px 12px;
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
        justify-content: space-around;
        align-items: center;
        gap: 6px;
    }
    
    .gvc-sticky-mobile .btn {
        flex: 1;
        margin: 0 2px;
        border-radius: 30px;
        font-size: 0.8rem;
        padding: 10px 0;
        font-weight: 600;
        text-align: center;
    }
    
    .gvc-sticky-mobile .btn-success {
        background: #25D366;
        border-color: #25D366;
        color: #fff;
    }
    
    .gvc-sticky-mobile .btn-outline-secondary {
        border-color: #0B2A6B;
        color: #0B2A6B;
    }
    
    .gvc-sticky-mobile .btn-outline-secondary:hover {
        background: #0B2A6B;
        color: #fff;
    }
}

/* ---------- Destination Card Zoom ---------- */
.gvc-dest-card:hover img,
.gvc-dest-card-student:hover img {
    transform: scale(1.04);
    transition: transform 0.5s ease;
}

.gvc-dest-card img,
.gvc-dest-card-student img {
    transition: transform 0.5s ease;
}

/* ---------- Success Stories ---------- */
.gvc-success-card {
    border-left: 4px solid #F89200;
}

/* ---------- Tab Buttons (Services) ---------- */
.gvc-tab-btn {
    border-radius: 30px !important;
    padding: 0.6rem 1.8rem !important;
    font-weight: 600;
    color: #0B2A6B;
    background: #f0f2f5;
    border: none;
    transition: all 0.3s ease;
}

.gvc-tab-btn:hover {
    background: #e2e6ed;
}

.gvc-tab-btn.active {
    background: linear-gradient(135deg, #F89200, #E31F29) !important;
    color: #FFFFFF !important;
}

/* ---------- Visa Type Cards ---------- */
.gvc-visa-type-card {
    border-top: 4px solid #F89200;
    border-radius: 16px;
}

/* ---------- Trust Banner Badges ---------- */
.gvc-trust-banner .badge {
    border-radius: 30px;
    padding: 0.6rem 1.5rem;
    font-weight: 500;
    color: #0B2A6B;
    background: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.06);
    font-size: 0.9rem;
}

/* ---------- Filter Buttons ---------- */
.gvc-filter-btn {
    border-radius: 30px;
    padding: 0.4rem 1.2rem;
    font-weight: 500;
    font-size: 0.85rem;
    transition: all 0.3s ease;
    border: 1px solid #d0d5dd;
    background: #f8f9fa;
    color: #0B2A6B;
}

.gvc-filter-btn:hover {
    background: #e2e6ed;
    border-color: #b0b5bd;
}

.gvc-filter-btn.active {
    background: linear-gradient(135deg, #F89200, #E31F29);
    color: #FFFFFF;
    border-color: transparent;
}

/* ---------- Responsive spacing ---------- */
@media (max-width: 768px) {
    .gvc-hero-carousel .carousel-inner {
        height: 500px !important;
    }
    
    .gvc-page-banner h1 {
        font-size: 2.2rem !important;
    }
    
    .gvc-navbar .navbar-brand {
        font-size: 1.4rem !important;
    }
}

@media (max-width: 576px) {
    .gvc-hero-carousel .carousel-inner {
        height: 450px !important;
    }
    
    .gvc-page-banner h1 {
        font-size: 1.8rem !important;
    }
    
    .gvc-page-banner .lead {
        font-size: 1rem !important;
    }
    
    .gvc-stats .display-4 {
        font-size: 2.2rem !important;
    }
}

/* ---------- Image placeholders ---------- */
.gvc-placeholder-img {
    /* background: #e9ecf5; */
    border-radius: 16px;
    overflow: hidden;
    min-height: 200px;
}

.gvc-placeholder-img i {
    opacity: 0.6;
}

/* ---------- Smooth scrolling ---------- */
html {
    scroll-behavior: smooth;
}

/* ---------- Footer ---------- */
.gvc-footer a {
    transition: color 0.2s ease;
}

.gvc-footer a:hover {
    color: #F89200 !important;
}

.gvc-footer hr {
    opacity: 0.15;
}

/* ---------- Miscellaneous ---------- */
img[loading="lazy"] {
    background: #f0f2f5;
}

/* Ensure Bootstrap icons are properly sized */
.bi {
    vertical-align: middle;
}

/* Card shadow defaults */
.shadow-sm {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
}

.shadow {
    box-shadow: 0 8px 35px rgba(0, 0, 0, 0.08) !important;
}

.shadow-lg {
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1) !important;
}

/* Rounded corners consistency */
.rounded-4 {
    border-radius: 16px !important;
}

/* Gradient text utility (for icons) */
.gvc-gradient-text {
    background: linear-gradient(135deg, #F89200, #E31F29);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Counter animation placeholder */
.gvc-counter {
    font-weight: 700;
}

/* Dark overlay for CTA sections */
.gvc-cta-student,
.gvc-cta-visit,
.gvc-cta-about,
.gvc-closing-cta,
.gvc-cta-testimonials,
.gvc-cta-contact {
    background-size: cover !important;
    background-position: center !important;
}

/* Card hover lift (additional utility) */
.gvc-hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.gvc-hover-lift:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.07) !important;
}

.gvc-business-hero {
            min-height: 600px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.85) 0%, rgba(11, 42, 107, 0.6) 100%), url('') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-business-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-business-hero h1 {
            font-size: 3.5rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-business-hero .lead {
            font-size: 1.3rem;
            font-weight: 400;
        }
        .gvc-business-hero .btn-outline-light {
            border-width: 2px;
        }
        .gvc-business-hero .btn-outline-light:hover {
            background: #fff;
            color: #0B2A6B;
        }

        .gvc-cta-business {
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.9), rgba(11, 42, 107, 0.7)), url('') center/cover no-repeat;
        }


        /* Dependent Visa Page Specific Styles – all gvc- prefixed */
        .gvc-dependent-hero {
            min-height: 600px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.82) 0%, rgba(11, 42, 107, 0.55) 100%),
                url('') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-dependent-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-dependent-hero h1 {
            font-size: 3.5rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-dependent-hero .lead {
            font-size: 1.3rem;
            font-weight: 400;
        }
        .gvc-dependent-hero .btn-outline-light {
            border-width: 2px;
        }
        .gvc-dependent-hero .btn-outline-light:hover {
            background: #fff;
            color: #0B2A6B;
        }
        .gvc-family-card,
        .gvc-dest-card,
        .gvc-service-card,
        .gvc-step-card,
        .gvc-feature-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: none !important;
            background: #fff;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
        }
        .gvc-family-card:hover,
        .gvc-dest-card:hover,
        .gvc-service-card:hover,
        .gvc-step-card:hover,
        .gvc-feature-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
        }
        .gvc-feature-card i {
            font-size: 2.5rem;
            background: linear-gradient(135deg, #F89200, #E31F29);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .gvc-step-icon {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            background: #fff;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 1rem;
            transition: transform 0.3s ease;
        }
        .gvc-step-icon i {
            font-size: 2rem;
            color: #F89200;
        }
        .gvc-step-card:hover .gvc-step-icon {
            transform: scale(1.05);
        }
        .gvc-cta-dependent {
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.9), rgba(11, 42, 107, 0.7)),
                url('') center/cover no-repeat;
        }

        /* Family Reunification Page Specific Styles – all gvc- prefixed */
        .gvc-family-hero {
            min-height: 600px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.80) 0%, rgba(11, 42, 107, 0.50) 100%),
                url('') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-family-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-family-hero h1 {
            font-size: 3.5rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-family-hero .lead {
            font-size: 1.3rem;
            font-weight: 400;
        }
        .gvc-family-hero .btn-outline-light {
            border-width: 2px;
        }
        .gvc-family-hero .btn-outline-light:hover {
            background: #fff;
            color: #0B2A6B;
        }
        .gvc-challenge-card {
            border-left: 4px solid #E31F29;
            background: #fff8f8;
        }
        .gvc-family-card,
        .gvc-dest-card,
        .gvc-service-card,
        .gvc-step-card,
        .gvc-feature-card,
        .gvc-reason-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: none !important;
            background: #fff;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
        }
        .gvc-family-card:hover,
        .gvc-dest-card:hover,
        .gvc-service-card:hover,
        .gvc-step-card:hover,
        .gvc-feature-card:hover,
        .gvc-reason-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
        }
        .gvc-feature-card i,
        .gvc-reason-card i {
            font-size: 2.5rem;
            background: linear-gradient(135deg, #F89200, #E31F29);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .gvc-step-icon {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            background: #fff;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 1rem;
            transition: transform 0.3s ease;
        }
        .gvc-step-icon i {
            font-size: 2rem;
            color: #F89200;
        }
        .gvc-step-card:hover .gvc-step-icon {
            transform: scale(1.05);
        }
        .gvc-cta-family {
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.9), rgba(11, 42, 107, 0.7)),
                url('') center/cover no-repeat;
        }


        /* Student Visa Page Specific Styles – all gvc- prefixed */
        .gvc-student-hero {
            min-height: 600px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.82) 0%, rgba(11, 42, 107, 0.50) 100%),
                url('') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-student-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-student-hero h1 {
            font-size: 3.5rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-student-hero .lead {
            font-size: 1.3rem;
            font-weight: 400;
        }
        .gvc-student-hero .btn-outline-light {
            border-width: 2px;
        }
        .gvc-student-hero .btn-outline-light:hover {
            background: #fff;
            color: #0B2A6B;
        }
        .gvc-benefit-card,
        .gvc-dest-card,
        .gvc-service-card,
        .gvc-step-card,
        .gvc-feature-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: none !important;
            background: #fff;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
        }
        .gvc-benefit-card:hover,
        .gvc-dest-card:hover,
        .gvc-service-card:hover,
        .gvc-step-card:hover,
        .gvc-feature-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
        }
        .gvc-feature-card i {
            font-size: 2.5rem;
            background: linear-gradient(135deg, #F89200, #E31F29);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .gvc-step-icon {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            background: #fff;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 1rem;
            transition: transform 0.3s ease;
        }
        .gvc-step-icon i {
            font-size: 2rem;
            color: #F89200;
        }
        .gvc-step-card:hover .gvc-step-icon {
            transform: scale(1.05);
        }
        .gvc-cta-student {
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.9), rgba(11, 42, 107, 0.7)),
                url('') center/cover no-repeat;
        }

        /* Visit Visa Page Specific Styles – all gvc- prefixed */
        .gvc-visit-hero {
            min-height: 600px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.80) 0%, rgba(11, 42, 107, 0.45) 100%),
                url('') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-visit-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-visit-hero h1 {
            font-size: 3.5rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-visit-hero .lead {
            font-size: 1.3rem;
            font-weight: 400;
        }
        .gvc-visit-hero .btn-outline-light {
            border-width: 2px;
        }
        .gvc-visit-hero .btn-outline-light:hover {
            background: #fff;
            color: #0B2A6B;
        }
        .gvc-feature-card-visit,
        .gvc-dest-card-visit,
        .gvc-service-card-visit,
        .gvc-step-card-visit,
        .gvc-benefit-card-visit {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: none !important;
            background: #fff;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
        }
        .gvc-feature-card-visit:hover,
        .gvc-dest-card-visit:hover,
        .gvc-service-card-visit:hover,
        .gvc-step-card-visit:hover,
        .gvc-benefit-card-visit:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important;
        }
        .gvc-feature-card-visit i {
            font-size: 2.5rem;
            background: linear-gradient(135deg, #F89200, #E31F29);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .gvc-benefit-card-visit i {
            font-size: 2rem;
            color: #F89200;
        }
        .gvc-step-icon-visit {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            background: #fff;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 1rem;
            transition: transform 0.3s ease;
        }
        .gvc-step-icon-visit i {
            font-size: 2rem;
            color: #F89200;
        }
        .gvc-step-card-visit:hover .gvc-step-icon-visit {
            transform: scale(1.05);
        }
        .gvc-cta-visit {
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.9), rgba(11, 42, 107, 0.7)),
                url('') center/cover no-repeat;
        }




        /* Consultation Page Specific Styles – all gvc- prefixed */
        .gvc-consult-hero {
            min-height: 480px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.82) 0%, rgba(11, 42, 107, 0.50) 100%),
                url('') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-consult-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-consult-hero h1 {
            font-size: 3.2rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-consult-hero .lead {
            font-size: 1.2rem;
            font-weight: 400;
        }
        .gvc-consult-hero .btn-outline-light {
            border-width: 2px;
        }
        .gvc-consult-hero .btn-outline-light:hover {
            background: #fff;
            color: #0B2A6B;
        }
        .gvc-consult-form-card {
            border: none;
            border-radius: 20px;
            box-shadow: 0 8px 40px rgba(0, 0, 0, 0.06);
            background: #fff;
            padding: 2rem;
        }
        .gvc-consult-form-card .form-control,
        .gvc-consult-form-card .form-select {
            border-radius: 12px;
            border: 1px solid #e0e4e8;
            padding: 0.7rem 1rem;
            transition: border-color 0.3s ease, box-shadow 0.3s ease;
            font-size: 0.95rem;
        }
        .gvc-consult-form-card .form-control:focus,
        .gvc-consult-form-card .form-select:focus {
            border-color: #F89200;
            box-shadow: 0 0 0 4px rgba(248, 146, 0, 0.08);
        }
        .gvc-consult-form-card .form-label {
            font-weight: 500;
            color: #0B2A6B;
            font-size: 0.9rem;
        }
        .gvc-consult-form-card .form-check-label {
            font-size: 0.9rem;
            color: #666;
        }
        .gvc-consult-form-card .btn {
            font-weight: 600;
            padding: 0.75rem 2rem;
            border-radius: 30px;
        }
        .gvc-feature-card-consult {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: none !important;
            background: #fff;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
            padding: 1.5rem 1rem;
            text-align: center;
            height: 100%;
        }
        .gvc-feature-card-consult:hover {
            transform: translateY(-6px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06) !important;
        }
        .gvc-feature-card-consult i {
            font-size: 2.2rem;
            background: linear-gradient(135deg, #F89200, #E31F29);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .gvc-contact-card {
            border: none;
            border-radius: 16px;
            background: #fff;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
            padding: 1.5rem;
            text-align: center;
            height: 100%;
            transition: transform 0.3s ease;
        }
        .gvc-contact-card:hover {
            transform: translateY(-4px);
        }
        .gvc-contact-card i {
            font-size: 2rem;
            color: #F89200;
        }
        .gvc-cta-consult {
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.9), rgba(11, 42, 107, 0.7)),
                url('') center/cover no-repeat;
        }


        /* Visa Eligibility */




        .wrap{
  max-width:640px;
  margin:0 auto;
  padding:28px 20px 60px;
}

/* Ticket header strip */
.ticket-head{
  background:var(--ink);
  color:var(--paper);
  border-radius:14px 14px 0 0;
  padding:22px 24px 26px;
  position:relative;
  overflow:hidden;
}
.ticket-head::after{
  content:"";
  position:absolute;
  bottom:-9px;left:0;right:0;height:18px;
  background-image:radial-gradient(circle 9px, var(--paper) 9px, transparent 10px);
  background-size:24px 18px;
  background-position:0 0;
  background-repeat:repeat-x;
}
.brand-eyebrow{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:#9FC9BE;margin:0 0 6px;
}
.brand-title{
  font-family:'Fraunces',serif;
  font-weight:600;
  font-size:26px;
  margin:0;
  letter-spacing:-.01em;
}
.brand-sub{
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;color:#B9CDC7;margin:8px 0 0;
}

.card{
  background:var(--paper-raise);
  border-radius:0 0 14px 14px;
  padding:30px 26px 26px;
  box-shadow:0 10px 30px -18px rgba(19,42,44,.35);
}

/* progress stamps */
.progress-row{
  display:flex;align-items:center;gap:6px;margin-bottom:26px;flex-wrap:wrap;
}
.stamp-dot{
  width:11px;height:11px;border-radius:50%;
  border:1.5px solid var(--line);
  transition:all .25s ease;
  flex:none;
}
.stamp-dot.done{background:var(--stamp-green);border-color:var(--stamp-green);}
.stamp-dot.current{
  border-color:var(--stamp-green);
  box-shadow:0 0 0 3px var(--stamp-green-dim);
}
.progress-label{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;color:var(--muted);margin-left:auto;letter-spacing:.05em;
}

.q-eyebrow{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;color:var(--stamp-green);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;
}
.q-title{
  font-family:'Fraunces',serif;
  font-size:21px;font-weight:600;line-height:1.3;margin:0 0 20px;
  color:var(--ink);
}

.options{display:flex;flex-direction:column;gap:9px;margin-bottom:22px;}
.opt{
  display:flex;align-items:center;gap:12px;
  padding:13px 16px;
  border:1.5px solid var(--line);
  border-radius:9px;
  cursor:pointer;
  background:var(--paper-raise);
  font-size:14.5px;
  transition:border-color .15s, background .15s;
}
.opt:hover{border-color:var(--stamp-green);}
.opt.selected{
  border-color:var(--stamp-green);
  background:var(--stamp-green-dim);
  font-weight:500;
}
.opt .mark{
  width:16px;height:16px;border-radius:50%;
  border:1.5px solid var(--line);
  flex:none;position:relative;
}
.opt.selected .mark{border-color:var(--stamp-green);}
.opt.selected .mark::after{
  content:"";position:absolute;inset:3px;border-radius:50%;background:var(--stamp-green);
}
.opt.checkbox .mark{border-radius:4px;}
.opt.checkbox.selected .mark::after{border-radius:2px;}

.free-text{
  margin-top:4px;margin-bottom:22px;
}
.free-text label{
  display:block;font-size:12px;color:var(--muted);margin-bottom:6px;font-family:'IBM Plex Mono',monospace;
}
.free-text textarea, .free-text input{
  width:100%;border:1.5px solid var(--line);border-radius:8px;padding:11px 13px;
  font-family:'IBM Plex Sans',sans-serif;font-size:14px;resize:vertical;
  background:var(--paper-raise);color:var(--ink);
}
.free-text textarea{min-height:70px;}
.free-text input:focus, .free-text textarea:focus{outline:2px solid var(--stamp-green);outline-offset:1px;}
.field-error{
  font-size:12px;color:var(--stamp-red);margin:6px 0 0;min-height:14px;
}

.nav-row{display:flex;justify-content:space-between;align-items:center;gap:10px;}
button{font-family:'IBM Plex Sans',sans-serif;cursor:pointer;}
.btn-back{
  background:none;border:none;color:var(--muted);font-size:13.5px;padding:8px 4px;
}
.btn-back:hover{color:var(--ink);}
.btn-next{
  background:var(--ink);color:var(--paper);border:none;border-radius:8px;
  padding:12px 22px;font-size:14.5px;font-weight:500;
  opacity:.4;pointer-events:none;transition:opacity .15s, transform .1s;
}
.btn-next.enabled{opacity:1;pointer-events:auto;}
.btn-next.enabled:hover{transform:translateY(-1px);}
.btn-next:focus-visible, .opt:focus-visible, .btn-back:focus-visible{outline:2px solid var(--stamp-green);outline-offset:2px;}

/* Outcome screen */
.outcome{
  text-align:center;padding:6px 4px 4px;
}
.seal{
  width:96px;height:96px;margin:0 auto 20px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:3px solid currentColor;
  position:relative;
  font-family:'Fraunces',serif;
  transform:rotate(-8deg);
  animation:stampIn .45s cubic-bezier(.2,1.4,.4,1);
}
.seal::before{
  content:"";position:absolute;inset:8px;border:1.5px dashed currentColor;border-radius:50%;opacity:.5;
}
.seal svg{width:38px;height:38px;}
@keyframes stampIn{
  0%{opacity:0;transform:rotate(-8deg) scale(1.8);}
  60%{opacity:1;}
  100%{opacity:1;transform:rotate(-8deg) scale(1);}
}
.seal.approve{color:var(--stamp-green);}
.seal.review{color:var(--stamp-amber);}
.seal.decline{color:var(--stamp-red);}

.outcome-eyebrow{
  font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;
}
.approve .outcome-eyebrow, .outcome-eyebrow.approve{color:var(--stamp-green);}
.outcome-eyebrow.review{color:var(--stamp-amber);}
.outcome-eyebrow.decline{color:var(--stamp-red);}

.outcome-title{
  font-family:'Fraunces',serif;font-size:23px;font-weight:600;margin:0 0 14px;
}
.outcome-body{
  font-size:14.5px;line-height:1.65;color:var(--ink);margin:0 0 8px;text-align:left;
  background:var(--paper);border-radius:10px;padding:16px 18px;
}
.outcome-note{
  font-size:13px;color:var(--muted);margin:14px 0 22px;text-align:left;
  border-left:2.5px solid var(--stamp-amber);padding-left:12px;
}
.outcome-disclaimer{font-size:12px;color:var(--muted);margin:8px 0 22px;}

.cta{
  display:inline-block;border:none;border-radius:8px;padding:13px 26px;
  font-size:14.5px;font-weight:500;color:var(--paper);
}
.cta.approve-btn{background:var(--stamp-green);}
.cta.review-btn{background:var(--stamp-amber);}
.cta:hover{opacity:.92;}

.restart{
  display:block;margin:18px auto 0;background:none;border:none;color:var(--muted);
  font-size:12.5px;text-decoration:underline;
}

@media (max-width:420px){
  .brand-title{font-size:22px;}
  .q-title{font-size:18.5px;}
}

/* Student Eligibility */


.route{position:relative;height:28px;margin-bottom:36px;}
  .route-line{position:absolute;top:50%;left:0;right:0;height:1px;background-image:linear-gradient(to right,var(--line) 60%,transparent 0%);background-size:8px 1px;background-repeat:repeat-x;transform:translateY(-50%);}
  .route-fill{position:absolute;top:50%;left:0;height:2px;background:linear-gradient(90deg,var(--navy),var(--orange));transform:translateY(-50%);transition:width .5s cubic-bezier(.4,0,.2,1);}
  .route-plane{position:absolute;top:50%;transform:translate(-50%,-50%);color:var(--orange);transition:left .5s cubic-bezier(.4,0,.2,1);line-height:1;}
  .route-plane svg{width:16px;height:16px;display:block;}

  .card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px 26px;}
  .eyebrow{font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--orange);margin:0 0 8px;}
  h1.q{font-family:'Fraunces',serif;font-weight:500;font-size:22px;line-height:1.3;margin:0 0 20px;color:var(--navy-deep);}
  .sub{font-size:13.5px;color:var(--grey);margin:-14px 0 20px;line-height:1.5;}

  .opt-grid{display:grid;gap:10px;}
  .opt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper);font-family:inherit;font-size:14.5px;font-weight:500;color:var(--navy-deep);cursor:pointer;transition:border-color .15s, background .15s;}
  .opt:hover{border-color:var(--navy);background:#fff;}
  .opt:focus-visible{outline:2px solid var(--orange);outline-offset:1px;}
  .opt.selected{border-color:var(--navy);background:#fff;box-shadow:inset 0 0 0 1px var(--navy);}
  .opt .code{font-size:10.5px;font-weight:700;letter-spacing:.5px;color:#fff;background:var(--navy);padding:3px 7px;border-radius:5px;flex-shrink:0;}
  .opt .label small{display:block;font-weight:400;color:var(--grey);font-size:12px;margin-top:1px;}

  .nav-row{display:flex;justify-content:space-between;align-items:center;margin-top:24px;}
  .btn{font-family:inherit;font-size:14px;font-weight:600;border-radius:9px;cursor:pointer;border:none;padding:12px 22px;}
  .btn-ghost{background:transparent;color:var(--grey);padding:12px 6px;}
  .btn-ghost:hover{color:var(--navy);}

  .pass{background:linear-gradient(135deg,var(--navy),var(--navy-deep));border-radius:var(--radius);color:#fff;overflow:hidden;position:relative;}
  .pass-top{padding:26px 26px 20px;}
  .pass-eyebrow{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.6);margin:0 0 6px;}
  .pass-verdict{font-family:'Fraunces',serif;font-weight:600;font-size:24px;line-height:1.28;margin:0 0 4px;}
  .pass-score{font-size:13px;color:rgba(255,255,255,.65);margin:0;}
  .pass-route{display:flex;align-items:center;gap:14px;padding:16px 26px;border-top:1px dashed rgba(255,255,255,.25);border-bottom:1px dashed rgba(255,255,255,.25);}
  .pass-city{font-family:'Fraunces',serif;font-size:26px;font-weight:600;letter-spacing:1px;}
  .pass-city small{display:block;font-family:'Inter',sans-serif;font-weight:400;font-size:10px;letter-spacing:1px;color:rgba(255,255,255,.55);margin-top:2px;}
  .pass-arrow{flex:1;height:1px;background:rgba(255,255,255,.25);position:relative;}
  .pass-arrow svg{position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:rgba(255,255,255,.6);}
  .pass-bottom{padding:20px 26px 26px;}
  .pass-notes{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
  .pass-notes li{display:flex;gap:10px;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.88);}
  .pass-notes svg{flex-shrink:0;margin-top:2px;width:15px;height:15px;color:var(--orange);}

  .stamp{position:absolute;top:22px;right:24px;width:64px;height:64px;border:2px solid rgba(255,255,255,.35);border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(-12deg);text-align:center;}
  .stamp span{font-family:'Fraunces',serif;font-size:10px;font-weight:600;letter-spacing:.5px;color:rgba(255,255,255,.7);line-height:1.2;text-transform:uppercase;}

  .cta-row{display:flex;gap:10px;margin-top:18px;}
  .cta-primary{flex:1;background:var(--navy);color:#fff;text-align:center;padding:14px;border-radius:10px;font-weight:600;font-size:14px;text-decoration:none;display:block;}
  .cta-secondary{background:transparent;color:var(--navy);border:1px solid var(--line);border-radius:10px;padding:14px 18px;font-family:inherit;font-weight:600;font-size:14px;cursor:pointer;}
  .disclaimer{font-size:11.5px;color:var(--grey-light);line-height:1.6;margin-top:18px;text-align:center;}
  .scope-note{font-size:11.5px;color:var(--grey-light);line-height:1.6;margin-top:10px;text-align:center;}

  @media (max-width:420px){.pass-city{font-size:21px;}h1.q{font-size:19px;}}


  /* Privacy Policy Page Specific Styles – all gvc- prefixed */
        .gvc-privacy-hero {
            min-height: 380px;
            display: flex;
            align-items: center;
            background: linear-gradient(135deg, rgba(11, 42, 107, 0.85) 0%, rgba(11, 42, 107, 0.60) 100%),
                url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%221200%22 height=%22400%22 viewBox=%220 0 1200 400%22%3E%3Crect fill=%22%230B2A6B%22 width=%221200%22 height=%22400%22/%3E%3Ctext x=%22600%22 y=%22200%22 font-family=%22Arial%22 font-size=%2230%22 fill=%22%23F89200%22 text-anchor=%22middle%22%3EPrivacy shield%3C/text%3E%3C/svg%3E') center/cover no-repeat;
            position: relative;
            z-index: 1;
        }
        .gvc-privacy-hero .container {
            position: relative;
            z-index: 2;
        }
        .gvc-privacy-hero h1 {
            font-size: 3rem;
            font-weight: 800;
            letter-spacing: -0.02em;
        }
        .gvc-privacy-hero .lead {
            font-size: 1.15rem;
            font-weight: 400;
        }
        .gvc-privacy-badge {
            display: inline-block;
            background: rgba(255, 255, 255, 0.12);
            border: 1px solid rgba(255, 255, 255, 0.15);
            border-radius: 30px;
            padding: 0.4rem 1rem;
            font-size: 0.8rem;
            color: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(4px);
        }
        .gvc-privacy-badge i {
            margin-right: 0.4rem;
            color: #F89200;
        }

        /* Table of Contents (sticky) */
        .gvc-toc-sticky {
            position: sticky;
            top: 90px;
            z-index: 100;
        }
        .gvc-toc-sticky .list-group-item {
            border: none;
            padding: 0.5rem 0.75rem;
            font-size: 0.85rem;
            background: transparent;
            color: #666;
            transition: all 0.2s ease;
            border-left: 3px solid transparent;
        }
        .gvc-toc-sticky .list-group-item:hover {
            color: #0B2A6B;
            background: #f8f9fa;
            border-left-color: #F89200;
        }
        .gvc-toc-sticky .list-group-item.active-toc {
            color: #0B2A6B;
            font-weight: 600;
            background: #f0f2f5;
            border-left-color: #F89200;
        }
        .gvc-toc-sticky .list-group-item i {
            margin-right: 0.5rem;
            color: #F89200;
            font-size: 0.75rem;
        }

        /* Privacy content cards */
        .gvc-policy-section {
            border: none;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
            background: #fff;
            padding: 1.75rem 2rem;
            margin-bottom: 1.5rem;
            transition: box-shadow 0.3s ease;
        }
        .gvc-policy-section:hover {
            box-shadow: 0 8px 35px rgba(0, 0, 0, 0.06);
        }
        .gvc-policy-section .section-number {
            display: inline-block;
            font-size: 0.7rem;
            font-weight: 700;
            color: #F89200;
            text-transform: uppercase;
            letter-spacing: 0.06em;
            background: #fdf0e8;
            padding: 0.2rem 0.8rem;
            border-radius: 30px;
            margin-bottom: 0.5rem;
        }
        .gvc-policy-section h2 {
            font-size: 1.5rem;
            font-weight: 700;
            color: #0B2A6B;
            margin-bottom: 1rem;
        }
        .gvc-policy-section h3 {
            font-size: 1.1rem;
            font-weight: 600;
            color: #0B2A6B;
            margin-top: 1.25rem;
            margin-bottom: 0.5rem;
        }
        .gvc-policy-section p,
        .gvc-policy-section li {
            color: #666666;
            line-height: 1.8;
        }
        .gvc-policy-section ul {
            padding-left: 1.25rem;
        }
        .gvc-policy-section ul li {
            margin-bottom: 0.3rem;
        }

        /* Contact card */
        .gvc-privacy-contact-card {
            border: none;
            border-radius: 16px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
            background: #fff;
            padding: 1.75rem 2rem;
        }
        .gvc-privacy-contact-card i {
            color: #F89200;
            width: 1.5rem;
        }

        /* Last updated banner */
        .gvc-privacy-updated {
            background: #f8f9fa;
            border-radius: 12px;
            padding: 1rem 1.5rem;
            border-left: 4px solid #F89200;
        }