/* =========================================================
   Global overrides
   ========================================================= */
/* menu burger */
@media (max-width: 1023px){
  #site-navigation{
    position: relative;
  }

  .header {
    padding: 1.2rem 2.2rem !important;
}

  #primary-menu{
    position: fixed;
    left: 16px;
    right: 16px;
    top: 90px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 30px;
    margin: 35px 0 0 0;
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 14px;
    box-shadow: 0 14px 30px rgba(0,0,0,.14);
  }

  primary-menu.hidden{ display:none; }

  #primary-menu li{
    margin: 0;
    padding: 0;
    list-style: none;
  }

  #primary-menu a{
    display: block;
    padding: 10px 12px;
    border-radius: 10px;
    text-decoration: none;
  }

  #primary-menu a:hover,
  #primary-menu a:focus-visible{
    background: rgba(0,0,0,.05);
    outline: none;
  }

  /* Quand hidden est présent */
  #primary-menu.hidden{
    display: none;
  }
}


#menu-toggle{
  width: 44px;
  height: 44px;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 0;
}

/* 3 barres */
#menu-toggle span{
  display: block;
  color: var(--color-secondary);
  width: 40px;
  height: 3px;
  border-radius: 999px;
  background: currentColor; /* prend la couleur du texte */
  transition: transform .2s ease, opacity .2s ease;
}

/* Espacement entre les barres */
#menu-toggle span:not(:last-child){
  margin-bottom: 8px;
}

/* Animation en croix */
#menu-toggle.open span:nth-child(1){
  transform: translateY(19px) rotate(45deg);
}
#menu-toggle.open span:nth-child(2){
  opacity: 0;
}
#menu-toggle.open span:nth-child(3){
  transform: translateY(-11px) rotate(-45deg);
}

/* fil d'ariane*/
#breadcrumbs span span:first-child{
margin: 0 5px 0 0;
}

#breadcrumbs span span{
margin:0 5px;
color: var(--color-foreground);
font-weight: 400;
}

#breadcrumbs span .breadcrumb_last{
    font-weight: 500;
}

#breadcrumbs{
color: var(--color-primary);
font-weight: 600;
}

#breadcrumbs a,.prose #breadcrumbs a{
text-decoration: underline;
color: var(--color-foreground);
font-weight: 400;
}

#breadcrumbs a:hover{
color: var(--color-primary);
}

@media (min-width: 768px){
  .footergrid{
    grid-template-columns: 1fr 1.6fr 0.8fr 2.5fr;
  }
}

footer .rs .btn-secondary{
    border: 1px solid #fff;

}

footer .rs .btn-primary{
    padding: 8px 30px;
}

footer .menu ul li{
list-style: none;
margin-left:0;
margin-bottom: 10px;
}

address{
    font-style: normal;
}


/* homepage */
.herohome{
border-radius: calc(var(--radius-default) * 1.6);
padding: clamp(1.25rem, 3vw, 3rem);
background: linear-gradient(135deg, var(--color-secondary) 50%, var(--color-primary) 100%);
padding: 56px 0;	
}

.hero-inner{
padding-left: 52px;
}

.hero-title{
color: #fff;
font-weight: 500;
font-size: clamp(2.2rem, 4vw, 4rem);
line-height: normal;
word-wrap: break-word;
}

.hero-subtitle{
text-transform: uppercase;
letter-spacing: 0.12em;
font-weight: 400;
font-size: clamp(1.2rem, 1.8vw, 1.8rem);
}

.hero-images-placeholder{
width: 100%;
}

/* annonces home*/
.ads{
font-family: var(--font-mono);	
}
.ads h2, .ads h3{
font-family: var(--font-sans);
font-size: clamp(1.4rem, 2vw, 1.5rem);
font-weight: 500;
line-height: 1.2;
}

/* carte */
.homap {
background-image: url("../img/map-france-home.svg");
background-position: bottom right;
background-repeat: no-repeat;
background-size: clamp(500px, 60vw, 900px) auto;
}
.homap h3{
	font-family: var(--font-mono);
	font-size:1.37rem;
}

.homap .font-l {
	margin: 15px 0 35px 0;
}

/* pages standard */
.hero{
    padding: 20px 0;
}

.hero .rounder{
border-radius: 28px;
}

@media (min-width: 1024px){
.hero .title{
padding: 0px 60px;
}
}

.hero h1{
	font-size: clamp(2.2rem, 3vw, 4.5rem);
	font-weight: 500;
	margin-bottom: 10px;
    color: var(--color-primary);
}

.hero h1 strong{
    color: var(--color-foreground);
    font-weight: 500;
}

.wp-singular p{
	margin: 0 0 10px 0;
}

.page-template-default h2, .single h2{
	font-size: clamp(2rem, 2.2vw, 3rem);
	font-weight: 500;
	color: var(--color-secondary);
	margin: 20px 0 10px 0;
    text-transform: none;
}

.page-template-default h2:first-child{
	margin-top: 0 ;
}
.page ul {
	padding-left: 0px;
	list-style-type: disc;
}

.page ul li{
	padding-left: 0;
}

.page ul li::marker {
    color: var(--color-tertiary);
}

h1{
    font-size: clamp(2.2rem, 3vw, 4.5rem);
    color: var(--color-primary);
	font-weight: 500;
}

