/*
Theme Name: BlankSlate
Theme URI: https://opencollective.com/blankslate
Author: Web Guy
Author URI: https://opencollective.com/blankslate#section-contributors
Description: Donate: https://opencollective.com/blankslate. Learn: https://blankslate.me/. BlankSlate is the definitive WordPress boilerplate starter theme. I've carefully constructed the most clean and minimalist theme possible for designers and developers to use as a base to build websites for clients or to build completely custom themes from scratch. Clean, simple, unstyled, semi-minified, unformatted, and valid code, SEO-friendly, jQuery-enabled, no programmer comments, standardized and as white label as possible, and most importantly, the CSS is reset for cross-browser-compatability, with no intrusive visual CSS styles added whatsoever. A perfect skeleton theme. For support and suggestions, go to: https://github.com/webguyio/blankslate/issues. Thank you.
Tags: accessibility-ready, one-column, two-columns, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready
Version: 2026
Requires at least: 5.2
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: blankslate

BlankSlate WordPress Theme 2011-2026
BlankSlate is distributed under the terms of the GNU GPL
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{appearance:none;border-radius:0}input[type="search"]{appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

html {
    width: 100%;
}


body {
    font-family: 'Raleway', sans-serif;
    width: 100%;
    text-align: left;
}

h2{
	color: #76382C;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding-bottom: 1.5rem;
}

p{
	color: #76382C;
	font-family: Raleway;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}


strong{
	font-weight: 600;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60{
	width: 50% !important;
	background-color: #76382C !important;
	margin: 50px auto 50px !important;
	border-radius: 15px;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60 h4{
    font-size: 1.4rem !important;
    margin: 0px 0px 13px 0px;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60 span{
    font-size: 1.2rem !important;
    margin: 0px 0px 13px 0px;
}

.inf-rgpd{
	font-size: 1.2rem !important;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60 input{
	font-size: 1.2rem !important;
	color: #76382C !important;
	padding: 20px !important;
	margin: 10px 0px;;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60 .inf-submit input{
	background-color: white !important;
	color: #76382C !important;
	border-radius: 25px;
	padding: 10px 30px !important;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60 .inf-submit input:hover{
	background-color: lightgrey !important;
	color: #76382C !important;
	cursor: pointer;
}

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60 .inf-submit {
    text-align: center !important;
}

/* =========================
   HEADER
========================= */

#content{
	padding-top: 140px;
}

#header {
    background-color: #ffffff;
    padding: 20px 0;
    border-bottom: 0.1px solid #76382C;
    position: fixed;
    width: 100%;
    z-index: 1;
}

.header-container {
    width: 96%;
    max-width: 1800px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Logo */
.logo img {
    height: 100px;
    width: auto;
}

/* Navigation container */
#menu {
    display: flex;
    align-items: center;
    gap: 80px;
}

/* Menu principal */
.main-menu {
    list-style: none;
    display: flex;
    gap: 80px;
    margin: 0;
    padding: 0;
}

.main-menu li {
    list-style: none;
}

.main-menu a {
    text-decoration: none;
    color: #76382C;
    font-family: 'Raleway', sans-serif;
    font-weight: 500;
    font-size: 1.3rem;
    transition: 0.3s ease;
}

.main-menu a:hover {
    opacity: 0.7;
}

.current-menu-item{
	border-bottom: 2px solid #76382C;
}

/* =========================
   DROPDOWN LANGUE
========================= */
.lang-dropdown {
    position: relative;
    font-family: 'Raleway', sans-serif;
    font-weight: 500;
    cursor: pointer;
}

/* LANGUE COURANTE */
.current-lang {
	display: block;
	min-width: 140px;
    font-size: 1.3rem;
    background-color: #76382C;
    color: #ffffff;
    padding: 12px 20px;
    border-radius: 6px;
}

/* MENU LANGUES */
.lang-menu {
    position: absolute;
    top: 35px; /* décale sous la langue courante */
    right: 0;
    background-color: #76382C;
    display: flex;
    flex-direction: column;
    min-width: 140px;
    border-radius: 6px;
    padding: 10px 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.25s ease;
}

.lang-menu a {
    color: #ffffff;
    text-decoration: none;
    padding: 8px 20px;
    font-size: 1.3rem;
}

.lang-menu a:hover {
    opacity: 0.8;
}

/* Hover dropdown */
.lang-dropdown:hover .lang-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* 3 images full width */
.hero-3 {
    display: flex;          /* aligne les images horizontalement */
    gap: 0;                 /* pas d'espace entre elles */
    width: 100%;            /* largeur totale du conteneur */
    overflow: hidden;       /* empêche le débordement */
    height: 35vw;
}

.hero-3 img {
    width: 33.3333%;  
    height: auto;   
    display: block;      
    object-fit: cover;   
}


/* 1 image full width */
.banner-1 {
    width: 100%;      
    overflow: hidden;     
}

.banner-1 img {
    width: 100%;   
    height: 30vw;      
    display: block;    
    object-fit: cover;      
}

/* 2 images with margin */
.banner-2 {
    display: flex;             
    justify-content: space-between; 
    gap: 10px;       
    width: 100%;             
    padding: 0 60px; 
    box-sizing: border-box;
}

.banner-2 img {
    width: calc((100% - 20px) / 2);
    height: auto;
    object-fit: cover;
    display: block;
}

/* 3 images with margin */
.banner-3 {
    display: flex;            
    justify-content: space-between;
    gap: 20px;                 
    width: 100%;               
    padding: 0 60px;          
    box-sizing: border-box;  
    text-align: center;  
}

.banner-3 img {
    width: calc((100% - 40px) / 3);
    height: auto;
    object-fit: cover;
    display: block;
}

