/* ============================================================
   VIART Production — White Theme
   Uses body.theme-white to scope all overrides.
   Navy blue (#0B2461) replaces bright blue as the accent.
   ============================================================ */

/* ---- VARIABLE OVERRIDES ---- */
body.theme-white {
    --bg-primary:      #FFFFFF;
    --bg-secondary:    #F2F5FB;
    --bg-tertiary:     #E6EBF7;
    --bg-card:         #FFFFFF;
    --navy:            #0B2461;
    --accent-blue:     #0B2461;
    --accent-blue-2:   #1E5BFF;
    --accent-red:      #D61A0C;
    --gold:            #D4AF37;
    --text-primary:    #060D20;
    --text-secondary:  #253050;
    --text-muted:      #5C6E8A;
    --card-bg:         rgba(11,36,97,0.04);
    --card-bg-hover:   rgba(11,36,97,0.08);
    --border:          rgba(11,36,97,0.12);
    --border-light:    rgba(11,36,97,0.08);
    --glow-blue:       rgba(11,36,97,0.18);
    --glow-red:        rgba(214,26,12,0.15);
    --glow-gold:       rgba(212,175,55,0.15);
    --shadow-card:     0 8px 32px rgba(11,36,97,0.09);
    --shadow-hover:    0 20px 60px rgba(11,36,97,0.14);

    background: var(--bg-primary);
    color: var(--text-primary);
}

/* ---- PRELOADER ---- */
body.theme-white #preloader {
    background: #FFFFFF;
}

/* ---- SCROLLBAR ---- */
body.theme-white ::-webkit-scrollbar-track { background: var(--bg-secondary); }
body.theme-white ::-webkit-scrollbar-thumb { background: var(--navy); }

/* ---- SECTION BACKGROUNDS ---- */
body.theme-white #about-intro          { background: var(--bg-primary); }
body.theme-white #services-overview    { background: var(--bg-secondary); }
body.theme-white #featured-services    { background: var(--bg-primary); }
body.theme-white #capabilities         { background: var(--bg-secondary); }
body.theme-white #portfolio            { background: var(--bg-primary); }
body.theme-white #why-choose           { background: var(--bg-secondary); }
body.theme-white .highlight-section.bg-dark { background: var(--bg-primary); }
body.theme-white .highlight-section.bg-alt  { background: var(--bg-secondary); }

/* ---- NAVBAR ---- */
body.theme-white #viart-navbar {
    /* stays transparent over the video hero */
}
body.theme-white #viart-navbar.scrolled {
    background: rgba(255,255,255,0.97);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom-color: var(--border-light);
    box-shadow: 0 4px 30px rgba(11,36,97,0.09);
}
body.theme-white #viart-navbar.scrolled .navbar-nav .nav-link {
    color: var(--text-secondary);
}
body.theme-white #viart-navbar.scrolled .navbar-nav .nav-link:hover,
body.theme-white #viart-navbar.scrolled .navbar-nav .nav-link.active {
    color: var(--navy);
}
body.theme-white #viart-navbar.scrolled .navbar-nav .nav-link::after {
    background: var(--navy);
}
body.theme-white #viart-navbar.scrolled .lang-btn        { color: var(--text-muted); }
body.theme-white #viart-navbar.scrolled .lang-btn:hover  { color: var(--text-primary); }
body.theme-white #viart-navbar.scrolled .lang-btn.lang-active {
    color: var(--navy);
    background: rgba(11,36,97,0.08);
}
body.theme-white #viart-navbar.scrolled .toggler-line { background: var(--text-primary); }

/* ---- DROPDOWN ---- */
body.theme-white .viart-dropdown {
    background: rgba(255,255,255,0.99);
    border: 1px solid var(--border);
    box-shadow: 0 20px 50px rgba(11,36,97,0.14);
}
body.theme-white .viart-dropdown .dropdown-item {
    color: var(--text-secondary);
}
body.theme-white .viart-dropdown .dropdown-item:hover {
    background: rgba(11,36,97,0.07);
    color: var(--navy);
}

