/*
/* Responsive petits écrans PC
*/

/* Ecrans moyens */
@media (min-width: 1064px) and (max-width: 1600px) {
    
    :root {
		--header-height: 12rem;
		--header-height-mini: 8rem;
		--baseline-height: 5rem;
		--planning-row-height: 5rem
    }
    

	.storefront-primary-navigation {
		margin-right: 4rem;
	}

	#masthead .shutter-menu__main li > a {
		font-size: var(--font-size-small);
	}

	#masthead.etat2 .shutter-menu__wrapper .menu-button-1 a,
	#masthead :where(.menu-button-1, .menu-button-2) a
	{
		font-size: var(--font-size-medium);
	}

	#masthead .shutter-menu li.menu-picto > a {
		font-size: var(--font-size-small);
	}

	#masthead :where(.menu-button-1, .menu-button-2) a, a.rdv-link {
		font-size: var(--font-size-medium);
	}

	#masthead a.coordonnees.telephone {
		font-size: var(--font-size-medium);
		transform: translateY(-.5rem);
	}

	.header__baseline h1 {
		font-size: calc(.9 * var(--font-size-large));
	}

	.header__menu-trigger {
		width: 6rem;
		height: 4rem;
	}

	.cartouche h1 {
		font-size: var(--font-size-medium);
	}

	.cartouche h1 p {
		text-transform: none;
		font-size: var(--font-size-large);
		margin-top: 1.375rem;
	}

	a.wp-block-button__link {
		font-size: var(--font-size-small);
	}

	.cartouche {
		bottom: 6rem;
		width: 50vw;
		padding: 2vw 3vw;
	}

	.main-product__cards {
		font-size: .6rem;
		padding: 2rem 1rem;
	}

	#main-product-container a.product-card__main-link {
		padding: 2rem 1rem;
	}

	.product-card-container {
		min-height: 25rem;
	}

	a.rdv-link{
		font-size: var(--font-size-small);
		padding: 1rem;
		min-height: 0;
	}

	a.rdv-link::before{
		width: 1.325rem;
		height: 1.625rem;
		left: .6vw;
	}

	body.post-type-archive-product .cartouche {
		width: 50vw;
	}

	body.post-type-archive-product .cartouche h1 p {
		margin: .5rem 0;
	}

	.scenarios__warning {
		padding: 2vw 3vw;
		font-size: var(--font-size-medium);
	}

	.entry-summary {
		font-size: .6rem;
		gap: 2rem;
		padding: 1rem;
	}

	.checkout.woocommerce-checkout h3{
		font-size: var(--font-size-large);
		margin-top: 3rem;
	}

	.shop_table {
		font-size: var(--font-size-small);
	}

	#order_review p, .woocommerce-billing-fields label, .woocommerce-shipping-fields label {
  		font-size: var(--font-size-small);
	}

	.card-container {
		height: 18rem;
		padding: 1rem;
	}

	.entry-content a.telephone {
		padding: 2rem;
		font-size: var(--font-size-large);
	}

	.banner.no-img {
	height: 22rem;
	}

}

/* Ecrans petits */
@media (min-width: 1064px) and (max-width: 1400px) {
	#colophon > div.col-full{
		flex-direction: column;
		padding-top: 3rem;
	}
}

