/* Third-party CSS loaded from one local stylesheet */
@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
@import url("https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css");
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;0,700;0,800;0,900;1,400&family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,400&display=swap");

/* ==========================================================================
   1. ROOT VARIABLES & RESET
   ========================================================================== */

/* ==========================================================================
   2. KEYFRAMES ANIMATIONS
   ========================================================================== */
@keyframes loaderPulse {}

@keyframes spinClockwise {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes spinCounterClockwise {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(-360deg);
    }
}

@keyframes pulseBlob {
    0% {
        transform: scale(1) translate(0, 0);
        opacity: 0.1;
    }

    100% {
        transform: scale(1.2) translate(10px, 10px);
        opacity: 0.25;
    }
}

/* ==========================================================================
   3. LOADER COMPONENT
   ========================================================================== */

/* ==========================================================================
   4. HEADER & DESKTOP NAVIGATION
   ========================================================================== */

/* Breadcrumb Styling (Merged) */
.vt-breadcrumb {
    list-style: none;
    padding: 0;
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.vt-breadcrumb li a {
    color: #64748b;
    font-weight: 500;
    font-size: 13px;
    text-decoration: none;
}

.vt-breadcrumb li i {
    color: #cbd5e1;
    font-size: 11px;
}

.vt-breadcrumb li.active {
    color: var(--green);
    font-weight: 600;
    font-size: 13px;
}

/* ==========================================================================
   5. MEGA MENU SYSTEM
   ========================================================================== */

/* ==========================================================================
   6. MOBILE NAVIGATION DRAWER (OFFCANVAS)
   ========================================================================== */

/* ==========================================================================
   7. HERO SECTION & HERO INQUIRY FORM
   ========================================================================== */
.vt-hero {
    min-height: 100vh;
    position: relative;
    overflow: hidden;
    background: var(--navy);
    display: flex;
    align-items: center;
    padding-top: 120px;
    padding-bottom: 60px;
}

.vt-hero-bg {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle at 85% 40%, rgba(29, 185, 84, 0.18), transparent 45%);
    pointer-events: none;
}

.vt-hero-content {
    position: relative;
    z-index: 2;
}

.vt-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--green);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: 16px;
}

.vt-kicker::before {
    content: '';
    width: 24px;
    height: 2px;
    background: var(--green);
}

.vt-hero-title {
    color: var(--white);
    font-size: clamp(32px, 4.5vw, 52px);
    line-height: 1.15;
    font-weight: 800;
    text-transform: uppercase;
}

.vt-hero-title span {
    color: var(--green);
}

.vt-hero-desc {
    max-width: 620px;
    color: rgba(255, 255, 255, .75);
    font-size: 15px;
    margin-top: 20px;
    line-height: 1.8;
}

.vt-hero-form-card {
    background: #ffffff;
    border-radius: var(--radius-xl);
    padding: 30px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
    color: #1e293b;
}

.vt-form-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: var(--green);
    background: rgba(29, 185, 84, 0.1);
    padding: 4px 12px;
    border-radius: var(--radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
}

.vt-form-title {
    font-family: 'Roboto', sans-serif;
    font-size: 24px;
    font-weight: 800;
    text-transform: uppercase;
    color: #0f172a;
    margin-bottom: 4px;
    letter-spacing: -0.5px;
}

.vt-form-subtitle {
    font-size: 13px;
    color: #64748b;
    margin-bottom: 20px;
}

.vt-form-group {
    margin-bottom: 20px;
}

.vt-form-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #0f172a;
    margin-bottom: 8px;
    display: block;
}

.vt-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.vt-input-wrapper i {
    position: absolute;
    left: 16px;
    color: var(--green);
    font-size: 15px;
}

.vt-form-control {
    width: 100%;
    height: 50px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-md);
    padding: 0 16px 0 45px;
    font-size: 13.5px;
    color: #0f172a;
    transition: all 0.25s ease;
}

.vt-form-control:focus {
    background: #ffffff;
    border-color: var(--green);
    box-shadow: 0 0 0 4px rgba(29, 185, 84, 0.15);
    outline: none;
}

textarea.vt-form-control {
    height: auto;
    padding: 14px 16px 14px 45px;
    resize: none;
}

.vt-form-select {
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23334155' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 12px;
}

.vt-form-submit-btn {
    width: 100%;
    height: 50px;
    background: var(--green);
    color: #ffffff;
    border: none;
    border-radius: var(--radius-md);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.25s ease;
    margin-top: 10px;
}

.vt-form-submit-btn:hover {
    background: var(--green-light);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(29, 185, 84, 0.3);
}

/* ==========================================================================
   8. WHY CHOOSE SYSTEM (PINTEREST BRAND CARD BLOCK)
   ========================================================================== */
.vts-why-buy-section {
    padding: 90px 0 60px;
    background: #ffffff;
}

/* Centered Lead Funnel Icon Alignment (Merged) */
.vts-why-brand-card {
    background: #06090e;
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 32px;
    aspect-ratio: 1 / 1;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: inset 0 0 30px rgba(255, 255, 255, 0.02), 0 20px 40px rgba(0, 0, 0, 0.5);
    padding: 40px;
    position: relative;
    overflow: hidden;
}

.vts-why-brand-card .tech-ring {
    position: absolute;
    border: 1px dashed rgba(29, 185, 84, 0.15);
    border-radius: 50%;
    pointer-events: none;
}

.vts-why-brand-card .tech-ring-1 {
    width: 85%;
    height: 85%;
    animation: spinClockwise 25s linear infinite;
}

.vts-why-brand-card .tech-ring-2 {
    width: 65%;
    height: 66%;
    border-style: dotted;
    border-color: rgba(255, 255, 255, 0.15);
    animation: spinCounterClockwise 15s linear infinite;
}

.vts-why-brand-card .card-grid-mesh {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
    background-size: 20px 20px;
    opacity: 0.8;
    pointer-events: none;
}

.vts-why-brand-card .gradient-blob-shape {
    position: absolute;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    filter: blur(40px);
    z-index: 1;
    opacity: 0.12;
    mix-blend-mode: screen;
}

.vts-why-brand-card .blob-1 {
    top: -10%;
    left: -10%;
    background: #ffffff;
    animation: pulseBlob 6s ease-in-out infinite alternate;
}

.vts-why-brand-card .blob-2 {
    bottom: -10%;
    right: -10%;
    background: #1DB954;
    animation: pulseBlob 8s ease-in-out infinite alternate-reverse;
}

.vts-why-brand-card svg {
    width: 110px;
    height: 110px;
    z-index: 3;
    filter: drop-shadow(0 8px 25px rgba(0, 0, 0, 0.45));
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.vts-why-brand-card:hover svg {
    transform: scale(1.08) rotate(3deg);
}

.vts-why-title {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(24px, 3.5vw, 36px);
    font-weight: 900;
    text-transform: uppercase;
    color: #0f172a;
    line-height: 1.2;
    margin-bottom: 25px;
    letter-spacing: -0.5px;
}

.vts-why-paragraph {
    font-size: 14.5px;
    color: #475569;
    line-height: 1.75;
    margin-bottom: 20px;
}

.vts-why-paragraph strong {
    color: #0f172a;
    font-weight: 700;
}

.vts-feat-grid-row {
    margin-top: 40px;
}

.vts-feat-item-card {
    background: #f8fafc;
    border: 1px solid #f1f5f9;
    border-radius: var(--radius-md);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    height: 100%;
    transition: all 0.25s ease;
}

.vts-feat-item-card:hover {
    background: #ffffff;
    border-color: #e2e8f0;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.04);
    transform: translateY(-2px);
}

.vts-feat-icon-box {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: rgba(29, 185, 84, 0.15);
    color: var(--green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    flex-shrink: 0;
}

.vts-feat-text-wrap {
    font-size: 12.5px;
    font-weight: 800;
    text-transform: uppercase;
    color: #0f172a;
    letter-spacing: 0.3px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.vts-feat-text-wrap span.dim {
    font-size: 11px;
    font-weight: 500;
    color: #94a3b8;
    text-transform: none;
}

/* ==========================================================================
   9. ABOUT SECTION (SCREENSHOT FRAME)
   ========================================================================== */
.vts-about-screenshot-section {
    padding: 60px 0 80px;
    background: #ffffff;
}

.vts-about-sc-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--green);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: 12px;
}

.vts-about-sc-eyebrow::before {
    content: '';
    width: 18px;
    height: 2px;
    background: var(--green);
}

.vts-about-sc-title {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(26px, 4vw, 42px);
    font-weight: 800;
    text-transform: uppercase;
    line-height: 1.15;
    letter-spacing: -0.5px;
    color: #0f172a;
    margin-bottom: 24px;
}

.vts-about-sc-title span {
    color: var(--green);
}

.vts-about-sc-p {
    font-size: 14.5px;
    color: #475569;
    line-height: 1.75;
    margin-bottom: 20px;
}

.vts-about-sc-p strong {
    font-weight: 700;
    color: #0f172a;
    text-transform: uppercase;
}

.vts-about-img-frame {
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    background: #f8fafc;
}

.vts-about-img-frame img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

.vts-about-checklist-group {
    list-style: none;
    padding: 0;
    margin: 24px 0 32px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.vts-about-checklist-group li {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    font-weight: 600;
    color: #334155;
}

.vts-about-checklist-group li i {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgba(29, 185, 84, .12);
    color: var(--green);
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.vts-about-checklist-group li strong {
    font-weight: 700;
    color: #0f172a;
}

.vts-about-action-btn-group {
    text-align: left;
}

.vts-about-action-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--green);
    color: #ffffff !important;
    font-size: 12.5px;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: var(--radius-md);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.25s ease;
    border: none;
}

.vts-about-action-btn-primary:hover {
    background: var(--green-light);
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(29, 185, 84, 0.25);
}

.vts-about-action-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: var(--green) !important;
    border: 1px solid var(--green);
    font-size: 12.5px;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: var(--radius-md);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-left: 12px;
    transition: all 0.25s ease;
}

.vts-about-action-btn-outline:hover {
    background: var(--green-dim);
    transform: translateY(-2px);
}

/* ==========================================================================
   10. MAP REVIEWS STRIP BANNER
   ========================================================================== */
.vts-twitter-brand-banner {
    padding: 85px 0;
    background: #05070b;
    position: relative;
    text-align: center;
}

.vts-tbb-title {
    font-family: 'Roboto', sans-serif;
    color: #ffffff;
    font-size: clamp(26px, 4.5vw, 48px);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -0.5px;
    margin-bottom: 24px;
    line-height: 1.15;
}

.vts-tbb-title span {
    color: var(--green);
}

.vts-tbb-desc {
    color: var(--text-muted);
    font-size: 14.5px;
    line-height: 1.75;
    max-width: 820px;
    margin: 0 auto 35px;
}

.vts-tbb-desc strong {
    color: #ffffff;
    font-weight: 700;
}

.vts-tbb-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--green);
    color: #071a0e !important;
    font-size: 12.5px;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 99px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.25s ease;
    border: none;
}

.vts-tbb-btn-primary:hover {
    background: var(--green-light);
    transform: translateY(-1px);
}

.vts-tbb-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, 0.25);
    font-size: 12.5px;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 99px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-left: 14px;
    transition: all 0.25s ease;
}

.vts-tbb-btn-outline:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: #ffffff;
}

/* ==========================================================================
   11. PROMO VIDEO CARD PROMO BLOCK
   ========================================================================== */
.vts-youtube-promo-section {
    padding: 60px 0 90px;
    background: #ffffff;
}

.vts-yt-banner-card {
    border-radius: var(--radius-xl);
    padding: 50px 60px;
    background: radial-gradient(circle at 10% 10%, rgba(29, 185, 84, .15), transparent 45%),
        linear-gradient(135deg, #0a0d14 0%, #111827 100%);
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(10, 13, 20, 0.15);
}

.vts-yt-banner-card::after {
    content: '';
    position: absolute;
    width: 250px;
    height: 250px;
    right: -50px;
    bottom: -50px;
    border-radius: 50%;
    background: rgba(29, 185, 84, .04);
}

.vts-yt-banner-card * {
    position: relative;
    z-index: 2;
}

.vts-yt-title {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(24px, 3.5vw, 38px);
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 16px;
}

.vts-yt-desc {
    color: var(--text-muted);
    font-size: 14.5px;
    line-height: 1.7;
    max-width: 580px;
    margin-bottom: 0;
}

.vts-yt-desc strong {
    color: var(--green);
}

/* Merged Video Layout fixes */
.vts-yt-video-thumb {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: #000000;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.4);
}

.vts-yt-video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.55;
    transition: transform 0.4s ease;
}

.vts-yt-banner-card:hover .vts-yt-video-thumb img {
    transform: scale(1.03);
}

.vts-yt-play-overlay {
    position: absolute;
    inset: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.vts-yt-play-btn {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--green);
    color: #071a0e;
    font-size: 20px;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 0 0 10px rgba(29, 185, 84, 0.25);
    text-decoration: none;
}

.vts-yt-play-btn i {
    margin-left: 2px;
}

.vts-yt-play-btn:hover {
    background: var(--green-light);
    transform: scale(1.08);
    box-shadow: 0 0 0 16px rgba(29, 185, 84, 0.2);
    color: #071a0e;
}

/* ==========================================================================
   12. CORE SWIPER CAROUSEL SYSTEM
   ========================================================================== */
.vts-benefits-carousel-section {
    padding: 90px 0;
    background: var(--navy-mid);
    position: relative;
}

.vts-benefits-kicker {
    color: var(--green);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-bottom: 8px;
    display: block;
}

.vts-benefits-title {
    font-family: 'Roboto', sans-serif;
    color: #ffffff;
    font-size: clamp(24px, 3.5vw, 38px);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -0.5px;
    margin-bottom: 50px;
}

