/*
This is this front office css
 */

@import "_fonts.css";
@import "_colors.css";
@import "app.css";

/* Globals */

body {
    font-family: 'Lato', sans-serif;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    color: var(--app-text-color);
    font-size: 16.5px;
    font-weight: 400;
}

a {
    text-decoration: none;
    color: var(--app-dark-medium);
}

a, img, i {
    transition: all 300ms ease;
}

.link-with-red-hover:hover {
    color: var(--app-red) !important;
}

.container {
    max-width: 1500px;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    font-family: 'Lato', sans-serif;
}

h1  {

}

h2 {
    font-size: 38px;
}

h3 {
    font-size: 18px;
}

.front-app {
    overflow: hidden;
}

.app-list {
    margin: 1.5rem 0;
}

.app-list li::marker {
    color: var(--app-red) !important;
}

.app-content-header h3 {
    font-size: 2.25rem;
}

/* Checkboxes */
.form-check-input:checked {
    background-color: var(--app-red);
    border-color: var(--app-red);
}

.form-check-input:focus {
    border-color: unset;
    outline: 0;
    box-shadow: 0 0 0 0.25rem var(--app-gray);
}

/* Nav */

/* Nav : logo */

.front-header {
    z-index: 10001;
}

.front-header .app-logo-white {
    max-width: 140px;
}

.front-header .fa-shopping-cart, .front-header .fa-user {
    color: var(--app-red) !important;
    margin: 0.5rem;
}

.front-header-link {
    margin-left :.5rem;
    border-radius: 3px;
    display: flex;
    align-items: center;
    transition: all 300ms ease;
}

.front-header-link > a, .front-header-link > button, .front-header-link #navbarDropdown, .nav-item #navbarDropdown {
    width: 36px;
    display: inline-flex;
    text-align: center;
    color: var(--app-red);
    justify-content: center;
    height: 36px;
    align-items: center;
    border: none;
    border-radius: 3px;
}

.front-header-link #navbarDropdown:after, .nav-item #navbarDropdown:after {
    display: none;
}

.front-header-link:not(.front-mini-cart):hover {
    opacity: .85;
}

.front-header-links-sticky {
    position: fixed;
    top: 0;
    right: 0;
    margin-left: auto;
    width: auto;
    padding-top: .5rem;
    transition: all 300ms ease;
    z-index: 21;
}

.front-header-links-sticky .front-header-link.contact-link {
    display: none;
}

.front-header .mini-cart-nav-link {
    position: relative;
    color: var(--app-red);
}

