/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */
@import url('https://fonts.googleapis.com/css2?family=Public+Sans:wght@300;400;700&display=swap');

@font-face {
    font-family: 'Tex Gyre';
    src: url('./tex-gyre/texgyretermes-regular.otf') format('OpenType');
  }
@font-face {
    font-family: 'Tex Gyre';
    src: url('./tex-gyre/texgyretermes-bold.otf') format('OpenType');
    font-weight: bold;
  }

:root {
--main-color: #29438D;
}
body{
    font-family: 'Public Sans', sans-serif;
}

#wrapper{
    background: #EDEEF2 !important;
}

/* menu */
.header-nav{
    background: var(--main-color);
    margin-bottom: unset;
}
.header-nav a, .blockcart.cart-preview *, .expand-more{
    color: white !important;
}
.header-nav .dropdown-item{
    color: var(--main-color) !important;
}
#header .header-nav .blockcart{
    background: var(--main-color);
}

.header-top{
    border-bottom: 10px solid var(--main-color);
}

.header-top .row{
    display: flex;
    align-items: center;
}

#header .header-top{
    padding: 1rem 0;
}

#header .header-nav{
    margin-bottom: unset;
}

.sf-menu{
    background: unset;
    border: unset;
    margin-bottom: 0;
}

.sf-menu li{
    border-right: unset;
}

#header .header-nav #_desktop_contact_link #contact-link, #header .header-nav .user-info{
    margin-top: unset;
}

#header .header-nav #_desktop_contact_link #contact-link, #_desktop_user_info{
    padding: 1rem 0;
}

#_desktop_top_menu, #top-menu{
    margin-bottom: 0;
}

.search-widget form input[type=text]{
    border-bottom: unset;
    border-left: unset;
    border-top: 2px solid var(--main-color);
    border-right: 2px solid var(--main-color);
    height: 40px;
    background: #E9ECF4;
}
.search-widget form input[type=text]:focus{
    background: #E9ECF4;
    outline: unset;
}

.search-widget form{
    position: relative;
}
.search-widget form:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    border-top: 20px solid white;
    border-left: 20px solid transparent;
    width: 0;
}



.search-widget form:after {
    content: '';
    position: absolute;
    top: 10.3px;
    right: -3px;
    background: var(--main-color);
    height: 2px;
    width: 28px;
    transform: rotate(45deg);
}


.search-widget form button[type=submit]{
    height: 40px;
    right: unset;
    bottom: unset;
    left: -30px;
    background: var(--main-color);
    color: white;
}
.search-widget form input[type=text]:focus+button .search{
    color: white;
}


/* end menu */

/* footer */
.footer-container{
    padding-bottom: 1.25rem;
    box-shadow: unset;
    background: #444;
}
.footer-container *{
    color: white !important;
}

.footer-container svg{
    width: 15px;
    height: 15px;
    margin-right: 10px;
}
.footer-container .ubication{
    display: flex;
}
.footer-container .ubication p{
    margin: unset;
}
.footer-container p, .footer-container a{
    font-size: .85em;
}

.copyright-list{
    font-size: .85em;
}

.footer-container .phone-number{
    margin: 15px 0;
}
.title-footer{
    margin-bottom: 15px;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 1em;
}
.legal-list{
    display: flex;
    margin: unset;
    padding: 20px 0;
}
.legal-list li{
    margin-right: 20px;
    position: relative;
}

.legal-list li::after{
    position: absolute;
    content: '/';
    right: -13px;
}
.legal-list li:last-child{
    margin-right: unset;
    position: unset;
}
.legal-list li:last-child::after{
    position: unset;
    content: unset;
}
.legal-list a{
    text-decoration: underline !important;
}

#legal-col{
    margin-top: 15px;
    border-top: 2px solid white;
}
.footer-legal{
    color: white;
    padding: 1em 0;
}
.footer-legal ul{
    display: flex;
    justify-content: space-between;
    margin: unset;
}

.footer-legal a{
    color: white;
    font-weight: bold;
    text-decoration: underline !important;
}

/* end footer */

/* paginas */
#wrapper{
    background: #fff;
}

#pagenotfound .page-not-found, #products .page-not-found{
    max-width: unset;
}

.bootstrap-touchspin input.form-control, .bootstrap-touchspin input.input-group{
    width: 4rem;
}

.addresses-footer, body#checkout section.checkout-step .address-footer, body#checkout section.checkout-step .add-address, [data-link-action="different-invoice-address"], .step-number, .page-addresses .address .address-footer{
    display: none !important;
}
/* final paginas */


/* pagina categorias */

.block-categories{
    padding: 1.5em;
}
.block-categories .category-top-menu{
    margin-bottom: unset;
}

.block-category{
    padding: 1.25rem;
    min-height: unset;
}
.block-category .h1{
    margin-bottom: 0;
}

/* fin pagina categorias */

#footer{
    padding-top: unset;
}
.footer-container{
    margin-top: unset;
}

/* single product */
#product .h1{
    font-family: 'Tex gyre';
    font-weight: bold;
    color: var(--main-color);
}
.product-cover .layer{
    display: none;
}
#wrapper .breadcrumb li a{
    color: #626263;
    text-decoration: underline;
}
#wrapper .breadcrumb li:last-child{
    color: var(--main-color);
    text-decoration: unset;
}

