/* Download Embed Cards Module */
.module_download_embed_cards {
    padding-bottom: 50px;
}

.module_download_embed_cards .container {
    max-width: calc(1000px + var(--content-responsive-padding) * 2);
}

.download-embed-cards-flex {
    margin-left: -14px;
    margin-right: -14px;
    display: flex;
    flex-wrap: wrap;
}

.download-embed-card-item {
    width: calc(33.33% - 28px);
    margin: 14px;
}

.download-embed-card-item .theeBoxDownloadInner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Card image - big at top, seamless */
.download-embed-card-item .threeBoxDownloadImage {
    margin-bottom: 0;
    padding: 0;
    overflow: hidden;
}

.download-embed-card-item .threeBoxDownloadImage img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}

/* Card content */
.download-embed-card-item .threeBoxContent {
    padding: 25px 20px;
    margin-bottom: 0;
    flex-grow: 1;
}

.download-embed-card-item .threeBoxContent h5 {
    font-weight: 700;
    line-height: 1.15;
    margin-bottom: 12px;
}

.download-embed-card-item .threeBoxContent p {
    font-size: 1.6rem;
    line-height: 1.2;
}

/* Card button */
.download-embed-card-item .threeBoxDownloadBtn {
    padding: 0 20px 25px;
    margin-top: auto;
}

.download-embed-card-item .threeBoxDownloadBtn .button {
    margin-top: 25px;
    display: inline-block;
}

/* Color scheme - light backgrounds use dark text */
.download-embed-card-item * {
    color: var(--primary-color-01);
}

/* Dark backgrounds use white text */
.download-embed-card-item.background-darkblue .threeBoxContent h5,
.download-embed-card-item.background-darkblue .threeBoxContent p,
.download-embed-card-item.background-darkblue .threeBoxContent a:not(.button),
.download-embed-card-item.background-deepurple .threeBoxContent h5,
.download-embed-card-item.background-deepurple .threeBoxContent p,
.download-embed-card-item.background-deepurple .threeBoxContent a:not(.button),
.download-embed-card-item.background00 .threeBoxContent h5,
.download-embed-card-item.background00 .threeBoxContent p,
.download-embed-card-item.background00 .threeBoxContent a:not(.button) {
    color: var(--primary-color-02) !important;
}

/* Orange background - black text, white button */
.download-embed-card-item.background-orange .threeBoxContent h5,
.download-embed-card-item.background-orange .threeBoxContent p,
.download-embed-card-item.background-orange .threeBoxContent a:not(.button) {
    color: var(--primary-color-01) !important;
}

.download-embed-card-item.background-orange a.button {
    background-color: var(--primary-color-02);
    color: var(--primary-color-01);
}

.download-embed-card-item.background-orange a.button:hover {
    color: var(--secondary-color-02);
}

/* Responsive breakpoints */
@media (min-width: 768px) {
    .download-embed-card-item .threeBoxContent {
        padding: 25px;
    }
}

@media (min-width: 1024px) {
    .download-embed-card-item {
        width: calc(33.33% - 28px);
    }
}

@media (max-width: 1024px) {
    .download-embed-card-item {
        width: calc(50% - 28px);
    }
}

@media (max-width: 767px) {
    .download-embed-card-item {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .download-embed-cards-flex {
        margin-left: 0;
        margin-right: 0;
    }
}