figure.wp-block-table {
	overflow: initial;
}
.wp-block-table td:empty:after {
	content: 'Empty cell';
	visibility: hidden;
}
.wp-block-table figcaption {
    font-style: italic;
    text-align: center;
    font-size: 13px;
    line-height: 1;
    margin-top: 20px;
}
table {
	border: 1px solid #dedede;
	margin: 10px 0px;
	border-spacing: 0;
}
figure.wp-block-table th {
	border: 1px solid #dedede;
	background: #84623B;
	color: #F7F7F2;
	font-weight: bold;
	padding: 12px;
}
figure.wp-block-table td {
	border: 1px solid #dedede;
	padding: 12px;
}
figure.wp-block-table thead {
	border: none;
}
footer {
	position: relative;
	z-index: 1;
	text-align: center;
}
#footerInner {
    position: relative;
    width: 90%;
    max-width: 1120px;
    margin: 0px auto;
    padding: 0 0px 50px 0px;
}
#footerInner:before {
    content: '';
    width: 100%;
    height: 1px;
    background: #221B13;
    position: absolute;
    left: 0;
    top: 50px;
}
#footerInner > svg {
    background: #DDDBCB;
    padding: 0 60px 60px 60px;
    position: relative;
    z-index: 1;
}
footer a {
	text-decoration: none;
}
footer a:hover {
	text-decoration: underline;
}
#signature {
    font-size: 12px;
    padding: 0 5% 55px 5%;
}
::selection {
	background-color: #84623B;
	color: #F7F7F2;
}
#wrapper .wp-block-image {
    margin: 0;
}
body:not(.home) #wrapper p a,
body:not(.home) #wrapper li a {
	transition: 0.2s ease-in-out;
}
body:not(.home) #wrapper p a:hover,
body:not(.home) #wrapper li a:hover {
	color: #84623B;
}
#wrapper .wp-block-column > :first-child,
.wp-block-cover__inner-container > :first-child {
	margin-top: 0;
}
#wrapper .wp-block-column > :last-child,
#wrapper .wp-block-cover__inner-container > :last-child,
#wrapper div#text .wp-block-group__inner-container > div:last-child {
	margin-bottom: 0;
}
#wrapper div#text > *:not(.wp-block-cover):not(.wp-block-group),
#wrapper div#text > figure,
#wrapper div#text > ul,
#wrapper div#text > .wp-block-group > .wp-block-group__inner-container,
#wrapper div#text > p,
body.single-product #wrapperInner {
	width: 90%;
	max-width: 1120px;
	margin-left: auto;
    margin-right: auto;
	box-sizing: border-box;
}
#wrapper div#text > ul {
	padding-left: 15px;
}
.wp-block-cover {
	overflow: hidden;
}
.wp-block-cover img {
    transition: transform 0.4s ease-out;
}
.wp-block-cover.is_hovered img {
	transform: scale(1.1);
}
.wp-block-group__inner-container > .wp-block-cover h2 {
    max-width: 740px;
    margin: 0 auto;
}
div .wp-block-image figcaption {
    margin-top: 15px;
    text-align: center;
    font-style: italic;
    font-size: 15px;
}
.wp-block-columns.gap10,
.gap10 {
	gap: 10px;
}
.wp-block-columns.gap20,
.gap20 {
	gap: 20px;
}
.wp-block-columns.gap30,
.gap30 {
	gap: 30px;
}
.wp-block-columns.gap40,
.gap40 {
	gap: 40px;
}
.wp-block-columns.gap50,
.gap50 {
	gap: 50px;
}





/* ----------------------- PAGE CONTACT / FORMULAIRES ----------------------- */

.wpforms-container ul li:before {
	display: none;
}
div form.wpforms-form {
	position: relative;
}
div div.wpforms-container-full button[type=submit]:focus:after {
	display: none;
}
@media (min-width: 1200px) {
	div .wpforms-container .wpforms-submit-container {
		position: absolute;
		right: 0;
		bottom: -40px;
		margin: 0;
		padding: 0;
	}
}
#wrapper div div.wpforms-container-full input:focus,
#wrapper div div.wpforms-container-full textarea:focus {
    border-color: #221B13;
    box-shadow: 0 0 0 1px #221B13, 0px 1px 2px rgba(0,0,0,0.15);
}
#wrapper div div.wpforms-container-full ::placeholder {
	color: #969696;
	opacity: 1;
}
#wrapper .wpforms-confirmation-container-full p {
    margin: 0;
}
#wrapper div .wpforms-field-container > div.wpforms-field {
	padding: 12px 0;
}
#wrapper div .wpforms-field-container > div.wpforms-field .wpforms-field {
    padding: 24px 0 0 0;
}
#wrapper div .wpforms-field-container > div.wpforms-field:first-child {
    padding-top: 0;
    margin-top: -10px;
}


