@font-face {
  font-family: 'picto';
  src:  url('../fonts/picto.eot?V1');
  src:  url('../fonts/picto.eot?V1') format('embedded-opentype'),
    url('../fonts/picto.ttf?V1') format('truetype'),
    url('../fonts/picto.woff?V1') format('woff'),
    url('../fonts/picto.svg?V1#picto') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

@font-face {
	font-family: 'ROBOTO';
	src: url('../fonts/Roboto-Regular.eot');
	src: local('☺'), url('../fonts/Roboto-Regular.woff') format('woff'),
		url('../fonts/Roboto-Regular.ttf') format('truetype'),
		url('../fonts/Roboto-Regular.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'ROBOTO';
	src: url('../fonts/Roboto-Bold.eot');
	src: local('☺'), url('../fonts/Roboto-Bold.woff') format('woff'),
		url('../fonts/Roboto-Bold.ttf') format('truetype'),
		url('../fonts/Roboto-Bold.svg') format('svg');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'ROBOTO light';
	src: url('../fonts/Roboto-Light.eot');
	src: local('☺'), url('../fonts/Roboto-Light.woff') format('woff'),
		url('../fonts/Roboto-Light.ttf') format('truetype'),
		url('../fonts/Roboto-Light.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

body {
    font-family: Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.25em;
}

@media (min-width: 1400px) {
    .container {
        width: 1320px;
        max-width: 100%;
    }
}

:root {
    --BlueLight: #008cd2;
    --BlueDark: #003967;

    --GreyLight: #f8f9fa;
    --GreyLight: #f7f7f7;
    --GreyMedium: #e1e1e1;
    --GreyDark: #7a7a7a;
    --GreyMPS: #f2f2f2;
    --GreyMPSdark: #707070;

    --WhiteLight: #dee2e6;
    
    --Black: #232323;
    --BlackMPS: #003967;
}

    
.carousel .carousel-control .icon-next:hover i, .carousel .carousel-control .icon-prev:hover i, .dropdown:hover .expand-more, .page-my-account #content .links a:hover i, .search-widget form button[type=submit] .search:hover, .top-menu .sub-menu a:hover {
    color: var(--BlueLight);
}

.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 {
    font-family: ROBOTO, Arial, "sans-serif";
    text-transform: none;
}

.h1,.h2,.h3,h1,h2,h3 {
    text-transform: none;
    font-weight: normal;
}

p.h3 {
    font-weight: bold;
    text-transform: uppercase;
}

    a {
        color: var(--BlueLight);
    }
    
    a:hover {
        text-decoration: none;
    }
    
    
#header {
    position: sticky;
    top: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-bottom: 2px solid #f6f6f6;
}
    
#header a:hover {
    color: var(--BlueLight);
}

#header .header-nav {
    max-height: none;
}
#header .header-top {
    padding: 10px 0;
}
#header .header-top .menu {
    padding-left: 0;
}    

#header .header-nav .right-nav {
    align-items: center;
    height: 100%;
}
    
#header .header-nav .logo_wrapper {
    padding-top: 10px;
    padding-bottom: 10px;
}

#header .header-nav .blockcart {
        margin-top: .9375rem;
}

@media (max-width: 768px) {
    #header .header-nav .blockcart {
        margin-top: .25rem;
    }
}

#header .header-nav .blockcart,
#header .header-nav .cart-preview.active {
    background-color: transparent;
}
    
#header .header-nav .cart-preview.active i,
#header .header-nav .cart-preview.active a,
#header .header-nav .cart-preview.active a:hover {
    color: var(--BlueLight);
}

#header .header-nav .cart-preview.inactive .cart-products-count,
#header .header-nav .cart-preview.active .cart-products-count {
    display: inline-block;
}

#header .header-nav .cart-preview.active .cart-products-count {
    background: var(--BlueLight);
    padding: 1px;
    border-radius: 50%;
    color: white;
    width: 24px;
    height: 24px;
    padding-top: 2px;
}

#header .header-nav .blockcart .header {
    margin-top: -1px;
}


    #header .top-menu a[data-depth="0"]:hover, a:hover {
    color: var(--BlueLight);
    text-decoration: none;
}
    
    #header #top-menu li.link {
        width: 100%;
    }
    
    #header #top-menu li.link a {
        font-weight: bold;
    }
    
    .top-menu a[data-depth="0"] {
        font-weight: normal;
    }
    #header .header-top a[data-depth="0"] {
        text-transform:none;
    }
    .top-menu a[data-depth="0"] {
        padding: 3px 25px 3px 0;
}
    