.banner-3 section{
	flex: 1;
}

.cta-item{
	width: calc((100% - 40px) / 3);
	position: relative;
	margin-top: 60px;
}

.cta-item .cta-button{
	width: 96%;
	position: absolute;
	bottom: 2%;
	left: 2%;
}
.cta-image{
	width: 100% !important;
	height: 35vw !important;
}
.padding{              
    padding: 120px 10vw;            
}
.padding-small{
	gap: 5vw;           
    padding: 100px 10vw 80px;            
}

.highlight{
	flex: 1;
}
.highlight p:first-child{
	padding-bottom: 1rem;
}

/* Text align left background */
.introduction{
	background-color: #76382C;
	padding: 80px 23vw 110px 60px;
}

.more-padding{
	padding: 80px 23vw 180px 60px;
}

.introduction p{
	color: #FFF;
	font-family: Raleway;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding-bottom: 1rem;
}

/* Text align center no background */
.terroir{
	padding-top: 4rem;
	padding-bottom: 2rem;
}

.terroir h2{
	width: 50%;
	margin: 0 auto;
	text-align: center;
	color: #76382C;
	font-family: Raleway;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding-top: 1rem;
	padding-bottom: 2rem;
}

.terroir p{
	width: 50%;
	margin: 0 auto;
	text-align: left;
	color: #76382C;
	font-family: Raleway;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding-bottom: 1rem;
}

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

/* button */

.cta-button {
	border-radius: 10px;
	background-color: #76382C;
	padding: 20px 30px;
	height: 65px;
	width: auto;
}

.cta-button:hover {
	opacity: 0.9;
	cursor: pointer;
}

.cta-button a{
	display: inline-flex;
	text-decoration: none;
}

.cta-button a p{
	color: #FFF;
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-align: center;
	vertical-align: baseline;
	text-decoration: none;
	margin-top: -2px;

}

.cta-button img{
	width: 150px;
	padding-right: 40px;

}

#white {
	border-radius: 10px;
	background-color: white !important;
	padding: 20px 30px;
	height: 65px;
	width: auto;
	border: 1px solid #76382C;
	color: #76382C !important;
}

#white p{
	color: #76382C !important;
}

#white img{
	color: #76382C !important;
}

.inline{
	display: inline-block;
}

.center{
	text-align: center;
	margin-top: -13vw;
	padding-bottom: 10vw;
}

.min-height{
	height: 22vw;
}

.section-right{
	 text-align: right;
	 padding-bottom: 4rem;
}

.right {
	display: inline-block;
	margin-right: 25%;
}

.container-right{
	text-align: left;
	display: inline-flex; 
	flex-direction: column;
	float: right;
	margin-right: 60px;
}

.container-right .right {
	min-width: 30vw;
	margin-bottom: 1rem;
}

.container-full{
	padding: 6vw;
	background-color: #76382C;
	text-align: center;
}

.container-full h5{
	color: white !important;
	font-size: 2.1rem;
	padding-bottom: 1rem;
}

.container-full h6{
	color: white !important;
	font-size: 1.5rem;
	padding-bottom: 2rem;
}

.container-full h4{
	color: white !important;
	font-size: 1.5rem;
	padding-bottom: 0rem;
}


.container-button{
	text-align: center;
	padding-bottom: 4vw;
}

/* Text align left no background */
.two-blocks-section {
	padding-top: 1.5rem;
	display: flex;
	justify-content: space-between;
	margin: 0 60px;
	gap: 20px;
  	padding-bottom: 4rem;
  	justify-content: flex-end;
}

.two-blocks-section section:nth-child(1) {
	flex: 0 0 calc((100% - 10px) * 2 / 3);
}

.two-blocks-section section:nth-child(2) {
	flex: 0 0 calc((100% - 35px) / 3);
	margin-top: auto;
	
}



/* Profiles HomePage */
.profiles{
	margin-top: -120px;
	display: flex;      
	flex-direction: row-reverse;      
    justify-content: space-between;
    gap: 10px;                 
    width: 100%;               
    padding: 0 60px;          
    box-sizing: border-box;
    align-items: flex-start;
}

.profiles section {
    width: calc((100% - 40px) / 3);
    height: auto;
    object-fit: cover;
    display: flex;
	justify-content: flex-end;
	flex-direction: column;
}

.profiles section:nth-child(1) {
	margin-top: 0px;   /* premier bloc tout en haut */
}

.profiles section:nth-child(2) {
	margin-top: 140px;  /* deuxième bloc plus bas */
}

.profiles section:nth-child(3) {
	margin-top: auto;
	justify-content: flex-end !important;
}

.profiles section img{
    width: 100%;
    height: auto;
    object-fit: cover;
}

.profiles section p{
	color: #76382C;
	font-family: Raleway;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}




.vins-category{
	width: 94%;
	margin: 0 auto;
	padding-top: 3rem;
}

.cat2{
	margin-bottom: 2rem;
}


.vin-card.vin-out-of-stock {
    opacity: 0.6; /* diminue l’opacité */
    pointer-events: none; /* optionnel : empêche le clic sur le bouton si tu en mets */
    color: white;
}

.vin-out-of-stock{
	opacity: 0.7; /* diminue l’opacité */
    pointer-events: none; /* optionnel : empêche le clic sur le bouton si tu en mets */
}

.vin-stock-out{
	background-color: #76382C;
	color: white;
	font-size: 1.3rem !important;
	font-weight: 400;
	display: inline-block;
	text-align: right;
	position: absolute;
	top: 10px;
	right: 10px;
	padding: 5px;
	border-radius: 10px;
}

.vins-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 cards par ligne */
    gap: 20px; /* espace entre les cards */
}

.vin-specs {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
}