/* Tablettes et Smartphones */
@media (max-width: 991.98px) {


    :root {
		--header-height-mini:5rem;
        --logo-wrapper-width: 20vw;
		--button-width: 3rem;
    }

	.menu-toggle,
	.handheld-navigation,
	.main-navigation.toggled
	.handheld-navigation,
	.main-navigation.toggled div.menu
	{
		display: block;
	}

	.header__menu-trigger{
		display: none;
	}

	.handheld-navigation{
		background-color: var(--couleur-1);
		font-size: var(--font-size-large);
		height: 100vh;
		position: absolute;
		top: 0;
		left: 0;
		overflow: scroll;
		width: 100vw;
	}

	#menu-menu-mobile{
		padding-top: 8rem;
	}

	.main-navigation ul li a:hover, .main-navigation ul li:hover > a, .site-title a:hover, .site-header ul.menu li.current-menu-item > a {
		color: var(--couleur-3);
	}

	.main-navigation ul li a:hover, .main-navigation ul li:hover > a, .site-title a:hover, .site-header ul.menu li.current-menu-item > a {
		color: var(--couleur-3);
	}

	.main-navigation ul li a:hover, .main-navigation ul li{
		margin: 1rem 2rem;;
	}

	#masthead :where(.menu-button-1, .menu-button-2) a, a.rdv-link {
		font-size: var(--font-size-medium);
	}

	
	#site-navigation button{
		width: 4rem;
		height: 2rem;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		background-color: var(--couleur-3);
		border-radius: 99rem;
		padding: 0;
		margin: auto;
		z-index: 10;
	}

	button.menu-toggle span{
		overflow: visible;
		width: 1.5rem;
	}

	button.menu-toggle::before,
	button.menu-toggle::after,
	button.menu-toggle span::before
	{
		content: '';
		display: block;
		height: 4px;
		width: 1.5rem;
		position: static;
		top: 50%;
		left: 1em;
		margin-top: 0px;
		-webkit-transition: all, ease, 0.2s;
		transition: all, ease, 0.2s;
		border-radius: 99rem;
	}

	#site-navigation-menu-toggle{
		padding: 0;
	}

	.toggled button.menu-toggle::after {
		transform: rotate(-45deg) translateY(-6px);
	}

	.toggled button.menu-toggle::before {
		transform: rotate(45deg) translateY(6px);
	}

	.entry-content,
	#content > .col-full
	{
		width: 100vw;
		max-width: 100vw;
	}

	.entry-content > *:not(.alignfull){
		max-width: 90vw;
		margin-left: auto;
		margin-right: auto;
	}

	#content > .col-full{
		margin: 0;
		padding: 0;
	}

	.banner {
		margin-left: auto;
		margin-right: auto;
	}

	#masthead.etat2 .logo-wrapper > .coordonnees--telephone{
		top: 50%;
		right: auto;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	#main-container .site-content {
		margin-top: var(--header-height-mini) !important;
	}

	#main-container *:not(.avoid-mobile-column):not(span){
		flex-direction: column;
	}

	:root{
		--card-height: 25vh;
	}

	.home-cards-container {
		max-height: calc(2.5 * var(--card-height));
		justify-content: flex-end;
	}

	.card-container {
		width: 100%;
		min-height: var(--card-height);
	}

	#masthead.etat2 .header__baseline {
		max-height: none;
		height: fit-content;
		padding: 0;
	}

	#masthead.etat2 .header__baseline h1 {
		font-size: calc(.9 * var(--font-size-small));
		padding: 0.5rem;
	}

	h2{
		font-size: calc(.8 * var(--font-size-large));
	}

	.main-product__element {
		width: 90%;
		margin: 0 auto
	}

	.main-product__cards {
		gap: 2rem;
	}

	.illu-produits {
		display: none;
	}

	.product-card-container{
		font-size: .7rem;
		min-height: 0;
		padding-bottom: 2rem;
	}

	#main-product-container a.rdv-link {
		font-size: var(--font-size-small);
	}

	#masthead .menu-button-2 a::before,
	a.rdv-link::before
	{
		position: static;
		width: 2rem;
		height: 2.5rem;
		transform: none;
	}

	.wp-block-column {
		max-width: 100%;
	}

	.entry-content a.telephone {
		margin: 0 auto;
		padding: 1rem 3rem;
		font-size: var(--font-size-medium);
	}

	.wp-block-spacer{
		max-height: 3rem;
	}

	#colophon > .col-full {
		height: auto;
		flex-direction: column;
		gap: 4rem;
		padding: 2rem;
		margin: 0 auto;
	}

	#colophon .footer-menu--main li:not(:first-child) {
		border-left: none;
		position: relative;
		padding-top: 1rem;
	}

	#colophon .footer-menu--main li:not(:first-child)::before{
		content : '';
		position: absolute;
		left: 50%;
		top: 0;
		width: 2rem;
		height: 2px;
		background: var(--couleur-1);
		transform: translateX(-50%);
	}

	#colophon .footer-menu--main {
		flex-direction: column;
		text-align: center;
	}

	.copyright {
		height: fit-content;
		padding: 1rem;
		font-size: var(--font-size-small);
		flex-direction: column;
	}

	.menu-menu-principal-pied-de-page-container {
		margin-right: 0;
	}

    #colophon .footer-menu--main{
		margin-left: 0;
	}

	.handheld-navigation ul.menu li a{
		border: solid 2px var(--couleur-3);
		border-radius: 99rem;
	}

	.cartouche {
		position: static;
		margin: 0 auto;
		width: 90vw;
		margin-top: 2rem;
	}

	.banner.no-img{
		max-height: 2rem;
	}

	.banner {
		height: 60vh;
		z-index: 10;
		margin-left: 0;
	}

	#main-container .entry-content blockquote {
		padding-top: 4rem;
	}

	.entry-content blockquote::before {
		top: 2rem;
	}

	.advice__element--titrage {
		padding: 1.5rem;
	}

	.advice__title {
		padding-top: 1.5rem;
	}

	.advice__element--texte {
		padding: 1.5rem;
	}

	.entry-summary {
		height: auto;
		gap:  2rem;
		padding-bottom: 8rem;
	}

	.woocommerce-product-gallery__image {
		height: auto;
	}

	.summary .woocommerce-Price-amount {
		font-size: var(--font-size-xx-large);
	}

	body.single-product #main-container #content > .col-full{
		max-width: 90vw;
		margin: 0 auto;
	}

	.cartouche.short-title {
		margin-bottom: 4rem;
	}

	body.post-type-archive-product #main-container .banner{
		flex-direction: row;
		justify-content: flex-end;
		align-items: flex-start;
		height: 30vh;
	}

	body.post-type-archive-product #main-container .banner img{
		object-fit: none;
		width: 100%;
	}

	body.post-type-archive-product .cartouche {
		width: 80vw;
		margin-top: 3rem;
	}

	body.post-type-archive-product #main-product-container{
		width: 80vw;
		margin : auto;
		padding-bottom: 2rem;
	}

	.scenarios__element {
		width: 100%;
		margin-left : auto;
		margin-right : auto;
	}

	.scenarios__arrows {
		display: none;
	}

	#main-product-container .scenarios__element ul li {
		font-size: var(--font-size-medium);
	}

	#main-product-container h4 {
		font-size: var(--font-size-medium);
	}

	.scenarios__warning {
		padding: 2vw 5vw;
		font-size: var(--font-size-small);
		max-height: none;
		min-width: 80%;
		width: fit-content;
		line-height: 1.2;
		transition: var(--main-transition);
	}

	.scenarios__element:last-child {
		padding-bottom: 10rem;
	}

	h2.wp-block-heading, h3.wp-block-heading {
		text-align: center;
	}

	p.font-titre {
		font-size: var(--font-size-medium);
		padding: 0 10vw;
	}

	.copyright span {
		margin: 1rem auto;
		text-align: center;
	}

}

