/*

Theme Name: Keiron

Author: Keiron

Description: A powerful Bootstrap 5 WordPress Starter Theme with WooCommerce Support. <a href="https://bootscore.me/category/documentation/" target="_blank">Documentation</a>. This theme gives you full control whatever you do and the full freedom to design whatever you want. It comes with a wide selection of category, page, post, author and archive templates as well as sidebar, header, footer and 404 widgets. There are no customizer settings in the backend. All settings can only be made by touching the code. Some CSS, HTML, PHP and JS Skills are required to customize it.

Version: 5.3.4

Requires at least: 5.0

Tested up to: 6.4.1

Requires PHP: 7.4

License: MIT License

License URI: https://github.com/bootscore/bootscore/blob/main/LICENSE

Text Domain: bootscore

Tags: featured-images, threaded-comments, translation-ready



Use this theme to make something cool, have fun, and share what you've learned with others.



Keiron is based on Underscores https://underscores.me/, (C) 2012-2022 Automattic, Inc.

Underscores is distributed under the terms of the GNU GPL v2 or later.

*/



/* 

All style editing is done via scss/_bscore_custom.scss

*/





:root{

    --black: #000;

    --green: #64A423;

    --blue: #002953;

    --red: #be1127;

    --gray: #6b6c6f;

    --gray2: #f3f4f6;

    --px18: 1.125rem;

    --px20: 1.25rem;

    --px22: 1.375rem;

    --px24: 1.5rem;

    --px26: 1.625rem;

    --px28: 1.75rem;

    --px30: 1.875rem;

    --px32: 2rem;

    --px34: 2.125rem;

    --px36: 2.25rem;

    --px38: 2.375rem;

    --px40: 2.5rem;

    --px45: 2.8125rem;

    --px50: 3.125rem;

}





@font-face {

    font-family: ak;

    src: url(fonts/akzidenz-grotesk-bq-extended.otf);

}

@font-face {

    font-family: ak;

    src: url(fonts/Akzidenz-Grotesk-BQ-Light-Extended.ttf);

    font-weight: 300;

}





body{

    font-family: ak, sans-serif;

    color: var(--black);

    font-weight: 300

}





html, body {

    height: auto;

    margin: 0;

    padding: 0;

    overflow-x: hidden;

}



.bt{

    border-top: 1px solid #000

}

.bb{

    border-bottom: 1px solid #000

}

.bl{

    border-left: 1px solid #000

}

.br{

    border-right: 1px solid #000

}





.bg-black{

    background-color: var(--black)

}



.bg-gray{

    background-color: var(--gray)

}





.bg-gray2{

    background-color: var(--gray2)

}



.bg-red{

    background-color: var(--red)

}



.bg-green{

    background-color: var(--green)

}

.bg-blue{

    background-color: var(--blue)

}



.text-black{

    color: var(--black)!important

}

.text-gray{

    color: var(--gray)!important

}



.text-green{

    color: var(--green)

}



.text-red{

    color: var(--red)

}



.text-blue{

    color: var(--blue)

}



a{

    text-decoration: none;

    color: var(--green)

}



.fs-12 {

    font-size: 12px;

}

.fs-14 {

    font-size: 14px;

}

.fs-16 {

    font-size: 16px;

}



/* Estilos base para las fuentes en 1920 en rem */

.fs-18 {

    font-size: var(--px18);

}

.fs-20 {

    font-size: var(--px20);

}

.fs-22 {

    font-size: var(--px22);

}

.fs-24 {

    font-size: var(--px24);

}

.fs-26 {

    font-size: var(--px26);

}

.fs-28 {

    font-size: var(--px28);

}

.fs-30 {

    font-size: var(--px30);

}

.fs-32 {

    font-size: var(--px32);

}

.fs-34 {

    font-size: var(--px34);

}

.fs-36 {

    font-size: var(--px36);

}

.fs-38 {

    font-size: var(--px38);

}

.fs-40 {

    font-size: var(--px40);

}

.fs-45 {

    font-size: var(--px45);

}

.fs-50 {

    font-size: var(--px50);

}



/* Media queries para diferentes tamaños de pantalla */



@media (max-width: 1440px) {

    :root {

        --px18: 0.85rem;

        --px20: 1rem;

        --px22: 1.1rem;

        --px24: 1.2rem;

        --px26: 1.3rem;

        --px28: 1.4rem;

        --px30: 1.5rem;

        --px32: 1.6rem;

        --px34: 1.7rem;

        --px36: 1.8rem;

        --px38: 1.9rem;

        --px40: 2rem;

        --px45: 2.1rem;

        --px50: 2.3rem;

    }

}







.line1{

    line-height: 1

}

