/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/
/*GENERAL*/
body{
	background: #F2F2F8 !important;
}

/* HOME PAGE */

/* Diapositivas inicio */
#SlideInicio {
    height: calc(92vh - 76px);
}

#SlideInicio .elementor-background-overlay {

    background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.95))
}

#SlideInicio .swiper-slide-inner {
    margin-bottom: 147px;
    margin-left: 100px;
    padding: 0px;
    text-decoration: none;
}

#SlideInicio div.elementor-swiper-button-next {

    right: 96px;
    bottom: 141px;
    top: inherit;
}

#SlideInicio div.elementor-swiper-button-prev {
    right: 152px;
    bottom: 141px;
    top: inherit;
    justify-content: flex-end;
    left: unset;

}

#SlideInicio .swiper-pagination {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    right: 102px;


    /* top: 50%; */
    /* transform: translateY(-50%); */
    height: auto;
    width: auto;
    align-items: end;
    bottom: 374px;
    gap: 7px;
    left: unset;
}

/* Para que el contenedor permita posicionar el ::after */
#SlideInicio .swiper-pagination-bullet {
    position: relative;
    border: 1px solid #fff;
    width: 14px;
    height: 14px;
}

/* Bullet activo: círculo interior blanco */
#SlideInicio .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
#SlideInicio .elementor-slide-description i{
    font-family: 'Font Awesome 6 Sharp';
    font-weight: 300;
    font-size: 18px;
    line-height: 62px;
    padding-left: 4px;
}


#pConocenos {
    margin-bottom: 0px;
}

#btnConocenos {
    width: auto;
    margin-right: 22.5px;
}

/* HEADER Y FOOTER */


/* Menu de cabecera */
.ast-builder-grid-row.ast-builder-grid-row-has-sides.ast-grid-center-col-layout {
    height: 76px !important;
}

#bloque2::before {
    content: "";
    display: block;
    height: 76px;
    margin-top: -76px;
    visibility: hidden;
}



#masthead {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 76px;
    font-family: 'articulat-cf', sans-serif !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

}

footer {
    font-family: 'articulat-cf' !important;
}

/* Carrusel de proyectos */
/* Asegurarse que el contenedor principal del portfolio sea en línea */
#portfolio-home .elementor-posts-container {
    display: flex;
    overflow-x: auto;
    flex-wrap: nowrap;
    scroll-behavior: smooth;
}

#portfolio-home .elementor-portfolio-item {
    flex: 0 0 33.33%;
    /* 3 items en línea */
    box-sizing: border-box;
    margin-top: 0 !important;
}

/* carrusel proyectos titulo */
#portfolio-home .elementor-portfolio-item__overlay {
    position: unset;
    opacity: 1;
    text-decoration: none;
    text-align: start;
    padding: 0;
}

#portfolio-home .elementor-post__thumbnail__link {

    text-decoration: none;
}

#portfolio-home .elementor-portfolio-item__title {
    margin: 0;
}

#portfolio-home .elementor-posts-container::-webkit-scrollbar {
    display: none;
}

#portfolio-home .elementor-posts-container {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

/* Barra desplazamiento */

.custom-scrollbar {
    margin-top: 101px;
    position: relative;
    height: 8px;
    background: rgba(81, 107, 125, 0.2);
    border-radius: 7px;
    width: 100%;
}

.custom-thumb {
    position: absolute;
    height: 8px;
    background-color: #516B7D;
    border-radius: 7px;
    cursor: grab;
    /* transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out, transform 0.2s ease-in-out; */
    transition: transform 0.1s ease-out;

}

/* Opcional: cambiar color al arrastrar o pasar por encima */
.custom-thumb:hover {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
}


/* FOOTER */

/* 
    texto footer dentro de astra, se modifica al editarlo 

    <div class="footer-line">
  <span class="footer-left">© ALVAMAR OBRAS Y REFORMAS 2025</span><br>
  <span class="footer-middle"><br>
    <a href="/privacidad">POLÍTICA DE PRIVACIDAD</a><br>
    <span class="dot-separator"></span><br>
    <a href="/terminos-y-condiciones">TÉRMINOS Y CONDICIONES</a><br>
    <span class="dot-separator"></span><br>
    <span>POLÍTICAS DE COOKIES</span><br>
  </span><br>
  <span class="footer-right">HECHO CON ❤️ POR SDI</span>
</div> 

*/

.widget_block .wp-block-list {
    font-weight: 300;
}

.wp-block-social-links svg path {
    fill: white;
}

#block-36>.wp-block-social-links {
    justify-content: end;
    gap: 10px;
    margin-right: 20px;
}