.vin-spec-row {
    display: grid;
    grid-template-columns: 28% 1fr; /* largeur fixe colonne gauche */
    align-items: start;
    column-gap: 20px;
}

.vin-spec-label {
    font-weight: 400;
    font-size: 1.2rem;
	padding-bottom: 0.2rem;
	color: #76382C;
}

.vin-spec-value {
    line-height: 1.2rem;
    font-weight: 600;
    font-size: 1.2rem;
	color: #76382C;
}

.prices{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    margin-top: 1rem;
}

.value p{
	font-size: 1.5rem !important;
}


/* Container : 2 cartes par ligne */
.vins-cards-large {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

/* Chaque card */
.vin-card-large {
	border: 1px solid #76382C;
    border-radius: 10px;
    padding: 10px;
	position: relative; 
    display: flex;
    background: #fff;
    padding: 30px;
    gap: 30px;
    align-items: flex-start;
}

/* Image = 1/3 */
.vin-image-wrapper {
    flex: 1;
    display: flex;
	justify-content: center;
}

.vin-content h3 {
	color: #76382C;
    margin: 5px 0;
    font-size: 1.5rem;
	font-weight: 600;
}

.vin-content h4 {
	color: #76382C;
    margin: 5px 0;
    font-size: 1.5rem;
	font-weight: 400;
}

.vin-content h5 {
	color: #76382C;
    margin: 5px 0;
    font-size: 1.5rem;
	font-weight: 500;
}

.vin-description{
	font-size: 1.2rem;
	line-height: 1.35rem;
	font-weight: 500;
	color: #76382C;
	padding: 1rem 0 0.5rem;
}

.vin-content p{
	font-size: 1.2rem;
}

.vin-image {
	margin: auto;
    width: 110%;
    height: auto;
    display: block;
}

/* Contenu = 2/3 */
.vin-content {
    flex: 2;
}

.vin-card {
	position: relative; 
    border: 1px solid #76382C;
    border-radius: 10px;
    padding: 10px;
    text-align: center;
    background: #fff;
}

.vin-card img.vin-image {
    width: 100%;
    height: auto;
    border-radius: 10px;
    margin-bottom: 10px;
}

.vin-card h3 {
	color: #76382C;
    margin: 5px 0;
    font-size: 1.5rem;
	font-weight: 600;
}

.vin-card p {
    margin: 2px 0;
    font-size: 1.5rem;
	font-weight: 400;
}


.clear{
	clear: both;
}
.post-tasting {
    display: flex;
    align-items: center;
    gap: 60px;                 /* espace entre image et texte */
    background-color: #76382C;
    padding: 80px;
}

/* Image ronde : 1/3 de l'espace */
.post-tasting > section:first-child {
    flex: 0 0 33.333%;         /* largeur fixe 1/3 */
    display: flex;
    justify-content: center;   /* centre l'image dans son bloc */
}

.post-tasting > section:first-child .round-image {
    width: 100%;               /* prend toute la largeur du bloc */
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
    display: block;
}

/* Texte à droite : 2/3 de l'espace */
.post-tasting > section:last-child {
    flex: 0 0 66.666%;         /* largeur fixe 2/3 */
    display: ruby;
    flex-direction: column;
    justify-content: flex-end;
    padding-right: 80px;
}

.post-tasting h2{
	color: white;
	font-weight: 600;
}

.post-tasting p{
	color: white;
}

.margin-bottom{
	margin-bottom: 2rem !important;
}

.margin-bottom-big{
	margin-bottom: 4rem !important;
}






.home-events {
    padding: 80px;
}

.home-events h2 {
    text-align: left;
    font-weight: 600;
    margin-bottom: 1rem;
}

/* Grille des événements */
.events-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.event-card {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border: 1px solid #76382C;
    border-radius: 10px;
    overflow: hidden;
    height: 100%;
    padding: 30px;
    font-size: 1.5rem;
    color: #76382C;
}

/* Image carrée */
.event-image {
    width: 100%;
    aspect-ratio: 1 / 1; /* carré */
    object-fit: cover;
    border-radius:10px;
}


/* Pour pousser le bouton en bas */
.event-card-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.event-card h3{
	padding-top: 1.5rem;
	padding-bottom: 0.5rem;
	font-size: 2.1rem;
	font-weight: 600;
}

.event-card p a{
	color:#76382C;
}

.event-card p{
	font-size: 1.5rem;
	padding-bottom: 1rem;
}

.event-card .event-location{
	font-weight: 600;
}

.event-infos-cles{
	margin-top: 1rem;
	margin-bottom: 2rem;	
}

.event-infos-cles ul li{
	list-style-type: initial;
	margin-left: 1.5rem;
	padding-bottom: 0.5rem;
}

/* Bouton en bas de card */
.event-button {
    display: block;
    width: 100%;
    padding: 0.75rem;
    text-align: center;
    background-color: #76382C;
    color: #fff;
    text-decoration: none;
    margin-top: auto; /* pousse en bas */
    border-radius: 10px;
    cursor: pointer;
}

.event-button a {
    color: #fff;
}

.event-button:hover {
    opacity: 0.8;
}

/* Pour que toutes les cards aient la même hauteur */
.events-cards {
    align-items: stretch;
}



.contact {
    display: flex;
    align-items: center;
    gap: 60px;                 /* espace entre image et texte */
    background-color: white;
    padding: 80px;
 
}

.contact > section:first-child {
    flex-direction: column;
    justify-content: flex-end;
    padding-right: 80px;
    margin-top: -60px;
}

.contact > section:last-child {
    flex: 0 0 2;         /* largeur fixe 1/3 */
    display: flex;
    justify-content: center;   /* centre l'image dans son bloc */
    margin-top: -260px;
}

.contact img{
	width: 100%;
	aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
    display: block;
}

.adress{
	display: flex;
	gap: 120px;
	margin-top: 2rem;
	align-items: center;
	
}

.email{
	padding-top: 1rem;
}

.email a{
	color: #76382C;
}

.crop-top{
	margin-top: -120px;
}

.crop-top-small{
	margin-top: -2vw;
}


.site-footer {
    background-color: white;
    border-bottom: 4px solid #76382C;
}

.footer-container {
    display: flex;
    width: 92%;
    margin: 0 auto;
    padding: 4rem 0;
    gap: 3rem;
}

.footer-col {
    flex: 1;
    position: relative;
}

.footer-col img {
    float: right;
    padding-right: 4rem;
    width: 200px;
    margin-top: -20px;
}

.footer-col p,
.footer-col a {
    color: #76382C;
    font-size: 1.5rem;
    text-decoration: none;
}

#footer-row{
	  flex-direction: row;
	  display: flex;
  }