/* ---- HERO ---- */
/* Keep hero overlays dark — video is dark footage */
body.theme-white .hero-overlay {
    background: linear-gradient(
        135deg,
        rgba(5,5,5,0.88) 0%,
        rgba(7,11,22,0.74) 40%,
        rgba(11,16,32,0.52) 70%,
        rgba(5,5,5,0.32) 100%
    );
}
body.theme-white .hero-overlay-bottom {
    background: linear-gradient(to top, #FFFFFF, transparent);
}

/* ---- STATS ROW ---- */
body.theme-white .stats-row {
    background: var(--bg-secondary);
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
}
body.theme-white .stat-number span { color: var(--navy); }

/* ---- SECTION TAG ---- */
body.theme-white .section-tag        { color: var(--navy); }
body.theme-white .section-tag::before { background: var(--navy); }
body.theme-white .section-title span  { color: var(--navy); }
body.theme-white .divider-line {
    background: linear-gradient(90deg, var(--navy), var(--accent-blue-2));
}
body.theme-white .gradient-text {
    background: linear-gradient(135deg, var(--navy), var(--accent-blue-2));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* ---- BUTTONS ---- */
body.theme-white .btn-viart {
    background: linear-gradient(135deg, var(--navy), #0a1d52);
}
body.theme-white .btn-viart:hover {
    box-shadow: 0 8px 30px var(--glow-blue);
}
body.theme-white .btn-viart-outline {
    color: var(--text-primary);
    border-color: var(--border);
}
body.theme-white .btn-viart-outline:hover {
    border-color: var(--navy);
    background: rgba(11,36,97,0.07);
    box-shadow: 0 0 20px var(--glow-blue);
    color: var(--navy);
}
body.theme-white .btn-viart-cta {
    background: linear-gradient(135deg, var(--navy), #0a1d52);
}

/* ---- ABOUT INTRO ---- */
body.theme-white #about-intro::before {
    background: radial-gradient(circle, rgba(11,36,97,0.05) 0%, transparent 70%);
}
body.theme-white .about-intro-visual::after {
    border: 1px solid var(--border);
}
body.theme-white .about-stat-badge {
    background: rgba(255,255,255,0.97);
    border: 1px solid var(--border);
    box-shadow: 0 8px 30px rgba(11,36,97,0.12);
}
body.theme-white .about-stat-badge .stat-num  { color: var(--navy); }
body.theme-white .about-intro-badges .ai-badge {
    background: var(--card-bg);
    border: 1px solid var(--border);
    color: var(--text-secondary);
}
body.theme-white .about-intro-badges .ai-badge i { color: var(--navy); }
body.theme-white .about-intro-badges .ai-badge:hover {
    border-color: var(--navy);
    color: var(--navy);
    background: rgba(11,36,97,0.07);
}

/* ---- SERVICES OVERVIEW ---- */
body.theme-white .service-cat-card {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
}
body.theme-white .service-cat-card::before {
    background: linear-gradient(90deg, var(--navy), var(--accent-blue-2));
}
body.theme-white .service-cat-card::after {
    background: radial-gradient(ellipse at top left, rgba(11,36,97,0.06) 0%, transparent 60%);
}
body.theme-white .service-cat-card:hover {
    border-color: rgba(11,36,97,0.25);
    box-shadow: 0 20px 50px rgba(11,36,97,0.10);
}
body.theme-white .scc-icon {
    background: rgba(11,36,97,0.09);
    border: 1px solid rgba(11,36,97,0.18);
    color: var(--navy);
}
body.theme-white .service-cat-card:hover .scc-icon {
    background: rgba(11,36,97,0.16);
    box-shadow: 0 0 20px rgba(11,36,97,0.18);
}
body.theme-white .scc-title   { color: var(--text-primary); }
body.theme-white .scc-desc    { color: var(--text-muted); }
body.theme-white .scc-sub-tag {
    background: rgba(11,36,97,0.04);
    border: 1px solid var(--border-light);
    color: var(--text-muted);
}
body.theme-white .service-cat-card:hover .scc-sub-tag {
    border-color: rgba(11,36,97,0.18);
}
body.theme-white .scc-link         { color: var(--navy); }
body.theme-white .scc-link:hover   { color: var(--accent-blue-2); }
body.theme-white .scc-image-overlay {
    background: linear-gradient(to top, rgba(0,0,0,0.30) 0%, transparent 55%);
}

/* ---- FEATURED SERVICES ---- */
body.theme-white #featured-services::before {
    background: radial-gradient(ellipse, rgba(11,36,97,0.04) 0%, transparent 70%);
}
body.theme-white .feat-service-card {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
    box-shadow: 0 2px 12px rgba(11,36,97,0.05);
}
body.theme-white .feat-service-card:hover {
    border-color: rgba(11,36,97,0.20);
    box-shadow: var(--shadow-hover);
}
body.theme-white .fsc-image {
    background: linear-gradient(135deg, var(--bg-tertiary), var(--bg-secondary));
}
body.theme-white .fsc-image-overlay {
    background: linear-gradient(to top, rgba(0,0,0,0.30) 0%, transparent 50%);
}
body.theme-white .fsc-title   { color: var(--text-primary); }
body.theme-white .fsc-desc    { color: var(--text-muted); }
body.theme-white .fsc-link    { color: var(--navy); }
body.theme-white .fsc-icon-badge { background: rgba(11,36,97,0.85); }

/* ---- CAPABILITIES / PROCESS ---- */
body.theme-white #capabilities::before {
    background: radial-gradient(ellipse, rgba(11,36,97,0.03) 0%, transparent 70%);
}
body.theme-white .process-timeline::before {
    background: linear-gradient(90deg, var(--navy), var(--accent-blue-2), var(--accent-red));
}
body.theme-white .process-step-num {
    background: var(--bg-secondary);
    border: 2px solid var(--navy);
    color: var(--navy);
}
body.theme-white .process-step:hover .process-step-num {
    background: var(--navy);
    color: #fff;
    box-shadow: 0 0 30px rgba(11,36,97,0.28);
}
body.theme-white .process-step-title { color: var(--text-primary); }
body.theme-white .process-step-desc  { color: var(--text-muted); }

/* ---- PORTFOLIO ---- */
body.theme-white #portfolio { background: var(--bg-primary); }
body.theme-white .portfolio-filter {
    background: var(--card-bg);
    border: 1px solid var(--border);
    color: var(--text-muted);
}
body.theme-white .portfolio-filter.active,
body.theme-white .portfolio-filter:hover {
    background: var(--navy);
    border-color: var(--navy);
    color: #fff;
}
body.theme-white .portfolio-card-overlay {
    background: linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.20) 50%, transparent 100%);
}
body.theme-white .portfolio-cat-label {
    background: rgba(11,36,97,0.88);
}
body.theme-white .portfolio-card-cat { color: var(--accent-blue-2); }
body.theme-white .img-placeholder {
    background: linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);
}
body.theme-white .img-placeholder i { color: rgba(11,36,97,0.35); }