#block-36 .wp-social-link {
    background-color: transparent;

}

#block-18>p,
#block-15>p {
    margin-bottom: 0;
}

#block-18,
#block-15 {
    margin-bottom: 42px;
}

#block-17 {
    width: 255px;
}


.footer-line {
    display: flex;
    align-items: center;
    width: 100%;
    white-space: nowrap;
    font-size: 11px;
}

.footer-left {
    flex: 0 0 auto;
}

.footer-middle {
    display: inline-flex;
    align-items: center;
    margin-left: 97px;
    gap: 8px;
    /* espacio fijo entre el primero y este */
    flex: 0 0 auto;

}

.footer-middle a {
    color: white;
}

.footer-middle a:hover {
    color: #ffffffad;
}


.footer-right {
    margin-right: 20px;
    margin-left: auto;
    /* empuja este bloque al final del todo */
    flex: 0 0 auto;
}

.dot-separator {
    width: 2px;
    height: 2px;
    background-color: white;
    border-radius: 50%;

}




/* LISTADO DE SERVICIOS */

.elementor-icon-list-item {
    display: flex;
    align-items: center;

}

#ListServicios .elementor-icon-list-item {
    margin: 0px;
    padding-top: 14px;
    padding-bottom: 13px;
}

#SeccionServicios .elementor-widget {
    margin-block-end: 0 !important;
}

.elementor-icon-list-item:hover {
    background-color: #e2e5ec;
}

.elementor-icon-list-icon {
    order: 1;
    /* Mueve el icono al final */
    margin-left: auto;
    /* Separación entre texto e icono */
}

.elementor-icon-list-text {
    order: 0;
    /* Texto va antes del icono */
}



/* Proyectos PAGE */

#portfolio-proyectos .elementor-portfolio__filters {
    gap: 15px;
    justify-content: start;
}


#portfolio-proyectos .elementor-portfolio__filter {
    color: #111111;

    border: solid 1px black;
    border-radius: 26.5px;
    padding: 10px 45px;
}

#portfolio-proyectos .elementor-portfolio__filter.elementor-active {
    background-color: #000;
    color: #fff;

}

#portfolio-proyectos .elementor-portfolio-item__overlay {
    position: unset;
    opacity: 1;
    text-decoration: none;
    text-align: start;
    padding: 0;
}

#portfolio-proyectos .elementor-post__thumbnail__link {

    text-decoration: none;
}

#portfolio-proyectos .elementor-portfolio-item__title {
    margin: 0;
}

#portfolio-proyectos .elementor-portfolio-item__img img {
    height: 513px;
    /* altura máxima fija */
}


/* Proyecto individual PAGE */


#Proyecto-slide .swiper-pagination {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    right: 58px;


    top: 50%;
    transform: translateY(-50%);
    height: auto;
    width: auto;
    align-items: end;
    gap: 7px;
}

/* Para que el contenedor permita posicionar el ::after */
#Proyecto-slide .swiper-pagination-bullet {
    position: relative;
    border: 1px solid #fff;
    width: 14px;
    height: 14px;
}

/* Bullet activo: círculo interior blanco */
#Proyecto-slide .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}


#tipos_proyectos .elementor-post-info__terms-list-item {
    border-radius: 26.5px;
    padding: 10px 45px;
    margin-right: 10px;
    background-color: #1111111A;
}

#tipos_proyectos .elementor-icon-list-item:hover {
    background-color: transparent;
}

#texto_proyecto {
    display: block;
    margin-left: auto;
}

/* FAQ PAGE */

/* Cambiar color de fondo del botón según el boton activo */

#btnGenerales.active .elementor-button,
#btnTiempos.active .elementor-button,
#btnGestion.active .elementor-button,
#btnViviendas.active .elementor-button {
    background-color: #000;
    color: #fff;
}

#pPreguntas {
    max-width: 1017px;
}


.elementor-tab-title {
    position: relative;
}

.elementor-accordion-icon {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}



/* Responsive */