.lang-dropdown-footer {
    position: relative;
    display: inline-block;
    color: #76382C;
    cursor: pointer;
    background-color: white;
    padding: 12px 20px;
    border-radius: 10px;
    border: solid 1px #76382C;
}

.current-lang-footer {
    color: #76382C;
    font-size: 1.5rem;
}


.lang-menu-footer {
    position: absolute;
    top: 95%;
    left: 0;
    background: white;
    min-width: 153px;
    border-radius: 6px;
    padding: 10px 0;
    display: none;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    z-index: 999;
}

.lang-menu-footer a {
    display: block;
    padding: 8px 16px;
    color: #76382C;
    font-size: 1.4rem;
    text-decoration: none;
}

.lang-menu-footer a:hover {
    background: #f2f2f2;
}


.lang-dropdown-footer:hover .lang-menu-footer {
    display: block;
}
/* =========================
   RESPONSIVE — Mobile, Tablette, Laptop
   Breakpoints :
     Mobile  : max-width 767px
     Tablette : 768px – 1199px
     Laptop   : 1200px – 1439px
========================= */


/* ============================================================
   LAPTOP  (1200px – 1439px)
   Réduit les espacements et tailles de police légèrement
============================================================ */
@media (min-width: 1200px) and (max-width: 1439px) {

  h2 { font-size: 1.8rem; }
  p  { font-size: 1.8rem; }

  #content { padding-top: 120px; }

  .logo img { height: 80px; }

  #menu { gap: 50px; }
  .main-menu { gap: 50px; }
  .main-menu a { font-size: 1.1rem; }

  .current-lang,
  .lang-menu a { font-size: 1.1rem; }

  .hero-3 { height: 38vw; }

  .padding       { padding: 80px 6vw; }
  .padding-small { padding: 70px 6vw 60px; }

  .introduction       { padding: 60px 18vw 80px 50px; }
  .more-padding       { padding: 60px 18vw 130px 50px; }
  .introduction p     { font-size: 1.8rem; }

  .terroir h2 { font-size: 1.8rem; }
  .terroir p  { font-size: 1.8rem; }

  .banner-2,
  .banner-3 { padding: 0 40px; }

  .cta-item   { margin-top: 40px; }
  .cta-image  { height: 38vw !important; }
  .cta-button { height: 58px; }
  .cta-button a p { font-size: 1.3rem; }
  .cta-button img{ width: 100%; padding-right: 20px; object-fit: fill; flex: 0.4;}
   
  #white img { width: 120px; }

  .vins-cards { grid-template-columns: repeat(4, 1fr); }

  .post-tasting { padding: 60px; }
  .post-tasting > section:last-child { padding-right: 60px; }

  .home-events { padding: 60px; }

  .contact { padding: 60px; }

  .profiles { margin-top: -90px; }

  .center { margin-top: -11vw; padding-bottom: 8vw; padding: 8vw;}
}


/* ============================================================
   HAMBURGER MENU — styles partagés (mobile + tablette)
   S'applique à max-width: 1199px
============================================================ */

/* Bouton hamburger — caché par défaut sur desktop */
.hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  width: 44px;
  height: 44px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  z-index: 1001;
  flex-shrink: 0;
}

.hamburger span {
  display: block;
  width: 28px;
  height: 2px;
  background-color: #76382C;
  border-radius: 2px;
  transition: transform 0.35s ease, opacity 0.25s ease, width 0.25s ease;
  transform-origin: center;
}

/* Animation croix */
.hamburger.is-open span:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}
.hamburger.is-open span:nth-child(2) {
  opacity: 0;
  width: 0;
}
.hamburger.is-open span:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

/* Overlay sombre derrière le menu */
.nav-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 999;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.nav-overlay.is-visible {
  display: block;
  opacity: 1;
}