/* ---- WHY CHOOSE ---- */
body.theme-white #why-choose { background: var(--bg-secondary); }
body.theme-white .why-visual-overlay {
    background: linear-gradient(45deg, rgba(11,36,97,0.22) 0%, transparent 60%);
}
body.theme-white .why-visual::after {
    border: 1px solid rgba(11,36,97,0.18);
}
body.theme-white .why-list li { color: var(--text-secondary); }
body.theme-white .why-list li:hover { color: var(--text-primary); }
body.theme-white .why-check {
    background: rgba(11,36,97,0.10);
    border: 1px solid rgba(11,36,97,0.22);
}
body.theme-white .why-check i { color: var(--navy); }

/* ---- HIGHLIGHT SECTIONS ---- */
body.theme-white .highlight-card {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
    box-shadow: 0 2px 10px rgba(11,36,97,0.05);
}
body.theme-white .highlight-card::before {
    background: linear-gradient(to bottom, var(--navy), var(--accent-blue-2));
}
body.theme-white .highlight-card:hover {
    border-color: rgba(11,36,97,0.18);
    box-shadow: 0 10px 30px rgba(11,36,97,0.10);
}
body.theme-white .hc-icon {
    background: rgba(11,36,97,0.09);
    color: var(--navy);
}
body.theme-white .highlight-card:hover .hc-icon {
    background: rgba(11,36,97,0.16);
    box-shadow: 0 0 16px rgba(11,36,97,0.20);
}
body.theme-white .hc-title  { color: var(--text-primary); }
body.theme-white .hc-image-overlay {
    background: linear-gradient(to top, rgba(11,36,97,0.28) 0%, transparent 55%);
}

