:root {
    --brand-ink: #031323;
    --brand-ink-deep: #010811;
    --brand-gold: #C8A458;
    --brand-gold-light: #E0C57F;
    --brand-cream: #FFFFFF;
    --brand-cream-deep: #F4F7FA;
}

body { font-family: var(--font-body) !important; }

h1,
h2,
h3,
h4,
h5,
h6,
.hero-title,
.hero-form-title,
.footer-logo-text {
    font-family: var(--font-heading) !important;
}

.header {
    background: var(--brand-ink) !important;
    border-bottom: 1px solid rgba(200, 164, 88, 0.34) !important;
    box-shadow: 0 12px 30px rgba(1, 8, 17, 0.22) !important;
}

.logo img {
    height: 58px !important;
    width: 220px !important;
    object-fit: contain !important;
}

.nav-link {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.nav-link:hover,
.nav-link.active,
.header-phone:hover {
    color: var(--brand-gold) !important;
}

.btn-primary,
.header .btn-primary,
.section-light .btn-primary,
.section-warm .btn-primary,
.hero-form-glass .btn-primary,
.hero-form-glass .hero-form-btn {
    background: var(--brand-gold) !important;
    border: 1px solid var(--brand-gold) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--brand-ink-deep) !important;
    font-weight: 800 !important;
    letter-spacing: 0.6px !important;
}

.btn-primary:hover,
.header .btn-primary:hover,
.section-light .btn-primary:hover,
.section-warm .btn-primary:hover,
.hero-form-glass .btn-primary:hover,
.hero-form-glass .hero-form-btn:hover {
    background: var(--brand-gold-light) !important;
    border-color: var(--brand-gold-light) !important;
    color: var(--brand-ink-deep) !important;
}

.btn-secondary {
    border-color: rgba(255, 255, 255, 0.55) !important;
    border-radius: 0 !important;
    letter-spacing: 0.6px !important;
}

.hero-split-container {
    max-width: 1440px !important;
    grid-template-columns: minmax(0, 1.45fr) minmax(360px, 0.75fr) !important;
    gap: 48px !important;
}

.hero-title {
    font-size: clamp(44px, 6.4vw, 82px) !important;
    font-weight: 700 !important;
    line-height: 0.96 !important;
}

.hero-subtitle {
    font-size: 17px !important;
    line-height: 1.65 !important;
    max-width: 650px !important;
}

.text-emphasis,
.hero-badge-icon,
.text-gold,
.section-dark .section-label {
    color: var(--brand-gold) !important;
}

.hero-overlay,
.hero-video .hero-overlay,
.service-hero .hero-overlay {
    background:
        linear-gradient(90deg, rgba(1, 8, 17, 0.76) 0%, rgba(1, 8, 17, 0.5) 48%, rgba(1, 8, 17, 0.72) 100%),
        linear-gradient(180deg, rgba(1, 8, 17, 0.16) 0%, rgba(1, 8, 17, 0.82) 100%) !important;
}

.pill-badge {
    color: var(--brand-gold) !important;
    background: rgba(1, 8, 17, 0.42) !important;
    border-color: rgba(200, 164, 88, 0.42) !important;
}

.pill-badge .pill-dot {
    background: var(--brand-gold) !important;
}

.hero-form-glass {
    background: var(--brand-ink) !important;
    border: 1px solid rgba(200, 164, 88, 0.4) !important;
    border-radius: 0 !important;
    box-shadow: 0 28px 70px rgba(1, 8, 17, 0.34) !important;
    padding: 40px !important;
}

.hero-form-glass .hero-form-title {
    color: #fff !important;
    font-weight: 800 !important;
}

.hero-form-glass .hero-form-subtitle {
    color: rgba(255, 255, 255, 0.68) !important;
}

.hero-form-glass input,
.hero-form-glass select,
.hero-form-glass textarea {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    border-radius: 0 !important;
    color: #fff !important;
}

