﻿/* ============================================================
   Contact — page-specific styles
   pages/contact/contact.css
   Global styles are in: assets/css/theme.css
   ============================================================ */

/* ──────────────────────────────────────────
   CT-HERO: Cream / Sage gradient hero
   Mirrors .ab-hero / .mo-hero (brand-consistent).
   ────────────────────────────────────────── */
.ct-hero {
    position: relative;
    background: linear-gradient(160deg, #F5F2ED 0%, #EAE6DF 55%, #d6e8d0 100%);
    padding: 5.5rem 0 4rem;
    text-align: center;
    overflow: hidden;
}

.ct-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent 0%, #588157 30%, #3d6040 70%, transparent 100%);
}

.ct-hero__overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse at 15% 80%, rgba(88, 129, 87, 0.10) 0%, transparent 55%),
        radial-gradient(ellipse at 85% 20%, rgba(88, 129, 87, 0.07) 0%, transparent 50%);
    pointer-events: none;
}

.ct-hero__content {
    position: relative;
    z-index: 1;
}

.ct-eyebrow {
    display: inline-block;
    font-family: var(--font-body);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #588157;
    margin-bottom: 1rem;
}

.ct-hero__title {
    font-family: var(--font-heading);
    font-size: clamp(2rem, 5vw, 3.25rem);
    font-weight: 700;
    color: var(--color-dark);
    line-height: 1.15;
    margin: 0 auto 1.25rem;
    max-width: 720px;
}

.ct-hero__sub {
    font-size: 1.125rem;
    color: var(--color-muted);
    max-width: 580px;
    margin: 0 auto;
    line-height: 1.7;
}

/* ──────────────────────────────────────────
   CONTACT GRID: form + info side by side
   ────────────────────────────────────────── */
.contact-page-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: start;
}

/* ──────────────────────────────────────────
   RESPONSIVE
   ────────────────────────────────────────── */
@media (max-width: 768px) {
    .ct-hero {
        padding: 3.5rem 0 2.75rem;
    }

    .ct-hero__sub {
        font-size: 1rem;
    }

    .contact-page-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .ct-hero {
        padding: 2.5rem 0 2.25rem;
    }
}