.vts-benefit-card {
    background: #1a2235;
    border: 1px solid var(--navy-border);
    border-radius: 20px;
    padding: 40px 35px;
    height: 100%;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vts-benefit-card:hover {
    border-color: var(--green-border);
    transform: translateY(-5px);
}

.vts-benefit-icon-box {
    font-size: 28px;
    color: var(--green);
    margin-bottom: 24px;
    display: inline-flex;
}

.vts-benefit-card-title {
    color: #ffffff;
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
}

.vts-benefit-card-desc {
    color: var(--text-muted);
    font-size: 13.5px;
    line-height: 1.65;
    margin-bottom: 0;
}

.vts-swiper-navigation-wrap {
    position: relative;
}

.vts-swiper-btn-next,
.vts-swiper-btn-prev {
    width: 44px;
    height: 44px;
    background: var(--green);
    color: #071a0e;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    cursor: pointer;
    transition: all 0.25s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.vts-swiper-btn-prev {
    left: -22px;
}

.vts-swiper-btn-next {
    right: -22px;
}

.vts-swiper-btn-next:hover,
.vts-swiper-btn-prev:hover {
    background: var(--green-light);
    transform: translateY(-50%) scale(1.05);
}

.vts-swiper-pagination-wrap {
    margin-top: 35px;
}

.vts-swiper-pagination-wrap .swiper-pagination-bullet {
    background: rgba(255, 255, 255, 0.2) !important;
    opacity: 1;
    width: 8px;
    height: 8px;
    transition: all 0.25s ease;
}

.vts-swiper-pagination-wrap .swiper-pagination-bullet-active {
    background: var(--green) !important;
    width: 24px !important;
    border-radius: 99px !important;
}

/* ==========================================================================
   13. FOOTPRINT PLATFORM SECTION
   ========================================================================== */
.vts-footprint-marquee-section {
    padding: 60px 0 80px;
    background: #05070b;
    overflow: hidden;
}

/* Flex Gap Alignment Fix (Merged) */
.vts-footprint-marquee-section .d-flex {
    gap: 12px;
}

.vts-footprint-kicker {
    color: var(--green);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-bottom: 8px;
    display: block;
}

.vts-footprint-title {
    font-family: 'Roboto', sans-serif;
    color: #ffffff;
    font-size: clamp(24px, 3.5vw, 36px);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -0.5px;
    margin-bottom: 40px;
}

.vts-location-badge {
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(29, 185, 84, 0.18);
    font-family: 'Roboto', sans-serif;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 6px 14px;
    border-radius: var(--radius-sm);
    white-space: nowrap;
    display: inline-block;
    text-align: center;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.vts-location-badge:hover {
    background: var(--green-dim);
    color: var(--green);
    border-color: var(--green);
    transform: scale(0.94);
}

/* ==========================================================================
   14. CORPORATE THEME FOOTER DESIGN ARCHITECTURE
   ========================================================================== */

.vts-ft-brand {
    /* Brand element container setup */
}

/* ==========================================================================
   15. HARD RESPONSIVE BREAKPOINTS ENGINE (MEDIA QUERIES)
   ========================================================================== */
@media (min-width: 992px) {}

@media (max-width: 991.98px) {}

@media (max-width: 1199px) {

    .vt-hero {
        padding-top: 100px;
        padding-bottom: 40px;
    }
}

@media (max-width: 991px) {
    .vt-hero .row {
        gap: 40px;
    }

    .vts-why-brand-card {
        max-width: 320px;
        margin: 0 auto 35px;
    }

    .vts-yt-banner-card {
        padding: 40px 30px;
    }

    .vts-yt-title {
        text-align: center;
    }

    .vts-yt-desc {
        text-align: center;
        margin: 0 auto 30px;
    }

    .vts-about-screenshot-section .row {
        gap: 40px;
    }

    .vts-about-sc-title {
        text-align: center;
    }

    .vts-about-sc-p {
        text-align: center;
    }

    .vts-about-action-btn-group {
        text-align: center;
    }

    .vts-swiper-btn-prev {
        left: 10px;
    }

    .vts-swiper-btn-next {
        right: 10px;
    }

    .vts-tbb-btn-outline {
        margin-left: 0;
        margin-top: 14px;
        display: inline-flex;
        width: 100%;
        justify-content: center;
    }

    .vts-tbb-btn-primary {
        display: inline-flex;
        width: 100%;
        justify-content: center;
    }

}

@media (max-width: 767px) {

    /* Footer link columns display side-by-side on mobile screens (Merged) */

    /* Benefits Carousel (Slider) Layout fixes on mobile layout (Merged) */

}

@media (max-width: 575px) {

    .vt-hero-form-card {
        padding: 25px 20px;
    }

    .vts-about-action-btn-outline {
        margin-left: 0;
        margin-top: 12px;
        display: inline-flex;
        width: 100%;
        justify-content: center;
    }

    .vts-about-action-btn-primary {
        display: inline-flex;
        width: 100%;
        justify-content: center;
    }
}

/* Section Background Styling */
.vts-global-presence-section {
    background-color: #060b11;
    /* Dark premium background */
    color: #ffffff;
    position: relative;
    overflow: hidden;
}

/* Kicker & Title Styling */
.vts-kicker {
    color: #00ff66;
    /* Neon Green accent color */
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
}

.vts-title {
    font-weight: 600;
    letter-spacing: 1px;
}

/* Naya Grid System (Yeh akela rehne waali problem solve karega) */
.vts-grid-container {
    display: grid;
    /* auto-fit screen ke hisab se columns badhayega aur minmax se sab barabar rahenge */
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 12px;
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
}

/* Naye Glassmorphism style Badges */
.vts-badge {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #cccccc;
    padding: 10px 14px;
    font-size: 10px;
    font-weight: 400;
    border-radius: 6px;
    text-align: center;
    transition: all 0.3s ease;
    cursor: default;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

/* Premium Hover Effect */
.vts-badge:hover {
    background: rgba(0, 255, 102, 0.1);
    border-color: #00ff66;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 255, 102, 0.15);
}

/* Sleek Divider */
.vts-divider {
    height: 1px;
    width: 80%;
    max-width: 1000px;
    margin: 0 auto;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
}

/* Responsive adjustments for smaller screens */
@media (max-width: 576px) {
    .vts-grid-container {
        grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
        gap: 8px;
    }

    .vts-badge {
        font-size: 11px;
        padding: 8px 10px;
    }
}

/* Container section setup */
.vts-global-presence-section {
    background-color: #060b11;
    color: #ffffff;
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.vts-kicker {
    color: #00ff66;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
}

.vts-title {
    font-weight: 700;
    font-size: 28px;
    letter-spacing: 1px;
}

/* Outer wrapper with clean spacing */
.vts-flex-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px;
    /* Country aur State ke bich ka gap kam karne ke liye perfect setting */
    align-items: center;
    width: 100%;
    margin-top: 25px;
}

/* Dynamic Flex layout jo rows ko float hone dega par gaps adjust rakhega */
.vts-flex-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    /* Row gap and Column gap */
    justify-content: center;
    /* Humesha center balanced dikhega */
    align-items: center;
    max-width: 1250px;
    /* Screen ke boundaries se door clean padding banaye rakhega */
    width: 100%;
}

/* Premium Badges Look with Dynamic width according to word size */
.vts-badge {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #b3b3b3;
    padding: 8px 16px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    white-space: nowrap;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Soft Hover effect */
.vts-badge:hover {
    background: rgba(0, 255, 102, 0.08);
    border-color: #00ff66;
    color: #ffffff;
    transform: translateY(-1px);
}

/* Minimalist separator line */
.vts-divider {
    width: 70%;
    max-width: 900px;
    border: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    margin: 5px 0;
}

/* Mobile Friendly layout adjustments */
@media (max-width: 768px) {
    .vts-flex-container {
        gap: 8px 10px;
    }

    .vts-badge {
        padding: 6px 12px;
        font-size: 11px;
    }

    .vts-title {
        font-size: 22px;
    }
}

/* Lead form validation, toast and success modal support */

@keyframes vtPop {}

@keyframes vtSlide {}

@media (max-width: 575px) {}

@media (max-width: 991.98px) {}

@media (max-width: 575.98px) {}

/* Container section setup - Height/Padding kam ki gayi hai */
.vts-global-presence-section {
    background-color: #060b11;
    color: #ffffff;
    padding-top: 2rem;
    /* 3rem se kam karke 2rem kiya */
    padding-bottom: 2rem;
    /* 3rem se kam karke 2rem kiya */
}

.vts-kicker {
    color: #00ff66;
    font-size: 11px;
    /* Font size 13px se chota kiya */
    font-weight: 600;
    letter-spacing: 2px;
}

.vts-title {
    font-weight: 700;
    font-size: 24px;
    /* Font size 28px se chota kiya */
    letter-spacing: 1px;
    margin-bottom: 15px;
    /* Bottom space adjust kiya */
}

/* Outer wrapper with clean spacing */
.vts-flex-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    /* Gap 20px se kam kiya takki height kam ho jaye */
    align-items: center;
    width: 100%;
    margin-top: 15px;
    /* Top margin 25px se kam kiya */
}

/* Dynamic Flex layout jo rows ko compact rakhega (Breath/Width control) */
.vts-flex-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    /* Badges ke beech ka vertical aur horizontal gap kam kiya */
    justify-content: center;
    align-items: center;
    max-width: 1050px;
    /* Width ko 1250px se kam karke compact (chota) kiya */
    width: 90%;
    /* Container ki breath control karne ke liye */
}

/* Premium Badges Look - Font size aur Width/Height kam ki gayi hai */
.sub-link,
.vts-badge {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #b3b3b3;
    padding: 5px 12px;
    /* Padding 8px 16px se kam ki, jisse capsule ki height/width choti ho gayi */
    font-size: 10px;
    /* Font size 12px se chota kiya */
    font-weight: 500;
    border-radius: 4px;
    /* Corners ko thoda aur sharp/clean kiya */
    white-space: nowrap;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline-block;
    /* Link structures ke liye uniform structure */
    text-decoration: none;
}

/* Soft Hover effect */
.sub-link:hover,
.vts-badge:hover {
    background: rgba(0, 255, 102, 0.08);
    border-color: #00ff66;
    color: #ffffff;
    transform: translateY(-1px);
}

/* Minimalist separator line */
.vts-divider {
    width: 60%;
    /* Divider ki width bhi kam ki */
    max-width: 700px;
    border: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
    margin: 4px 0;
}

/* ==========================================
   FORCE OVERRIDE - PASTE THIS AT THE VERY BOTTOM OF STYLE.CSS
   ========================================== */

/* Container ki height aur padding kam karne ke liye */
body .vts-global-presence-section {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
}

/* Titles ka font size chota karne ke liye */
body .vts-kicker {
    font-size: 11px !important;
}

body .vts-title {
    font-size: 24px !important;
    margin-bottom: 15px !important;
}

/* Gaps aur layout compact karne ke liye */
body .vts-flex-wrapper {
    gap: 16px !important;
    margin-top: 15px !important;
}

body .vts-flex-container {
    gap: 10px 12px !important;
    max-width: 1100px !important;
    width: 95% !important;
}

/* FIX: Double border hatane aur capsule size perfect karne ke liye */
body .vts-flex-container a.sub-link {
    display: inline-flex !important;
    padding: 3px 10px !important;
    font-size: 10px !important;
    border-radius: 4px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* Capsule ke andar ke faltu borders aur box ko gayab karne ke liye */
body .vts-flex-container a.sub-link * {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
}

/* Hover style sahi karne ke liye */
body .vts-flex-container a.sub-link:hover {
    background: rgba(0, 255, 102, 0.08) !important;
    border-color: #00ff66 !important;
    color: #ffffff !important;
}

/* Divider control */
body .vts-divider {
    width: 65% !important;
    max-width: 800px !important;
    margin: 6px 0 !important;
}

/* ==========================================
   SPACE FILL KARNE KE LIYE UPDATED OVERRIDE
   ========================================== */

/* Container ki width/breath badha kar khali space ko fill karne ke liye */
body .vts-flex-container {
    gap: 12px 16px !important;
    /* Capsules ke beech ka gap thoda badhaya takki jagah bhare */
    max-width: 1320px !important;
    /* 1100px se badha kar 1320px kiya, jisse left/right ki space fill ho jaye */
    width: 92% !important;
    /* Screen boundaries se clean alignment ke liye */
}

/* Capsules ka size thoda sa wide karne ke liye padding badhai */
body .vts-flex-container a.sub-link {
    padding: 6px 18px !important;
    /* Left-right padding 14px se 18px ki takki capsules pure area ko balanced fill karein */
    font-size: 11px !important;
    letter-spacing: 0.8px !important;
    /* Characters ke beech ka space halka sa badhaya premium look ke liye */
}

body .vts-flex-container {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;

    max-width: 1420px !important;
    /* 1320px se badha kar 1420px kiya */
    width: 96% !important;

    gap: 12px 10px !important;
    /* Row gap 12px aur Column gap 10px kiya */
}

body .vts-flex-container a.sub-link {
    display: inline-flex !important;

    padding: 6px 15px !important;
    /* 18px se kam karke 15px kiya */
    font-size: 11px !important;
    border-radius: 4px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* ==========================================
   PREMIUM COOL LOOK WITH HALKI GREEN HIGHLIGHT
   ========================================== */

/* Container Setup */
body .vts-flex-container {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    max-width: 1350px !important;
    /* Spacing perfect rakhne ke liye balance kiya */
    width: 95% !important;
    gap: 14px 12px !important;
    /* Rows aur columns ke beech clean gap */
}

/* Capsules ka basic design aur halki green highlight */
body .vts-flex-container a.sub-link {
    display: inline-flex !important;
    padding: 7px 16px !important;
    font-size: 11px !important;
    border-radius: 6px !important;
    /* Corners ko thoda aur smooth premium kiya */

    /* Dark subtle background aur halki green/gray border blend */
    background: rgba(0, 255, 102, 0.02) !important;
    border: 1px solid rgba(0, 255, 102, 0.15) !important;
    /* Shuruat se hi halki green tint dikhegi */
    color: #a6b4c9 !important;
    /* Text thoda soft gray-blue white */

    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;

    /* Halki inner shadow glow ke liye */
    box-shadow: inset 0 0 6px rgba(0, 255, 102, 0.03) !important;
}

/* Super Cool Hover Effect */
body .vts-flex-container a.sub-link:hover {
    color: #ffffff !important;
    background: rgba(0, 255, 102, 0.08) !important;
    /* Green fade thoda bright hoga */
    border-color: #00ff66 !important;
    /* Neon green border high-light */

    /* Neon glow effect border ke peeche */
    box-shadow: 0 0 12px rgba(0, 255, 102, 0.2),
        inset 0 0 8px rgba(0, 255, 102, 0.1) !important;

    transform: translateY(-2px) !important;
    /* Smooth floating bounce effect */
}

/* ==========================================
   FOOTER NAVIGATION LINKS GREY COLOR FIX
   ========================================== */

/* Saare links (Careers, Clients, etc.) ko grey karne ke liye */
body .vts-ft-navigation-links-list a {
    color: #8892b0 !important;
    /* Premium Slate Grey color */
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    text-decoration: none !important;
    transition: color 0.2s ease-in-out !important;
}

/* Beech ke separators ( / ) ko bhi soft grey karne ke liye */
body .vts-ft-navigation-links-list .sep {
    color: #4a5568 !important;
    /* Thoda dark elegant grey separator ke liye */
    font-size: 11px !important;
    font-weight: 500 !important;
}

/* Hover karne par text premium white chamkega */
body .vts-ft-navigation-links-list a:hover {
    color: #ffffff !important;
}

/* =========================================================
   Extracted inline <style> blocks from HTML pages
   ========================================================= */

/* Inline style block 1 */

/* ════════ LOADER ════════ */

@keyframes loaderPulse {}

/* ════════ NAVIGATION SYSTEM ════════ */

/* Mega Menu Structure */

@media (min-width: 992px) {}

@media (max-width: 991.98px) {}

/* Mobile Responsive Offcanvas Layer */

@media (max-width: 991.98px) {}

/* ════════ AESTHETIC ABOUT STORY HERO ════════ */
.vt-hero-story {
    padding-top: 160px;
    padding-bottom: 90px;
    background: linear-gradient(180deg, var(--navy) 0%, var(--navy-mid) 100%);
    position: relative;
    overflow: hidden;
}

.vt-story-bg {
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 80% 20%, rgba(29, 185, 84, 0.15), transparent 50%),
        radial-gradient(circle at 20% 80%, rgba(255, 255, 255, 0.03), transparent 40%);
    pointer-events: none;
}

.vt-story-kicker {
    color: var(--green);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.vt-story-kicker::before {
    content: '';
    width: 20px;
    height: 2px;
    background: var(--green);
}

.vt-story-title {
    color: var(--white);
    font-size: clamp(34px, 5.5vw, 64px);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -2px;
    line-height: 1.1;
}

.vt-story-title span {
    color: var(--green);
    position: relative;
    display: inline-block;
}

.vt-story-subtitle {
    color: var(--text-muted);
    max-width: 750px;
    margin: 20px auto 0;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
}

/* ════════ PHILOSOPHY PANEL INTERFACE (Screenshot 155652) ════════ */
.vt-philosophy-section {
    padding: 90px 0;
    background: #ffffff;
}

.vt-phil-grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center;
}

.vt-phil-content h2 {
    font-size: clamp(28px, 3.5vw, 42px);
    font-weight: 800;
    color: var(--navy);
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 20px;
}

.vt-phil-content h2 span {
    color: var(--green);
}

.vt-phil-content p {
    color: #475569;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 24px;
}

.vt-phil-graphic {
    position: relative;
    display: flex;
    justify-content: center;
}

.vt-phil-circle-art {
    width: 320px;
    height: 320px;
    border-radius: 50%;
    border: 2px dashed var(--green-border);
    display: flex;
    align-items: center;
    justify-content: center;
    animation: spinRotate 25s infinite linear;
}

@keyframes spinRotate {
    100% {
        transform: rotate(360deg);
    }
}

.vt-phil-inner-core {
    position: absolute;
    width: 140px;
    height: 140px;
    background: var(--navy);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--green);
    font-size: 32px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    z-index: 2;
}

/* ════════ FRAMEWORK STEPS (Screenshot 155551) ════════ */
.vt-steps-section {
    padding: 90px 0;
    background: #f8fafc;
    border-top: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
}

.vt-step-timeline-road {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    position: relative;
    margin-top: 50px;
}

.vt-step-timeline-road::before {
    content: '';
    position: absolute;
    top: 30px;
    left: 50px;
    right: 50px;
    height: 2px;
    background: linear-gradient(90deg, var(--green) 0%, #cbd5e1 100%);
    z-index: 1;
}

.vt-step-node-card {
    position: relative;
    z-index: 2;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-lg);
    padding: 24px;
    transition: all 0.3s ease;
}

.vt-step-node-card:hover {
    transform: translateY(-5px);
    border-color: var(--green);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06);
}

.vt-step-badge-counter {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--navy);
    color: var(--white);
    font-size: 20px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    border: 4px solid var(--white);
    box-shadow: 0 0 0 1px #e2e8f0;
    transition: 0.3s;
}

.vt-step-node-card:hover .vt-step-badge-counter {
    background: var(--green);
    color: var(--navy);
}

.vt-step-h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 10px;
    text-transform: uppercase;
}

.vt-step-desc {
    font-size: 13.5px;
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 0;
}

/* ════════ SERVICES SOLID CARDS SECTION ════════ */
.vt-core-services {
    padding: 90px 0;
    background: var(--navy);
    position: relative;
    overflow: hidden;
}

/* ════════ REVIEWS SYSTEM (Clean White theme with infinite flow) ════════ */
.vt-reviews-panel-section {
    padding: 90px 0;
    background: #ffffff;
    color: #0a0d14;
}

.vt-review-story-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-lg);
    padding: 24px;
    height: 100%;
    position: relative;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.vt-review-stars {
    color: #ffb800;
    font-size: 14px;
    margin-bottom: 12px;
}

.vt-review-story-text {
    font-size: 13.5px;
    line-height: 1.65;
    color: #334155;
    margin-bottom: 20px;
}

.vt-review-profile-meta {
    display: flex;
    align-items: center;
    gap: 12px;
}

.vt-review-avatar-sphere {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: var(--green);
}

.vt-review-user-name {
    font-size: 13px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 2px;
}

.vt-review-user-status {
    font-size: 11px;
    color: var(--text-muted);
}

.vtReviewStorySwiper .swiper-wrapper {
    transition-timing-function: linear !important;
}

/* ════════ BRAND PARTNERS (Screenshot 155112) ════════ */
.vt-partners-showcase {
    padding: 60px 0;
    background: var(--navy);
    border-top: 1px solid var(--navy-border);
}

.vt-partner-logo-box {
    height: 70px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--navy-border);
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 1px;
    transition: all 0.25s ease;
}

.vt-partner-logo-box:hover {
    color: var(--green);
    border-color: var(--green-border);
    background: rgba(29, 185, 84, 0.05);
}

/* ════════ FOOTER STYLING CONFIG ════════ */

/* Global Coverage Section */

@media (max-width: 1199px) {}

@media (max-width: 991px) {

    .vt-step-timeline-road {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .vt-step-timeline-road::before {
        display: none;
    }

    .vt-phil-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .vts-ft-pills-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
}

@media (max-width: 767px) {}

@media (max-width: 575px) {

    .vt-step-timeline-road {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {}

/* Inline style block 2 */
/* Extra custom styling specifically for Careers Page Layout elements to keep it clean */
.vts-job-card {
    background: #fff;
    border: 1px solid #eef2f5;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02);
}

.vts-job-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.06);
    border-color: #0d6efd;
}

.vts-job-badge {
    background: #eef4ff;
    color: #0d6efd;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    display: inline-block;
    margin-right: 8px;
}

.vts-job-meta {
    font-size: 14px;
    color: #6c757d;
    margin-top: 8px;
}

.vts-job-meta i {
    margin-right: 4px;
}

#jobLoadingStatus {
    text-align: center;
    padding: 40px;
    font-weight: 500;
    color: #495057;
}

/* Inline style block 3 */
/* CSS to perfectly center and style the new Company Page icon inside the graphic card */

.vts-company-centered-icon {
    font-size: 110px !important;
    color: #ffffff !important;
    z-index: 5;
    position: relative;
    line-height: 1;
}

/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {

    /* Fixes footer link sections to display side-by-side (2 columns) on mobile */

    /* Carousel adjustments for flawless mobile viewing */

}

/* Inline style block 4 */

*,
*::before,
*::after {
    box-sizing: border-box;
}

.vt-container {
    width: 100%;
    max-width: var(--container);
    margin-right: auto;
    margin-left: auto;
}

/* ════════ LOADER ════════ */

@keyframes loaderPulse {}

/* ════════ NAVIGATION SYSTEM ════════ */

.vt-logo-vts {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--white);
    text-decoration: none;
    position: relative;
    z-index: 1300;
    transition: color .25s;
}

.vt-store-btn:hover {
    background: var(--green-light);
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(29, 185, 84, 0.3);
}

/* Mega Menu Structure */

