/* Public light/dark theme layer. Loaded after the visual system overrides. */

:root,
html[data-theme="dark"] {
    color-scheme: dark;
}

html[data-theme="light"] {
    color-scheme: light;
    --primary-color: #b42318;
    --secondary-color: #8f1d15;
    --service-color: #1d5ce0;
    --dark-color: #f5f7fa;
    --light-color: #ffffff;
    --gray-color: #667085;
    --text-color: #182230;
    --text-light: #526174;
    --text-muted: #526174;
    --accent-color: #b42318;
    --border-color: #d8dee8;
    --service-block-bg: rgba(255, 255, 255, .9);
    --service-block-border: rgba(24, 34, 48, .12);
    --service-block-border-hover: #b42318;
    --service-block-border-hover-service: #1d5ce0;

    --p-black: #f5f7fa;
    --p-surface: #ffffff;
    --p-surface2: #ffffff;
    --p-border: rgba(24, 34, 48, .12);
    --p-border-mid: rgba(24, 34, 48, .24);
    --p-accent: #b42318;
    --p-accent-hover: #8f1d15;
    --p-accent-light: rgba(180, 35, 24, .1);
    --p-blue: #1d5ce0;
    --p-blue-hover: #1548ae;
    --p-blue-light: rgba(29, 92, 224, .1);
    --p-text: #182230;
    --p-text-muted: #526174;
    --p-text-dim: #667085;

    --privacy-modal-bg: #ffffff;
    --privacy-modal-border: #d8dee8;
    --privacy-text-light: #526174;
}

/* Shared, accessible theme switcher. */
.theme-toggle,
.mobile-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid var(--p-border-mid);
    border-radius: 3px;
    background: transparent;
    color: var(--p-text-muted);
    cursor: pointer;
    font: inherit;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.theme-toggle {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    padding: 0;
}

.theme-toggle:hover,
.mobile-theme-toggle:hover {
    border-color: var(--p-border-mid);
    background: var(--p-accent-light);
    color: var(--p-text);
}

.theme-toggle:focus-visible,
.mobile-theme-toggle:focus-visible {
    outline: 3px solid rgba(29, 92, 224, .28);
    outline-offset: 2px;
}

.theme-toggle-icon--sun {
    display: inline-block;
}

.theme-toggle-icon--moon {
    display: none;
}

html[data-theme="light"] .theme-toggle-icon--sun {
    display: none;
}