.hero-form-glass input::placeholder,
.hero-form-glass textarea::placeholder {
    color: rgba(255, 255, 255, 0.52) !important;
}

.hero-form-glass select {
    color: rgba(255, 255, 255, 0.86) !important;
}

.trust-bar {
    background: var(--brand-ink) !important;
    border-top: 1px solid rgba(200, 164, 88, 0.45) !important;
    border-bottom: 1px solid rgba(200, 164, 88, 0.45) !important;
    padding: 18px 0 !important;
}

.trust-bar-grid {
    display: flex !important;
    justify-content: center !important;
    gap: clamp(24px, 6vw, 86px) !important;
}

.trust-stat {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: var(--brand-gold) !important;
}

.trust-stat:not(:first-child) {
    border-left: none !important;
    padding-left: 0 !important;
}

.trust-stat:not(:first-child)::before {
    content: "";
    width: 5px;
    height: 5px;
    background: var(--brand-gold);
    transform: rotate(45deg);
    margin-right: clamp(10px, 2vw, 28px);
}

.trust-number {
    color: #fff !important;
    font-size: 15px !important;
    letter-spacing: 1px !important;
}

.trust-label {
    color: var(--brand-gold) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 1.8px !important;
    text-transform: uppercase !important;
}

.section,
.section-light {
    background: var(--brand-cream) !important;
}

.section-alt,
.section-warm {
    background: var(--brand-cream-deep) !important;
}

.section-label {
    color: var(--brand-gold) !important;
    letter-spacing: 1.6px !important;
}

.image-stagger-grid {
    position: relative !important;
}

.image-stagger-grid::before {
    content: "";
    position: absolute;
    inset: -28px 22px 36px -22px;
    border: 1px solid rgba(200, 164, 88, 0.62);
    pointer-events: none;
}

.image-stagger-grid img,
.service-card,
.process-card-glass {
    border-radius: 0 !important;
}

.service-card,
.process-card-glass,
.section-light .service-card,
.section-light .process-card-glass {
    background: rgba(255, 255, 255, 0.68) !important;
    border: 1px solid rgba(200, 164, 88, 0.28) !important;
    box-shadow: none !important;
}

.footer-logo-text {
    color: var(--brand-gold) !important;
    font-size: 24px !important;
    letter-spacing: 1.6px !important;
    text-transform: uppercase !important;
}

/* Light section contrast fixes */
.section:not(.section-dark),
.section-light,
.section-alt,
.section-warm,
.services-section-light,
.cta-form-section {
    color: var(--brand-ink-deep) !important;
}

.section:not(.section-dark) h1,
.section:not(.section-dark) h2,
.section:not(.section-dark) h3,
.section:not(.section-dark) h4,
.section:not(.section-dark) h5,
.section:not(.section-dark) h6,
.section-light h1,
.section-light h2,
.section-light h3,
.section-light h4,
.section-alt h1,
.section-alt h2,
.section-alt h3,
.section-alt h4,
.section-warm h1,
.section-warm h2,
.section-warm h3,
.section-warm h4,
.service-card h3,
.process-card-glass h3,
.faq-question span:first-child {
    color: var(--brand-ink-deep) !important;
}

.section:not(.section-dark) p,
.section:not(.section-dark) li,
.section:not(.section-dark) .section-body,
.section:not(.section-dark) .service-card,
.section:not(.section-dark) .process-card-glass,
.section:not(.section-dark) .faq-item-accordion,
.section:not(.section-dark) .faq-question,
.section-light p,
.section-light li,
.section-light .section-body,
.section-light .service-card,
.section-light .process-card-glass,
.section-light .faq-item-accordion,
.section-light .faq-question,
.section-alt p,
.section-alt li,
.section-alt .section-body,
.section-alt .service-card,
.section-alt .process-card-glass,
.section-alt .faq-item-accordion,
.section-alt .faq-question,
.section-warm p,
.section-warm li,
.section-warm .section-body,
.section-warm .service-card,
.section-warm .process-card-glass,
.section-warm .faq-item-accordion,
.section-warm .faq-question,
.services-section-light .service-card,
.services-section-light .process-card-glass,
.services-section-light .faq-item-accordion,
.services-section-light .faq-question,
.service-card p,
.process-card-glass p,
.faq-answer p,
.feature-list li {
    color: #23303D !important;
}