/* Panneau de navigation mobile/tablette */
@media (max-width: 1250px) {



  .hamburger { display: flex; }

  #menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: min(340px, 85vw);
    height: 100vh;
    background-color: #ffffff;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 100px 40px 60px;
    gap: 0;
    overflow-y: auto;
    z-index: 1000;
    transition: right 0.4s cubic-bezier(0.77, 0, 0.175, 1);
    box-shadow: -4px 0 30px rgba(118, 56, 44, 0.12);
    border-left: 1px solid rgba(118, 56, 44, 0.15);
  }

  #menu.is-open {
    right: 0;
  }

  /* Liens du menu en colonne */
  .main-menu {
    flex-direction: column;
    gap: 0;
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .main-menu li {
    width: 100%;
    border-bottom: 1px solid rgba(118, 56, 44, 0.15) !important;
  }

  .main-menu li:first-child {
    border-top: 1px solid rgba(118, 56, 44, 0.15);
  }

  .main-menu a {
    display: block;
    padding: 18px 0;
    font-size: 1.3rem;
    font-weight: 500;
    color: #76382C;
    transition: opacity 0.2s ease, padding-left 0.2s ease;
  }

  .main-menu a:hover {
    opacity: 0.7;
    padding-left: 8px;
  }

  .current-menu-item {
    border-bottom: none !important; /* géré par li */
  }

  .current-menu-item a {
    font-weight: 700;
    opacity: 1;
  }

  /* Dropdown langue dans le panneau */
  .lang-dropdown {
    margin-top: 40px;
    width: 100%;
  }

  .current-lang {
    display: block;
    width: 100%;
    font-size: 1.2rem;
    padding: 14px 20px;
    border-radius: 8px;
  }

  .lang-menu {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
    background-color: transparent;
    padding: 8px 0 0;
    min-width: unset;
    width: 100%;
    display: none; /* géré par JS */
    border-radius: 0;
    box-shadow: none;
  }

  .lang-menu.is-open {
    display: flex;
  }

  .lang-menu a {
    color: #76382C;
    background-color: rgba(118, 56, 44, 0.08);
    margin-bottom: 6px;
    border-radius: 6px;
    font-size: 1.2rem;
    padding: 10px 16px;
  }

  .lang-menu a:hover {
    background-color: rgba(118, 56, 44, 0.15);
    opacity: 1;
  }

  /* Stagger animation sur les liens */
  .main-menu li {
    opacity: 0;
    transform: translateX(20px);
    transition: opacity 0.3s ease, transform 0.3s ease;
  }

  #menu.is-open .main-menu li:nth-child(1) { opacity: 1; transform: none; transition-delay: 0.08s; }
  #menu.is-open .main-menu li:nth-child(2) { opacity: 1; transform: none; transition-delay: 0.13s; }
  #menu.is-open .main-menu li:nth-child(3) { opacity: 1; transform: none; transition-delay: 0.18s; }
  #menu.is-open .main-menu li:nth-child(4) { opacity: 1; transform: none; transition-delay: 0.23s; }
  #menu.is-open .main-menu li:nth-child(5) { opacity: 1; transform: none; transition-delay: 0.28s; }
  #menu.is-open .main-menu li:nth-child(6) { opacity: 1; transform: none; transition-delay: 0.33s; }

  .lang-dropdown {
    opacity: 0;
    transform: translateX(20px);
    transition: opacity 0.3s ease 0.38s, transform 0.3s ease 0.38s;
  }

  #menu.is-open .lang-dropdown {
    opacity: 1;
    transform: none;
  }
}


/* ============================================================
   TABLETTE  (768px – 1199px)
============================================================ */
@media (min-width: 768px) and (max-width: 1199px) {

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60{
	width: 90% !important;
	background-color: #76382C !important;
	margin: 50px auto 50px !important;
	border-radius: 15px;
}
  /* --- Typographie --- */
  h2 { font-size: 1.6rem; padding-bottom: 1rem; }
  p  { font-size: 1.6rem; }

  /* --- Header --- */
  #content { padding-top: 102px; }

  #header { padding: 15px 0; }

  .header-container { width: 94%; }

  .logo img { height: 70px; }

  /* --- Hero & banners --- */
  .hero-3        { height: 42vw; }
  .banner-1 img  { height: 38vw; }
  .banner-2,
  .banner-3      { padding: 0 30px; gap: 12px; }

  .cta-item   { width: calc((100% - 24px) / 2); margin-top: 40px; }
  .cta-image  { height: 45vw !important; }

  /* Réduit à 2 colonnes pour .banner-3 sur tablette */
  .banner-3 { flex-wrap: wrap; }
  .banner-3 img {
    width: calc((100% - 12px) / 2);
  }
  .banner-3 section { flex: 0 0 calc((100% - 12px) / 2); }

  /* --- Espacements généraux --- */
  .padding       { padding: 60px 5vw; }
  .padding-small { padding: 60px 5vw 50px; }

  /* --- Introduction --- */
  .introduction       { padding: 50px 10vw 70px 40px; }
  .more-padding       { padding: 50px 10vw 100px 40px; }
  .introduction p     { font-size: 1.6rem; }

  /* --- Terroir --- */
  .terroir h2,
  .terroir p { width: 80%; font-size: 1.6rem; }

  /* --- Bouton CTA --- */
  .cta-button     { height: 55px; padding: 16px 22px; }
  .cta-button a p { font-size: 1.3rem; }
  .cta-button img { width: 110px; padding-right: 25px; }

  /* --- Vins --- */
  .vins-cards       { grid-template-columns: repeat(3, 1fr); gap: 15px; }
  .vins-cards-large { grid-template-columns: 1fr; gap: 25px; }
  .vin-spec-label,
  .vin-spec-value   { font-size: 1.1rem; }
  .vin-content h3,
  .vin-content h4,
  .vin-content h5   { font-size: 1.3rem; }
  .vin-description  { font-size: 1.1rem; }
  .prices           { grid-template-columns: 1fr; gap: 20px; }

  /* --- Post tasting --- */
  .post-tasting { padding: 50px; gap: 40px; }
  .post-tasting > section:last-child { padding-right: 40px; }
  .post-tasting h2 { font-size: 1.6rem; }
  .post-tasting p  { font-size: 1.6rem; }

  /* --- Événements --- */
  .home-events { padding: 50px 40px; }
  .events-cards { grid-template-columns: repeat(2, 1fr); }
  .event-card h3 { font-size: 1.6rem; }
  .event-card p  { font-size: 1.3rem; }
  .event-infos-cles ul li { font-size: 1.3rem; }

  /* --- Contact --- */
  .contact { padding: 50px 40px; gap: 40px; }
  .contact > section:first-child { padding-right: 40px; margin-top: 0px; }
  .contact > section:last-child  { margin-top: -80px; }
  .adress { gap: 60px; flex-direction: column; align-items: flex-start; }

  /* --- Profiles --- */
  .profiles { margin-top: -20px; padding: 0 30px; }
  .profiles section p{ font-size: 1.6rem; }

  /* --- Two-blocks --- */
  .two-blocks-section { margin: 0 30px; flex-direction: column; }
  .two-blocks-section section:nth-child(1) { flex: auto; }

  /* --- Container full --- */
  .container-full h5 { font-size: 1.6rem; }
  .container-full h6 { font-size: 1.3rem; }
  .container-full h4 { font-size: 1.3rem; color: white !important;}
  /* --- Misc --- */
  .center      { margin-top: -14vw; padding-bottom: 10vw; padding: 8vw;}
  .min-height  { height: 28vw; }
  .right       { margin-right: 15%; min-width: 41vw !important; }
  .crop-top { margin-top: -80px;}
  
  /* --- Footer --- */
  .footer-container { flex-wrap: wrap; gap: 2rem; padding: 3rem 0; }
  .footer-col { flex: 0 0 calc(50% - 1rem); }
  .footer-col p,
  .footer-col a { font-size: 1.3rem; }
}


