/*
 Theme Name:   Avi Child
 Description:  Avi Child Theme
 Author:       Avi Arquitecture
 Author URI:   https://aviarquitecte.cat/
 Template:     avi
 Version:      6.0.0
 Requires at least: 5.0
 Tested up to: 6.6
 Requires PHP: 7.4
 License: MIT License
 License URI: https://github.com/bootscore/bootscore-child/blob/main/LICENSE
 Text Domain:  bootscore
*/

/* 
All style editing is done via /assets/scss/_bootscore_custom.scss
*/

:root{
    --container: 540px;
    --blue: #33499c;
    --purple: #661a6b;
    --purple-light: #508876;
    --gray1: #f0edec;
    --gray2: #eff5f3;
    --black: #000;
    --red: #b22545;
}


@font-face {
    font-family: rep;
    font-weight: 100;
    src: url(assets/fonts/replica-light.ttf);
}

@font-face {
    font-family: rep;
    font-weight: 500;
    src: url(assets/fonts/replica-regular.ttf);
}


body{
    font-family: rep, sans-serif;
    font-weight: 100;
    color: var(--black)
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6{
    font-weight: 500;
}

#bootscore-navbar li a{
    font-weight: lighter;
    color: var(--blue);
    --bs-navbar-nav-link-padding-x: 1.5rem;
    font-size: 18px;
    transition: all .15s linear
}


#bootscore-navbar li.current-page-ancestor a,
#bootscore-navbar li.current-menu-item a{
    color: var(--purple)
}

#bootscore-navbar li a:hover{
    color: var(--purple);
}





.custom-logo{
    width: 100px
}


.wp-block-social-links{
    margin-bottom: 0
}


input[type=checkbox], input[type=radio] {
    position: relative;
    border: 2px solid #000;
    border-radius: 2px;
    background: none;
    cursor: pointer;
    line-height: 0;
    margin: 0 .4em 0 0;
    outline: 0;
    padding: 0 !important;
    vertical-align: text-top;
    height: 20px;
    width: 20px;
    -webkit-appearance: none;
    opacity: .5;
    border-radius: 10px
}

input[type=radio]{
    border-radius: 0;
    border: 1px solid #000;
    height: 16px;
    width: 16px;
}

input[type=checkbox]:hover, input[type=radio] {
    opacity: 1;
}

input[type=checkbox]:checked, input[type=radio]:checked {
    background-color: #fff;
    opacity: 1;
}


input[type=checkbox]:checked:before, input[type=radio]:checked:before {
    content: '';
}

input[type=checkbox]:before, input[type=radio]:before  {
    position: absolute;
    right: 50%;
    top: 50%;
    width: 5px;
    height: 10px;
    border: solid #000;
    border-width: 0 2px 2px 0;
    margin: -1px -1px 0 -1px;
    transform: rotate(45deg) translate(-50%, -50%);
    z-index: 2;
}

.wpcf7-not-valid-tip{
    font-size: 12px
}


.wpcf7 label{
    display: block
}

.wpcf7 select,
.wpcf7 input[type="text"],
.wpcf7 input[type="email"]{
    width: 100%;
    border: 0;
    border-bottom: 1px solid var(--black);
    border-radius: 0;
    background-color: transparent
}

.wpcf7 textarea{
    width: 100%;
    border: 0;
    border: 1px solid var(--black);
    border-radius: 0;
    max-height: 150px;
    background-color: transparent
}

.wpcf7-list-item-label{
    font-size: 11px
}

.text-privacy{
    font-size: 10px;
    text-align: justify
}

.wpcf7-list-item{
    display: block;
    margin: 0;
    line-height: 1
}

.wpcf7-form p{
    margin-bottom: 1.5rem
}



.wpcf7-form .row{
    align-items: center;
}



.wpcf7 select{
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0
}




.wpcf7 select,
.wpcf7 textarea::placeholder,
.wpcf7 input::placeholder{
    color: var(--black);
    font-weight: 100;
    font-family: rep, sans-serif
}



.wpcf7 select,
.wpcf7 textarea,
.wpcf7 input:not(.wpcf7-submit){
    box-shadow: none !important;
    outline: none !important;
}


.wpcf7-spinner{
    position: absolute;
    right: 5px;
    top: 7px
}

.cont-btn{
    text-align: right
}

.cont-btn p{
    position: relative
}

.wpcf7-submit {
    border-radius: 0;
    border: 1px solid #000;
    background-color: transparent;
    color: var(--black);
    position: relative;
    padding: 4px 4rem;
    max-width: 100%;
    min-width: auto;
    text-transform: uppercase;
    font-weight: 500
}

.text-privacy p{
    font-size: 9px
}


.img-full{
    width: 100%;
    height: 100%;
}


.img-full img{
    width: 100%;
    height: 100%!important;
    object-fit: cover;
}


