
.text-image-cm .text-image-content,
.image-text-cm .text-image-content {
    display: block;
    padding: 6rem;
    font-size: 1.5rem;
}

.image-text-cm .text-image-content .image {
    float: left;
    width: 35%;
    margin: 0 2rem 1rem 0;
}

.image-text-cm .text-image-content .image img {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 1rem;
}

.image-text-cm .text-image-content .text {
    display: contents;
}

.image-text-cm h2,
.text-image-cm h2 {
    text-align: center;
    margin-bottom: 0rem;
    margin-top: 3rem;
    font-size: 4rem;
    color: var(--gold-bright);
}


.red-button {
    display: inline-block;

    padding: 1rem 1rem;

    background: linear-gradient(
        to right,
        #5c1115 0%,
        #a4191e 25%,
        #c52a2f 50%,
        #a4191e 75%,
        #5c1115 100%
    );
    color: var(--text);

    text-decoration: none;

    border-radius: 4px;

    font-family: Cinzel, serif;
    font-weight: 700;
}

.gold-button {
    display: inline-block;

    padding: 1rem 1rem;

background: linear-gradient(
    to right,
    #493A1D 0%,
    #68552C 25%,
    #846B36 50%,
    #68552C 75%,
    #493A1D 100%
);

    color: var(--text);

    text-decoration: none;

    border-radius: 4px;

    font-family: Cinzel, serif;
    font-weight: 700;
}



.red-button,
.gold-button {
    width: min(320px, 100%);
    text-align: center;
    box-sizing: border-box;
    margin-right: 2.75rem;
    margin-bottom: 2rem;


    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        filter 0.2s ease;
}

.red-button:hover,
.gold-button:hover {
    transform: translateY(-2px);
    filter: brightness(1.15);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
    }

.image-text-cm .text p {
    margin-bottom: 1.5rem;
}

.image-text-cm .text h3 {
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}

.image-text-cm .text h2 {
    margin-top: 2.5rem;
    margin-bottom: 1rem;
}
.image-text-cm .text h1 {
    margin-top: 0rem;
    margin-bottom: 1.5rem;
}

.image-text-cm .text h4 {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.image-text-cm .text h5 {
    margin-top: 0.5rem;
    margin-bottom: 0.7rem;
}

.image-text-cm .section-divider {
    width: auto;
    margin-top: 0.5rem;
    margin-bottom: 1rem;
}

/* Mobile layout */

@media (max-width: 1100px) {

    .text-image-cm .text-image-content,
    .image-text-cm .text-image-content {
        padding: 1.5rem;
        font-size: clamp(1rem, 4vw, 1.25rem);
    }

    .image-text-cm .text-image-content .image {
        float: none;
        width: 100%;
        max-width: 500px;
        margin: 0 auto 1.5rem;
    }

    .image-text-cm .text-image-content .image img {
        width: 100%;
        height: auto;
    }

    .image-text-cm .text-image-content .text {
        display: block;
    }

    .image-text-cm h2,
    .text-image-cm h2 {
        font-size: clamp(1.5rem, 6vw, 2.5rem);
        margin: 2rem 1rem 1rem;
    }

    .red-button,
    .gold-button {
        margin-right: 1rem;
        max-width: 100%;
    }
}