.txtimg h2{
    color: #fff;
}

.bg-blue{
    background: var(--color-secondary);
}
.bg-dark{
    background: var(--color-foreground);
}

.bg-blue h3, .bg-dark h3, .bg-blue strong, .bg-dark strong{
color: var(--color-background);
}

.texte h3{
color: var(--color-primary);
font-family: var(--font-sans);
font-size: clamp(1.6rem, 1.8vw, 2.4rem);
font-weight: 500;
margin-top: 1em;
margin-bottom: 0.1em;
}
/* archive occasion */
.archive-header h1 {
	color: var(--color-primary);
	font-weight: 500;
	margin-bottom: 15px;
    line-height:2.5rem;
}

.archive-header p{
    font-family: var(--font-mono);
    margin-bottom: 10px;
} 

.machine-archive-list,
.machine-archive-list li { list-style: none; }

#marque{
    font-family: var(--font-mono);
    padding: 8px 20px;
    font-size: var(--text-lg);
}

.tw-select{
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 320px; /* ajuste */
}

.tw-select select{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  height: 44px;
  padding: 0 44px 0 16px; /* espace à droite pour la flèche */
  border-radius: 9999px; /* ou 12px si tu préfères moins “pill” */
  background-color: #fff;
  font: inherit;
  cursor: pointer;
}

/* Flèche custom (toujours à droite) */
.tw-select::after{
  content: "";
  position: absolute;
  right: 16px;
  top: 45%;
  width: 10px;
  height: 10px;
  border-right: 2px solid rgba(0,0,0,.55);
  border-bottom: 2px solid rgba(0,0,0,.55);
  transform: translateY(-55%) rotate(45deg);
  pointer-events: none;
}

button.btn-primary{
  outline: none;
}

.machine-card{
transition: transform .22s ease, box-shadow .22s ease;
  will-change: transform;
}


.machine-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
}

/* focus clavier (le <a> est dedans) */
.machine-card:focus-within{
  box-shadow: 0 0 0 3px rgba(0,0,0,.25), 0 14px 30px rgba(0,0,0,.14);
}

/* single machnes */
.galerie-main {
background-color: var(--color-background);
box-shadow: 0px 0px 15px var(--color-grey);
}

.galerie-main img {
    width: 100%;
    height: auto;
    opacity: 1;
    transition: opacity 200ms ease;
}

#galerie-main-img.is-fading {
  opacity: 0;
}

.galerie-thumbs img {
    width: 80px;
    cursor: pointer;
    opacity: 0.7;
}

.galerie-thumbs img:hover {
    opacity: 1;
}

.galerie-thumbs::-webkit-scrollbar { display: none; }
.galerie-thumbs { -ms-overflow-style: none; scrollbar-width: none; }

.thumb-prev, .thumb-next{
      transition:background-color .2s ease-in;
}
.thumb-prev:hover, .thumb-next:hover{
    background-color: var(--color-background)
}

.is-hidden { display: none !important; }

.gslide-media, .gslide-media img{
    border-radius: 24px !important;
}
.glightbox-clean .gclose, .glightbox-clean .gnext .glightbox-clean .gprev, .glightbox-clean .gclose, .glightbox-clean .gnext, .glightbox-clean .gprev {
    background-color: var(--color-primary) !important;
    border: none !important;
}
.glightbox-clean .gclose:hover, .glightbox-clean .gnext:hover, .glightbox-clean .gprev:hover {
    background-color: var(--color-tertiary) !important;
}

.info-primaire {
background-color: var(--color-grey);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

.info-primaire h1{
	font-size: clamp(2rem, 2.5vw, 2.7rem);
	color: var(--color-primary);
	font-weight: 500;
	margin-bottom: 15px;
    line-height:2.5rem;
}

.info-primaire p.desc{
font-size: 1.4rem;;
margin-bottom: 15px;
}

.info-primaire p{
margin-bottom: 5px;
}

.info-primaire p strong{
color: var(--color-secondary);
}
.price{
    background: var(--color-secondary);
    color: #fff;
    padding: 10px 15px;
    border-radius: 50px;
}

.description div{
    border: 2px solid var(--color-grey);
    padding: 10px 40px 30px;
    font-family: var(--font-mono);
}

.description h2{
   margin-bottom: 20px;
   font-family: var(--font-sans);
}

.constructeur-link{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  white-space: nowrap;
  font-weight: 600;
}

.constructeur-link:hover{
  color: var(--color-primary);
}

.constructeur-link__text,
.constructeur-link__icon{
  display: inline-flex;
  align-items: center;
  line-height: 1;
}

.constructeur-link__icon svg{
  display: block;
}

h3{
 font-weight: 500;
 font-size: 2rem;
 color: var(--color-primary);
 line-height: 2rem;
 margin: 20px 0;
}

/* form */
.wpforms-field-container legend.wpforms-field-label {
    font-weight: 500;
font-size: 1.2rem !important;
}

.wpforms-icon-choices-icon svg{
height: calc( 40px * var( --wpforms-field-size-icon-size )) !important;
fill: var(--color-primary) !important;
}


/* media queries */
@media (max-width: 1023px){
.container{
padding: 20px !important;
}
.logo img {
    height: 120px;
}
}