.section:not(.section-dark) .service-card h3,
.section:not(.section-dark) .process-card-glass h3,
.section:not(.section-dark) .faq-question span:first-child,
.section-light .service-card h3,
.section-light .process-card-glass h3,
.section-light .faq-question span:first-child,
.section-alt .service-card h3,
.section-alt .process-card-glass h3,
.section-alt .faq-question span:first-child,
.section-warm .service-card h3,
.section-warm .process-card-glass h3,
.section-warm .faq-question span:first-child,
.services-section-light .service-card h3,
.services-section-light .process-card-glass h3,
.services-section-light .faq-question span:first-child {
    color: var(--brand-ink-deep) !important;
}

.section:not(.section-dark) .service-card p,
.section:not(.section-dark) .process-card-glass p,
.section:not(.section-dark) .faq-answer p,
.section:not(.section-dark) .feature-list li,
.section-light .service-card p,
.section-light .process-card-glass p,
.section-light .faq-answer p,
.section-light .feature-list li,
.section-alt .service-card p,
.section-alt .process-card-glass p,
.section-alt .faq-answer p,
.section-alt .feature-list li,
.section-warm .service-card p,
.section-warm .process-card-glass p,
.section-warm .faq-answer p,
.section-warm .feature-list li,
.services-section-light .service-card p,
.services-section-light .process-card-glass p,
.services-section-light .faq-answer p,
.services-section-light .feature-list li {
    color: #23303D !important;
}

.section-label,
.section:not(.section-dark) .section-label,
.section-light .section-label,
.section-alt .section-label,
.section-warm .section-label,
.text-emphasis {
    color: var(--brand-gold) !important;
}

#process.section-dark {
    background: var(--brand-cream) !important;
    color: var(--brand-ink-deep) !important;
}

#process.section-dark .section-label,
#process.section-dark .process-step-number {
    color: var(--brand-gold) !important;
}

#process.section-dark h2,
#process.section-dark h3,
#process.section-dark .text-white {
    color: var(--brand-ink-deep) !important;
}

#process.section-dark p,
#process.section-dark li,
#process.section-dark .section-body,
#process.section-dark .process-card-glass p {
    color: #23303D !important;
}

#process.section-dark .process-card-glass {
    background: rgba(255, 255, 255, 0.68) !important;
    border: 1px solid rgba(200, 164, 88, 0.28) !important;
    color: var(--brand-ink-deep) !important;
}

/* Keep intentionally dark areas light */
.hero,
.hero .hero-title,
.hero .hero-subtitle,
.hero .btn-secondary,
.hero-form-glass,
.hero-form-glass .hero-form-title,
.footer-premium,
.footer-premium h4,
.section-dark,
.section-dark h2,
.section-dark h3 {
    color: #fff !important;
}

.hero-form-glass .hero-form-subtitle,
.hero-form-glass input,
.hero-form-glass select,
.hero-form-glass textarea,
.footer-premium p,
.footer-premium li,
.footer-premium a,
.section-dark p,
.section-dark li {
    color: rgba(255, 255, 255, 0.74) !important;
}

.hero .text-emphasis,
.trust-label,
.section-dark .section-label,
.footer-logo-text {
    color: var(--brand-gold) !important;
}

@media (max-width: 900px) {
    .hero-split-container {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .hero-form-glass {
        padding: 30px 24px !important;
    }

    .trust-bar-grid {
        flex-wrap: wrap !important;
        row-gap: 12px !important;
    }
}

@media (max-width: 768px) {
    .logo img {
        height: 50px !important;
        width: 190px !important;
    }

    .hero-title {
        font-size: 42px !important;
        line-height: 1.03 !important;
    }
}