html[data-theme="light"] .theme-toggle-icon--moon {
    display: inline-block;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Light surfaces and controls that use fixed dark values in the base styles. */
html[data-theme="light"] body {
    background-color: var(--p-black) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .header {
    background: linear-gradient(to bottom, rgba(255, 255, 255, .96) 0%, rgba(255, 255, 255, .78) 75%, rgba(255, 255, 255, 0) 100%) !important;
}

html[data-theme="light"] .header.scrolled {
    background: rgba(255, 255, 255, .96) !important;
    border-bottom-color: var(--p-border) !important;
}

html[data-theme="light"] .nav-link {
    color: rgba(24, 34, 48, .82) !important;
}

html[data-theme="light"] .nav-link:hover,
html[data-theme="light"] .nav-link.active,
html[data-theme="light"] .lang-btn:hover,
html[data-theme="light"] .lang-btn.active {
    color: var(--p-text) !important;
}

html[data-theme="light"] .lang-btn {
    color: var(--p-text-muted) !important;
}

html[data-theme="light"] .lang-btn.active {
    background: rgba(24, 34, 48, .06) !important;
}

html[data-theme="light"] .btn-secondary {
    color: var(--p-blue) !important;
}

html[data-theme="light"] .btn-secondary:hover {
    color: #ffffff !important;
}

html[data-theme="light"] .btn-contact {
    border-color: rgba(24, 34, 48, .3) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .btn-contact:hover,
html[data-theme="light"] .btn-admin:hover {
    background: rgba(24, 34, 48, .05) !important;
}

html[data-theme="light"] .service-tile {
    background: linear-gradient(180deg, rgba(24, 34, 48, .025), rgba(24, 34, 48, .005)), var(--p-surface2) !important;
}

html[data-theme="light"] .service-tile:hover {
    background: linear-gradient(180deg, rgba(180, 35, 24, .1), rgba(29, 92, 224, .04)), var(--p-surface2) !important;
}

/* Public section backgrounds are emitted inline from the CMS in the dark palette. */
html[data-theme="light"] .advantages-background,
html[data-theme="light"] .service-choice-background,
html[data-theme="light"] .steering-section,
html[data-theme="light"] .owners,
html[data-theme="light"] .leasing-cards,
html[data-theme="light"] .leasing-benefits,
html[data-theme="light"] .service-types,
html[data-theme="light"] .service-examples {
    background: var(--p-black) !important;
}

html[data-theme="light"] .carousel-btn {
    background: rgba(24, 34, 48, .04) !important;
}

html[data-theme="light"] .carousel-btn:hover {
    background: rgba(24, 34, 48, .08) !important;
}

html[data-theme="light"] .wbm-request-form input,
html[data-theme="light"] .wbm-request-form select,
html[data-theme="light"] .wbm-request-form textarea {
    background: #ffffff !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .wbm-request-form input::placeholder,
html[data-theme="light"] .wbm-request-form textarea::placeholder {
    color: #7a8699;
}

html[data-theme="light"] .selected-resource,
html[data-theme="light"] .rental-price-options,
html[data-theme="light"] .wbm-request-form .rental-option,
html[data-theme="light"] .ticket-message {
    background: rgba(24, 34, 48, .025) !important;
}

html[data-theme="light"] .rental-price-quote {
    background: rgba(29, 92, 224, .08) !important;
}

html[data-theme="light"] .availability-status.available,
html[data-theme="light"] .resource-status-available,
html[data-theme="light"] .portal-status {
    color: #157a3d;
}

html[data-theme="light"] .availability-status.unavailable {
    color: #b42318;
}

html[data-theme="light"] .wbm-toast {
    background: #ffffff;
    box-shadow: 0 18px 50px rgba(24, 34, 48, .18);
}

html[data-theme="light"] .privacy-modal {
    box-shadow: 0 24px 80px rgba(24, 34, 48, .24) !important;
}

html[data-theme="light"] .privacy-modal-overlay {
    background-color: rgba(24, 34, 48, .55);
}

html[data-theme="light"] .privacy-modal-actions,
html[data-theme="light"] .privacy-modal-footer {
    background: rgba(24, 34, 48, .03);
}

html[data-theme="light"] .privacy-highlight,
html[data-theme="light"] .privacy-modal-scroll::-webkit-scrollbar-track {
    background: rgba(24, 34, 48, .04);
}

html[data-theme="light"] .privacy-hero {
    background: linear-gradient(135deg, #ffffff, #f6f8fb);
}

html[data-theme="light"] .privacy-subtitle {
    color: var(--text-light);
}

html[data-theme="light"] .privacy-update {
    color: var(--gray-color);
}

html[data-theme="light"] .privacy-contacts {
    background: rgba(180, 35, 24, .05);
}

/* Legacy request modals remain available on older page paths. */
html[data-theme="light"] .leasing-modal,
html[data-theme="light"] .service-modal {
    background: #ffffff !important;
    border-color: var(--p-border) !important;
    box-shadow: 0 20px 60px rgba(24, 34, 48, .24) !important;
}

html[data-theme="light"] .leasing-modal-overlay,
html[data-theme="light"] .service-modal-overlay {
    background: rgba(24, 34, 48, .55);
}

html[data-theme="light"] .leasing-modal-header,
html[data-theme="light"] .leasing-modal-actions,
html[data-theme="light"] .leasing-modal-footer,
html[data-theme="light"] .service-modal-header,
html[data-theme="light"] .service-modal-actions,
html[data-theme="light"] .service-modal-footer {
    background: rgba(24, 34, 48, .03);
    border-color: var(--p-border);
}

html[data-theme="light"] .leasing-modal-title,
html[data-theme="light"] .service-modal-title,
html[data-theme="light"] .leasing-modal-close,
html[data-theme="light"] .service-modal-close {
    color: var(--p-text);
}

html[data-theme="light"] .form-input,
html[data-theme="light"] .form-textarea {
    background: #ffffff;
    border-color: var(--p-border-mid);
    color: var(--p-text);
}

html[data-theme="light"] .form-input:focus,
html[data-theme="light"] .form-textarea:focus {
    background: #ffffff;
}

html[data-theme="light"] .form-input::placeholder,
html[data-theme="light"] .form-textarea::placeholder {
    color: #7a8699;
}

html[data-theme="light"] .btn-leasing-cancel,
html[data-theme="light"] .btn-service-cancel {
    border-color: var(--p-border-mid);
    color: var(--p-text-muted);
}

html[data-theme="light"] .btn-leasing-cancel:hover,
html[data-theme="light"] .btn-service-cancel:hover {
    background: rgba(24, 34, 48, .05);
    color: var(--p-text);
    border-color: var(--p-border-mid);
}

/* burger-menu.js appends its own dark CSS later, so these need priority. */
html[data-theme="light"] .mobile-menu {
    background: rgba(255, 255, 255, .98) !important;
    border-top-color: var(--p-accent) !important;
    box-shadow: 0 10px 30px rgba(24, 34, 48, .16) !important;
}

html[data-theme="light"] .mobile-nav-link {
    background: rgba(24, 34, 48, .025) !important;
    border-color: var(--p-border) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .mobile-nav-link:hover {
    background: var(--p-accent-light) !important;
    border-color: var(--p-accent) !important;
}

html[data-theme="light"] .mobile-menu-divider {
    background: var(--p-border) !important;
}

html[data-theme="light"] .mobile-lang-btn {
    background: rgba(24, 34, 48, .025) !important;
    border-color: var(--p-border-mid) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .mobile-lang-btn.active,
html[data-theme="light"] .mobile-lang-btn:hover {
    background: var(--p-accent) !important;
    border-color: var(--p-accent) !important;
    color: #ffffff !important;
}

.mobile-theme-toggle {
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    font-size: .95rem;
    font-weight: 700;
}

.mobile-theme-toggle-label {
    line-height: 1.2;
}

html[data-theme="light"] .mobile-theme-toggle {
    border-color: var(--p-border-mid);
    background: rgba(24, 34, 48, .025);
    color: var(--p-text);
}

@media (max-width: 980px) and (min-width: 769px) {
    .nav-right {
        gap: 12px;
    }

    .theme-toggle {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }
}

/* ========================================================================
   LIGHT THEME V2
   Visual polish only: the document structure, module order, sizing and
   breakpoints stay in the base styles. This layer unifies the light palette
   and neutralises the remaining dark-first values from legacy styles.
   ======================================================================== */
html[data-theme="light"] {
    color-scheme: light;

    --primary-color: #b42318;
    --secondary-color: #8f1d15;
    --service-color: #1669e8;
    --dark-color: #ffffff;
    --light-color: #ffffff;
    --gray-color: #667085;
    --text-color: #172033;
    --text-light: #5b677a;
    --text-muted: #667085;
    --accent-color: #b42318;
    --border-color: #dfe5ee;
    --service-block-bg: #ffffff;
    --service-block-border: #dfe5ee;
    --service-block-border-hover: #b42318;
    --service-block-border-hover-service: #1669e8;

    --p-black: #ffffff;
    --p-surface: #ffffff;
    --p-surface2: #fbfcfe;
    --p-border: rgba(23, 32, 51, .12);
    --p-border-mid: rgba(23, 32, 51, .22);
    --p-accent: #b42318;
    --p-accent-hover: #8f1d15;
    --p-accent-light: rgba(180, 35, 24, .08);
    --p-blue: #1669e8;
    --p-blue-hover: #1056c2;
    --p-blue-light: rgba(22, 105, 232, .09);
    --p-text: #172033;
    --p-text-muted: #5b677a;
    --p-text-dim: #7a8698;

    --privacy-modal-bg: #ffffff;
    --privacy-modal-border: #dfe5ee;
    --privacy-text-light: #5b677a;
}

html[data-theme="light"] body {
    background: #ffffff !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] ::selection {
    background: rgba(180, 35, 24, .16);
    color: var(--p-text);
}

/* Header: a stable white surface instead of a faded dark-header inversion. */
html[data-theme="light"] .header,
html[data-theme="light"] .header.scrolled {
    background: rgba(255, 255, 255, .94) !important;
    border-bottom: 1px solid var(--p-border) !important;
    box-shadow: none !important;
    backdrop-filter: blur(14px) !important;
}

html[data-theme="light"] .nav-link {
    color: #4b5565 !important;
}

html[data-theme="light"] .nav-link:hover,
html[data-theme="light"] .nav-link.active {
    color: var(--p-text) !important;
}

html[data-theme="light"] .lang-btn {
    color: #667085 !important;
    border-color: transparent !important;
}

html[data-theme="light"] .lang-btn:hover,
html[data-theme="light"] .lang-btn.active {
    color: var(--p-text) !important;
    border-color: var(--p-border) !important;
    background: #f7f9fc !important;
}

html[data-theme="light"] .theme-toggle {
    border-color: var(--p-border) !important;
    background: #ffffff !important;
    color: #556174 !important;
}

html[data-theme="light"] .theme-toggle:hover {
    border-color: rgba(180, 35, 24, .42) !important;
    background: #fff8f7 !important;
    color: var(--p-accent) !important;
}

html[data-theme="light"] .social-icon {
    color: #667085 !important;
}

html[data-theme="light"] .burger-menu span {
    background-color: var(--p-text) !important;
}

/* Home hero keeps its existing video composition; only its light treatment changes. */
html[data-theme="light"] .header-hero-wrapper,
html[data-theme="light"] .hero {
    background-color: #ffffff !important;
}

html[data-theme="light"] .hero-video-container::after {
    background: linear-gradient(90deg,
        rgba(255, 255, 255, .97) 0%,
        rgba(255, 255, 255, .92) 40%,
        rgba(255, 255, 255, .58) 61%,
        rgba(255, 255, 255, .14) 100%) !important;
}

html[data-theme="light"] .hero::after {
    background: linear-gradient(to top, #ffffff 0%, rgba(255, 255, 255, .82) 45%, transparent 100%) !important;
}

html[data-theme="light"] .hero-heading {
    color: var(--p-text) !important;
}

html[data-theme="light"] .hero-heading span,
html[data-theme="light"] .hero-eyebrow {
    color: var(--p-accent) !important;
}

html[data-theme="light"] .hero-eyebrow {
    border-bottom-color: var(--p-accent) !important;
}

html[data-theme="light"] .hero-sub {
    color: #526174 !important;
}

/* Buttons and controls. */
html[data-theme="light"] .btn-primary {
    background: var(--p-accent) !important;
    border-color: var(--p-accent) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(180, 35, 24, .15) !important;
}

html[data-theme="light"] .btn-primary:hover {
    background: var(--p-accent-hover) !important;
    border-color: var(--p-accent-hover) !important;
    box-shadow: 0 10px 22px rgba(180, 35, 24, .22) !important;
}

html[data-theme="light"] .btn-secondary {
    color: var(--p-blue) !important;
    border-color: rgba(22, 105, 232, .42) !important;
    background: #ffffff !important;
}

html[data-theme="light"] .btn-secondary:hover {
    background: var(--p-blue) !important;
    border-color: var(--p-blue) !important;
    color: #ffffff !important;
}

html[data-theme="light"] .btn-service-request {
    background: var(--p-blue) !important;
    border-color: var(--p-blue) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(22, 105, 232, .15) !important;
}

html[data-theme="light"] .btn-service-request:hover {
    background: var(--p-blue-hover) !important;
    border-color: var(--p-blue-hover) !important;
}

html[data-theme="light"] .btn-contact,
html[data-theme="light"] .btn-leasing-cancel,
html[data-theme="light"] .btn-service-cancel {
    background: #ffffff !important;
    border-color: var(--p-border-mid) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .btn-contact:hover,
html[data-theme="light"] .btn-leasing-cancel:hover,
html[data-theme="light"] .btn-service-cancel:hover {
    background: #f7f9fc !important;
    border-color: var(--p-text-muted) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] :is(.btn, .theme-toggle, .lang-btn, .form-input, .form-textarea, .wbm-request-form input, .wbm-request-form select, .wbm-request-form textarea):focus-visible {
    outline: 3px solid rgba(22, 105, 232, .22) !important;
    outline-offset: 2px;
}

/* Section canvas. Background changes are intentionally limited to color layers. */
html[data-theme="light"] .advantages,
html[data-theme="light"] .steering-section,
html[data-theme="light"] .leasing-cards,
html[data-theme="light"] .service-examples,
html[data-theme="light"] .request-section,
html[data-theme="light"] .vehicle-detail,
html[data-theme="light"] .privacy-content {
    background: #ffffff !important;
}

html[data-theme="light"] .service-choice,
html[data-theme="light"] .owners,
html[data-theme="light"] .leasing-benefits,
html[data-theme="light"] .service-types,
html[data-theme="light"] .map-section {
    background: #f7f9fc !important;
}

html[data-theme="light"] .advantages-background,
html[data-theme="light"] .service-choice-background {
    background: transparent !important;
}

html[data-theme="light"] .advantages-overlay,
html[data-theme="light"] .service-choice-overlay,
html[data-theme="light"] .advantages::before,
html[data-theme="light"] .advantages::after,
html[data-theme="light"] .service-choice::before,
html[data-theme="light"] .service-choice::after {
    background: transparent !important;
}

html[data-theme="light"] .section-title,
html[data-theme="light"] .steering-title,
html[data-theme="light"] .unified-title,
html[data-theme="light"] .car-model,
html[data-theme="light"] .benefit-title,
html[data-theme="light"] .type-title,
html[data-theme="light"] .example-title,
html[data-theme="light"] .owner-name,
html[data-theme="light"] .vehicle-detail-info h2 {
    color: var(--p-text) !important;
}

html[data-theme="light"] .section-lead,
html[data-theme="light"] .steering-description,
html[data-theme="light"] .steering-info,
html[data-theme="light"] .advantage-description,
html[data-theme="light"] .service-tile p,
html[data-theme="light"] .car-description,
html[data-theme="light"] .benefit-description,
html[data-theme="light"] .type-description,
html[data-theme="light"] .example-description {
    color: var(--p-text-muted) !important;
}

html[data-theme="light"] .section-title::after,
html[data-theme="light"] .unified-title::after,
html[data-theme="light"] .leasing-inside .unified-title::after,
html[data-theme="light"] .service-inside-right .unified-title::after {
    background: var(--p-accent) !important;
}

/* Repeated panels retain their existing geometry and only receive light surfaces. */
html[data-theme="light"] .advantage-card-inner,
html[data-theme="light"] .service-tile,
html[data-theme="light"] .owner-card,
html[data-theme="light"] .car-card,
html[data-theme="light"] .benefit-card,
html[data-theme="light"] .type-card,
html[data-theme="light"] .example-card,
html[data-theme="light"] .vehicle-detail-info,
html[data-theme="light"] .wbm-request-form {
    background: #ffffff !important;
    border-color: var(--p-border) !important;
    box-shadow: 0 10px 28px rgba(31, 43, 65, .06) !important;
}

html[data-theme="light"] .advantage-card:hover .advantage-card-inner,
html[data-theme="light"] .service-tile:hover,
html[data-theme="light"] .owner-card:hover,
html[data-theme="light"] .car-card:hover,
html[data-theme="light"] .benefit-card:hover,
html[data-theme="light"] .type-card:hover,
html[data-theme="light"] .example-card:hover {
    background: #ffffff !important;
    border-color: var(--p-border-mid) !important;
    box-shadow: 0 14px 34px rgba(31, 43, 65, .10) !important;
}

html[data-theme="light"] .service-tile:hover {
    border-color: rgba(180, 35, 24, .42) !important;
}

html[data-theme="light"] .advantage-icon,
html[data-theme="light"] .benefit-icon,
html[data-theme="light"] .service-tile i,
html[data-theme="light"] .owner-contacts i {
    color: var(--p-accent) !important;
}

html[data-theme="light"] .type-icon {
    color: var(--p-blue) !important;
}

html[data-theme="light"] .car-price {
    color: var(--p-accent) !important;
}

html[data-theme="light"] .owner-position {
    color: var(--p-accent) !important;
}

html[data-theme="light"] .owner-bio,
html[data-theme="light"] .owner-contacts p,
html[data-theme="light"] .car-price span {
    color: var(--p-text-muted) !important;
}

/* Inner calculation and form surfaces. */
html[data-theme="light"] .wbm-request-form input,
html[data-theme="light"] .wbm-request-form select,
html[data-theme="light"] .wbm-request-form textarea,
html[data-theme="light"] .form-input,
html[data-theme="light"] .form-textarea {
    background: #ffffff !important;
    border-color: #cfd7e3 !important;
    color: var(--p-text) !important;
    box-shadow: none !important;
}

html[data-theme="light"] .wbm-request-form input:hover,
html[data-theme="light"] .wbm-request-form select:hover,
html[data-theme="light"] .wbm-request-form textarea:hover,
html[data-theme="light"] .form-input:hover,
html[data-theme="light"] .form-textarea:hover {
    border-color: #aeb9c8 !important;
}

html[data-theme="light"] .wbm-request-form input:focus,
html[data-theme="light"] .wbm-request-form select:focus,
html[data-theme="light"] .wbm-request-form textarea:focus,
html[data-theme="light"] .form-input:focus,
html[data-theme="light"] .form-textarea:focus {
    border-color: var(--p-blue) !important;
    box-shadow: 0 0 0 3px rgba(22, 105, 232, .12) !important;
}

html[data-theme="light"] .wbm-request-form label {
    color: #455266 !important;
}

html[data-theme="light"] .selected-resource,
html[data-theme="light"] .rental-price-options,
html[data-theme="light"] .wbm-request-form .rental-option,
html[data-theme="light"] .ticket-message,
html[data-theme="light"] .vehicle-specs div,
html[data-theme="light"] .example-details {
    background: #f7f9fc !important;
    border-color: var(--p-border) !important;
}

html[data-theme="light"] .rental-price-quote {
    background: var(--p-blue-light) !important;
    border-color: rgba(22, 105, 232, .24) !important;
}

html[data-theme="light"] .rental-price-quote.available,
html[data-theme="light"] .portal-status {
    background: rgba(21, 122, 61, .08) !important;
    border-color: rgba(21, 122, 61, .24) !important;
    color: #126b35 !important;
}

html[data-theme="light"] .rental-price-quote.unavailable {
    background: rgba(180, 35, 24, .07) !important;
    border-color: rgba(180, 35, 24, .22) !important;
}

html[data-theme="light"] .resource-status {
    background: #f7f9fc !important;
    border-color: var(--p-border) !important;
    color: var(--p-text-muted) !important;
}

html[data-theme="light"] .resource-status-available,
html[data-theme="light"] .availability-status.available,
html[data-theme="light"] .portal-status {
    color: #126b35 !important;
}

html[data-theme="light"] .availability-status.unavailable {
    color: var(--p-accent) !important;
}

/* Standalone page heroes keep their backgrounds and position; only the dark wash becomes light. */
html[data-theme="light"] .leasing-hero::after,
html[data-theme="light"] .service-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(255, 255, 255, .82);
    pointer-events: none;
}

html[data-theme="light"] .leasing-hero .container,
html[data-theme="light"] .service-hero .container {
    position: relative;
    z-index: 1;
}

html[data-theme="light"] .leasing-title,
html[data-theme="light"] .service-title {
    color: var(--p-text) !important;
    text-shadow: none !important;
}

html[data-theme="light"] .leasing-subtitle,
html[data-theme="light"] .service-subtitle {
    color: var(--p-text-muted) !important;
    opacity: 1 !important;
}

/* Footer, map and modal surfaces. */
html[data-theme="light"] .map-container {
    border-color: var(--p-border) !important;
    box-shadow: 0 10px 28px rgba(31, 43, 65, .08) !important;
}

html[data-theme="light"] .footer {
    background: #f4f7fb !important;
    border-top-color: var(--p-border) !important;
}

html[data-theme="light"] .footer-title,
html[data-theme="light"] .footer-text,
html[data-theme="light"] .footer-links a,
html[data-theme="light"] .copyright {
    color: var(--p-text-muted) !important;
}

html[data-theme="light"] .footer-links a:hover,
html[data-theme="light"] .footer-social .social-icon:hover {
    color: var(--p-accent) !important;
}

html[data-theme="light"] .privacy-modal,
html[data-theme="light"] .leasing-modal,
html[data-theme="light"] .service-modal {
    background: #ffffff !important;
    border-color: var(--p-border) !important;
    box-shadow: 0 24px 70px rgba(23, 32, 51, .22) !important;
}

html[data-theme="light"] .privacy-modal-header,
html[data-theme="light"] .leasing-modal-header,
html[data-theme="light"] .service-modal-header,
html[data-theme="light"] .privacy-modal-actions,
html[data-theme="light"] .privacy-modal-footer,
html[data-theme="light"] .leasing-modal-actions,
html[data-theme="light"] .leasing-modal-footer,
html[data-theme="light"] .service-modal-actions,
html[data-theme="light"] .service-modal-footer {
    background: #f7f9fc !important;
    border-color: var(--p-border) !important;
}

html[data-theme="light"] .privacy-intro,
html[data-theme="light"] .privacy-points-list li,
html[data-theme="light"] .privacy-highlight-content p,
html[data-theme="light"] .cookies-content p,
html[data-theme="light"] .privacy-footer-note {
    color: var(--p-text-muted) !important;
}

html[data-theme="light"] .privacy-highlight,
html[data-theme="light"] .privacy-cookies-notice,
html[data-theme="light"] .privacy-contacts {
    background: #f7f9fc !important;
    border-color: var(--p-border) !important;
}

/* The mobile drawer is styled here because its script injects dark defaults later. */
html[data-theme="light"] .mobile-menu {
    background: rgba(255, 255, 255, .98) !important;
    border-color: var(--p-border) !important;
    box-shadow: 0 16px 38px rgba(31, 43, 65, .14) !important;
}

html[data-theme="light"] .mobile-nav-link,
html[data-theme="light"] .mobile-lang-btn,
html[data-theme="light"] .mobile-theme-toggle {
    background: #ffffff !important;
    border-color: var(--p-border) !important;
    color: var(--p-text) !important;
}

html[data-theme="light"] .mobile-nav-link:hover,
html[data-theme="light"] .mobile-lang-btn:hover,
html[data-theme="light"] .mobile-lang-btn.active,
html[data-theme="light"] .mobile-theme-toggle:hover {
    background: #fff8f7 !important;
    border-color: rgba(180, 35, 24, .36) !important;
    color: var(--p-accent) !important;
}

/* Repair dark-only decorative and animation rules without changing module layout. */
html[data-theme="light"] .steering-section::before,
html[data-theme="light"] .steering-section::after,
html[data-theme="light"] .owners::before,
html[data-theme="light"] .owners::after {
    background: transparent !important;
}

html[data-theme="light"] .owner-name,
html[data-theme="light"] .owner-position,
html[data-theme="light"] .owner-bio,
html[data-theme="light"] .owner-contacts {
    opacity: 1 !important;
    animation: none !important;
}

html[data-theme="light"] .owner-name {
    text-shadow: none !important;
}

html[data-theme="light"] .owner-contacts p {
    background: #f2f5f8 !important;
    border: 1px solid var(--p-border) !important;
    color: var(--p-text-muted) !important;
}

/* Keep the existing hero composition; add only a quiet light background treatment. */
html[data-theme="light"] .header-hero-wrapper {
    background:
        radial-gradient(circle at 88% 44%, rgba(22, 105, 232, .085) 0, rgba(22, 105, 232, .035) 19%, transparent 39%),
        radial-gradient(circle at 82% 75%, rgba(180, 35, 24, .06) 0, transparent 25%),
        linear-gradient(118deg, #ffffff 0%, #fbfcfe 56%, #f4f7fc 100%) !important;
}

html[data-theme="light"] .hero {
    background-color: transparent !important;
}

html[data-theme="light"] .hero-video {
    opacity: .38 !important;
    filter: saturate(.72) contrast(.94) !important;
}

html[data-theme="light"] .hero-video-container::after {
    background: linear-gradient(90deg,
        rgba(255, 255, 255, .97) 0%,
        rgba(255, 255, 255, .92) 40%,
        rgba(255, 255, 255, .66) 61%,
        rgba(247, 250, 255, .28) 100%) !important;
}