@media ((min-width: 768px) and (max-width: 1250px)) {



    html,
    body {
        overflow-x: hidden;
    }

    .ast-builder-menu-1 .menu-item>.menu-link {
        padding-right: 10px;
    }

    .site-title {
        font-size: 15px;
    }

    .site-header .site-description {
        display: none;
    }

    #SlideInicio .swiper-pagination {
        display: initial;
        position: absolute;
        right: 20px;
        bottom: 100px;
        gap: 7px;
        left: 0;
    }

    #SlideInicio div.elementor-swiper-button-next,
    #SlideInicio div.elementor-swiper-button-prev {
        display: none;
    }

    #SlideInicio .swiper-slide-inner {
        margin-bottom: 147px;
        margin-left: 30px;
        padding: 0px;
    }

    .ast-builder-grid-row-mobile-layout-default {
        height: 76px;
    }

    #SlideInicio {
        height: calc(100vh - 76px);
    }

    .elementor-element-24eeca4,
    #imgConocenos {
        display: none !important;
    }

    #SeccionServicios .elementor-col-66 {
        width: 100%;
    }

    #pConocenos {
        width: 100%;
    }

    #ast-mobile-header .ast-custom-button {
        margin-right: 11px;
    }

    #portfolio-home .elementor-portfolio-item {
        flex: 0 0 50%;
    }

    #portfolio-proyectos .elementor-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    #portfolio-proyectos .elementor-portfolio-item__img img {
        height: auto;
    }

    .footer-line {
        display: block;
    }

    .footer-middle {
        margin-left: 0px;
    }

    #block-36>.wp-block-social-links {
        justify-content: start;
    }

    #block-31>.wp-block-group {
        text-align: left;
    }

}

/* ==================== MÓVILES (hasta 767px) ==================== */
@media (max-width: 767px) {

    html,
    body {
        overflow-x: hidden;
    }


    .site-header .site-description {
        font-size: 10px;
    }

    #SlideInicio .swiper-pagination {
        display: initial;
        position: absolute;
        right: 10px;
        bottom: 100px;
        gap: 7px;
        left: 0;
    }

    #SlideInicio div.elementor-swiper-button-next,
    #SlideInicio div.elementor-swiper-button-prev {
        display: none;
    }

    #SlideInicio .swiper-slide-inner {
        margin-bottom: 147px;
        margin-left: 10px;
        padding: 0px;
    }

    .ast-builder-grid-row-mobile-layout-default {
        height: 76px;
    }

    #SlideInicio {
        height: calc(100vh - 76px);
    }

    .elementor-element-24eeca4,
    #imgConocenos {

        display: none !important;
    }

    #aConocenos {
        margin-top: 20px;
        margin-left: 30px;
    }

    #ast-mobile-header .ast-custom-button {
        margin-right: 11px;
    }

    #portfolio-home .elementor-portfolio-item {
        flex: 0 0 100%;
    }

    #portfolio-proyectos .elementor-grid {
        grid-template-columns: 1fr;
    }

    #portfolio-proyectos .elementor-portfolio-item__img img {
        height: auto;
    }

    #tipos_proyectos .elementor-post-info__terms-list-item {
        border-radius: 26.5px;
        padding: 10px 15px;
        margin-right: 10px;
        background-color: #1111111A;
        font-size: 10px;
    }

    .footer-line {
        display: block;

    }

    .footer-middle {
        display: block;
        margin-left: 8px;

    }

    .footer-right {
        margin-left: 8px;
    }

    #block-36>.wp-block-social-links {
        justify-content: start;
    }

}

/*CAMBIOS NUEVOS*/
/*MENU*/
@media(max-width:1024px){
    .menu-header .elementor-nav-menu--dropdown{
        position: absolute;
        right: 0;
        top: 44px;
        min-width: 250px;
        overflow: visible;
        margin-top: 0;
        z-index: 9;
    }
    .elementor-menu-toggle__icon--open{
        margin-bottom: -10px;
    }
}
/*GENERAL*/
.ast-plain-container.ast-no-sidebar #primary{
    margin-top: 0 !important;
}
/*WHATSAPP*/
@media(max-width:767px){ 
    .ht-ctc{
        padding-right: 0;
    }
    .ht-ctc .ctc-analytics {
        padding: 14px !important;
    }
    .ht-ctc .ctc-analytics svg{
        height: 25px !important;
        width: 25px !important;
    }
}
/*HOME*/
/*Banner home*/
.banner-principal-home .swiper-slide-inner::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.95) 8.94%, rgba(0, 0, 0, 0.1) 78.55%);
}
.banner-principal-home .swiper-slide-contents{
    z-index: 9;
    max-width: 1716px !important;
    margin: auto;
    margin-bottom: 0;
    width: 100%;
}
.banner-principal-home .swiper-slide-contents .elementor-slide-heading{
    max-width: 835px;
    margin-left: 0;
    margin-right: auto;
}
.banner-principal-home .elementor-button{
    padding: 0;
	text-decoration: underline !important;
}
.banner-principal-home .elementor-button i{
    padding-left: 6px;
}