.bl{
    border-left: 1px solid #000
}
.br{
    border-right: 1px solid #000
}
.bt{
    border-top: 1px solid #000
}
.bb{
    border-bottom: 1px solid #000
}


.footer-list{
    display: flex;
    justify-content: center;
    list-style: none;
    margin-bottom: 0
}

.footer-list li{
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    text-align: center;
    font-size: 18px
}

li.li-border{
    position: relative;
}

.top-nav-widget{
    position: relative
}

.top-nav-widget:after,
#footer-menu li:after,
#footer-menu li:before,
li.li-border:before,
li.li-border:after{
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    left: -1px;
    height: 16px;
    width: 1px;
    background-color: #000;
}

li.li-border:before{
    left: auto;
    right: 0
}


.img-footer{
    text-align: center;
}

.img-footer img{
    width: 600px;
    max-width: 100%
}

#footer-menu{
    justify-content: center;
}

#footer-menu li{
    position: relative;
}

#footer-menu li a{
    color: #444;
    text-align: center;
    padding-left: var(--bs-nav-link-padding-x);
}

#footer-menu li:before,
#footer-menu li:after{
    background-color: #444;
}

#footer-menu li:before{
    left:  auto;
    right: 0
}

.top-nav-widget{
    position: relative
}

.top-nav-widget:after{
    left: -7px
}


.is-root-container .width-100{
    left: 0!important
}


.full-slider .swiper-slide img{
    height: 850px;
    width: 100%;
    object-fit: cover
}


body .fashion-slider .swiper-pagination-bullets.swiper-pagination-horizontal{
    width: calc(var(--container) - 0.75rem);
    left: 50%;
    transform: translateX(-50%);
    text-align: right
}

.fashion-slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
    display: inline-block;
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-pagination-bullet-width: 12px;
    --swiper-pagination-bullet-height: 12px;
}

.fashion-slider-caption {
    position: absolute;
    width: calc(var(--container) - 0.75rem);
    left: 50%;
    transform: translateX(-50%);
    bottom: 3rem;
    font-weight: 500;
    color: #fff;
    font-size: 2rem
}

.caption-slider {
    display: table;
    text-align: center;
    line-height: 1.2;
    text-shadow: 0px 1px black;
}


.title{
    color: var(--blue);
    font-size: 1.25rem;
    font-weight: 100;
}

.title-bold{
    color: var(--blue);
    font-size: 1.125rem;
    font-weight: 500;
}

.gallery-full{
    --wp--style--gallery-gap-default: 1rem;
    height: 100%;
}

.gallery-full figure{
    margin-bottom: 0;
}

.gallery-full figure img{
    object-fit: cover
}

.row-equipo figure img{
    aspect-ratio: 1/1;
    width: 100%;
    object-fit: cover
}


.accordion {

    --bs-accordion-border-width: 0;
    --bs-accordion-border-radius: 0;
    --bs-accordion-btn-color: var(--blue);
    --bs-accordion-btn-focus-box-shadow: none;
    --bs-accordion-btn-padding-x: 0;
    --bs-accordion-active-color: var(--bs-primary-text-emphasis);
    --bs-accordion-active-bg: #fff;
}


.accordion-header{
    border-bottom: 1px solid
}

.accordion-header button{
    font-weight: 100;
    font-size: 1.125rem
}


.cont-iframe iframe{
    width: 100%;
}

.row-iframe > div{
    flex: 0 0 auto;
    width: 40%
}
.row-iframe > div:last-child{
    width: 60%
}

.text-sm{
    font-size: 15px
}

.projecte-list{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
    justify-content: center;
    padding-left: 0
}

.projecte-list li{
    position: relative;
    padding-left: 1rem;
    padding-right: 1rem;
}


.projecte-list li:after{
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 18px;
    background-color: #000
}

.projecte-list > li:last-child:after{
    display: none
}

.swiper-button-prev,  .swiper-button-next{
    bottom: -3rem;
    top: auto!important;
    --swiper-navigation-size: 32px;
    --swiper-navigation-color: #555
}

.cont-nav .swiper-button-prev{
    left: calc(50% - 2rem);
}

.cont-nav  .swiper-button-next{
    right: auto;
    left: calc(50% + 2rem);
}


.projecte-cat a{
    color: var(--blue);
    text-decoration: none
}

.projecte-cat a:hover{
    color: var(--purple)
}

.projecte-cat a.active{
    color: var(--purple);
}

.ajax-load-more-wrap.blue .alm-load-more-btn{
    background-color: transparent!important;
    color: #000!important;
    box-shadow: none!important
}

.row-projectes img{
    aspect-ratio: 540/670;
    object-fit: cover;
}


.row-projectes img:hover{
    opacity: .82
}

.row-projectes{
    margin-bottom: 2rem
}


.caption-cat{
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 1rem;
    color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: all .15s linear;
    padding-left: 1rem
}

.caption-cat a h2,
.caption-cat a h3{
    display: block;
    color: #fff;
    font-size: 1rem
}