/* ------------------------- PAGE 404 ------------------------- */

body.error404 #chapterPicture > .title_and_bc:first-child {
    position: relative;
    padding: 160px 5% 70px 5%;
}
body.error404 .widget_breadcrumb {
	display: none;
}
body.error404 #chapterPicture {
	height: auto !important;
}
body.error404 article {
	text-align: center;
}
body:not(.home).error404 .title_and_bc h1 {
	margin: 0;
}


body:not(.home) #wrapper p {
	margin: 0 0 15px 0;
}
body:not(.home) #wrapper figure + *,
#wrapper .wp-block-image + p {
    margin-top: 20px;
}
#wrapper .wp-block-cover .wp-block-cover__inner-container {
    width: 90%;
    max-width: 1120px;
}
div :where(.wp-block-columns.is-layout-flex) {
    gap: 3em;
}



.no-margin {
	margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.wp-block-column {
    box-sizing: border-box;
}
@media (min-width: 980px) {
	.is_hidden_on_desktop {
		display: none !important;
	}
}
#wrapper .wp-block-separator {
    margin: 20px 0px;
    max-width: 100px;
}
#wrapper .wp-block-columns .wp-block-column.is-vertically-aligned-center.has-background hr {
    width: 100px;
    margin-top: 5px;
}
#wrapper .wp-block-columns .wp-block-column.is-vertically-aligned-center.has-background {
    align-self: initial;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}


.wp-block-columns {
	margin-bottom: 2.25em;
}

@media (max-width: 930px) {
	.wp-block-spacer {
		max-height: 70px;
	}
	#container {
		margin: 0px 0px 70px 0px;
	}
	.is_hidden_on_mobile {
		display: none !important;
	}
	.invert-columns-order {
		flex-direction: column-reverse;
	}
	div :where(.wp-block-columns.is-layout-flex) {
		gap: 2em;
	}
}
@media (max-width: 980px) {
	body #baguetteBox-overlay .full-image img {
		max-height: 85%;
		max-width: 85%;
	}
	html body {
		--wp--preset--spacing--20: 2.5vw;
		--wp--preset--spacing--30: 2.5vw;
		--wp--preset--spacing--40: 2.5vw;
		--wp--preset--spacing--50: 5vw;
		--wp--preset--spacing--60: 5vw;
		--wp--preset--spacing--70: 5vw;
	}
}

/* galerie 2024 */
:root {
    --wp--style--gallery-gap-default: 20px;
}
#wrapper .wp-block-gallery img {
    transition: 0.2s ease-in-out;
}
#wrapper .wp-block-gallery img:hover {
    opacity: 0.8;
}
#wrapper .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>a,
#wrapper .wp-block-gallery figure:not(:has(> a)) {
    display: block;
}
#wrapper .wp-block-gallery.columns-3 figure.wp-block-image:not(#individual-image) img,
#wrapper .wp-block-gallery.columns-default figure.wp-block-image:not(#individual-image) img {
    height: 240px;
}
#wrapper .wp-block-gallery.columns-4 figure.wp-block-image:not(#individual-image) img {
    height: 190px;
}
#wrapper .wp-block-gallery.columns-5 figure.wp-block-image:not(#individual-image) img {
    height: 150px;
}
















footer ul.menu {
    margin: 0;
    display: flex;
    gap: 60px;
}
footer ul.sub-menu {
	display: none;
}
footer .flex {
    display: flex;
    align-items: center;
	justify-content: center;
    gap: 70px;
}
footer .flex > a {
    font-size: 24px;
    font-family: 'professor';
    display: flex;
    align-items: center;
    gap: 12px;
}
footer .menu a {
    font-size: 20px;
    font-style: italic;
}