.vt-mega-link {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 12px;
    padding: 8px 10px;
    border-radius: var(--radius-sm);
    transition: background .2s;
    color: var(--white);
    min-height: 56px;
    text-decoration: none;
}

.vt-mega-link:hover {
    background: var(--green-dim);
    color: var(--white);
}

@media (min-width: 992px) {

    .vt-header {
        height: 72px;
        padding: 0 !important;
        display: flex;
        align-items: center;
    }

    .vt-header .navbar {
        width: 100%;
        min-height: 72px;
        display: flex;
        align-items: center;
    }

    .vt-mega {
        top: 72px !important;
        max-height: calc(100vh - 72px) !important;
        transform: translateY(calc(-100% - 72px)) !important;
    }

}

@media (max-width: 991.98px) {}

/* Mobile Responsive Offcanvas Layer */

.vt-mobile-direct-links a {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 12px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .06);
    color: var(--white);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
}

.vt-mobile-contact-box a {
    min-height: 46px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .06);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
}

.vt-mobile-sticky-cta a {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--white);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
}

@media (max-width: 991.98px) {}

/* ════════ HERO BREADCRUMB SECTION ════════ */
.vt-hero-contact {
    padding-top: 140px;
    padding-bottom: 50px;
    background: linear-gradient(180deg, var(--navy) 0%, var(--navy-mid) 100%);
    position: relative;
}

.vt-hero-bg {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle at 50% 50%, rgba(29, 185, 84, 0.12), transparent 60%);
    pointer-events: none;
}

.vt-contact-title {
    color: var(--white);
    font-size: clamp(32px, 5vw, 54px);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -1px;
}

.vt-contact-title span {
    color: var(--green);
}

.vt-contact-subtitle {
    color: var(--text-muted);
    max-width: 650px;
    margin: 15px auto 0;
    font-size: 16px;
}

/* ════════ MAIN CONTACT BLOCK INTERFACE ════════ */
.vt-contact-grid-section {
    padding: 80px 0;
    background: #ffffff;
}

.vt-info-card-panel {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-lg);
    padding: 30px;
    height: 100%;
    transition: all 0.25s ease;
}

.vt-info-card-panel:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
    border-color: rgba(29, 185, 84, 0.3);
}

.vt-info-icon-wrapper {
    width: 54px;
    height: 54px;
    border-radius: var(--radius-md);
    background: var(--green-dim);
    color: var(--green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 20px;
}

.vt-info-h3 {
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.vt-info-p {
    color: #475569;
    font-size: 14.5px;
    line-height: 1.6;
    margin-bottom: 0;
}

.vt-info-p a {
    color: inherit;
    transition: color 0.2s;
}

.vt-info-p a:hover {
    color: var(--green);
}

/* Contact Dynamic Form Styling */
.vt-contact-form-wrapper {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 25px 60px rgba(15, 23, 42, 0.06);
    border-radius: var(--radius-xl);
    padding: 45px;
}

.vt-form-header-title {
    font-family: 'Roboto', sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: #0f172a;
    text-transform: uppercase;
    letter-spacing: -0.5px;
}

.vt-form-header-desc {
    font-size: 14px;
    color: #64748b;
    margin-bottom: 35px;
}

.vt-form-group-field {
    margin-bottom: 24px;
}

.vt-custom-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #0f172a;
    margin-bottom: 8px;
    display: block;
}

.vt-field-input-box {
    position: relative;
    display: flex;
    align-items: center;
}

.vt-field-input-box i {
    position: absolute;
    left: 16px;
    color: var(--green);
    font-size: 15px;
}

.vt-custom-input-control {
    width: 100%;
    height: 52px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: var(--radius-md);
    padding: 0 16px 0 45px;
    font-size: 14px;
    color: #0f172a;
    transition: all 0.25s ease;
}

.vt-custom-input-control:focus {
    background: #ffffff;
    border-color: var(--green);
    box-shadow: 0 0 0 4px rgba(29, 185, 84, 0.15);
    outline: none;
}

textarea.vt-custom-input-control {
    height: auto;
    padding: 14px 16px 14px 45px;
    resize: none;
}

.vt-select-chevron {
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23334155' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 12px;
}

.vt-submit-action-btn {
    width: 100%;
    height: 54px;
    background: var(--green);
    color: #ffffff;
    border: none;
    border-radius: var(--radius-md);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.25s ease;
}

.vt-submit-action-btn:hover {
    background: var(--green-light);
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(29, 185, 84, 0.3);
}

/* ════════ GOOGLE MAP PLATFORM WRAPPER ════════ */
.vt-google-maps-container {
    width: 100%;
    height: 480px;
    background: #e2e8f0;
    border-top: 1px solid #e2e8f0;
    position: relative;
    display: block;
}

.vt-google-maps-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* ════════ FOOTER STYLING CONFIG ════════ */
.vts-footer {
    background: var(--navy);
    font-family: 'Open Sans', system-ui, sans-serif;
    color: var(--white);
    position: relative;
    overflow: hidden;
    padding-top: 20px;
}

.vts-ft-promo-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    padding: 40px 0;
    border-bottom: 1px solid var(--navy-border);
    position: relative;
    z-index: 1;
}

.vts-ft-promo-card {
    position: relative;
    min-height: 240px;
    padding: 32px;
    border-radius: var(--radius-xl);
    display: flex;
    align-items: flex-end;
    gap: 18px;
    color: var(--white);
    border: 1px solid var(--navy-border);
    transition: transform .28s, border-color .28s;
    isolation: isolate;
}

.vts-ft-promo-card.vts-split-one::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: radial-gradient(circle at 15% 15%, rgba(29, 185, 84, .2), transparent 32%),
        linear-gradient(135deg, var(--navy) 0%, #0a1f10 100%);
    border-radius: var(--radius-xl);
    transition: .35s;
}

.vts-ft-promo-card.vts-split-two::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    background: radial-gradient(circle at 85% 15%, rgba(29, 185, 84, .15), transparent 32%),
        linear-gradient(135deg, var(--navy-mid) 0%, #0d1a10 100%);
    border-radius: var(--radius-xl);
    transition: .35s;
}

.vts-ft-promo-card:hover {
    transform: translateY(-5px);
    border-color: var(--green-border);
}

.vts-ft-promo-card::after {
    content: '';
    position: absolute;
    width: 220px;
    height: 220px;
    right: -80px;
    top: -80px;
    border-radius: 50%;
    background: rgba(29, 185, 84, .05);
    z-index: -1;
    transition: transform .35s;
}

.vts-ft-promo-card:hover::after {
    transform: scale(1.3);
}

.vts-ft-promo-icon-left {
    width: 68px;
    height: 68px;
    border-radius: var(--radius-lg);
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    transition: .28s;
    margin-bottom: 0 !important;
}

.vts-ft-promo-card:hover .vts-ft-promo-icon-left {
    background: var(--green);
    color: #071a0e;
    border-color: var(--green);
}

.vts-ft-promo-left-side {
    position: relative;
    z-index: 2;
    flex: 1;
}

.vts-ft-promo-kicker {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 10px;
    color: var(--green);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.vts-ft-promo-kicker::before {
    content: '';
    width: 22px;
    height: 2px;
    background: var(--green);
    border-radius: 99px;
}

.vts-ft-promo-title {
    margin: 0 0 8px;
    font-size: clamp(20px, 2.4vw, 30px);
    font-weight: 800;
    line-height: 1.15;
    text-transform: uppercase;
    color: var(--white);
}

.vts-ft-promo-desc {
    margin: 0;
    color: rgba(255, 255, 255, .6);
    font-size: 13px;
    line-height: 1.65;
}

.vts-ft-promo-action-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    font-size: 18px;
    transition: .28s;
}

.vts-ft-promo-card:hover .vts-ft-promo-action-btn {
    background: var(--green);
    color: #071a0e;
    border-color: var(--green);
    transform: translateX(4px);
}

.vts-ft-top {
    display: grid;
    grid-template-columns: 300px 1fr 260px;
    gap: 48px;
    align-items: start;
    padding: 80px 0 56px;
    border-bottom: 1px solid var(--navy-border);
    position: relative;
    z-index: 1;
}

.vts-ft-logo {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
}

.vts-ft-tagline {
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--white);
    margin-bottom: 12px;
    text-transform: uppercase;
}

.vts-ft-link-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.vts-ft-link {
    display: flex;
    align-items: center;
    font-size: 12.5px;
    color: var(--text-dim);
    text-decoration: none;
    padding: 4px 0;
    line-height: 1.4;
    transition: color .18s, gap .18s;
    overflow: hidden;
    text-transform: uppercase;
}

.vts-ft-col-head-main {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--green);
    margin-bottom: 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--green-border);
}

.vts-ft-ci-icon {
    width: 30px;
    height: 30px;
    border-radius: var(--radius-sm);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 13px;
    color: var(--green);
    margin-top: 2px;
    transition: all 0.2s ease;
}

.vts-ft-contact-item a.vts-map-anchor-trigger {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    text-decoration: none;
    color: inherit;
}

.vts-ft-contact-item a.vts-map-anchor-trigger:hover .vts-ft-ci-icon {
    background: var(--green);
    color: #0a0d14;
    border-color: var(--green);
    transform: scale(1.05);
}

.vts-ft-ci-val a {
    color: rgba(255, 255, 255, .6);
    transition: color .15s;
    text-decoration: none;
}

.vts-ft-meta-container-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 0;
    border-bottom: 1px solid var(--navy-border);
    position: relative;
    z-index: 1;
}

.vts-ft-social-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
}

.vts-ft-social-link {
    font-size: 18px;
    color: var(--text-muted);
    transition: color 0.2s ease, transform 0.2s ease;
}

.vts-ft-social-link:hover {
    color: var(--green);
    transform: translateY(-2px);
}

.vts-ft-navigation-links-list {
    display: flex;
    align-items: center;
    gap: 24px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.vts-ft-nav-item-anchor {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--text-muted);
    transition: color 0.2s ease;
}

.vts-ft-nav-item-anchor:hover {
    color: var(--white);
}

.vts-ft-copy-line {
    margin: 0;
    color: rgba(255, 255, 255, .55);
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .04em;
}

@media (max-width: 1199px) {}

@media (max-width: 991px) {
    .vts-ft-promo-row {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .vts-ft-promo-card {
        padding: 24px;
        min-height: auto;
        align-items: flex-start;
        flex-direction: column;
        border-radius: var(--radius-lg);
    }

    .vts-ft-promo-action-btn {
        display: none;
    }

    .vts-ft-meta-container-strip {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .vts-ft-navigation-links-list {
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px;
    }

    .vt-contact-form-wrapper {
        padding: 30px 20px;
    }
}

@media (max-width: 767px) {
    .vts-ft-services {
        grid-template-columns: 1fr 1fr;
        gap: 20px 16px;
    }
}

@media (max-width: 575px) {}

/* Lead form validation, toast and success modal support */

@keyframes vtPop {}

@keyframes vtSlide {}

@media (max-width: 575px) {}

/* Lead form validation, toast and success modal support */
.vt-hp-field {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.vt-lead-form .vt-form-control.is-vt-invalid,
.vt-lead-form .vt-form-select.is-vt-invalid {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 4px rgba(220, 53, 69, .12) !important;
}

.vt-human-check {
    display: flex;
    align-items: center;
    gap: 10px;
    /* padding: 5px 6px;
    margin: 4px 0 18px; */
    border-radius: 14px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #000;
    font-size: 13px;
    font-weight: 700;
}

.vt-human-check .form-check-input {
    width: 18px;
    height: 18px;
    margin: 0;
    cursor: pointer;
}

.vt-human-check label {
    margin: 0;
    cursor: pointer;
}

.vt-char-count {
    margin-top: 6px;
    text-align: right;
    font-size: 11px;
    font-weight: 700;
    color: rgba(255, 255, 255, .72);
}

.vt-char-count.limit-near {
    color: #fbbf24;
}

.vt-char-count.limit-full {
    color: #fb7185;
}

.vt-success-modal .modal-content {
    border: 0;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .28);
}

.vt-success-top {
    background: linear-gradient(135deg, #2563eb, #06b6d4);
    padding: 36px 28px 28px;
    text-align: center;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.vt-success-top::after,
.vt-success-top::before {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
}

.vt-success-top::after {
    width: 180px;
    height: 180px;
    right: -70px;
    top: -70px;
}

.vt-success-top::before {
    width: 130px;
    height: 130px;
    left: -45px;
    bottom: -55px;
}

.vt-check-circle {
    width: 86px;
    height: 86px;
    border-radius: 50%;
    background: #fff;
    color: #2563eb;
    margin: 0 auto 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .18);
    position: relative;
    z-index: 2;
    animation: vtPop .45s ease;
}

.vt-check-circle i {
    font-size: 42px;
    line-height: 1;
}

.vt-success-top h3,
.vt-success-top p {
    position: relative;
    z-index: 2;
}

.vt-success-top h3 {
    font-size: 26px;
    font-weight: 800;
    margin: 0 0 8px;
}

.vt-success-top p {
    margin: 0;
    opacity: .9;
    font-size: 14px;
}

.vt-success-body {
    padding: 30px;
    text-align: center;
    background: #fff;
}

.vt-success-body h4 {
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 8px;
    color: #111827;
}

.vt-success-body p {
    color: #6b7280;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 22px;
}

.vt-success-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.vt-success-actions .btn {
    border-radius: 999px;
    padding: 11px 22px;
    font-weight: 800;
    font-size: 14px;
}

.vt-toast {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 99999;
    background: #fff;
    border-radius: 16px;
    padding: 14px 16px;
    min-width: 280px;
    max-width: 360px;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .18);
    border-left: 5px solid #dc3545;
    display: none;
}

.vt-toast.show {
    display: block;
    animation: vtSlide .25s ease;
}

.vt-toast strong {
    display: block;
    color: #111827;
    margin-bottom: 4px;
    font-size: 14px;
}

.vt-toast span {
    color: #6b7280;
    font-size: 13px;
    line-height: 1.5;
}

@keyframes vtPop {
    0% {
        transform: scale(.65);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes vtSlide {
    from {
        transform: translateX(20px);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@media (max-width: 575px) {
    .vt-toast {
        left: 16px;
        right: 16px;
        top: 16px;
        min-width: auto;
    }

    .vt-success-top {
        padding: 28px 20px 22px;
    }

    .vt-success-body {
        padding: 24px 20px;
    }
}

/* Inline style block 5 */
/* ═══════════════════════════════════════════
   DESIGN SYSTEM — VTS
   Primary: #1DB954 (green) | Dark: #0a0d14 | Mid: #111827
═══════════════════════════════════════════ */
:root {
    --green: #1DB954;
    --green-light: #25d466;
    --green-dim: rgba(29, 185, 84, .12);
    --green-border: rgba(29, 185, 84, .25);
    --navy: #0a0d14;
    --navy-mid: #111827;
    --navy-light: #1a2235;
    --navy-border: rgba(255, 255, 255, .08);
    --white: #ffffff;
    --text-muted: #94a3b8;
    --text-dim: rgba(255, 255, 255, .35);
    --section-pad: 80px;
    --container: 1480px;
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 20px;
    --radius-xl: 28px;
}

*,
*::before,
*::after {
    box-sizing: border-box;
    outline: none !important;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: 'Open Sans', system-ui, sans-serif;
    font-size: 15px;
    line-height: 1.7;
    color: #1e293b;
    background: #fff;
    overflow-x: hidden;
}

body::-webkit-scrollbar {
    width: 6px;
}

body::-webkit-scrollbar-track {
    background: var(--navy);
}

body::-webkit-scrollbar-thumb {
    background: var(--green);
    border-radius: 3px;
}

a {
    text-decoration: none;
    color: inherit;
}

img {
    max-width: 100%;
    display: block;
}

.vt-container {
    max-width: var(--container);
}

h1,
h2,
h3,
h4,
h5,
h6,
.font-display {
    font-family: 'Roboto', sans-serif;
}

/* Reveal animation */
.vt-reveal {
    opacity: 0;
    transform: translateY(28px);
    transition: opacity .65s ease, transform .65s ease;
}

.vt-reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* ════════ LOADER ════════ */
.vt-loader {
    position: fixed;
    inset: 0;
    background: var(--navy);
    z-index: 9999;
    display: grid;
    place-items: center;
    transition: opacity .45s ease, visibility .45s ease;
}

.vt-loader.loaded {
    opacity: 0;
    visibility: hidden;
}

.vt-loader-text {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(24px, 5vw, 64px);
    font-weight: 800;
    letter-spacing: .06em;
    color: var(--white);
    animation: loaderPulse 1.6s infinite ease-in-out;
}

.vt-loader-text span {
    color: var(--green);
}

@keyframes loaderPulse {
    50% {
        transform: scale(1.04);
        opacity: .7;
    }
}

/* ════════ HEADER ════════ */
.vt-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1200;
    padding: 16px 0;
    transition: all .3s ease;
    background: transparent;
}

.vt-header.vt-scrolled,
.vt-header.menu-open {
    background: var(--navy);
    box-shadow: 0 4px 40px rgba(0, 0, 0, .4);
    border-bottom: 1px solid var(--navy-border);
    padding: 10px 0;
}

/* Logo */
.vt-logo-vts {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    text-decoration: none;
    color: var(--white);
    position: relative;
    z-index: 1300;
    transition: color .25s;
}

.vt-logo-left {
    font-family: 'Roboto', sans-serif;
    font-size: 36px;
    font-weight: 800;
    letter-spacing: -2px;
    line-height: 1;
}

.vt-logo-divider {
    width: 2px;
    height: 32px;
    background: var(--green);
    flex-shrink: 0;
}

.vt-logo-right {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.vt-logo-right strong {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 3px;
    line-height: 1;
}

.vt-logo-vts:hover {
    color: var(--green);
}

/* Nav */
.vt-nav {
    gap: 4px;
    position: relative;
    z-index: 1270;
}

.vt-nav>li>a {
    color: var(--white) !important;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: 8px 10px !important;
    transition: color .25s;
}

.vt-nav>li>a:hover,
.vt-nav>li.active>a {
    color: var(--green) !important;
}

.vt-nav i {
    font-size: 11px;
    transition: transform .3s;
}

.vt-has-mega:hover i {
    transform: rotate(-180deg);
}

.vt-store-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--green);
    color: #071a0e !important;
    font-size: 13px;
    font-weight: 700;
    padding: 9px 18px;
    border-radius: var(--radius-md);
    text-transform: uppercase;
    transition: .25s;
    white-space: nowrap;
    border: 0;
}

.vt-store-btn:hover {
    background: var(--green-light);
}

.vt-mobile-btn {
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, .1);
    color: var(--white);
    display: grid;
    place-items: center;
    font-size: 26px;
    padding: 0;
    position: relative;
    z-index: 1300;
    transition: .25s;
}

.vt-mobile-btn:hover {
    background: var(--green);
    color: #071a0e;
}

/* Mega Menu */
.vt-mega {
    position: fixed;
    left: 0;
    right: 0;
    top: var(--vt-header-h, 74px);
    width: 100vw;
    max-height: calc(100vh - var(--vt-header-h, 74px));
    overflow-y: auto;
    overflow-x: hidden;
    padding: 32px 0 36px;
    background: var(--navy-mid);
    border-top: 1px solid var(--navy-border);
    border-bottom: 1px solid var(--navy-border);
    transform: translateY(calc(-100% - var(--vt-header-h, 74px)));
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: transform .5s ease, opacity .25s ease, visibility .5s ease;
    z-index: 1100;
}

.vt-has-mega:hover .vt-mega,
.vt-has-mega:focus-within .vt-mega {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.vt-mega-col h4 {
    font-family: 'Roboto', sans-serif;
    color: var(--green);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin: 0 0 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--green-border);
}

.vt-mega-link {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 12px;
    padding: 8px 10px;
    border-radius: var(--radius-sm);
    transition: background .2s;
    color: var(--white);
    min-height: 56px;
}

.vt-mega-link:hover {
    background: var(--green-dim);
}

.vt-mega-link .icon {
    width: 38px;
    height: 38px;
    border: 1px solid var(--navy-border);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--green);
    font-size: 15px;
    transition: .2s;
}

.vt-mega-link:hover .icon {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
}

.vt-mega-link strong {
    display: block;
    font-size: 13px;
    font-weight: 600;
}

.vt-mega-link span {
    display: block;
    font-size: 11px;
    margin-top: 2px;
    color: var(--text-muted);
}

@media (min-width: 992px) {
    .vt-has-mega {
        position: static;
    }

    .vt-mega-col {
        padding-right: 20px;
    }

    :root {
        --vt-header-fixed-h: 72px;
    }

    .vt-header {
        height: var(--vt-header-fixed-h);
        padding: 0 !important;
        display: flex;
        align-items: center;
    }

    .vt-header .navbar {
        width: 100%;
        min-height: var(--vt-header-fixed-h);
        display: flex;
        align-items: center;
    }

    .vt-header.vt-scrolled,
    .vt-header.menu-open {
        padding: 0 !important;
    }

    .vt-mega {
        top: var(--vt-header-fixed-h) !important;
        max-height: calc(100vh - var(--vt-header-fixed-h)) !important;
        transform: translateY(calc(-100% - var(--vt-header-fixed-h))) !important;
    }

    .vt-has-mega:hover .vt-mega,
    .vt-has-mega:focus-within .vt-mega {
        transform: translateY(0) !important;
    }
}

@media (max-width: 991.98px) {
    .vt-mega {
        display: none !important;
    }

    .vt-store-btn {
        display: none;
    }
}

/* Mobile Offcanvas */
.vt-mobile-pro {
    width: min(92vw, 400px) !important;
    background: var(--navy-mid) !important;
    color: var(--white);
    border-left: 1px solid var(--navy-border) !important;
}

.vt-mobile-header {
    padding: 16px 18px 14px;
    border-bottom: 1px solid var(--navy-border);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.vt-mobile-brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--white);
    text-decoration: none;
}

.vt-mobile-brand-main {
    font-family: 'Roboto', sans-serif;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -1px;
}

.vt-mobile-brand-line {
    width: 2px;
    height: 30px;
    background: var(--green);
}

.vt-mobile-brand-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.vt-mobile-brand-text strong {
    font-size: 9px;
    letter-spacing: 2px;
    font-weight: 700;
}

.vt-mobile-close {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, .07);
    color: var(--white);
    display: grid;
    place-items: center;
    transition: .2s;
}