.caption-cat a h3{
    text-align: center
}


.row-projectes > article > div{
    position: relative;
}

.row-projectes > article:hover .caption-cat{
    opacity: 1;
    visibility: visible
}


.to-fixed .custom-logo,
.to-fixed .top-nav-widget-2 p{
    transition: all .15s linear
}

.to-fixed .custom-logo{
    width: 80px
}

.to-fixed .top-nav-widget-2 p{
    margin-bottom: 0
}

.projectes-custom img{
      aspect-ratio: 540/670;
    object-fit: cover
}

.pro-link{
    text-align: center;
    font-size: 16px;
    text-decoration: none;
    font-weight: 100
}

.pro-link:hover img{
    opacity: .82
}

.pro-link:hover{
    color: var(--purple)!important
}

.pro-cat{
    font-size: 20px
}

.alm-listing {
    --bs-gutter-x: 1.5rem;
    margin-top: calc(-1 * var(--bs-gutter-y))!important;
    margin-right: calc(-.5 * var(--bs-gutter-x))!important;
    margin-left: calc(-.5 * var(--bs-gutter-x))!important;
}


.single-projectes .full-slider .swiper-slide img{
    aspect-ratio: 1180/590;
    object-fit: contain;
    height: auto
}


.plus {
  display:inline-block;
  width:40px;
  height:40px;
  
  background:
    linear-gradient(#fff 0 0),
    linear-gradient(#fff 0 0),
    #000;
  background-position:center;
  background-size: 50% 2px,2px 50%; /*thickness = 2px, length = 50% (25px)*/
  background-repeat:no-repeat;
}


.custom-plus {
  background: linear-gradient(#333 0 0), linear-gradient(#333 0 0);
  background-position:center;
  background-size: 50% 2px,2px 50%; /*thickness = 2px, length = 50% (25px)*/
  background-repeat:no-repeat;
}

.alm-load-more-btn .plus{
    width: 45px;
    height: 45px
}


.nav-link.active{
    color: var(--purple)!important
}


.alm-listing {
    justify-content: center;
}

.alm-btn-wrap .alm-load-more-btn[disabled],
.alm-btn-wrap .alm-load-more-btn.loading{
    display: none
}

@media (orientation: portrait) {
    .full-slider img{
        height: auto!important;
        aspect-ratio: 16/9;
        object-fit: cover
    }

}


@media (min-width: 768px){
    :root {
        --container: 720px;
    }

}

@media (min-width: 992px) {

    :root {
        --container: 960px;
    }

    .to-fixed #bootscore-navbar li a{
        font-size: 16px
    }

    .navbar-expand-lg .offcanvas .offcanvas-body {
        flex-wrap: wrap;
        justify-content: end;
        align-items: center;
    }

    .cont-nav-2 {
        flex: 0 0 auto;
        width: 100%;
        margin-left: auto;
        justify-content: end;
        margin-left: auto;
        display: flex;
    }



}

@media (min-width: 1200px){
    :root {
        --container: 1140px;
    }

}


@media (min-width: 1400px){
    :root {
        --container: 1320px;
    }
}




@media (max-width: 1399px){

    .full-slider .swiper-slide img{
        height: calc(100vh - 96px - (var(--wp-admin--admin-bar--height, 0px)));
    }

    .text-sm{
        font-size: 14px
    }

}


@media (max-width: 1199px){
    .footer-list li {
        font-size: 16px;
    }
}
@media (max-width: 991px){


    .wp-block-social-links{
        justify-content: center
    }

    .top-nav-widget-2 p{
        text-align: center
    }

    .cont-nav-2{
        order: 6
    }

    .top-nav-widget{
        margin-top: auto;
    }

    .top-nav-widget:after{
        display: none
    }

    #bootscore-navbar{
        margin-left: 0!important
    }

    .offcanvas-body{
        display: flex;
        flex-direction: column
    }

    .header-actions .btn{
        border-radius: 0;
    }

    .offcanvas-header{
        background-color: var(--blue);
        color: #fff
    }

    .offcanvas-header .btn-close{
        opacity: 1;
        filter: invert(1)
    }


    .row-lg > div{
        flex: 0 0 auto;
        width: 100%
    }
    .footer-list li {
        font-size: 16px;
        flex: 0 0 auto;
        width: 100%;
    }

    .footer-list li {
        font-size: 18px;
    }

    .footer-list {
        flex-wrap: wrap
    }

    li.li-border:before,
    li.li-border:after{
        display: none
    }

}
@media (max-width: 767px){
    .order-md{
        order: -1
    }

    .row-md > div{
        flex: 0 0 auto;
        width: 100%!important
    }

    .projecte-list li:after{
        display: none
    }
    .row-projectes > article .caption-cat{
        opacity: 1;
        visibility: visible
    }

}
@media (max-width: 575px){

    :root{
        --container: 100vw;
    }


}

