/* Google Ads landing pages */

.landing-header {
    background: #fff;
    padding: 14px 0;
    border-bottom: 1px solid var(--cw-border, #e8edf2);
    box-shadow: 0 1px 0 rgba(15, 57, 82, 0.04);
}

.landing-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.landing-header__logo img {
    display: block;
    height: auto;
    max-width: min(240px, 58vw);
}

.landing-header__call {
    padding: 10px 22px;
    font-size: 1rem;
    white-space: nowrap;
    flex-shrink: 0;
}

.landing-header__call:hover {
    color: var(--cw-white);
}

.landing-services {
    padding: clamp(48px, 8vw, 88px) 0 clamp(32px, 5vw, 48px);
    background: var(--cw-light, #f7f9fb);
}

.landing-services__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.landing-service-card {
    cursor: default;
    min-height: 190px;
}

.landing-service-card--heat {
    background: linear-gradient(145deg, #c2410c 0%, #ea580c 55%, #f97316 100%);
    box-shadow: 0 10px 28px rgba(234, 88, 12, 0.22);
}

.landing-service-card--cool {
    background: linear-gradient(145deg, #0369a1 0%, #0ea5e9 55%, #38bdf8 100%);
    box-shadow: 0 10px 28px rgba(14, 165, 233, 0.22);
}

.landing-service-card--plumbing {
    background: linear-gradient(145deg, #0f3952 0%, #1e4d63 55%, #2d6478 100%);
    box-shadow: 0 10px 28px rgba(15, 57, 82, 0.22);
}

.landing-service-card--duct {
    background: linear-gradient(145deg, #047857 0%, #059669 55%, #10b981 100%);
    box-shadow: 0 10px 28px rgba(5, 150, 105, 0.22);
}

.landing-service-card--pumps {
    background: linear-gradient(145deg, #6d28d9 0%, #7c3aed 55%, #8b5cf6 100%);
    box-shadow: 0 10px 28px rgba(124, 58, 237, 0.22);
}

.landing-service-card--care {
    background: linear-gradient(145deg, #115e59 0%, #0f766e 55%, #14b8a6 100%);
    box-shadow: 0 10px 28px rgba(15, 118, 110, 0.22);
}

.landing-service-card--air {
    background: linear-gradient(145deg, #0e7490 0%, #0891b2 55%, #22d3ee 100%);
    box-shadow: 0 10px 28px rgba(8, 145, 178, 0.22);
}

.landing-service-card--emergency {
    background: linear-gradient(145deg, #b45309 0%, #d97706 40%, #e69140 100%);
    box-shadow: 0 10px 28px rgba(230, 145, 64, 0.28);
}

.landing-service-card:hover {
    transform: translateY(-4px);
}

.landing-service-card--heat:hover {
    box-shadow: 0 16px 36px rgba(234, 88, 12, 0.32);
}

.landing-service-card--cool:hover {
    box-shadow: 0 16px 36px rgba(14, 165, 233, 0.32);
}

.landing-service-card--plumbing:hover {
    box-shadow: 0 16px 36px rgba(15, 57, 82, 0.28);
}

.landing-service-card--duct:hover {
    box-shadow: 0 16px 36px rgba(5, 150, 105, 0.32);
}

.landing-service-card--pumps:hover {
    box-shadow: 0 16px 36px rgba(124, 58, 237, 0.32);
}

.landing-service-card--care:hover {
    box-shadow: 0 16px 36px rgba(15, 118, 110, 0.32);
}

.landing-service-card--air:hover {
    box-shadow: 0 16px 36px rgba(8, 145, 178, 0.32);
}

.landing-service-card--emergency:hover {
    box-shadow: 0 18px 40px rgba(230, 145, 64, 0.38);
}

.landing-service-card__desc {
    margin: 0;
    font-size: 0.92rem;
    line-height: 1.55;
    color: rgba(255, 255, 255, 0.92);
    max-width: 34ch;
}

.landing-reviews {
    padding-top: clamp(48px, 8vw, 88px);
}

.landing-faq__inner {
    max-width: 920px;
}

.landing-faq__header {
    margin-bottom: 28px;
}

.landing-faq__list {
    max-width: none;
}

.landing-cta-band {
    margin-bottom: 0;
}

.landing-footer {
    background: var(--cw-navy-dark, #0a1f2c);
    color: rgba(255, 255, 255, 0.75);
    padding: 18px 0;
    font-size: 0.9rem;
    text-align: center;
}

.google-ads-form-panel__lead {
    margin: 0 0 16px;
    font-size: 0.95rem;
    line-height: 1.5;
    color: var(--cw-muted, #5f6b76);
}

.google-ads-form .contact-form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.google-ads-form__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.google-ads-form__field .field-label {
    margin-bottom: 0;
}

@media (max-width: 520px) {
    .google-ads-form .contact-form-row {
        grid-template-columns: 1fr;
    }
}

.thank-you-split {
    padding: clamp(48px, 8vw, 96px) 0;
}

.thank-you-split__inner {
    display: grid;
    grid-template-columns: minmax(240px, 380px) 1fr;
    gap: clamp(28px, 5vw, 56px);
    align-items: center;
}

.thank-you-split__media {
    position: relative;
}

.thank-you-split__image {
    position: relative;
    aspect-ratio: 4 / 5;
    max-height: 560px;
    width: 100%;
    border-radius: 24px 80px 24px 24px;
    background: center/cover no-repeat;
    box-shadow: 0 24px 48px rgba(15, 57, 82, 0.16);
    overflow: hidden;
}

.thank-you-split__image::after {
    content: '';
    position: absolute;
    inset: 12px;
    border: 2px solid rgba(230, 145, 64, 0.55);
    border-radius: 18px 72px 18px 18px;
    pointer-events: none;
    z-index: 1;
}

.thank-you-split__badge {
    position: absolute;
    bottom: 28px;
    left: 28px;
    z-index: 2;
    padding: 12px 20px;
    background: var(--cw-yellow, #e69140);
    color: var(--cw-white, #fff);
    font-family: 'Questrial', sans-serif;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border-radius: 999px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.thank-you-split__media img {
    width: 100%;
    border-radius: 16px;
    object-fit: cover;
    box-shadow: 0 12px 40px rgba(15, 57, 82, 0.12);
}

.thank-you-split__copy h1 {
    font-family: var(--font-heading);
    font-size: clamp(1.75rem, 3vw, 2.35rem);
    line-height: 1.15;
    margin-bottom: 16px;
    color: var(--cw-navy, #0f3952);
}

.thank-you-split__copy p {
    margin-bottom: 16px;
    line-height: 1.65;
}

@media (max-width: 1100px) {
    .landing-services__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .thank-you-split__inner {
        grid-template-columns: 1fr;
    }

    .thank-you-split__media {
        max-width: 360px;
        margin: 0 auto;
    }

    .thank-you-split__image {
        max-height: 420px;
        aspect-ratio: 16 / 10;
        border-radius: 20px 60px 20px 20px;
    }

    .thank-you-split__image::after {
        border-radius: 14px 52px 14px 14px;
    }

    .thank-you-split__badge {
        bottom: 20px;
        left: 20px;
        padding: 10px 16px;
        font-size: 0.75rem;
    }
}

@media (max-width: 560px) {
    .landing-services__grid {
        grid-template-columns: 1fr;
    }
}