.product-quantity #quantity_wanted{
    width: 4rem;
}

.product-minimal-quantity{
    display: none;
}

.text-packages{
    font-size: 1.3em;
    font-weight: bold;
}
.product-additional-info{
    margin-top: 1em;
    background: white;
    padding: 1em;
    border: 2px solid #C0C4D2;
}


.tabs{
    box-shadow: unset;
    border-top: 2px solid #C0C4D2;
    border-right: 2px solid #C0C4D2;
    position: relative;
}
.tabs::before{
    content: '';
    position: absolute;
    top: -2px;
    right: -2px;
    border-top: 20px solid #EDEEF2;
    border-left: 20px solid transparent;
    width: 0;
}
.tabs::after{
    content: '';
    position: absolute;
    top: 7px;
    right: -5px;
    background: #C0C4D2;
    height: 2px;
    width: 28px;
    border-top-left-radius: 5px;
    transform: rotate(45deg);
}
.scroll-box-arrows .right{
    right: -8px;
}

.scroll-box-arrows .left{
    left: -8px;
}

.scroll-box-arrows i{
    bottom: 60px;
    height: 30px;
    line-height: 30px;
    cursor: pointer;
    width: 30px;
    text-align: center;
    background: white;
    border-radius: 15px;
    border: 1px solid #C0C4D2;
}
.product-images>li.thumb-container>.thumb.selected, .product-images>li.thumb-container>.thumb:hover{
    border: unset;
}

.product-prices .tax-shipping-delivery-label{
    color: #444;
}

.page-content.page-cms ul, p{
    color: #444;
}

.product-cover img{
    box-shadow: unset !important;
}

/* end single product */

/* home */
#featured-categories{
    padding: 2.5em 0;
}
#featured-categories .title-section{
    text-align: center;
    color: var(--main-color);
    text-transform: uppercase;
    margin-bottom: 2em;
    font-size: 1.5em;
    font-family: 'Tex Gyre';
}
#featured-categories .row{
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
}
#featured-categories .col-category{
    margin-bottom: 1.5em;
}
.category-image{
    max-width: 120px;
    height: auto;
    display: block;
    margin: 0 auto;
}
.category-name{
    font-size: 14px;
    margin-top: 15px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px){
.col-md-2-5{
    float: left;
    width: 20%;
}
}
@media (max-width: 768px){
    .col-md-2-5 {
        float: left;
        width: 50%;
    }
}

.mb-3{
    margin-bottom: 1.5em;
}
/* end home */
/* categories */
@media (min-width: 768px){
    #content-wrapper{
        width: 100%;
    }
}
.category-page-image{
    max-width: 100px;
    height: auto;
    display: block;
    margin: 0 auto;
}
.category-page-name{
    font-size: 18px;
    margin-top: 15px;
    text-align: center;
    font-weight: bold;
    font-family: 'Tex gyre';
    color: var(--main-color);
}

#products .product-description, .featured-products .product-description, .product-accessories .product-description, .product-miniature .product-description{
    padding: 1em;
    height: unset !important;
    background: white !important;
}

.product-title{
    text-align: left !important;
    margin-top: unset !important;
}
.product-title a{
    font-size: 1em !important;
    font-family: 'Public Sans';
    color: black !important;
}

#products .highlighted-informations, .featured-products .highlighted-informations, .product-accessories .highlighted-informations, .product-miniature .highlighted-informations{
    box-shadow: unset !important;
}
#products .thumbnail-container, .featured-products .thumbnail-container, .product-accessories .thumbnail-container, .product-miniature .thumbnail-container{
    box-shadow: unset !important;
    border: 1px solid #D5D9E7;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}

#products .thumbnail-container:focus .product-description:after, #products .thumbnail-container:hover .product-description:after, .featured-products .thumbnail-container:focus .product-description:after, .featured-products .thumbnail-container:hover .product-description:after, .product-accessories .thumbnail-container:focus .product-description:after, .product-accessories .thumbnail-container:hover .product-description:after, .product-miniature .thumbnail-container:focus .product-description:after, .product-miniature .thumbnail-container:hover .product-description:after{
    content: unset !important;
}

#products .product-description, .featured-products .product-description, .product-accessories .product-description, .product-miniature .product-description{
    width: 100% !important;
}

.highlighted-informations.no-variants{
    width: 100% !important;
}

.btn-buy{
    background: var(--main-color);
    border-radius: 4px;
    color: white;
    padding: .5em;
    border: unset;
    cursor: pointer;
    transition: all .4s ease;
    font-size: 14px;
    margin-top: 5px;
    display: inline-block;

}
.btn-buy:hover{
    opacity: .85;
    color: white !important;
}
/* end categories */

/* otras paginas */
.page-content.page-not-found #search_widget{
    display: none;
}
/* end otras paginas */


@media(max-width:767px){
    .header-top .row{
        display: unset;
        align-items: unset
    }
    #header .header-nav .top-logo{
        padding: 11px 0;
    }
    #header .header-top .search-widget{
        width: 90%;
    }    
    .search-widget form:before{
        border-top: 20px solid #f1f1f1;
    }
    .footer-legal ul{
        flex-direction: column;
        text-align: center;
    }
    .mobile-container{
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .d-flex{
        display: flex;
        align-items: center;
    }
    .footer-container img{
        width: 50%;
        display: block;
        margin: 0 auto;
    }
}