#fond {
    background: #221B13;
    padding: 125px 0;
    color: #F7F7F2;
}
#fond .flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	width: 90%;
	max-width: 1050px;
	margin: 0 auto;
}
#fond .flex1 .img {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 16px;
}
#fond .flex1 .img img {
    width: calc(50% - 8px);
    height: 410px;
    object-fit: cover;
}
#fond .flex1 .img > img:last-child {
    width: 100%;
    height: 325px;
    object-fit: cover;
}
#fond .flex1 .img {
    width: 50%;
}
#fond .flex1 .txt {
    width: 40%;
}
#fond h2 {
    margin: 0 0 30px 0;
}
#fond .flex1 .txt > ul:last-child {
    justify-content: flex-start;
    margin-top: 95px;
}





#fond .flex2 li,
#fond .legende {
    line-height: 1.35em;
    font-size: 32px;
    font-family: 'professor';
    letter-spacing: 0.06em;
}
#fond .flex2 li:before {
    background: #F7F7F2;
    width: 48px;
    height: 1px;
    border-radius: 0;
    top: 21px;
    left: -77px;
    transform: rotate(-1deg);
}
#fond .flex2 .inner {
    max-width: 365px;
	position: relative;
}
#fond .flex2 ul > li:not(:last-child) {
	margin-bottom: 40px;
}
#fond .flex2 ul {
    margin: 0 0 0 75px;
}
#fond .flex2 img {
    position: absolute;
    bottom: 0;
    right: -255px;
	z-index: 2;
}
#fond .flex2 {
    margin: -270px auto 155px;
}
#fond .flex2 img.feuille {
    z-index: 1;
    left: 530px;
    bottom: -60px;
}





#fond .flex3 {
    max-width: 900px;
    align-items: center;
}
#fond .flex3 > div {
    width: 46%;
}
#fond .flex3 img {
    width: 100%;
    height: auto;
    margin-bottom: 25px;
}
#fond .legende {
    text-align: center;
    display: block;
    line-height: 1.1em;
}
#fond .flex3 .txt > :last-child {
	margin: 35px 0 95px 0;
}







#ou {
    width: 90%;
    max-width: 980px;
    margin: 120px auto 85px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#ou .carte {
    flex-shrink: 0;
    margin-left: 120px;
}
#ou h2 {
    margin: 0 0 20px 0;
}
#ou .txt > ul:last-child {
    justify-content: flex-start;
    margin-top: 70px;
}









#baguetteBox-overlay {
    display: none;
    opacity: 0;
    position: fixed;
    overflow: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000000;
    background-color: #222;
    background-color: rgba(0, 0, 0, .8);
    transition: opacity .5s ease
}

#baguetteBox-overlay.visible {
    opacity: 1
}

#baguetteBox-overlay .full-image {
    display: inline-block;
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center
}

#baguetteBox-overlay .full-image figure {
    display: inline;
    margin: 0;
    height: 100%
}

#baguetteBox-overlay .full-image img {
    display: inline-block;
    width: auto;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    vertical-align: middle;
    box-shadow: 0 0 8px rgba(0, 0, 0, .6)
}

#baguetteBox-overlay .full-image figcaption {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center;
    line-height: 1.8;
    white-space: normal;
    color: #ccc;
    background-color: #000;
    background-color: rgba(0, 0, 0, .6);
    font-family: sans-serif
}

#baguetteBox-overlay .full-image:before {
    content: "";
    display: inline-block;
    height: 50%;
    width: 1px;
    margin-right: -1px
}

#baguetteBox-slider {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    white-space: nowrap;
    transition: left .4s ease, transform .4s ease
}

#baguetteBox-slider.bounce-from-right {
    animation: bounceFromRight .4s ease-out
}

#baguetteBox-slider.bounce-from-left {
    animation: bounceFromLeft .4s ease-out
}

@keyframes bounceFromRight {

    0%,
    100% {
        margin-left: 0
    }

    50% {
        margin-left: -30px
    }
}


@keyframes bounceFromLeft {

    0%,
    100% {
        margin-left: 0
    }

    50% {
        margin-left: 30px
    }
}

.baguetteBox-button#next-button,
.baguetteBox-button#previous-button {
    top: 50%;
    top: calc(50% - 30px);
    width: 44px;
    height: 60px
}

.baguetteBox-button {
    position: absolute;
    cursor: pointer;
    outline: 0;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 15%;
    background-color: #323232;
    background-color: rgba(50, 50, 50, .5);
    color: #ddd;
    font: 1.6em sans-serif;
    transition: background-color .4s ease
}

.baguetteBox-button:focus,
.baguetteBox-button:hover {
    background-color: rgba(50, 50, 50, .9)
}