/* ============================================================
   MOBILE  (max-width: 767px)
============================================================ */
@media (max-width: 767px) {

.inf-main_f5a3c9c5f11be9cf40a145775cfddc60{
	width: 90% !important;
	background-color: #76382C !important;
	margin: 50px auto 50px !important;
	border-radius: 15px;
}
  /* --- Typographie --- */
  h2 { font-size: 1.4rem; padding-bottom: 0.8rem; }
  p  { font-size: 1.4rem; }
  .profiles section p{ font-size: 1.4rem; font-weight: 600;}

  /* ---- Header ---- */
  #content { padding-top: 80px; }

  #header { padding: 12px 0; }

  .header-container {
    width: 92%;
    flex-wrap: nowrap;
    gap: 12px;
    align-items: center;
  }

  .logo img { height: 55px; }

  /* ---- Hero & banners ---- */
  .hero-3 {
    flex-direction: column;
    height: auto;
  }
  .hero-3 img {
    width: 100%;
    height: 60vw;
  }

  .banner-1 img { height: 55vw; }

  .banner-2 {
    flex-direction: column;
    padding: 0 20px;
    gap: 12px;
  }
  .banner-2 img { width: 100%; }

  .banner-3 {
    flex-direction: column;
    padding: 0 20px;
    gap: 26px;
  }
  .banner-3 img      { width: 100%; }
  .banner-3 section  { width: 100%; }

  .cta-item {
    width: 100%;
    margin-top: 24px;
    position: static;
  }
  .cta-item .cta-button { position: static; width: 100%; margin-top: 12px; }
  .cta-image { height: 90vw !important; }

  /* ---- Espacements généraux ---- */
  .padding       { padding: 40px 5vw; }
  .padding-small { padding: 40px 5vw 35px; gap: 3vw; }

  /* ---- Introduction ---- */
  .introduction       { padding: 40px 20px 60px 20px; }
  .more-padding       { padding: 40px 20px 80px 20px; }
  .introduction p     { font-size: 1.4rem; }

  /* ---- Terroir ---- */
  .terroir h2,
  .terroir p { width: 92%; font-size: 1.4rem; }
  .terroir   { padding-top: 2rem; padding-bottom: 1rem; }

  /* ---- Bouton CTA ---- */
  .cta-button {
	  height: auto !important;
    padding: 23px 20px;
    width: 100%;
    text-align: center;
  }
  .cta-button a       { justify-content: center; }
  .cta-button a p     { font-size: 1.2rem; text-align: left;}
  .cta-button img     { width: 70px; padding-right: 12px; object-fit:fill;}

  #white { width: 100%; padding: 23px 20px;}

  .long{ padding: 16px 20px !important;}
  .long a{ align-items: flex-start;}
  .center {
    margin-top: 0;
    padding-bottom: 8vw;
    text-align: center;
    padding: 2vw;
  }

  .section-right        { text-align: left; }
  .right                { margin-right: 0; display: block; width: 94% !important; margin: 0 auto;}
  .container-right      { float: none; margin-right: 0; width: 100%; }
  .container-right .right { min-width: unset; width: 100%; }

  /* ---- Vins ---- */
  .vins-category { width: 96%; }

  .vins-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .vins-cards-large {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .vin-card-large {
    flex-direction: column;
    padding: 20px;
    gap: 20px;
  }

  .vin-image-wrapper { flex: unset; width: 60%; margin: 0 auto; }
  .vin-image         { width: 100%; }

  .vin-content h3,
  .vin-content h4,
  .vin-content h5   { font-size: 1.2rem; }
  .vin-description  { font-size: 1rem; }
  .vin-spec-label,
  .vin-spec-value   { font-size: 1rem; }


.vin-spec-row {
    grid-template-columns: 50% 1fr; /* largeur fixe colonne gauche */
}
  .prices { grid-template-columns: 1fr; gap: 12px; margin-top: 0.5rem; }

  .vin-stock-out { font-size: 1rem !important; }

  /* ---- Post tasting ---- */
  .post-tasting {
    flex-direction: column;
    padding: 40px 20px;
    gap: 30px;
  }
  .post-tasting > section:first-child  { flex: unset; width: 70%; margin: 0 auto; }
  .post-tasting > section:last-child   { flex: unset; width: 100%; padding-right: 0; display: block; }
  .post-tasting h2 { font-size: 1.4rem; }
  .post-tasting p  { font-size: 1.4rem; }

  /* ---- Événements ---- */
  .home-events { padding: 40px 20px; }
  .events-cards { grid-template-columns: 1fr; }
  .event-card h3 { font-size: 1.4rem; }
  .event-card p  { font-size: 1.3rem; }
  .event-button  { font-size: 1.3rem; }
  .event-infos-cles ul li { font-size: 1.3rem; }

  /* ---- Contact ---- */
  .contact {
    flex-direction: column;
    padding: 40px 20px;
    gap: 30px;
  }
  .contact > section:first-child  { padding-right: 0; margin-top: 0; }
  .contact > section:last-child   { flex: unset; width: 80%; margin: 0 auto; }
  .contact img { width: 100%; }
  .adress      { flex-direction: column; gap: 20px; margin-top: 1rem; }

  /* ---- Profiles ---- */
  .profiles {
    flex-direction: column;
    margin-top: 20px;
    padding: 0 20px;
    gap: 20px;
  }
  .profiles section,
  .profiles section:nth-child(1),
  .profiles section:nth-child(2),
  .profiles section:nth-child(3) {
    width: 100%;
    margin-top: 0;
    justify-content: flex-start;
  }

  /* ---- Two-blocks ---- */
  .two-blocks-section {
    flex-direction: column;
    margin: 0 20px;
    gap: 20px;
    padding-bottom: 2rem;
  }
  .two-blocks-section section:nth-child(1),
  .two-blocks-section section:nth-child(2) {
    flex: unset;
    width: 100%;
  }

  /* ---- Highlight ---- */
  .highlight { width: 100%; }

  /* ---- Container full ---- */
  .container-full   { padding: 40px 10px; }
  .container-full h5 { font-size: 1.4rem; }
  .container-full h6 { font-size: 1.2rem; }
  .container-full h4 { font-size: 1.2rem; color: white !important;}

  .container-button { padding-bottom: 6vw; width: 94%; margin: 0 auto;}

  /* ---- Misc ---- */
  .min-height  { height: auto; min-height: 20vw; }
  .crop-top       { margin-top: -40px; }
  .crop-top-small { margin-top: 0; }

  /* ---- Lang dropdown footer ---- */
  .lang-dropdown-footer { padding: 10px 14px; }
  .current-lang-footer  { font-size: 1.2rem; }
  .lang-menu-footer a   { font-size: 1.2rem; }

  /* ---- Footer ---- */
  .footer-container {
    flex-direction: column;
    gap: 1.5rem;
    padding: 2.5rem 0;
  }
  .footer-col { flex:unset; width: 100%; }
  
  .footer-col:nth-last-child(-n+2) {
	  flex: 1 !important;
	}
	
#footer-row{
	  flex-direction: row;
	  display: flex;
  }

  .footer-col img {
    float: none;
    display: block;
    margin: 0 0 1rem 0;
    padding-right: 0;
    width: 140px;
  }
  .footer-col p,
  .footer-col a { font-size: 1.3rem; }
}




