/* ── Contact page – pink everything, only footer shows ── */
body:has(.contact-page-wrap) {
    background-color: var(--accent-pink);
}

body:has(.contact-page-wrap) .navbar {
    background-color: var(--accent-pink);
}

body:has(.contact-page-wrap) .navbar__links a:hover,
body:has(.contact-page-wrap) .navbar__links a.active {
    color: #FFF;
}

body:has(.contact-page-wrap) .footer {
    background: var(--accent-pink);
}

body:has(.contact-page-wrap) .footer__bottom span {
    color: rgba(255, 255, 255, 0.5);
}

body:has(.contact-page-wrap) .contact-cta__title,
body:has(.contact-page-wrap) .contact-cta__subtitle {
    color: var(--color-dark);
}

body:has(.contact-page-wrap) .contact-cta__form-row input {
    border-bottom-color: rgba(0, 0, 0, 0.2);
    color: var(--color-dark);
}

body:has(.contact-page-wrap) .contact-cta__form-row input::placeholder {
    color: var(--color-dark);
}

body:has(.contact-page-wrap) .contact-cta__form-row input:focus {
    border-bottom-color: var(--color-dark);
}

body:has(.contact-page-wrap) .contact-cta__form-row input:-webkit-autofill,
body:has(.contact-page-wrap) .contact-cta__form-row input:-webkit-autofill:hover,
body:has(.contact-page-wrap) .contact-cta__form-row input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 100vw var(--accent-pink) inset;
    -webkit-text-fill-color: var(--color-dark);
    border-bottom: 0.1vw solid rgba(0, 0, 0, 0.2);
    caret-color: var(--color-dark);
}

body:has(.contact-page-wrap) .contact-cta__btn {
    background: var(--color-dark);
    color: var(--color-light);
}

body:has(.contact-page-wrap) .contact-cta__btn:hover {
    background: var(--color-light);
    color: var(--color-dark);
}

/* Push footer to bottom */
body:has(.contact-page-wrap) {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

body:has(.contact-page-wrap) main {
    flex: 1;
}

.contact-page-wrap {
    font-size: 0;
    line-height: 0;
    height: 0;
    overflow: hidden;
}