#logomobile {
    display: none;
    padding: 15px;
}
#logomobile .navbar-brand.d-block {
    margin: 0;
    max-width: calc(100% - 6px);
    text-align: ceneter;
}
@media (max-width: 768px) {
    .header-top__left, .header-top__right {
        width: auto;
    }
    .header-block__badge {
        top: 1.5em;
    }
    #header .header-nav .blockcart .header {
        margin-top: -.1rem;
        display: flex;
    }
    #logomobile {
        display: block;
    }
}

#mobile_top_menu_wrapper select {
    width: 100%;
}
    
#wrapper {
    background: white;
}

    #wrapper nav.breadcrumb {
        margin-top: -1.563rem;
        margin-left: calc(-1 * (100vw - 100%) / 2);
        margin-right: calc(-1 * (100vw - 100%) / 2);
        padding-left: calc(1 * (100vw - 100%) / 2);
        padding-right: calc(1 * (100vw - 100%) / 2);
        padding-top: .75rem;
        padding-bottom: .75rem;
        background-color: var(--GreyLight);
    }

#index #wrapper {
    padding-top: 0;
}

    .banner {
        margin-left: calc(-1 * (100vw - 100%) / 2);
        margin-right: calc(-1 * (100vw - 100%) / 2);
    }

    .banner img {
        width: 100%;
    }

.bootstrap-touchspin .group-span-filestyle .btn-touchspin, 
.group-span-filestyle .bootstrap-touchspin .btn-touchspin, 
.group-span-filestyle .btn-default {
    background-color: var(--BlueLight);
}

.bootstrap-touchspin .group-span-filestyle .btn-touchspin:hover, 
.group-span-filestyle .bootstrap-touchspin .btn-touchspin:hover, 
.group-span-filestyle .btn-default:hover {
    background-color: var(--BlueDark);
}

.btn-primary {
    background-color: var(--BlueLight);
    /*border-radius: 8px;*/
}

.btn-primary:hover {
    background-color: var(--BlueDark);
}

.form-control {
    background-color: white;
    /*border-radius: 4px;*/
}

.form-control:focus {
    background-color: var(--GreyLight);
    outline: 1px solid var(--BlueLight);
}

#search_widget form input {
    border-radius: 0;
}


/**** Banner ****/

#wrapper .banner {
    margin-bottom: 0;
}

/**** /Banner ****/


.container {
    position: relative;
}



/**** Catégories en page d'accueil ****/

.cc-style-grid_modern .cc-category-card {
    box-shadow: none;
}
.cc-style-grid_modern .cc-category-card:hover {
    transform: translateY(0px) scale(1.005);
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.1);
}

.cc-home-categories-wrapper.cc-style-grid_modern {
    position: relative;
    margin-top: 0;
    padding-top: 60px;
    padding-bottom: 40px;
}

.cc-home-categories-wrapper.cc-style-grid_modern::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 100vw;
    height: 100%;
    background-color: var(--GreyMPS);
    transform: translateX(-50%);
}

.cc-style-grid_modern .cc-category-card {
    background-color: white;
    background-image: none;
    border-radius: 0;
    padding: 40px 25px 10px 25px;
    height: auto;
}

.cc-size-medium .cc-category-image-wrapper {
    height: auto;
}

.cc-style-grid_modern .cc-category-description {
    color: var(--GreyDark);
    margin-bottom: 15px;
}

.cc-style-grid_modern .cc-category-name {
    text-shadow: none;
    color: var(--BlueLight);
    font-weight: normal;
    font-size: 31px;
    margin-bottom: 25px;
    font-family: "ROBOTO light", Arial, "sans-serif"
}

.cc-category-image {
    width: 100%;
    height: auto;
}

.cc-category-cta {
    display: block;
    border: none;
    border-top: 1px solid var(--GreyMPS);
    border-radius: 0;
    background: transparent;
    margin-top: 20px;
    padding: 10px 0 0 0;
    color: var(--GreyDark);
    transition: none;
    overflow: hidden;
    line-height: 42px;
    font-size: 15px;
}

.cc-category-cta::after {
    content: "\e900";
    font-family: picto;
    width: 45px;
    height: 45px;
    float: right;
    color: white;
    background-color: var(--BlueLight);
    text-align: center;
    line-height: 45px;
}

.cc-category-cta:hover {
    background: transparent;
    border-color: var(--GreyMPS);
    transform: translateY(0);
}

.cc-style-grid_modern .cc-category-card:hover .cc-category-cta {
    color: var(--BlueDark);
}

.cc-style-grid_modern .cc-category-card:hover .cc-category-cta::after {
    color: white;
    background-color: var(--BlueDark);
}

/**** /Catégories en page d'accueil ****/






.product-miniature .product-title a {
    color: var(--Black);
}

.product-miniature .product_features {
    margin-bottom: 20px;
    text-align: center;
}

