.ctc.v4 {

    /* -- Layout -------------------------------------------- */

    .ctc-v4-layout {
        gap: 4rem;
    }

    @media screen and (min-width: 1280px) {
        .ctc-v4-content {
            width: calc(43% - (var(--flx-gap) / 2));
        }

        .ctc-v4-form {
            width: calc(57% - (var(--flx-gap) / 2));
        }
    }

    /* -- Heading & body ------------------------------------ */

    .ctc-v4-heading {
        display: block;
        margin-bottom: 1rem;
    }

    .ctc-v4-body {
        max-width: 38rem;
    }

    /* -- Areas We Serve ------------------------------------ */

    .ctc-v4-areas-ttl {
        font-size: var(--fnt-t-k-sml-s);
        font-family: var(--fnt-t);
        font-weight: var(--fnt-t-1-w);
    }

    @media screen and (min-width: 1280px) {
        .ctc-v4-areas-ttl {
            /* Fixed 1.1rem at all widths; mobile token scales to 1.7rem above 1280 */
            font-size: 1.1rem;
        }
    }

    .ctc-v4-areas ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    /* -- Background image overlay -------------------------- */

    picture.bg img {
        opacity: 1;
    }

    .tag {
        --tag-s: 1rem;
        --bdr-clr-o: 0.5;
        background-color: hsl(from var(--text-color) h s l / 0.2);
    }
}
