.cg-divider-image {
    width: 100%;
    background-color: #fff;
}

.cg-divider-image__image {
    width: 100%;
}

.cg-divider-image__image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.cg-contact-sales {
    background: var(--color-surface);
    padding: 80px var(--desktop-padding);
}

.cg-contact-sales__inner {
    max-width: var(--container-width);
    margin: 0 auto;
}

.cg-contact-sales__title {
    text-align: center;
    font-family: var(--font-heading);
    font-weight: var(--fw-regular);
    font-size: var(--display-heading-size);
    line-height: var(--section-heading-line-height);
    letter-spacing: var(--section-heading-letter-spacing);
    color: var(--color-black);
    margin: 0 0 40px;
}

.cg-contact-sales__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
}

.cg-sales-card {
    position: relative;
    overflow: hidden;
    aspect-ratio: 3 / 4;
    background: var(--color-border);
}

.cg-sales-card__photo {
    position: absolute;
    inset: 0;
}

.cg-sales-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
    display: block;
}

/* Dark gradient so text/icons stay readable over any photo */
.cg-sales-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 45%;
    background: var(--card-gradient-content);
    pointer-events: none;
}

.cg-sales-card__name {
    position: absolute;
    left: 20px;
    bottom: 54px;
    right: 90px;
    z-index: 2;
    color: var(--color-white);
    font-family: var(--font-body-alt);
    font-weight: var(--fw-bold);
    font-size: var(--fluid-small);
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.cg-sales-card__role {
    position: absolute;
    left: 20px;
    bottom: 32px;
    z-index: 2;
    color: var(--color-white-70);
    font-family: var(--font-body);
    font-size: var(--sm-paragraph-size);
    line-height: var(--sm-paragraph-line-height);
    font-weight: var(--fw-regular);
}

.cg-sales-card__contact {
    position: absolute;
    right: 16px;
    bottom: 20px;
    z-index: 2;
    display: flex;
    gap: 8px;
}

.cg-sales-card__contact a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    line-height: 0;
    color: transparent;
    overflow: hidden;
    position: relative;
    text-indent: -9999px;
    transition: opacity var(--dur-micro) var(--ease);
}

.cg-sales-card__contact a:hover {
    opacity: 0.7;
}

/* Phone icon */
.cg-sales-card__contact a[href^="tel:"]::before {
    content: "";
    position: absolute;
    inset: 0;
    background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13.1715 14.8325C17.5803 19.2402 18.891 13.8299 21.6982 16.6348C24.4051 19.3405 25.9605 19.8828 22.5325 23.3108C22.1021 23.6558 19.3733 27.8096 9.78278 18.2213C0.1922 8.63306 4.34135 5.90081 4.68634 5.47159C8.12358 2.03436 8.65664 3.59894 11.3635 6.3035C14.1696 9.11075 8.7628 10.425 13.1715 14.8325Z' stroke='white' stroke-opacity='0.7' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Email icon */
.cg-sales-card__contact a[href^="mailto:"]::before {
    content: "";
    position: absolute;
    inset: 0;
    background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28' fill='none'%3E%3Cpath d='M24.5 17.61C24.5 20.836 22.3477 23.4582 19.1547 23.4503H8.84535C5.65222 23.4582 3.5 20.836 3.5 17.61V10.3985C3.5 7.17586 5.65222 4.55029 8.84535 4.55029H19.1547C22.3477 4.55029 24.5 7.17586 24.5 10.3985V17.61Z' stroke='white' stroke-opacity='0.7' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20.1981 10.6938L15.5327 14.4875C14.6541 15.1856 13.4089 15.1856 12.5303 14.4875L7.8252 10.6938' stroke='white' stroke-opacity='0.7' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

@media (max-width: 900px) {
    .cg-contact-sales {
        padding: 56px var(--mobile-padding);
    }

    .cg-contact-sales__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 6px;
    }
}

@media (max-width: 480px) {
    .cg-contact-sales__grid {
        grid-template-columns: 1fr;
    }
}


.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper textarea {
    box-sizing: border-box;
    background: #FFFFFF !important;
    border: 1px solid #CCCCCC !important;
    border-radius: 0 !important;
    padding: 22px 20px !important;
    font-family: var(--font-body, "Inter", sans-serif);
    font-size: 15px !important;
    line-height: 1.4;
    color: #000000 !important;
    outline: none;
    box-shadow: none !important;
    -webkit-appearance: none;
    appearance: none;
    transition: border-color 0.3s ease;
}

.gform_wrapper input.gform_button.button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100% !important;
    max-width: none !important;
    background: #FFFFFF !important;
    border: 1px solid #CCCCCC !important;
    border-radius: 0 !important;
    padding: 18px 24px !important;
    margin: 0 !important;
    font-family: var(--font-mono, "IBM Plex Mono", monospace) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0px !important;
    text-transform: uppercase !important;
    color: #000000 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.gform_wrapper select {
    box-sizing: border-box;
    border: 1px solid #CCCCCC !important;
    border-radius: 0 !important;
    font-family: var(--font-body, "Inter", sans-serif);
    font-size: 15px !important;
    color: #000000 !important;
    outline: none;
    box-shadow: none !important;
    -webkit-appearance: none;
    appearance: none;
}


.cg-sitemap-img__subtitle {
    margin: 12px 0 0;
    font-family: var(--font-body);
    font-size: var(--paragraph-size);
    line-height: var(--paragraph-line-height);
    color: var(--color-text-muted);
    text-align: center;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

/* Privacy Policy page template */

.privacy-policy-page {
    padding: 120px 20px 80px;
}

.privacy-policy-container {
    max-width: 1600px;
    margin: 0 auto;
}

.privacy-policy-header {
    margin-bottom: 24px;
}

.privacy-policy-title {
    margin: 0;
}

.privacy-policy-intro {
    font-size: 1.05em;
    line-height: 1.7;
    margin-bottom: 40px;
}

.privacy-policy-sections {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.privacy-policy-section-heading {
    margin-bottom: 10px;
}

.privacy-policy-section-content {
    line-height: 1.7;
}

.privacy-policy-section-content ul {
    margin: 0 0 1em 1.25em;
    padding: 0;
}

.privacy-policy-section-content li {
    margin-bottom: 0.4em;
}

.privacy-policy-footer {
    margin-top: 56px;
    padding-top: 24px;
    border-top: 1px solid #e2e2e2;
    font-size: 0.95em;
}

.privacy-policy-footer a {
    word-break: break-word;
}

.privacy-policy-updated span {
    font-style: italic;
}

.cg-project-list-wrap img.cg-list__img.wp-post-image {
    position: relative;
    filter: brightness(70%);
}