.product-miniature .product_features span {
    color: var(--GreyDark);
}

.product-miniature .product_features.shop-id-2 span {
    display: block;
}



.block-category {
    min-height: 0;
    margin-bottom: 0;
}

.block-category.card-block {
    padding-left: 0;
}

#js-product-list-top p,
#js-product-list-top .sort-by-row{
    color: var(--Black);
}

#search_filters p.h6 {
    text-transform: none !important;
}


.product-flags li.product-flag.discount, .product-flags li.product-flag.discount-amount, .product-flags li.product-flag.discount-percentage {
    background-color: var(--BlueDark);
}

.product-images>li.thumb-container .thumb.selected, .product-images>li.thumb-container .thumb:hover {
    border: var(--BlueDark) 2px solid;
}

.has-discount .discount {
    background-color: var(--BlueDark);
}

.product-price, .has-discount .page-content.page-cms ul, .has-discount p, .has-discount.product-price, .page-content.page-cms .has-discount ul {
    color: #232323;;
}

aside#notifications {
    position: relative;
    margin-bottom: 20px;
}

aside#notifications {
    margin-bottom: 0;
}

aside#notifications .notifications-container .alert {
/*    margin-top: -26px; */
/*    padding-bottom: 1rem; */
}

aside#notifications .notifications-container div,
aside#notifications .notifications-container article {
    margin-bottom: 40px;
    margin-top: -10px;
}


#index aside#notifications .notifications-container div,
#index aside#notifications .notifications-container article {
    margin-bottom: 10px;
    margin-top: 10px;
}

.alert-warning {
    background-color: #ffe9d2;
    border-color: #ffc29a;
}

.alert-warning,
.alert-warning p {
    font-size: 14px;
     color: #ff6b15;
    line-height: 1.5;
}

.alert-warning p:last-child {
     margin-bottom: 0;
}


#js-product-list-top {
    background-color: var(--GreyLight);
}

body#checkout section.checkout-step.-reachable.-current .step-number {
    background-color: var(--BlueDark);
}

body#checkout #top-menu {
    display: none;
}


.done {
    color: var(--BlueDark);
}

.product-miniature .product-title a {
    text-transform: none;
}

.product-container .product-description {
    border-top: 1px solid var(--GreyMedium);
    padding-top: 20px;
    border-bottom: 1px solid var(--GreyMedium);
    margin-bottom: 40px;
}


.product-discounts p.h5 {
    /*color: black;*/
}

.product-price .tax-excluded-symbol{
    font-weight: normal;
    color: var(--GreyDark);
}

.product-miniature, .product-miniature .product {
    margin-bottom: 20px;
}

#products .products .product-miniature:hover, .featured-products .products .product-miniature:hover, .product-accessories .products .product-miniature:hover, .left-column #products .products .product-miniature:hover, .left-column .featured-products .products .product-miniature:hover, .left-column .product-accessories .products .product-miniature:hover {
        transform: translateY(-2px);
        border-radius: 5px;
        box-shadow: 0 12px 24px rgba(0, 0, 0, .1), 0 0 0 1px rgba(0, 0, 0, .02);
    transition: all 0.3s ease;
    }

.product-miniature .highlighted-informations .quick-view:hover {
    color: var(--BlueLight);
}


.product-discounts>.table-product-discounts thead tr th,
.product-discounts>.table-product-discounts tbody tr td {
    border: none;
}

.product-discounts>.table-product-discounts tbody tr,
.product-discounts>.table-product-discounts tbody tr:nth-of-type(even) {
    background: transparent;
}

.product-discounts>.table-product-discounts tr {
    border-bottom: 1px solid var(--GreyMedium) !important;
}

.product-attachments {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
}

.product-attachments p.h5 {
    width: 100%;
}

.product-attachments .attachment {
    width: 50%;
    text-align: center;
    margin-top: 20px;
}

.product-attachments .attachment h4 {
    margin-bottom: 20px;
}

.product-attachments .attachment h4 a {
    padding: 10px;
    background-color: var(--BlueLight);
    color: white;
    /*border-radius: 4px;*/
    min-width: 150px;
    display: inline-block;
}

.product-attachments .attachment h4 a:hover {
    background-color: var(--BlueDark);
}

.product-features {
    margin-top: 40px;
}

.product-description-wrapper {
    margin-top: 20px;
}

.product-prices .tax-shipping-delivery-label {
    display: none;
}




#blockcart-modal .product-name {
    color: var(--BlueLight);
}

#blockcart-modal .modal-title i.material-icons {
    color: var(--BlueDark);
}

/**** Footer ****/

footer.form-footer {
    margin-top: 10px;
}

.block_newsletter {
    max-width: 56.625rem;
}