.vt-mobile-close:hover {
    background: var(--green);
    color: #071a0e;
}

.vt-mobile-body {
    padding: 18px 18px 90px;
    overflow-y: auto;
}

.vt-mobile-cta {
    margin-bottom: 16px;
}

.vt-mobile-cta a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 15px;
    border-radius: var(--radius-md);
    background: var(--green);
    color: #071a0e;
    text-decoration: none;
}

.vt-mobile-cta i {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(0, 0, 0, .12);
    display: grid;
    place-items: center;
    font-size: 18px;
}

.vt-mobile-cta strong {
    display: block;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}

.vt-mobile-cta small {
    display: block;
    font-size: 11px;
    opacity: .8;
    margin-top: 1px;
}

.vt-mobile-direct-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 12px;
}

.vt-mobile-direct-links a {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 12px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .06);
    color: var(--white);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.vt-mobile-direct-links i {
    color: var(--green);
}

.vt-mobile-accordion-pro .accordion-item {
    background: transparent;
    border: 0;
    margin-bottom: 8px;
}

.vt-mobile-accordion-pro .accordion-button {
    background: rgba(255, 255, 255, .06);
    color: var(--white);
    border-radius: var(--radius-md) !important;
    padding: 12px 14px;
    box-shadow: none;
    gap: 11px;
}

.vt-mobile-accordion-pro .accordion-button:not(.collapsed) {
    background: var(--green-dim);
    color: var(--white);
}

.vt-mobile-accordion-pro .accordion-button::after {
    filter: invert(1);
    opacity: .7;
}

.vt-acc-icon {
    width: 36px;
    height: 36px;
    border-radius: var(--radius-sm);
    background: var(--green-dim);
    color: var(--green);
    display: grid;
    place-items: center;
    flex-shrink: 0;
    font-size: 16px;
}

.vt-mobile-accordion-pro .accordion-button strong {
    display: block;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.vt-mobile-accordion-pro .accordion-button small {
    display: block;
    color: var(--text-muted);
    font-size: 11px;
    margin-top: 1px;
}

.vt-mobile-accordion-pro .accordion-body {
    padding: 8px 4px 2px 12px;
}

.vt-mobile-list-pro a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 40px;
    padding: 8px 10px;
    color: rgba(255, 255, 255, .75);
    text-decoration: none;
    border-left: 1px solid var(--green-border);
    font-size: 13px;
    font-weight: 500;
    transition: .2s;
}

.vt-mobile-list-pro a i {
    color: var(--green);
    width: 16px;
    text-align: center;
}

.vt-mobile-list-pro a:hover {
    color: var(--white);
    transform: translateX(3px);
}

.vt-view-all-mobile {
    color: var(--green) !important;
    font-weight: 700 !important;
}

.vt-mobile-contact-box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 16px;
}

.vt-mobile-contact-box a {
    min-height: 46px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .06);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.vt-mobile-contact-box i {
    color: var(--green);
}

.vt-mobile-sticky-cta {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: rgba(10, 13, 20, .95);
    border-top: 1px solid var(--navy-border);
}

.vt-mobile-sticky-cta a {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--white);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.vt-mobile-sticky-cta a:first-child {
    background: var(--green);
    color: #071a0e;
}

.vt-mobile-sticky-cta a:last-child {
    background: rgba(255, 255, 255, .06);
}

@media (max-width: 991.98px) {
    .vt-mobile-pro {
        z-index: 1505 !important;
        top: 0 !important;
        height: 100dvh !important;
    }

    .offcanvas-backdrop {
        z-index: 1490 !important;
    }

    .vt-mobile-header {
        position: sticky;
        top: 0;
        z-index: 10;
        background: var(--navy-mid);
    }
}

@media (max-width: 360px) {
    .vt-mobile-body {
        padding: 14px 14px 84px;
    }

    .vt-mobile-direct-links,
    .vt-mobile-contact-box {
        grid-template-columns: 1fr;
    }
}

/* ════════ HERO ════════ */
.vt-hero {
    min-height: 100svh;
    position: relative;
    overflow: hidden;
    background: var(--navy);
    display: flex;
    align-items: center;
}

.vt-hero-bg {
    position: absolute;
    inset: -8%;
    background-image:
        radial-gradient(circle at 72% 18%, rgba(29, 185, 84, .18), transparent 28%),
        radial-gradient(circle at 25% 70%, rgba(29, 185, 84, .08), transparent 25%),
        linear-gradient(120deg, rgba(10, 13, 20, .85), rgba(10, 13, 20, .4)),
        url("https://images.pexels.com/photos/5833797/pexels-photo-5833797.jpeg");
    background-size: cover;
    background-position: center;
    animation: heroZoom 22s infinite ease-in-out;
}

@keyframes heroZoom {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.14);
    }
}

.vt-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 13, 20, .2), transparent 40%, rgba(10, 13, 20, .6));
    pointer-events: none;
}

.vt-hero-content {
    position: relative;
    z-index: 2;
    width: 100%;
    padding-top: 20px;
}

.vt-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--green);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin: 0 0 16px;
}

.vt-kicker::before {
    content: '';
    width: 24px;
    height: 2px;
    background: var(--green);
    flex-shrink: 0;
}

.vt-hero-title {
    font-family: 'Roboto', sans-serif;
    color: var(--white);
    font-size: clamp(28px, 4vw, 52px);
    line-height: 1.06;
    font-weight: 800;
    letter-spacing: -.03em;
    margin: 0;
    text-transform: uppercase;
}

.vt-type-line {
    display: inline-block;
    position: relative;
    min-height: 1.1em;
}

.vt-type-line::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4px;
    height: 3px;
    background: var(--green);
    border-radius: 2px;
}

.vt-hero-desc {
    max-width: 580px;
    margin: 22px 0 0;
    color: rgba(255, 255, 255, .72);
    font-size: clamp(14px, 1.3vw, 17px);
    line-height: 1.7;
    font-weight: 300;
}

.vt-hero-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 32px;
}

.vt-hero-btn {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 24px;
    border-radius: var(--radius-md);
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    transition: .25s;
}

.vt-hero-btn.primary {
    background: var(--green);
    color: #071a0e;
    border: 1.5px solid var(--green);
}

.vt-hero-btn.primary:hover {
    background: var(--green-light);
    border-color: var(--green-light);
}

.vt-hero-btn.secondary {
    background: rgba(255, 255, 255, .08);
    color: var(--white);
    border: 1.5px solid rgba(255, 255, 255, .2);
}

.vt-hero-btn.secondary:hover {
    background: rgba(255, 255, 255, .15);
    border-color: rgba(255, 255, 255, .35);
}

.vt-hero-bottom {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 32px;
    z-index: 3;
}

.vt-hero-tagline {
    font-size: 12px;
    color: rgba(255, 255, 255, .45);
    font-weight: 500;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.vt-growth-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border-radius: var(--radius-sm);
    background: rgba(29, 185, 84, .12);
    border: 1px solid var(--green-border);
    color: var(--green);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
}

@media (max-width: 575.98px) {
    .vt-hero-title {
        font-size: 34px;
    }

    .vt-hero-desc {
        font-size: 14px;
    }

    .vt-hero-btn {
        width: 100%;
        min-height: 48px;
        font-size: 12px;
    }

    .vt-hero-actions {
        gap: 8px;
        margin-top: 24px;
    }

    .vt-hero-bottom {
        bottom: 20px;
    }
}

/* ════════ EXPERTISE ════════ */
.vt-expertise-sec {
    padding: var(--section-pad) 0 0;
    background: var(--navy);
    position: relative;
    overflow: hidden;
}

.vt-expertise-sec::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--green), transparent);
}

.vt-how-help {
    padding-bottom: 48px;
    color: var(--white);
}

.vt-how-help h2 {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(22px, 3vw, 38px);
    font-weight: 800;
    margin: 0;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.vt-help-links a {
    color: var(--text-muted);
    font-size: 14px;
    font-weight: 500;
    margin-left: 28px;
    transition: color .2s;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.vt-help-links a:hover {
    color: var(--green);
}

.vt-expertise-panel {
    position: relative;
    padding: 48px 0 64px;
    background: var(--navy-light);
    border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}

.vt-expertise-title {
    font-family: 'Roboto', sans-serif;
    color: var(--white);
    font-size: clamp(22px, 2.8vw, 36px);
    font-weight: 800;
    letter-spacing: -.02em;
    margin-bottom: 24px;
    text-transform: uppercase;
}

.vt-expertise-card {
    position: relative;
    padding: 28px 20px 20px 0;
    border-bottom: 1px solid var(--navy-border);
    color: var(--white);
    transition: .28s ease;
    min-height: 200px;
}

.vt-expertise-card:hover {
    padding-left: 16px;
    transform: translateY(-4px);
}

.vt-expertise-card:hover h3 {
    color: var(--green);
}

.vt-expertise-card h3 {
    font-family: 'Roboto', sans-serif;
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 10px;
    transition: color .2s;
    line-height: 1.3;
    text-transform: uppercase;
}

.vt-expertise-card p {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.65;
    margin-bottom: 14px;
}

.vt-expertise-card a {
    font-size: 13px;
    color: var(--text-muted);
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: color .2s;
}

.vt-expertise-card a:hover {
    color: var(--green);
}

.vt-view-all {
    margin-top: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    border-radius: var(--radius-md);
    border: 1px solid var(--green-border);
    color: var(--white);
    padding: 0 22px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    background: transparent;
    transition: .25s;
}

.vt-view-all:hover {
    background: var(--green);
    border-color: var(--green);
    color: #071a0e;
}

@media (max-width: 991.98px) {
    .vt-how-help {
        display: block;
    }

    .vt-help-links {
        margin-top: 14px;
    }

    .vt-help-links a {
        margin-left: 0;
        margin-right: 20px;
    }

    .vt-expertise-panel {
        padding: 40px 0 52px;
    }
}

@media (max-width: 767.98px) {
    .vt-expertise-sec {
        padding: 56px 0 0;
    }

    .vt-how-help {
        padding-bottom: 32px;
    }

    .vt-expertise-card {
        min-height: auto;
        padding: 22px 0 16px;
    }

    .vt-expertise-card.vt-hidden-mobile {
        display: none;
    }

    .vt-expertise-panel.show-all .vt-expertise-card.vt-hidden-mobile {
        display: block;
    }
}

/* ════════ TECH / ABOUT ════════ */
.vt-tech-sec {
    position: relative;
    padding: 100px 0 80px;
    color: var(--white);
    text-align: center;
    background:
        radial-gradient(circle at 80% 20%, rgba(29, 185, 84, .12), transparent 30%),
        radial-gradient(circle at 20% 70%, rgba(29, 185, 84, .06), transparent 28%),
        linear-gradient(180deg, rgba(10, 13, 20, .96), rgba(10, 13, 20, .9)),
        url("https://images.pexels.com/photos/3861969/pexels-photo-3861969.jpeg?auto=compress&cs=tinysrgb&w=1920");
    background-size: cover;
    background-position: center;
}

.vt-tech-kicker {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--green);
    margin: 0 0 12px;
}

.vt-tech-title {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(28px, 4.5vw, 58px);
    font-weight: 800;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin: 0 0 28px;
    text-transform: uppercase;
}

.vt-toggle-btn {
    width: 40px;
    height: 40px;
    display: inline-grid;
    place-items: center;
    border: 1px solid var(--green-border);
    border-radius: 50%;
    background: var(--green-dim);
    color: var(--green);
    font-size: 20px;
    cursor: pointer;
    transition: .3s;
}

.vt-toggle-btn.active {
    transform: rotate(180deg);
}

.vt-tech-body {
    display: none;
    padding-top: 32px;
    max-width: 900px;
    margin: auto;
}

.vt-tech-body h3 {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(26px, 3.5vw, 44px);
    font-weight: 700;
    line-height: 1.2;
    margin: 32px 0;
    text-transform: uppercase;
}

.vt-tech-body p {
    font-size: clamp(14px, 1.4vw, 17px);
    line-height: 1.75;
    color: rgba(255, 255, 255, .72);
}

.vt-tech-body .green {
    color: var(--green);
}

.vt-tech-body a {
    color: var(--green);
    font-weight: 600;
}

@media (max-width: 767.98px) {
    .vt-tech-sec {
        padding: 72px 0 60px;
    }
}

/* ════════ GRID / CASE STUDIES ════════ */
.vt-grid-sec {
    padding: var(--section-pad) 0;
    background: #f8fafc;
}

.vt-grid-left,
.vt-grid-right {
    width: 41.6667%;
}

.vt-grid-left {
    float: left;
}

.vt-grid-right {
    float: right;
}

.vt-grid-intro {
    padding-top: 20px;
    margin-bottom: 56px;
}

.vt-grid-intro h2 {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(28px, 3.8vw, 48px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.03em;
    color: var(--navy);
    margin: 0 0 14px;
    text-transform: uppercase;
}

.vt-grid-intro h2 span {
    color: var(--green);
}

.vt-grid-intro h5 {
    font-size: clamp(16px, 2vw, 22px);
    font-weight: 500;
    color: #334155;
    margin: 0 0 14px;
}

.vt-grid-intro p {
    font-size: 15px;
    color: #64748b;
    margin: 0 0 14px;
    line-height: 1.7;
}

.vt-grid-intro strong {
    color: var(--navy);
}

.vt-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    height: 52px;
    border: 1.5px solid var(--green);
    border-radius: var(--radius-md);
    padding: 0 24px;
    font-size: 14px;
    font-weight: 600;
    color: #071a0e;
    background: var(--green);
    transition: .25s;
    margin-top: 10px;
}

.vt-pill-btn:hover {
    background: transparent;
    color: var(--green);
}

.vt-work-card {
    display: block;
    width: 100%;
    margin-bottom: 44px;
    color: #1e293b;
}

.vt-work-img {
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
    background: #e2e8f0;
    position: relative;
    border-radius: var(--radius-lg);
}

.vt-work-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}

.vt-work-card:hover img {
    transform: scale(1.06);
}

.vt-work-caption {
    padding-top: 16px;
}

.vt-work-caption h3 {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(16px, 1.8vw, 22px);
    font-weight: 700;
    margin: 0 0 8px;
    line-height: 1.25;
    text-transform: uppercase;
}

.vt-work-caption p {
    font-size: 13px;
    color: #64748b;
    margin: 0;
    line-height: 1.65;
}

@media (max-width: 991.98px) {

    .vt-grid-left,
    .vt-grid-right {
        float: none;
        width: 100%;
    }

    .vt-grid-intro {
        margin-bottom: 36px;
    }

    .vt-work-img {
        aspect-ratio: 16/10;
    }
}