/* Tablettes */
@media (min-width: 768px) and (max-width: 991.98px) {
    
    :root {
		--card-height: 20vh;
    }

	.home-cards-container {
        max-height: calc(3 * var(--card-height));
        justify-content: flex-end;
    }

	.header__baseline{
		padding: 1rem;
		font-size: var(--font-size-medium);
	}

    #masthead.etat2 .header__baseline h1 {
        font-size: calc(.9 * var(--font-size-medium));
        padding: 0.5rem;
    }

}

/* Smartphones */
@media (max-width: 767.98px) {
    
    :root {
		--logo-wrapper-width: 30vw;
		--card-height: 30vh;
    }

	.home-cards-container {
        max-height: calc(3 * var(--card-height));
	}
	
	.woocommerce-active .site-header .site-branding.etat2 {
		width: 25vw;
	}

    .main-product__element {
        width: 100%;
    }

	.main-product-container {
		padding: 1.5rem;
	}

	.entry-content .wp-block-group:where(.has-couleur-3-background-color, .has-couleur-4-background-color) {
		padding: 1.5rem;
	}

	.entry-content > .wp-block-group {
		padding: 1.5rem;
	}

	#masthead.etat2 .logo-wrapper > .coordonnees--telephone {
        font-size: calc(.75 * var(--font-size-small));
		white-space: nowrap;
		left: calc(30vw + 1rem);
		padding: 0;
		margin: 0;
		transform: translateY(-50%);
    }

	.cartouche.short-title {
		height: fit-content;
		padding: 1rem;
		top: calc(var(--header-height-mini) + 9rem);
		margin-bottom: 4rem;
	}

	.cartouche.short-title h1{
		margin-bottom: 0;
	}

	#respond {
		padding: 0;
	}

}

/* Petit Smartphones */
@media (max-width: 540px) {
    /*
    :root {
    }
    */
}