.baguetteBox-button#next-button {
    right: 2%
}

.baguetteBox-button#previous-button {
    left: 2%
}

.baguetteBox-button#close-button {
    top: 20px;
    right: 2%;
    right: calc(2% + 6px);
    width: 30px;
    height: 30px
}

.baguetteBox-button svg {
    position: absolute;
    left: 0;
    top: 0
}

.baguetteBox-spinner {
    width: 40px;
    height: 40px;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -20px
}

.baguetteBox-double-bounce1,
.baguetteBox-double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff;
    opacity: .6;
    position: absolute;
    top: 0;
    left: 0;
    animation: bounce 2s infinite ease-in-out
}

.baguetteBox-double-bounce2 {
    animation-delay: -1s
}

@keyframes bounce {

    0%,
    100% {
        transform: scale(0)
    }

    50% {
        transform: scale(1)
    }
}

footer .hidden_on_desktop {
    display: none;
}






@media (max-width: 1050px) {
    #fond .flex {
        flex-direction: column;
        gap: 6.5vw;
    }
    #fond .flex3 .txt > :last-child,
    #fond .flex1 .txt > ul:last-child,
    #ou .txt > ul:last-child {
        margin: 30px 0 0 0;
    }
    #fond .flex1 .txt {
        width: 100%;
    }
    #fond .flex2 {
        margin: 6.5vw auto;
        align-items: center;
    }
    #fond .flex1 .img {
        width: 100%;
    }
    #fond .flex1 .img img {
        height: 60vw;
    }
    #fond .flex1 .img > img:last-child {
        height: 50vw;
    }
    #fond .flex2 img.feuille {
        display: none;
    }
    #fond .flex2 img {
        right: 0;
        position: relative;
        display: block;
        margin: 40px auto 0;
    }
    #fond .flex3 {
        flex-direction: column-reverse;
    }
    #fond .flex3 > div {
        width: 100%;
    }
}
@media (max-width: 1110px) {
    #ou .carte {
        margin-left: 0;
    }
    #ou {
        flex-direction: column;
        text-align: center;
        gap: 60px;
    }
    #ou .txt > ul:last-child {
        justify-content: center;
    }
}
@media (max-width: 1190px) {
    footer ul.menu {
        gap: 15px;
        flex-direction: column;
    }
    footer .flex {
        flex-direction: column;
        gap: 45px;
    }
    #footerInner > svg {
        padding: 0 40px 40px 40px;
    }
}






@media (max-width: 500px) {
    #wrapper div#text > *:not(.wp-block-cover):not(.wp-block-group), 
	#wrapper div#text > figure, 
	#wrapper div#text > ul, 
	#wrapper div#text > .wp-block-group > .wp-block-group__inner-container, 
	#wrapper div#text > p, 
	#wrapper .wp-block-cover .wp-block-cover__inner-container,
    #fond .flex {
		width: 87%;
	}
	.baguetteBox-button#previous-button,
	.baguetteBox-button#next-button {
		display: block !important;
		transform: scale(0.7);
	}
    .wp-block-spacer {
		max-height: 50px;
	}
	#container {
		margin: 0px 0px 60px 0px;
	}
	td {
		font-size: 14px;
	}
	html body {
		--wp--preset--spacing--20: 5vw;
		--wp--preset--spacing--30: 5vw;
		--wp--preset--spacing--40: 5vw;
		--wp--preset--spacing--50: 7.5vw;
		--wp--preset--spacing--60: 7.5vw;
		--wp--preset--spacing--70: 7.5vw;
		--wp--preset--spacing--80: 45px;
		--wp--preset--font-size--small: 13px;
		--wp--preset--font-size--medium: 18px;
		--wp--preset--font-size--large: 24px;
		--wp--preset--font-size--x-large: 30px;
	}
	div .wp-block-cover, 
	div .wp-block-cover-image {
		min-height: 350px;
	}
	#wrapper .wp-block-gallery.columns-4 figure.wp-block-image:not(#individual-image) img,
	#wrapper .wp-block-gallery.columns-3 figure.wp-block-image:not(#individual-image) img,
	#wrapper .wp-block-gallery.columns-default figure.wp-block-image:not(#individual-image) img,
	#wrapper .wp-block-gallery.columns-5 figure.wp-block-image:not(#individual-image) img {
		height: 28vw;
	}
	.wp-block-columns {
		margin-bottom: 1.75em;
	}
    #wrapper .wpforms-container .wpforms-submit-container {
        text-align: center;
        margin: 20px 0 15px 0;
    }
	#wrapper div .wpforms-field-container div.wpforms-field {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding-bottom: 8px;
	}
	#wrapper div .wpforms-field-container > div.wpforms-field .wpforms-field {
		padding: 16px 0 0 0;
	}
    #fond {
        padding: 65px 0;
    }
    #fond h2 {
		margin: 0 0 25px 0;
	}
	#fond .flex1 .img {
		row-gap: 6.5vw;
	}
    #fond .flex1 .img img {
        width: calc(50% - 3.25vw);
    }
    #fond .flex {
        gap: 62px;
    }
    #fond .flex2 li:before {
        display: none;
    }
    #fond .flex2 li, #fond .legende {
        font-size: 28px;
    }
    #fond .flex2 ul > li:not(:last-child) {
        margin-bottom: 25px;
    }
    #fond .flex2 li {
        text-align: center;
    }
    #fond .flex2 ul {
        margin: 30px 0 0 0;
    }
    #fond .flex2 {
        margin-bottom: 65px;
    }
    #ou {
        margin-top: 60px;
        gap: 35px;
    }
    #ou .txt > ul:last-child {
        flex-direction: column;
    }
    #ou .carte img {
        height: 73vw;
    }
    #signature {
        padding: 0 6.5% 25px 6.5%;
    }
}