@media (max-width: 767.98px) {
    .vt-grid-sec {
        padding: 56px 0;
    }
}

/* ════════ CORE SERVICES CAROUSEL ════════ */
.vt-core-services {
    padding: var(--section-pad) 0;
    background: var(--navy);
    position: relative;
    overflow: hidden;
}

.vt-core-services::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--green-border), transparent);
}

.vt-core-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--green);
    margin-bottom: 10px;
}

.vt-core-eyebrow::before {
    content: '';
    width: 20px;
    height: 2px;
    background: var(--green);
    flex-shrink: 0;
}

.vt-core-title {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(26px, 3.5vw, 44px);
    font-weight: 800;
    letter-spacing: -.03em;
    color: var(--white);
    margin: 0 0 8px;
    text-transform: uppercase;
}

.vt-core-subtitle {
    font-size: 14px;
    color: var(--text-muted);
    max-width: 560px;
    margin: 0;
}

.vt-core-actions a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 18px;
    border-radius: var(--radius-md);
    font-size: 13px;
    font-weight: 600;
    transition: .25s;
    text-decoration: none;
    white-space: nowrap;
}

.vt-core-btn-outline {
    color: var(--text-muted);
    border: 1px solid var(--navy-border);
    background: transparent;
}

.vt-core-btn-outline:hover {
    border-color: var(--green-border);
    color: var(--green);
}

.vt-core-btn-fill {
    color: #071a0e;
    background: var(--green);
    border: 1px solid var(--green);
}

.vt-core-btn-fill:hover {
    background: var(--green-light);
}

.vtCoreSwiper {
    padding: 8px 2px 48px;
    margin-top: 32px;
}

.vt-service-card {
    height: 100%;
    background: var(--navy-light);
    border: 1px solid var(--navy-border);
    border-radius: var(--radius-lg);
    padding: 24px;
    display: flex;
    flex-direction: column;
    transition: border-color .25s, transform .25s;
}

.vt-service-card:hover {
    border-color: var(--green-border);
    transform: translateY(-5px);
}

.vt-service-icon {
    width: 52px;
    height: 52px;
    border-radius: var(--radius-md);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 16px;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
}

.vt-service-card h3 {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 10px;
    line-height: 1.3;
    text-transform: uppercase;
}

.vt-service-card p {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.65;
    margin-bottom: 16px;
}

.vt-service-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 16px;
}

.vt-service-tags span {
    font-size: 11px;
    font-weight: 600;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    border-radius: 99px;
    padding: 4px 10px;
}

.vt-service-link {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--text-muted);
    font-size: 13px;
    font-weight: 600;
    transition: .2s;
}

.vt-service-link i {
    transition: transform .2s;
}

.vt-service-link:hover {
    color: var(--green);
}

.vt-service-link:hover i {
    transform: translateX(3px);
}

.vt-core-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 4px;
}

.vt-core-pagination {
    position: static !important;
    width: auto !important;
}

.vt-core-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: rgba(255, 255, 255, .2);
    opacity: 1;
}

.vt-core-pagination .swiper-pagination-bullet-active {
    width: 24px;
    border-radius: 99px;
    background: var(--green);
}

.vt-core-nav {
    display: flex;
    align-items: center;
    gap: 8px;
}

.vt-core-prev,
.vt-core-next {
    position: static !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    border-radius: 50%;
    background: var(--navy-light) !important;
    border: 1px solid var(--navy-border) !important;
    color: var(--white) !important;
}

.vt-core-prev::after,
.vt-core-next::after {
    font-size: 14px !important;
}

.vt-core-prev:hover,
.vt-core-next:hover {
    border-color: var(--green-border) !important;
    color: var(--green) !important;
}

@media (max-width: 991.98px) {
    .vt-core-head {
        align-items: flex-start !important;
    }

    .vt-core-actions {
        flex-wrap: wrap;
    }
}

@media (max-width: 575.98px) {
    .vt-core-services {
        padding: 56px 0;
    }

    .vt-core-bottom {
        justify-content: center;
        gap: 12px;
    }

    .vt-core-actions {
        width: 100%;
    }

    .vt-core-actions a {
        flex: 1;
        justify-content: center;
    }
}

/* ════════ CONTACT ════════ */
.vt-contact-sec {
    padding: var(--section-pad) 0;
    background: radial-gradient(circle at 5% 10%, rgba(29, 185, 84, .07), transparent 28%), radial-gradient(circle at 95% 90%, rgba(29, 185, 84, .05), transparent 26%), #f8fafc;
    position: relative;
    overflow: hidden;
}

.vt-contact-sec::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(29, 185, 84, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(29, 185, 84, .04) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
}

.vt-contact-wrap {
    position: relative;
    z-index: 2;
    border-radius: var(--radius-xl);
    padding: 32px;
    background: rgba(255, 255, 255, .75);
    border: 1px solid rgba(29, 185, 84, .1);
    box-shadow: 0 24px 70px rgba(10, 13, 20, .08);
}

.vt-contact-info {
    height: 100%;
    padding: 36px;
    border-radius: var(--radius-lg);
    color: var(--white);
    background: radial-gradient(circle at 10% 10%, rgba(29, 185, 84, .2), transparent 30%), linear-gradient(145deg, var(--navy) 0%, var(--navy-mid) 60%, #0d2418 100%);
    position: relative;
    overflow: hidden;
}

.vt-contact-info::before {
    content: '';
    position: absolute;
    width: 260px;
    height: 260px;
    right: -100px;
    bottom: -100px;
    border-radius: 50%;
    background: rgba(29, 185, 84, .07);
}

.vt-contact-info::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: .15;
    pointer-events: none;
}

.vt-contact-info>* {
    position: relative;
    z-index: 2;
}

.vt-contact-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 14px;
    margin-bottom: 20px;
    border-radius: 99px;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.vt-contact-info h3 {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(26px, 3.2vw, 44px);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 14px;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.vt-contact-info h3 span {
    color: var(--green);
    display: block;
}

.vt-contact-info>p {
    color: rgba(255, 255, 255, .68);
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 24px;
}

.vt-contact-points {
    display: grid;
    gap: 12px;
    margin-bottom: 24px;
}

.vt-contact-point {
    display: flex;
    gap: 12px;
    padding: 14px;
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--navy-border);
}

.vt-contact-point-icon {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-sm);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    font-size: 18px;
}

.vt-contact-point h6 {
    margin: 0 0 3px;
    color: var(--white);
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
}

.vt-contact-point p {
    margin: 0;
    color: rgba(255, 255, 255, .58);
    font-size: 12px;
    line-height: 1.5;
}

.vt-contact-form {
    height: 100%;
    padding: 32px;
    border-radius: var(--radius-lg);
    background: var(--white);
    border: 1px solid rgba(10, 13, 20, .08);
    box-shadow: 0 12px 40px rgba(10, 13, 20, .06);
}

.vt-form-head {
    margin-bottom: 22px;
}

.vt-form-head span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
    color: var(--green);
    background: var(--green-dim);
    padding: 6px 12px;
    border-radius: 99px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.vt-form-head h4 {
    font-family: 'Roboto', sans-serif;
    font-size: clamp(22px, 2.5vw, 32px);
    font-weight: 800;
    color: var(--navy);
    margin-bottom: 6px;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.vt-form-head p {
    color: #64748b;
    margin: 0;
    font-size: 13px;
}

.vt-contact-form label {
    display: block;
    margin-bottom: 6px;
    color: #334155;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.vt-input-group {
    position: relative;
}

.vt-input-group>i,
.vt-textarea-group>i {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--green);
    font-size: 16px;
    z-index: 2;
}

.vt-textarea-group>i {
    top: 18px;
    transform: none;
}

.vt-contact-form .form-control,
.vt-contact-form .form-select {
    width: 100%;
    min-height: 50px;
    border-radius: var(--radius-md);
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    color: var(--navy);
    font-size: 13px;
    font-weight: 500;
    padding-left: 42px;
    transition: .2s;
    font-family: 'Open Sans', sans-serif;
}

.vt-contact-form textarea.form-control {
    min-height: 120px;
    resize: vertical;
    padding-top: 14px;
}

.vt-contact-form .form-control::placeholder {
    color: #94a3b8;
}

.vt-contact-form .form-control:focus,
.vt-contact-form .form-select:focus {
    background: var(--white);
    border-color: var(--green);
    box-shadow: 0 0 0 3px rgba(29, 185, 84, .1);
    outline: none;
}

.vt-form-footer {
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.vt-submit {
    min-height: 50px;
    padding: 12px 28px;
    border: 0;
    border-radius: var(--radius-md);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #071a0e;
    background: var(--green);
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .06em;
    cursor: pointer;
    transition: .25s;
}

.vt-submit:hover {
    background: var(--green-light);
    transform: translateY(-2px);
}

.vt-form-footer p {
    margin: 0;
    color: #64748b;
    font-size: 12px;
}

.vt-form-footer p i {
    color: var(--green);
}

@media (max-width: 991.98px) {
    .vt-contact-sec {
        padding: 60px 0;
    }

    .vt-contact-wrap {
        padding: 16px;
        border-radius: var(--radius-lg);
    }

    .vt-contact-info,
    .vt-contact-form {
        padding: 26px;
        border-radius: var(--radius-md);
    }
}

@media (max-width: 575.98px) {
    .vt-contact-sec {
        padding: 48px 0;
    }

    .vt-contact-wrap {
        padding: 10px;
    }

    .vt-contact-info,
    .vt-contact-form {
        padding: 20px;
    }

    .vt-form-footer {
        flex-direction: column;
    }

    .vt-submit {
        width: 100%;
        justify-content: center;
    }
}

/* ════════ CLIENTS ════════ */
.vt-clients {
    padding: var(--section-pad) 0;
    background: var(--navy-mid);
    text-align: center;
}

.vt-clients h2 {
    font-family: 'Roboto', sans-serif;
    color: var(--white);
    font-size: clamp(20px, 2.5vw, 30px);
    font-weight: 700;
    margin: 0 0 36px;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.vt-client-logo {
    height: 64px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: var(--text-muted);
    background: var(--navy-light);
    border: 1px solid var(--navy-border);
    border-radius: var(--radius-md);
    padding: 0 20px;
    transition: .25s;
}

.vt-client-logo:hover {
    color: var(--green);
    border-color: var(--green-border);
}

@media (max-width: 767.98px) {
    .vt-clients {
        padding: 52px 0;
    }
}

/* ════════ SPLIT CTA ════════ */
.vt-split-sec {
    padding: var(--section-pad) 0;
    background: var(--navy);
}

.vt-split-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.vt-split-box {
    position: relative;
    min-height: 240px;
    padding: 32px;
    border-radius: var(--radius-xl);
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    gap: 18px;
    color: var(--white);
    text-decoration: none;
    border: 1px solid var(--navy-border);
    transition: transform .28s, border-color .28s;
    isolation: isolate;
}

.vt-split-box::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    transition: .35s;
}

.vt-split-one::before {
    background: radial-gradient(circle at 15% 15%, rgba(29, 185, 84, .2), transparent 32%), linear-gradient(135deg, var(--navy) 0%, #0a1f10 100%);
}

.vt-split-two::before {
    background: radial-gradient(circle at 85% 15%, rgba(29, 185, 84, .15), transparent 32%), linear-gradient(135deg, var(--navy-mid) 0%, #0d1a10 100%);
}

.vt-split-box:hover {
    transform: translateY(-5px);
    border-color: var(--green-border);
    color: var(--white);
}

.vt-split-box::after {
    content: '';
    position: absolute;
    width: 220px;
    height: 220px;
    right: -80px;
    top: -80px;
    border-radius: 50%;
    background: rgba(29, 185, 84, .05);
    z-index: -1;
    transition: transform .35s;
}

.vt-split-box:hover::after {
    transform: scale(1.3);
}

.vt-split-icon {
    width: 68px;
    height: 68px;
    border-radius: var(--radius-lg);
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    transition: .28s;
}

.vt-split-box:hover .vt-split-icon {
    background: var(--green);
    color: #071a0e;
    border-color: var(--green);
}

.vt-split-content {
    position: relative;
    z-index: 2;
    flex: 1;
}

.vt-split-content span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 10px;
    color: var(--green);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.vt-split-content span::before {
    content: '';
    width: 22px;
    height: 2px;
    background: var(--green);
    border-radius: 99px;
}

.vt-split-content h4 {
    font-family: 'Roboto', sans-serif;
    margin: 0 0 8px;
    font-size: clamp(20px, 2.4vw, 30px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.vt-split-content p {
    margin: 0;
    color: rgba(255, 255, 255, .6);
    font-size: 13px;
    line-height: 1.65;
}

.vt-split-arrow {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--green);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    font-size: 18px;
    transition: .28s;
}

.vt-split-box:hover .vt-split-arrow {
    background: var(--green);
    color: #071a0e;
    border-color: var(--green);
    transform: translateX(4px);
}

@media (max-width: 991.98px) {
    .vt-split-wrap {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .vt-split-sec {
        padding: 60px 0;
    }
}

@media (max-width: 575.98px) {
    .vt-split-sec {
        padding: 48px 0;
    }

    .vt-split-box {
        padding: 24px;
        min-height: auto;
        align-items: flex-start;
        flex-direction: column;
        border-radius: var(--radius-lg);
    }

    .vt-split-icon {
        width: 56px;
        height: 56px;
        font-size: 24px;
    }

    .vt-split-arrow {
        display: none;
    }
}

/* ════════ FOOTER ════════ */
.vts-footer {
    background: var(--navy);
    font-family: 'Open Sans', sans-serif;
    color: var(--white);
    position: relative;
    overflow: hidden;
}

.vts-footer::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .025) 1px, transparent 1px);
    background-size: 28px 28px;
    pointer-events: none;
}

.vts-footer::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--green), transparent);
}

/* Footer Top */
.vts-ft-top {
    display: grid;
    grid-template-columns: 300px 1fr 260px;
    gap: 48px;
    align-items: start;
    padding: var(--section-pad) 0 56px;
    border-bottom: 1px solid var(--navy-border);
    position: relative;
    z-index: 1;
}

.vts-footer .vt-container {
    padding-left: 40px;
    padding-right: 40px;
}

.vts-ft-logo {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    text-decoration: none;
    margin-bottom: 18px;
}

.vts-ft-logo-vts {
    font-family: 'Roboto', sans-serif;
    font-size: 34px;
    font-weight: 800;
    color: var(--white);
    letter-spacing: -2px;
    line-height: 1;
}

.vts-ft-logo-line {
    width: 2px;
    height: 30px;
    background: var(--green);
    flex-shrink: 0;
}

.vts-ft-logo-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.vts-ft-logo-text span {
    font-size: 8px;
    font-weight: 600;
    letter-spacing: 3px;
    color: rgba(255, 255, 255, .55);
    line-height: 1;
}

.vts-ft-tagline {
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--white);
    margin-bottom: 12px;
    letter-spacing: -.01em;
    text-transform: uppercase;
}

.vts-ft-tagline .accent {
    color: var(--green);
}

.vts-ft-desc {
    font-size: 13px;
    color: var(--text-dim);
    line-height: 1.75;
    margin-bottom: 20px;
    font-weight: 300;
}

.vts-ft-socials {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.vts-ft-soc {
    width: 34px;
    height: 34px;
    border-radius: var(--radius-sm);
    background: rgba(255, 255, 255, .06);
    border: 1px solid var(--navy-border);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    font-size: 15px;
    text-decoration: none;
    transition: .2s;
}

.vts-ft-soc:hover {
    background: var(--green);
    border-color: var(--green);
    color: #071a0e;
    transform: translateY(-2px);
}

/* Footer Services Grid */
.vts-ft-services {
    display: grid;
    grid-template-columns: repeat(4, minmax(130px, 1fr));
    gap: 0 24px;
}

.vts-ft-col-head {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--green);
    margin-bottom: 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--green-border);
}

.vts-ft-link {
    display: flex;
    align-items: center;
    gap: 0;
    font-size: 12.5px;
    color: var(--text-dim);
    text-decoration: none;
    padding: 4px 0;
    line-height: 1.4;
    transition: color .18s, gap .18s;
    overflow: hidden;
    text-transform: uppercase;
}

.vts-ft-link .arrow {
    font-size: 11px;
    opacity: 0;
    transform: translateX(-6px);
    transition: opacity .18s, transform .18s;
    flex-shrink: 0;
}

.vts-ft-link:hover {
    color: var(--white);
}

.vts-ft-link:hover .arrow {
    opacity: 1;
    transform: translateX(4px);
    margin-left: 4px;
}

/* Footer Contact */
.vts-ft-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 16px;
}

.vts-ft-ci-icon {
    width: 30px;
    height: 30px;
    border-radius: var(--radius-sm);
    background: var(--green-dim);
    border: 1px solid var(--green-border);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 13px;
    color: var(--green);
    margin-top: 2px;
}

.vts-ft-ci-label {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--text-dim);
    margin-bottom: 3px;
}

.vts-ft-ci-val {
    font-size: 12.5px;
    color: rgba(255, 255, 255, .6);
    line-height: 1.6;
}

.vts-ft-ci-val a {
    color: rgba(255, 255, 255, .6);
    text-decoration: none;
    transition: color .15s;
    display: block;
}

.vts-ft-ci-val a:hover {
    color: var(--green);
}

/* Country Pills */
.vts-ft-pills-row {
    padding: 22px 0;
    border-bottom: 1px solid var(--navy-border);
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
}

.vts-ft-pills-label {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #fff;
    white-space: nowrap;
    flex-shrink: 0;
}

.vts-ft-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.vts-ft-pill {
    display: inline-block;
    padding: 5px 13px;
    border-radius: 99px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid var(--navy-border);
    font-size: 11.5px;
    color: var(--text-muted);
    text-decoration: none;
    transition: .18s;
    white-space: nowrap;
}

.vts-ft-pill:hover {
    background: var(--green-dim);
    border-color: var(--green-border);
    color: var(--green);
}

/* ════ FOOTER BOTTOM — FIXED ════ */
.vts-ft-bottom {
    position: relative;
    z-index: 1;
}

/* Top row: social icons LEFT, nav links RIGHT */
.vts-ft-bottom-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.vts-ft-bottom-social {
    display: flex;
    align-items: center;
    gap: 20px;
}

.vts-ft-bottom-social a {
    color: rgba(255, 255, 255, .6);
    font-size: 20px;
    line-height: 1;
    text-decoration: none;
    transition: .25s ease;
}

.vts-ft-bottom-social a:hover {
    color: var(--green);
    transform: translateY(-2px);
}