/* ===== GLOBAL CONTAINER ===== */

.wpcf7-form br {
    display: none;
}

.wineForm {
    max-width: 1300px;
    margin: 0 auto;
    font-family: sans-serif;
    padding-top: 3rem;
}

/* Layout grid principal */
.wineForm {
    display: flex;
    flex-wrap: wrap;
}

.wineForm h3{
    font-family: 'Raleway', sans-serif;
    font-size: 2.1rem;
    color: #76382C;
    font-weight: 600;
    padding-bottom: 1rem;
}

.wineForm label{
    font-family: 'Raleway', sans-serif;
    font-size: 1.2rem;
    font-weight: 600;
}

.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 1rem !important;
    font-weight: normal;
    display: block;
}


/* ===== COORDONNÉES ===== */
/* 1/3 largeur - gauche */

.infosSection:first-of-type {
    width: 40%;
    padding-right: 40px;
}

/* ===== VINS BLANCS + ROUGES ===== */
/* pleine largeur */

.wineSection {
    width: 100%;
    margin-top: 60px;
    font-family: 'Raleway', sans-serif;
    font-size: 1.6rem;
    color: #76382C;
}

/* Chaque vin en ligne horizontale */
.wineSection section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid #76382C;
}

/* Alignement horizontal texte */
.wineSection section h2,
.wineSection section h3,
.wineSection section h4 {
    margin: 0;
    flex: 1;
    font-size: 1.6rem;
    font-weight: 400;
    padding-bottom: 0;
}

.wineSection section h3 {
	flex: 0.5;
	}
	
.wineSection section h2 {
	font-weight: 600;
	flex: 0.5;
	}


/* Bloc dropdown aligné horizontalement */
.wineSection section p {
    margin: 0 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1.6rem;
    font-weight: 400;
}

/* Largeur des selects */
.wineSection .dynamic_number {
    width: 80px;
    font-family: 'Raleway', sans-serif;
    font-size: 1.4rem;
    color: #76382C;
    margin-left: 10px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 8px 12px 8px 12px; /* espace pour la flèche */
    border: 1px solid #76382C;
    border-radius: 10px;
    cursor: pointer;
}

/* ===== FACTURATION + COMMANDE ===== */

.orderSection {
    width: 50%;
    margin-top: 60px;
    padding-right: 4rem;
}

.orderSection:nth-of-type(1) {
    padding-right: 40px;
}

.orderSection:nth-of-type(2) {
    padding-left: 40px;
}

/* ===== INPUTS STYLE ===== */