#wrapper div.product .woocommerce-tabs ul.tabs li:not(.active) {
    background: #84623B;
}
#wrapper div.product .woocommerce-tabs ul.tabs li:not(.active) a {
    color: #DDDBCB;
}
#wrapper div.product .woocommerce-tabs ul.tabs {
    padding: 0;
}
body:not(.home) #wrapper p.price {
    color: #221B13;
    font-size: 40px;
    margin-top: -10px;
}
#wrapper div.product form.cart div.quantity {
    margin-right: 12px;
}
body.single-product #wrapper .qty {
    height: 64px;
    font-size: 22px;
    width: 64px;
}
#wrapper div.product form.cart {
    margin: 35px 0 0 0;
}
#wrapper div.product div.summary {
    margin-bottom: 80px;
}
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {
  opacity: 1;
}
#wrapper .wc-block-cart .wp-block-woocommerce-cart-order-summary-block {
    margin-bottom: 74px;
}
body:not(.home) #wrapper p.wc-block-components-checkout-order-summary__title-text {
    padding: 0 16px;
}
#wrapper button.wc-block-components-checkout-place-order-button .wc-block-components-checkout-place-order-button__text {
    justify-content: center;
    font-size: 22px;
}





body h2.wc-block-mini-cart__title {
    font-size: 24px;
}
body.drawer-open {
    overflow: initial !important;
}
body .wc-block-mini-cart__footer-actions a {
    text-decoration: none;
}
body div.wc-block-mini-cart__footer-actions a.wc-block-mini-cart__footer-checkout {
    background: #221B13;
    color: #F7F7F2;
}
.wc-block-components-totals-item__description {
    line-height: 1.5em;
    margin-top: 10px;
}
button.wc-block-components-drawer__close {
    cursor: pointer;
    outline: none !important;
    box-shadow: none !important;
}
#wrapper:has(.wc-block-store-notice.is-error) a.wc-block-cart__submit-button {
    cursor: default;
    opacity: 0.25;
}
#wrapper:has(.wc-block-store-notice.is-error) a.wc-block-cart__submit-button:hover {
    background: #221B13 !important;
    color: #F7F7F2;
}
body.woocommerce-checkout #wrapper .wc-block-components-product-metadata {
    display: none;
}
body.woocommerce-checkout #wrapper .wp-block-woocommerce-checkout-actions-block {
    padding: 0;
}
body.woocommerce-cart #wrapper .wc-block-cart {
    margin-bottom: 0;
}

ul.woocommerce-thankyou-order-details, #wrapper .rc-shipping-info > ul:last-child {
    padding-left: 20px;
}

#wrapper .rc-shipping-info {
    padding: 40px 40px 30px 40px;
}


@media (max-width: 500px) {
    #wrapper div.product .woocommerce-tabs ul.tabs {
        font-size: 13px;
    }
    body .wc-block-cart .wc-block-cart__submit-container--sticky {
        padding: 0;
    }
}

.wc-block-mini-cart__empty-cart-wrapper {
    text-align: center;
}