:root {
    --commerce-navy: #071c35;
    --commerce-navy-mid: #0d3158;
    --commerce-blue: #2578d5;
    --commerce-cyan: #55c7d7;
    --commerce-sky: #eaf6ff;
    --commerce-paper: #f5f9fd;
    --commerce-ink: #10243d;
    --commerce-muted: #526b80;
    --commerce-line: rgba(16, 36, 61, 0.1);
}

body {
    background: #0a1124 !important;
    color: var(--commerce-ink) !important;
    font-family: 'Barlow Semi Condensed', 'Segoe UI', Arial, sans-serif !important;
}

.ecom-hero,
.hero-section {
    position: relative;
    overflow: hidden;
    min-height: 500px;
    padding: 74px 32px 62px !important;
    color: #fff !important;
    background: radial-gradient(circle at 10% 10%, rgba(85,199,215,0.22), transparent 28%), linear-gradient(132deg, var(--commerce-navy) 0%, var(--commerce-navy-mid) 58%, #155487 100%) !important;
    border-radius: 0 0 34px 34px;
    box-shadow: 0 22px 46px rgba(7, 28, 53, 0.14);
}

.ecom-hero::after,
.hero-section::after {
    content: '';
    position: absolute;
    width: 420px;
    height: 420px;
    top: -210px;
    right: -150px;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 50%;
    box-shadow: 0 0 0 40px rgba(255,255,255,0.035), 0 0 0 80px rgba(255,255,255,0.02);
    pointer-events: none;
}

.ecom-container.hero-flex,
.hero-section .container {
    position: relative;
    z-index: 1;
    width: min(1180px, calc(100% - 40px)) !important;
    max-width: none !important;
    min-height: 500px;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 46px !important;
    align-items: center !important;
}

.ecom-hero h1,
.hero-section h1 {
    color: #fff !important;
    font-size: clamp(2.8rem, 5vw, 4.8rem) !important;
    line-height: 0.94 !important;
    letter-spacing: -0.06em !important;
    margin: 0 0 16px !important;
}

.ecom-hero p,
.hero-section h2,
.hero-section p {
    color: rgba(255,255,255,0.84) !important;
    font-size: 1.12rem !important;
    line-height: 1.7 !important;
}

.ecom-hero-buttons,
.hero-section .hero-buttons {
    display: flex !important;
    flex-wrap: wrap;
    gap: 14px !important;
    margin: 28px 0 20px !important;
}

.ecom-hero-buttons a,
.hero-section .btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0.92em 1.55em !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.ecom-btn-primary,
.hero-section .btn-primary {
    color: #08253e !important;
    background: var(--commerce-cyan) !important;
    border: 0 !important;
}

.ecom-btn-outline,
.hero-section .btn-secondary {
    color: #fff !important;
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.45) !important;
}

.ecom-video-responsive,
.hero-section .hero-video-block video {
    border-radius: 24px !important;
    box-shadow: 0 28px 60px rgba(0,0,0,0.24) !important;
}

.ecom-section {
    padding: 78px 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.ecom-section:nth-of-type(odd) {
    background: #fff !important;
}

.ecom-section:nth-of-type(even) {
    background: var(--commerce-paper) !important;
}

.ecom-container {
    width: min(1180px, calc(100% - 40px)) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.ecom-section-header h2 {
    color: var(--commerce-navy) !important;
    font-size: clamp(2rem, 3.2vw, 3rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.045em !important;
}

.ecom-section-header p,
.ecom-lead,
.ecom-desc-block p,
.ecom-feature-card div {
    color: var(--commerce-muted) !important;
    font-size: 1.08rem !important;
    line-height: 1.7 !important;
}

.ecom-why-card,
.ecom-feature-card,
.ecom-features-grid .ecom-feature-card,
.ecom-desc-block,
.ecom-process-list li {
    border: 1px solid var(--commerce-line) !important;
    border-radius: 18px !important;
    box-shadow: 0 10px 28px rgba(16,36,61,0.055) !important;
    background: #fff !important;
}

.ecom-why-card:hover,
.ecom-feature-card:hover {
    transform: translateY(-4px);
    border-color: rgba(37,120,213,0.3) !important;
    box-shadow: 0 18px 36px rgba(16,36,61,0.1) !important;
}

.ecom-card-icon,
.ecom-feature-icon,
.ecom-icon {
    color: var(--commerce-blue) !important;
}

.ecom-feature-list,
.ecom-cta-list {
    color: var(--commerce-muted) !important;
}

.ecom-feature-list strong,
.ecom-cta-list strong {
    color: var(--commerce-navy) !important;
}

.locations-services-section {
    background: var(--commerce-navy) !important;
    padding: 48px 0 !important;
}

@media (max-width: 900px) {
    .ecom-hero,
    .hero-section {
        min-height: 0;
        padding: 60px 20px 44px !important;
    }

    .ecom-container.hero-flex,
    .hero-section .container {
        min-height: 0;
        width: min(100% - 28px, 1180px) !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .ecom-hero-buttons,
    .hero-section .hero-buttons {
        justify-content: center;
    }
}

@media (max-width: 620px) {
    .ecom-hero-buttons,
    .hero-section .hero-buttons {
        flex-direction: column !important;
    }

    .ecom-hero-buttons a,
    .hero-section .btn {
        width: 100% !important;
        box-sizing: border-box;
        margin: 0 !important;
    }

    .ecom-section {
        padding: 60px 0 !important;
    }

    .ecom-container {
        width: min(100% - 28px, 1180px) !important;
    }
}