input[type="text"],
input[type="email"],
input[type="tel"],
dynamic_number {
    width: 100%;
    padding: 12px;
    background: white;
    border: 1px solid #76382C;
    border-radius: 10px;
    box-sizing: border-box;
        font-family: 'Raleway', sans-serif;
    font-size: 1.4rem;
    color: #76382C;
}

dynamic_number {
    width: auto;
}

/* Labels */
label {
    display: block;
    margin-top: 15px;
    margin-bottom: 5px;
}

.wpcf7-response-output{
	max-width: 1300px;
	margin: 0 auto !important;
	padding: 1.2em 1em !important;
	font-size: 1.4rem;
	font-weight: 600;
	color: #76382C;
}

/* ===== RADIO ===== */

.wpcf7-list-item {
    display: block;
    margin-top: 30px;
}

.wpcf7-list-item label{
    font-size: 1.6rem;
}

.wpcf7-radio{
	margin-top: 1rem;
}

/* Radio buttons personnalisés */
.wpcf7-form input[type="radio"] {
    -webkit-appearance: none; /* supprime le style natif */
    -moz-appearance: none;
    appearance: none;
    width: 25px; /* taille du bouton */
    height: 25px;
    border: 2px solid #76382C; /* bordure couleur texte */
    border-radius: 50%; /* rond parfait */
    position: relative;
    margin-right: 5px !important;
    cursor: pointer;
    vertical-align: middle;
    margin: 0;
}

/* Cercle intérieur lorsqu’il est coché */
.wpcf7-form input[type="radio"]:checked::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px; /* taille de la coche */
    height: 12px;
    background-color: #76382C; /* couleur de la coche */
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

/* Label aligné avec le bouton */
.wpcf7-form input[type="radio"] + label {
    cursor: pointer;
    color: #76382C;
    font-weight: 500;
}

/* ===== DELIVERY BOX ===== */

.delivery {
    margin-top: 20px;
    padding-left: 2.5rem;
}

.ageConsent {
  display: flex;
  align-items: center;
  margin: 60px 0 40px;
  font-size: 14px;
  color: #76382C;
}
.ageConsent input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #76382C;
  cursor: pointer;
}

.ageConsent .wpcf7-list-item{
	margin: 0;
}
/* ===== FOOTER SECTION ===== */

form{
	padding-bottom: 8rem;	
}

.sendSection {
    width: 100%;
    margin-top: 0px;
    text-align: center;
    border-top: 1px solid #76382C;
    padding-bottom: 2rem;
}

.sendSection h4 {
    text-align: center;
    margin-bottom: 25px;
    margin-top: 2rem;
    font-family: 'Raleway', sans-serif;
    font-size: 1.6rem;
    color: #76382C;
    font-weight: 600;
}

/* Bouton envoyer */

.wpcf7-submit {
    background: #76382C;
    color: white;
    padding: 14px 40px;
    border: none;
    border-radius: 10px !important;
    cursor: pointer;
    transition: 0.3s ease;
    font-family: 'Raleway', sans-serif;
    font-size: 1.6rem;
}

.wpcf7-submit:hover {
    opacity: 0.85;
}

/* ===== RESPONSIVE TEXT ===== */
@media (max-width: 1350px) {
    .wineForm h3 {
        font-size: 1.9rem;
    }

    .wineSection section h2,
    .wineSection section h3,
    .wineSection section h4 {
        font-size: 1.4rem;
    }

    .wineSection section p {
        font-size: 1.4rem;
    }

    input[type="text"],
    input[type="email"],
    input[type="tel"],
    .dynamic_number {
        font-size: 1.2rem;
    }

    .wpcf7-list-item label {
        font-size: 1.4rem;
    }

    .sendSection h4 {
        font-size: 1.4rem;
    }

    .wpcf7-submit {
        font-size: 1.4rem;
        padding: 12px 30px;
    }
}

@media (max-width: 768px) {
    .wineForm h3 {
        font-size: 1.6rem;
    }
    
    .wineSection section {
        padding-left: 15px;
    }

    .wineSection section h2,
    .wineSection section h3,
    .wineSection section h4 {
        font-size: 1.2rem;
    }

    .wineSection section p {
        font-size: 1.2rem;
        flex-direction: column;
        align-items: flex-start;
    }
    
    .wineSection .dynamic_number {
        margin-left: 0;
    }

    input[type="text"],
    input[type="email"],
    input[type="tel"],
    .dynamic_number {
        font-size: 1rem;
    }

    .wpcf7-list-item label {
        font-size: 1.2rem;
    }

    .sendSection h4 {
        font-size: 1.2rem;
    }

    .wpcf7-submit {
        font-size: 1.4rem;
        padding: 10px 25px;
        width: 100%;
    }
}

@media (max-width: 480px) {
    .wineForm h3 {
        font-size: 1.4rem;
    }

    .wineSection section h2,
    .wineSection section h3,
    .wineSection section h4 {
        font-size: 1.2rem;
    }

    .wineSection section p {
        font-size: 1.2rem;
    }
    

    input[type="text"],
    input[type="email"],
    input[type="tel"],
    .dynamic_number {
        font-size: 1rem;
    }

    .wpcf7-list-item label {
        font-size: 1.2rem;
    }

    .sendSection h4 {
        font-size: 1.2rem;
    }

    .wpcf7-submit {
        font-size: 1.2rem;
        padding: 8px 20px;
    }

    .ageConsent {
        font-size: 1rem;
    }
}

/* ===== RESPONSIVE ===== */

@media (max-width: 1350px) {

	
	.wpcf7-response-output{
		width: 90%
	}
	
	.wineForm {
		width: 90%
	}
}

@media (max-width: 1024px) {


    .infosSection:first-of-type,
    .orderSection {
        width: 100%;
        padding: 0;
    }

    .wineSection section {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .wineSection section p {
        margin: 0;
    }
}