.line2{

    line-height: 1.2

}

.line3{

    line-height: 1.3

}

.line4{

    line-height: 1.4

}

.line5{

    line-height: 1.5

}





.bold{

    font-weight: 700

}



h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1{

    font-weight: 300

}





.full-img{

    height: 100%;

}



.full-img img{

    height: 100%!important;

    width: 100%;

    object-fit: cover

}



#nav-main > .container{

    align-items: normal

}



.cont-menu1  #bootscore-navbar,

.cont-menu2  #bootscore-navbar{

    justify-content: end

}



.cont-menu1{

    display: none

}



.cont-menu2{

    transition: all .15s linear;

}







.to-fixed .cont-menu2{

    margin-top: -50px

}



.to-fixed .cont-menu2 .bg-white{

    background-color: transparent!important;

    border: 0

}



.to-fixed #nav-main{

    border-bottom: 1px solid #000;

}





.offcanvas-body{

    height: 100%;

    justify-content: space-between

}



#bootscore-navbar{

    --bs-navbar-nav-link-padding-x: 1.5rem

}



#bootscore-navbar li a{

    color: var(--black);

    font-size: 1.2rem;

    line-height: 1;

    text-transform: lowercase

}





#footer-menu li a:hover,

#bootscore-navbar li a:hover{

    color: var(--green)

}





#footer-menu{

    justify-content: end;

}



#footer-menu li a{

    font-size: 14px;

    color: var(--black);

    padding-left: var(--bs-nav-link-padding-x)

}



#footer-menu li{

    margin-left: -1px;

    position: relative;

}



#footer-menu > li:after{

    content: "";

    position: absolute;

    content: "";

    width: 1px;

    height: 18px;

    left: 0;

    top: 50%;

    transform: translateY(-50%);

    background-color: #000;

}





#footer-menu li:first-child:after{

    display: none

}



.cont-icon-footer{

    display: flex;

    gap: 10px;

    justify-content: center;

    align-items: center;

}



.cont-icon-footer .areoi-icon {

    flex: 0 0 auto;

    width: 60px;

    height: 60px;

    border-radius: 72px;

    border: 6px solid #005896;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 5px;



}





.gallery-footer{

    width: 275px;

    margin:  auto;

    --wp--style--gallery-gap-default: 1.5rem;

    align-items: center

}



.img-ind,

.img-footer{

    width: 210px;

    max-width: 100%;

    transform: translateY(-50%);

    background-color: #fff;

    aspect-ratio: 1/1;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 9999px;

    border: 1px solid var(--green);

    margin-left: auto;

    margin-right: auto

}



.img-ind{

    width: 100%;

    transform: none;

    padding: 1rem;

    text-align: center;

    margin-bottom: 0

}



ul#bootscore-navbar li.current_page_item a{

    color: var(--green)

}



ul#bootscore-navbar li.current_page_item a span{

    border-bottom: 2px solid var(--blue)

}



#bootscore-navbar li a span{

    padding-bottom: 2px;

    margin-bottom: 4px

}



.title{

    font-size: var(--px30);

}



.title-blue > *{

    color: var(--blue);

}



.title-green > *{

    color: var(--green);

}



#content{

    margin-top: 154px

}



.custom-logo-link img{

    width: 220px

}



.cont-footer1{

    border-top: 15px solid var(--green);

    border-bottom: 60px solid var(--blue);

}



.cont-footer1 > div{

    border-bottom: 15px solid var(--green);

    border-top: 60px solid var(--blue);

}





.cont-bottom{

    height: 100%;

    display: flex;

    align-items: end

}





.sep{

    height: 25px

}





.text-home {

    transform: translateY(-50%);

}



.cont-text{

    width: 550px;

    max-width: 100%;

    margin: auto;

    z-index: 1001;

    margin-top: -7.2rem;

    color: #555;

    text-align: justify;

}



.bgcol .areoi-background__color{

    z-index: 99

}



.colc1{

    width: 46.5%

}



.colc2{

    width: 31.5%

}

.colc3{

    width: 22%

}





.border-green{

    border-top: 15px solid var(--green) ;

}





.pe-6{

    padding-right: 4.5rem

}



.max-box {

    width: 740px;

    max-width: 100%;

    /*padding-right: 3rem;*/

}



.cont-width-50{

    display: flex;

    justify-content: end;

}



.width-50{

    flex: 0 0 auto;

    width: 50vw;

}



.box-gray{

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center

}





.tab-pane:after,

.box-gray:after{

    position: absolute;

    content: "";

    left: 75%;

    top: 0;

    height: 100%;

    width: 45vw;

    background-color: var(--gray2);

    z-index: -1

}



