/* Import fonts at the top */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400italic);

/* Remove Joomla Footer */
.t4-footer .mod-footer .footer2 {
    display: none;
}

/* Fine tune CSS for hero section */
.acm-hero.style-1 .acm-hero-item {
    background-size: auto !important;
    background-repeat: no-repeat;
    background-position: center;
    width: 100% !important;
    position: relative;
}

/* Ensure hero-content is centered */
.acm-hero.style-1 .has-bg .hero-content {
    min-height: 46rem; /* Desktop height */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100%;
    text-align: center !important;
    margin: 0 auto !important;
    position: relative;
}

/* Force hero-content-inner to center */
.acm-hero .hero-content-inner {
    width: 100% !important;
    max-width: 100%;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    margin: 0 auto !important;
}

/* Position acm-action to center and stay visible */
.acm-hero .acm-action {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100%;
    padding: 20px 0;
    text-align: center !important;
    margin: 0 auto !important;
    position: relative;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Ensure the button is centered and visible */
.acm-hero .btn.btn-success {
    margin: 0 auto !important;
    display: block !important;
    text-align: center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Override slideshow or module wrapper */
.t4-section-inner.container-fluid .acm-hero,
.t4-module .acm-hero,
.ja-slideshow .acm-hero {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .acm-hero.style-1 .acm-hero-item {
        height: 240px !important;
        background-size: contain !important;
        width: 100% !important;
    }

    .t4-section-inner.container-fluid {
        width: 100% !important;
        max-width: 100% !important;
    }

    .acm-hero.style-1 .has-bg .hero-content {
        min-height: 240px !important;
        padding: 10px;
        overflow: visible !important;
    }

    .acm-hero .acm-action {
        padding: 20px 0 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .acm-hero .btn.btn-success {
        font-size: 12px !important;
        padding: 4px 6px !important; /* Tighter padding from second block */
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        max-width: 90px !important; /* Your chosen cap */
        width: auto !important;
        margin: 0 auto !important;
        white-space: nowrap !important;
        overflow: hidden !important; /* Handle overflow */
        text-overflow: ellipsis !important; /* Add ellipsis if clipped */
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .acm-hero.style-1 .acm-hero-item {
        background-size: contain;
        background-repeat: no-repeat;
        height: 320px;
        width: 100% !important;
    }

    .acm-hero.style-1 .has-bg .hero-content {
        min-height: 320px !important;
    }
}

/* Article and layout styles */
.col-xl-6 {
    width: 100% !important;
}

/* Consolidated article styles */
.item-page.layout-default.no-sidebar .top-article-info {
    margin-left: auto;
    margin-right: auto;
    text-align: inherit !important;
    max-width: 100% !important;
}

.item-page.layout-default.no-sidebar .top-article-info .article-aside,
.item-page.layout-default.no-sidebar .top-article-info .article-info,
.item-page.layout-default.no-sidebar .top-article-info .bottom-meta {
    -webkit-box-pack: inherit !important;
    -ms-flex-pack: inherit !important;
    justify-content: inherit !important;
}

.item-page.layout-1 .top-article-info,
.view-article .item-page.layout-default.no-sidebar .top-article-info {
    text-align: inherit !important;
    max-width: 100% !important;
}

@media (min-width: 992px) {
    .item-page.layout-default.no-sidebar .bottom-article-info,
    .item-page.layout-default.no-sidebar .top-article-info,
    .item-page.layout-default.no-sidebar .full-image {
        max-width: 100%;
    }

    .blog .items-row .col-12.col-sm-6.col-md-6 {
        min-height: 410px;
    }
}

/* Blockquote styles */
.blockquote {
    padding: 60px 80px 40px;
    position: relative;
}

.blockquote p {
    font-family: "Utopia-italic";
    font-size: 35px;
    font-weight: 700;
    text-align: center;
}

.blockquote:before {
    position: absolute;
    font-family: "FontAwesome";
    top: 0;
    content: "\f10d";
    font-size: 200px;
    color: rgba(0, 0, 0, 0.1);
}

.blockquote::after {
    content: "";
    top: 20px;
    left: 50%;
    margin-left: -100px;
    position: absolute;
    border-bottom: 3px solid #bf0024;
    height: 3px;
    width: 200px;
}

.otro-blockquote {
    font-size: 1.4em;
    width: 60%;
    margin: 50px auto;
    font-family: "Open Sans";
    font-style: italic;
    color: #555555;
    padding: 1.2em 30px 1.2em 75px;
    border-left: 8px solid #6c8739;
    line-height: 1.6;
    position: relative;
    background: #EDEDED;
}

.otro-blockquote::before {
    font-family: Arial;
    content: "\201C";
    color: #6c8739;
    font-size: 4em;
    position: absolute;
    left: 10px;
    top: -10px;
}

.otro-blockquote::after {
    content: "";
}

.otro-blockquote span {
    display: block;
    color: #333333;
    font-style: normal;
    font-weight: bold;
    margin-top: 1em;
}