.elementor-77 .elementor-element.elementor-element-4f0793e{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-77 .elementor-element.elementor-element-4f0793e:not(.elementor-motion-effects-element-type-background), .elementor-77 .elementor-element.elementor-element-4f0793e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-77 .elementor-element.elementor-element-4f0793e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-090f732{--spacer-size:50px;width:var( --container-widget-width, 7.073% );max-width:7.073%;--container-widget-width:7.073%;--container-widget-flex-grow:0;}.elementor-77 .elementor-element.elementor-element-090f732.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-7b40596{--display:flex;}.elementor-77 .elementor-element.elementor-element-7b40596.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-21ec69a{--display:flex;}.elementor-77 .elementor-element.elementor-element-21ec69a.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-04b958e > .elementor-widget-container{margin:0px 0px -32px 0px;}.elementor-77 .elementor-element.elementor-element-04b958e{font-family:"Oswald", Sans-serif;font-size:19px;font-weight:400;}.elementor-77 .elementor-element.elementor-element-b7c0394 > .elementor-widget-container{margin:-19px 0px 0px 0px;}.elementor-77 .elementor-element.elementor-element-b7c0394{font-family:"Oswald", Sans-serif;font-size:19px;font-weight:400;}.elementor-77 .elementor-element.elementor-element-69913b0{width:var( --container-widget-width, 67.029% );max-width:67.029%;--container-widget-width:67.029%;--container-widget-flex-grow:0;}.elementor-77 .elementor-element.elementor-element-69913b0.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-69913b0 img{max-width:75%;}.elementor-77 .elementor-element.elementor-element-8c15fc4{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-77 .elementor-element.elementor-element-8c15fc4.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-dc380b8 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-77 .elementor-element.elementor-element-dc380b8{text-align:center;color:#000000;}.elementor-77 .elementor-element.elementor-element-dc380b8 p{margin-bottom:0px;}.elementor-77 .elementor-element.elementor-element-b12af11 .elementor-button{background-color:#61CE7000;fill:#FFFFFF;color:#FFFFFF;}.elementor-77 .elementor-element.elementor-element-b12af11 .elementor-button:hover, .elementor-77 .elementor-element.elementor-element-b12af11 .elementor-button:focus{color:#3498DB;}.elementor-77 .elementor-element.elementor-element-b12af11 .elementor-button:hover svg, .elementor-77 .elementor-element.elementor-element-b12af11 .elementor-button:focus svg{fill:#3498DB;}.elementor-77 .elementor-element.elementor-element-1991652 .elementor-button{background-color:#61CE7000;fill:#FFFFFF;color:#FFFFFF;}.elementor-77 .elementor-element.elementor-element-1991652 .elementor-button:hover, .elementor-77 .elementor-element.elementor-element-1991652 .elementor-button:focus{color:#3498DB;}.elementor-77 .elementor-element.elementor-element-1991652 .elementor-button:hover svg, .elementor-77 .elementor-element.elementor-element-1991652 .elementor-button:focus svg{fill:#3498DB;}.elementor-77 .elementor-element.elementor-element-7461a71 .elementor-button{background-color:#61CE7000;fill:#FFFFFF;color:#FFFFFF;}.elementor-77 .elementor-element.elementor-element-7461a71 .elementor-button:hover, .elementor-77 .elementor-element.elementor-element-7461a71 .elementor-button:focus{color:#3498DB;}.elementor-77 .elementor-element.elementor-element-7461a71 .elementor-button:hover svg, .elementor-77 .elementor-element.elementor-element-7461a71 .elementor-button:focus svg{fill:#3498DB;}.elementor-77 .elementor-element.elementor-element-5924dfe{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-77 .elementor-element.elementor-element-5924dfe.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-77 .elementor-element.elementor-element-cc6ada5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;border-style:none;}.elementor-77 .elementor-element.elementor-element-cc6ada5{text-align:center;color:#000000;}.elementor-77 .elementor-element.elementor-element-cbe038b .elementor-button{background-color:#61CE7000;fill:#FFFFFF;color:#FFFFFF;}.elementor-77 .elementor-element.elementor-element-cbe038b .elementor-button:hover, .elementor-77 .elementor-element.elementor-element-cbe038b .elementor-button:focus{color:#3498DB;}.elementor-77 .elementor-element.elementor-element-cbe038b .elementor-button:hover svg, .elementor-77 .elementor-element.elementor-element-cbe038b .elementor-button:focus svg{fill:#3498DB;}.elementor-77 .elementor-element.elementor-element-9a7c833 .elementor-button{background-color:#61CE7000;fill:#FFFFFF;color:#FFFFFF;}.elementor-77 .elementor-element.elementor-element-9a7c833 .elementor-button:hover, .elementor-77 .elementor-element.elementor-element-9a7c833 .elementor-button:focus{color:#3498DB;}.elementor-77 .elementor-element.elementor-element-9a7c833 .elementor-button:hover svg, .elementor-77 .elementor-element.elementor-element-9a7c833 .elementor-button:focus svg{fill:#3498DB;}.elementor-77 .elementor-element.elementor-element-f6f7139 .elementor-button{background-color:#61CE7000;fill:#FFFFFF;color:#FFFFFF;}.elementor-77 .elementor-element.elementor-element-f6f7139 .elementor-button:hover, .elementor-77 .elementor-element.elementor-element-f6f7139 .elementor-button:focus{color:#3498DB;}.elementor-77 .elementor-element.elementor-element-f6f7139 .elementor-button:hover svg, .elementor-77 .elementor-element.elementor-element-f6f7139 .elementor-button:focus svg{fill:#3498DB;}.elementor-77 .elementor-element.elementor-element-ca4a5ec{--spacer-size:50px;width:var( --container-widget-width, 4.898% );max-width:4.898%;--container-widget-width:4.898%;--container-widget-flex-grow:0;}.elementor-77 .elementor-element.elementor-element-ca4a5ec.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-77 .elementor-element.elementor-element-4f0793e{--width:119.012%;}.elementor-77 .elementor-element.elementor-element-7b40596{--width:36.295%;}.elementor-77 .elementor-element.elementor-element-21ec69a{--width:87.424%;}.elementor-77 .elementor-element.elementor-element-8c15fc4{--width:22.342%;}.elementor-77 .elementor-element.elementor-element-5924dfe{--width:22.213%;}}/* Start custom CSS for text-editor, class: .elementor-element-dc380b8 */.footer {
    border-bottom: solid;
    border-color: #454545
;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 9rem;
    height: 2rem;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-cc6ada5 */.footer {
    border-bottom: solid;
    border-color: #3498db;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 9rem;
    height: 2rem;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4f0793e *//* ---------- Animación de entrada para el footer ---------- */
.elementor.elementor-77.elementor-location-footer {
    animation: footerFadeIn 1s ease;
    opacity: 1;
}
@keyframes footerFadeIn {
    from { opacity: 0; transform: translateY(40px);}
    to   { opacity: 1; transform: translateY(0);}
}

/* ---------- Estilo general ---------- */
.elementor.elementor-77.elementor-location-footer {
    background: #111 !important;
    padding: 42px 0 28px 0 !important;
    color: #fff !important;
    border-top: 4px solid #44c5fa33;
}

/* ---------- Títulos animados ---------- */
.elementor.elementor-77.elementor-location-footer h4,
.elementor.elementor-77.elementor-location-footer .elementor-heading-title {
    color: #44c5fa !important;
    font-size: 1.13em;
    font-weight: 700;
    letter-spacing: 0.03em;
    margin-bottom: 12px;
    position: relative;
    padding-bottom: 6px;
    border: none !important;
    transition: color 0.3s;
}

.elementor.elementor-77.elementor-location-footer h4::after,
.elementor.elementor-77.elementor-location-footer .elementor-heading-title::after {
    content: "";
    display: block;
    width: 44px;
    height: 3px;
    background: linear-gradient(90deg,#44c5fa 80%,#fff0 100%);
    border-radius: 2px;
    margin-top: 3px;
    transition: width 0.3s cubic-bezier(.77,0,.175,1);
}

.elementor.elementor-77.elementor-location-footer h4:hover::after,
.elementor.elementor-77.elementor-location-footer .elementor-heading-title:hover::after {
    width: 70px;
}

/* ---------- Enlaces animados ---------- */
.elementor.elementor-77.elementor-location-footer a {
    color: #eee !important;
    text-decoration: none !important;
    transition: color 0.22s, padding-left 0.22s, text-shadow 0.2s;
    font-weight: 500;
    position: relative;
    left: 0;
}
.elementor.elementor-77.elementor-location-footer a:hover {
    color: #44c5fa !important;
    text-decoration: underline;
    padding-left: 14px;
    text-shadow: 0 2px 8px #44c5fa22;
}

/* ---------- Logo ---------- */
.elementor.elementor-77.elementor-location-footer img {
    max-width: 190px;
    margin: 0 auto 16px auto;
    display: block;
    filter: drop-shadow(0 4px 18px #44c5fa33);
    transition: filter 0.3s;
}
.elementor.elementor-77.elementor-location-footer img:hover {
    filter: drop-shadow(0 8px 32px #44c5fa77);
}

/* ---------- Texto "Acerca de" ---------- */
.elementor.elementor-77.elementor-location-footer .elementor-widget-text-editor {
    color: #b3c3c6;
    font-size: 1em;
    margin-bottom: 16px;
    font-weight: 400;
}

/* ---------- Línea divisoria suave ---------- */
.elementor.elementor-77.elementor-location-footer hr {
    border: none;
    border-top: 1.5px solid #44c5fa44;
    margin: 24px 0;
    animation: growLine 1.1s cubic-bezier(.68,-0.55,.27,1.55);
}
@keyframes growLine {
    from { width: 0; }
    to { width: 100%; }
}

/* ---------- Redes sociales: bounce en hover ---------- */
.elementor.elementor-77.elementor-location-footer .elementor-icon-list-items {
    display: flex;
    gap: 22px;
    margin-top: 10px;
    justify-content: left;
}

.elementor.elementor-77.elementor-location-footer .elementor-icon-list-icon i,
.elementor.elementor-77.elementor-location-footer .elementor-icon-list-icon svg {
    color: #44c5fa !important;
    font-size: 1.5em;
    transition: color 0.22s, transform 0.22s;
}

.elementor.elementor-77.elementor-location-footer .elementor-icon-list-item:hover .elementor-icon-list-icon i,
.elementor.elementor-77.elementor-location-footer .elementor-icon-list-item:hover .elementor-icon-list-icon svg {
    color: #fff !important;
    animation: bounceIcon 0.44s cubic-bezier(.41,.8,.47,1.53);
}

@keyframes bounceIcon {
    0%   { transform: scale(1) translateY(0);}
    40%  { transform: scale(1.18) translateY(-7px);}
    70%  { transform: scale(0.92) translateY(1px);}
    100% { transform: scale(1) translateY(0);}
}

/* ---------- Adaptación responsive ---------- */
@media (max-width: 700px) {
    .elementor.elementor-77.elementor-location-footer {
        padding: 30px 0 18px 0 !important;
        text-align: center;
    }
    .elementor.elementor-77.elementor-location-footer img {
        max-width: 120px;
    }
    .elementor.elementor-77.elementor-location-footer .elementor-icon-list-items {
        justify-content: center;
    }
}/* End custom CSS */