.line-green{

    height: 1.5rem;

    border-top: 1px solid var(--green);

    border-bottom: 1px solid var(--green);

}





.cover-end img{

    object-position: right

}





.cont-address{

    margin-top: -4rem

}



.my-table thead{

    border-bottom: 0

}



.my-table a{

    color: var(--bs-blue)

}



.wp-block-table td, .wp-block-table th{

    padding-top: 0.75rem;

    padding-bottom: 0.75rem;

}



.cont-map{

    width: 1000px;

    max-width: 100%;

    margin: auto

}



.cont-sjd{

    background-color: #fff;

    display: table;

    padding: 5px 20px;

    margin: auto

}



.img-line:after{

    position: absolute;

    content: "";

    height: 100%;

    width: 8px;

    background-color: #fff;

    top: 0;

    left: 50%;

    transform: translateX(-50%);

}





.caption-banner{

    position: absolute!important;

    bottom: 3rem;

    width: 100%;



}







.caption-title{

    display: flex;

    align-items: center;

    justify-content: end;

    word-break: normal;

    color: rgba(255,255,255,.6);

    gap: 3rem;

}





.caption-title:before{

    position: relative;

    flex: 0 0 auto;

    content: "";

    height: 3px;

    width: 100%;

    background-color: rgba(255,255,255,.6);

}



.title-line > *{

    display: table;

    margin-left: auto

}



.title-line > *:after{

    position: absolute;

    content: "";

    width: 100vw;

    height: 1px;

    background-color: var(--green);

    top: 50%;

    left: -100vw;

    margin-left: -3rem

}





.my-tab {

    display: flex;

}



.my-tab nav{

    --bs-nav-tabs-border-width: 0;

    --bs-nav-tabs-border-color: #fff;

    --bs-nav-tabs-border-radius: 0;

    --bs-nav-tabs-link-hover-border-color: 0;

    --bs-nav-tabs-link-active-color: var(--red);

    --bs-nav-tabs-link-active-bg: #fff;

    --bs-nav-tabs-link-active-border-color: 0;

    border-bottom:0;

    padding-right: 2rem;

}



.my-tab .tab-pane{

    flex: 1 0 0%;

    padding-left: 2rem;

    border-left: 1px solid #000

}



.nav-tabs .nav-link{

    position: relative;

    text-align: right;

    padding-right: 0;

    color: var(--black);

    font-size: var(--px22)

}



.nav-tabs .nav-link:after{

    position: absolute;

    content: "";

    height: 1px;

    right: 0;

    width: 50vw;

    bottom: 0;

    background-color: var(--green)

}





.btn-link{

    text-decoration: none;

    border-bottom: 2px solid var(--green);

    border-radius: 0;

    padding-left: 0;

    padding-right: 0

}



.btn-link:hover{

    border-bottom: 2px solid var(--green);

    color: var(--blue);

    opacity: .82

}





input[type=checkbox], input[type=radio] {

    position: relative;

    border: 2px solid #000;

    border-radius: 2px;

    background: none;

    cursor: pointer;

    line-height: 0;

    margin: 0 .6em 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;

}



.text-privacy{

    font-size: 11px

}



.cont-contac1{

    width: 1000px;

    max-width: 100%;

    margin: auto

}



input::placeholder,

textarea::placeholder{

    font-family: ak, sans-serif;

    color: var(--black);

    font-weight: 300;

    font-size: 18px

}



textarea, input:not([type="file"], [type="image" ], [type="submit"], [type="checkbox"], [type="radio"]) {

    border: 0;

    border-bottom: 1px solid var(--green);

    width: 100%;

    background-color: transparent;

    padding: 10px 0

}



textarea{

    height: 50px;

    padding: 10px;

    padding-left: 0;

    padding-top: 0

}



.form-item p{

    display: flex;

    align-items: end

}



.form-item p > span:first-child{

    width: 100px;

    line-height: 1

}



.wpcf7-submit{

    border: 1px solid #fff;

    background-color: #fff;

    color: var(--black);

    position: relative;

    padding: 5px 4rem;

    max-width: 100%;

    min-width: auto;

    box-shadow: 2px 2px 4px 0px rgba(0,0,0,.38);

    border-radius: 0

}



.wpcf7-submit:hover{

    background-color: var(--black);

    color: #fff;

    cursor: pointer!important

}



.wpcf7-form p > label{

    display: block

}



.wpcf7-form-control-wrap{

    flex: 1

}



.wpcf7-list-item-label{

    font-size: 13px

}



.wpcf7-list-item{

    margin-left: 0

}



.box-contacto{

    padding-bottom: 1.5rem

}



.cont-btn p,

.row-contact p{

    margin-bottom: 0;

    position: relative;

    text-align: right

}