.vts-ft-bottom-links {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.vts-ft-bottom-links a {
    color: rgba(255, 255, 255, .55);
    text-decoration: none;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: 4px 8px;
    border-radius: 4px;
    transition: .2s;
}

.vts-ft-bottom-links a:hover {
    color: var(--white);
}

.vts-ft-bottom-links .sep {
    color: rgba(255, 255, 255, .2);
    font-size: 12px;
    user-select: none;
}

/* Copyright row — centered */
.vts-ft-bottom-copy {
    text-align: center;
    padding: 22px 0 8px;
}

.vts-ft-copy-line {
    margin: 0 0 6px;
    color: rgba(255, 255, 255, .55);
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.vts-ft-copy-line strong {
    color: var(--white);
    font-weight: 700;
}

.vts-ft-powered-line {
    margin: 0;
    color: rgba(255, 255, 255, .35);
    font-size: 12px;
    line-height: 1.7;
}

.vts-ft-powered-line strong {
    color: rgba(255, 255, 255, .6);
    font-weight: 600;
}

/* Footer Responsive */
@media (max-width: 1199px) {
    .vts-ft-top {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .vts-ft-services {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
    }
}

@media (max-width: 991.98px) {
    .vts-ft-pills-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .vts-ft-bottom-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .vts-ft-bottom-links {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .vts-ft-services {
        grid-template-columns: 1fr 1fr;
        gap: 20px 16px;
    }
}

@media (max-width: 575px) {
    .vts-footer .vt-container {
        padding-left: 18px;
        padding-right: 18px;
    }

    .vts-ft-services {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .vts-ft-top {
        gap: 28px;
    }

    .vts-ft-bottom-links {
        gap: 4px;
    }

    .vts-ft-bottom-links a {
        font-size: 11px;
        padding: 3px 5px;
    }

    .vts-ft-copy-line,
    .vts-ft-powered-line {
        font-size: 12px;
    }
}

/* --- Footer Alignment Fix --- */
.vts-ft-bottom-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-bottom: 15px;
}

.vts-ft-bottom-copy {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-top: 15px;
}

/* --- Footer Custom Alignment Fix --- */

/* 1. Isse Social Icons left mein aur Navigation links right mein chale jayenge */
.vts-ft-bottom-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-bottom: 20px;
}

/* 2. Isse Careers, Clients, Terms ek sidhi line mein right side dikhenge */
.vts-ft-bottom-links {
    display: flex;
    gap: 15px;
}

/* 3. Isse copyright text bilkul center (beech mein) aa jayega */
.vts-ft-bottom-copy {
    text-align: center;
    width: 100%;
    margin-top: 20px;
}

/* 4. Dono lines ko center mein upar-niche dikhane ke liye */
.vts-ft-copy-line,
.vts-ft-powered-line {
    margin: 5px 0;
    text-align: center;
}

/* --- Final Footer Center Fix --- */
.vts-ft-bottom-copy {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    margin-top: 25px !important;
}

.vts-ft-copy-line {
    margin: 0 0 8px 0 !important;
    text-align: center !important;
}

.vts-ft-powered-line {
    margin: 0 !important;
    text-align: center !important;
}

/* --- Center Text Fix --- */
.vts-ft-bottom-copy {
    text-align: center !important;
}

.vts-ft-copy-line {
    text-align: center !important;
    display: block !important;
}

.vts-ft-powered-line {
    text-align: center !important;
    display: block !important;
}

/* Inline style block 6 */
/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {

    /* Fixes footer link sections to display side-by-side (2 columns) on mobile */

    /* Carousel adjustments for flawless mobile viewing */

}

/* Inline style block 7 */
/* CSS to perfectly center and style the LinkedIn logo inside the graphic card */

/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {

    /* Fixes footer link sections to display side-by-side (2 columns) on mobile */

    /* Carousel adjustments for flawless mobile viewing */

}

/* Inline style block 8 */
/* CSS to perfectly center and style the new Lead Funnel icon inside the graphic card */

.vts-leads-centered-icon {
    font-size: 110px !important;
    color: #ffffff !important;
    z-index: 5;
    position: relative;
    line-height: 1;
}

/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {

    /* Fixes footer link sections to display side-by-side (2 columns) on mobile */

    /* Carousel adjustments for flawless mobile viewing */

}

/* Inline style block 9 */
/* CSS to perfectly center and style the new LinkedIn icon inside the graphic card */

.vts-linkedin-centered-icon {
    font-size: 110px !important;
    color: #ffffff !important;
    z-index: 5;
    position: relative;
    line-height: 1;
}

/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {}

/* Inline style block 10 */
/* CSS to perfectly center and style the new LinkedIn logo inside the graphic card */

.vts-linkedin-centered-logo {
    font-size: 110px !important;
    color: #ffffff !important;
    z-index: 5;
    position: relative;
    line-height: 1;
}

/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {

    /* Fixes footer link sections to display side-by-side (2 columns) on mobile */

    /* Carousel adjustments for flawless mobile viewing */

}

/* Inline style block 11 */
.nykaa-logo-img {
    height: 38px;
    width: auto;
    object-fit: contain;
}

@media (max-width: 991px) {
    .nykaa-logo-img {
        height: 30px;
    }
}

/* Inline style block 12 */
.vts-sitemap-card {
    background: #ffffff;
    border: 1px solid #eef2f5;
    border-radius: 12px;
    padding: 24px;
    height: 100%;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
    overflow: hidden;
}

.vts-sitemap-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
    border-color: #dee2e6;
}

.vts-sitemap-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 0;
    background: linear-gradient(to bottom, #ff4e00, #ec008c);
    transition: height 0.3s ease;
}

.vts-sitemap-card:hover::before {
    height: 100%;
}

.vts-sitemap-header-icon {
    font-size: 2rem;
    margin-bottom: 15px;
    background: linear-gradient(45deg, #ff4e00, #ec008c);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

.vts-sitemap-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 1.25rem;
    color: #1a1a1a;
    margin-bottom: 15px;
}

.vts-sitemap-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.vts-sitemap-links li {
    margin-bottom: 10px;
    border-bottom: 1px dashed #f1f3f5;
    padding-bottom: 8px;
}

.vts-sitemap-links li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.vts-sitemap-link-item {
    color: #4a5568;
    text-decoration: none;
    display: flex;
    align-items: center;
    font-size: 0.925rem;
    transition: all 0.25s ease;
}

.vts-sitemap-link-item i {
    font-size: 0.8rem;
    margin-right: 8px;
    color: #a0aec0;
    transition: transform 0.25s ease, color 0.25s ease;
}

.vts-sitemap-link-item:hover {
    color: #ff4e00;
    padding-left: 5px;
}

.vts-sitemap-link-item:hover i {
    color: #ff4e00;
    transform: translateX(3px);
}

.vts-sitemap-img-wrapper {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    position: relative;
}

.vts-sitemap-img-wrapper img {
    transition: transform 0.6s ease;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.vts-sitemap-img-wrapper:hover img {
    transform: scale(1.04);
}

/* Inline style block 13 */

/* Inline style block 14 */
/* Extra Micro-Animations for Terms Page */
.vt-animate-fade-in {
    animation: termsFadeIn 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.vt-animate-slide-up {
    opacity: 0;
    animation: termsSlideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s forwards;
}

.vt-hero-split-img .img-wrap img {
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.vt-hero-split-img .img-wrap:hover img {
    transform: scale(1.04) rotate(1deg);
}

@keyframes termsFadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes termsSlideUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Inline style block 15 */
.vts-leads-centered-icon {
    color: #ffffff !important;
    font-size: 110px !important;
    z-index: 5 !important;
    position: relative;
    line-height: 1;
}

/* Inline style block 16 */
/* CSS to perfectly center and style the YouTube logo inside the graphic card */
.vts-why-brand-card {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative;
}

.vts-youtube-centered-logo {
    font-size: 110px !important;
    color: #ffffff !important;
    z-index: 5;
    position: relative;
    line-height: 1;
}

/* Mobile-first specific modifications verbatim from source */
@media (max-width: 767px) {

    /* Fixes footer link sections to display side-by-side (2 columns) on mobile */

    /* Carousel adjustments for flawless mobile viewing */

}

/* Inline style block 17 */
@media (max-width: 767px) {
    .vts-ft-services {
        display: flex !important;
        flex-wrap: wrap !important;
        flex-direction: row !important;
        gap: 20px 0px;
    }

    .vts-ft-services>div {
        flex: 0 0 50% !important;
        max-width: 50% !important;
        padding-right: 10px;
    }

    .vts-benefits-carousel-section {
        padding: 40px 10px !important;
        overflow: hidden;
    }

    .vts-swiper-navigation-wrap {
        padding: 0 15px !important;
    }

    .vts-benefit-card {
        padding: 20px 15px !important;
        margin: 5px 2px !important;
    }

    .vts-swiper-btn-prev,
    .vts-swiper-btn-next {
        display: none !important;
    }
}

/* =========================================================
   Extracted style="" attributes from HTML pages
   ========================================================= */

.vts-inline-style-1 {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.vts-inline-style-2 {
    color: #64748b !important;
    font-weight: 500 !important;
    font-size: 13px !important;
    text-decoration: none !important;
}

.vts-inline-style-3 {
    color: #cbd5e1 !important;
    font-size: 11px !important;
}

.vts-inline-style-4 {
    color: var(--green) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

.vts-inline-style-5 {
    position: absolute !important;
    width: 20px !important;
    height: 20px !important;
    background: var(--green) !important;
    border-radius: 50% !important;
    top: 10px !important;
}

.vts-inline-style-6 {
    position: absolute !important;
    width: 14px !important;
    height: 14px !important;
    background: var(--navy-light) !important;
    border-radius: 50% !important;
    bottom: 20px !important;
}

.vts-inline-style-7 {
    color: var(--navy) !important;
}

.vts-inline-style-8 {
    letter-spacing: -1px !important;
    color: var(--navy) !important;
}

.vts-inline-style-9 {
    top: 15px !important;
}

.vts-inline-style-10 {
    font-size: 11px !important;
    letter-spacing: 2px !important;
}

.vts-inline-style-11 {
    background: rgba(29, 185, 84, 0.12) !important;
}

.vts-inline-style-12 {
    color: #1DB954 !important;
}

.vts-inline-style-13 {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.vts-inline-style-14 {
    font-size: 11px !important;
}

.vts-inline-style-15 {
    background: rgba(59, 130, 246, 0.12) !important;
}

.vts-inline-style-16 {
    color: #3b82f6 !important;
}

.vts-inline-style-17 {
    background: rgba(139, 92, 246, 0.12) !important;
}

.vts-inline-style-18 {
    color: #8b5cf6 !important;
}

.vts-inline-style-19 {
    background: rgba(234, 179, 8, 0.12) !important;
}

.vts-inline-style-20 {
    color: #ca8a04 !important;
}

.vts-inline-style-21 {
    background: #0f131c !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.vts-inline-style-22 {
    border: 1px solid rgba(29, 185, 84, 0.25) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3) !important;
}

.vts-inline-style-23 {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: cover !important;
}

.vts-inline-style-24 {
    font-family: 'Roboto', sans-serif !important;
    font-size: clamp(26px, 3.5vw, 44px) !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
}

.vts-inline-style-25 {
    color: #94a3b8 !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}

.vts-inline-style-26 {
    color: #1DB954 !important;
}

.vts-inline-style-27 {
    position: relative !important;
    z-index: 1 !important;
}

.vts-inline-style-28 {
    background: var(--navy) !important;
    border-bottom: 1px solid var(--navy-border) !important;
    padding: 12px 0 !important;
}

.vts-inline-style-29 {
    padding-top: 130px !important;
    background: radial-gradient(circle at 80% 50%, rgba(29, 185, 84, 0.15), transparent 45%), var(--navy) !important;
}

.vts-inline-style-30 {
    color: rgba(255, 255, 255, 0.3) !important;
}

.vts-inline-style-31 {
    color: rgba(255, 255, 255, 0.75) !important;
}

.vts-inline-style-32 {
    aspect-ratio: 4/3 !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5) !important;
}

.vts-inline-style-33 {
    padding: 80px 0 !important;
    background: #ffffff !important;
}

.vts-inline-style-34 {
    background: rgba(29, 185, 84, 0.12) !important;
    border-color: var(--green-border) !important;
    color: var(--green) !important;
}

.vts-inline-style-35 {
    background: rgba(59, 130, 246, 0.1) !important;
    border-color: rgba(59, 130, 246, 0.25) !important;
    color: #3b82f6 !important;
}

.vts-inline-style-36 {
    background: rgba(139, 92, 246, 0.1) !important;
    border-color: rgba(139, 92, 246, 0.25) !important;
    color: #8b5cf6 !important;
}

.vts-inline-style-37 {
    border: 1px solid var(--green-border) !important;
    background: var(--green-dim) !important;
}

.vts-inline-style-38 {
    color: var(--navy) !important;
    border-bottom: 1px solid var(--green-border) !important;
}

.vts-inline-style-39 {
    font-size: 13px !important;
    color: #334155 !important;
}

.vts-inline-style-40 {
    font-weight: 700 !important;
    color: var(--green) !important;
}

.vts-inline-style-41 {
    aspect-ratio: 4/3 !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5) !important;
    overflow: hidden !important;
    border-radius: var(--radius-xl) !important;
}

.vts-inline-style-42 {
    background: var(--green-dim) !important;
    border-color: var(--green-border) !important;
    color: var(--green) !important;
}

.vts-inline-style-43 {
    color: var(--green) !important;
}

/* CTA restore/fallback - footer ke upar wala split CTA section */
.vt-split-sec {
    padding: 36px 0;
    background: #ffffff;
    position: relative;
    z-index: 1;
}

.vt-split-wrap {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.vt-split-box {
    position: relative;
    overflow: hidden;
    min-height: 180px;
    padding: 30px;
    border-radius: 24px;
    display: flex;
    align-items: center;
    gap: 22px;
    color: #ffffff;
    background: #101827;
    box-shadow: 0 20px 45px rgba(2, 6, 23, 0.18);
    transition: transform .25s ease, box-shadow .25s ease;
}

.vt-split-box::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .95;
    z-index: -1;
}

.vt-split-one::before {
    background: linear-gradient(135deg, #0f172a, #1DB954);
}

.vt-split-two::before {
    background: linear-gradient(135deg, #111827, #2563eb);
}

.vt-split-box:hover {
    transform: translateY(-4px);
    box-shadow: 0 25px 55px rgba(2, 6, 23, 0.24);
    color: #ffffff;
}

.vt-split-icon {
    width: 64px;
    height: 64px;
    min-width: 64px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .25);
    font-size: 30px;
}

.vt-split-content span {
    display: inline-block;
    margin-bottom: 8px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .78);
}

.vt-split-content h4 {
    margin: 0 0 8px;
    font-size: 24px;
    line-height: 1.25;
    font-weight: 900;
    color: #ffffff;
}

.vt-split-content p {
    margin: 0;
    color: rgba(255, 255, 255, .82);
}

.vt-split-arrow {
    margin-left: auto;
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .25);
}

@media (max-width: 991px) {
    .vt-split-wrap {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .vt-split-sec {
        padding: 24px 0;
    }

    .vt-split-box {
        padding: 22px;
        align-items: flex-start;
    }

    .vt-split-icon {
        width: 54px;
        height: 54px;
        min-width: 54px;
        font-size: 24px;
    }

    .vt-split-content h4 {
        font-size: 20px;
    }

    .vt-split-arrow {
        display: none;
    }
}

/* Final safety: footer ke upar CTA kabhi hidden na rahe, even if reveal JS fail ho */
.vt-split-sec .vt-reveal,
.vt-split-sec .vt-reveal.visible {
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
}

/* --- VTS Marketplace Section Styles --- */
.vts-tbb-title {
    margin-bottom: 20px !important;
}

.vts-tbb-desc {
    max-width: 850px;
    margin: 0 auto 25px auto;
    font-size: 16px;
    text-align: center;
    color: #d0d0d0;
    line-height: 1.7;
}

/* Horizontal Badges Container */
.vts-badges-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    margin-bottom: 35px;
    color: #a0a0a0;
    font-size: 14px;
    flex-wrap: wrap;
}

.vts-badge-item span {
    color: #28a745;
    margin-right: 6px;
}

/* --- VTS Reputation Architecture Section --- */
.vts-yt-title {
    font-size: 32px;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.vts-yt-desc {
    text-align: justify;
    line-height: 1.7;
    color: #b0b0b0;
    font-size: 16px;
}

/* --- VTS Why Invest Section --- */
.vts-why-title {
    font-size: 32px;
    margin-bottom: 25px;
    text-transform: uppercase;
}

.vts-why-paragraph {
    text-align: justify;
    line-height: 1.6;
    margin-bottom: 20px;
    color: black;
}

/* Last paragraph ke niche extra space hatane ke liye */
.vts-why-paragraph:last-child {
    margin-bottom: 0;
}

/* --- VTS About Section Custom Framework --- */
.vts-about-sc-eyebrow {
    color: green !important;
    /* Red hata kar direct neon green kiya */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: inline-block;
    margin-bottom: 10px;
}

.vts-about-sc-title {
    font-size: 28px;
    line-height: 1.3;
    margin-bottom: 20px;
}

.vts-about-sc-p {
    text-align: justify;
    line-height: 1.6;
    margin-bottom: 15px;
    color: black;
}

/* Second paragraph ke liye specific margin layout */
.vts-about-sc-p-spacer {
    margin-bottom: 25px;
}

.vts-about-checklist-group {
    text-align: justify;
    line-height: 1.6;
    margin-bottom: 25px;
    list-style-type: none;
    padding-left: 0;
}

.vts-about-checklist-group li {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
}

.vts-about-checklist-group li i {
    color: #28a745;
    margin-right: 8px;
    font-weight: bold;
}

/* --- Black Section Eyebrow Neon Green Fix --- */
.vts-inline-style-10,
.vts-text-dim.vts-inline-style-10 {
    color: #39FF14 !important;
    /* Light Neon Green */
    opacity: 1 !important;
    /* Dim effect ko khatam karne ke liye */
    visibility: visible !important;
}

/* ==========================================================================
   VTS TWITTER BRAND BANNER CUSTOM STYLE
   ========================================================================== */

/* Main Section Container - Elements ko saaf rakhne ke liye padding */
.vts-twitter-brand-banner {
    padding: 60px 0;
    text-align: center;
    background-color: #0b0f19;
    /* Dark background taaki neon aur white khul kar dikhe */
}

/* Eyebrow Section - Ekdum light neon green aur dim effect clear */
.vts-twitter-brand-banner .vts-inline-style-10 {
    color: #39FF14 !important;
    /* Pure Light Neon Green */
    opacity: 1 !important;
    visibility: visible !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 14px;
}

/* Main Title - Adha white aur adha green karne ke liye standard bootstrap integration */
.vts-twitter-brand-banner .vts-about-sc-title {
    color: #ffffff;
    /* Pehla part white rahega */
    font-size: 32px;
    font-weight: 700;
    margin-top: 10px;
    margin-bottom: 25px;
    line-height: 1.3;
    text-transform: uppercase;
}

/* Title ka span section jo dynamic green dikhega */
.vts-twitter-brand-banner .vts-about-sc-title span {
    color: #28a745;
    /* Adha title brand green */
    display: inline-block;
}

/* Paragraph Text - Ekdum solid crisp white (ya slightly off-white readability ke liye) */
.vts-twitter-brand-banner .vts-tbb-desc {
    max-width: 850px;
    margin: 0 auto 30px auto;
    font-size: 16px;
    text-align: center;
    color: #ffffff !important;
    /* Pure white text requirement ke mutabik */
    line-height: 1.7;
    opacity: 0.95;
}

/* Horizontal Badges Spacing Container */
.vts-twitter-brand-banner .vts-badges-container {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 35px;
    margin-bottom: 40px;
    flex-wrap: wrap;
    /* Mobile view par responsive wrap hone ke liye */
}

/* Individual Badge Styling */
.vts-twitter-brand-banner .vts-badge-item {
    font-size: 14px;
    color: #cccccc;
    font-weight: 500;
}

/* Tick marks styling */
.vts-twitter-brand-banner .vts-badge-item span {
    color: #39FF14;
    /* Tick mark neon green */
    margin-right: 8px;
    font-weight: bold;
}

/* Sharp Main Headline */
.custom-dark-title {
    color: #111111 !important;
    font-size: 2.3rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 20px;
    letter-spacing: -0.5px;
}

/* Friendly Intro Styling */
.vts-natural-intro {
    color: #2d3748 !important;
    /* Premium Charcoal Black */
    font-size: 1.15rem;
    line-height: 1.75;
    margin-bottom: 45px;
    font-weight: 400;
}

/* Timeline Layout Base */
.vts-minimal-timeline {
    position: relative;
    padding-left: 5px;
    margin-top: 25px;
}

/* Vertical Flow Line between numbers */
.vts-timeline-item {
    display: flex;
    gap: 25px;
    position: relative;
    margin-bottom: 40px;
}

.vts-timeline-item:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 20px;
    top: 45px;
    bottom: -35px;
    width: 2px;
    background: #e2e8f0;
    /* Subtle grayish line */
    z-index: 1;
}

/* Minimalist Circular Numbers */
.vts-item-number {
    font-size: 0.95rem;
    font-weight: 700;
    color: #ffffff;
    background: #111111;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    z-index: 2;
    border: 2px solid #00E676;
}

/* Heading & Subtext Adjustments */
.vts-item-body {
    padding-top: 3px;
}

.vts-item-heading {
    color: #111111 !important;
    font-size: 1.3rem;
    font-weight: 600;
    margin: 0 0 8px 0;
}

.vts-item-desc {
    color: #4a5568 !important;
    /* Pitch Perfect Black text readability */
    font-size: 0.98rem;
    line-height: 1.65;
    margin: 0;
}

/* Mobile Responsiveness */
@media (max-width: 576px) {
    .vts-timeline-item {
        flex-direction: column;
        gap: 10px;
    }

    .vts-timeline-item:not(:last-child)::after {
        display: none;
    }
}

/* 1. Main Intro Paragraph Update */
.vts-natural-intro {
    color: #4a5568 !important;
    /* Premium Slate Black */
    font-size: 0.95rem !important;
    /* Font size chota kiya (1.15rem se direct 0.95rem) */
    line-height: 1.8 !important;
    /* Line spacing thodi badhai stylish look ke liye */
    margin-bottom: 40px;
    font-weight: 400;
    letter-spacing: 0.2px;
    /* Smooth professional character spacing */
}

/* Green Highlight Counter Tag */
.vts-natural-intro strong {
    color: #00E676;
    font-weight: 600;
}

/* 2. Step Text Description Update */
.vts-item-desc {
    color: #64748b !important;
    /* Elegant modern gray-black variant */
    font-size: 0.88rem !important;
    /* Points ka description font size aur sleek kiya */
    line-height: 1.75 !important;
    margin: 0;
    font-weight: 400;
    letter-spacing: 0.1px;
}

/* 3. Subtle Heading Enhancement */
.vts-item-heading {
    color: #111111 !important;
    font-size: 1.18rem !important;
    /* Headings ko balanced and sharp look diya */
    font-weight: 600;
    margin: 0 0 6px 0;
    letter-spacing: -0.2px;
}

/* Container framework for steps */
.vts-typography-list {
    margin-top: 30px;
}

/* Individual step wrappers with sleek green indicator line */
.vts-typography-step {
    border-left: 2px solid #00E676;
    padding-left: 20px;
    margin-bottom: 35px;
}

.vts-typography-step:last-child {
    margin-bottom: 5px;
}

/* Numeric prefix label style */
.vts-step-meta {
    font-size: 0.82rem;
    color: #00E676;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 600;
    margin-bottom: 4px;
}

/* Sharp subtitle alignment */
.vts-step-heading {
    color: #111111 !important;
    /* Premium Crisp Black */
    margin: 0 0 8px 0;
    font-size: 1.18rem !important;
    font-weight: 600;
    letter-spacing: -0.2px;
}

/* ========================================================
   V TOUCH SOLUTIONS - COMPACT & COMPRESSED FAQ CSS
   ======================================================== */

:root {
    --vts-primary-green: #198754;
    --vts-dark-green: #0f5132;
    --vts-light-green: #e8f5e9;
    --vts-white: #ffffff;
    --vts-text-dark: #212529;
    --vts-text-muted: #6c757d;
    --vts-border-color: #dee2e6;
}

/* Section Container - Reduced padding from 80px to 40px */
.vts-premium-faq-section {
    padding: 40px 20px;
    background-color: var(--vts-white);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

.vts-faq-container {
    max-width: 800px;
    /* Slightly tighter width */
    margin: 0 auto;
}

/* Header Styling - Reduced bottom margin */
.vts-faq-header {
    margin-bottom: 30px;
    text-align: center;
}

.vts-faq-kicker {
    display: inline-block;
    font-size: 11px;
    /* Slightly smaller text */
    font-weight: 700;
    color: var(--vts-primary-green);
    letter-spacing: 1.5px;
    margin-bottom: 6px;
    background-color: var(--vts-light-green);
    padding: 2px 10px;
    border-radius: 50px;
}

.vts-faq-title {
    font-size: 28px;
    /* Compressed title size */
    font-weight: 800;
    color: var(--vts-dark-green);
    margin-bottom: 8px;
}

.vts-faq-subtitle {
    font-size: 14px;
    color: var(--vts-text-muted);
}

/* Accordion Wrapper - Tightened gap from 15px to 8px */
.vts-faq-wrapper {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Individual FAQ Card */
.vts-faq-item {
    background: var(--vts-white);
    border: 1px solid var(--vts-border-color);
    border-radius: 8px;
    /* Slightly sharper borders */
    overflow: hidden;
    transition: all 0.25s ease;
}

.vts-faq-item:hover {
    border-color: var(--vts-primary-green);
    box-shadow: 0 4px 10px rgba(25, 135, 84, 0.05);
}

/* Hide Checkbox Toggle */
.vts-faq-toggle {
    display: none;
}

/* Question Label - Compressed padding from 22px to 14px/20px */
.vts-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    font-size: 15px;
    /* Compact text size */
    font-weight: 600;
    color: var(--vts-text-dark);
    cursor: pointer;
    margin: 0;
    user-select: none;
    transition: all 0.2s ease;
}

.vts-faq-question:hover {
    color: var(--vts-primary-green);
}

/* Arrow Icon */
.vts-arrow-icon {
    font-size: 15px;
    transition: transform 0.25s ease;
    color: var(--vts-primary-green);
    margin-left: 15px;
}

/* Answer Content Wrapper */
.vts-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
    background-color: var(--vts-white);
}

/* Answer Text - Reduced padding to stay tight */
.vts-faq-answer p {
    padding: 0 20px 14px 20px;
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: var(--vts-text-muted);
}

/* --- Pure CSS Accordion Logic --- */
.vts-faq-toggle:checked~.vts-faq-question {
    color: var(--vts-dark-green);
    background-color: var(--vts-light-green);
}

.vts-faq-toggle:checked~.vts-faq-question .vts-arrow-icon {
    transform: rotate(180deg);
    color: var(--vts-dark-green);
}

.vts-faq-toggle:checked~.vts-faq-answer {
    max-height: 300px;
    /* Quick smooth animation */
    transition: max-height 0.4s ease-in-out;
    background-color: var(--vts-light-green);
}

/* --- Mobile View Tuning --- */
@media (max-width: 768px) {
    .vts-premium-faq-section {
        padding: 30px 10px;
    }

    .vts-faq-title {
        font-size: 24px;
    }

    .vts-faq-question {
        padding: 12px 15px;
        font-size: 14px;
    }

    .vts-faq-answer p {
        padding: 0 15px 12px 15px;
        font-size: 13px;
    }
}

/* ========================================================
   V TOUCH SOLUTIONS - FULL WIDTH 2-COLUMN FAQ EXTERNAL CSS
   ======================================================== */

:root {
    --vts-green-main: #198754;
    --vts-green-dark: #0f5132;
    --vts-green-light: #e8f5e9;
    --vts-white-pure: #ffffff;
    --vts-gray-dark: #212529;
    --vts-gray-muted: #6c757d;
    --vts-border-light: #dee2e6;
}

/* Section Wrapper stretching across the full screen grid */
.vts-split-faq-section {
    padding: 60px 0;
    background-color: var(--vts-white-pure);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    width: 100%;
}

/* Aligns perfectly with your main template's theme width */
.vts-split-faq-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Left Content Sticky Alignment */
.vts-faq-sticky-meta {
    position: sticky;
    top: 100px;
    padding-right: 15px;
}

.vts-faq-new-kicker {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: var(--vts-green-main);
    letter-spacing: 1.5px;
    margin-bottom: 10px;
    background-color: var(--vts-green-light);
    padding: 3px 12px;
    border-radius: 50px;
}

.vts-faq-new-title {
    font-size: 32px;
    font-weight: 800;
    color: var(--vts-green-dark);
    line-height: 1.2;
    margin-bottom: 15px;
}

.vts-faq-new-subtitle {
    font-size: 15px;
    color: var(--vts-gray-muted);
    line-height: 1.6;
    margin-bottom: 25px;
}

.vts-faq-trust-badge {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    background-color: var(--vts-green-light);
    border-left: 4px solid var(--vts-green-main);
    border-radius: 4px;
    color: var(--vts-green-dark);
    font-weight: 600;
    font-size: 14px;
}

.vts-faq-trust-badge i {
    font-size: 18px;
    color: var(--vts-green-main);
}

/* Right Content: Compact Stack */
.vts-faq-new-wrapper {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.vts-faq-new-item {
    background: var(--vts-white-pure);
    border: 1px solid var(--vts-border-light);
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.vts-faq-new-item:hover {
    border-color: var(--vts-green-main);
    box-shadow: 0 4px 12px rgba(25, 135, 84, 0.06);
}

/* Functional Invisible Radio/Checkbox */

/* Accordion Question Bar */
.vts-faq-new-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    font-size: 16px;
    font-weight: 600;
    color: var(--vts-gray-dark);
    cursor: pointer;
    margin: 0;
    user-select: none;
    transition: all 0.2s ease;
}

.vts-faq-new-question:hover {
    color: var(--vts-green-main);
}

.vts-new-arrow {
    font-size: 14px;
    color: var(--vts-green-main);
    transition: transform 0.25s ease;
    margin-left: 15px;
}

/* Accordion Answer Field */
.vts-faq-new-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0, 1, 0, 1);
    background-color: var(--vts-white-pure);
}

.vts-faq-new-answer p {
    padding: 0 20px 16px 20px;
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: var(--vts-gray-muted);
}

/* --- Pure CSS Interactive Logic Toggles --- */
.vts-faq-new-toggle:checked~.vts-faq-new-question {
    color: var(--vts-green-dark);
    background-color: var(--vts-green-light);
}

.vts-faq-new-toggle:checked~.vts-faq-new-question .vts-new-arrow {
    transform: rotate(180deg);
    color: var(--vts-green-dark);
}

.vts-faq-new-toggle:checked~.vts-faq-new-answer {
    max-height: 400px;
    transition: max-height 0.4s ease-in-out;
    background-color: var(--vts-green-light);
}

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {
    .vts-faq-sticky-meta {
        position: relative;
        top: 0;
        margin-bottom: 30px;
        padding-right: 0;
    }

    .vts-faq-new-title {
        font-size: 26px;
    }
}

@media (max-width: 576px) {
    .vts-split-faq-section {
        padding: 40px 0;
    }

    .vts-faq-new-question {
        padding: 14px 15px;
        font-size: 14px;
    }

    .vts-faq-new-answer p {
        padding: 0 15px 14px 15px;
        font-size: 13px;
    }
}

/* ========================================================
   V TOUCH SOLUTIONS - ULTRA COMPACT 2-COLUMN FAQ EXTERNAL CSS
   ======================================================== */

/* Base Wrapper Compression */
.vts-split-faq-section {
    padding: 45px 0;
    /* Reduced top/bottom block padding */
    background-color: var(--vts-white);
    font-family: system-ui, -apple-system, sans-serif;
    width: 100%;
}

/* Left Metadata Layout Adjustment */

/* Right Content: High-Density Drawers */

/* Sleek Accordion Row Header */

/* Accordion Drawer Smooth Reveal Layout */

/* --- Pure CSS State Engine (Checked Logic) --- */

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {}

/* ========================================================
   V TOUCH SOLUTIONS - DARK GREEN BORDER BOX FAQ EXTERNAL CSS
   ======================================================== */

:root {
    --vts-green-primary: #198754;
    --vts-green-dark: #0f5132;
    /* Pure Dark Green Outline Color */
    --vts-green-light: #f0fdf4;
    --vts-accent-gold: #b45309;
    --vts-white: #ffffff;
    --vts-charcoal-dark: #1e293b;
    --vts-slate-muted: #64748b;
    --vts-border-tight: #e2e8f0;
}

/* Base Wrapper Padding Compression */
.vts-split-faq-section {
    padding: 30px 0;
    background-color: var(--vts-white);
    font-family: system-ui, -apple-system, sans-serif;
    width: 100%;
}

.vts-split-faq-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 24px;
}

/* New Dark Green Outer Main Box */
.vts-split-faq-box {
    border: 2px solid var(--vts-green-dark);
    /* Exact matching bold dark green border */
    border-radius: 16px;
    padding: 35px;
    background-color: var(--vts-white);
    box-shadow: 0 10px 30px rgba(15, 81, 50, 0.03);
}

/* Left Metadata Layout Adjustment */
.vts-faq-sticky-meta {
    position: sticky;
    top: 90px;
}

.vts-faq-new-kicker {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: var(--vts-green-primary);
    letter-spacing: 1px;
    margin-bottom: 8px;
    background-color: var(--vts-green-light);
    padding: 2px 10px;
    border-radius: 4px;
    border: 1px solid rgba(25, 135, 84, 0.15);
}

.vts-faq-new-title {
    font-size: 30px;
    font-weight: 800;
    color: var(--vts-charcoal-dark);
    line-height: 1.2;
    margin-bottom: 12px;
}

.vts-faq-new-subtitle {
    font-size: 14px;
    color: var(--vts-slate-muted);
    line-height: 1.5;
    margin-bottom: 20px;
}

.vts-faq-trust-badge {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background-color: var(--vts-green-light);
    border-radius: 6px;
    color: var(--vts-green-dark);
    font-weight: 600;
    font-size: 13px;
    border: 1px dashed var(--vts-green-primary);
    display: inline-flex;
}

.vts-faq-trust-badge i {
    font-size: 16px;
    color: var(--vts-green-primary);
}

/* Right Content: Drawers Stack */
.vts-faq-new-wrapper {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.vts-faq-new-item {
    background: var(--vts-white);
    border: 1px solid var(--vts-border-tight);
    border-radius: 6px;
    overflow: hidden;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.vts-faq-new-item:hover {
    border-color: var(--vts-green-primary);
}

.vts-faq-new-toggle {
    display: none;
}

/* Accordion Trigger Headers */
.vts-faq-new-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 18px;
    font-size: 15px;
    font-weight: 600;
    color: var(--vts-charcoal-dark);
    cursor: pointer;
    margin: 0;
    user-select: none;
    transition: all 0.2s ease;
}

.vts-faq-new-question:hover {
    color: var(--vts-green-primary);
    background-color: #fafafa;
}

.vts-new-icon {
    font-size: 13px;
    color: var(--vts-slate-muted);
    transition: transform 0.25s ease;
    margin-left: 12px;
}

/* Hidden Drawer Space */
.vts-faq-new-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease-out;
    background-color: var(--vts-white);
}

.vts-faq-new-answer p {
    padding: 0 18px 12px 18px;
    margin: 0;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--vts-slate-muted);
}

/* --- Pure CSS checked state engine --- */
.vts-faq-new-toggle:checked~.vts-faq-new-question {
    color: var(--vts-green-dark);
    background-color: var(--vts-green-light);
    border-bottom: 1px solid rgba(25, 135, 84, 0.08);
}

.vts-faq-new-toggle:checked~.vts-faq-new-question .vts-new-icon {
    transform: rotate(135deg);
    color: var(--vts-accent-gold);
}

.vts-faq-new-toggle:checked~.vts-faq-new-answer {
    max-height: 250px;
    background-color: var(--vts-green-light);
}

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {
    .vts-split-faq-box {
        padding: 20px;
        /* Reduced outer box padding for tablets */
    }

    .vts-faq-sticky-meta {
        position: relative;
        top: 0;
        margin-bottom: 20px;
    }

    .vts-faq-new-title {
        font-size: 24px;
    }
}

@media (max-width: 576px) {
    .vts-split-faq-box {
        border-radius: 10px;
        padding: 15px;
    }
}
/* --- Mobile Responsive (Strictly 3 Rows + Smaller Pills) --- */
@media (max-width: 767px) {
    .vts-ft-pills-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
        margin-bottom: 15px !important;
    }

    .vts-ft-pills-label {
        display: block !important;
        font-size: 0.75rem !important; /* Title font reduced */
        font-weight: 600 !important;
        text-transform: uppercase !important;
        color: #a0a0a0 !important;
        margin-bottom: 8px !important;
        text-align: center !important;
    }

    /* Exactly 3 Rows layout */
    .vts-pill-container {
        display: grid !important;
        grid-template-rows: repeat(3, auto) !important; /* Strict 3 rows */
        grid-auto-flow: column !important;
        gap: 6px 8px !important; /* Reduced vertical & horizontal gap */
        justify-content: center !important;
        overflow-x: auto !important; /* Smooth horizontal scroll if screen is too small */
        width: 100% !important;
        padding-bottom: 4px !important;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box !important;
    }

    /* Scrollbar Hide */
    .vts-pill-container::-webkit-scrollbar {
        display: none;
    }

    /* Compact Pill Styling */
    .vts-ft-pill {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 4px 10px !important; /* Compact padding */
        font-size: 0.7rem !important; /* Smaller text size */
        color: #ffffff !important;
        background-color: rgba(255, 255, 255, 0.08) !important;
        border: 1px solid rgba(255, 255, 255, 0.15) !important;
        border-radius: 50px !important;
        text-decoration: none !important;
        white-space: nowrap !important;
    }
}
@media screen and (max-width: 576px) {

    /* AJIO / Other pages footer links */
    ul.vts-ft-navigation-links-list {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;

        gap: 6px !important;
        white-space: nowrap !important;
        list-style: none !important;
    }

    ul.vts-ft-navigation-links-list a {
        font-size: 9px !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    ul.vts-ft-navigation-links-list span.sep {
        font-size: 8px !important;
        line-height: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}
@media screen and (max-width: 576px) {

    .vts-ft-bottom-links {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;

        gap: 6px !important;
        white-space: nowrap !important;
    }

    .vts-ft-bottom-links a {
        font-size: 9px !important;
        line-height: 1 !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .vts-ft-bottom-links .sep {
        font-size: 8px !important;
        line-height: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}
@media screen and (max-width: 576px) {

    /* Form card */
    .vt-hero-form-card {
        padding: 18px 14px !important;
        border-radius: 14px !important;
    }

    /* Badge */
    .vt-form-badge {
        font-size: 10px !important;
        padding: 5px 10px !important;
        margin-bottom: 7px !important;
    }

    /* Title */
    .vt-form-title {
        font-size: 20px !important;
        line-height: 1.2 !important;
        margin-bottom: 5px !important;
    }

    /* Subtitle */
    .vt-form-subtitle {
        font-size: 11px !important;
        line-height: 1.4 !important;
        margin-bottom: 14px !important;
    }

    /* Form rows */
    .vt-lead-form .row {
        --bs-gutter-x: 8px;
        --bs-gutter-y: 0;
    }

    /* Form groups */
    .vt-form-group {
        margin-bottom: 10px !important;
    }

    /* Labels */
    .vt-form-label {
        font-size: 10px !important;
        margin-bottom: 4px !important;
        line-height: 1.2 !important;
    }

    /* Input wrapper */
    .vt-input-wrapper {
        min-height: 38px !important;
    }

    /* Inputs + Select + Textarea */
    .vt-form-control {
        height: 38px !important;
        min-height: 38px !important;
        padding: 7px 9px 7px 34px !important;
        font-size: 11px !important;
        border-radius: 7px !important;
    }

    /* Icons */
    .vt-input-wrapper i {
        font-size: 13px !important;
        left: 11px !important;
    }

    /* Message */
    .vt-message-box {
        height: 65px !important;
        min-height: 65px !important;
        resize: none !important;
        padding-top: 8px !important;
    }

    /* Character count */
    .vt-char-count {
        font-size: 8px !important;
        margin-top: 2px !important;
    }

    /* Checkbox */
    .vt-human-check {
        margin-top: 7px !important;
        margin-bottom: 10px !important;
        font-size: 10px !important;
    }

    .vt-human-check .form-check-input {
        width: 14px !important;
        height: 14px !important;
        margin-top: 0 !important;
    }

    .vt-human-check .form-check-label {
        font-size: 10px !important;
        margin-left: 3px !important;
    }

    /* Submit */
    .vt-form-submit-btn {
        min-height: 38px !important;
        height: 38px !important;
        padding: 7px 12px !important;
        font-size: 11px !important;
        border-radius: 7px !important;
    }

    .vt-form-submit-btn i {
        font-size: 11px !important;
    }
}
@media screen and (max-width: 576px) {

    /* Footer top spacing reduce */
    .vts-footer {
        padding-top: 15px !important;
    }

    /* Footer first section ka extra top space */
    .vts-ft-top {
        padding-top: 10px !important;
        margin-top: 0 !important;
    }
}
@media (max-width: 767px) {

    .vt-mobile-brand-text {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        line-height: 0.95 !important;
    }

    .vt-mobile-brand-text strong {
        margin: 0 !important;
        padding: 0 !important;
        line-height: 0.95 !important;
        height: auto !important;
    }

}
/* ==========================================
   DRAWER MENU LOGO - COMPLETE CSS
   ========================================== */

/* 1. Main Logo Container (Alignment & Total Height) */
#mobileMenuLabel.vt-mobile-brand,
.vt-mobile-header .vt-mobile-brand {
    display: inline-flex !important;
    align-items: center !important;
    column-gap: 9px !important;            /* Header & Line ke beech ka gap */
    row-gap: 0px !important;
    height: 36px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    color: #ffffff !important;
    box-sizing: border-box !important;
    font-family: "Roboto", sans-serif !important;
}

/* 2. VTS Text (Size Control) */
#mobileMenuLabel .vt-mobile-brand-main,
.vt-mobile-header .vt-mobile-brand-main {
    font-size: 33px !important;            /* <-- VTS KA SIZE YAHAN SE CHANGE KAREIN */
    font-weight: 800 !important;           /* Roboto-ExtraBold */
    color: #ffffff !important;
    letter-spacing: -0.5px !important;
    line-height: 1 !important;
    font-family: "Roboto", sans-serif !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* 3. Green Line (Width/Thickness & Height Control) */
#mobileMenuLabel .vt-mobile-brand-line,
.vt-mobile-header .vt-mobile-brand-line {
    display: inline-block !important;
    align-self: center !important;
    width: 2.5px !important;                 /* <-- GREEN LINE KI THICKNESS (WIDTH) */
    height: 30px !important;               /* <-- GREEN LINE KI LAMBAAI (HEIGHT) */
    background-color: #10b981 !important;   /* Green Shade */
    border: none !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

/* 4. 3-Line Stacked Text (MARKET SOCIAL MEDIA) */
#mobileMenuLabel .vt-mobile-brand-text,
.vt-mobile-header .vt-mobile-brand-text {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-self: center !important;
    gap: 2px !important;                   /* <-- MARKET/SOCIAL/MEDIA KE BEECH KA GAP */
    height: auto !important;
    font-size: 7px !important;             /* Text Size */
    font-weight: 800 !important;
    letter-spacing: 1.8px !important;      /* Letter Spacing */
    line-height: 1 !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    font-family: "Roboto", sans-serif !important;
    margin: 0 !important;
    padding: 0 !important;
}

#mobileMenuLabel .vt-mobile-brand-text strong,
.vt-mobile-header .vt-mobile-brand-text strong {
    display: block !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Roboto", sans-serif !important;
}
/* Body/HTML se unwanted white gap aur extra scrollbar remove karein */
html, body {
    overflow-x: hidden !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
}

/* Default Desktop/Tablet: Hidden */
.vt-mobile-sticky-cta {
    display: none !important;
}

/* Mobile Screens Only (max-width: 767px) */
@media (max-width: 767px) {
    /* Mobile par Sticky Bar enable karein */
    .vt-mobile-sticky-cta {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        background: #fcfffc;
        justify-content: space-between;
        align-items: center;
        padding: 6px 10px;
        box-shadow: 0 -3px 12px rgba(0, 0, 0, 0.15);
        z-index: 999999;
        gap: 8px;
        box-sizing: border-box;
    }

    .vt-mobile-sticky-cta a {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        padding: 8px 0;
        font-size: 14px;
        font-weight: 700;
        text-decoration: none;
        border-radius: 8px;
        transition: all 0.2s ease-in-out;
    }

    /* WhatsApp Button */
    .vt-mobile-sticky-cta .vt-btn-wa {
        background-color: #25d366;
        color: #ffffff !important;
    }

    /* Call Button (Dark Black-Green) */
    .vt-mobile-sticky-cta .vt-btn-call {
        background-color: #000000;
        color: #0eb42a !important;
        border: 1px solid #68e35b;
    }

    .vt-mobile-sticky-cta a i {
        font-size: 16px;
    }

    /* Footer Extra Bottom Padding (Dark background seamless extension) */
    .vts-footer {
        padding-bottom: 70px !important;
    }
}
/* Country Coverage Pills Layout Fix */
.vts-ft-pills-row {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 0 15px !important;
}

.vts-pill-container {
    display: flex !important;
    flex-wrap: wrap !important; /* Pills ko next line me properly auto-wrap karega */
    justify-content: center !important; /* Center align karega */
    align-items: center !important;
    gap: 8px !important; /* Proper spacing bina overflow ke */
    width: 100% !important;
    box-sizing: border-box !important;
}

.vts-ft-pill {
    display: inline-block !important;
    white-space: nowrap !important; /* Text toote nahi */
    padding: 6px 12px !important;
    font-size: 12px !important;
    border-radius: 20px !important;
    margin: 0 !important; /* Gap handle karega */
    max-width: 100% !important;
}

/* Mobile Screens Adjustments */
@media (max-width: 767px) {
    .vts-pill-container {
        gap: 6px !important;
    }
    
    .vts-ft-pill {
        padding: 5px 10px !important;
        font-size: 11px !important;
    }
}
/* Mobile Breadcrumb Custom Style (Mobile Only) */
@media (max-width: 767px) {
    .vt-breadcrumb {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
        padding-bottom: 4px !important;
        margin-bottom: 12px !important;
        /* Hide scrollbar */
        scrollbar-width: none !important; /* Firefox */
        -ms-overflow-style: none !important;  /* IE/Edge */
    }

    .vt-breadcrumb::-webkit-scrollbar {
        display: none !important; /* Chrome, Safari, Opera */
    }

    .vt-breadcrumb li {
        display: inline-flex !important;
        align-items: center !important;
        font-size: 13px !important;
    }

    .vt-breadcrumb li i {
        margin: 0 6px !important;
        font-size: 10px !important;
        opacity: 0.6;
    }

    .vt-breadcrumb li.active {
        font-weight: 600 !important;
        color: #00ff0d !important; /* Visual distinction */
    }
}
/* Mobile Breadcrumb Fix - Clean Multi-Line Wrap */
@media (max-width: 767px) {
    .vt-breadcrumb {
        display: flex !important;
        flex-wrap: wrap !important; /* Single line cut hone ke bajaye second line me properly aayega */
        align-items: center !important;
        gap: 4px 6px !important;
        padding: 0 !important;
        margin-bottom: 12px !important;
        line-height: 1.5 !important;
    }

    .vt-breadcrumb li {
        display: inline-flex !important;
        align-items: center !important;
        font-size: 12px !important;
        white-space: normal !important; /* Cut-off completely solve karega */
    }

    .vt-breadcrumb li i {
        margin: 0 2px !important;
        font-size: 10px !important;
        opacity: 0.6;
    }

    .vt-breadcrumb li.active {
        font-weight: 600 !important;
        color: #25d366 !important; /* Accent Green */
        word-break: break-word !important;
    }
}
/* ========================================================================== 
   MOBILE UI CORRECTIONS — Sticky CTA, service image, form spacing, typography
   ========================================================================== */
@media (max-width: 767px) {
    /* Bottom sticky CTA: two equal solid theme blocks, Call first and WhatsApp second. */
    .vt-mobile-sticky-cta {
        display: flex !important;
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        padding: 0 !important;
        gap: 0 !important;
        background: var(--navy) !important;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, .18) !important;
        border-top: 0 !important;
        z-index: 999999 !important;
    }

    .vt-mobile-sticky-cta a {
        flex: 1 1 50% !important;
        min-height: 58px !important;
        padding: 0 12px !important;
        border: 0 !important;
        border-radius: 0 !important;
        color: #ffffff !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        letter-spacing: .2px !important;
        gap: 8px !important;
        box-shadow: none !important;
    }

    .vt-mobile-sticky-cta .vt-btn-call {
        order: 1 !important;
        background: var(--navy-light) !important;
        color: #ffffff !important;
        font-size: 0 !important;
    }

    .vt-mobile-sticky-cta .vt-btn-call::after {
        content: "CALL US";
        font-size: 14px;
        font-weight: 800;
        line-height: 1;
        color: #ffffff;
    }

    .vt-mobile-sticky-cta .vt-btn-wa {
        order: 2 !important;
        background: var(--green) !important;
        color: #ffffff !important;
    }

    .vt-mobile-sticky-cta a i {
        font-size: 17px !important;
        color: #ffffff !important;
    }

    /* The hero row uses a mobile gap; neutralize it inside nested form rows only. */
    .vt-hero .vt-lead-form .row {
        gap: 0 !important;
        row-gap: 0 !important;
        column-gap: 0 !important;
    }

    .vt-hero .vt-lead-form .vt-form-group {
        margin-bottom: 11px !important;
    }

    /* Mobile service artwork: compact responsive crop instead of an extra-tall portrait block. */
    .vts-why-buy-section .col-lg-4 > img {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        aspect-ratio: 4 / 5 !important;
        height: auto !important;
        object-fit: cover !important;
        object-position: center 20% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Consistent mobile section typography and natural word spacing. */
    .vts-why-title,
    .vts-about-sc-title,
    .vts-yt-title,
    .vts-benefits-title,
    .vts-footprint-title,
    .vts-tbb-title,
    .custom-dark-title {
        font-size: 26px !important;
        line-height: 1.24 !important;
        letter-spacing: -.3px !important;
        margin-bottom: 16px !important;
    }

    .vts-why-paragraph,
    .vts-about-sc-p,
    .vts-natural-intro,
    .vts-yt-desc,
    .vts-tbb-desc {
        font-size: 15px !important;
        line-height: 1.68 !important;
        text-align: left !important;
        letter-spacing: 0 !important;
    }

    .vts-natural-intro {
        margin-bottom: 28px !important;
    }

    .vts-item-heading,
    .vts-step-heading {
        font-size: 18px !important;
        line-height: 1.35 !important;
    }

    .vts-item-desc {
        font-size: 14px !important;
        line-height: 1.65 !important;
    }
}

@media (max-width: 380px) {
    .vts-why-title,
    .vts-about-sc-title,
    .vts-yt-title,
    .vts-benefits-title,
    .vts-footprint-title,
    .vts-tbb-title,
    .custom-dark-title {
        font-size: 24px !important;
    }
}

/* ========================================================================== 
   MOBILE SPACING RHYTHM CORRECTIONS — consistent section/content gaps
   ========================================================================== */
@media (max-width: 767px) {
    /* Keep the hero compact after the form without altering desktop layout. */
    .vt-hero {
        min-height: auto !important;
        padding-bottom: 32px !important;
    }

    .vt-hero .row {
        gap: 24px !important;
        row-gap: 24px !important;
    }

    /* Avoid stacked white sections creating double-sized whitespace. */
    .vts-why-buy-section {
        padding: 24px 0 40px !important;
    }

    .vts-why-buy-section.vts-locality-section {
        padding: 36px 0 12px !important;
    }

    .vts-why-buy-section .row.align-items-center {
        row-gap: 22px !important;
    }

    .vts-why-paragraph {
        margin-bottom: 14px !important;
    }

    .vts-why-paragraph:last-child {
        margin-bottom: 0 !important;
    }

    /* Image-to-copy and copy-to-step rhythm. */
    .vts-natural-intro {
        margin-bottom: 22px !important;
    }

    .vts-minimal-timeline {
        margin-top: 16px !important;
        padding-left: 0 !important;
    }

    .vts-timeline-item {
        gap: 10px !important;
        margin-bottom: 24px !important;
    }

    .vts-timeline-item:last-child {
        margin-bottom: 0 !important;
    }

    .vts-feat-grid-row {
        margin-top: 28px !important;
        row-gap: 10px !important;
    }

    /* About section: remove the large mobile g-5 / custom row gap combination. */
    .vts-about-screenshot-section {
        padding: 42px 0 !important;
    }

    .vts-about-screenshot-section .row {
        --bs-gutter-y: 0 !important;
        gap: 0 !important;
        row-gap: 24px !important;
    }

    .vts-about-sc-eyebrow {
        margin-bottom: 8px !important;
    }

    .vts-about-sc-p {
        margin-bottom: 14px !important;
    }

    .vts-about-checklist-group {
        margin-top: 18px !important;
        margin-bottom: 20px !important;
    }

    .vts-about-action-btn-group {
        margin-top: 20px !important;
    }

    /* Dark CTA and media sections use the same visual section cadence. */
    .vts-twitter-brand-banner {
        padding: 42px 0 !important;
    }

    .vts-twitter-brand-banner .vts-tbb-desc {
        margin-bottom: 22px !important;
    }

    .vts-youtube-promo-section {
        padding: 40px 0 !important;
    }

    .vts-yt-banner-card {
        padding: 28px 20px !important;
    }

    .vts-youtube-promo-section .row {
        --bs-gutter-y: 0 !important;
        row-gap: 24px !important;
    }

    .vts-yt-desc {
        margin-bottom: 0 !important;
    }

    /* Keep carousel/global/FAQ transitions even instead of leaving large white bands. */
    .vts-benefits-carousel-section {
        padding: 40px 10px !important;
    }

    .vts-global-presence-section {
        padding-top: 36px !important;
        padding-bottom: 36px !important;
    }

    .vts-split-faq-section {
        padding: 34px 0 !important;
    }

    .vts-faq-sticky-meta {
        margin-bottom: 22px !important;
    }

    .vts-faq-new-wrapper {
        gap: 8px !important;
    }

    /* Final green/blue contact cards should sit close to the preceding section. */
    .vt-split-sec {
        padding: 24px 0 !important;
    }

    .vt-split-wrap {
        gap: 12px !important;
    }

    .vt-split-box {
        margin: 0 !important;
    }
}