/* ---- EVENT/FILM/EXPO HIGHLIGHT SECTION TEXT ---- */
body.theme-white .highlight-section p[style*="color:var(--text-secondary)"] {
    color: var(--text-muted) !important;
}

/* ---- CTA SECTION ---- */
body.theme-white #cta-section {
    background: linear-gradient(135deg, var(--navy) 0%, #0a1d52 45%, #122a6e 100%);
}
body.theme-white #cta-section::before {
    background: radial-gradient(ellipse, rgba(30,91,255,0.18) 0%, transparent 70%);
}
body.theme-white .cta-orb-1 { background: #1E5BFF; }
body.theme-white .cta-orb-2 { background: var(--accent-red); }
body.theme-white .cta-title span { color: #5B9FFF; }
body.theme-white .cta-subtitle { color: rgba(255,255,255,0.75); }

/* ---- PAGE HERO (inner pages) ---- */
body.theme-white .page-hero {
    background: linear-gradient(135deg, var(--navy) 0%, #0a1d52 50%, #122a6e 100%);
}

/* ---- ABOUT PAGE ---- */
body.theme-white .about-feature-block {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
}
body.theme-white .about-feature-block::before {
    background: linear-gradient(90deg, var(--navy), var(--accent-blue-2));
}
body.theme-white .about-feature-block:hover {
    border-color: rgba(11,36,97,0.18);
    box-shadow: 0 12px 40px rgba(11,36,97,0.10);
}
body.theme-white .afb-icon {
    background: rgba(11,36,97,0.09);
    color: var(--navy);
}

/* ---- SERVICES PAGE ---- */
body.theme-white .svc-category-header { border-bottom: 1px solid var(--border-light); }
body.theme-white .svc-category-section + .svc-category-section { border-top: 1px solid var(--border-light); }
body.theme-white .svc-cat-icon {
    background: rgba(11,36,97,0.09);
    border: 1px solid rgba(11,36,97,0.18);
    color: var(--navy);
}
body.theme-white .svc-category-title { color: var(--text-primary); }
body.theme-white .service-card-full {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
}
body.theme-white .service-card-full::after {
    background: linear-gradient(90deg, var(--navy), var(--accent-blue-2));
}
body.theme-white .service-card-full:hover {
    border-color: rgba(11,36,97,0.18);
    box-shadow: 0 12px 35px rgba(11,36,97,0.10);
}
body.theme-white .scf-icon { background: rgba(11,36,97,0.08); color: var(--navy); }
body.theme-white .scf-title { color: var(--text-primary); }
body.theme-white .scf-desc  { color: var(--text-muted); }

/* ---- SERVICE DETAIL ---- */
body.theme-white .service-detail-hero {
    background: linear-gradient(135deg, var(--navy), #0a1d52);
}
body.theme-white .service-detail-hero-overlay {
    background: linear-gradient(to right, rgba(5,5,5,0.80), rgba(5,5,5,0.30));
}
body.theme-white .includes-list li {
    color: var(--text-secondary);
    border-bottom: 1px solid var(--border-light);
}
body.theme-white .includes-list li i { color: var(--navy); }

/* ---- CONTACT PAGE ---- */
body.theme-white .contact-card {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
    box-shadow: 0 4px 20px rgba(11,36,97,0.07);
}
body.theme-white .viart-form-control {
    background: rgba(11,36,97,0.03);
    border: 1px solid var(--border);
    color: var(--text-primary);
}
body.theme-white .viart-form-control::placeholder { color: var(--text-muted); }
body.theme-white .viart-form-control:focus {
    border-color: var(--navy);
    background: rgba(11,36,97,0.04);
    box-shadow: 0 0 0 3px rgba(11,36,97,0.09);
}
body.theme-white .viart-form-control option {
    background: #FFFFFF;
    color: var(--text-primary);
}
body.theme-white .viart-form-label { color: var(--text-secondary); }
body.theme-white .contact-info-item { border-bottom: 1px solid var(--border-light); }
body.theme-white .ci-icon { background: rgba(11,36,97,0.09); color: var(--navy); }
body.theme-white .ci-label { color: var(--text-muted); }
body.theme-white .ci-value { color: var(--text-primary); }
body.theme-white .ci-value a { color: var(--text-primary); }
body.theme-white .ci-value a:hover { color: var(--navy); }
body.theme-white .consent-label a { color: var(--navy); }
body.theme-white .consent-checkbox { accent-color: var(--navy); }

/* ---- FAQ ---- */
body.theme-white .faq-accordion .accordion-item {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
}
body.theme-white .faq-accordion .accordion-item:hover { border-color: rgba(11,36,97,0.18); }
body.theme-white .faq-accordion .accordion-button {
    background: transparent;
    color: var(--text-primary);
}
body.theme-white .faq-accordion .accordion-button:not(.collapsed) {
    background: rgba(11,36,97,0.05);
    color: var(--navy);
}
body.theme-white .faq-accordion .accordion-button::after { filter: none; }
body.theme-white .faq-accordion .accordion-button:not(.collapsed)::after {
    filter: invert(0.18) sepia(1) saturate(8) hue-rotate(210deg);
}
body.theme-white .faq-accordion .accordion-body { color: var(--text-secondary); }

/* ---- PROJECTS ---- */
body.theme-white .project-card {
    background: #FFFFFF;
    border: 1px solid var(--border-light);
}
body.theme-white .project-card:hover {
    border-color: rgba(11,36,97,0.22);
    box-shadow: var(--shadow-hover);
}
body.theme-white .pc-image {
    background: linear-gradient(135deg, var(--bg-tertiary), var(--bg-secondary));
}
body.theme-white .pc-cat-label { background: rgba(11,36,97,0.85); }
body.theme-white .pc-title { color: var(--text-primary); }
body.theme-white .pc-desc  { color: var(--text-muted); }

/* ---- BACK TO TOP ---- */
body.theme-white #back-to-top {
    background: linear-gradient(135deg, var(--navy), #0a1d52);
    box-shadow: 0 4px 20px rgba(11,36,97,0.24);
}
body.theme-white #back-to-top:hover {
    box-shadow: 0 8px 30px rgba(11,36,97,0.32);
}

/* ---- SCROLLBAR (body-scoped) ---- */
body.theme-white {
    scrollbar-color: var(--navy) var(--bg-secondary);
}

/* ---- LEGAL PAGES ---- */
body.theme-white .legal-content { color: var(--text-secondary); }
body.theme-white .legal-content h2,
body.theme-white .legal-content h3 { color: var(--text-primary); }

/* ---- FOOTER VIDEO OVERLAY ---- */
body.theme-white .footer-video-overlay { background: rgba(0,0,0,0.65); }

/* ---- HERO BADGE ---- */
body.theme-white .hero-badge {
    background: rgba(11,36,97,0.18);
    border: 1px solid rgba(11,36,97,0.35);
    color: #FFFFFF;
}
body.theme-white .hero-badge::before { background: #FFFFFF; }

/* ---- HERO HEADLINE gradient ---- */
body.theme-white .hero-headline .line-2 {
    background: linear-gradient(135deg, #FFFFFF, rgba(255,255,255,0.75));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ---- THEME TOGGLE BUTTON ---- */
.theme-toggle-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 100px;
    border: 1px solid rgba(255,255,255,0.25);
    background: transparent;
    color: rgba(255,255,255,0.85);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: var(--font-body);
}
.theme-toggle-btn:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0.45);
    color: #fff;
}
.theme-toggle-btn i { font-size: 0.8rem; }

/* When navbar is scrolled (dark theme) */
#viart-navbar.scrolled .theme-toggle-btn {
    border-color: var(--border);
    color: var(--text-muted);
}
#viart-navbar.scrolled .theme-toggle-btn:hover {
    background: var(--card-bg);
    border-color: var(--accent-blue);
    color: var(--accent-blue);
}

/* White theme scrolled navbar toggle */
body.theme-white #viart-navbar.scrolled .theme-toggle-btn {
    border-color: var(--border);
    color: var(--text-muted);
}
body.theme-white #viart-navbar.scrolled .theme-toggle-btn:hover {
    background: rgba(11,36,97,0.07);
    border-color: var(--navy);
    color: var(--navy);
}