.row-contact > div{

    position: relative

}



.wpcf7-not-valid-tip{

    font-size: 14px

}



.wpcf7-spinner{

    position: absolute;

    right: 1rem;

    top: 50%;

    transform: translateY(-50%);

    margin: 0

}





.list-cats{

    padding-left: 0;

    list-style: none;

    width: 100%

}





.list-cats li a{

    position: relative;

    display: block;

    padding: 5px 10px;

    border-bottom: 1px solid var(--green);

    text-align: right;

    margin-bottom: 10px;

    color: var(--black);

    font-size: 20px;

    padding-right: 40px

}





.list-cats li a:after{

    position: absolute;

    content: "";

    width: 25px;

    height: 25px;

    right: 0;

    top: 50%;

    transform: translateY(-50%);

    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2364A423'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");

}





.list-cats li a:hover{

    color: var(--red)

}



.no-after:after{

    display: none

}





.img-100 img{

    width: 100%;

}





.top-button{

    background-color: var(--blue);

    border-color: var(--blue);

}

.wpml-ls-current-language a{
    color: var(--blue)!important
}

@media (min-width: 1400px){

    .row-footer .col-3{

        width: 20%;

    }

    .row-footer .col-9{

        width: 65%;

    }

}





@media (max-width: 991px){

    .cont-menu2{

        display: none

    }

    #nav-main{

        border-bottom: 1px solid #000

    }



    .header-actions .btn{

        border-radius: 0;

        font-size: 24px;

        line-height: 1

    }



    .row-lg-6 > div{

        flex: 0 0 auto;

        width: 50%;

    }



    #footer-menu {

        justify-content: center

    }



    #footer-menu > li:after{

        display: none

    }



    #content{

        margin-top: 114px

    }



    

    .cont-menu1{

        display: block;

        order: -1

    }

    

    .offcanvas-body{

        display: flex

    }

    

    .offcanvas-header{

        background-color: var(--blue);

        color: #fff;

    }

    

    .offcanvas-header .btn-close{

        filter: invert(1);

        opacity: 1

    }



}



@media (max-width: 767px){

    .row-md-6 > div{

        flex: 0 0 auto;

        width: 50%;

    }



    .row-md > div{

        flex: 0 0 auto;

        width: 100%;

    }



    .cont-bottom{

        transform: translateY(-50%);

    }



    .text-home {

        transform: translateY(-100%);

    }



    .cont-text{

        margin-top: 0;

        padding-top: 1.5rem

    }



    .width-50 {

        flex: 0 0 auto;

        width: 100%;

    }



    .cont-address{

        margin-top: 0

    }



    .order-md{

        order: -1

    }



    .ratio1{

        aspect-ratio: 1/1;

        object-fit: cover;

        object-position: center

    }



    .my-tab .nav{

        flex: 0 0 auto;

        width: 100%;

        display: flex;

        flex-direction: row!important;

        align-items: end;

        row-gap: 1rem;

        padding-right: 0

    }



    .my-tab .nav-link{

        flex: 0 0 auto;

        width: 33.333333%

    }



    .my-tab{

        flex-wrap: wrap

    }



    .my-tab .nav-link:after{

        width: calc(100% - 1.5rem);

        left: 0;

    }



    .my-tab .nav a{

        text-align: left;



        padding-left: 0

    }



    .my-tab .tab-pane{

        padding-left: 0;

        border: 0

    }



    .row-princ .row .col-2{

        flex: 0 0 auto;

        width: 33.3333333%;

    }



    .row-princ .row .col-10{

        flex: 0 0 auto;

        width: 66.66666667%

    }



}



@media (max-width: 600px){

    .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {

        width: calc(33.33% - var(--wp--style--unstable-gallery-gap, 16px)*.66667);

    }

}



@media (max-width: 575px){

    .row-sm > div{

        flex: 0 0 auto;

        width: 100%;

    }



    .img-footer {

        transform: none;

        margin-top: -5rem;

    }



    .phone-sep{

        color: #fff;

        display: block;

        line-height: 1px

    }



    .text-home,

    .cont-bottom {

        transform: none;

    }



    .text-home{

        margin-top: 1rem

    }



    .img-line:after{

        display: none

    }



    .my-tab .nav-link{

        width: 50%;



    }



    .my-tab .nav-link:after {

        width:calc(100% - 1rem);

    }



    .row-princ .row{

        --bs-gutter-y: 1.5rem

    }

    

    .row-princ .row > div{

        width: 100%!important;

    }

    

    .img-ind{

        text-align: center;

    }

    

    .img-ind{

        width: 200px

    }

    

    .row-princ.bg-gray2 .col-2{

        order: -1

    }



}