/* =====================================
   Call to Action Component Styling
   ===================================== */

/* Remove border radius from card image elements (top corners) */
.call-to-action .card-img,
.call-to-action .card-img-top {
    border-top-left-radius: 0;
    border-top-right-radius: 0; /* Ensures no rounding on top corners */
}

/* Remove border radius from card image elements (bottom corners) */
.call-to-action .card-img,
.call-to-action .card-img-bottom {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0; /* Ensures no rounding on bottom corners */
}

/* Removes borders for light borders on call-to-action cards */
.call-to-action .border-light {
    border-color: transparent !important; /* Hide border */
}

/* Center card links inside flex container */
.call-to-action .card-link.d-flex.justify-content-center {
    text-align: center !important; /* Centers content inside the card link */
}

/* Adjust margin below the card header */
.call-to-action .card-header {
    margin-bottom: .5rem; /* Adds spacing below card header */
}

/* Adds margin to the top of paragraphs in the card */
.call-to-action p {
    margin-top: 1rem; /* Adds top margin for paragraphs */
}

/* Styling for the main title inside the call-to-action */
.call-to-action .display-4.card-text.lead.title {
    font-family: var(--font-roboto-condensed) sans-serif; /* Font style for the title */
    font-size: 2rem !important; /* Large font size */
    font-weight: var(--font-weight-bold) !important; /* Bold text */
    line-height: 1.1 !important; /* Tight line height for readability */
    margin: .5rem 0 0 !important; /* Margin to create space above */
}

/* Additional styling for the display-4 title */
h3.display-4.card-text.lead.title.cu-text-black.remove-padding {
    padding: 0 1rem !important; /* Removes padding and adds custom horizontal padding */
}

/* Span inside paragraphs with special font styles */
.call-to-action.card p span {
    font-family: var(--font-roboto) sans-serif; /* Uses a different font family for the span */
    font-size: 1.85rem !important; /* Slightly smaller font size for the span */
    font-weight: var(--font-weight-xlight) !important; /* Lighter font weight */
    margin: 0 !important; /* Removes any margin */
}

/* Margin adjustment for FontAwesome icons */
.call-to-action .fa-solid {
    margin-bottom: 1rem !important; /* Adds space below icons */
}

/* Spacing for call-to-action blocks */
.block .call-to-action {
    margin: 0 15px; /* Adds margin around the block */
}

/* Add bottom padding to call-to-action block */
.margin_bottom .call-to-action {
    padding-bottom: 3rem !important; /* Adds padding to the bottom */
}

/* Add top padding to call-to-action block */
.call-to-action .margin_top {
    padding-top: 3rem !important; /* Adds padding to the top */
}

/* Add both top and bottom padding to call-to-action block */
.call-to-action .margin_bottom {
    padding-bottom: 3rem !important; /* Adds padding to the bottom */
}

/* Specific margin styling for call-to-action block text */
.call-to-action.card p span {
    font-size: 1.8rem !important; /* Sets font size */
    margin-left: 1px !important; /* Adjusts left margin */
}

/* Title span adjustments */
.call-to-action .title span {
    display: block; /* Forces the span to be a block element */
    margin-top: 1px; /* Adjusts the top margin */
}

/* Padding adjustments for additional padding classes */
.call-to-action.card .add-padding {
    padding: 0 .75rem !important; /* Adds padding to the sides */
}

/* Removes margin from icons within the flag */
.call-to-action .flag .fa-solid {
    margin-bottom: 0 !important; /* Removes bottom margin for icons */
}

/* Adds margin to the top and bottom of the block */
.call-to-action .margin-top-and-bottom {
    margin: 3rem 0; /* Adds equal margin to top and bottom */
}

/* Adds specific bottom margin */
.call-to-action .margin-bottom {
    margin: 0 0 3rem 0; /* Adds margin to the bottom */
}

/* Adds specific top margin */
.call-to-action .margin-top {
    margin: 3rem 0 0 0; /* Adds margin to the top */
}

/* Removes padding from specific title classes with different text colors */
.display-4.card-text.lead.title .cu-text-black.remove-padding,
.display-4.card-text.lead.title .cu-text-gold.remove-padding,
.display-4.card-text.lead.title .cu-text-white.remove-padding {
    padding: 0 15px !important; /* Padding for color-based title classes */
}

/* Spacing utility classes for call-to-action */
.cta-margin_top {
    padding: 20px 0 0; /* Adds top margin */
}

.cta-margin_bottom {
    padding: 0 0 20px; /* Adds bottom margin */
}

.cta-margin_top_and_bottom {
    padding: 15px 0; /* Adds top and bottom padding */
}

/* =====================================
   Link Styling within Call to Action
   ===================================== */

/* Remove underline from all links within the call-to-action block */
.block-content-call_to_action a,
.block-content-call_to_action .card-body a,
.block-content-call_to_action a h3.display-4,
.block-content-call_to_action a .display-4,
.block-content-call_to_action body,
.block-content-call_to_action p,
.block-content-call_to_action li,
a.cta-link {
    text-decoration: none !important; /* Ensures links do not have underlines */
}

/* Hide only the button text */
.nobtn-hide_btn,
.btn-hide_btn,
.outline-btn-hide_btn {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* If the card-footer has a hidden button, remove mb-5 */
.card-footer:has(.nobtn-hide_btn),
.card-footer:has(.btn-hide_btn),
.card-footer:has(.outline-btn-hide_btn){
    margin-bottom: 0 !important;
    display: none !important;
}

.call-to-action.card .p {
    line-height: 1.3 !important;
}

.block-inline-blockcall-to-action .card-footer {
    margin-bottom: 0 !important;
}

.layout__region:has(> .block.block-layout-builder) {
    padding: 0 0 25px !important;
}

.card-body.d-flex.flex-column.card-text.lead {
    padding-bottom: 17px;
}

/* =====================================
   Responsive Adjustments
   ===================================== */

/* Media query for screens below 991px */
@media (max-width: 991px) {
    .block .call-to-action {
        margin: 0 15px !important; /* Resets margin for smaller screens */
    }
}


