/*--------------------------------------------------------------
Normalize
Styles based on Normalize v5.0.0 @link https://github.com/necolas/normalize.css
--------------------------------------------------------------*/

html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article,
aside,
footer,
header,
nav,
section {
    display: block;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

figcaption,
figure,
main {
    display: block;
}

figure {
    margin: 1em 0;
}

ul,
ol,
li {
    margin: 0;
    padding: 0;
    list-style: none;
}

hr {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;

    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

a:active,
a:hover {
    outline-width: 0;
}

a,
a:focus,
a:hover,
a:active,
a:visited,
button,
button:focus,
button:hover,
button:active,
button:visited,
input,
input:focus,
input:hover,
input:active,
input:visited,
select,
select:focus,
select:hover,
select:active,
select:visited,
textarea,
textarea:focus,
textarea:hover,
textarea:active,
textarea:visited {
    outline: 0;
    text-decoration: none;
}

*:focus {
    outline: none;
}

abbr[title] {
    border-bottom: 1px #767676 dotted;
    text-decoration: none;
}

b,
strong {
    font-weight: inherit;
}

b,
strong {
    font-weight: 400;
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

dfn {
    font-style: italic;
}

mark {
    background-color: #eee;
    color: #222;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

audio,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

img {
    border-style: none;
}

svg:not(:root) {
    overflow: hidden;
}

button,
input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

fieldset {
    border: 1px solid #bbb;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

progress {
    display: inline-block;
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type="checkbox"],
[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    margin-right: 5px;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

details,
menu {
    display: block;
}

summary {
    display: list-item;
}

canvas {
    display: inline-block;
}

template {
    display: none;
}

[hidden] {
    display: none;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
}

button {
    text-decoration: none;
    outline: 0;
}

a {
    outline: 0;
    color: inherit;
    text-decoration: none;
    /*transition: color 300ms cubic-bezier(0.4, 0.8, 0.74, 1);*/
}

a:link,
a:visited:link {
    -webkit-tap-highlight-color: transparent;
}

p a {
    text-decoration: underline;
}

img.scale-with-grid {
    display: block;
    height: auto !important;
    width: 100% !important;
}

.transition {
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.transition2 {
    -webkit-transition: visibility 0s 1s,
    -webkit-transform 1s cubic-bezier(0.75, 0, 0.25, 1);
    transition: visibility 0s 1s,
    -webkit-transform 1s cubic-bezier(0.75, 0, 0.25, 1);
    transition: transform 1s cubic-bezier(0.75, 0, 0.25, 1), visibility 0s 1s;
    transition: transform 1s cubic-bezier(0.75, 0, 0.25, 1), visibility 0s 1s,
    -webkit-transform 1s cubic-bezier(0.75, 0, 0.25, 1);
    will-change: transform;
}

/**
 * Owl Carousel v2.3.3
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,
.owl-carousel .owl-item {
    -webkit-tap-highlight-color: transparent;
    position: relative;
}

.owl-carousel {
    display: none;
    width: 100%;
    z-index: 1;
}

.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
}

.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item,
.owl-carousel .owl-wrapper {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item {
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
    display: block;
    width: 100%;
}

.owl-carousel .owl-dots.disabled,
.owl-carousel .owl-nav.disabled {
    display: none;
}

.no-js .owl-carousel,
.owl-carousel.owl-loaded {
    display: block;
}

.owl-carousel .owl-dot,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-prev {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel button.owl-dot {
    background: 0 0;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit;
}

.owl-carousel.owl-loading {
    opacity: 0;
    display: block;
}

.owl-carousel.owl-hidden {
    opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
    visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
    -ms-touch-action: none;
    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: grab;
}

.owl-carousel.owl-rtl {
    direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
    float: right;
}

.owl-carousel .animated {
    animation-duration: 1s;
    animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
    z-index: 0;
}

.owl-carousel .owl-animated-out {
    z-index: 1;
}

.owl-carousel .fadeOut {
    animation-name: fadeOut;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

.owl-height {
    transition: height 0.5s ease-in-out;
}

.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 0.4s ease;
}

.owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d;
}

.owl-carousel .owl-video-wrapper {
    position: relative;
    height: 100%;
    background: #000;
}

.owl-carousel .owl-video-play-icon {
    position: absolute;
    height: 80px;
    width: 80px;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-top: -40px;
    background: url(owl.video.play.png) no-repeat;
    cursor: pointer;
    z-index: 1;
    -webkit-backface-visibility: hidden;
    transition: transform 0.1s ease;
}

.owl-carousel .owl-video-play-icon:hover {
    -ms-transform: scale(1.3, 1.3);
    transform: scale(1.3, 1.3);
}

.owl-carousel .owl-video-playing .owl-video-play-icon,
.owl-carousel .owl-video-playing .owl-video-tn {
    display: none;
}

.owl-carousel .owl-video-tn {
    opacity: 0;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: opacity 0.4s ease;
}

.owl-carousel .owl-video-frame {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
}

.owl-carousel .owl-stage,
.owl-carousel.owl-drag .owl-item {
    -ms-touch-action: auto;
    touch-action: auto;
}

/*--------------------------------------------------------------
Fonts
--------------------------------------------------------------*/

@font-face {
    font-family: "Avenir";
    src: local("Avenir Light"), url("../fonts/Avenir-Light-07.eot"); /* IE9 Compat Modes */
    src: url("../fonts/Avenir-Light-07.eot?#iefix") format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/Avenir-Light-07.otf") format("opentype"),
        /* Open Type Font */ url("../fonts/Avenir-Light-07.svg") format("svg"),
        /* Legacy iOS */ url("../fonts/Avenir-Light-07.ttf") format("truetype"),
        /* Safari, Android, iOS */ url("../fonts/Avenir-Light-07.woff") format("woff"),
        /* Modern Browsers */ url("../fonts/Avenir-Light-07.woff2") format("woff2"); /* Modern Browsers */
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: "Avenir";
    src: local("Avenir Medium"), url("../fonts/Avenir-Medium-09.eot"); /* IE9 Compat Modes */
    src: url("../fonts/Avenir-Medium-09.eot?#iefix") format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/Avenir-Medium-09.otf") format("opentype"),
        /* Open Type Font */ url("../fonts/Avenir-Medium-09.svg") format("svg"),
        /* Legacy iOS */ url("../fonts/Avenir-Medium-09.ttf") format("truetype"),
        /* Safari, Android, iOS */ url("../fonts/Avenir-Medium-09.woff") format("woff"),
        /* Modern Browsers */ url("../fonts/Avenir-Medium-09.woff2") format("woff2"); /* Modern Browsers */
    font-weight: 400;
    font-style: normal;
}

/*@font-face {
  font-family: "Didot";
  src: url("../fonts/Didot-01.eot");
  src: url("../fonts/Didot-01.eot?#iefix") format("embedded-opentype"),
    url("../fonts/Didot-01.otf") format("opentype"),
    url("../fonts/Didot-01.svg") format("svg"),
    url("../fonts/Didot-01.ttf") format("truetype"),
    url("../fonts/Didot-01.woff") format("woff"),
    url("../fonts/Didot-01.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}*/

/*--------------------------------------------------------------
Structure
--------------------------------------------------------------*/

body {
    color: #000;
    background: #fff;
    font-family: "Avenir", Arial, sans-serif;
    font-weight: 100;
    /*font-size:100%;*/
    font-size: 1.6rem;
    /*letter-spacing: .07rem;*/
    cursor: default;
}

body,
html {
    width: 100%;
    height: auto;
    min-height: 100%;
}

body.menu-open {
    overflow: hidden;
}

html {
    font-size: 62.5%;
    /*font-size: calc(1em * 0.625); IE */
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

.size-thumbnail {
    width: 33%;
    height: auto;
}

.size-medium {
    width: 50%;
    height: auto;
}

.size-large {
    width: 100%;
    height: auto;
}

.size-full {
    max-width: 100%;
    height: auto;
}

.alignleft {
    position: relative;
    display: block;
    float: left;
    margin: 0 1.5em 1.5em 0;
}

.alignright {
    position: relative;
    display: block;
    float: right;
    margin: 0 0 1.5em 1.5em;
}

.aligncenter {
    position: relative;
    display: block;
    clear: both;
    margin: 1.5em auto;
    text-align: center;
}

/*.textZone :focus{outline:none}*/

.wp-block-embed__wrapper {
    display: inline-block;
}

p img {
    display: block;
    max-width: 100%;
    height: auto;
}

input,
select,
th,
td {
    font-size: 1em;
}

.wrapper {
    width: 100%;
    overflow: hidden;
}

section {
    position: relative;
}

section.content {
    position: relative;
    width: 100%;
    padding: 50px 0;
}

body:not(.page-template-home) main {
    margin-top: 100px;
}

@media screen and (max-width: 1020px) {
    body:not(.page-template-home) main {
        margin-top: 70px;
    }

    section.content {
        padding: 30px 0;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  PageNavi
----------------------------------------------------------------------------------------------------------------------------*/

.wp-pagenavi {
    display: none;
    margin: 20px auto auto auto;
    width: 100%;
}

.wp-pagenavi a,
.wp-pagenavi span {
    position: relative;
    font-size: 1.5rem;
    font-weight: 100;
    color: #979797;
    text-decoration: none;
    border: none;
    padding: 0;
    margin: 0 12px;
    letter-spacing: 0.2rem;
}

.wp-pagenavi a.current {
    cursor: default;
    color: #000;
    font-weight: 400;
    /*margin-left: 70px;*/
    margin-right: 70px;
}

.wp-pagenavi a:hover {
    color: #000;
}

.wp-pagenavi span.pages,
.wp-pagenavi .extend,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .last,
.wp-pagenavi .previouspostslink {
    display: none;
}

.wp-pagenavi .current:after {
    content: "";
    position: absolute;
    width: 50px;
    height: 1px;
    background-color: #000;
    display: block;
    left: 35px;
    top: 50%;
}

/*.wp-pagenavi span.current:before {
    left: -70px;
}*/

/*----------------------------------------------------------------------------------------------------------------------------
  Typographie
----------------------------------------------------------------------------------------------------------------------------*/

h1 {
    font-family: "EB+Garamond", serif;
    color: inherit;
    font-size: 6rem;
    line-height: 1.2;
    text-align: center;
    text-transform: none;
    position: relative;
    display: inline-block;
    padding: 0;
    margin: auto;
    font-weight: 400;
    letter-spacing: 0.07rem;
    color: #fff;
    max-width: 65vw;
}

h2 {
    font-family: "EB+Garamond", serif;
    font-size: 2.6rem;
    line-height: 3.2rem;
    text-align: left;
    text-transform: none;
    position: relative;
    padding: 0;
    margin-bottom: 20px;
    color: inherit;
    font-weight: 400;
    display: inline-block;
}

h2.block-headline {
    font-size: 4rem;
    line-height: 1;
    text-align: center;
    display: inline-block;
    margin: auto auto 50px auto;
}

.white {
    color: #fff !important;
}

h2.block-related-post {
    font-size: 3.2rem;
    line-height: 1;
    text-align: center;
    display: inline-block;
    margin: auto auto 30px auto;
}

h3 {
    font-family: "EB+Garamond", serif;
    font-size: 2.5rem;
    line-height: 1.2;
    letter-spacing: normal;
    margin-bottom: 30px;
    text-align: left;
    text-transform: none;
    position: relative;
    padding: 0;
    color: inherit;
    font-weight: 400;
    display: inline-block;
}

h3.white {
    color: #fff;
}

h4 {
    display: block;
    font-family: "EB+Garamond", serif;
    font-size: 1.8rem;
    line-height: 1;
    margin-bottom: 10px;
    text-align: left;
    text-transform: none;
    position: relative;
    color: inherit;
    font-weight: 400;
}

h5 {
    font-size: 1.8rem;
    line-height: 2.2rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #fff;
    text-align: left;
    text-transform: uppercase;
    position: relative;
    display: inline-block;
}

h6 {
    font-size: 1.8rem;
    line-height: 2.2rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: #fff;
    text-align: left;
    text-transform: none;
    position: relative;
    display: inline-block;
    width: 100%;
}

@media screen and (max-width: 1020px) {
    h1 {
        font-size: 3rem;
        line-height: 1.1;
        max-width: 85vw;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Icon Scroll
----------------------------------------------------------------------------------------------------------------------------*/

.icon-scroll,
.icon-scroll:before {
    position: absolute;
    left: 50%;
}

.icon-scroll {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 24px;
    height: 38px;
    bottom: 7vh;
    border: 1px solid #fff;
    border-radius: 25px;
    z-index: 100;
}

.icon-scroll:before {
    content: "";
    width: 3px;
    height: 8px;
    border: 1px solid #fff;
    margin-left: -3px;
    top: 8px;
    border-radius: 4px;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-name: scroll;
}

@-webkit-keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translateY(12px);
    }
}

@keyframes scroll {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: translateY(12px);
    }
}

@media screen and (max-width: 1020px) {
    .icon-scroll {
        display: none;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Overlay
----------------------------------------------------------------------------------------------------------------------------*/

.overlay {
    /* display: none; */
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    z-index: 400;
    overflow: hidden;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    -webkit-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.overlay__content__wrapper {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow-y: scroll;
    width: 100vw;
    height: 100%;
}

.overlay:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #fff;
    /*opacity: .6;*/
    z-index: -1;
}

.overlay__content {
    width: 90%;
    max-width: 900px;
    padding: 20px;
    text-align: center;
    position: relative;
    margin: auto;
}

.btn__close {
    position: absolute;
    top: 20px;
    right: 20px;
    border: 0;

    border: 0;
    cursor: pointer;
    border-radius: 100%;
    color: #333;
    display: inline-block;
    width: 40px;
    height: 40px;
    background: transparent;
    -webkit-transition: transform 0.25s ease-in-out;
    -moz-transition: transform 0.25s ease-in-out;
    -ms-transition: transform 0.25s ease-in-out;
    -o-transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;
}

.btn__close:hover {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.btn__close:before {
    content: "";
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 35px;
    height: 0;
    border-top: 2px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center;
    transform-origin: center;
}

.btn__close:after {
    content: "";
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 35px;
    height: 0;
    border-top: 2px solid #000;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transform-origin: center;
    transform-origin: center;
}

body.overlay__open__search .overlay-search {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
}

#autocomplete-overlay-results {
    display: flex;
    border: 1px solid black;
    flex-direction: column;
    align-items: flex-start;
    margin: -10px 5px 0;
    width: 100%;
    max-height: 50vh;
    overflow: auto;
}

.autocomplete-item {
    border-bottom: 1px solid black;
    /*border-top: 1px solid black;*/
    width: 100%;
    text-align: left;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 20px;
}

.autocomplete-item:last-child {
    border-bottom: 1px solid transparent;
    width: 100%;
    text-align: left;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 20px;
}
.autocomplete-item img {
    width: 50px;
    height: auto;
}
.autocomplete-item a {
   font-size: 18px;
    width:80%;
}

.autocomplete-item a.no-img {
   margin-left: 70px;
}

.autocomplete-item a p {
    font-size: 14px;
    font-style: italic;
    padding: 0 !important;
    font-weight: 500;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Search Form
----------------------------------------------------------------------------------------------------------------------------*/

::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #000000;
}

::-moz-placeholder {
    /* Firefox 19+ */
    color: #000000;
}

:-ms-input-placeholder {
    /* IE 10+ */
    color: #000000;
}

:-moz-placeholder {
    /* Firefox 18- */
    color: #000000;
}

/* Change Autocomplete styles in Chrome*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    /*border: 1px solid green;*/
    /*-webkit-text-fill-color: green;*/
    /*-webkit-box-shadow: 0 0 0px 1000px #999 inset;*/
    /*transition: background-color 5000s ease-in-out 0s;*/
    -webkit-transition-delay: 9999s;
    transition-delay: 9999s;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

.search-title {
    color: #fff;
    font-size: 3rem;
    font-weight: 600;
    text-align: left;
    margin: 5px;
}

.block-search {
    width: 100%;
    position: relative;
}

.block-search input {
    display: block;
    width: 100%;
    /*height: 80px;*/
    border: 0;
    border-radius: 0;
    color: #000;
    padding: 0 0 5px 0;
    background-color: #fff;
    font-family: "EB+Garamond", serif;
    font-size: 5rem;
    line-height: 100%;
    font-weight: 400;
    font-style: normal;
    transition: all 300ms ease;
    margin: 10px 5px;
    border-bottom: 3px solid #000;
}

.block-search .search-submit {
    display: inline-block;
    background-color: transparent;
    border: 0;
    margin: 10px 5px;
}

.block-search.xs {
    position:relative;
    max-width: 450px;
    border-bottom: 3px solid #000;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 50px;
}

.block-search.xs input {
    flex: 1;
    padding: 0 0 10px 0;
    margin: 0;
    font-size: 3.5rem;
    border-bottom: 0px solid #000;
    display: inline-block;
    vertical-align: middle;
}

#autocomplete-page-results {
    position: absolute;
    overflow: auto;
    top: 53px;
    max-height: 57vh;
    z-index: 999;
    background: white;
    width: 100%;
    border: 1px solid black;
}

#autocomplete-overlay-results p,
#autocomplete-page-results p {
    padding: 10px;
}

.block-search.xs .search-submit {
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 1020px) {
    .block-search {
        display: block;
    }

    .search-title {
        font-size: 2.2rem;
        margin: 0 0 10px 0;
    }

    .block-search input {
        width: 100%;
        margin: 0 0 10px 0;
        height: 60px;
        font-size: 4rem;
        padding: 0 0 20px 0;
    }

    .block-search .search-submit {
    }

    .block-search.xs {
        /*max-width: 300px;*/
        margin-bottom: 30px;
    }

    .block-search.xs input {
        font-size: 2.8rem;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Button
----------------------------------------------------------------------------------------------------------------------------*/

.btn,
.woocommerce .woocommerce-message .woocommerce-Button {
    background-color: transparent;
    border: none;
    color: #ed1c24;
    fill: #fff;
    padding: 0;
    display: inline-block;
    text-transform: none;
    font-size: 1.6rem;
    font-weight: 100;
    margin-top: 0;
    margin-bottom: 0;
    z-index: 0;
    position: relative;
    cursor: pointer;
    text-decoration: none;
    z-index: 100;
    border-radius: 0;
    -webkit-transition: transform 0.25s ease-in-out;
    -moz-transition: transform 0.25s ease-in-out;
    -ms-transition: transform 0.25s ease-in-out;
    -o-transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;
}

.woocommerce .woocommerce-message .woocommerce-Button:hover {
    background-color: transparent;
    color: #ed1c24;
}

.btn span.btn__txt,
.btn span.btn__icon svg {
    margin-top: 20px;
    color: #ed1c24;
    fill: #ed1c24;
    transition: 0.5s all cubic-bezier(0.75, 0, 0.25, 1);
    transition-delay: 0.25s;
}

.btn span.btn__txt {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    white-space: nowrap;
}

.btn span.btn__icon {
    display: inline-block;
    vertical-align: middle;
    position: relative;
}

.btn span.btn__icon svg {
    display: block;
    width: 10px;
    height: 10px;
    margin-left: 5px;

    -webkit-transition: transform 0.25s ease-in-out;
    -moz-transition: transform 0.25s ease-in-out;
    -ms-transition: transform 0.25s ease-in-out;
    -o-transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;
}

.btn span.btn__icon__arrow svg {
    width: 8px;
    height: 8px;
}

.btn:hover span.btn__icon:not(.btn__icon__arrow) svg,
.list-products .item-product-woocommerce:hover .btn span.btn__icon svg {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.list-products .item-product-woocommerce:hover .btn {
    -webkit-transform: translate(0, -5px);
    transform: translate(0, -5px);
}

.btn:hover span.btn__icon__arrow svg {
    -webkit-transform: translate(5px);
    transform: translate(5px);
}

.btn2,
.gform_button {
    background-color: transparent;
    border: none;
    color: #000;
    padding: 18px 60px;
    display: inline-block;
    text-transform: none;
    font-size: 1.6rem;
    font-weight: 100;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    z-index: 0;
    position: relative;
    cursor: pointer;
    text-decoration: none;
    border: 1px solid #000;
    border-radius: 0;
    text-align: center;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.btn2:hover,
.gform_button:hover {
    color: #fff;
    background-color: rgba(0, 0, 0, 1);
}

@media screen and (max-width: 1020px) {
    .btn {
        font-size: 1.8rem;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  header
----------------------------------------------------------------------------------------------------------------------------*/

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 3vw;
    z-index: 500;
    background-color: #fff;

    text-align: center;
    backface-visibility: hidden;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 1020px) {
    header {
        overflow: visible;
        padding: 0 20px;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  header Left Nav.
----------------------------------------------------------------------------------------------------------------------------*/

#left-nav {
    position: relative;
    width: 150px;
    z-index: 10;
}

/*----------------------------------------------------------------------------------------------------------------------------
  header brand logo.
----------------------------------------------------------------------------------------------------------------------------*/

header a.brand {
    display: block;
    width: 100%;
    height: 100%;
}

header a.brand img {
    max-width: 100%;
    height: auto;
    display: block;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Social Nav.
----------------------------------------------------------------------------------------------------------------------------*/

.social-nav-item {
    display: inline-block;
    margin: 0 2px;
    vertical-align: middle;
}

.social-nav-item a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;

    width: 30px;
    height: 30px;
    /*line-height: 30px;*/
    text-align: center;
}

.social-nav-item a svg {
    fill: #000;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    transition-delay: 0.25s;
}

.social-nav-item a:hover svg {
    fill: #ed1c24;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Menu Button.
----------------------------------------------------------------------------------------------------------------------------*/

.menu-button {
    border: none;
    background-color: transparent;
    display: none;
    position: relative;
    z-index: 100;
    width: 32px;
    height: 70px;

    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    transition-delay: 0.25s;
}

.line-wrapper {
    margin-bottom: 5px;
}

.menu-button .line {
    width: 32px;
    height: 2px;
    background-color: #000;
    display: block;
    -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);
    transition: -webkit-transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);
    transition: transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);
    transition: transform 0.5s cubic-bezier(0.75, 0, 0.25, 1),
    -webkit-transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);
    will-change: transform;
}

.menu-button .line:nth-child(2) {
    /*  -webkit-transform: scale(0.9);
    transform: scale(0.9);*/
}

.menu-button .line {
    margin-top: 5px;
}

.menu-open .menu-button .line:nth-child(1) {
    -webkit-transform: rotate(-45deg) translate(-1px, 2px);
    transform: rotate(-45deg) translate(-1px, 2px);
}

.menu-open .menu-button .line:nth-child(2) {
    -webkit-transform: scale(1) rotate(45deg) translate(-3px, -3px);
    transform: scale(1) rotate(45deg) translate(-3px, -3px);
}

.menu-open .menu-button .line:nth-child(3) {
    -webkit-transform: scale(0);
    transform: scale(0);
}

@media screen and (max-width: 1000px) {
    header a.brand {
        max-width: 90px;
    }

    .menu-button {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    /*#social-nav.no_main_nav {
      position: absolute;
      bottom: auto;
      right: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      top: 50%;
      text-align: center;
  }   */
}

/*----------------------------------------------------------------------------------------------------------------------------
  Main Nav. container
----------------------------------------------------------------------------------------------------------------------------*/

#main-nav-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100px;
    position: relative;
}

@media screen and (max-width: 1000px) {
    #main-nav-container {
        background-color: #fff;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;

        -webkit-overflow-scrolling: touch;
        overflow-y: auto;
        overflow-x: hidden;
        visibility: hidden;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);

        -webkit-transition: visibility 0s 1s,
        -webkit-transform 1s cubic-bezier(0.75, 0, 0.25, 1);
        transition: visibility 0s 1s,
        -webkit-transform 1s cubic-bezier(0.75, 0, 0.25, 1);
        transition: transform 1s cubic-bezier(0.75, 0, 0.25, 1), visibility 0s 1s;
        transition: transform 1s cubic-bezier(0.75, 0, 0.25, 1), visibility 0s 1s,
        -webkit-transform 1s cubic-bezier(0.75, 0, 0.25, 1);
        will-change: transform;
    }

    .menu-open #main-nav-container {
        /*-ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-content: center;
    width: 100%;

    -ms-flex-direction: column;
    flex-direction: column;


    backface-visibility: hidden;*/

        visibility: visible;
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
        -webkit-transition-delay: 0s, 0s;
        transition-delay: 0s, 0s;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Main Nav.
----------------------------------------------------------------------------------------------------------------------------*/

.main-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#main-nav.alignment_left {
    text-align: left;
}

ul.main-nav-list li {
    margin: 0 20px;
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

ul.main-nav-list li.right-nav-item {
    position: absolute;
    margin: 0 8px;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.main-nav-item a,
.menu-item a {
    display: inline-block;
    position: relative;
    font-family: "Avenir", Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    color: #000;
    padding: 10px 10px;
    z-index: 10;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

body.desktop header .main-nav-item a:hover,
header li.main-nav-item.active > a {
    color: #ed1c24;
}

#right-nav {
    position: relative;
}

ul.right-nav-list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

ul.right-nav-list li {
    position: relative;
    margin: 0 8px;
}

ul.right-nav-list li:last-child {
    margin-right: 0;
}

li.right-nav-item a {
    display: inline-block;
    position: relative;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1;
    text-transform: none;
    color: #000;
    padding: 10px 10px;
    z-index: 10;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

li.right-nav-item a svg {
    stroke: #000;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

li.right-nav-item .nbr {
    position: absolute;
    right: 7px;
    bottom: 7px;
    width: 16px;
    background-color: #000;
    border-radius: 50%;
    text-align: center;
    font-size: 0.9rem;
    line-height: 17px;
    color: #fff;
    height: 16px;
}

li.right-nav-item .nbr.count0 {
    display: none;
}

a.search-btn {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

a.search-btn svg {
    fill: #000;
    stroke: #000;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

body.desktop li.right-nav-item a:hover svg,
body.desktop a.search-btn:hover svg {
    stroke: #ed1c24;
}

@media screen and (max-width: 1400px) {
    .main-nav-item a,
    .menu-item a {
        font-size: 1.3rem;
        padding: 10px 10px;
    }
}

@media screen and (max-width: 1200px) {
    .main-nav-item a,
    .menu-item a {
        font-size: 1rem;
        padding: 10px 6px;
    }
}

@media screen and (max-width: 1000px) {
    #right-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    ul.right-nav-list {
        padding-right: 10px;
        margin-right: 20px;
    }

    ul.right-nav-list:after {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-color: rgba(0, 0, 0, 0.15);
        width: 1px;
        display: block;
        height: 100%;
    }

    ul.right-nav-list li:first-child {
        /*display: none;*/
    }

    ul.right-nav-list li {
        margin: 0 2px;
    }

    #main-nav {
        /*background-color: #ff0000;*/
        width: 80%;
        max-width: 350px;
        padding: 70px 0px 20px 0px;
        margin: auto;
        /*border-bottom: 1px solid rgba(255,255,255,.4);    */
        /*      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);  */
    }

    .main-nav-list {
        display: block;
    }

    ul.main-nav-list li {
        margin: 0;
        display: block;
        padding: 0.6vh 0;
        text-align: center;
    }

    ul.main-nav-list li.right-nav-item {
        position: relative;
        top: auto;
        right: auto;
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
    }

    ul.main-nav-list li.right-nav-item a {
        font-size: 1.8rem;
    }

    .main-nav-item a,
    .menu-item a {
        font-size: 2.5rem;
        padding: 10px 0;
        text-transform: none;
        font-weight: 400;
    }

    .main-nav-item a:after {
        width: 100%;
        left: 0;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Lang Nav.
----------------------------------------------------------------------------------------------------------------------------*/

li.right-nav-item a.lang-nav-show {
    background-color: rgba(255, 255, 255, 0.05);
}

.lang-nav-show:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 4px;
    background-image: url(../images/dropdown.svg);
    background-repeat: no-repeat;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

ul.lang-nav {
    visibility: hidden;
    /*background-color: #FFFFFF;*/
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    /*min-width: 100%;*/
    margin: 0;
    padding: 0;
    text-align: left;
    list-style: none;
    transition: all 0.25s ease-out;
    opacity: 0;
}

.lang-nav-show:hover + ul.lang-nav,
ul.lang-nav:hover {
    visibility: visible;
    /*background-color: rgba(255,255,255,.5);*/
    /*color: #ed1c24;*/
    opacity: 1;

    /*-webkit-animation: fadeIn 250ms ease-out both;
    animation: fadeIn 250ms ease-out both;*/
}

ul.lang-nav li {
    position: relative;
    margin: 0;
    display: block;
}

ul.lang-nav li a {
    background-color: rgba(255, 255, 255, 0.05);
    color: #000;
    width: 100%;
    text-align: left;
    font-size: 1.4rem;
    padding: 10px;
    position: relative;
    display: block;
}

ul.lang-nav li a:hover {
    color: #ed1c24;
}

ul.lang-nav li.current-lang {
    display: none;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Animation menu mobile
----------------------------------------------------------------------------------------------------------------------------*/

@media screen and (max-width: 1000px) {
    ul.main-nav-list li {
        opacity: 0;
        transform: translateY(50px);
        transition: all 300ms 300ms ease;
    }

    body.menu-open ul.main-nav-list li {
        opacity: 1;
        transform: translateY(0px);
        transition: all 300ms 300ms ease;
    }

    body.menu-open ul.main-nav-list li:nth-child(1) {
        transition: all 300ms 600ms ease;
    }

    body.menu-open ul.main-nav-list li:nth-child(2) {
        transition: all 300ms 750ms ease;
    }

    body.menu-open ul.main-nav-list li:nth-child(3) {
        transition: all 300ms 900ms ease;
    }

    body.menu-open ul.main-nav-list li:nth-child(4) {
        transition: all 300ms 1050ms ease;
    }

    body.menu-open ul.main-nav-list li:nth-child(5) {
        transition: all 300ms 1200ms ease;
    }

    body.menu-open ul.main-nav-list li:nth-child(6) {
        transition: all 300ms 1350ms ease;
    }

    body.menu-open ul.main-nav-list li.right-nav-item {
        transition: all 300ms 1450ms ease;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Block title
----------------------------------------------------------------------------------------------------------------------------*/

.block-center {
    position: relative;
    width: 100%;
    text-align: center;
}

.block__title__v1 {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;

    color: #000;
    font-weight: 400;
    font-size: 6rem;
    text-transform: uppercase;
}

.block__title__v2 {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;

    color: #000;
    font-weight: 400;
    font-size: 5rem;
    text-transform: uppercase;
}

.block__title__v2:after {
    content: "";
    position: absolute;
    left: 50%;
    top: calc(100% + 20px);
    display: inline-block;
    height: 120px;
    width: 2px;
    margin-left: auto;
    margin-right: auto;
    background-color: #b5a58b;
    transform: translateX(-50%);
}

.block__title__v1 span:first-child,
.block__title__v2 span:first-child {
    position: relative;
    display: inline-block;
    /*color: #b8a88f;*/
    text-transform: none;
    position: relative;
    line-height: 1;
    font-style: italic;
}

.block__title__v1 span:last-child,
.block__title__v2 span:last-child {
    position: relative;
    display: inline-block;
    /*margin-top: 5px;*/
    font-size: 130%;
    line-height: 1;
}

/* Alignement du titre */
.block__title__left {
    text-align: left;
}

.block__title__center {
    text-align: center;
}

.block__title__right {
    text-align: right;
}

/* Couleur de chaque ligne du titre */
.block__title__white__white span:first-child {
    color: #fff;
}

.block__title__white__white span:last-child {
    color: #fff;
}

.block__title__gold__black span:first-child {
    color: #bda88b;
}

.block__title__gold__black span:last-child {
    color: #000;
}

/* Line du titre */
.block__title__line__horizontal__line2 span:last-child:after {
    content: "";
    position: absolute;
    bottom: 9px;
    left: -140px;
    display: inline-block;
    height: 2px;
    width: 120px;
    background-color: #fff;
}

.block__title__line__horizontal__line1 span:first-child:after {
    content: "";
    position: absolute;
    bottom: 7px;
    left: -140px;
    display: inline-block;
    height: 2px;
    width: 120px;
    background-color: #b8a88f;
}

.block__title__line__horizontal__line2__gold__right span:last-child:after {
    content: "";
    position: absolute;
    bottom: 9px;
    right: -140px;
    display: inline-block;
    height: 2px;
    width: 120px;
    background-color: #bda88b;
}

@media screen and (max-width: 1020px) {
    .block__title__v1 {
        font-size: 3.5rem;
    }

    .block__title__v2 {
        font-size: 3rem;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Posts Page
----------------------------------------------------------------------------------------------------------------------------*/

.post_infos {
    display: flex;
    margin-bottom: 30px;
    align-items: center;
}

.post_cat {
    position: relative;
    background-color: #000;
    color: #fff;
    padding: 5px 10px 5px 20px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 100;
    font-size: 1.1rem;
    line-height: normal;
}

.post_cat:before {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 100%;
    background-color: #fff;
    top: 50%;
    left: 8px;
    display: block;
    position: absolute;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.post_infos_sep {
    width: 20px;
    height: 1px;
    background-color: #000;
    margin: 0 20px;
}

.post_date {
    font-family: "EB+Garamond", serif;
    color: inherit;
    font-size: 1.7rem;
    line-height: 1;
    font-weight: 400;
}

.post_date span {
    text-transform: capitalize;
}

.related_post .post_infos {
    justify-content: center;
    align-content: center;
    margin: 0;
}

.related_post .post_cat {
    background-color: #fff;
    color: #000;
    padding: 5px 10px 5px 20px;
    margin-right: 20px;
}

.related_post .post_cat:before {
    background-color: #000;
}

.related_post .post_infos_sep {
    display: none;
}

.related_post .post_date {
    color: #fff;
}

.related_post {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
    margin-left: -20px;
    margin-right: -20px;
    width: 100%;
}

.related_post article {
    position: relative;
    width: 50%;
    padding: 0 20px;

    display: block;
}

.related_post article a {
    position: relative;
    display: block;
    /*background: #000; */
    overflow: hidden;
}

.related_post_infos {
    position: absolute;
    z-index: 10;
    width: 80%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.related_post_img {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 60%;
    background-color: #000;
}

.related_post_img img {
    opacity: 0.7;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    position: absolute;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.related_post article a:hover .related_post_img img {
    -ms-transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -ms-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

@media screen and (max-width: 1020px) {
    .post_date {
        font-size: 1.2rem;
    }

    .post_cat {
        font-size: 0.8rem;
    }

    .related_post {
        margin-left: 0px;
        margin-right: 0px;
    }

    .related_post article {
        width: 100%;
        padding: 0;
        margin: 0 0 40px 0;
    }

    h2.block-related-post {
        font-size: 2.2rem;
    }

    .related_post h2.block-related-post {
        margin: 0;
    }

    .related_post .post_infos {
        display: none;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Home Banner
----------------------------------------------------------------------------------------------------------------------------*/

section.banner {
    position: relative;
    width: 100%;
    height: 100vh;
    background-color: #f5f5f5;
    min-height: 650px;
    margin-bottom: 50px;
}

.slider__home {
    position: absolute;
    width: 100%;
    height: 100%;
}

.slider__home .owl-stage-outer {
    height: 100%;
}

.slider__home .owl-stage {
    height: 100%;
}

.slider__home .owl-dots {
    position: absolute;
    top: 50%;
    right: 50px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.slider__home .owl-dots .owl-dot {
    display: block;
    margin: 20px 0;
}

.slider__home .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    background: #fff;
    opacity: 0.2;
    display: block;
    -webkit-backface-visibility: visible;
    transition: opacity 0.2s ease;
    border-radius: 50%;
}

.slider__home .owl-dots .owl-dot.active span {
    opacity: 1;
}

.slider__home .owl-item {
    height: 100%;
    background-color: #000;
}

.slider__home .item {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    overflow: hidden;
}

.slider__home .slide__picture {
    z-index: 10;
    opacity: 0.7;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}

.slider__home .slide__infos {
    z-index: 100;
    position: relative;
    width: 90%;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-direction: column;
}

.slider__home .slide__infos__title {
    position: relative;
    color: #fff;
    margin-bottom: 30px;
    font-size: 6rem;
    font-weight: 400;
    line-height: 1;
    text-align: center;
}

.slider__home .slide__infos__desc {
    color: #fff;
    font-size: 2.2rem;
    font-weight: 100;
    text-transform: uppercase;
    line-height: 3.5rem;
    text-align: center;
}

.btn__slide {
    position: absolute;
    bottom: 15vh;
}

.owl-nav {
    position: absolute;
    z-index: 100;
    right: 50px;
    bottom: 50px;
}

.owl-nav button {
    padding: 0;
    margin: 0;
    position: relative;
    width: 18px;
}

.owl-nav button.owl-prev {
    margin-right: 40px;
}

.owl-nav button svg {
    display: block;
    width: 100%;
    height: auto;
}

.owl-nav button.owl-next svg {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

@media screen and (max-width: 1020px) {
    section.banner {
        height: 95vh;
        min-height: 420px;
    }

    .slider__home .slide__infos__title {
        font-size: 5rem;
    }

    .slider__home .owl-dots {
        position: absolute;
        top: auto;
        bottom: 50px;
        right: auto;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        transform: translate(-50%, 0%);
    }

    .slider__home .owl-dots .owl-dot {
        display: inline-block;
        margin: 0 10px;
    }

    .slider__home .owl-nav {
        display: none;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Page Banner
----------------------------------------------------------------------------------------------------------------------------*/

#breadcrumbs {
    padding: 0;
    font-size: 1.4rem;
    font-weight: 300;
}

#breadcrumbs a {
    color: #000;
    text-decoration: underline;
}

.banner__page {
    /*display: block;*/
    position: relative;
    overflow: hidden;
    margin: 0 0 40px 0;
    /*padding-bottom: 30%;*/
    height: 300px;
    background: #f5f5f5;

    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -ms-flex-align: center;
    align-content: center;
    align-items: center;
}

.banner__page__bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
}

.banner__page__bg img {
    opacity: 0.6;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    position: absolute;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

@media screen and (max-width: 1020px) {
    .banner__page {
        height: 200px;
        margin-bottom: 20px;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Block Paragraphe
----------------------------------------------------------------------------------------------------------------------------*/

.block-paragraphe {
    width: 100%;
    text-align: left;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Block Images
----------------------------------------------------------------------------------------------------------------------------*/

.block-image {
    position: relative;
    /*padding: 0;*/
    margin-bottom: 50px;
    width: 100%;
    padding-bottom: 40%;
}

.container.fullscreen .block-image {
    padding-bottom: 38%;
}

img.absolute-cover {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    position: absolute;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

@media screen and (max-width: 1020px) {
    .block-image {
        padding-bottom: 60%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Slider content
----------------------------------------------------------------------------------------------------------------------------*/

.block-slider-content {
    position: relative;
    padding: 0;
    width: 100%;
}

.block-slider-content .item {
    position: relative;
    padding-bottom: 40%;
    width: 100%;
    height: 100%;
}

.block-slider-content .slide__picture {
    z-index: 10;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}

.block-slider-content .owl-nav {
    position: relative;
    z-index: 100;
    right: auto;
    bottom: auto;
    text-align: right;
    padding-top: 25px;
}

.block-slider-content .owl-nav button {
    width: 15px;
    opacity: 0.2;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.block-slider-content .owl-nav button:hover {
    opacity: 1;
}

.block-slider-content .owl-nav button svg {
}

@media screen and (max-width: 1020px) {
    .block-slider-content .item {
        padding-bottom: 60%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Emphase
----------------------------------------------------------------------------------------------------------------------------*/

.block-emphase,
.block-histoire {
    position: relative;
    padding: 0;
    width: 100%;
    padding-bottom: 40%;
    overflow: hidden;
}

.cache {
    position: absolute;
    background-color: #fff;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}

.block-emphase-infos {
    position: absolute;
    padding: 25px 50px;
    background-color: rgba(42, 48, 53, 0.95);
    z-index: 10;
    /* margin-left: 65%; */
    text-align: left;
    height: 100%;
    width: 35%;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
}

.block-emphase-logo {
    width: 120px;
    height: auto;
    display: block;
    margin-bottom: 30px;
}

@media screen and (max-width: 1020px) {
    .block-emphase {
        padding-bottom: 0;
    }

    .block-emphase-infos {
        position: relative;
        padding: 25px;
        top: auto;
        right: auto;
        width: 100%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Histoire
----------------------------------------------------------------------------------------------------------------------------*/

.block-histoire {
    background-color: #000;
}

.block-histoire .block-emphase-infos {
    width: 100%;
    text-align: center;
    background-color: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    align-items: center;
}

.block-histoire img {
    opacity: 0.5;
}

.block-histoire p {
    text-align: center;
}

.block-histoire-infos-inner {
    width: 90%;
    max-width: 700px;
}

.block-histoire-infos-inner h3 {
    text-align: center;
}

@media screen and (max-width: 1020px) {
    .block-histoire {
        padding-bottom: 0;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Equipe
----------------------------------------------------------------------------------------------------------------------------*/

.block-team {
    position: relative;
    padding: 0;
    width: 100%;
}

ul.persons {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
    margin-left: -20px;
    margin-right: -20px;
}

ul.persons li {
    position: relative;
    width: 25%;
    padding: 0 20px;
    margin-bottom: 40px;
    text-align: left;
    overflow: hidden;
}

.person-photo-wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 100%;
    margin-bottom: 20px;
}

ul.persons li h4 {
    display: block;
    margin-bottom: 5px;
}

ul.persons li span {
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    color: #666666;
    font-weight: 300;
}

@media screen and (max-width: 1020px) {
    ul.persons li {
        width: 50%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Form
----------------------------------------------------------------------------------------------------------------------------*/

.block-form {
    text-align: left;
    flex: 1;
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Video
----------------------------------------------------------------------------------------------------------------------------*/

.block-video {
    position: relative;
    padding: 0;
    width: 100%;
    text-align: left;
}

.video__wrapper {
    position: relative;
    width: 100%;
    display: inline-block;
    padding-bottom: 56.25%;
    background-color: #000;
}

.videos__cover {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-position: center;
    background-size: cover;
    /*opacity: .8;*/
}

.videos__cover {
    opacity: 1;
}

.videos__play {
    content: "";
    position: absolute;
    top: 50%;
    right: auto;
    bottom: auto;
    left: 50%;
    overflow: hidden;
    width: 100px;
    height: 100px;
    background: transparent;
    border: 0;
    border-radius: 50%;
    opacity: 1;
    -webkit-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    -webkit-transition: opacity 1.2s ease;
    transition: opacity 1.2s ease;
}

.videos__play:after {
    content: "";
    position: absolute;
    top: 50%;
    right: auto;
    bottom: auto;
    left: 50%;
    height: 0;
    width: 0;
    border-bottom: 25px solid transparent;
    border-left: 38px solid #fff;
    border-top: 25px solid transparent;
    -webkit-transform: translate3d(-40%, -50%, 0);
    transform: translate3d(-40%, -50%, 0);
}

.videos__player {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100;
}

@media screen and (max-width: 1020px) {
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Technique
----------------------------------------------------------------------------------------------------------------------------*/

.block-technique {
    position: relative;
    padding: 0;
    width: 100%;
}

ul.technique-liste {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
    margin-left: -20px;
    margin-right: -20px;
}

ul.technique-liste li.technique-item {
    width: 33.3333%;
    padding: 0 20px;
    margin-bottom: 40px;
    text-align: left;
}

ul.technique-liste li.technique-item .photo-wrapper {
    position: relative;
    width: 45%;
    padding-bottom: 45%;
    margin: auto auto 10px auto;
}

ul.technique-liste li.technique-item h3 {
    margin-left: auto;
    margin-right: auto;
    display: block;
    text-align: center;
}

@media screen and (max-width: 1020px) {
    ul.technique-liste li.technique-item {
        width: 100%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Home Shop
----------------------------------------------------------------------------------------------------------------------------*/

section.block-shop {
    position: relative;
    width: 100%;
    padding: 60px 0 50px 0;
    background-color: transparent;
    margin-bottom: 50px;
    background-image: url(../images/block-shop-bg.jpg);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
}

section.block-shop .products-list-wrapper {
    margin-bottom: 0;
    margin-top: 0;
}

ul.list-products.columns-3 li {
    /*width: 33.3333%;*/
    width: calc(33.3333% - 30px);
    margin-right: 15px;
    margin-left: 15px;
    margin-bottom: 25px;
}

@media screen and (max-width: 1020px) {
    section.block-shop {
        background-size: 340%;
    }

    ul.list-products.columns-3 li {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
    }

    ul.list-products.columns-3 {
        margin-right: 0;
        margin-left: 0;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  BLock Découvrir Atelier
----------------------------------------------------------------------------------------------------------------------------*/

section.block-decouvrir-atelier {
    position: relative;
    width: 100%;
    padding: 50px 0;
}

.block-decouvrir-atelier__wrapper {
    position: relative;
    padding: 0;
    width: 100%;
    /*padding-bottom: 80%;*/
}

.block-decouvrir-atelier__wrapper .illustration img {
    object-fit: cover;
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.block-decouvrir-atelier__infos {
    position: relative;
    padding: 100px 50px;
    background-color: rgba(42, 48, 53, 0.95);
    z-index: 10;
    margin-left: 65%;
    text-align: left;
}

.block-decouvrir-atelier__infos p {
    color: #fff;
}

.block-decouvrir-atelier__logo {
    width: 120px;
    height: auto;
    display: block;
    margin-bottom: 30px;
}

@media screen and (max-width: 1020px) {
    section.block-decouvrir-atelier {
        padding: 25px 0;
    }

    .block-decouvrir-atelier__infos {
        position: relative;
        padding: 25px;
        z-index: 10;
        color: #fff;
        margin-left: auto;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  News
----------------------------------------------------------------------------------------------------------------------------*/

section.news {
    position: relative;
    width: 100%;
    padding: 50px 0;
}

.news__wrapper {
    margin-bottom: 30px;
    display: block;
    width: 100%;
}

.posts__list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;

    margin-left: -20px;
    margin-right: -20px;
}

.news__wrapper article {
    text-align: left;
    padding: 0 20px;
    margin-bottom: 40px;
    /*width: 33.3333%;*/
    width: 100%;
    margin-top: 0;
}

.news__wrapper article a {
    display: block;
}

.news__wrapper figure:not(.wp-block-embed) {
    display: block;
    position: relative;
    overflow: hidden;
    margin: 0;
    padding-bottom: 100%;
    background: rgba(0, 0, 0, 0.1);
    z-index: 100;
}

.news__wrapper figure img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    position: absolute;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.news__wrapper .article__content {
    padding: 20px 0 0 0;
    color: #000;
    position: relative;
}

.news__wrapper .article__desc {
}

.news__wrapper .article__desc p {
    padding: 0 0 20px 0;
    color: #666;
}

.columns {
    display: flex;
    width: 100%;
}

.column {
    display: flex;
    flex: 1;
    flex-direction: column;
}

.nested-column {
    flex: 0.8;
}

.column:not(.nested-column) article {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
}

.column:not(.nested-column) article a.figure-link {
    width: 50%;
    display: inline-block;
}

.column:not(.nested-column) article .article__content {
    flex: 1;
    padding: 0 0 0 22px;
}

.news__wrapper .article {
    display: flex;
    flex: 1;
    flex-direction: column;
    flex-basis: auto;
}

.news__wrapper article a:hover figure img {
    -ms-transform-origin: 50% 50%;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -ms-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.owl-carousel.slider__news {
    display: none;
}

.owl-carousel.slider__news .owl-stage-outer {
    overflow: visible !important;
}

.owl-carousel.slider__news .owl-item {
    opacity: 1;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -ms-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

.owl-carousel.slider__news .owl-item:not(.active) {
    opacity: 0.5;
}

.news__wrapper .slider__news article {
    padding: 0 7.5vw 0 0;
}

@media screen and (max-width: 1020px) {
    .page-template-home .posts__list,
    .page-template-page-home .posts__list,
    .home .posts__list {
        display: none !important;
    }

    .owl-carousel.slider__news {
        display: block;
    }

    .columns,
    .column,
    .column:not(.nested-column) article {
        display: block;
    }

    .column:not(.nested-column) article a.figure-link {
        width: 100%;
    }

    .column:not(.nested-column) article .article__content {
        padding: 20px 0 0 0;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Page Artists
----------------------------------------------------------------------------------------------------------------------------*/

.page-artists-wrapper {
    width: 100%;
    text-align: left;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
}

.page-artists-col1 {
    position: relative;
    width: 50%;
}

.page-artists-col2 {
    flex: 1;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 50%;
}

/*.page-artists-col2:after {
    content: "";
    position: relative;
    padding-bottom: 100%;
}*/

.artist-photo-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.artist-photo-wrapper img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    -o-object-fit: contain;
    position: absolute;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.fade-in {
    animation: fadeIn ease 1s;
    -webkit-animation: fadeIn ease 1s;
    -moz-animation: fadeIn ease 1s;
    -o-animation: fadeIn ease 1s;
    -ms-animation: fadeIn ease 1s;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

h1.page-artists-title {
    font-size: 4rem;
    color: #000;
    margin-bottom: 50px;
}

.page-artists-list {
    column-count: 2;
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-gap: 30px;
    -moz-column-gap: 30px;
    -webkit-column-gap: 30px;
}

.letter-list {
    position: relative;
    /*margin-bottom: 40px;*/
    padding-top: 5px;
    -webkit-column-break-inside: avoid; /* Chrome, Safari */
    page-break-inside: avoid; /* Theoretically FF 20+ */
    break-inside: avoid-column; /* IE 11 */
    display: table; /* Actually FF 20+ */
}

.letter-list li {
    position: relative;
}

.page-artists-link {
    position: relative;
    color: #000;
    margin-bottom: 10px;
    padding-bottom: 10px;
    display: inline-block;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.page-artists-link.count0 {
    cursor: default !important;
}

.page-artists-link:hover {
    color: #ed1c24;
}

.page-artists-link:after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 50px;
    height: 1px;
    left: 0;
    bottom: 0;
    pointer-events: none;
    background-color: #ed1c24;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
    transition: 0.5s transform cubic-bezier(0.75, 0, 0.25, 1);
}

.page-artists-link:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left center;
    transform-origin: left center;
}

@media screen and (max-width: 1020px) {
    .page-artists-list {
        /*column-count: 1;
        -moz-column-count: 1;
        -webkit-column-count: 1;*/
    }

    .page-artists-col1 {
        width: 100%;
    }

    .page-artists-col2 {
        display: none;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Search Post
----------------------------------------------------------------------------------------------------------------------------*/

.search article {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;

    text-align: left;
    padding: 0;
    margin-bottom: 30px;
    width: 100%;
}

.search article a.figure-link {
    width: 25%;
    display: inline-block;
}

.search article figure {
    display: block;
    position: relative;
    overflow: hidden;
    margin: 0;
    padding-bottom: 100%;
    background: rgba(0, 0, 0, 0.1);
    z-index: 100;
}

.search article .article__content {
    flex: 1;
    padding: 0 0 0 50px;
    color: #000;
    position: relative;
}

.search article .article__desc p {
    padding: 0 0 20px 0;
    color: #666;
}

@media screen and (max-width: 1020px) {
    .search article a.figure-link {
        width: 100%;
        display: inline-block;
    }

    .search article .article__content {
        padding: 20px 0 0 0;
    }

    .search article figure {
        padding-bottom: 60%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Block Contact
----------------------------------------------------------------------------------------------------------------------------*/

.block-contact {
    text-align: left;
    margin-bottom: 50px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    /* -ms-flex-align: center; */
    align-content: flex-start;
    align-items: stretch;
}

.block-contact-form {
    flex: 1;
}

.block-contact-information {
    width: 400px;
    padding-left: 150px;
}

.block-contact h3 {
    text-align: left;
    display: block;
    margin-bottom: 40px;
}

.block-contact-information-block {
    margin-bottom: 50px;
    text-align: left;
}

.block-contact-information-block h3 {
    margin-bottom: 10px;
}

.block-contact-map {
    width: 100%;
    text-align: left;
}

.map_wrapper {
    width: 100%;
    height: 500px;
}

@media screen and (max-width: 1020px) {
    .block-contact {
        flex-direction: column-reverse;
    }

    .block-contact-form {
        margin-bottom: 50px;
    }

    .block-contact-information {
        width: 100%;
        padding-left: 0;
    }

    .map_wrapper {
        height: 250px;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  GravityForm
----------------------------------------------------------------------------------------------------------------------------*/

.gform_wrapper input::-webkit-input-placeholder,
.gform_wrapper textarea::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #6b6b6b;
    font-size: 1.4rem;
    font-style: italic;
}

.gform_wrapper input::-moz-placeholder,
.gform_wrapper textarea::-moz-placeholder {
    /* Firefox 19+ */
    color: #6b6b6b;
    font-size: 1.4rem;
    font-style: italic;
}

.gform_wrapper input:-ms-input-placeholder,
.gform_wrapper textarea:-ms-input-placeholder {
    /* IE 10+ */
    color: #6b6b6b;
    font-size: 1.4rem;
    font-style: italic;
}

.gform_wrapper input:-moz-placeholder,
.gform_wrapper textarea:-moz-placeholder {
    /* Firefox 18- */
    color: #6b6b6b;
    font-size: 1.4rem;
    font-style: italic;
}

.gform_wrapper label a {
    color: #ed1c24;
    text-decoration: underline;
}

.page-template-contact .gform_wrapper,
.page-template-page-contact .gform_wrapper {
    margin-right: auto;
    margin-left: auto;
    text-align: left;
}

.page-template-contact .gform_wrapper .gform_fields,
.page-template-page-contact .gform_wrapper .gform_fields {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
}

.page-template-contact .gform_wrapper .gform_fields li.padding-right,
.page-template-page-contact .gform_wrapper .gform_fields li.padding-right,
.page-template-contact .gform_wrapper .gform_fields li.padding-left,
.page-template-page-contact .gform_wrapper .gform_fields li.padding-left {
    width: 50%;
}

.page-template-contact .gform_wrapper .gform_fields li.padding-right,
.page-template-page-contact .gform_wrapper .gform_fields li.padding-right {
    padding-right: 20px;
}

.page-template-contact .gform_wrapper .gform_fields li.padding-left,
.page-template-page-contact .gform_wrapper .gform_fields li.padding-left {
    padding-left: 20px;
}

.page-template-contact .gform_wrapper .gform_fields li.checkbox,
.page-template-page-contact .gform_wrapper .gform_fields li.checkbox {
    padding: 0;
    width: 100%;
}

.gform_wrapper .gfield {
    width: 100%;
    flex-wrap: wrap;
    text-align: left;
}

.gfield_label {
    padding: 0 0 12px 12px;
    display: inline-block;
}

.page-template-contact .gfield.checkbox label .gfield_required,
.page-template-page-contact .gfield.checkbox label .gfield_required {
    display: none;
}

.gform_wrapper .ginput_container {
    width: 100%;
    margin-bottom: 20px;
}

.gform_wrapper .ginput_container input[type="text"],
.gform_wrapper .ginput_container input[type="email"],
.gform_wrapper .ginput_container input[type="tel"] {
    padding: 12px;
    width: 100%;
    border: solid 1px #efefef;
    background-color: #efefef;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    border-radius: 0;
}

.gform_wrapper textarea {
    padding: 12px;
    width: 100%;
    border: solid 1px #efefef;
    background-color: #efefef;
    outline: none !important;
}

.gform_wrapper .gfield_checkbox li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    /* -ms-flex-align: center; */
    align-content: flex-start;
    align-items: stretch;
}

.gform_wrapper .gfield_checkbox [type="checkbox"],
.woocommerce .woocommerce-form__input-checkbox {
    /*display: none;*/
    position: relative;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    background: #efefef;
    border: 1px solid #efefef;
    border-radius: 0px;
    box-sizing: border-box;
    position: relative;
    box-sizing: content-box;
    width: 16px !important;
    height: 16px !important;
    transition: all 0.3s linear;
    margin-right: 10px !important;
    padding: 0 !important;
    display: inline-block !important;
}

.gform_wrapper .gfield_checkbox [type="checkbox"]:checked,
.woocommerce .woocommerce-form__input-checkbox:checked {
    border: 1px solid #ed1c24;
    background-color: transparent;
}

.gform_wrapper .gfield_checkbox [type="checkbox"]:checked:before,
.woocommerce .woocommerce-form__input-checkbox:checked:before {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    top: 3px;
    left: 3px;
    color: #ed1c24;
    border: 1px solid #ed1c24;
    background-color: #ed1c24;
}

.gform_wrapper .gfield_checkbox label {
    /*display: flex;*/
    flex: 1 1;
    cursor: pointer;
}

/*.gform_wrapper .gfield_checkbox label::before {
    content: "";
    font-family: "icomoon";
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    width: 18px;
    height: 18px;
    margin: 0.5em 15px 0 3px;
    border: 1px solid #F3CBC9;
    font-size: .75rem;
    color: #fff;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.gform_wrapper .gfield_checkbox [type="checkbox"]:checked+label:before {
    color: #ed1c24;
    border: 1px solid #ed1c24;
    background-color: #ed1c24;
}*/

.gform_wrapper .gfield_error .validation_message {
    background: #ed1c24;
    margin-bottom: 20px;
    padding: 5px 13px;
    font-size: 1.4rem;
}

.gform_wrapper .validation_message {
    width: 100%;
    padding: 13px;
    color: #fff;
    margin-top: -20px;
}

.validation_error {
    margin-bottom: 20px;
}

@media screen and (max-width: 1020px) {
    .page-template-contact .gform_wrapper .gform_fields li.padding-right,
    .page-template-page-contact .gform_wrapper .gform_fields li.padding-right,
    .page-template-contact .gform_wrapper .gform_fields li.padding-left,
    .page-template-page-contact .gform_wrapper .gform_fields li.padding-left {
        width: 100%;
        padding: 0;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  404
----------------------------------------------------------------------------------------------------------------------------*/

body.error404 {
    background-image: url(../images/404.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}

/*
body.error404 {
    height: 100vh;
    overflow: hidden;
    background-image: url(../images/404.jpg);
    background-size: cover;
}

body.error404 main {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
}

body.error404 .wrapper {
    height: 100%;
}

section.page404 {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}*/

section.page404 {
    position: relative;
    height: calc(100vh - 230px);
    min-height: 550px;
}

section.page404 .container404 {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 90%;
    text-align: center;
    padding: 50px 0;
}

.txt404__wrapper {
    position: relative;
    font-family: "EB+Garamond", serif;
    color: #fff;
    margin-bottom: 50px;
}

.txt404 {
    font-size: 2.8rem;
    font-weight: 400;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5rem;
}

.txt404__wrapper .txt404:first-child {
    margin-bottom: 0px;
}

.txt404__wrapper:after {
    content: "404";
    /* position: absolute;
  top: -120px;
  left: -35px; */
    width: 100%;
    height: 100%;
    font-size: 40rem;
    font-weight: 400;
    letter-spacing: 1rem;
}

.btn__404 {
    display: inline-block;
    color: #000;
    font-size: 1.6rem;
    background-color: #fff;
    padding: 18px 60px;
}

@media screen and (max-width: 1020px) {
    .txt404 {
        font-size: 1.3rem;
    }

    /* .txt404__wrapper .txt404:first-child {
    margin-bottom: 140px;
  } */
    .txt404__wrapper:after {
        top: -55px;
        left: -20px;
        font-size: 20rem;
        letter-spacing: 1rem;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Shop single product
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce-message {
    /*display:none !important;*/
}

a.added_to_cart.wc-forward {
    display: none;
}

body header:before {
    content: "";
    visibility: hidden;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.7);
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 500ms ease;
}

body.msg-active header:before {
    opacity: 1;
    visibility: visible;
}

.right-nav-item .msg {
    position: absolute;
    z-index: 99999;
    top: 58px;
    right: -42px;
    width: 250px;
    padding: 25px 35px;
    font-size: 1.6rem;
    line-height: 2.1rem;
    font-weight: 100;
    /*opacity: 0;*/
    visibility: hidden;
    /*cursor: pointer;*/
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #fff;
    color: #020000;
    /*white-space: nowrap;*/
    transform: translate(0px, -300px);
    transition: all 400ms ease-in-out;
    transition-delay: 100ms;
}

.right-nav-item .msg:before {
    content: "";
    position: absolute;
    top: -12px;
    right: 50px;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 12.5px 15px 12.5px;
    border-color: transparent transparent #fff transparent;
}

.right-nav-item .msg a {
    color: #ed1c24;
    text-decoration: underline;
    padding: 0;
    font-size: inherit;
    font-weight: inherit;
}

/*.right-nav-item .msg.msg-active {*/
body.msg-active .msg {
    opacity: 1;
    visibility: visible;
    transform: translate(0, 0);
}

.container.container-single-product {
    width: 90vw;
    max-width: none;
}

.woocommerce div.product {
    width: 100%;

    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-end;
    align-content: flex-start;
    align-items: flex-end;
}

.woocommerce-product-gallery__image a {
    position: relative;
    display: block;
    /*background-color: rgba(0,0,0,.02);*/
}

.woocommerce-product-gallery__image a:before {
    display: block;
    width: 100%;
    padding-top: 85%;
    visibility: hidden;
    content: "";
}

.woocommerce-product-gallery__image a img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto !important;
    max-width: calc(100% - 30px);
    height: auto !important;
    max-height: calc(100% - 30px);
    transform: translate(-50%, -50%);
}

/*
.woocommerce-product-gallery__image a {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
}

.woocommerce-product-gallery.woocommerce-product-gallery--with-images div, .woocommerce-product-gallery__image {
    max-height: 297px;
}

.woocommerce-product-gallery__image a img {
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    -o-object-fit: contain;
    position: absolute;
    -webkit-transition: all .25s ease-out;
    -moz-transition: all .25s ease-out;
    -ms-transition: all .25s ease-out;
    -o-transition: all .25s ease-out;
    transition: all .25s ease-out;
}*/

.woocommerce div.product div.images.woocommerce-product-gallery {
    position: relative;
    width: 45vw;
    /*width: calc( ((90vw - 45vw) / 2) + 45vw);*/
    /*width : calc( 45vw + 130px);*/
    max-width: none;
    padding: 0;
    margin-bottom: 0;

    /*display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
    align-items: flex-start;
    flex-direction: row-reverse;  */
}

.woocommerce div.product div.images .flex-control-thumbs {
    overflow: hidden;
    zoom: 1;
    margin: 0;
    padding: 0;
    position: absolute;
    z-index: 100;
    width: 80px;
    top: 0;
    left: -130px;
}

.flex-viewport {
    width: 45vw;
}

.woocommerce div.product div.images .flex-control-thumbs li {
    width: 100%;
    float: none;
    margin: 0 0 20px 0;
    list-style: none;
}

.woocommerce div.product div.summary {
    /*flex: 1;*/
    /*width: calc( (90vw - 45vw) / 2);*/
    width: 28vw;
    text-align: left;
    padding-top: 50px;
    padding-left: 50px;
    position: relative;
    margin-bottom: 0;
}

.woocommerce div.product div.summary:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50px;
    background-color: #000;
    width: 40px;
    height: 1px;
}

.single-product p {
    color: #666666;
}

.product_attributes {
    color: #000;
    font-size: 1.5rem;
    font-weight: 100;
    line-height: 1;
    margin-bottom: 5px;
}

.woocommerce div.product h1.product_title {
    color: #000;
    font-size: 3rem;
    text-align: left;
    letter-spacing: normal;
    max-width: 100%;
    margin-bottom: 5px;
}

.product_category {
    margin-bottom: 20px;
}

.product_category a {
    color: #000;
    font-size: 1.6rem;
    font-weight: 100;
    line-height: 1;
}

.product_category a:hover {
    color: #ed1c24;
}

.woocommerce-product-details__short-description {
    margin-bottom: 20px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #ed1c24;
    font-size: 1.6rem;
    font-weight: 100;
    margin-bottom: 20px;
    padding: 0;
}

.woocommerce div.product p.stock {
    font-size: 1.5rem;
    font-weight: 100;
    line-height: 1;
    color: #ed1c24;
    margin-bottom: 20px;
    padding: 0;
}

.woocommerce div.product p.stock.in-stock {
    display: none;
}

.woocommerce div.product form.cart {
    margin-bottom: 0;
}

.woocommerce div.product form.cart .button {
    color: #ed1c24;
    background-color: transparent;
    padding: 18px 60px;
    display: inline-block;
    text-transform: none;
    font-size: 1.6rem;
    font-weight: 100;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    z-index: 0;
    position: relative;
    cursor: pointer;
    text-decoration: none;
    border: 1px solid #ed1c24;
    border-radius: 0;
    text-align: center;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.woocommerce div.product form.cart .button:hover {
    background-color: #ed1c24;
    color: #fff;
}

.woocommerce div.product form.cart .button.loading:after {
    top: 1.1em;
    right: 2.5em;
}

.woocommerce div.product form.cart div.quantity {
    float: none;
    margin: 0;
    margin-bottom: 20px;
}

.woocommerce div.product form.cart div.quantity select,
.woocommerce-cart-form .product-quantity .quantity select {
    border-radius: 0;
    border: none;
    padding: 8px 35px 8px 10px;
    background-color: #efefef;
    background-image: url(../images/dropdown-rouge.svg);
    background-repeat: no-repeat;
    background-size: 12px;
    background-position-x: 80%;
    background-position-y: 13px;
    font-size: 1.6rem;
    font-weight: 100;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
}

.woocommerce .single-product-description {
    position: relative;
    width: 100%;
    text-align: left;
    margin-top: 50px;
}

.woocommerce .single-product-description h2 {
    display: block;
}

.woocommerce .single-product-description li {
    position: relative;
    padding-top: 40px;
    margin-bottom: 40px;
}

.woocommerce .single-product-description li:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #000;
    width: 50px;
    height: 1px;
}

/*.woocommerce div.product div.images .flex-control-thumbs li {
    float: none;
    padding: 10px;
    list-style: none;
    width: 100%;
}
*/

ul.flex-direction-nav {
    position: absolute;
    top: 30%;
    z-index: 99999;
    width: 100%;
    left: 0;
    margin: 0;
    padding: 0px;
    list-style: none;
}

li.flex-nav-prev {
    float: left;
    background: #ff0000;
}

li.flex-nav-next {
    float: right;
    background: #ff0000;
}

a.flex-next {
    visibility: hidden;
}

a.flex-prev {
    visibility: hidden;
}

a.flex-next::after {
    visibility: visible;
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    margin-right: 10px;
    font-size: 20px;
    font-weight: bold;
}

a.flex-prev::before {
    visibility: visible;
    content: "\f053";
    font-family: "Font Awesome 5 Free";
    margin-left: 10px;
    font-size: 20px;
    font-weight: bold;
}

ul.flex-direction-nav li a {
    color: #ccc;
}

ul.flex-direction-nav li a:hover {
    text-decoration: none;
}

@media screen and (max-width: 1020px) {
    .container.container-single-product {
        width: 85vw;
    }

    .woocommerce div.product div.images.woocommerce-product-gallery {
        width: 100%;
        margin-bottom: 40px;
    }

    .flex-viewport {
        width: 100%;
    }

    .woocommerce div.product div.images .flex-control-thumbs {
        position: relative;
        width: 100%;
        top: auto;
        left: auto;
    }

    .woocommerce div.product div.images .flex-control-thumbs li {
        width: 25%;
        float: left;
        padding: 10px;
        list-style: none;
    }

    .woocommerce div.product div.summary {
        width: 100%;
        padding-left: 0;
    }

    .woocommerce div.product div.summary:before {
        left: 0;
    }

    .container.small2 {
        width: 85vw !important;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce - myaccount
----------------------------------------------------------------------------------------------------------------------------*/

.custom_wc_logout {
    color: #ed1c24;
    text-decoration: none;
    font-size: 1.4rem;
    font-weight: 300;
}

.custom_wc_logout a span {
    display: inline-block;
    vertical-align: middle;
}

.custom_wc_logout a span.point {
    width: 6px;
    height: 6px;
    background-color: #ed1c24;
    margin-left: 10px;
    border-radius: 100%;
    display: inline-block;
    vertical-align: middle;
}

.woocommerce-account .woocommerce {
    /*max-width: 1024px;*/
    margin: 0 auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
    margin-right: 50px;
    -ms-flex: 0 0 300px;
    flex: 0 0 300px;
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    width: auto;
}

.woocommerce-MyAccount-navigation ul li {
    margin-bottom: 15px;
}

.woocommerce-MyAccount-navigation ul li:last-child {
    /*margin-bottom: 0;*/
}

.woocommerce-MyAccount-navigation .btn2 {
    width: 100%;
}

.woocommerce-MyAccount-navigation li.is-active .btn2 {
    background-color: #000;
    color: #fff;
}

.woocommerce-account .woocommerce-MyAccount-content {
    text-align: left;
}

.select2-container--default .select2-selection--single {
    background-color: #efefef;
    border: 1px solid #efefef;
    border-radius: 0;
    width: 100%;
    height: 50px;
}

.select2-container--default
.select2-selection--single
.select2-selection__rendered {
    color: #6b6b6b;
    line-height: 50px;
    font-style: italic;
}

.select2-container--default
.select2-selection--single
.select2-selection__arrow
b {
    border-color: #888 transparent transparent transparent;
    border-style: solid;
    border-width: 5px 4px 0 4px;
    height: 0;
    left: 50%;
    margin-left: -4px;
    margin-top: 8px;
    position: absolute;
    top: 50%;
    width: 0;
}

.woocommerce ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #6b6b6b;
}

.woocommerce ::-moz-placeholder {
    /* Firefox 19+ */
    color: #6b6b6b;
}

.woocommerce :-ms-input-placeholder {
    /* IE 10+ */
    color: #6b6b6b;
}

.woocommerce :-moz-placeholder {
    /* Firefox 18- */
    color: #6b6b6b;
}

.woocommerce form .form-row textarea,
.woocommerce form .form-row input,
.woocommerce form .form-row select,
#add_payment_method table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-checkout table.cart td.actions .coupon .input-text,
.coupon .input-text {
    float: none;
    display: block;
    width: 100%;
    height: 50px;
    padding: 0 15px;
    margin: 0;
    background-color: #efefef;
    border: 1px solid #efefef;
    border-radius: 0;
    font-size: 1.5rem;
    line-height: 130%;
    font-weight: 400;
    color: #6b6b6b;
    font-style: italic;
    transition: all 300ms ease;
    outline: 0;
}

.woocommerce-dashboard-wrapper {
    background-color: #efefef;
    padding: 50px;
}

.woocommerce-account .container.small {
    width: 75vw;
    max-width: 1200px;
}

@media screen and (max-width: 1020px) {
    .woocommerce-account .woocommerce {
        display: block;
    }

    .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
        margin-right: 0;
        text-align: left;
        background-color: #000;
        padding: 15px;
        margin-bottom: 20px;
    }

    .woocommerce-MyAccount-navigation ul li {
        display: inline-block;
        margin-right: 15px;
    }

    .woocommerce-MyAccount-navigation ul li:last-child {
        margin-bottom: 0;
    }

    .woocommerce-MyAccount-navigation-link a.btn2 {
        padding: 0;
        border: 0;
        display: inline-block;
        color: #fff;
    }

    .woocommerce-MyAccount-navigation li.is-active .btn2,
    .woocommerce-MyAccount-navigation li .btn2:hover {
        background-color: transparent;
        color: #fff;
        /* text-decoration: underline; */
        font-weight: 600;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce - myaccount / edit-account
----------------------------------------------------------------------------------------------------------------------------*/

fieldset {
    border: none;
    margin: 0;
    padding: 0;
}

.fieldset-account-details {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    margin-bottom: 40px;
}

.woocommerce .title-block-shop {
    font-family: "EB+Garamond", serif;
    margin-bottom: 26px;
    font-size: 2.6rem;
    line-height: 1;
    font-weight: 400;
}

.woocommerce-account .edit-account-content .cols-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -25px;
    margin-left: -25px;
}

.woocommerce-account .edit-account-content .cols-wrapper > * {
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 0;
    margin-right: 25px;
    margin-left: 25px;
    -ms-flex-preferred-size: calc(100% / 2 - 50px);
    flex-basis: calc(100% / 2 - 50px);
    width: auto;
    float: none;
}

.woocommerce-account .edit-account-content .desc {
    display: block;
    margin-top: 5px;
    font-size: 1.2rem;
    line-height: 125%;
}

.woocommerce-account .edit-account-content .fieldset-password input {
    max-width: calc(50% - 5px);
}

.show-password-input {
    display: none !important;
}

@media screen and (max-width: 1020px) {
    .woocommerce-account .edit-account-content .cols-wrapper {
        display: block;
    }

    .woocommerce-account .edit-account-content .fieldset-password input {
        max-width: 100%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce - myaccount / myaddress
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce-Address {
    margin-bottom: 40px !important;
}

.woocommerce-account .addresses .title h3 {
    float: none;
    margin-bottom: 5px;
    display: block;
}

.woocommerce-account .addresses .title .edit {
    float: none;
}

.woocommerce-Address-title {
    margin-bottom: 20px;
}

address {
    display: block;
    font-style: normal;
    line-height: 2.4rem;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce - myaccount / order
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce .woocommerce-customer-details address {
    font-style: normal;
    margin-bottom: 0;
    border: 0;
    width: 100%;
    border-radius: 0;
    padding: 0;
}

.woocommerce table.my_account_orders td,
.woocommerce table.my_account_orders th {
    font-size: 1.5rem;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce - order / commander
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce-checkout {
    text-align: left;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1 {
    float: none;
    width: 100%;
    margin-bottom: 0px;
}

.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    float: none;
    width: 100%;
    margin-bottom: 20px;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce {
    position: relative;
    margin: auto;
    z-index: 1;
    width: 80vw;
    /*max-width: 1600px;*/
}

.woocommerce-form-coupon-toggle {
    display: none !important;
}

.woocommerce-info {
    border-top: 0px solid #000;
}

.woocommerce-info::before {
    color: #000;
    display: none;
}

.woocommerce form.checkout_coupon {
    display: block !important;
}

.woocommerce button[name="update_cart"],
.woocommerce input[name="update_cart"] {
    display: none !important;
}

.woocommerce table.shop_table {
    border: none;
    margin: 0 -1px 30px 0;
    text-align: left;
    width: 100%;
    border-collapse: separate;
    border-radius: 0;
    border-spacing: 0;
}

.shop_table thead {
    background-color: #000;
    color: #fff;
}

.woocommerce table.shop_table th {
    font-family: "EB+Garamond", serif;
    font-size: 1.8rem;
    line-height: 1;
    text-align: left;
    font-weight: 400;
    padding: 10px;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.woocommerce table.shop_table thead th,
.woocommerce table.shop_table thead td,
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tbody td,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td {
    padding: 20px 20px;
    border: 0;
    font-weight: inherit;
}

td.product-name {
    font-size: 1.4rem;
}

#add_payment_method table.cart .product-thumbnail,
.woocommerce-cart table.cart .product-thumbnail,
.woocommerce-checkout table.cart .product-thumbnail {
    width: 120px;
    padding-left: 0;
}

body .woocommerce-cart-form .product-thumbnail img {
    width: 100px;
    display: block;
}

.woocommerce-cart-form .product-remove .remove {
    position: relative;
    text-indent: -9999px;
    display: block;
    width: auto;
    height: auto;
    padding-left: 0;
    border-radius: 0;
}

.woocommerce-cart-form .product-remove .remove:hover {
    background-color: transparent;
    opacity: 0.3;
}

.woocommerce-cart-form .product-remove .remove::before,
.page-cart .woocommerce-cart-form .product-remove .remove::after {
    position: absolute;
    top: 50%;
    left: 0;
    width: 17px;
    height: 1px;
    background-color: #ed1c24;
    content: "";
}

.woocommerce-cart-form .product-remove .remove::after {
    transform: translateY(-50%) rotate(-45deg);
}

.woocommerce-cart-form .product-remove .remove::before {
    transform: translateY(-50%) rotate(45deg);
}

.woocommerce-cart-form .product-remove .remove::before,
.woocommerce-cart-form .product-remove .remove::after {
    position: absolute;
    top: 50%;
    left: 0;
    width: 17px;
    height: 1px;
    background-color: #ed1c24;
    content: "";
}

.woocommerce-cart-form .actions {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 0 !important;
}

.woocommerce-cart-form .coupon {
    width: 100%;
    padding-top: 30px;
    padding-bottom: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.2);
}

.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce-page #content table.cart td.actions .coupon,
.woocommerce-page table.cart td.actions .coupon {
    float: none;
    text-align: left;
}

.woocommerce #content table.cart td.actions .coupon label,
.woocommerce table.cart td.actions .coupon label,
.woocommerce-page #content table.cart td.actions .coupon label,
.woocommerce-page table.cart td.actions .coupon label,
.coupon label {
    font-weight: 700;
    margin-bottom: 12px;
    display: block;
    padding-left: 15px;
}

.coupon__wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}

.coupon__wrapper #coupon_code {
    width: 300px;
    margin-right: 30px;
}

.woocommerce table.shop_table_responsive tr:nth-child(2n) td,
.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
    background-color: transparent;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    padding: 0 0 50px 0;
    margin: 0 0 50px 0;
    text-align: left;
    border-radius: 0;
}

@media screen and (max-width: 1020px) {
    .coupon__wrapper #coupon_code {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }
}

#add_payment_method table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-checkout table.cart td.actions .coupon .input-text,
#coupon_code {
    /*    float: left;
    box-sizing: border-box;
    border: none;
    border-radius: 0;
    padding: 20px 20px;
    margin: 0 20px 0 0;
    outline: 0;
    width: 220px;
    background-color: #efefef;*/
}

.woocommerce .cart-collaterals,
.woocommerce-page .cart-collaterals {
    width: 100%;
    padding-top: 30px;
    /* padding-bottom: 30px; */
    border-top: 1px solid rgba(0, 0, 0, 0.2);
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
    float: none;
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}

.woocommerce .cart-collaterals .cart_totals__wrapper {
    width: 300px;
}

.cart_totals__wrapper td {
    position: relative;
    padding-left: 50px !important;
}

.cart_totals__wrapper td:before {
    content: "";
    position: relative;
    width: 20px;
    height: 2px;
    background-color: #000;
    display: block;
    top: 13px;
    left: -40px;
}

.cart_totals__wrapper td:before {
    content: "" !important;
    font-weight: 400 !important;
    float: none !important;
}

.woocommerce table.shop_table_responsive tbody th,
.woocommerce-page table.shop_table_responsive tbody th {
    display: block !important;
}

#add_payment_method .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-checkout .cart-collaterals .cart_totals table th {
    width: 100%;
}

@media screen and (max-width: 1020px) {
    .woocommerce .cart-collaterals .cart_totals__wrapper {
        width: 100%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce - form-login.php
----------------------------------------------------------------------------------------------------------------------------*/

.page-login {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    text-align: left;
}

.page-login .col {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.page-login > * {
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}

.page-login .title-form {
    text-align: left;
    font-size: 2.6rem;
    line-height: 100%;
    font-weight: 400;
    font-style: normal;
    margin-bottom: 40px;
}

.woocommerce-account .woocommerce form.login,
.woocommerce-account .woocommerce form.register {
    border-bottom: 0;
    padding: 0;
    margin-bottom: 0;
}

.page-login .u-column1 {
    border-right: 1px solid #d3ced2;
    padding-right: 80px;
}

.page-login .u-column2 {
    padding-left: 80px;
}

.woocommerce-privacy-policy-text {
    display: none;
}

.woocommerce .options-wrapper {
    margin-bottom: 30px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.page-login form.login .options-wrapper > * {
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    padding: 0;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme,
.lost_password a {
    display: inline-block;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: flex-start;
    /* -ms-flex-align: center; */
    align-content: flex-start;
    align-items: center;
    line-height: 2rem;
    font-size: 1.4rem;
}

.lost_password {
}

.lost_password a {
    position: relative;
    color: #000;
    text-decoration: underline;
}

.lost_password a span.point {
    width: 6px;
    height: 6px;
    background-color: #ed1c24;
    margin-right: 10px;
    border-radius: 100%;
}

@media screen and (max-width: 1020px) {
    .page-login {
        display: block;
    }

    .page-login .u-column1 {
        border-right: none;
        border-bottom: 1px solid #d3ced2;
        padding-right: 0;
        padding-bottom: 20px;
    }

    .page-login .u-column2 {
        margin-top: 50px;
        padding-left: 0;
    }

    .page-login form.login .options-wrapper {
        display: block;
    }

    p.remember-me {
        padding-bottom: 20px !important;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce / myaccount - lost-passwosd
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce-account .woocommerce-ResetPassword {
    max-width: 450px;
    margin: 0 auto;
}

.woocommerce-ResetPassword .lost_reset_password_desc {
    border-bottom: 1px solid #d3ced2;
    margin-bottom: 30px;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
    width: 100%;
}

.woocommerce-account.woocommerce-lost-password .woocommerce {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.woocommerce-message {
    border: 1px solid #333;
    background: transparent;
}

.woocommerce-message::before {
    content: "\e015";
    color: #333;
}

/*----------------------------------------------------------------------------------------------------------------------------
  Pages WooCommerce / Checkout
----------------------------------------------------------------------------------------------------------------------------*/

.woocommerce form .form-row {
    margin: 0 0 30px;
    padding: 0;
}

.woocommerce form .form-row.no-margin-bottom {
    margin-bottom: 0;
}

.woocommerce .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce .woocommerce-checkout .woocommerce-account-fields .create-account,
.woocommerce .woocommerce-address-fields__field-wrapper,
.woocommerce-checkout .woocommerce-login-fields__field-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -25px;
    margin-left: -25px;
}

.woocommerce
.woocommerce-checkout
.woocommerce-billing-fields__field-wrapper
> *,
.woocommerce
.woocommerce-checkout
.woocommerce-shipping-fields__field-wrapper
> *,
.woocommerce
.woocommerce-checkout
.woocommerce-account-fields
.create-account
> *,
.woocommerce .woocommerce-address-fields__field-wrapper > *,
.woocommerce-checkout .woocommerce-login-fields__field-wrapper > * {
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 0;
    margin-right: 25px !important;
    margin-left: 25px !important;
    -ms-flex-preferred-size: calc(100% / 2 - 50px);
    flex-basis: calc(100% / 2 - 50px);
}

.woocommerce form .form-row label {
    padding-left: 15px;
    line-height: 2.2rem;
    padding-bottom: 10px;
}

.woocommerce form .form-row label.woocommerce-form__label-for-checkbox {
    padding-left: 0;
}

.woocommerce form .form-row label .required {
    color: inherit;
    font-weight: normal;
}

.woocommerce-input-wrapper {
    display: block;
    height: 50px;
}

.form-row.notes .woocommerce-input-wrapper {
    height: auto;
}

.woocommerce form .form-row.address-field .select2-container {
    display: block;
    line-height: 130%;
}

.woocommerce form .form-row.address-field .selection {
    display: block;
}

.woocommerce form .form-row select {
    padding-right: 34px;
    /*background: url(../images/ico-select.png) no-repeat calc(100% - 15px) 20px;*/
    background-size: 15px 8px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.woocommerce form .form-row textarea {
    height: 240px;
    padding-top: 18px;
}

.woocommerce-additional-fields h3 {
    display: none;
}

@media screen and (max-width: 1020px) {
    .woocommerce
    .woocommerce-checkout
    .woocommerce-billing-fields__field-wrapper
    > *,
    .woocommerce
    .woocommerce-checkout
    .woocommerce-shipping-fields__field-wrapper
    > *,
    .woocommerce
    .woocommerce-checkout
    .woocommerce-account-fields
    .create-account
    > *,
    .woocommerce .woocommerce-address-fields__field-wrapper > *,
    .woocommerce-checkout .woocommerce-login-fields__field-wrapper > * {
        -ms-flex-preferred-size: calc(100% - 50px);
        flex-basis: calc(100% - 50px);
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Block Boutique
----------------------------------------------------------------------------------------------------------------------------*/

section.block-boutique {
    width: 100%;
    padding: 50px 0;
    background-color: transparent;
}

.shop_desc {
    margin-bottom: 50px;
}

.woocommerce-pagination {
    display: none;
}

.tabs.wc-tabs {
    display: none;
}

.woocommerce-info {
    /*display: none;*/
}

.woocommerce-tabs.wc-tabs-wrapper {
    position: relative;
    padding-top: 40px;
    margin-bottom: 40px;
}

.woocommerce-tabs.wc-tabs-wrapper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #000;
    width: 50px;
    height: 1px;
}

.woocommerce-Tabs-panel.panel {
    margin: 0;
    text-align: left;
}

.shop_loop_header {
    width: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    align-content: flex-start;
    align-items: stretch;
}

.shop_loop_header h2 {
}

.shop_loop_header aside {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
    margin-bottom: 20px;
}

.shop_loop_header aside section,
.shop_loop_header aside .woocommerce-ordering {
    flex: 0;
    margin: 0 0 0 10px;
}

.shop_loop_header aside section .select2 {
    display: none;
}

.shop_loop_header aside select {
    border: 0 !important;
    padding: 5px 25px 5px 10px !important;
    /* clip: rect(0 0 0 0)!important; */
    height: auto !important;
    /* margin: -1px!important; */
    /* overflow: hidden!important; */
    /* padding: 0!important; */
    position: relative !important;
    width: auto !important;
    font-size: 1.3rem;
    border-radius: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: url(../images/dropdown.svg);
    background-repeat: no-repeat;
    background-size: 10px;
    background-position-x: 95%;
    background-position-y: 9px;
}

.woocommerce-filtering__wrapper {
    padding-right: 20px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}

.woocommerce-ordering__wrapper {
    border-left: 1px solid rgba(0, 0, 0, 0.2);
    padding-left: 20px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}

.aside__text {
    font-size: 1.3rem;
    font-weight: 600;
}

.woocommerce {
    width: 100%;
}

.woocommerce ul.products li {
    text-align: center;
    padding: 20px !important;
    background-color: #f2f2f2;
}

.products-list-wrapper {
    width: 100%;
    margin-bottom: 80px;
    margin-top: 40px;
}

.list-products {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -16px;
    margin-left: -16px;
}

.list-products li {
    -webkit-transform-style: preserve-3d;
    position: relative;
    width: calc(25% - 30px);
    margin-right: 15px;
    margin-left: 15px;
    margin-bottom: 25px;
    text-align: center;
    overflow: hidden;

    -webkit-transition: transform 0.25s ease-in-out;
    -moz-transition: transform 0.25s ease-in-out;
    -ms-transition: transform 0.25s ease-in-out;
    -o-transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;

    /*    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    min-width: 0;
    margin-right: 16px;
    margin-left: 16px;
    -ms-flex-preferred-size: calc(100% / 4 - 32px);
    flex-basis: calc(100% / 4 - 32px);*/
}

.item-product-woocommerce a {
    position: relative;
    display: block;
    margin: 0;
}

.item-product-woocommerce .price {
    display: none;
}

.item-product-woocommerce .illus-wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 100%;
    display: inline-block;
    transition: all 300ms ease;
}

.item-product-woocommerce .illus-wrapper img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    -o-object-fit: contain;
    position: absolute;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}

.item-product-woocommerce .desc {
    position: relative;
    padding: 30px 15px;
    text-align: center;
}

.woocommerce-loop-product__cat {
    font-family: "EB+Garamond", serif;
    position: relative;
    color: #000;
    font-size: 1.8rem;
    text-align: center;
    line-height: 1;
    font-weight: 400;
    font-style: normal;
    margin-bottom: 20px;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    /* transition: 0.5s all cubic-bezier(.75,0,.25,1); */
    transition: all 0.5s ease-out;
}

.woocommerce-loop-product__title {
    text-align: center;

    font-size: 2.1rem;
    line-height: 1;
    font-weight: 400;
    text-align: center;
    margin-bottom: 10px;

    -webkit-transform-origin: center center;
    transform-origin: center center;
    /*transition: 0.5s all cubic-bezier(.75,0,.25,1);        */
    transition: all 0.5s ease-out;
}

.item-product-woocommerce .btn.add_to_cart_button {
    display: none;
}

.item-product-woocommerce .out-of-stock {
    text-align: center;
    padding-bottom: 0;
    margin-bottom: -5px;
}

.btn.button.product_type_simple {
    display: none;
}

@media screen and (max-width: 1020px) {
    section.block-boutique {
        padding: 25px 0;
    }

    .shop_loop_header {
        flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-direction: column;
    }

    .shop_loop_header aside {
        background-color: #f5f5f5;
        padding: 15px;
        width: 100%;
    }

    .woocommerce-filtering__wrapper {
        padding-right: 0;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -moz-flex;
        display: -webkit-flex;
        justify-content: flex-start;
        align-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        width: 100%;
    }

    .shop_loop_header aside section,
    .shop_loop_header aside .woocommerce-ordering- {
        flex: 0;
        margin: 10px 0 0 0;
        width: auto;
    }

    .shop_loop_header aside .woocommerce-ordering {
        margin: 10px 0 0 0;
        width: auto;
    }

    .shop_loop_header aside select {
        /*padding: 5px !important;*/
        background-color: #fff;
    }

    .woocommerce-ordering__wrapper {
        border-left: none;
        padding-left: 0;
        margin-top: 15px;
        width: 100%;
        justify-content: flex-start;
        align-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
    }

    .list-products {
        margin-right: 0;
        margin-left: 0;
    }

    .list-products li {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
        margin-bottom: 25px;
    }

    /*.list-products li {
        width: calc(50% - 30px);
        margin-right: 15px;
        margin-left: 15px;
        margin-bottom: 25px;
    }*/
    .item-product-woocommerce .illus-wrapper {
        padding-bottom: 70%;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Home
----------------------------------------------------------------------------------------------------------------------------*/

.container {
    position: relative;
    margin: auto auto auto auto;
    z-index: 1;
    width: 80vw;
    max-width: 1600px;
    /*min-width: 1100px;*/
    text-align: center;

    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    /*align-items: stretch;*/
}

.block {
    margin-bottom: 50px;
}

.container.fullscreen {
    width: 100%;
    max-width: 100%;
}

.container.small {
    width: 55vw;
    max-width: 1100px;
}

.container.small2 {
    width: 45vw;
    max-width: none;
}

.container p:last-child {
    padding-bottom: 0;
}

@media screen and (max-width: 1020px) {
    .container,
    .container.small {
        width: 85vw !important;
        min-width: auto;
    }

    .block {
        margin-bottom: 30px;
    }
}

article {
    margin: 20px 0;
    width: 100%;
}

.text {
    margin: 10px 0;
}

p,
.block-paragraphe ul {
    text-align: left;
    font-size: 1.6rem;
    line-height: 2.4rem;
    font-weight: 300;
    letter-spacing: normal;
    padding-bottom: 30px;
    word-break: break-word;
    /*color: #666666;*/
    /*  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  -o-hyphens: auto;
  hyphens: auto;*/
}

p a,
.block-paragraphe a {
    text-decoration: underline;
    color: #ed1c24;
}

.block-paragraphe ul {
    padding-left: 2em;
    list-style: none;
}

.block-paragraphe ul li {
    position: relative;
    padding-bottom: 5px;
}

.block-paragraphe ul li:before {
    content: "•";
    color: #ed1c24;
    display: inline-block;
    font-family: Arial, sans-serif;
    width: 1.5em;
    margin-left: -1em;
    position: absolute;
    font-size: 2.2rem;
}

blockquote {
    padding: 20px 20px 0px 20px;
    display: inline-block;
    margin-bottom: 20px;
    width: 100%;
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 50px, 0);
        transform: translate3d(0, 50px, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 50px, 0);
        transform: translate3d(0, 50px, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.container,
article,
.reveal-animate {
    /*opacity: 0;*/
}

.visible {
    visibility: visible;

    /*    -webkit-transition: -webkit-transform .5s cubic-bezier(.75,0,.25,1);
    transition: -webkit-transform .5s cubic-bezier(.75,0,.25,1);
    transition: transform .5s cubic-bezier(.75,0,.25,1);
    transition: transform .5s cubic-bezier(.75,0,.25,1),-webkit-transform .5s cubic-bezier(.75,0,.25,1);
    will-change: transform;	   */

    /*animation-timing-function: cubic-bezier(.75,0,.25,1);
	-webkit-animation-timing-function: cubic-bezier(.75,0,.25,1);*/

    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;

    -webkit-animation-duration: 1.2s;
    animation-duration: 1.2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;

    /*-webkit-animation-delay: .25s;
    animation-delay: .25s;	    */
}

@media screen and (min-width: 1020px) {
    p.column-count-2 {
        column-count: 2;
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-gap: 30px;
        -moz-column-gap: 30px;
        -webkit-column-gap: 30px;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Loading
----------------------------------------------------------------------------------------------------------------------------*/

body.loading {
    height: 100%;
    overflow: hidden;
}

body.loading-page:before {
    content: "";
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 10000;
}

body.loading-page.loading-page-close:before {
    -webkit-transition: visibility 0.5s 0.5s,
    -webkit-transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);
    transition: visibility 0.5s 0.5s,
    -webkit-transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);

    /*
    -webkit-transition: opacity .5s ease-out;
    -moz-transition: opacity .5s ease-out;
    -ms-transition: opacity .5s ease-out;
    -o-transition: opacity .5s ease-out;
    transition: opacity .5s ease-out;*/

    transition: opacity 0.5s cubic-bezier(0.75, 0, 0.25, 1), visibility 0s 0.5s;
    transition: opacity 0.5s cubic-bezier(0.75, 0, 0.25, 1), visibility 0s 0.5s,
    -webkit-transform 0.5s cubic-bezier(0.75, 0, 0.25, 1);
    will-change: transform;

    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;

    opacity: 0;
    /*-webkit-transform: translateY(100%);
    transform: translateY(100%);   */
}

/*----------------------------------------------------------------------------------------------------------------------------
  Cookie Banner
----------------------------------------------------------------------------------------------------------------------------*/

.cookie-banner {
    position: fixed;
    z-index: 9999;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px 20px;
    background-color: #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

.cookie-banner .content {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}

.cookie-banner .content > * {
    flex: 0 1 auto;
}

.cookie-banner .content .desc {
    flex: 1 1 auto;
    margin-right: 25px;
    color: #888;
    font-size: 1.5rem;
    line-height: 1.4;
}

.cookie-banner .content .btn-accept:not(:active),
.cookie-banner .content .btn-refuse:not(:active),
.cookie-banner .content .btn-more:not(:active) {
    transition: all 300ms ease;
}

.cookie-banner .content .btn-accept,
.cookie-banner .content .btn-refuse {
    padding-left: 25px;
    padding-right: 25px;
    border: 1px solid #000;
}

.cookie-banner .content .btn-accept,
.cookie-banner .content .btn-refuse,
.cookie-banner .content .btn-more {
    display: inline-block;
    flex: 0 0 auto;
    /*padding: 8px;*/
    margin-right: 20px;
    white-space: nowrap;
}

@media only screen and (max-width: 700px) {
    .cookie-banner .content {
        display: block;
        text-align: center;
    }

    .cookie-banner .content .desc {
        margin-right: 0;
        margin-bottom: 15px;
        text-align: left;
    }
}

/*----------------------------------------------------------------------------------------------------------------------------
  Footer
----------------------------------------------------------------------------------------------------------------------------*/

footer {
    position: relative;
    width: 100%;
    background-color: transparent;
    color: #fff;
    padding: 50px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}

.footer-container {
    position: relative;
    width: 80%;
    max-width: 1600px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;

    justify-content: space-between;
    align-content: center;
    align-items: center;
}

footer .footer-item {
    position: relative;
    padding: 0;
    display: inline-block;
}

footer a.brand {
    width: 100%;
}

footer a.brand img {
    width: 100%;
    height: auto;
    display: block;
}

ul.footer-nav-list {
}

ul.footer-nav-list li {
    display: block;
    margin-bottom: 30px;
}

ul.footer-nav-list li:last-child {
    margin-bottom: 0;
}

footer .main-nav-item a {
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    padding: 0;
}

footer .main-nav-item a:after {
    left: 0;
    width: 100%;
    bottom: -2px;
}

.contact-headline {
    color: #fff;
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 8px;
    text-align: left;
    text-transform: uppercase;
    position: relative;
    display: block;
}

.contact-txt {
    color: #fff;
    font-size: 1.4rem;
    font-weight: 400;
    text-align: left;
    text-transform: none;
    position: relative;
    display: block;
    line-height: 1.8rem;
    margin-bottom: 20px;
}

ul.mentions-nav-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    align-items: center;
}

ul.mentions-nav-list li {
    margin: 0 20px;
}

ul.mentions-nav-list li:first-child {
    margin-left: 0;
}

ul.mentions-nav-list li:last-child {
    margin-right: 0;
}

footer .main-nav-item a {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1;
    padding: 0;
    text-transform: none;
}

footer ul.mentions-nav-list li.main-nav-item a:hover {
    color: #ed1c24;
}

footer ul.mentions-nav-list li.main-nav-item a span {
    font-weight: 100;
}

#footer-social-nav {
    position: relative;
    width: 100%;
    top: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: flex-start;
    justify-content: flex-start;
    -ms-flex-align: flex-start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-transition: all 0.25s ease-out;
    -moz-transition: all 0.25s ease-out;
    -ms-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    transition-delay: 0.25s;
}

.footer-title {
    color: inherit;
    font-size: 2.6rem;
    font-weight: 400;
    margin-bottom: 20px;
    text-align: left;
    text-transform: none;
    position: relative;
    display: inline-block;
}

.gotop {
    display: none;
    width: 50px;
    height: 50px;
    background-color: #000;
    color: #fff;
    border: none;
    position: absolute;
    z-index: 50;
    cursor: pointer;
    top: -25px;
    right: 4vw;
}

.gotop svg {
    width: 16px;
    height: 16px;
    fill: #fff;
    display: block;
    margin: auto auto 4px auto;
}

.gotop span {
    font-size: 0.9rem;
    font-weight: 600;
    display: block;
    margin: auto;
}

body.error404 footer .main-nav-item a {
    color: #fff;
}

body.error404 .social-nav-item a svg {
    fill: #fff;
}

/*
body.error404 footer {
    position: absolute;
    left: 0;
    bottom: 0;
}  */

@media screen and (max-width: 1020px) {
    .footer-container .footer-item:nth-child(1) {
        order: 2;
    }

    .footer-container .footer-item:nth-child(2) {
        order: 1;
    }

    .footer-container .footer-item:nth-child(3) {
        order: 3;
        padding-top: 25px;
    }

    ul.mentions-nav-list {
        display: block;
    }

    ul.mentions-nav-list li {
        margin: 0;
        padding: 10px 0;
    }

    .footer-container {
        /*display: block;*/
        text-align: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    footer .footer-item {
        width: 100%;
        position: relative;
        padding: 0;
        display: block;
    }

    footer .main-nav-item a {
        padding: 0;
        font-size: 1.4rem;
    }

    #footer-social-nav {
        display: inline-block;
        width: auto;
        vertical-align: middle;
    }

    .gotop {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        left: 50%;
    }

    .hide-on-mobile {
        display: none !important;
    }
}

/*
** RGPD */

#cookie-law-info-bar.wt-cli-cookie-bar[style*="display: block;"]
~ .cli-popupbar-overlay {
    z-index: 99998;
    opacity: 0.6;
    transform: scale(1);
    transition: opacity 0.5s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar {
    overflow: auto;
    z-index: 99999 !important;
    bottom: 0px !important;
    left: 0px !important;
    max-height: 100vh;
    padding: 20px 0 !important;
    background-color: #fff !important;
    box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.2);
    color: #000 !important;
    font-size: 16px;
    text-align: left !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar > .cli-wrapper {
    width: 100%;
    max-width: 1660px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 30px;
    padding-left: 30px;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-cookie-banner-title {
    margin: 0 0 20px;
    font-size: rem(18px);
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-cookie-banner {
    display: block;
}

#cookie-law-info-bar.wt-cli-cookie-bar strong {
    font-weight: 500;
}

#cookie-law-info-bar.wt-cli-cookie-bar .message {
    font-size: rem(14px);
}

#cookie-law-info-bar.wt-cli-cookie-bar .message p,
#cookie-law-info-bar.wt-cli-cookie-bar .message {
    line-height: 1.5;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-policy-link {
    color: #000 !important;
    font-weight: 500;
    transition: all 0.2s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-policy-link:hover,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-policy-link:focus {
    color: #898888 !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar .actions-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 25px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .choices-wrapper {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    margin-left: -10px;
    margin-right: -10px;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-accept-all-btn,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-reject-btn {
    position: relative;
    display: inline-block;
    min-width: 190px;
    padding: 18px 60px !important;
    margin: 10px !important;
    background-color: #000 !important;
    border: 1px solid #000 !important;
    border-radius: 0px !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: 14px;
    font-weight: 400;
    line-height: 1em;
    text-decoration: none;
    text-transform: none;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.2s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-accept-all-btn:hover,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-reject-btn:hover,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-accept-all-btn:focus,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-reject-btn:focus {
    background-color: #333 !important;
    color: #fff !important;
    opacity: 1 !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn {
    position: relative;
    display: inline-block;
    min-width: 190px;
    padding: 18px 60px !important;
    margin: 10px !important;
    background-color: transparent !important;
    border: 1px solid #000 !important;
    border-radius: 0px !important;
    color: #000 !important;
    font-family: inherit !important;
    font-size: 14px;
    font-weight: 400;
    line-height: 1em;
    text-decoration: none;
    text-transform: none;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.2s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn:hover,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn:focus {
    background-color: #333 !important;
    color: #fff !important;
    opacity: 1 !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 8px;
    height: 8px;
    transform: translateY(-70%) rotate(135deg);
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: currentcolor;
    background: none;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn:hover,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn:focus {
    background-color: transparent !important;
    color: #ed1c24 !important;
    border-color: #ed1c24 !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-tab-container {
    margin-top: 15px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-tab-header {
    align-items: center;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-switch {
    height: 20px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-necessary-caption {
    margin: 0;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-body
.cli-switch
input:checked
+ .cli-slider {
    background-color: #ed1c24;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-slider::after {
    top: 50%;
    transform: translateY(-50%);
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-footer .cli-tab-container {
    margin-top: 20px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-footer .cli-tab-footer {
    padding: 0;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-footer .cli-row {
    overflow: visible;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-footer
.wt-cli-ckyes-brand-logo {
    display: none;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-footer
#wt-cli-privacy-save-btn {
    display: grid;
    position: relative;
    min-width: 190px;
    padding: 18px 60px !important;
    margin: 10px !important;
    background-color: #000 !important;
    border: 1px solid #000 !important;
    border-radius: 0px !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: 14px;
    font-weight: 400;
    line-height: 1em;
    text-decoration: none;
    text-transform: lowercase;
    cursor: pointer;
    text-align: center;
    transition: background-color 0.2s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-footer
#wt-cli-privacy-save-btn:first-letter {
    text-transform: uppercase;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-footer
#wt-cli-privacy-save-btn:hover,
#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-footer
#wt-cli-privacy-save-btn:focus {
    background-color: #333 !important;
    color: #fff !important;
    opacity: 1 !important;
}

@media only screen and (max-width: 480px) {
    #cookie-law-info-bar.wt-cli-cookie-bar .choices-wrapper {
        flex-wrap: wrap;
        justify-content: center;
    }

    #cookie-law-info-bar.wt-cli-cookie-bar .settings-link-wrapper {
        text-align: center;
    }
}

@media only screen and (min-width: 768px) {
    #cookie-law-info-bar.wt-cli-cookie-bar {
        padding: 35px 0 30px !important;
    }

    #cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-cookie-banner-title {
        font-size: rem(20px);
    }

    #cookie-law-info-bar.wt-cli-cookie-bar .actions-wrapper {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
    }

    /* #cookie-law-info-bar.wt-cli-cookie-bar .choices-wrapper {
    margin-right: 20px;
  } */
}

#cookie-law-info-again {
    z-index: 99999;
    bottom: 0px !important;
    left: 0 !important;
    right: auto !important;
    padding: 5px 10px;
    background-color: #fff !important;
    border-top-right-radius: 5px;
    box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.2);
    color: #000 !important;
    font-size: 1rem;
    line-height: 1;
}

#cookie-law-info-again #cookie_hdr_showagain {
    font-size: rem(14px);
    line-height: 1;
}

@media only screen and (min-width: 768px) {
    #cookie-law-info-again {
        left: 20px !important;
        border-top-left-radius: 5px;
    }
}

/* cookie banner */

/*  Settings */
.wt-cli-cookie-bar-container {
    --banner-bg: white;
    --banner-color: #000;
    --banner-padding: 1.5rem;
    --banner-radius: 0;
    --button-padding: 0.625rem 1.625rem;
    --button-radius: 0.25rem;
    --button-bg: #000;
    --button-bg-hover: #333;
    --button-color: #fff;
    --button-color-hover: #ffffff;
    --button-setting-bg: transparent;
    --button-setting-bg-hover: #ed1c24;
    --button-setting-color: #000;
    --button-setting-color-hover: #000;
    --switch-active-color: #ebe9e9;
    --show-again-btn-radius: 0.375rem;
}

#cookie-law-info-bar {
    html[data-whatinput="keyboard"] & a[class*="_button"]:focus::before {
        content: "";
        border-radius: calc(var(--button-radius) * 1.5);
        height: calc(100% + 1.25rem);
        width: calc(100% + 1.25rem);
        outline: 2px dotted #00000040;
        position: absolute;
        top: -0.625rem;
        left: -0.625rem;
    }
}

/*  Color layer */

.cli-modal-backdrop,
#cookie-law-info-bar.wt-cli-cookie-bar[style*="display: block;"]
~ .cli-popupbar-overlay {
    display: none !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar[style*="display: block;"]
~ .cli-popupbar-overlay {
    z-index: 99;
    opacity: 0.6;
    transform: scale(1);
    transition: opacity 0.5s ease;
}

/*  Banner */
#cookie-law-info-bar.wt-cli-cookie-bar {
    background-color: var(--banner-bg) !important;
    border-radius: var(--banner-radius, 0);
    box-shadow: 0 0 5px 1px rgba($ black, 0.2);
    color: var(--banner-color) !important;
    font-size: 1rem;
/ / inset: auto 1 rem 1 rem auto !important;
    width: 95%;
/ / left: 50 %;
/ / transform: translateX(- 50 %);
    right: 30px !important;
    bottom: 30px !important;
    max-height: 100vh;
    max-width: 450px;
    overflow: auto;
    padding: var(--banner-padding) !important;
    text-align: left !important;
    z-index: 1000 !important;
    margin: 0 !important;
    left: unset !important;

/ / container > . cli-wrapper {
/ / @include container;

    width: 100%;
} / / Title #wt-cli-cookie-banner-title {
    margin: 0 0 20px;
    font-size: rem(18px);
} / / Content #wt-cli-cookie-banner {
    display: block;
}

    .message {
        font-size: rem(14px);

        p,
        & {
            line-height: 1.5;
        }
    }

/ / Policy #wt-cli-policy-link {
    color: currentColor !important;
    font-weight: bold;
    opacity: 0.5;
    text-decoration: underline;
    transition: all 0.2s ease;

    @include hover {
        opacity: 1 !important;
    }
} / / Actions . actions-wrapper {
    margin-top: 25px;
}

    .actions-wrapper,
    .choices-wrapper {
        display: flex;
        flex-flow: row wrap;
        /* gap: 1rem; */
        justify-content: center;
    }

/ / Btns & links #wt-cli-accept-all-btn,
#wt-cli-reject-btn {
    background-color: var(--button-bg) !important;
    border: 2px solid var(--button-bg);
    border-radius: var(--button-radius) !important;
    color: var(--button-color) !important;
    font-size: rem(12px);
    font-weight: bold;
    line-height: normal;
    margin: 0 !important;
    opacity: 1 !important;
    padding: var(--button-padding) !important;
    transition: all 0.2s ease;

    &:last-child {
        margin: 0 !important;
    }

    @include hover {
        background-color: var(--button-bg-hover) !important;
        border-color: var(--button-bg-hover);
        color: var(--button-color-hover) !important;
    }
}

    #wt-cli-settings-btn {
        border: 2px solid var(--button-setting-color) !important;
        border-radius: var(--button-radius);
        background-color: var(--button-setting-bg) !important;
        color: var(--button-setting-color) !important;
        display: inline-block;
        font-size: rem(12px);
        font-weight: bold;
        line-height: normal;
        position: relative;
        padding: var(--button-padding);
        padding-right: 40px;
        transition: all 0.2s ease;
        text-transform: uppercase;

        &::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 20px;
            display: inline-block;
            width: 8px;
            height: 8px;
            transform: translateY(-70%) rotate(135deg);
            border-width: 1px 1px 0 0;
            border-style: solid;
            border-color: currentColor;
        }

        @include hover {
            background-color: transparent !important;
            border-color: var(--button-setting-bg-hover) !important;
            box-shadow: 5px 5px 15px rgba($ black, 0.1);
            color: var(--button-setting-color-hover) !important;
            text-decoration: none !important;
        }
    }

/ / Settings block . cli-modal-body {
    .cli-tab-container {
        margin-top: 15px;
    }

    .cli-necessary-caption {
        margin: 0;
    }

    .cli-switch .cli-slider {
        &::after {
            top: 50%;
            transform: translateY(-50%);
        }
    }

    .cli-switch input:checked + .cli-slider {
        background-color: var(--switch-active-color);
    }
}

    .cli-modal-footer {
        .cli-tab-container {
            margin-top: 20px;
        }

        .cli-tab-footer {
            padding: 0;
        }

        @media screen and (max-width: 576px) {
            .cli-tab-footer {
                text-align: center;
            }
        }

        .cli-row {
            overflow: visible;
        }

        .wt-cli-ckyes-brand-logo {
            display: none;
        }

        #wt-cli-privacy-save-btn {
            display: inline-block;
            padding: var(--button-padding) !important;
            background-color: var(--button-bg) !important;
            border: 2px solid var(--button-bg);
            border-radius: var(--button-radius) !important;
            color: var(--button-color) !important;
            font-size: rem(13px);
            font-weight: bold;
            line-height: normal;
            opacity: 1;
            transition: all 0.2s ease;

            @include hover {
                background-color: var(--button-bg-hover) !important;
                border-color: var(--button-bg-hover) !important;
            }
        }
    }
}

/*  Show again btn */
#cookie-law-info-again {
    z-index: 999;
    bottom: 0 !important;
    left: 10px !important;
    right: auto !important;
    padding: 5px 10px 3px;
    background-color: var(--banner-bg) !important;
    border-top-right-radius: var(--show-again-btn-radius);
    box-shadow: 0 0 5px 3px rgba($ black, 0.2);
    color: var(--banner-color) !important;
    font-size: 1rem;
    line-height: 1;

    #cookie_hdr_showagain {
        background-color: var(--banner-bg);
        font-size: rem(14px);
        line-height: 1;
    }
}

@media screen and (min-width: 576px) {
    #cookie-law-info-again {
        border-top-left-radius: var(--show-again-btn-radius);
    / / right: 20 px !important;
        width: fit-content !important;
    / / left: unset !important;
    }
}

@media screen and (min-width: 768px) {
    #cookie-law-info-bar.wt-cli-cookie-bar {
        #wt-cli-cookie-banner-title {
            font-size: rem(20px);
        }
    }
}

@media screen and (max-width: 768px) {
    #cookie-law-info-bar.wt-cli-cookie-bar {
        .settings-link-wrapper {
            text-align: center;
        }
    }

    #cookie-law-info-bar.wt-cli-cookie-bar.wt-cli-cookie-bar {
        left: 50% !important;
        bottom: 10px !important;
        transform: translateX(-50%);
        right: unset !important;
    }

    #cookie-law-info-bar .cli-tab-footer .cli-btn {
        margin: auto !important;
    }

    [id*="-btn"] {
        text-align: center;
    }
}

:root {
    --banner-bg: white;
    --banner-color: #000;
    --banner-padding: 1.5rem;
    --banner-radius: 0;
    --button-padding: 0.625rem 1.625rem;
    --button-radius: 0.25rem;
    --button-bg: #d1e1ff;
    --button-bg-hover: #c3d5f6;
    --button-color: #000;
    --button-color-hover: #ffffff;
    --button-setting-bg: transparent;
    --button-setting-bg-hover: #c3d5f6;
    --button-setting-color: #000;
    --button-setting-color-hover: #000;
    --switch-active-color: #ebe9e9;
    --show-again-btn-radius: 0.375rem;
}

html[data-whatinput="keyboard"]
#cookie-law-info-bar
a[class*="_button"]:focus::before {
    content: "";
    border-radius: calc(var(--button-radius) * 1.5);
    height: calc(100% + 1.25rem);
    width: calc(100% + 1.25rem);
    outline: 2px dotted #00000040;
    position: absolute;
    top: -0.625rem;
    left: -0.625rem;
}

.cli-modal-backdrop,
#cookie-law-info-bar.wt-cli-cookie-bar[style*="display: block;"]
~ .cli-popupbar-overlay {
    display: none !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar[style*="display: block;"]
~ .cli-popupbar-overlay {
    z-index: 99;
    opacity: 0.6;
    transform: scale(1);
    transition: opacity 0.5s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar {
    background-color: var(--banner-bg) !important;
    border-radius: var(--banner-radius, 0);
    box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.2);
    color: var(--banner-color) !important;
    font-size: 1rem;
    width: 95%;
    right: 30px !important;
    bottom: 30px !important;
    max-height: 100vh;
    max-width: 450px;
    overflow: auto;
    padding: var(--banner-padding) !important;
    text-align: left !important;
    z-index: 1000 !important;
    margin: 0 !important;
    left: unset !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar > .cli-wrapper {
    width: 100%;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-cookie-banner-title {
    margin: 0 0 20px;
    font-size: 18px;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-cookie-banner {
    display: block;
}

#cookie-law-info-bar.wt-cli-cookie-bar .message {
    font-size: 14px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .message p,
#cookie-law-info-bar.wt-cli-cookie-bar .message {
    line-height: 1.5;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-policy-link {
    color: currentColor !important;
    font-weight: bold;
    opacity: 0.5;
    text-decoration: underline;
    transition: all 0.2s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-policy-link:hover {
    opacity: 1 !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar .actions-wrapper,
#cookie-law-info-bar.wt-cli-cookie-bar .choices-wrapper {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

#cookie-law-info-bar.wt-cli-cookie-bar .actions-wrapper {
    margin-top: 25px;
}

/* #cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-accept-all-btn,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-reject-btn {
  background-color: var(--button-bg) !important;
  border: 2px solid var(--button-bg);
  border-radius: var(--button-radius) !important;
  color: var(--button-color) !important;
  font-size: 12px;
  font-weight: bold;
  line-height: normal;
  margin: 0 !important;
  opacity: 1 !important;
  padding: var(--button-padding) !important;
  transition: all 0.2s ease;
} */

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-accept-all-btn:hover,
#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-reject-btn:hover {
    background-color: var(--button-bg-hover) !important;
    border-color: var(--button-bg-hover);
    color: var(--button-color-hover) !important;
}

/* #cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn {
  border: 2px solid var(--button-setting-bg-hover) !important;
  border-radius: var(--button-radius);
  background-color: var(--button-setting-bg) !important;
  color: var(--button-setting-bg-hover) !important;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  line-height: normal;
  position: relative;
  padding: var(--button-padding);
  padding-right: 40px;
  transition: all 0.2s ease;
  text-transform: uppercase;
} */

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    display: inline-block;
    width: 8px;
    height: 8px;
    transform: translateY(-70%) rotate(135deg);
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: currentColor;
}

#cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-settings-btn:hover {
    background-color: transparent !important;
    border-color: var(--button-setting-bg-hover) !important;
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1);
    color: var(--button-setting-bg-hover) !important;
    text-decoration: none !important;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-tab-container {
    margin-top: 15px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-body .cli-necessary-caption {
    margin: 0;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-body
.cli-switch
.cli-slider::after {
    top: 50%;
    transform: translateY(-50%);
}

/*
#cookie-law-info-bar.wt-cli-cookie-bar
  .cli-modal-body
  .cli-switch
  input:checked
  + .cli-slider {
  background-color: var(--switch-active-color);
} */

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-footer .cli-tab-container {
    margin-top: 20px;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-footer .cli-tab-footer {
    padding: 0;
}

#cookie-law-info-bar.wt-cli-cookie-bar .cli-modal-footer .cli-row {
    overflow: visible;
}

#cookie-law-info-bar.wt-cli-cookie-bar
.cli-modal-footer
.wt-cli-ckyes-brand-logo {
    display: none;
}

/* #cookie-law-info-bar.wt-cli-cookie-bar
  .cli-modal-footer
  #wt-cli-privacy-save-btn {
  display: inline-block;
  padding: var(--button-padding) !important;
  background-color: var(--button-bg) !important;
  border: 2px solid var(--button-bg);
  border-radius: var(--button-radius) !important;
  color: var(--button-color) !important;
  font-size: 13px;
  font-weight: bold;
  line-height: normal;
  opacity: 1;
  transition: all 0.2s ease;
}

#cookie-law-info-bar.wt-cli-cookie-bar
  .cli-modal-footer
  #wt-cli-privacy-save-btn:hover {
  background-color: var(--button-bg-hover) !important;
  border-color: var(--button-bg-hover) !important;
} */

#cookie-law-info-again {
    z-index: 999;
    bottom: 0 !important;
    left: 10px !important;
    right: auto !important;
    padding: 5px 10px 3px;
    background-color: var(--banner-bg) !important;
    border-top-right-radius: var(--show-again-btn-radius);
    box-shadow: 0 0 5px 3px rgba(0, 0, 0, 0.2);
    color: var(--banner-color) !important;
    font-size: 1rem;
    line-height: 1;
}

#cookie-law-info-again #cookie_hdr_showagain {
    background-color: var(--banner-bg);
    font-size: 14px;
    line-height: 1;
}

@media screen and (min-width: 576px) {
    #cookie-law-info-again {
        border-top-left-radius: var(--show-again-btn-radius);
        width: fit-content !important;
    }
}

@media screen and (min-width: 768px) {
    #cookie-law-info-bar.wt-cli-cookie-bar #wt-cli-cookie-banner-title {
        font-size: 20px;
    }
}

@media screen and (max-width: 768px) {
    #cookie-law-info-bar.wt-cli-cookie-bar .settings-link-wrapper {
        text-align: center;
    }

    #cookie-law-info-bar.wt-cli-cookie-bar.wt-cli-cookie-bar {
        left: 50% !important;
        bottom: 10px !important;
        transform: translateX(-50%);
        right: unset !important;
    }

    #cookie-law-info-bar .cli-tab-footer .cli-btn {
        margin: auto !important;
    }

    [id*="-btn"] {
        text-align: center;
    }
}