.front-header .mini-cart-nav-total-items {
    position: absolute;
    top: -8px;
    right: -8px;
    background: white;
    padding: 0px 5px;
    font-size: 12px;
    border-radius: 3px;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

/* Cart animation */

@keyframes cartAnimation{
    0%{
        transform: translate(0, .5rem);
    }

    25% {
        transform: translate(0, 1rem);
    }

    50%{
        transform: translate(0, -.5rem);
    }

    75%{
        transform: translate(0, .25rem);
    }

    100%{
        transform: translate(0, 0);
    }
}

.cartAnimated{
    animation: cartAnimation 2s;
    z-index: 30;
}

.navbar-nav .dropdown-menu{
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    transform: translate(0px, 44px);
}

.navbar-nav.ms-auto {
    /*margin: 0 .25rem;*/
}

.front-header-link.d-lg-none {
    margin: 0;
}
/* Home sliders */

.front-home-slide {
    position: relative;
}

.front-home-slide-title h1 {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    z-index: 10;
    color: white;
    font-size: 3rem;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    font-weight: 900;
    text-transform: uppercase;
    max-width: 80%;
    line-height: 5rem;
}

.app-custom-sliders .slick-track {
    height: 860px;
    filter: brightness(0.5);
}

.app-custom-sliders .slick-track .slick-slide {
    object-fit: cover;
}

.app-custom-sliders .slick-arrow {
    position: absolute;
    top: 50%;
    z-index: 1;
    width: 35px;
    height: 35px;
    margin: 0 1rem;
    background-color: white;
    color: #333;
    border-radius: 3px;
    border: none;
    transition: all 300ms ease;
    display: flex;
    justify-content: center;
    align-items: center;
}

.app-custom-sliders .slick-arrow:hover {
    background-color: var(--app-red);
    color: white;
}

.app-custom-sliders .slick-arrow.slick-prev {
    left: 0;
}

.app-custom-sliders .slick-arrow.slick-next {
    right: 0;
}

/* Menu : primary */

.app-sticky {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 20;
}

.front-header-menu {
    /*background-color: #00000073;*/
    background-color: rgb(37, 36, 43);
}

.front-menu-primary .front-menu-primary-item {
    position: relative;
    list-style: none;
    border-top: solid 1px transparent;
    border-bottom: solid 1px transparent;
    transition: all 300ms ease;
}

.front-menu-primary .front-menu-primary-item:before,
.front-menu-primary .front-menu-primary-item:after {
    background-color: transparent;
    content: "";
    width: 0%;
    height: 2px;
    position: absolute;
    left: 0;
    transition: all 300ms ease;
}

.front-menu-primary .front-menu-primary-item:before {
    top: .5rem;
}
.front-menu-primary .front-menu-primary-item:after {
    bottom: .5rem;
}

.front-menu-primary .front-menu-primary-item:hover:before,
.front-menu-primary .front-menu-primary-item:hover:after{
    width: 100%;
    background-color: white;
}

.front-menu-primary .front-menu-primary-item a {
    font-family: 'Lato Bold', sans-serif;
    font-weight: 500;
    color: white;
    font-size: 16px;
    padding: 0 0.25rem;
}

.front-menu-primary .front-menu-primary-item i {
    color: white;
}

.front-submenu-primary {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 250px;
    background: white;
    padding-left: 0;
}

.front-submenu-primary .front-menu-primary-item {
    padding: .85rem 0.5rem;
    border-left: 3px solid transparent;
}
.front-submenu-primary .front-menu-primary-item:hover {
    border-left: 3px solid var(--app-red);
}

.front-submenu-primary .front-menu-primary-item a {
    color: var(--app-red);
    font-size: 15px;
}

.front-submenu-primary {
    width: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity 800ms ease;
}

.front-menu-primary-item:hover > .front-submenu-primary
{
    width: 250px;
    opacity: 1;
}

.fa-minus:before {
    content: "\f068" !important;
}

.show-submenu {
    position: relative;
    display: block !important;
    opacity: 1 !important;
    width: 100% !important;
    transition: all 800ms ease !important;
    height: auto !important;
}

/* Footer */

footer {
    background-color: #000;
    color: white;
    font-size: 15px;
}

footer a {
    color: white;
    transition: all 300ms ease;
}

footer a:hover {
    color: var(--app-red);
}

footer h4 {
    font-size: 15px;
    color: #fff;
    text-transform: uppercase;
    position: relative;
    margin: 2rem 0 1rem;
}

footer .label {
    color: var(--app-red);
    font-weight: 700;
}

.mini-separator {
    position: relative;
}

.mini-separator:before {
    content: "";
    width: 30px;
    height: 2px;
    background: #a50310;
    position: relative;
    left: 0;
    z-index: 10001;
    display: block;
    margin: 1rem 0;
}

.mini-separator.centred:before {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
}

.front-footer-links h4:after {
    content: "";
    width: 30px;
    height: 2px;
    background: #a50310;
    position: relative;
    left: 0;
    display: block;
    margin: .5rem 0 0;
}

.front-footer-link {
    color: rgba(255,255,255,0.7);
    line-height: 17px;
    display: block;
    margin-bottom: 15px;
    font-size: 15px;
}

.front-footer-label-logo{
    max-height: 40px;
    margin-bottom: 15px;
    transition: all 300ms ease;
}

.front-footer-label-logo:not(.no-filter) {
    filter: saturate(0);
}

.front-footer-links-labels .front-footer-label-logo:hover {
    filter: saturate(1);
}

.front-footer-socials a {
    background-color: white;
    width: 36px;
    display: inline-flex;
    text-align: center;
    color: var(--app-red);
    justify-content: center;
    height: 36px;
    align-items: center;
    transition: all 300ms ease;
}

.front-footer-socials a:hover {
    background-color: var(--app-red);
    color: white;
}

.front-footer-copyright a {
    font-weight: 900;
}

.front-footer-copyright a:hover {
    opacity: .8;
    color: inherit;
}

/* HOME */

/** Products categories */

.front-home-products-categories {
    position: relative;
    margin-top: -5%;
}

.front-home-products-categories-item {
    position: relative;
    display: block;
    transition: all 300ms ease;
    height: 100%;
}

.front-home-products-categories-item img{
    height: 100%;
    object-fit: cover;
    transition: all 300ms ease;
}

.front-home-products-categories-item:hover img{
    filter: brightness(0.75);
}

.front-home-products-categories-item:after {
    font-family: 'Font Awesome 5 Free';
    content: '\f0a9';
    position: absolute;
    width: 30px;
    height: 30px;
    color: #fff;
    font-size: 30px;
    left: 50%;
    margin-left: -15px;
    top: 50%;
    margin-top: -15px;
    line-height: 30px;
    transform: scale(0, 0);
    -webkit-transform: scale(0, 0);
    -ms-transform: scale(0, 0);
    font-weight: 700;
}

.front-home-products-categories-item:hover:after {
    transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transition: all 0.15s ease-in;
    -ms-transition: all 0.15s ease-in;
    -webkit-transition: all 0.15s ease-in;
}

/* Quick links */

.front-home-quick-links a:hover img {
    filter: brightness(0.75);
}

/* News */

.front-home-news-item {
    position: relative;
}

.front-home-news-item-title {
    min-height: 65px;
}

.front-home-news-item:hover img {
    transform: scale3d(1.07, 1.07, 1);
    transition: all 300ms ease;
}

.front-home-news-item-img {
    max-width: 100%;
    overflow: hidden;
}

.front-home-news-item .front-home-news-item-title a {
    color: var(--app-dark-medium);
}

.front-home-news-item:hover .front-home-news-item-title a {
    color: var(--app-red);
}

.front-home-news-custom-slide-nav.custom-slide-nav {
    display: flex;
    justify-content: center;
}

.front-news-single .front-news-single-img img {
    max-height: 520px;
    object-fit: cover;
    object-position: center;
}

.newslist-page .post-image img, .front-home-news-item-img img {
    height: 300px;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

/* News sidebar */

.front-sidebar-item-title {
    position: relative;
}

.front-sidebar-item-title:after {
    background-color: var(--app-red);
    position: absolute;
    left: 0;
    bottom: -2px;
    height: 2px;
    width: 50%;
    content: "";
    transition: all 300ms ease;
}

.front-sidebar-item-title:hover:after {
    transform: translateX(100%);
}

.front-sidebar-news-widget-item:hover {
    color: var(--app-red);
}

.front-sidebar-news-widget-item img {
    height: 65px;
    object-fit: cover;
    object-position: center;
}

/* Products day selection */

.front-home-products-day-selection {
    position: relative;
}

.front-home-products-day-selection-items h3.front-home-products-day-selection-item-title {
    font-size: 32px;
    font-weight: 500;
}

.front-home-products-day-selection-items h4.front-home-products-day-selection-item-price  {
    font-size: 28px;
}

.front-home-products-day-selection-items .front-home-products-day-selection-item-img img {
    max-height: 520px;
    object-fit: contain;
}

.front-home-products-day-selection-item-data {
    transform: translateX(-13%);
}

.front-home-products-day-selection .custom-slide-nav-container {
    position: absolute;
    top: 75%;
    right: 40%;
}

.front-home-products-day-selection .custom-slide-nav {
    display: flex;
    justify-content: flex-end;
}

/* Custom slide nav */

.custom-slide-nav .slick-arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    background-color: #7f7f7f;
    opacity: .5;
    color: white;
    border: none;
    transition: all 300ms ease;
    padding: 0;
    margin: 0 .5rem;
}

.custom-slide-nav .slick-arrow:hover {
    background-color: var(--app-red);
    opacity: 1;
}

.custom-slide-nav .slick-prev.slick-arrow, .custom-slide-nav .slick-next.slick-arrow {
    /*position: absolute;*/
    /*bottom: 0;*/
    /*z-index: 1001;*/
}

/* Quick links 2 */
.front-home-quick-links2-item {
    position: relative;
    transition: all 300ms ease;
    border: dashed 1px var(--app-red);
}
.front-home-quick-links2-item a h2 {
    color: white;
    font-size: 16px;
    font-weight: 500;
}

.front-home-quick-links2-item:hover {
    background-color: white !important;
    color: var(--app-red) !important;
}

.front-home-quick-links2-item:hover a h2 {
    color: var(--app-red) !important;
}

/* Best sales & best deals */

.front-home-best-sales .custom-slide-nav,
.front-home-best-deals .custom-slide-nav {
    display: flex;
    justify-content: center;
}

.front-home-best-deals {
    /*height: 350px;*/
}

.front-home-best-deals-item {
    position: relative;
}

.front-home-best-deals-item-img img {
    /*height: 175px !important;*/
    object-fit: cover;
}

.front-home-best-sales-nav, .front-home-best-deals-nav {
    background-image: url("/images/front/pages/home/best-sales/best-sales-bg.jpeg");
}

.front-home-best-sales .slick-arrow,
.front-home-best-deals .slick-arrow {
    background-color: #000;
    opacity: 1;
}

.front-home-best-sales-our-products,
.front-home-best-deals-our-products {
    position: relative;
    font-size: 12px;
    font-weight: 700;
    color: #333;
    line-height: 31px;
}

.front-home-best-sales-our-products:before,
.front-home-best-sales-our-products:after,
.front-home-best-deals-our-products:before,
.front-home-best-deals-our-products:after{
    content: "";
    width: 50%;
    height: 1px;
    position: absolute;
    background: #333;
    transition: all 0.1s ease-in-out 0s;
    -ms-transition: all 0.1s ease-in-out 0s;
    -webkit-transition: all 0.1s ease-in-out 0s;
}

.front-home-best-sales-our-products:before,
.front-home-best-deals-our-products:before {
    top: -1px;
    left: 0;
}

.front-home-best-sales-our-products:after,
.front-home-best-deals-our-products:after{
    bottom: -1px;
    right: 0;
}

.front-home-best-sales-our-products:hover:before,
.front-home-best-deals-our-products:hover:before{
    left: 50%;
    transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.front-home-best-sales-our-products:hover:after,
.front-home-best-deals-our-products:hover:after {
    right: 50%;
    transform: translateX(50%);
    -ms-transform: translateX(50%);
    -moz-transform: translateX(50%);
    -webkit-transform: translateX(50%);
}

/* Warranties */

.warranties {
    background-color: rgb(243, 243, 243);
}

.warranties-item-img img {
    height: 48px;
}

/****** Pages ******/

/* HISTOIRE */
.front-page .page-header {
    position: relative;
    /*height: 45vh;*/
    min-height: 100px;
}

.page-header img {
    max-width: 280px;
}

/*.front-page .page-header .page-header-bg-img {*/
/*    height: 100%;*/
/*    width: 100%;*/
/*    object-fit: cover;*/
/*    object-position: center;*/
/*    min-height: 520px;*/
/*    filter: brightness(0.75);*/
/*}*/

.front-page .page-header .page-title {
    /*position: absolute;*/
    /*left: 0;*/
    /*right: 0;*/
    /*margin-left: auto;*/
    /*margin-right: 0;*/
    /*!*z-index: 1001;*!*/
    /*top: 50%;*/
    text-align: center;
    color: white;
}

.front-page .page-header h1 {
    font-size: 2rem;
    text-transform: uppercase;
    line-height: normal;
    color: var(--app-gray);
}

.front-page .breadcrumbs {
    font-size: .75rem;
}

.front-page .breadcrumbs a {
    color: var(--app-red);
}

.front-page .breadcrumbs a:hover {
    opacity: .75;
}

.page-content-subtitle h2 {
    font-size: 32px;
    color: var(--app-red);
    padding: 20px 0;
    font-family: 'PT Serif', serif;
    letter-spacing: 2px;
    line-height: inherit;
}

/* SAVOIR-FAIRE */

.block-savoir-faire {
    margin-bottom: 2rem;
}

/* RAYONS */
.rayon-slides {
    max-height: 385px;
}
.rayon-slides .slick-track {
    filter: none;
    height: auto;
}

.rayon-slides .slick-slide img {
    display: block;
    max-height: 385px;
    object-fit: cover;
    object-position: center;
}

/* contact */

.contact h2 {
    font-size: 20px;
    text-transform: uppercase;
    margin-bottom: 2rem;
}

.contact h3 {
    color: var(--app-red);
    font-size: 16px;
}

/* leaflet icon */
.leaflet-marker-icon {
    filter: hue-rotate(160deg);
}

.leaflet-container a.leaflet-popup-close-button {
    top: .18rem;
    right: .18rem;
    color: var(--app-red);
}

/* Shop */

.front-page .product-card-image {
    /*width: 270px;*/
    /*height: 270px;*/
}

/* Mon compte */

.front-page.mon-compte .home-tab.profile-tab .nav-link {
    color: var(--app-red);
}

.front-page.mon-compte .home-tab.profile-tab .nav-link.active {
    background-color: var(--app-red);
    color: white;
}

.my-order-details.show .my-order-summary,
.my-order-details.active-order-details .my-order-summary {
    background-color: var(--app-dark-clear);
    border-radius: 0.375rem 0.375rem 0 0;
    color: white;
    transition: all 300ms ease;
}

.my-order-details.show .my-order-summary .my-order-show-details i {
    color: white !important;
}

/* Single product */

.product-page .tab-content .product-tabs-content-item {
    font-size: 14px;
    line-height: 22px;
}

.product-page .nav-tabs .nav-link.active, .product-page .nav-tabs .nav-item.show .nav-link {
    background-color: var(--app-red);
    color: white;
}

.product-page .nav-tabs .nav-link {
    color: var(--app-red);
}

.product-page .tab-content > .tab-pane {
    min-height: 150px;
    background-color: var(--app-gray);
}

/* Cart */
.app-cart-item-container:nth-child(odd) {
    background: #f5f5f5;
}
