/* Contact page only — readable text on night-sky hero + light cards */

:root {
    --contact-navy: #1a2744;
    --contact-gray: #6b7280;
}

/* Hero — reinforce white type above night-sky overlay */
body.page-contact .inner-page__hero,
body.page-contact .inner-page__hero-inner {
    position: relative;
    z-index: 2;
}

body.page-contact .inner-page__hero .inner-page__kicker,
body.page-contact .inner-page__hero .inner-page__title {
    color: #fff !important;
    opacity: 1 !important;
}

body.page-contact .inner-page__hero .inner-page__sub {
    color: rgba(255, 255, 255, 0.88) !important;
    opacity: 1 !important;
}

/* Light cards — override inner-layout translucent dark panels */
body.page-contact .contact-page__card {
    background: #faf7f0 !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: 0.25rem;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.page-contact .contact-page__card--form {
    background: #fff !important;
    border-color: #ece8e0 !important;
    box-shadow: 0 20px 60px rgba(20, 20, 20, 0.06);
}

/* Card headings & intro */
body.page-contact .contact-page__card .contact-page__card-heading,
body.page-contact .contact-page__card .contact-page__card-intro,
body.page-contact .contact-page__card .contact-page__card-intro p,
body.page-contact .contact-page__card .contact-page__card-intro li {
    color: var(--contact-navy) !important;
}

/* Contact info labels & values */
body.page-contact .contact-page__info-label {
    font-size: 0.65rem;
    letter-spacing: 0.2em;
    color: var(--contact-navy) !important;
}

body.page-contact .contact-page__info-value,
body.page-contact a.contact-page__info-value {
    color: #1a1a1a !important;
}

body.page-contact a.contact-page__info-value:hover {
    color: var(--leona-coral, #d46558) !important;
}

body.page-contact .contact-page__info-value--text {
    color: var(--contact-navy) !important;
}

/* Form labels */
body.page-contact .contact-page__form-label {
    color: var(--contact-navy) !important;
}

/* Inputs & textarea */
body.page-contact .contact-page__form-control {
    background: #fff !important;
    border: 1px solid #e0ddd6 !important;
    color: #1a1a1a !important;
}

body.page-contact .contact-page__form-control::placeholder {
    color: var(--contact-gray) !important;
    opacity: 1;
}

body.page-contact .contact-page__form-control:focus {
    border-color: var(--leona-coral, #d46558) !important;
    box-shadow: 0 0 0 0.2rem rgba(212, 101, 88, 0.12);
    color: #1a1a1a !important;
}

/* Submit button — keep brand coral; ensure label stays readable */
body.page-contact .contact-page__form .btn-coral {
    color: #fff !important;
}

/* Success / error messages (if added later) */
body.page-contact .contact-page__alert {
    color: var(--contact-navy) !important;
}

body.page-contact .contact-page__alert--success {
    background: rgba(34, 139, 34, 0.1);
    border-color: rgba(34, 139, 34, 0.25);
}

body.page-contact .contact-page__alert--error {
    background: rgba(180, 40, 40, 0.08);
    border-color: rgba(180, 40, 40, 0.2);
}
