/* ===================================================
   EDACE FOOTER EXACT REPLICA STYLES
   =================================================== */

/* 1. Main Footer Container */
footer.sep_angled_positive_top,
footer.edace-footer-replica,
footer.separator_top {
    background-color: #004993 !important;
    color: #ffffff !important;
    position: relative !important;
    z-index: 10 !important;
    padding-top: 55px !important;
    padding-bottom: 45px !important;
    margin-top: -24px !important;
    clip-path: polygon(0 24px, 50% 0, 100% 24px, 100% 100%, 0 100%) !important;
    -webkit-clip-path: polygon(0 24px, 50% 0, 100% 24px, 100% 100%, 0 100%) !important;
}

/* Remove legacy border triangles */
footer.sep_angled_positive_top::before,
footer.sep_angled_positive_top::after,
footer.separator_top::before,
footer.separator_top::after,
.separator_top::before,
.separator_top::after {
    display: none !important;
}

/* Container & Row Flex */
footer .container {
    max-width: 1180px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
}

footer .container > .row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

/* Column 1: Logo */
footer .row > .col-sm-4:nth-child(1),
footer .footer-col-logo {
    flex: 0 0 28% !important;
    max-width: 28% !important;
    width: 28% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px 15px 0 0 !important;
    float: none !important;
}

footer .footer-logo-img,
footer .footer-col-logo img,
footer .pl_about_us_widget img {
    max-width: 255px !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
}

/* Column 2: About & Contact */
footer .row > .col-sm-4:nth-child(2),
footer .footer-col-about {
    flex: 0 0 38% !important;
    max-width: 38% !important;
    width: 38% !important;
    padding: 0 15px !important;
    float: none !important;
}

footer .footer-bio-text,
footer .footer-col-about .pl_about_us_widget > p:first-of-type,
footer .pl_about_us_widget > p:first-child {
    color: #ffffff !important;
    font-family: Comfortaa, Helvetica Neue, Helvetica, Arial, sans-serif !important;
    font-size: 14.5px !important;
    line-height: 1.5 !important;
    margin-bottom: 22px !important;
    text-align: left !important;
}

/* Contact rows */
footer .contact_detail {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    margin-bottom: 12px !important;
    gap: 14px !important;
}

footer .contact_detail a.contact-icon-box,
footer .contact_detail > a:first-child,
footer .contact_detail > i:first-child {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    background-color: #023366 !important;
    border-radius: 2px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    flex-shrink: 0 !important;
    margin-right: 0 !important;
}

footer .contact_detail i {
    color: #ffffff !important;
    font-size: 15px !important;
}

footer .contact_detail span,
footer .contact_detail span a {
    color: #ffffff !important;
    font-family: Comfortaa, Helvetica Neue, Helvetica, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
}

footer .contact_detail span a:hover {
    text-decoration: underline !important;
}

/* Social icons */
footer .footer-social-widget,
footer aside#block-13 {
    margin-top: 20px !important;
    margin-bottom: 0 !important;
}

footer .wp-block-social-links {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

footer .wp-social-link svg {
    fill: #85c7f5 !important;
    width: 22px !important;
    height: 22px !important;
    transition: transform 0.2s ease, fill 0.2s ease !important;
}

footer .wp-social-link:hover svg {
    fill: #ffffff !important;
    transform: scale(1.1) !important;
}

/* Column 3: Services & Consultation */
footer .row > .col-sm-4:nth-child(3),
footer .footer-col-services {
    flex: 0 0 28% !important;
    max-width: 28% !important;
    width: 28% !important;
    padding: 0 0 0 15px !important;
    float: none !important;
}

footer .footer-widget-title,
footer .plethora-multibox-widget h4,
footer .widget_nav_menu h4 {
    display: flex !important;
    align-items: center !important;
    font-family: 'bebas-bold', Helvetica Neue, Helvetica, Arial, sans-serif !important;
    font-size: 20px !important;
    letter-spacing: 1px !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    margin: 0 0 14px 0 !important;
    white-space: nowrap !important;
}

footer .footer-widget-title::after,
footer .plethora-multibox-widget h4::after,
footer .widget_nav_menu h4::after {
    content: '' !important;
    flex: 1 1 auto !important;
    height: 1px !important;
    background-color: rgba(255, 255, 255, 0.6) !important;
    margin-left: 14px !important;
}

/* Services list */
footer .wp-block-list,
footer aside#block-21 ul {
    list-style-type: disc !important;
    padding-left: 18px !important;
    margin: 0 0 20px 0 !important;
}

footer .wp-block-list li,
footer aside#block-21 ul li {
    color: #ffffff !important;
    font-family: Comfortaa, Helvetica Neue, Helvetica, Arial, sans-serif !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
    margin-bottom: 2px !important;
}

footer .wp-block-list li::marker,
footer aside#block-21 ul li::marker {
    color: #ffffff !important;
}

/* Pide cita CTA link */
footer .menu-top-bar-container ul,
footer #menu-top-bar-1 {
    list-style: none !important;
    padding: 0 !important;
    margin: 8px 0 0 0 !important;
}

footer #menu-top-bar-1 li a,
footer .footer-pide-cita a {
    color: #ffffff !important;
    font-family: 'bebas-bold', Helvetica Neue, Helvetica, Arial, sans-serif !important;
    font-size: 15px !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

footer #menu-top-bar-1 li a:hover,
footer .footer-pide-cita a:hover {
    text-decoration: underline !important;
}

/* Subfooter / Copyright Bar */
.copyright.dark_section {
    background-color: #2c4167 !important;
    padding: 16px 0 !important;
    position: relative !important;
    z-index: 10 !important;
    border-top: none !important;
}

.copyright.dark_section .container {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
}

.copyright.dark_section .row,
.footer-copyright-row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
}

.copyright.dark_section .copyright-text-col,
.copyright.dark_section .col-sm-6:first-child,
.copyright.dark_section .col-sm-8 {
    color: #ffffff !important;
    font-family: Comfortaa, Helvetica Neue, Helvetica, Arial, sans-serif !important;
    font-size: 13px !important;
    padding: 0 !important;
}

.copyright.dark_section a {
    color: #38bdf8 !important;
    text-decoration: none !important;
}

.copyright.dark_section a:hover {
    text-decoration: underline !important;
}

#return-to-top {
    position: fixed !important;
    bottom: 25px !important;
    right: 25px !important;
    background: #0d1e32 !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    text-decoration: none !important;
    z-index: 9999 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.3) !important;
}