.banner-principal-home .elementor-swiper-button{
    width: 100%;
    max-width: 1716px;
    bottom: 100px;
    top: auto !important;
    left: 50%  !important;
    transform: translate(-50%, -50%) !important;
    display: flex !important;
    justify-content: flex-end;
    right: auto !important;
    pointer-events: none;
}
.banner-principal-home .elementor-swiper-button-prev{
    padding-right: 65px;
}
.banner-principal-home .elementor-swiper-button-next{
    padding-right: 15px;
}
.banner-principal-home .elementor-swiper-button-prev i,
.banner-principal-home .elementor-swiper-button-next i{
    pointer-events: all;
    border: 1px solid #FFFFFF;
    height: 38px;
    width: 38px;
    font-family: 'Font Awesome 6 Sharp';
    font-weight: 300;
    font-size: 18px;
    border-radius: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.banner-principal-home .swiper-pagination{
    right: auto !important;
    width: 100%;
    max-width: 1716px;
    left: 50%  !important;
    transform: translate(-50%, -50%) !important;
    bottom: 50% !important;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
    gap: 6px;
    padding-right: 15px;
}
.banner-principal-home .swiper-pagination .swiper-pagination-bullet{
    border: 1px solid #FFFFFF;
    pointer-events: all;
}
@media(max-width:767px){    
    .banner-principal-home .swiper-pagination .swiper-pagination-bullet{
        display: none;
    }
    .banner-principal-home .elementor-swiper-button{
        bottom: 64px;
    }
}

/*Proyectos*/
.carrusel-home-proyectos .swiper{
    overflow: visible;
}
.carrusel-home-proyectos .swiper-scrollbar{
    bottom: -100px !important;
    left: 0 !important;
    width: 100% !important;
    background-color: transparent !important;
    border-bottom: 2px solid #516B7DB2 !important;
    height: 7px !important;
    border-radius: 0 !important;
}
.carrusel-home-proyectos .swiper-scrollbar-drag{
    background-color: #516B7D;
    border-radius: 0;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.carrusel-home-proyectos .elementor-post .elementor-post__thumbnail__link .elementor-post__thumbnail{
    padding: 0 !important;
}
.carrusel-home-proyectos .elementor-post .elementor-post__thumbnail__link img{
    width: 100% !important;
    height: 450px !important;
    object-fit: cover !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    transform: none;
}
.carrusel-home-proyectos .elementor-post .elementor-post__title a{
	text-decoration:none !important;
}
.carrusel-home-proyectos .elementor-post .elementor-post__title:hover a{
	text-decoration:underline !important;
}
@media(max-width:1024px){
    .carrusel-home-proyectos .swiper-scrollbar{
        bottom: -70px !important;
    }
    .carrusel-home-proyectos .elementor-post .elementor-post__thumbnail__link img{
        height: 400px !important;
    }
}
@media(max-width:767px){
    .carrusel-home-proyectos .swiper-scrollbar{
        bottom: -30px !important;
    }
}
/*PROYECTOS*/
.listado-tipos-proyectos{
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
}
.listado-tipos-proyectos li a{
    font-family: 'Articulat-CF';
    font-weight: 500;
    font-size: 21px;
    text-align: center;
    color: #111111;
    border: 1px solid #111111;
    padding: 7px 45px;
    border-radius: 40px;
    display: block;
}
.listado-tipos-proyectos li a:hover,
.listado-tipos-proyectos li a.active{
    background-color: #111111;
    color: #fff;
}
@media(max-width:1024px){
    .listado-tipos-proyectos{
        gap: 10px;
    }
    .listado-tipos-proyectos li a{
        font-size: 18px;
        padding: 10px 30px;
    }
}
@media(max-width:600px){
    .listado-tipos-proyectos li a{
        font-size: 16px;
        padding: 8px 22px;
    }
}
/*SINGLE PROYECTOS*/
.next-custom-post-button{
    font-family: 'Articulat CF';
    font-weight: 500;
    font-size: 21px;
    line-height: 21px;
    text-align: center;
    color: #ffffff;
    background-color: #111111;
    padding: 18px 45px;
    border-radius: 60px;
    display: flex;
    gap: 14px;
    width: fit-content;
}
@media(max-width:767px){
    .next-custom-post-button{
        width: 100%;
        justify-content: center;
        font-size: 16px;
        line-height: 16px;
        padding: 15px 45px;
    }
}
/*FAQS*/
.tabs-faqs .elementor-tab-title.elementor-active .elementor-accordion-title{
	font-weight:600;
}
.tabs-faqs .elementor-accordion-icon i{
	font-size: 30px;
}
@media(max-width:992px){
	.tabs-faqs .elementor-accordion-icon i{
		font-size: 22px;
	}
}