/* Password form styling */
.post-password-form input[type='submit'] {
    background: #00a9be;
    color:  white;
    border: none;
    padding: 1em 2em;
    border-radius: 7px;
    font-size: 1.5rem;
    font-weight: 300;
    cursor: pointer;
}

/* ============================================
   RESPONSIVE FIXES - Fondacio Migration
   ============================================ */

/* --- Testimonies Fix: Prevent full-height stretching --- */
.testimonies-block .slick-track {
    align-items: flex-start !important;
}

.testimonies-block .slick-slide > div {
    height: auto !important;
}

.testimonies-block-item {
    height: auto !important;
    min-height: auto !important;
}

/* Testimonies mobile padding */
@media all and (max-width: 576px) {
    .testimonies-block-item {
        padding: 1.5em !important;
    }
    
    .testimonies-block-item:after {
        right: 1.5em !important;
        top: 1.5em !important;
    }
    
    .testimonies-block .slick-slide {
        margin: 0 8px !important;
    }
    
    .testimonies-block .slick-list {
        margin: 0 -8px !important;
    }
}

/* --- Footer Responsive Fixes --- */
@media all and (max-width: 576px) {
    .footer .footer-wrapper {
        padding: 2.5em 1.5em !important;
    }
    
    .footer-newsletter .title {
        font-size: 2.6rem !important;
        line-height: 30px !important;
    }
    
    .footer-newsletter > .content {
        margin: 1.2em 0 !important;
    }
    
    .footer-newsletter input[type="email"] {
        padding: 1em 15px !important;
    }
    
    .footer-right .row {
        margin-bottom: 2em !important;
    }
    
    .footer-links {
        margin-top: 1.5em !important;
        margin-bottom: 2em !important;
    }
    
    .footer-contact {
        margin-bottom: 2em !important;
    }
    
    .footer-socials p {
        font-size: 2rem !important;
    }
    
    .powered-onlyweb {
        margin: 1.5em 0 !important;
    }
}

@media all and (min-width: 577px) and (max-width: 768px) {
    .footer .footer-wrapper {
        padding: 3em 2em !important;
    }
    
    .footer-newsletter .title {
        font-size: 3rem !important;
    }
}

/* --- External links responsive --- */
@media all and (max-width: 576px) {
    .external-links {
        padding-bottom: 3em !important;
        padding-top: 3em !important;
    }
}

/* --- Images Responsive (ensure all images scale) --- */
.dynamic-blocs img,
.posts-list img,
.activities-block img {
    max-width: 100%;
    height: auto;
}

/* --- Header mobile safe area (notch support) --- */
@supports (padding-top: env(safe-area-inset-top)) {
    .header {
        padding-top: env(safe-area-inset-top);
    }
    
    body.open-mobile-menu .header {
        padding-bottom: env(safe-area-inset-bottom);
    }
}

/* --- Improve touch targets on mobile --- */
@media all and (max-width: 768px) {
    .nav-primary .nav .menu-item > a {
        min-height: 44px;
        display: flex;
        align-items: center;
    }
    
    .btn-menu {
        min-width: 44px;
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

/* --- Testimonies Slick centerMode fix for mobile --- */
@media all and (max-width: 850px) {
    .testimonies-block.slick-initialized .slick-slide {
        width: 100% !important;
        margin: 0 5px !important;
    }
    
    .testimonies-block.slick-initialized .slick-list {
        margin: 0 !important;
        padding: 0 20px !important;
    }
    
    .testimonies-block.slick-initialized .slick-track {
        display: flex !important;
        align-items: flex-start !important;
    }
    
    .testimonies-block-item {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* Ensure text doesn't break awkwardly */
.testimonies-block-item .description {
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* --- Fix Slick testimonies height issue --- */
.testimonies-block.slick-initialized {
    margin-bottom: 50px !important;
}

.testimonies-block .slick-track {
    display: flex !important;
    align-items: flex-start !important;
}

.testimonies-block .slick-slide {
    height: auto !important;
    float: none !important;
}

.testimonies-block .slick-slide > div {
    height: auto !important;
}

/* Ensure proper height on mobile */
@media all and (max-width: 850px) {
    .testimonies-block .slick-track {
        min-height: auto !important;
    }
    
    .testimonies-block .slick-list {
        height: auto !important;
    }
}

/* --- Fix: Event cards location pin icons too large --- */
.localisation img,
.events-list-item .localisation img,
.event-card .localisation img {
    width: 15px !important;
    height: 20px !important;
    max-width: 15px !important;
    max-height: 20px !important;
}