.block_newsletter  .gdpr_consent {
    margin-top: 20px;
}

.block_newsletter  .psgdpr_consent_message {
    font-size: 12px;
    color: var(--GreyDark);
}

#blockEmailSubscription_displayFooterBefore {
     padding: 2rem 0;
}

#block-newsletter-label {
    text-transform:uppercase;
    font-weight: bold;
}

#footer .block_newsletter p#block-newsletter-condition {
    padding-top: 0;
    font-size: 14px;
}

#footer .row {
    position: relative; 
}
#blockEmailSubscription_displayFooterBefore::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        display: block;
        width: 100vw;
        height: 100%;
        background-color: var(--GreyLight);
        transform: translateX(-50%);
    }



.contact-form .gdpr_consent {
    padding-left: 15px;
    font-size: 12px;
}

.contact-form .psgdpr_consent_message {
    color: var(--GreyDark);
}




.page-content.page-cms ol {
    color: var(--GreyDark);
}



    .footer-container {
        background-color: var(--GreyMPS);
    }
    
.footer-container .h3 {
        margin-bottom: 1.5rem;
}

    .footer-container .h3,
    #block_myaccount_infos .myaccount-title a,
    .block-contact .block-contact-title,
    .footer-container li a,
    #contact-infos a,
    #contact-infos {
        color: var(--GreyMPSdark);
    }
    
    .footer-container li a:hover {
        color: var(--BlackMPS);
        text-decoration: underline;
    }
    
.footer-container #contact-infos .contact_phone-email {
    margin-top: 20px;
}

.footer-container #contact-infos .contact-phone {
    margin-bottom: 10px;
}

.footer-container #contact-infos .icon {
    align-items: center;
    display: flex;
}

.footer-container #contact-infos .material-icons {
    font-size: 20px;
}

    .footer_bottom.row {
        position: relative;
        position: relative;
margin-top: 40px;
padding-top: 20px;
padding-bottom: 20px;
    }

    .footer_bottom.row::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        display: block;
        width: 100vw;
        height: 100%;
        background-color: var(--BlueDark);
        transform: translateX(-50%);
    }

    .footer_bottom.row a {
        color: white;
    }

.footer_bottom_container {
    position: relative;
    display: flex;
    align-items: center;
}

.footer_bottom_component {
    width: 33.33%;
}

.footer_bottom_component.copyright {
    color: white;
    text-align: left;
}


.footer_bottom_component.copyright_faulhaber {
    text-align: center;
}

.footer_bottom_component.copyright_faulhaber img {
    max-width: 350px;
    width: 100%;
    height: auto;
}

.footer_social_network {
    display: flex;
    justify-content: right !important;
}

.footer_social_network .block-social ul {
    align-items: center;
}    

.footer_social_network .block-social ul li {
    width: 2rem;
    height: 2rem;
    background-size: cover;
    margin-bottom: 0;
}

.footer_social_network .block-social ul li.youtube {
    margin-top: .3rem;
}

.footer_social_network .block-social ul li.linkedin {
    width: 1.5rem;
    height: 1.5rem;
    margin-left: .5rem;
}

.footer_social_network .block-social ul li,
.footer_social_network .block-social ul li:hover {
    background-color: transparent;
}

.footer_social_network .block-social ul li:hover {
    opacity: .5;
}

@media (max-width: 768px) {
    .footer_bottom_container {
        display: block;
    }
    .footer_bottom_component,
    .footer_bottom_component.copyright {
        width: 100%;
        text-align: center;
    }
    .footer_bottom_component.copyright_faulhaber img {
        max-width: 250px;
    }
    .footer_social_network {
        justify-content: center!important;
    }
    .footer_bottom_component .block-social.justify-content-center {
        justify-content: center!important;
    }
}

body#checkout section.checkout-step .delivery-options>.row {
    border-right: none;
}

.custom-radio input[type=radio]:checked+span {
    background-color: var(--BlueDark);
}

.delivery-options .mps-exworks {
    color: red;
}

.order-options #delivery_message.mps-exworks {
    border-color: red;
}

#delivery_message {
    border-color: var(--GreyDark);
}

#delivery_message:focus {
  outline: none;
}


.block-social {
    margin-top: 10px;
}

.block-social .facebook {
    background-image: url(../img/facebook.svg);
}

.block-social .youtube {
    background-image: url(../img/youtube.svg);
}

.block-social .linkedin {
    background-image: url(../img/linkedin.svg);
}

.footer_social_network .block-social ul li {
    background-position: center;
}
.footer_social_network .block-social ul li.facebook {
    background-size: 40%;
}
.footer_social_network .block-social ul li.youtube {
    background-size: 90%;
}

