@charset "UTF-8";
/*
Theme Name: Twenty Twenty one Modifié
Theme URI: https://coloc.coop/
Author: Studio Créatif Coloc
Author URI: https://coloc.coop/
Description: Thème spécialement développé
Version: 1.1
Text Domain: Coloc
*/
/*
          _             _            _             _             _                _       _                  _          _            _            _   _       
        /\ \           /\ \         _\ \          /\ \         /\ \             /\ \     /\_\               / /\       /\ \         /\ \         /\_\/\_\ _   
       /  \ \         /  \ \       /\__ \        /  \ \       /  \ \           /  \ \   / / /         _    / /  \      \_\ \       /  \ \       / / / / //\_\ 
      / /\ \ \       / /\ \ \     / /_ \_\      / /\ \ \     / /\ \ \         / /\ \ \  \ \ \__      /\_\ / / /\ \__   /\__ \     / /\ \ \     /\ \/ \ \/ / / 
     / / /\ \ \     / / /\ \ \   / / /\/_/     / / /\ \ \   / / /\ \ \       / / /\ \ \  \ \___\    / / // / /\ \___\ / /_ \ \   / / /\ \ \   /  \____\__/ /  
    / / /  \ \_\   / / /  \ \_\ / / /         / / /  \ \_\ / / /  \ \_\     / / /  \ \_\  \__  /   / / / \ \ \ \/___// / /\ \ \ / / /  \ \_\ / /\/________/   
   / / /    \/_/  / / /   / / // / /         / / /   / / // / /    \/_/    / / /    \/_/  / / /   / / /   \ \ \     / / /  \/_// / /   / / // / /\/_// / /    
  / / /          / / /   / / // / / ____    / / /   / / // / /            / / /          / / /   / / /_    \ \ \   / / /      / / /   / / // / /    / / /     
 / / /________  / / /___/ / // /_/_/ ___/\ / / /___/ / // / /________    / / /________  / / /___/ / //_/\__/ / /  / / /      / / /___/ / // / /    / / /      
/ / /_________\/ / /____\/ //_______/\__\// / /____\/ // / /_________\  / / /_________\/ / /____\/ / \ \/___/ /  /_/ /      / / /____\/ / \/_/    / / /       
\/____________/\/_________/ \_______\/    \/_________/ \/____________/  \/____________/\/_________/   \_____\/   \_\/       \/_________/          \/_/        
                                                                                                                                                              
        */

/*
  __  ___   __    _ __        __           __ 
 / / / (_) / /__ (_) /_  ___ / /____ _____/ /_
/ /_/ / / /  '_// / __/ (_-</ __/ _ `/ __/ __/
\____/_/ /_/\_\/_/\__/ /___/\__/\_,_/_/  \__/ 
*/


/*

Thin 100
ExtraLight 200
Light 300
Regular 400
Medium 500
SemiBold 600
Bold 700
ExtraBold 800
Black 900

*/


:root {
  --bannerHeight: calc(100svh - 3.3333333333333335rem);
  --smallBannerHeight: 35svh;
  --font-family: 'Manrope', sans-serif;
  --letterspacing-20: -0.02em;
  --letterspacing-30: -0.03em;
  --transitionTiming: 0.2s ease-out;

  /* ============================================
     COULEURS — À REDÉFINIR PAR PROJET
     ============================================ */
     --noir      : #221D19;
     --rouge     : #AE1F23;
     --rougeF    : #570F11;
     --vert      : #806F4D;
     --turquoise : #52ADA4;
     --orange    : #EC3700;
     --beige     : #E5D5B5;
     --beigeP    : #FCF1DD;
     --jaune     : #E6AD22;

   }

/*Utiliser des REM sur les font size par rapport au px du body size*/
html,
body {
  font-size: 18px!important;
  font-family: var(--font-family);
  color: var(--noir);
  line-height: 1.5!important;
}


h1 {
  /* slope 3.1vw | intercept 36 − 3.1×3.75 = 24.375px */
  /* @375px : 11.625+24.375 = 36px ✓ | @1440px : 44.64+24.375 = 69.015 → 69px ✓ */
  font-size: clamp(36px, calc(4.25vw + 2px), 69px);
  line-height: 1.0435; /* 72÷69 */
  font-weight: 500; /* Medium */
  letter-spacing: -0.02em; /* -20‰ */
  color: #fff;
}

h2 {
  /* slope 1.879vw | intercept 28 − 1.879×3.75 = 20.954px */
  /* @375px : 7.046+20.954 = 28px ✓ | @1440px : 27.058+20.954 = 48.012 → 48px ✓ */
  font-size: clamp(30px, calc(2.5vw + 2px), 48px);
  line-height: 1.1667; /* 56÷48 */
  font-weight: 300; /* Light */
  letter-spacing: -0.005em; /* -5‰ */
  color: var(--noir);
  margin-bottom: 2.2222222222222223rem!important;
}
h3 strong,
h2 strong{
  font-weight: 700!important;
}

h3 {
  /* slope 1.503vw | intercept 22 − 1.503×3.75 = 16.364px */
  /* @375px : 5.636+16.364 = 22px ✓ | @1440px : 21.643+16.364 = 38.007 → 38px ✓ */
  font-size: clamp(26px, calc(2.25vw + 2px), 38px);
  line-height: 1.3158; /* 50÷38 */
  font-weight: 500; /* Medium */
  letter-spacing: 0.01em; /* +10‰ */
  color: var(--noir);
  margin-bottom: 0.8333333333333334rem!important;
}

h4 {
  /* slope 0.94vw | intercept 20 − 0.94×3.75 = 16.475px */
  /* @375px : 3.525+16.475 = 20px ✓ | @1440px : 13.536+16.475 = 30.011 → 30px ✓ */
  font-size: clamp(20px, calc(1.75vw + 2px), 30px);
  line-height: 1.3333; /* 40÷30 */
  font-weight: 800; /* ExtraBold */
  letter-spacing: 0!important;
  color: var(--noir);
  margin-bottom:  0.7222222222222222rem!important;
}
.titreToggle,
h5 {
  /* slope 0.564vw | intercept 18 − 0.564×3.75 = 15.885px */
  /* @375px : 2.115+15.885 = 18px ✓ | @1440px : 8.122+15.885 = 24.007 → 24px ✓ */
  font-size: clamp(18px, calc(1.25vw + 1.5px), 24px);
  line-height: 1.25; /* 30÷24 */
  font-weight: 800; /* ExtraBold */
  color: var(--noir);
  margin-bottom: 1rem!important;
}
.titreToggle{
  margin-bottom: 0!important;
}
.borderOrange{border-bottom: 2px solid var(--orange); padding-bottom: 2px;}
.borderJaune{border-bottom: 2px solid var(--jaune); padding-bottom: 2px;}
.borderTurquoise{border-bottom: 2px solid var(--turquoise); padding-bottom: 2px;}
h6 {
  /* slope 0.188vw | intercept 13 − 0.188×3.75 = 12.295px */
  /* @375px : 0.705+12.295 = 13px ✓ | @1440px : 2.707+12.295 = 15.002 → 15px ✓ */
  font-size: clamp(11px, calc(0.85vw + 1.5px), 15px);
  line-height: 1.4; /* 21÷15 */
  font-weight: 700; /* Bold */
  letter-spacing: 0.1em; /* 100‰ */
  text-transform: uppercase;
  color: var(--noir);
}

/* Paragraph */
p {
  font-size: 1rem; /* 18px — base fixe */
  line-height: 1.7222; /* 31÷18 */
  font-weight: 400; 
  color: var(--noir);
}
ul + h5,
p + h5{
  margin-top: 3rem;
}
p + h2,
p + p,
p + ul,
p + ol{
  margin-top: 1.1111111111111112rem;
}
ul.twoCols{
 columns: 2;
 -webkit-columns: 2;
 -moz-columns: 2;
}
.bg_blanc{
  background-color: #fff;
}
.bg_beige{
  background-color: var(--beige);
}
/*
  __  ___   __    _ __                __
 / / / (_) / /__ (_) /_  ___ ___  ___/ /
/ /_/ / / /  '_// / __/ / -_) _ \/ _  / 
\____/_/ /_/\_\/_/\__/  \__/_//_/\_,_/  
                                        */

/*NINJA FORM STYLE*/
.noLabel label{
  display: none;
}

.page .nf-field-container {
  margin-bottom: 15px;
}

.page .nf-form-content .label-above .nf-field-label {
  margin-bottom: 2px;
}
.page .nf-form-content label {
  font-size: 14px;
  font-weight: 500;
}
.page .nf-form-content input:not([type=submit]),
.page .nf-form-content select.ninja-forms-field:not([multiple]),
.page .nf-form-content .list-select-wrap .nf-field-element > div {
  padding: 3px 8px;
  height: auto;
  color: #000;

}
.page .nf-form-content .list-select-wrap .nf-field-element>div {
  height: 35px;
}
.page .nf-form-content .list-select-wrap>div div:after {
  height: 42px;
}
.page .nf-form-content input:not([type=submit]) {
  background-color:#fff!important;
}
.page .list-radio-wrap .nf-field-element ul {
  margin-top: 5px!important;
}
.page .nf-form-content .listradio-wrap li, 
.page .list-radio-wrap .nf-field-element li label {
  margin-bottom: 4px!important;
  padding-left: 0;
}
.page .listradio-wrap .nf-field-element label.nf-checked-label:before {
  top: 0.3em;
}

.page .nf-error.field-wrap .nf-field-element:after {
  display: none;
}
.page .nf-error .nf-error-msg {
  font-size: 12px;
}
.page .nf-form-content textarea {
  background-color: #fff;
}

.page .nf-field-container.subForm {
  background-color: #fff;
  padding: 15px 15px 5px;
}

/*ESPACEMENTS*/
a *{
  transition: 0.2s;
}
a{
  text-decoration: none;
}

section p:last-of-type{
  margin-bottom: 0!important;
}
.padTB120{
  padding-top: 6.666666666666667rem;
  padding-bottom: 6.666666666666667rem;
  display: inline-block;
  width: 100%;
}
.padTB40{
  padding-top: 2.2222222222222223rem;
  padding-bottom: 2.2222222222222223rem;
  display: inline-block;
  width: 100%;
}
.padTB80{
  padding-top: 4.444444444444445rem;
  padding-bottom: 4.444444444444445rem;
  display: inline-block;
  width: 100%;
}

.padTB{
  padding-top: 10em;
  padding-bottom: 10em;
  display: inline-block;
  width: 100%;
}
.padLR{
  padding-left: clamp(1.333rem, 4.25vw, 4.444444444444445rem);
  padding-right: clamp(1.333rem, 4.25vw, 4.444444444444445rem);
  display: inline-block;
  width: 100%;
}
.padR{
  padding-left: clamp(1.333rem, 4.25vw, 4.444444444444445rem);
  display: inline-block;
  width: 100%; 
}
.padL{
  padding-left: clamp(1.333rem, 4.25vw, 4.444444444444445rem);
  display: inline-block;
  width: 100%;
}

.maxW{
  max-width: 1920px;
  margin: 0 auto;
  width: 100%;
}

img {
  max-width: 100%;
}

svg * {
  transition: fill 0.3s ease, stroke 0.3s ease; /* Adjust duration and timing function as needed */
}


.container{
  display: inline-block;
  width: 100%;
}
.flex{
  display: flex;
  align-items: stretch;
}
.flexThat{
  display: flex;
  align-items: center;
  width: 100%;
}
.inverted .flexThat{
  direction: rtl;
}
.inverted .flexThat .h5050-half-inner{
  direction: ltr;
}

section.content-h5050.inverted .flexThat .h5050-half {
  direction: ltr;
}

/*Backgrouds*/
.bgBlanc{
  background-color: #fff;
  display: inline-block;
  width: 100%;
}
.bgBleu{
  background-color: var(--bgBleu);
  display: inline-block;
  width: 100%;
}
.bgBleuP{
  background-color: var(--bgBleuP);
  display: inline-block;
  width: 100%;
}
.bgBeige{
  background-color: var(--bgBeige);
  display: inline-block;
  width: 100%;
}
.bgVert{
  background-color: var(--bgVert);
  display: inline-block;
  width: 100%;
}

/*BOUTONS*/
.btnArrow{
  transition: color var(--transitionTiming); 
  width: 100%;
  color: var(--noir)!important;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing:  0.08333333333333333rem!important;
  font-size: 0.8333333333333334em;
}
.btnArrow::before { 
  width: 2.25em;
}
.btnArrow:hover {
  color: var(--rouge)!important; 
}
.btnArrow::before, .btnArrow::after {
  content: "\f054 \f054 \f054";
  display: inline-block;
  font-family: "Font Awesome 6 Sharp";
  margin-right: 8px;
  transition: all var(--transitionTiming);
}
.btnArrow::after { 
  margin-left: 0;
  transform: scale(0);
  margin-right: -2.4em;
}
.btnArrow:hover::after {
  margin-left: 8px;
  transform: scale(1);
  margin-right: 0;
}
.btnArrow:hover::before { 
  transform: scale(0);
  width:0; 
  margin-right: 0; 
}
.btnArrow span{
  padding-left: 0.5rem;
}
.btnBack{
 color: var(--turquoise)!important;
 display: inline-block;
 text-transform: uppercase;
 font-weight: 700;
 letter-spacing:  0.08333333333333333rem!important;
 font-size: 0.8333333333333334em;
 transition: all var(--transitionTiming); 
 overflow: hidden;
 margin-left: 0; 
 margin-bottom:  1.6666666666666667em;
}
.btn{
  color: var(--rouge)!important;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing:  0.08333333333333333rem!important;
  font-size: 0.8333333333333334em;
  transition: all var(--transitionTiming); 
  overflow: hidden;
  line-height: 1.2;
  text-decoration: none!important;
}
.btnBack:hover{
  margin-left: -0.3em;
}

.btnBack:hover::before { /*créer*/
  width: 0;
}
.btnBack::after, .btnBack::before {
  content: "\f0d9";
  display: inline-block;
  font-family: "Font Awesome 6 Sharp", "Font Awesome 6 Pro", "Font Awesome 6 Free";
  font-weight: 900;
  font-style: normal;
  margin-left: 0;
  width: 0.5em; 

  transition: all var(--transitionTiming);
}
.btn::after, .btn::before {
  content: "\f0da";
  display: inline-block;
  font-family: "Font Awesome 6 Sharp", "Font Awesome 6 Pro", "Font Awesome 6 Free";
  font-weight: 900;
  font-style: normal;
  margin-left: 0.5em;
  transition: all var(--transitionTiming);
}
.btnBack:after,
.btn::before { 
  margin-left: 0;
  transform: scale(0);
  margin-right: 0;
  width: 0;
}
.btnBack:hover::after,
.btn:hover::before { 
  transform: scale(1);
  margin-right: 0.5em;
  width: 0.5em;
}
.btnBack:hover::before,
.btn:hover::after { 
  transform: scale(0);
}
.btn:hover::after { 
  width: 0;
  margin:0;
}
.btn::after { 
  width: 0.5em;
}
h3 + p > .btn{
  margin-top: 2.2222222222222223em!important;
}

.opacite{
  opacity: 0;
}
/* ── Pagination listing actualité ── */
.listingPagination {
  width: 100%;
  padding: 4.7777777777777777rem 0 1rem;
  display: flex;
  justify-content: center;
  margin-top: 2.7777777777777777rem;
}
.listingPagination ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
.listingPagination ul li a,
.listingPagination ul li span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
  color: var(--noir, #1a1a1a);
  transition: background 0.2s, color 0.2s;
  background: none;
  text-decoration: none!important;
}
.listingPagination ul li a:hover {
  opacity: 0.6;
}

/* Page active : forme hexagonale */
.listingPagination li:before{
  display: none;
}
.listingPagination ul li span.current {
  position: relative;
  background: none;
  font-weight: 700;
  height: 2.2222222222222223rem;
  z-index: 0;
}
/* Couche extérieure : hexagone plein couleur (simule la bordure) */
.listingPagination ul li span.current::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--rouge, #8b1a1a);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  z-index: -1;
}
/* Couche intérieure : hexagone blanc légèrement plus petit (crée l'effet de contour) */
.listingPagination ul li span.current::after {
  content: "";
  position: absolute;
  inset: 2px;
  background: #fff;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  z-index: -1;
}

/* Flèches prev / next */
.listingPagination ul li a.prev,
.listingPagination ul li a.next {
  font-size: 1rem;
  color: var(--rouge);
  text-decoration:none!important;
}
.listingPagination ul li a.prev:hover,
.listingPagination ul li a.next:hover {
  opacity: 0.6;
  background: none;
}

/* ── Responsive ── */
@media (max-width: 1024px) {


  #masthead.masthead--scrolled:after{
    display: none!important;
  }
  .listingInner    { flex-direction: column; gap: 2rem; }
  .listingAside    { flex: unset; max-width: 100%; }
  .listingTitre    { text-align: left; }
}

/*LISTES*/
.h5050-text li{
  list-style-type: none;
  position: relative;
}
ol li,
ul li{
  font-family: var(--font-family)!important;
  font-weight: 400!important;
  line-height: 1.7222;

}
.hexaRouge{
  clip-path: polygon(-50% 50%,50% 100%,150% 50%,50% 0);
  background-color: var(--rouge);
  height: 1.1111111111111112rem;
  width:  0.9444444444444444rem;
  float: right;
}

/*MENUS*/
.hexaJaune{
  font-size:  0.7777777777777778rem;
  padding:  0.7777777777777778rem;
  clip-path: polygon(-50% 50%,50% 100%,150% 50%,50% 0);
  background-color: var(--jaune);
  margin-left: 1.6666666666666667rem;
}
.main-menu.nav{
  width: 100%;
  display: flex;
  align-items: center;
}

.menu {
  padding-left: 0;
  padding: 0;
  margin: 0 ;
}
.menu li{
  display: inline-block;
  list-style-type: none;
  position: relative;
}
.menu li{
  margin: 0 1.6666666666666667rem;
}
#colophon a{
  background-position-y: 100%; 
  background-origin: content-box;
  background-clip: content-box; 
  background-repeat: no-repeat; 
  background-size: 200% 1px; 
  background-position-x: 100%; 
  background-image: linear-gradient(0.25turn, #fff 49.4%, transparent 49.5%); 
  text-decoration: none;
  transition: all var(--transitionTiming), background-position-x 0.4s ease-out;

}
.menu li a{
  background-position-y: 100%; 
  background-origin: content-box;
  background-clip: content-box; 
  background-repeat: no-repeat; 
  background-size: 200% 1px; 
  background-position-x: 100%; 
  background-image: linear-gradient(0.25turn, #fff 49.4%, transparent 49.5%); 
  text-decoration: none;
  transition: all var(--transitionTiming), background-position-x 0.4s ease-out;
  color: #fff;
  font-weight: 600;
  font-size: clamp(14px, calc(1vw + 2px), 20px);
  display: flex;
  align-items: center;
}
.menu .sub-menu {
  position: absolute;
  text-align: left;
  top: calc(100% + 0.5em);
  z-index: 999999999;
  padding: 0.5em 1em 0.5em 1em !important;
  background-color: #fff;
  opacity: 0;
  border-radius: 0;
  margin-left: -1em;
  width: max-content;
  visibility: hidden;
  transition: opacity var(--transitionTiming), visibility var(--transitionTiming);
  box-shadow: none;
}
.menu .menu-item-has-children a:after {
  content: "";
  font-weight: 400;
  font-family: "Font Awesome 6 Sharp";
  content: "\f078";
  font-size:  0.4444444444444444rem;
  padding-left: 0.5em;
  color: #fff;
}
.menu .menu-item-has-children .sub-menu a:after {
  display: none;

}
.sub-menu-toggle{
  display: none;
}
.menu li.current-menu-item > a, .menu li a:hover, #colophon a:not(.logo):hover{
  background-position-x: 0%; 

}
.menu li:hover .sub-menu {
  opacity: 1;
  visibility: visible;
}

.menu .sub-menu li {
  display: block;
  margin: 0;
  padding-bottom: 0 !important;
}

.menu .sub-menu a {
  padding: 0.4rem 0;
  font-weight: 500;
  font-size: 0.8888888888888888rem;
  display: inline-block;
  border-radius: 0;
  color: var(--noir)!important;
}
.menu .sub-menu a:hover{
}

/*MAILCHIMP*/
#mc_embed_signup .button{
  line-height: auto!important;
  color: var(--jaune)!important;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 700!important;
  letter-spacing:  0.08333333333333333rem!important;
  font-size: 0.8333333333333334em;
  padding:0!important;
}
#mc_embed_signup input{
  border-radius: 0!important;
}
/* Contient les floats internes → empêche le logo footer de remonter derrière la forme */
#mc_embed_signup_scroll {
  overflow: hidden;
}
#mc_embed_signup .mc-field-group{
  float: left!important;
  width:calc(50% - 10px )!important;
  clear:none!important;
  margin-right: 10px;
  padding-bottom: 10px!important;
}
#mc_embed_signup .mc-field-group.long{
  width: calc(100% - 10px )!important;
}
#mc_embed_signup .mc-field-group input{
 background-color: transparent!important;
 font-size:  0.8888888888888888rem!important;
 
}
#mc_embed_signup_scroll input[type=submit]{
  display: inline-block;
  width: auto!important;
  background-color: transparent;
  color: #fff;
  margin-bottom: 0!important;
}
#mc_embed_signup_scroll i{
  color: var(--jaune);
}
#mc_embed_signup_scroll input[type=submit]:hover{
  color: #fff !important; 
  background-color: transparent; 
  margin-left: 0.5rem;

}
#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error { 
  background-color:transparent !important;
}
#mc_embed_signup_scroll i { 
  padding-top: 6.5px!important;
}
#mc_embed_signup input:focus { 
  border-color: var(--jaune)!important;
}
#mc_embed_signup_scroll label{
  display: none;
}
#mc_embed_signup_scroll input{
  width: 100%;
  border-radius: 50px;
  border:none;
  padding: 0.6em 1em!important;
}
#mc_embed_signup_scroll input:focus{
  outline: none;
}
::placeholder{
  color: var(--vertF);
}

/*SLICK SLIDER*/
.slick-dots {
  position: absolute!important;
  bottom: 5px!important;
  list-style: none!important;
  display: inline-block!important;
  text-align: center!important;
  padding: 0!important;
  margin: 0!important;
  width: auto!important; 
  left: calc(50% - 48px);
  background-color: var(--goldF);
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 10px!important;
  line-height: 17px!important;
  text-align: center;
  color: var(--bleuF);
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: var(--bleuF)!important;
  opacity: 0.75!important;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 2px!important;
  padding: 0;
  cursor: pointer;
}

.slick-dotted.slick-slider {
 margin-bottom: 0px;
}
.slick-slide:not(.article-card) { 
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

.slick-slide img {
  display: block;
  width: 100%;
}

/*RESEAU SOCIAUX*/
.leReseau{
  display: inline-block;
}
.leReseau i{
  color: var(--bleuSS);
  font-size: 1.1em;
  margin:0 0.4rem;
}
/* LISTING ARTICLES  */

.listingInner{
  display: flex;
}
.listingAllInside .theWrap{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 3em 1.6666666666666667rem;

}
.theWrap .theCtnCard{
  margin: 1.5rem 0 0 0;
}
.theWrap .theCtnCard  h4{
  min-height: 9rem!important;
}
.theWrap .articleCardExcerpt{
  min-height: 5em!important;
}
.listingInner .padLR{
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;

}
.home .listingArticles {
  background-color: var(--beigeP)!important;
}
.listingArticles .slick-track {
  align-items: stretch; 
}
.listingArticles{
  position: relative;
}
.home .listingArticles:before {
  content: "";
  background-image: url('images/iBeforeListing.webp');
  width: 560px;
  height: 143px;
  background-repeat: no-repeat;
  position: absolute;
  top: -65px;
  left: 0;
}

/* ── Colonne gauche ── */

.listingTitre {
  font-size: clamp(1.1rem, 1.5vw, 1.5rem);
  font-weight: 300;
  line-height: 1.45;
  margin: 0;
}



/* ── Colonne droite : slider ── */
.listingSliderOuter {
  flex: 1;
  overflow: hidden;  /* clip le débordement pour l'effet 2.75 */
  min-width: 0;
}

/* overflow: hidden sur slick-list = clip le clone gauche (infinite),
   le peek droit est natif via slidesToShow: 2.75 */
   .jsListingSlider .slick-list {
    overflow: hidden !important;
  }

  .listingSliderOuter .slick-slide {
    padding-right: 1.6666666666666667rem;
    box-sizing: border-box;
  }

/* ── Carte article ── */
.article-card {
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
  position: relative;
  height: auto !important;
}
.article-card h4{
  min-height: 11.666666666666666rem;
}
.article-card h6{
  margin-bottom: 5px;
  display: inline-block;
  width: 100%;
}
.article-card .articleCardTop  {  border-top: 3px solid transparent;}
.article-card--jaune  .articleCardTop    { border-top-color: var(--jaune); }
.article-card--turquoise .articleCardTop { border-top-color: var(--turquoise); }
.article-card--orange  .articleCardTop   { border-top-color: var(--orange); }
.article-card--vert  .articleCardTop   { border-top-color: var(--vert); }

.noMargin{
  padding-top: 0.5555555555555556em!important;
  margin-bottom: 0!important;
}
.imgNotAct{
 aspect-ratio: auto!important;
 margin:0 auto;
 flex-direction: column;
 display: flex;
 align-items: center;
 flex-wrap: nowrap;
 margin-bottom: 0!important;
 background-color: transparent!important;
 
}
.imgFull svg{
  display: none!important;
}
.imgNotAct.imgFull img{
  object-fit: cover!important;
  max-width: 100%!important;
}
.imgNotAct img{
 height:17.77777777777778em!important;
 max-width: 15.277777777777779em!important;
 object-fit: contain!important;

}
/*.article-card--collection.article-card--jaune      .articleCardImg { border-top-color: var(--jaune); }
.article-card--collection.article-card--turquoise  .articleCardImg { border-top-color: var(--turquoise); }
.article-card--collection.article-card--orange     .articleCardImg { border-top-color: var(--orange); }
.article-card--collection.article-card--vert       .articleCardImg { border-top-color: var(--vert); }*/

/*section .articleCardContent p{
  margin-bottom: 1rem!important;
}
section .articleCardContent p + a{
  margin-top: -1rem!important;
  float: left;
}*/
section p.pSpecial{
  margin-bottom: 1rem!important;
}
.articleCardContent p{
  margin-top: 0!important;
}
.article-card--jaune  .btn{
  color: var(--jaune)!important;
}
.article-card--turquoise .btn{
  color: var(--turquoise)!important;
}
.article-card--orange .btn{
  color: var(--orange)!important;
}
.article-card--vert .btn{
  color: var(--vert)!important;
}
.articleCardTop {
  padding: 1.25rem 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  flex: 1;
  position: relative;
}



.articleCardLien--jaune     { color: var(--jaune)!important; }
.articleCardLien--turquoise { color: var(--turquoise)!important; }
.articleCardLien--orange    { color: var(--orange)!important; }
.articleCardLien--vert   { color: var(--vert)!important; }

/* ── Décoration SVG couleur ── */
.articleCardDeco {
  width: auto;
  height: 123px;
  position: absolute;
  bottom: -62px;
  right: 0;
  z-index: 0;

}

.articleCardDeco svg {
  display: block;
}

.articleCardDeco--jaune     { color: var(--jaune); }
.articleCardDeco--turquoise { color: var(--turquoise); }
.articleCardDeco--orange    { color: var(--orange); }
.articleCardDeco--vert    { color: var(--vert); }

/* ── Fond SVG cartes collection ── */
.articleCardBg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.articleCardBg svg {
  display: block;
  width: 100%;
  height: 100%;
  transform: scale(1.1); 
}

/* ── Image ── */
.articleCardImg {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background-color: var(--beigeP);
  z-index: 2;
  position: relative;
}

.articleCardImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
  z-index: 2;
  position: relative;
}

.article-card:hover .articleCardImg img {
  transform: scale(1.04);
}

/* ── Responsive ── */
@media (max-width: 1024px) {
  .homeBannerPanelInner .col:first-of-type img{
    display: none;
  }
  .homeBannerPanelInner{
    flex-direction: column-reverse;
  }
  .listingInner    { flex-direction: column; gap: 2rem; }
  .listingAside    { flex: unset; max-width: 100%; }
  .listingTitre    { text-align: left; }
}
/*SLIDER MEMBRE*/

/* ── Keyframes ── */
@keyframes lm-scroll-left {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes lm-scroll-right {
  0%   { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}

/* ── Section ── */
.lignes-membres{
  position: relative;
}
.lignes-membres:after{
  content: "";
  position: absolute;
  bottom: -72px;
  right: 0;
  background-image: url('images/iSliderMembre.webp');
  background-repeat: no-repeat;
  width: 330px;
  height: 144px;
}
.lignes-membres:has(+ .lignes-membres):after{
  display: none;
}
.lignes-membres .maxW{
  overflow: hidden;
}
.lignes-membres h3{
  color: var(--vert)!important;
}
.lmHeader .btn{
  color: var(--vert)!important;
}
.lmHeader {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 2.5rem;
}

.lmHeader h3 {
  margin: 0!important;
  white-space: nowrap;
}

.lmSeparator {
  flex: 1;
  height: 2px;
  background-color: var(--vert);
}

.lmHeader .btn {
  white-space: nowrap;
  flex-shrink: 0;
}

/* ── Wrap des 3 lignes ── */
.lignesMembresWrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding-bottom: 0.5rem;
}
.lm-card h5 {
  margin: 0 !important;
  color: var(--vert)!important;
}
/* ── Ligne individuelle ── */
.lm-ligne {
  width: 100%;
}

/* ── Track (contenu dupliqué) ── */
.lm-track {
  display: flex;
  gap: 1.5rem;
  width: max-content;
  will-change: transform;
}

/* ── Animations par direction ── */
.lm-ligne--left  .lm-track { animation: lm-scroll-left  90s linear infinite; }
.lm-ligne--right .lm-track { animation: lm-scroll-right 70s linear infinite; }

/* Pause on hover */
.lm-ligne:hover .lm-track,
.lm-ligne:focus-within .lm-track {
  animation-play-state: paused;
}

/* Respect des préférences de mouvement réduit */
@media (prefers-reduced-motion: reduce) {
  .lm-track { animation: none !important; }
  .lm-ligne { overflow-x: auto; }
}

/* ── Carte membre ── */
.lm-card {
  display: flex;
  align-items: center;
  gap: 1.1111rem;
  text-decoration: none;
  width: calc(25vw - 1.5rem);   /* ~4 cartes visibles par ligne */
  flex-shrink: 0;
  transition: all var(--transitionTiming);
}
.lm-ligne .lm-card:hover { 
  opacity: 0.5;
}
@media (max-width: 1280px) {
  .lm-card { width: calc(38vw - 1.5rem); }  /* 3 par ligne tablette */
  .lm-card h5{ font-size: 1rem; }
}
@media (max-width: 1024px) {
  .lm-card { width: calc(33.333vw - 1.5rem); }  /* 3 par ligne tablette */
  .lm-card h5{ font-size: 0.7777777777777778em; }
}
@media (max-width: 600px) {
  .lm-card { width: calc(50vw - 1.5rem); }       /* 2 par ligne mobile */
}

.lm-card:hover {
  opacity: 1; 
}

/* ── Forme hexagonale ── */

.lm-hex {
  width: 160px;
  height: 185px;
  flex-shrink: 0;
  background: #fff;
  clip-path: polygon(-50% 50%,50% 100%,150% 50%,50% 0);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: background var(--transitionTiming), box-shadow var(--transitionTiming);
}

.lm-hex.lm-default img{
 width: 100%;
 height: 100%; 
}
.lm-hex img {
  width: 72%;
  height: 72%;
  object-fit: contain;
  display: block;
}


/* ── Grille membres (page répertoire uniquement) ── */
.grille-membres {
  position: relative;
}

.gm-grille {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem 1.5rem;
}

.gm-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-decoration: none;
  padding: 1.5rem 1rem;
  background: #fff;
  transition: all var(--transitionTiming);
}

.gm-card:hover {
  opacity: 0.75;
  transform: translateY(-3px);
}

.gm-card .lm-hex {
  clip-path: none; 
  width: auto; 
  max-width: 60%; 
  height: 7rem; 
}
.gm-card .lm-hex img { 
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.gm-card h5 {
  margin: 0 !important;
  color: var(--vert) !important;
  text-align: center;
  font-size: 0.9rem;
}

/* ── Responsive grille ── */
@media (max-width: 1280px) {
  .gm-grille { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
  .gm-grille { grid-template-columns: repeat(2, 1fr); }
  .gm-card .lm-hex { width: 90px; height: 104px; }
}

@media (max-width: 480px) {
  .gm-grille { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .gm-card { padding: 1rem 0.75rem; }
  .gm-card .lm-hex { width: 70px; height: 81px; }
  .gm-card h5 { font-size: 0.8rem; }
}

.sectionSlider{
  position: relative;
}
.sectionSlider:after{
  content: "";
  display: inline-block;
  height: 142px;
  width: 329px;
  background-image: url(images/iSliderMembre.webp);
  background-repeat: no-repeat;
  position: absolute;
  bottom: -70px;
  right: 0;
}
/*5050 Hexa*/
.hexa50 img {
  clip-path: polygon(-50% 50%, 50% 100%, 150% 50%, 50% 0);
  object-fit: cover;
  display: block;
  width: 100%;
  max-width: 420px;
  aspect-ratio: 0.866 / 1;   /* ratio hexagone régulier cos(30°) */
  height: auto;
  min-height: unset;
}
.hexbox{
  display: inline-block;
  width: 100%;
}
.hexbox > .col:nth-child(n+3) {
  padding-top: 1.9444444444444444rem;
}
/* Centrage vertical du contenu en face de l'hexagone */
.hexa50 .flexThat {
  align-items: center;
}
.h5050-text a,
.hexa50 a{
  text-decoration: underline;
}
/*TITRE PAGE*/
.skins .titrePage + section::before { 
  display: none;
}
.titrePage .maxW{
 background-image: url('images/bgTitre.webp');
 background-position: bottom right;
 background-size: 0; 
 background-repeat: no-repeat; 
 position: relative;
 padding-bottom: 6.666666666666667em!important;
 padding-top:  1.1111111111111112em!important;
}
.titrePage .maxW::after { 
  content:'';
  display: block;
  position: absolute;
  bottom:0;
  right:0;
  background-image: inherit;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom right;
  width: min(41.3vw, 800px);
  height: 14.35vw;
  z-index: -1;
}
.titrePage{
  position: relative;
}
.titrePage h1{
  color: var(--noir);
}
.sociauxBanner{
  background-color: #fff;
  display: inline-block;
  padding-top: 1.1111111111111112em;
  position: absolute;
  left: 0;
  bottom: 0;
}
.sociauxBanner:after {
  content: "";
  clip-path: polygon(0% 0%, 0% 100%, 100% 100%);
  background-color: #fff;
  width: 24px;
  height: 101%;
  position: absolute;
  top: 0;
  right: -24px;
}
.sociauxBanner .homeBannerSocials{
  margin-bottom: 0!important;
}
/*TIMELINE*/
.ligneTemps .titreSection{
  margin-bottom:  2.7777777777777777rem;
}
.listingArticles:nth-child(even){
  background-color: #fff;
}
.listingArticles:nth-child(odd):before,
.ligneTemps:before {
  content: "";
  background-image: url(images/beforeTimeline.webp);
  width: 20vw;
  height: 7.6965vw;
  background-repeat: no-repeat;
  position: absolute;
  top: 6px;
  left: 0;
  transform: translateY(-50%); 
  background-size: cover;
  background-position: center center; 
}
.content-h5050 .h5050-half.colonne_2 { /*créer*/
  margin-top: 3em;
}
@media (max-width: 1024px) {
  .ligneTemps:before{
    width: 250px;
    background-size: contain;
    top: -46px;
  }
  .timeline{
    padding: 0 1.6666666666666667rem;
  }
}

.ligneTemps h3 {
  margin-bottom: 60px;
}

/* Conteneur principal */
.timeline {
  position: relative;
  display: flex;
  flex-direction: column;
}

/* Ligne verticale — cachée, remplacée par ::before sur les items */
.timelineLine {
  display: none;
}

/* Chaque item */
.timelineItem {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding-bottom: 1em; 
}

/* Segment de ligne — couvre tout l'item + moitié du gap (20px) de chaque côté */
.timelineItem::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 20px;    /* remonte dans la moitié du gap supérieur */
  bottom: -20px; /* descend dans la moitié du gap inférieur */
  width: 2px;
  background-color: var(--rouge);
  z-index: 0;
}

/* Premier item : la ligne commence au centre du point, pas au-dessus */
.timelineItem:first-child::before {
  top: 50%;
}

/* Dernier item : la ligne finit au centre du point, pas en dessous */
.timelineItem:last-child::before {
  display: none;
}

/* Carte gauche */
.timelineItemGauche {
  flex-direction: row;
  justify-content: flex-start;
}

.timelineItemGauche .timelineContenu {
  margin-right: calc(50% + 30px);
  text-align: right;
}

/* Carte droite */
.timelineItemDroite {
  flex-direction: row;
  justify-content: flex-end;
}

.timelineItemDroite .timelineContenu {
  margin-left: calc(50% + 30px);
  text-align: left;
}

/* Carte contenu */
.timelineContenu {
  position: relative;
  border: 2px solid var(--beige);
  padding: 20px 24px;
  width: 45%;
  box-sizing: border-box;
}

/* Triangle bordure — côté gauche (pointe vers la droite / vers la ligne) */
.timelineItemGauche .timelineContenu::before,
.timelineItemGauche .timelineContenu::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
}
.timelineItemGauche .timelineContenu::before {
  right: -13px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 13px solid var(--beige);
  top: 30px;
}
.timelineItemGauche .timelineContenu::after {
  right: -10px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 11px solid var(--beigeP);
  z-index: 1;
  top: 30px;
}

/* Triangle bordure — côté droit (pointe vers la gauche / vers la ligne) */
.timelineItemDroite .timelineContenu::before,
.timelineItemDroite .timelineContenu::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
}
.timelineItemDroite .timelineContenu::before {
  top: 30px;
  left: -13px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-right: 13px solid var(--beige);
}
.timelineItemDroite .timelineContenu::after {
  top: 30px;
  left: -10px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 11px solid var(--beigeP);
  z-index: 1;
}

/* Date */
.timelineItem h6 {
  margin-bottom: 1rem;
}

/* Texte wysiwyg */
.timelineTexte {
  font-size: 0.9rem;
  line-height: 1.6;
  color: #333333;
}

.timelineTexte p {
  margin: 0;
}

/* Point central — hexagone bordure rouge fond beigeP */
.timelinePoint {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  flex-shrink: 0;
  width: 28px;
  height: 32px;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  background-color: var(--rouge);
  top: 16px;
}

/* Remplissage intérieur beigeP — donne l'effet de bordure rouge */
.timelinePoint::after {
  content: "";
  position: absolute;
  inset: 2px;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  background-color: var(--beigeP);
}

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

   @media (max-width: 768px) {
    .timelineLine {
      left: 20px;
    }

    .timelineItem {
      flex-direction: column;
      align-items: flex-start;
      padding-left: 50px;
    }

    .timelineItemGauche,
    .timelineItemDroite {
      justify-content: flex-start;
    }

    .timelineItemGauche .timelineContenu,
    .timelineItemDroite .timelineContenu {
      margin: 0;
      width: 100%;
      text-align: left;
    }

    .timelineItemGauche .timelineContenu::before,
    .timelineItemGauche .timelineContenu::after,
    .timelineItemDroite .timelineContenu::before,
    .timelineItemDroite .timelineContenu::after {
      display: none;
    }

    .timelineItem::before {
      left: 20px;
    }

    .timelinePoint {
      left: 20px;
    }
  }

/*SKINS — bullet list hexagone rouge */
.skins ul:not(.breadCrumbs) {
  list-style: none;
  padding-left: 1.4em;
  margin-bottom: 10px;
}
.skins ul li {
  position: relative;
  margin-bottom: 0.5em;
}
.skins ul:not(.breadCrumbs) li a{
  text-decoration: underline;
}
.skins ul:not(.breadCrumbs) li a:hover {
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
}
.single .btn{
  color: var(--turquoise)!important;
}
.single .skins ul:not(.breadCrumbs) li::before{
  background-color: var(--turquoise);
}
.single h3{
  text-transform: none!important;
}
.single p + h6{
  margin-top: 2.7777777777777777rem;
}
.single h6{
  margin-bottom: 1.3888888888888888rem;
}
.single h6 strong{
  color: var(--turquoise);
}
.single hr{
  width: 100%;
  border:none;
  height: 2px;
  background-color: var(--turquoise);
  display: inline-block;
  margin: clamp(1.5rem, calc(4.25vw + 2px), 3.3333333333333335em) 0;
}
.skins ul:not(.breadCrumbs) li::before {
  content: "";
  position: absolute;
  left: -1.2em;
  top: 0.5em;
  width: 8px;
  height: 9px;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  background-color: var(--rouge); /* couleur par défaut */
}

.skins .titrePage + section{
  background-color: #fff!important;
}
/* ~ = sibling général : fonctionne même avec un <p> entre le h5 et le ul/btn.
   L'ordre des règles est important : la dernière h5 de couleur gagne. */

/* — Bullets ul — */
.skins h5.borderJaune ~ ul li::before     { background-color: var(--jaune); }
.skins h5.borderTurquoise ~ ul li::before { background-color: var(--turquoise); }
.skins h5.borderOrange ~ ul li::before    { background-color: var(--orange); }

/* — Boutons (direct ou dans un <p>) — */
.skins h5.borderJaune ~ .btn,
.skins h5.borderJaune ~ p > .btn         { color: var(--jaune) !important; }
.skins h5.borderTurquoise ~ .btn,
.skins h5.borderTurquoise ~ p > .btn     { color: var(--turquoise) !important; }
.skins h5.borderOrange ~ .btn,
.skins h5.borderOrange ~ p > .btn        { color: var(--orange) !important; }

/* Quand plusieurs h5 de couleur se suivent, la dernière gagne (ordre CSS) */

.skins h5.borderJaune ~ h5.borderTurquoise ~ ul li::before  { background-color: var(--turquoise); }
.skins h5.borderJaune ~ h5.borderOrange ~ ul li::before     { background-color: var(--orange); }
.skins h5.borderTurquoise ~ h5.borderJaune ~ ul li::before  { background-color: var(--jaune); }
.skins .borderOrange ul li::before ,
.skins h5.borderTurquoise ~ h5.borderOrange ~ ul li::before { background-color: var(--orange); }
.skins .borderJaune ul li::before ,
.skins h5.borderOrange ~ h5.borderJaune ~ ul li::before     { background-color: var(--jaune); }
.skins .borderTurquoise ul li::before ,
.skins h5.borderOrange ~ h5.borderTurquoise ~ ul li::before { background-color: var(--turquoise); }

.skins h5.borderJaune ~ h5.borderTurquoise ~ .btn,
.skins h5.borderJaune ~ h5.borderTurquoise ~ p > .btn       { color: var(--turquoise) !important; }
.skins h5.borderJaune ~ h5.borderOrange ~ .btn,
.skins h5.borderJaune ~ h5.borderOrange ~ p > .btn          { color: var(--orange) !important; }
.skins h5.borderTurquoise ~ h5.borderJaune ~ .btn,
.skins h5.borderTurquoise ~ h5.borderJaune ~ p > .btn       { color: var(--jaune) !important; }
.skins h5.borderTurquoise ~ h5.borderOrange ~ .btn,
.skins h5.borderTurquoise ~ h5.borderOrange ~ p > .btn      { color: var(--orange) !important; }
.skins h5.borderOrange ~ h5.borderJaune ~ .btn,
.skins h5.borderOrange ~ h5.borderJaune ~ p > .btn          { color: var(--jaune) !important; }
.skins h5.borderOrange ~ h5.borderTurquoise ~ .btn,
.skins h5.borderOrange ~ h5.borderTurquoise ~ p > .btn      { color: var(--turquoise) !important; }

/*TOGGLE*/
.theToggle {
  position: relative;
}
.ctn13-23:before,
.theToggle:before {
  content: "";
  background-image: url(images/beforeToggle.webp);
  width: 408px;
  height: 142px;
  background-repeat: no-repeat;
  position: absolute;
  top: -70px;
  left: 0;
}
.theTogglePage .leTitre h3{
  margin-bottom: 3.3333333333333335rem!important;
}
.rowToggle.borderJaune a.btn{
  color: var(--jaune)!important;
}
.rowToggle.borderTurquoise a.btn{
  color: var(--turquoise)!important;
}
.rowToggle.borderOrange  a.btn{
  color: var(--orange)!important;
}
.rowToggle {
  margin-bottom: 4.166666666666667rem;
  border-bottom-width: 4px;
}
.rowToggle:hover{
  cursor: pointer;
}
.open .toggleMore{
  padding: 1.6666666666666667em 0;
}
/*CTA*/
.cta {
  background-image: url('images/iBeforeCta.webp');
  background-position: left center;
  background-repeat: no-repeat;
}
/*BANNIÈRE — fond noir + image à 50% opacité */
.bgBanner {
  position: relative;
  background-color: #000;
  overflow: hidden;
}
.bgBanner .opacite {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.5;
  z-index: 0;
}
.bgBanner .txtOnBanner,
.bgBanner + * {
  position: relative;
  z-index: 1;
}
/*CONTENT 13-23*/

/*CONTENT 14-34 — fond noir + background-image à 30% opacité */
.ctn14-34 {
  position: relative;
}
.ctn14-34.hasBg {
  background-color: #000;
}
.ctn14-34.hasBg *{
  color: #fff!important;
}
/*.bg_beige .btn{
  color: var(--vert)!important;
}*/
.ctn14-34.hasBg .btn{
  color: var(--jaune)!important;
}
.ctn14-34 .bgOverlay {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.3;
  z-index: 0;
}
.ctn14-34 .container8 {
  position: relative;
  z-index: 1;
}
/*3 COLS TITRE*/
.imgCover{
  object-fit: cover;
  width: 100%;
  height: 100%;
}
/*BREADCRUMBS*/
.breadCrumbs {
  font-size: 0.9473684210526315em;
  font-weight: 700 !important;
  margin-bottom:  1.6666666666666667rem;
  text-transform: uppercase;
  list-style-type: none;
  padding-left: 0;

}
.breadCrumbs li {
  font-size: clamp(13px, 0.188vw + 12.295px, 15px);
  line-height: 1.4; /* 21÷15 */
  font-weight: 700!important; /* Bold */
  letter-spacing: 0.1em; /* 100‰ */
  text-transform: uppercase;
  color: var(--noir);
  display: inline-block;
  margin-bottom: 0!important;
}
.breadCrumbs a { 
  transition: all 0.2s ease-in-out;
}
.breadCrumbs a:hover {
  opacity: 0.5;
}
.separator {
  padding: 0 0.6818181818181818em;
  color: var(--brun)!important;
}
.separator:last-of-type{
  display: none;
}
.breadCrumbs a {
  text-decoration: none;
}
/*HEADER*/
.home #masthead{
  position: fixed;
}
#masthead {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background-repeat: no-repeat;
  transform: translateY(0);
  transition: transform 0.35s ease, background 0.35s ease;
  will-change: transform;
  min-height: 140px;
}

#masthead.masthead--hidden {
  transform: translateY(-100%);
}

#masthead.masthead--scrolled {
  background-color: var(--beigeP);
  min-height: auto;
}
#masthead.masthead--scrolled:after{
  background-image: url('images/bgMenuSticky.webp');
  background-repeat: no-repeat;
  content: "";
  width: 72px;
  height: 40px;
  position: absolute;
  bottom: 0;
}
#masthead.masthead--scrolled .logo{
  padding-top: 10px;
  padding-bottom: 10px;
}
body:not(.home) .menu li a, .masthead--scrolled .menu li a, .menu .sub-menu a{ 
  background-image: linear-gradient(0.25turn, var(--noir) 49.4%, transparent 49.5%); 
}
body:not(.home) #masthead a:after,
body:not(.home) #masthead a,
#masthead.masthead--scrolled a:after,
#masthead.masthead--scrolled a{
  color: var(--noir)!important;
}
#masthead.masthead--scrolled img{
  max-height: 50px;
}
#masthead.masthead--scrolled .logo:after{
  border-bottom-width: 3.5em;
  border-left-width: 3.2em;
}
#masthead .logo{
  background-color: var(--beigeP);
  padding-top:  1.6666666666666667em;
  padding-bottom:  1.6666666666666667em;
  position: relative;
}
#masthead .logo img{
  max-width: 214px;
}
#colophon a.logo:hover, .logo a:hover{
  opacity: 0.5;
}
.logo a {
  transition: opacity var(--transitionTiming);
}
#masthead .logo:before{
  content: "";
  background-image: url(images/iBeforeLogo.webp);
  background-repeat: no-repeat;
  width: 203px;
  height: 179px;
  display: inline-block;
  position: absolute;
  top: -123px;
  left: -50px;
  z-index: 9;
}
#masthead .logo:after{
  content: "";
  clip-path: polygon(0% 0%, 0% 100%, 100% 0%);
  background-color: var(--beigeP);
  width: 100px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -99px;
}
#masthead .flexThat{
  justify-content: space-between;
}
/*BANNER*/
.homeBanner {
  background-color: #fff;
  position: relative;
  height: 100svh;
}

/* ── Image de fond ── */
.homeBannerBg {
  position: relative;
  height: var(--bannerHeight);
  background-color: var(--noir);
  overflow: hidden;
}

.homeBannerBg .opacite {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.5;
  z-index: 0;
}

.txtOnBanner {
  position: relative;
  z-index: 1;
  height: 100vh;
  padding-top: clamp(8em, 33svh, 16.666666666666668em);
}

.txtOnBanner * {
  position: relative;
  z-index: 1;
  opacity: 1;
}

/* ── Panel bas flottant ── */
.homeBannerPanel {
  position: relative;
  z-index: 10;
  margin-top: calc(60px - 50svh) !important; 
  height: 50svh; 
  display: flex; 
  align-items: flex-end;
}

.homeBannerPanelInner {
  display: flex;
  align-items: stretch;
  gap: 0;
  min-height: 160px;
}
/* ── Responsive ── */
@media (max-width: 1024px) {
  .homeBannerPanelInner .RsSection{
    top: 15px;
  }
}
/* ── Socials ── */
.homeBannerSocials {
  display: inline-flex;
  justify-content: center;
  gap: 0.75rem;
  flex: 0 0 auto;
  margin-bottom: 0.8333333333333334rem;
}

.homeBannerSocialIcon {
  color: var(--noir);
  font-size: 1rem;
  text-decoration: none;
  transition: all var(--transitionTiming); 
  margin-right:  1.1111111111111112em;
}

.homeBannerSocialIcon:hover { color: var(--rouge); }
.homeBannerSliderWrap{
  position: relative;
}
.homeBannerPanelInner:after{
  content: "";
  background-repeat: no-repeat;
  display: inline-block;
  position: absolute;
  right: 0;
  z-index: -1;
  bottom: 100%;
  transform: translateY(6.56vw); 
  top: unset; 
  width: 33.15vw; 
  height: 15.1vw;
  background-size: cover; 
  background-image: url('images/beforeRouge_02.webp');

}

.homeBannerSliderWrap:before{
  content: "";
  background-image: url('images/shapeSliderAccueil-A.webp');
  width: 500px;
  height: 300px;
  background-repeat: no-repeat;

}
.homeBannerSlider {
  flex: 1;
  min-width: 0;
}
.homeBannerSlider .bannerSlide_text {
  height: var(--smallBannerHeight);
}
.homeBannerPanelInner .col:first-of-type img {
  object-fit: cover;
  object-position: center right;
  width: 100%;
  height: var(--smallBannerHeight);
  position: absolute;
  z-index: -2;
}
.slick-track, .slick-initialized .slick-slide, .homeBannerPanelInner .col:first-of-type {
  display: flex!important;
  align-items: flex-end;
}
/* ── Responsive ── */
@media (max-width: 1024px) {
  .slick-track{
    align-items: flex-end;
  }
}
.bannerSlide_text:before{
  content: "";
  background-size: contain; /*ajouter*/
  background-repeat: no-repeat; /*ajouter*/
  font-size: 1rem;
  background-image: url('images/shapeSliderAccueil-B.webp');
  height: 8.725svh; 
  width: 14.86svh;
  position: absolute;
  top: 0;
  left: 0;
}
.bannerSlide_text {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  min-width: 0;
  background-color: #fff;
  padding-top: clamp(2rem, 7svh, 3.3333333333333335em);
  padding-bottom: clamp(2rem, 7svh, 3.3333333333333335em);
}
.bannerSlide_text h6 { 
  font-weight: 400!important;
}
.bannerSlide_text p:last-of-type { 
  margin-top: auto!important;
}
/* ── Flèches ── */
.bannerNav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-image: url('images/bgFleche.webp');
  background-repeat: no-repeat;
  min-height: 166px;
  width: 145px;
  padding: 2.7777777777777777em 1.6666666666666667em;
  position: absolute;
  bottom: 0;
  left: calc(55.5555555556% - 72.5px);
  transform: translateY(25%);
}
.bannerNav .bannerNavBtn{
  transform: translateY(-75%);
}
.bannerNavBtn {
  background: none;
  color: var(--noir)!important;
  width: 36px;
  height: 36px;
  display: inline-block;
  cursor: pointer;
  transition: background var(--transitionTiming), color var(--transitionTiming);
  font-size: 0.75rem;
}

.bannerNavBtn:hover {
  color: var(--beige)!important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .homeBannerPanel { margin-top: 0; }
  .homeBannerPanelInner { flex-wrap: wrap; gap: 1rem; padding-top: 1.5rem; }
  .homeBannerSocials { flex-direction: row; border-right: none; border-bottom: 1px solid rgba(0,0,0,0.1); padding: 0 0 1rem; margin-right: 0; width: 100%; }
  .bannerSlideImg { 
    flex: 0 0 120px; 
/*    width: 120px; 
    height: 100px;*/ 
  }
  .bannerSlide{
    flex-direction: column;
  }
}
/*CONTENT 1/4 + 3/4*/
.bgBefore{
  background-color: var(--noir);
}
/*FOOTER*/
.copyRight,
.bottomPage {
  display: inline-block;
  width: 100%;
}
.insideBottom{
  border-top:1px solid #fff;
  margin-top: 4.444444444444445em;
  padding-bottom: 5em;
  padding-top: 4.444444444444445em;
}

.bottomPage h5{
  font-weight: 300;
}
.bottomPage img{
  max-width: 202px;
}
#colophon *{
  color: #fff;
}
#colophon{
  padding-top: 6.666666666666667rem;
  padding-bottom: 1.9444444444444444rem;
  background-color: var(--rougeF);
  display: inline-block;
  width: 100%;
  background-image: url('images/bgFooter.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#colophon ul{
  list-style-type: none;
  padding-left: 0;
}
#colophon ul li a:hover{
  text-decoration: none;
}
#colophon ul li{
  margin-bottom: 0.2em;
  width: 100%;
  display: inline-block;
}
#colophon ul li:last-of-type{
  margin-bottom: 0;
}
#colophon ul li a{
  color: var(--bleu);
  display: inline-block;
  font-size: 0.8em;

}

.copyRight  p{
  font-size: 0.6666666666666666rem;
  font-weight: 500;
}



/*

 .----------------.  .----------------.  .----------------.  .----------------.  .----------------.  .-----------------. .----------------.  .----------------.  .----------------.  .----------------. 
| .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. |
| |  _______     | || |  _________   | || |    _______   | || |   ______     | || |     ____     | || | ____  _____  | || |    _______   | || |     _____    | || | ____   ____  | || |  _________   | |
| | |_   __ \    | || | |_   ___  |  | || |   /  ___  |  | || |  |_   __ \   | || |   .'    `.   | || ||_   \|_   _| | || |   /  ___  |  | || |    |_   _|   | || ||_  _| |_  _| | || | |_   ___  |  | |
| |   | |__) |   | || |   | |_  \_|  | || |  |  (__ \_|  | || |    | |__) |  | || |  /  .--.  \  | || |  |   \ | |   | || |  |  (__ \_|  | || |      | |     | || |  \ \   / /   | || |   | |_  \_|  | |
| |   |  __ /    | || |   |  _|  _   | || |   '.___`-.   | || |    |  ___/   | || |  | |    | |  | || |  | |\ \| |   | || |   '.___`-.   | || |      | |     | || |   \ \ / /    | || |   |  _|  _   | |
| |  _| |  \ \_  | || |  _| |___/ |  | || |  |`\____) |  | || |   _| |_      | || |  \  `--'  /  | || | _| |_\   |_  | || |  |`\____) |  | || |     _| |_    | || |    \ ' /     | || |  _| |___/ |  | |
| | |____| |___| | || | |_________|  | || |  |_______.'  | || |  |_____|     | || |   `.____.'   | || ||_____|\____| | || |  |_______.'  | || |    |_____|   | || |     \_/      | || | |_________|  | |
| |              | || |              | || |              | || |              | || |              | || |              | || |              | || |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------'  '----------------'  '----------------'  '----------------'  '----------------'  '----------------'  '----------------'  '----------------' 

*/

/*MEDIA QUERIES*/
@media screen and (max-width: 1680px) {


}

@media screen and (max-width: 1440px) {
  .lm-hex { 
    width: 121px;
    height: 140px;
  }
  .listingAllInside .theWrap { 
    grid-template-columns: repeat(4, 1fr);
  }
  section p.pSpecial { 
    font-size: clamp(14px, calc(1vw + 2px), 18px);
  }
}

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

}
@media screen and (max-height: 773px) {

}
@media screen and (max-width: 1280px) {
  .container10{
    padding-left: 0!important;
    padding-right: 0!important;
  }
}
@media screen and (min-width: 1025px) {

}
@media screen and (max-width: 1024px) {
  .search-form .search-submit{
    margin-left: 0!important;
  }
  /* Sections de contenu : empile les colonnes via inline-block */
  .flexThat,
  .flex {
    display: inline-block !important;
  }
  /* Exception : le header garde son flex pour aligner logo + burger */
  #masthead .flexThat {
    display: flex !important;
  }
  .content-h5050 .colonne_2 .h5050-image{
    padding-top: 1.9444444444444444rem;
    padding-left: 1.333rem;
    padding-right: 1.333rem;
  }
}
@media screen and (max-width: 768px) {



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


}


/*
              _                    _     _ 
  /\/\   __ _(_)_ __     __ _ _ __(_) __| |
 /    \ / _` | | '_ \   / _` | '__| |/ _` |
/ /\/\ \ (_| | | | | | | (_| | |  | | (_| |
\/    \/\__,_|_|_| |_|  \__, |_|  |_|\__,_|
                        |___/              

*/


.container2{
 padding-left: 41.666666666%;
 padding-right: 41.666666666%;
 display: inline-block;
 width: 100%;
}
.container3L{
  padding-left: 75%;
  display: inline-block;
  width: 100%;
}
.container3R{
  padding-right: 75%;
  display: inline-block;
  width: 100%;
}
.container4{
 padding-left: 33.3333%;
 padding-right: 33.3333%;
 display: inline-block;
 width: 100%;
}
.container5L{
  padding-left: 58.3333333333%;
  display: inline-block;
  width: 100%;
}
.container5R{
  padding-right: 58.3333333333%;
  display: inline-block;
  width: 100%;
}
.container6{
 padding-left: 25%;
 padding-right: 25%;
 display: inline-block;
 width: 100%;
}
.container7L{
  padding-left: 41.6666666667%;
  display: inline-block;
  width: 100%;
}
.container7R{
  padding-right: 41.6666666667%;
  display: inline-block;
  width: 100%;
}
.container8{
  padding-left: 16.666%;
  padding-right: 16.666%;
  display: inline-block;
  width: 100%;
}
.container8L{
  padding-left: 33.3333333333%;
  display: inline-block;
  width: 100%;
}
.container9LSpecial{
  padding-left: 8.333%;
  padding-right: 16.6666666667%;
  display: flex;
  width: 100%;
}

.ctn2cols{
  padding-left: 2.0454545454545454em;

}
.insideCol2{
  display: flex;
  align-items: center;
}


.container9L{
  padding-left: 16.6666666667%;
  display: inline-block;
  width: 100%;
}
.container9R{
  padding-right: 16.6666666667%;
  display: inline-block;
  width: 100%;
}
.container10{
  padding-left: 8.333%;
  padding-right: 8.333%;
  display: inline-block;
  width: 100%;
}
.container11L{
  padding-left: 8.333%;
  display: inline-block;
  width: 100%;
}
.container11R{
  padding-right: 8.333%;
  display: inline-block;
  width: 100%;
}



.d-1-1 {
  width: 100%; 
}

.d-1-2 {
  width: 50%; 
}

.d-2-2 {
  width: 100%; 
}

.d-1-3 {
  width: 33.3333333333%; 
}

.d-2-3 {
  width: 66.6666666667%; 
}

.d-3-3 {
  width: 100%; 
}

.d-1-4 {
  width: 25%; 
}

.d-2-4 {
  width: 50%; 
}

.d-3-4 {
  width: 75%; 
}

.d-4-4 {
  width: 100%; 
}

.d-1-5 {
  width: 20%; 
}

.d-2-5 {
  width: 40%; 
}

.d-3-5 {
  width: 60%; 
}

.d-4-5 {
  width: 80%; 
}

.d-5-5 {
  width: 100%; 
}

.d-1-6 {
  width: 16.6666666667%; 
}

.d-2-6 {
  width: 33.3333333333%; 
}

.d-3-6 {
  width: 50%; 
}

.d-4-6 {
  width: 66.6666666667%; 
}

.d-5-6 {
  width: 83.3333333333%; 
}

.d-6-6 {
  width: 100%; 
}

.d-1-7 {
  width: 14.2857142857%; 
}

.d-2-7 {
  width: 28.5714285714%; 
}

.d-3-7 {
  width: 42.8571428571%; 
}

.d-4-7 {
  width: 57.1428571429%; 
}

.d-5-7 {
  width: 71.4285714286%; 
}

.d-6-7 {
  width: 85.7142857143%; 
}

.d-7-7 {
  width: 100%; 
}

.d-1-8 {
  width: 12.5%; 
}

.d-2-8 {
  width: 25%; 
}

.d-3-8 {
  width: 37.5%; 
}

.d-4-8 {
  width: 50%; 
}

.d-5-8 {
  width: 62.5%; 
}

.d-6-8 {
  width: 75%; 
}

.d-7-8 {
  width: 87.5%; 
}

.d-8-8 {
  width: 100%; 
}

.d-1-9 {
  width: 11.1111111111%; 
}

.d-2-9 {
  width: 22.2222222222%; 
}

.d-3-9 {
  width: 33.3333333333%; 
}

.d-4-9 {
  width: 44.4444444444%; 
}

.d-5-9 {
  width: 55.5555555556%; 
}

.d-6-9 {
  width: 66.6666666667%; 
}

.d-7-9 {
  width: 77.7777777778%; 
}

.d-8-9 {
  width: 88.8888888889%; 
}

.d-9-9 {
  width: 100%; 
}

.d-1-10 {
  width: 10%; 
}

.d-2-10 {
  width: 20%; 
}

.d-3-10 {
  width: 30%; 
}

.d-4-10 {
  width: 40%; 
}

.d-5-10 {
  width: 50%; 
}

.d-6-10 {
  width: 60%; 
}

.d-7-10 {
  width: 70%; 
}

.d-8-10 {
  width: 80%; 
}

.d-9-10 {
  width: 90%; 
}

.d-10-10 {
  width: 100%; 
}

.d-1-11 {
  width: 9.0909090909%; 
}

.d-2-11 {
  width: 18.1818181818%; 
}

.d-3-11 {
  width: 27.2727272727%; 
}

.d-4-11 {
  width: 36.3636363636%; 
}

.d-5-11 {
  width: 45.4545454545%; 
}

.d-6-11 {
  width: 54.5454545455%; 
}

.d-7-11 {
  width: 63.6363636364%; 
}

.d-8-11 {
  width: 72.7272727273%; 
}

.d-9-11 {
  width: 81.8181818182%; 
}

.d-10-11 {
  width: 90.9090909091%; 
}

.d-11-11 {
  width: 100%; 
}

.d-1-12 {
  width: 8.3333333333%; 
}

.d-2-12 {
  width: 16.6666666667%; 
}

.d-3-12 {
  width: 25%; 
}

.d-4-12 {
  width: 33.3333333333%; 
}

.d-5-12 {
  width: 41.6666666667%; 
}

.d-6-12 {
  width: 50%; 
}

.d-7-12 {
  width: 58.3333333333%; 
}

.d-8-12 {
  width: 66.6666666667%; 
}

.d-9-12 {
  width: 75%; 
}

.d-10-12 {
  width: 83.3333333333%; 
}

.d-11-12 {
  width: 91.6666666667%; 
}

.d-12-12 {
  width: 100%; 
}

.d-show {
  display: block !important; 
}

.d-hide {
  display: none !important; 
}

.d-full {
  width: 100%; 
}

.d-hide {
  display: none !important; 
}

.d-show.b {
  display: block; 
}

.d-show.ib {
  display: inline-block; 
}

.d-show.fl {
  display: flex;
  flex-wrap: wrap; 
}

.d-left {
  text-align: left !important; 
}

.d-right {
  text-align: right !important; 
}

.d-center {
  text-align: center !important; 
}

.d-no-mar {
  margin: 0 !important; 
}

.d-fw-100 {
  font-weight: 100;
}

.d-fw-200 {
  font-weight: 200;
}

.d-fw-300 {
  font-weight: 300;
}

.d-fw-400 {
  font-weight: 400;
}

.d-fw-500 {
  font-weight: 500;
}

.d-fw-600 {
  font-weight: 600;
}

.d-fw-700 {
  font-weight: 700;
}

.d-fw-800 {
  font-weight: 800;
}

.d-fw-900 {
  font-weight: 900;
}

.d-t-align-center {
  text-align: center; 
}

.d-t-align-left {
  text-align: left; 
}

.d-t-align-right {
  text-align: right;
}

.d-t-transform-uppercase {
  text-transform: uppercase; 
}

.d-t-transform-none {
  text-transform: none; 
}

.d-t-decoration-none a,
.d-t-decoration-none {
  text-decoration: none; 
}

.d-t-decoration-underline a,
.d-t-decoration-underline {
  text-decoration: underline; 
}

.d-bg-position-center,
.d-bg-position-center-center {
  background-position: center center; 
}

.d-bg-position-center-right {
  background-position: center right; 
}

.d-bg-position-center-left {
  background-position: center left; 
}

.d-bg-position-top-center {
  background-position: top center; 
}

.d-bg-position-top-right {
  background-position: top right; 
}

.d-bg-position-top-left {
  background-position: top left; 
}

.d-bg-position-bottom-center {
  background-position: bottom center; 
}

.d-bg-position-bottom-right {
  background-position: bottom right; 
}

.d-bg-position-bottom-left {
  background-position: bottom left; 
}

.d-bg-size-cover {
  background-size: cover; 
}

.d-bg-size-contain {
  background-size: contain; 
}

.d-bg-no-repeat {
  background-repeat: no-repeat; 
}

@media screen and (max-width: 1910px) {
  .b1-1-1 {
    width: 100%; 
  }

  .b1-1-2 {
    width: 50%; 
  }

  .b1-2-2 {
    width: 100%; 
  }

  .b1-1-3 {
    width: 33.3333333333%; 
  }

  .b1-2-3 {
    width: 66.6666666667%; 
  }

  .b1-3-3 {
    width: 100%; 
  }

  .b1-1-4 {
    width: 25%; 
  }

  .b1-2-4 {
    width: 50%; 
  }

  .b1-3-4 {
    width: 75%; 
  }

  .b1-4-4 {
    width: 100%; 
  }

  .b1-1-5 {
    width: 20%; 
  }

  .b1-2-5 {
    width: 40%; 
  }

  .b1-3-5 {
    width: 60%; 
  }

  .b1-4-5 {
    width: 80%; 
  }

  .b1-5-5 {
    width: 100%; 
  }

  .b1-1-6 {
    width: 16.6666666667%; 
  }

  .b1-2-6 {
    width: 33.3333333333%; 
  }

  .b1-3-6 {
    width: 50%; 
  }

  .b1-4-6 {
    width: 66.6666666667%; 
  }

  .b1-5-6 {
    width: 83.3333333333%; 
  }

  .b1-6-6 {
    width: 100%; 
  }

  .b1-1-7 {
    width: 14.2857142857%; 
  }

  .b1-2-7 {
    width: 28.5714285714%; 
  }

  .b1-3-7 {
    width: 42.8571428571%; 
  }

  .b1-4-7 {
    width: 57.1428571429%; 
  }

  .b1-5-7 {
    width: 71.4285714286%; 
  }

  .b1-6-7 {
    width: 85.7142857143%; 
  }

  .b1-7-7 {
    width: 100%; 
  }

  .b1-1-8 {
    width: 12.5%; 
  }

  .b1-2-8 {
    width: 25%; 
  }

  .b1-3-8 {
    width: 37.5%; 
  }

  .b1-4-8 {
    width: 50%; 
  }

  .b1-5-8 {
    width: 62.5%; 
  }

  .b1-6-8 {
    width: 75%; 
  }

  .b1-7-8 {
    width: 87.5%; 
  }

  .b1-8-8 {
    width: 100%; 
  }

  .b1-1-9 {
    width: 11.1111111111%; 
  }

  .b1-2-9 {
    width: 22.2222222222%; 
  }

  .b1-3-9 {
    width: 33.3333333333%; 
  }

  .b1-4-9 {
    width: 44.4444444444%; 
  }

  .b1-5-9 {
    width: 55.5555555556%; 
  }

  .b1-6-9 {
    width: 66.6666666667%; 
  }

  .b1-7-9 {
    width: 77.7777777778%; 
  }

  .b1-8-9 {
    width: 88.8888888889%; 
  }

  .b1-9-9 {
    width: 100%; 
  }

  .b1-1-10 {
    width: 10%; 
  }

  .b1-2-10 {
    width: 20%; 
  }

  .b1-3-10 {
    width: 30%; 
  }

  .b1-4-10 {
    width: 40%; 
  }

  .b1-5-10 {
    width: 50%; 
  }

  .b1-6-10 {
    width: 60%; 
  }

  .b1-7-10 {
    width: 70%; 
  }

  .b1-8-10 {
    width: 80%; 
  }

  .b1-9-10 {
    width: 90%; 
  }

  .b1-10-10 {
    width: 100%; 
  }

  .b1-1-11 {
    width: 9.0909090909%; 
  }

  .b1-2-11 {
    width: 18.1818181818%; 
  }

  .b1-3-11 {
    width: 27.2727272727%; 
  }

  .b1-4-11 {
    width: 36.3636363636%; 
  }

  .b1-5-11 {
    width: 45.4545454545%; 
  }

  .b1-6-11 {
    width: 54.5454545455%; 
  }

  .b1-7-11 {
    width: 63.6363636364%; 
  }

  .b1-8-11 {
    width: 72.7272727273%; 
  }

  .b1-9-11 {
    width: 81.8181818182%; 
  }

  .b1-10-11 {
    width: 90.9090909091%; 
  }

  .b1-11-11 {
    width: 100%; 
  }

  .b1-1-12 {
    width: 8.3333333333%; 
  }

  .b1-2-12 {
    width: 16.6666666667%; 
  }

  .b1-3-12 {
    width: 25%; 
  }

  .b1-4-12 {
    width: 33.3333333333%; 
  }

  .b1-5-12 {
    width: 41.6666666667%; 
  }

  .b1-6-12 {
    width: 50%; 
  }

  .b1-7-12 {
    width: 58.3333333333%; 
  }

  .b1-8-12 {
    width: 66.6666666667%; 
  }

  .b1-9-12 {
    width: 75%; 
  }

  .b1-10-12 {
    width: 83.3333333333%; 
  }

  .b1-11-12 {
    width: 91.6666666667%; 
  }

  .b1-12-12 {
    width: 100%; 
  } 

  .b1-show {
    display: block !important; 
  }

  .b1-hide {
    display: none !important; 
  }

  .b1-full {
    width: 100%; 
  }

  .b1-hide {
    display: none !important; 
  }

  .b1-show.b {
    display: block; 
  }

  .b1-show.ib {
    display: inline-block; 
  }

  .b1-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .b1-left {
    text-align: left !important; 
  }

  .b1-right {
    text-align: right !important; 
  }

  .b1-center {
    text-align: center !important; 
  }

  .b1-no-mar {
    margin: 0 !important; 
  }

  .b1-fw-100 {
    font-weight: 10; 
  }

  .b1-fw-200 {
    font-weight: 20; 
  }

  .b1-fw-300 {
    font-weight: 30; 
  }

  .b1-fw-400 {
    font-weight: 40; 
  }

  .b1-fw-500 {
    font-weight: 50; 
  }

  .b1-fw-600 {
    font-weight: 60; 
  }

  .b1-fw-700 {
    font-weight: 70; 
  }

  .b1-fw-800 {
    font-weight: 80; 
  }

  .b1-fw-900 {
    font-weight: 90; 
  }

  .b1-t-align-center {
    text-align: center; 
  }

  .b1-t-align-left {
    text-align: left; 
  }

  .b1-t-align-right {
    text-align: left; 
  }

  .b1-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .b1-t-transform-none {
    text-transform: none; 
  }

  .b1-t-decoration-none a,
  .b1-t-decoration-none {
    text-decoration: none; 
  }

  .b1-t-decoration-underline a,
  .b1-t-decoration-underline {
    text-decoration: underline; 
  }

  .b1-bg-position-center,
  .b1-bg-position-center-center {
    background-position: center center; 
  }

  .b1-bg-position-center-right {
    background-position: center right; 
  }

  .b1-bg-position-center-left {
    background-position: center left; 
  }

  .b1-bg-position-top-center {
    background-position: top center; 
  }

  .b1-bg-position-top-right {
    background-position: top right; 
  }

  .b1-bg-position-top-left {
    background-position: top left; 
  }

  .b1-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .b1-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .b1-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .b1-bg-size-cover {
    background-size: cover; 
  }

  .b1-bg-size-contain {
    background-size: contain; 
  }

  .b1-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
@media screen and (max-width: 1680px) {
  .b2-1-1 {
    width: 100%; 
  }

  .b2-1-2 {
    width: 50%; 
  }

  .b2-2-2 {
    width: 100%; 
  }

  .b2-1-3 {
    width: 33.3333333333%; 
  }

  .b2-2-3 {
    width: 66.6666666667%; 
  }

  .b2-3-3 {
    width: 100%; 
  }

  .b2-1-4 {
    width: 25%; 
  }

  .b2-2-4 {
    width: 50%; 
  }

  .b2-3-4 {
    width: 75%; 
  }

  .b2-4-4 {
    width: 100%; 
  }

  .b2-1-5 {
    width: 20%; 
  }

  .b2-2-5 {
    width: 40%; 
  }

  .b2-3-5 {
    width: 60%; 
  }

  .b2-4-5 {
    width: 80%; 
  }

  .b2-5-5 {
    width: 100%; 
  }

  .b2-1-6 {
    width: 16.6666666667%; 
  }

  .b2-2-6 {
    width: 33.3333333333%; 
  }

  .b2-3-6 {
    width: 50%; 
  }

  .b2-4-6 {
    width: 66.6666666667%; 
  }

  .b2-5-6 {
    width: 83.3333333333%; 
  }

  .b2-6-6 {
    width: 100%; 
  }

  .b2-1-7 {
    width: 14.2857142857%; 
  }

  .b2-2-7 {
    width: 28.5714285714%; 
  }

  .b2-3-7 {
    width: 42.8571428571%; 
  }

  .b2-4-7 {
    width: 57.1428571429%; 
  }

  .b2-5-7 {
    width: 71.4285714286%; 
  }

  .b2-6-7 {
    width: 85.7142857143%; 
  }

  .b2-7-7 {
    width: 100%; 
  }

  .b2-1-8 {
    width: 12.5%; 
  }

  .b2-2-8 {
    width: 25%; 
  }

  .b2-3-8 {
    width: 37.5%; 
  }

  .b2-4-8 {
    width: 50%; 
  }

  .b2-5-8 {
    width: 62.5%; 
  }

  .b2-6-8 {
    width: 75%; 
  }

  .b2-7-8 {
    width: 87.5%; 
  }

  .b2-8-8 {
    width: 100%; 
  }

  .b2-1-9 {
    width: 11.1111111111%; 
  }

  .b2-2-9 {
    width: 22.2222222222%; 
  }

  .b2-3-9 {
    width: 33.3333333333%; 
  }

  .b2-4-9 {
    width: 44.4444444444%; 
  }

  .b2-5-9 {
    width: 55.5555555556%; 
  }

  .b2-6-9 {
    width: 66.6666666667%; 
  }

  .b2-7-9 {
    width: 77.7777777778%; 
  }

  .b2-8-9 {
    width: 88.8888888889%; 
  }

  .b2-9-9 {
    width: 100%; 
  }

  .b2-1-10 {
    width: 10%; 
  }

  .b2-2-10 {
    width: 20%; 
  }

  .b2-3-10 {
    width: 30%; 
  }

  .b2-4-10 {
    width: 40%; 
  }

  .b2-5-10 {
    width: 50%; 
  }

  .b2-6-10 {
    width: 60%; 
  }

  .b2-7-10 {
    width: 70%; 
  }

  .b2-8-10 {
    width: 80%; 
  }

  .b2-9-10 {
    width: 90%; 
  }

  .b2-10-10 {
    width: 100%; 
  }

  .b2-1-11 {
    width: 9.0909090909%; 
  }

  .b2-2-11 {
    width: 18.1818181818%; 
  }

  .b2-3-11 {
    width: 27.2727272727%; 
  }

  .b2-4-11 {
    width: 36.3636363636%; 
  }

  .b2-5-11 {
    width: 45.4545454545%; 
  }

  .b2-6-11 {
    width: 54.5454545455%; 
  }

  .b2-7-11 {
    width: 63.6363636364%; 
  }

  .b2-8-11 {
    width: 72.7272727273%; 
  }

  .b2-9-11 {
    width: 81.8181818182%; 
  }

  .b2-10-11 {
    width: 90.9090909091%; 
  }

  .b2-11-11 {
    width: 100%; 
  }

  .b2-1-12 {
    width: 8.3333333333%; 
  }

  .b2-2-12 {
    width: 16.6666666667%; 
  }

  .b2-3-12 {
    width: 25%; 
  }

  .b2-4-12 {
    width: 33.3333333333%; 
  }

  .b2-5-12 {
    width: 41.6666666667%; 
  }

  .b2-6-12 {
    width: 50%; 
  }

  .b2-7-12 {
    width: 58.3333333333%; 
  }

  .b2-8-12 {
    width: 66.6666666667%; 
  }

  .b2-9-12 {
    width: 75%; 
  }

  .b2-10-12 {
    width: 83.3333333333%; 
  }

  .b2-11-12 {
    width: 91.6666666667%; 
  }

  .b2-12-12 {
    width: 100%; 
  } 

  .b2-show {
    display: block !important; 
  }

  .b2-hide {
    display: none !important; 
  }

  .b2-full {
    width: 100%; 
  }

  .b2-hide {
    display: none !important; 
  }

  .b2-show.b {
    display: block; 
  }

  .b2-show.ib {
    display: inline-block; 
  }

  .b2-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .b2-left {
    text-align: left !important; 
  }

  .b2-right {
    text-align: right !important; 
  }

  .b2-center {
    text-align: center !important; 
  }

  .b2-no-mar {
    margin: 0 !important; 
  }

  .b2-fw-100 {
    font-weight: 10; 
  }

  .b2-fw-200 {
    font-weight: 20; 
  }

  .b2-fw-300 {
    font-weight: 30; 
  }

  .b2-fw-400 {
    font-weight: 40; 
  }

  .b2-fw-500 {
    font-weight: 50; 
  }

  .b2-fw-600 {
    font-weight: 60; 
  }

  .b2-fw-700 {
    font-weight: 70; 
  }

  .b2-fw-800 {
    font-weight: 80; 
  }

  .b2-fw-900 {
    font-weight: 90; 
  }

  .b2-t-align-center {
    text-align: center; 
  }

  .b2-t-align-left {
    text-align: left; 
  }

  .b2-t-align-right {
    text-align: left; 
  }

  .b2-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .b2-t-transform-none {
    text-transform: none; 
  }

  .b2-t-decoration-none a,
  .b2-t-decoration-none {
    text-decoration: none; 
  }

  .b2-t-decoration-underline a,
  .b2-t-decoration-underline {
    text-decoration: underline; 
  }

  .b2-bg-position-center,
  .b2-bg-position-center-center {
    background-position: center center; 
  }

  .b2-bg-position-center-right {
    background-position: center right; 
  }

  .b2-bg-position-center-left {
    background-position: center left; 
  }

  .b2-bg-position-top-center {
    background-position: top center; 
  }

  .b2-bg-position-top-right {
    background-position: top right; 
  }

  .b2-bg-position-top-left {
    background-position: top left; 
  }

  .b2-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .b2-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .b2-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .b2-bg-size-cover {
    background-size: cover; 
  }

  .b2-bg-size-contain {
    background-size: contain; 
  }

  .b2-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
@media screen and (max-width: 1440px) {
  .b3-1-1 {
    width: 100%; 
  }

  .b3-1-2 {
    width: 50%; 
  }

  .b3-2-2 {
    width: 100%; 
  }

  .b3-1-3 {
    width: 33.3333333333%; 
  }

  .b3-2-3 {
    width: 66.6666666667%; 
  }

  .b3-3-3 {
    width: 100%; 
  }

  .b3-1-4 {
    width: 25%; 
  }

  .b3-2-4 {
    width: 50%; 
  }

  .b3-3-4 {
    width: 75%; 
  }

  .b3-4-4 {
    width: 100%; 
  }

  .b3-1-5 {
    width: 20%; 
  }

  .b3-2-5 {
    width: 40%; 
  }

  .b3-3-5 {
    width: 60%; 
  }

  .b3-4-5 {
    width: 80%; 
  }

  .b3-5-5 {
    width: 100%; 
  }

  .b3-1-6 {
    width: 16.6666666667%; 
  }

  .b3-2-6 {
    width: 33.3333333333%; 
  }

  .b3-3-6 {
    width: 50%; 
  }

  .b3-4-6 {
    width: 66.6666666667%; 
  }

  .b3-5-6 {
    width: 83.3333333333%; 
  }

  .b3-6-6 {
    width: 100%; 
  }

  .b3-1-7 {
    width: 14.2857142857%; 
  }

  .b3-2-7 {
    width: 28.5714285714%; 
  }

  .b3-3-7 {
    width: 42.8571428571%; 
  }

  .b3-4-7 {
    width: 57.1428571429%; 
  }

  .b3-5-7 {
    width: 71.4285714286%; 
  }

  .b3-6-7 {
    width: 85.7142857143%; 
  }

  .b3-7-7 {
    width: 100%; 
  }

  .b3-1-8 {
    width: 12.5%; 
  }

  .b3-2-8 {
    width: 25%; 
  }

  .b3-3-8 {
    width: 37.5%; 
  }

  .b3-4-8 {
    width: 50%; 
  }

  .b3-5-8 {
    width: 62.5%; 
  }

  .b3-6-8 {
    width: 75%; 
  }

  .b3-7-8 {
    width: 87.5%; 
  }

  .b3-8-8 {
    width: 100%; 
  }

  .b3-1-9 {
    width: 11.1111111111%; 
  }

  .b3-2-9 {
    width: 22.2222222222%; 
  }

  .b3-3-9 {
    width: 33.3333333333%; 
  }

  .b3-4-9 {
    width: 44.4444444444%; 
  }

  .b3-5-9 {
    width: 55.5555555556%; 
  }

  .b3-6-9 {
    width: 66.6666666667%; 
  }

  .b3-7-9 {
    width: 77.7777777778%; 
  }

  .b3-8-9 {
    width: 88.8888888889%; 
  }

  .b3-9-9 {
    width: 100%; 
  }

  .b3-1-10 {
    width: 10%; 
  }

  .b3-2-10 {
    width: 20%; 
  }

  .b3-3-10 {
    width: 30%; 
  }

  .b3-4-10 {
    width: 40%; 
  }

  .b3-5-10 {
    width: 50%; 
  }

  .b3-6-10 {
    width: 60%; 
  }

  .b3-7-10 {
    width: 70%; 
  }

  .b3-8-10 {
    width: 80%; 
  }

  .b3-9-10 {
    width: 90%; 
  }

  .b3-10-10 {
    width: 100%; 
  }

  .b3-1-11 {
    width: 9.0909090909%; 
  }

  .b3-2-11 {
    width: 18.1818181818%; 
  }

  .b3-3-11 {
    width: 27.2727272727%; 
  }

  .b3-4-11 {
    width: 36.3636363636%; 
  }

  .b3-5-11 {
    width: 45.4545454545%; 
  }

  .b3-6-11 {
    width: 54.5454545455%; 
  }

  .b3-7-11 {
    width: 63.6363636364%; 
  }

  .b3-8-11 {
    width: 72.7272727273%; 
  }

  .b3-9-11 {
    width: 81.8181818182%; 
  }

  .b3-10-11 {
    width: 90.9090909091%; 
  }

  .b3-11-11 {
    width: 100%; 
  }

  .b3-1-12 {
    width: 8.3333333333%; 
  }

  .b3-2-12 {
    width: 16.6666666667%; 
  }

  .b3-3-12 {
    width: 25%; 
  }

  .b3-4-12 {
    width: 33.3333333333%; 
  }

  .b3-5-12 {
    width: 41.6666666667%; 
  }

  .b3-6-12 {
    width: 50%; 
  }

  .b3-7-12 {
    width: 58.3333333333%; 
  }

  .b3-8-12 {
    width: 66.6666666667%; 
  }

  .b3-9-12 {
    width: 75%; 
  }

  .b3-10-12 {
    width: 83.3333333333%; 
  }

  .b3-11-12 {
    width: 91.6666666667%; 
  }

  .b3-12-12 {
    width: 100%; 
  } 

  .b3-show {
    display: block !important; 
  }

  .b3-hide {
    display: none !important; 
  }

  .b3-full {
    width: 100%; 
  }

  .b3-hide {
    display: none !important; 
  }

  .b3-show.b {
    display: block; 
  }

  .b3-show.ib {
    display: inline-block; 
  }

  .b3-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .b3-left {
    text-align: left !important; 
  }

  .b3-right {
    text-align: right !important; 
  }

  .b3-center {
    text-align: center !important; 
  }

  .b3-no-mar {
    margin: 0 !important; 
  }

  .b3-fw-100 {
    font-weight: 10; 
  }

  .b3-fw-200 {
    font-weight: 20; 
  }

  .b3-fw-300 {
    font-weight: 30; 
  }

  .b3-fw-400 {
    font-weight: 40; 
  }

  .b3-fw-500 {
    font-weight: 50; 
  }

  .b3-fw-600 {
    font-weight: 60; 
  }

  .b3-fw-700 {
    font-weight: 70; 
  }

  .b3-fw-800 {
    font-weight: 80; 
  }

  .b3-fw-900 {
    font-weight: 90; 
  }

  .b3-t-align-center {
    text-align: center; 
  }

  .b3-t-align-left {
    text-align: left; 
  }

  .b3-t-align-right {
    text-align: left; 
  }

  .b3-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .b3-t-transform-none {
    text-transform: none; 
  }

  .b3-t-decoration-none a,
  .b3-t-decoration-none {
    text-decoration: none; 
  }

  .b3-t-decoration-underline a,
  .b3-t-decoration-underline {
    text-decoration: underline; 
  }

  .b3-bg-position-center,
  .b3-bg-position-center-center {
    background-position: center center; 
  }

  .b3-bg-position-center-right {
    background-position: center right; 
  }

  .b3-bg-position-center-left {
    background-position: center left; 
  }

  .b3-bg-position-top-center {
    background-position: top center; 
  }

  .b3-bg-position-top-right {
    background-position: top right; 
  }

  .b3-bg-position-top-left {
    background-position: top left; 
  }

  .b3-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .b3-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .b3-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .b3-bg-size-cover {
    background-size: cover; 
  }

  .b3-bg-size-contain {
    background-size: contain; 
  }

  .b3-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
@media screen and (max-width: 1280px) {
  .b4-1-1 {
    width: 100%; 
  }

  .b4-1-2 {
    width: 50%; 
  }

  .b4-2-2 {
    width: 100%; 
  }

  .b4-1-3 {
    width: 33.3333333333%; 
  }

  .b4-2-3 {
    width: 66.6666666667%; 
  }

  .b4-3-3 {
    width: 100%; 
  }

  .b4-1-4 {
    width: 25%; 
  }

  .b4-2-4 {
    width: 50%; 
  }

  .b4-3-4 {
    width: 75%; 
  }

  .b4-4-4 {
    width: 100%; 
  }

  .b4-1-5 {
    width: 20%; 
  }

  .b4-2-5 {
    width: 40%; 
  }

  .b4-3-5 {
    width: 60%; 
  }

  .b4-4-5 {
    width: 80%; 
  }

  .b4-5-5 {
    width: 100%; 
  }

  .b4-1-6 {
    width: 16.6666666667%; 
  }

  .b4-2-6 {
    width: 33.3333333333%; 
  }

  .b4-3-6 {
    width: 50%; 
  }

  .b4-4-6 {
    width: 66.6666666667%; 
  }

  .b4-5-6 {
    width: 83.3333333333%; 
  }

  .b4-6-6 {
    width: 100%; 
  }

  .b4-1-7 {
    width: 14.2857142857%; 
  }

  .b4-2-7 {
    width: 28.5714285714%; 
  }

  .b4-3-7 {
    width: 42.8571428571%; 
  }

  .b4-4-7 {
    width: 57.1428571429%; 
  }

  .b4-5-7 {
    width: 71.4285714286%; 
  }

  .b4-6-7 {
    width: 85.7142857143%; 
  }

  .b4-7-7 {
    width: 100%; 
  }

  .b4-1-8 {
    width: 12.5%; 
  }

  .b4-2-8 {
    width: 25%; 
  }

  .b4-3-8 {
    width: 37.5%; 
  }

  .b4-4-8 {
    width: 50%; 
  }

  .b4-5-8 {
    width: 62.5%; 
  }

  .b4-6-8 {
    width: 75%; 
  }

  .b4-7-8 {
    width: 87.5%; 
  }

  .b4-8-8 {
    width: 100%; 
  }

  .b4-1-9 {
    width: 11.1111111111%; 
  }

  .b4-2-9 {
    width: 22.2222222222%; 
  }

  .b4-3-9 {
    width: 33.3333333333%; 
  }

  .b4-4-9 {
    width: 44.4444444444%; 
  }

  .b4-5-9 {
    width: 55.5555555556%; 
  }

  .b4-6-9 {
    width: 66.6666666667%; 
  }

  .b4-7-9 {
    width: 77.7777777778%; 
  }

  .b4-8-9 {
    width: 88.8888888889%; 
  }

  .b4-9-9 {
    width: 100%; 
  }

  .b4-1-10 {
    width: 10%; 
  }

  .b4-2-10 {
    width: 20%; 
  }

  .b4-3-10 {
    width: 30%; 
  }

  .b4-4-10 {
    width: 40%; 
  }

  .b4-5-10 {
    width: 50%; 
  }

  .b4-6-10 {
    width: 60%; 
  }

  .b4-7-10 {
    width: 70%; 
  }

  .b4-8-10 {
    width: 80%; 
  }

  .b4-9-10 {
    width: 90%; 
  }

  .b4-10-10 {
    width: 100%; 
  }

  .b4-1-11 {
    width: 9.0909090909%; 
  }

  .b4-2-11 {
    width: 18.1818181818%; 
  }

  .b4-3-11 {
    width: 27.2727272727%; 
  }

  .b4-4-11 {
    width: 36.3636363636%; 
  }

  .b4-5-11 {
    width: 45.4545454545%; 
  }

  .b4-6-11 {
    width: 54.5454545455%; 
  }

  .b4-7-11 {
    width: 63.6363636364%; 
  }

  .b4-8-11 {
    width: 72.7272727273%; 
  }

  .b4-9-11 {
    width: 81.8181818182%; 
  }

  .b4-10-11 {
    width: 90.9090909091%; 
  }

  .b4-11-11 {
    width: 100%; 
  }

  .b4-1-12 {
    width: 8.3333333333%; 
  }

  .b4-2-12 {
    width: 16.6666666667%; 
  }

  .b4-3-12 {
    width: 25%; 
  }

  .b4-4-12 {
    width: 33.3333333333%; 
  }

  .b4-5-12 {
    width: 41.6666666667%; 
  }

  .b4-6-12 {
    width: 50%; 
  }

  .b4-7-12 {
    width: 58.3333333333%; 
  }

  .b4-8-12 {
    width: 66.6666666667%; 
  }

  .b4-9-12 {
    width: 75%; 
  }

  .b4-10-12 {
    width: 83.3333333333%; 
  }

  .b4-11-12 {
    width: 91.6666666667%; 
  }

  .b4-12-12 {
    width: 100%; 
  } 

  .b4-show {
    display: block !important; 
  }

  .b4-hide {
    display: none !important; 
  }

  .b4-full {
    width: 100%; 
  }

  .b4-hide {
    display: none !important; 
  }

  .b4-show.b {
    display: block; 
  }

  .b4-show.ib {
    display: inline-block; 
  }

  .b4-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .b4-left {
    text-align: left !important; 
  }

  .b4-right {
    text-align: right !important; 
  }

  .b4-center {
    text-align: center !important; 
  }

  .b4-no-mar {
    margin: 0 !important; 
  }

  .b4-fw-100 {
    font-weight: 10; 
  }

  .b4-fw-200 {
    font-weight: 20; 
  }

  .b4-fw-300 {
    font-weight: 30; 
  }

  .b4-fw-400 {
    font-weight: 40; 
  }

  .b4-fw-500 {
    font-weight: 50; 
  }

  .b4-fw-600 {
    font-weight: 60; 
  }

  .b4-fw-700 {
    font-weight: 70; 
  }

  .b4-fw-800 {
    font-weight: 80; 
  }

  .b4-fw-900 {
    font-weight: 90; 
  }

  .b4-t-align-center {
    text-align: center; 
  }

  .b4-t-align-left {
    text-align: left; 
  }

  .b4-t-align-right {
    text-align: left; 
  }

  .b4-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .b4-t-transform-none {
    text-transform: none; 
  }

  .b4-t-decoration-none a,
  .b4-t-decoration-none {
    text-decoration: none; 
  }

  .b4-t-decoration-underline a,
  .b4-t-decoration-underline {
    text-decoration: underline; 
  }

  .b4-bg-position-center,
  .b4-bg-position-center-center {
    background-position: center center; 
  }

  .b4-bg-position-center-right {
    background-position: center right; 
  }

  .b4-bg-position-center-left {
    background-position: center left; 
  }

  .b4-bg-position-top-center {
    background-position: top center; 
  }

  .b4-bg-position-top-right {
    background-position: top right; 
  }

  .b4-bg-position-top-left {
    background-position: top left; 
  }

  .b4-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .b4-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .b4-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .b4-bg-size-cover {
    background-size: cover; 
  }

  .b4-bg-size-contain {
    background-size: contain; 
  }

  .b4-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
@media screen and (max-width: 1024px) {
  .th-1-1 {
    width: 100%; 
  }

  .th-1-2 {
    width: 50%; 
  }

  .th-2-2 {
    width: 100%; 
  }

  .th-1-3 {
    width: 33.3333333333%; 
  }

  .th-2-3 {
    width: 66.6666666667%; 
  }

  .th-3-3 {
    width: 100%; 
  }

  .th-1-4 {
    width: 25%; 
  }

  .th-2-4 {
    width: 50%; 
  }

  .th-3-4 {
    width: 75%; 
  }

  .th-4-4 {
    width: 100%; 
  }

  .th-1-5 {
    width: 20%; 
  }

  .th-2-5 {
    width: 40%; 
  }

  .th-3-5 {
    width: 60%; 
  }

  .th-4-5 {
    width: 80%; 
  }

  .th-5-5 {
    width: 100%; 
  }

  .th-1-6 {
    width: 16.6666666667%; 
  }

  .th-2-6 {
    width: 33.3333333333%; 
  }

  .th-3-6 {
    width: 50%; 
  }

  .th-4-6 {
    width: 66.6666666667%; 
  }

  .th-5-6 {
    width: 83.3333333333%; 
  }

  .th-6-6 {
    width: 100%; 
  }

  .th-1-7 {
    width: 14.2857142857%; 
  }

  .th-2-7 {
    width: 28.5714285714%; 
  }

  .th-3-7 {
    width: 42.8571428571%; 
  }

  .th-4-7 {
    width: 57.1428571429%; 
  }

  .th-5-7 {
    width: 71.4285714286%; 
  }

  .th-6-7 {
    width: 85.7142857143%; 
  }

  .th-7-7 {
    width: 100%; 
  }

  .th-1-8 {
    width: 12.5%; 
  }

  .th-2-8 {
    width: 25%; 
  }

  .th-3-8 {
    width: 37.5%; 
  }

  .th-4-8 {
    width: 50%; 
  }

  .th-5-8 {
    width: 62.5%; 
  }

  .th-6-8 {
    width: 75%; 
  }

  .th-7-8 {
    width: 87.5%; 
  }

  .th-8-8 {
    width: 100%; 
  }

  .th-1-9 {
    width: 11.1111111111%; 
  }

  .th-2-9 {
    width: 22.2222222222%; 
  }

  .th-3-9 {
    width: 33.3333333333%; 
  }

  .th-4-9 {
    width: 44.4444444444%; 
  }

  .th-5-9 {
    width: 55.5555555556%; 
  }

  .th-6-9 {
    width: 66.6666666667%; 
  }

  .th-7-9 {
    width: 77.7777777778%; 
  }

  .th-8-9 {
    width: 88.8888888889%; 
  }

  .th-9-9 {
    width: 100%; 
  }

  .th-1-10 {
    width: 10%; 
  }

  .th-2-10 {
    width: 20%; 
  }

  .th-3-10 {
    width: 30%; 
  }

  .th-4-10 {
    width: 40%; 
  }

  .th-5-10 {
    width: 50%; 
  }

  .th-6-10 {
    width: 60%; 
  }

  .th-7-10 {
    width: 70%; 
  }

  .th-8-10 {
    width: 80%; 
  }

  .th-9-10 {
    width: 90%; 
  }

  .th-10-10 {
    width: 100%; 
  }

  .th-1-11 {
    width: 9.0909090909%; 
  }

  .th-2-11 {
    width: 18.1818181818%; 
  }

  .th-3-11 {
    width: 27.2727272727%; 
  }

  .th-4-11 {
    width: 36.3636363636%; 
  }

  .th-5-11 {
    width: 45.4545454545%; 
  }

  .th-6-11 {
    width: 54.5454545455%; 
  }

  .th-7-11 {
    width: 63.6363636364%; 
  }

  .th-8-11 {
    width: 72.7272727273%; 
  }

  .th-9-11 {
    width: 81.8181818182%; 
  }

  .th-10-11 {
    width: 90.9090909091%; 
  }

  .th-11-11 {
    width: 100%; 
  }

  .th-1-12 {
    width: 8.3333333333%; 
  }

  .th-2-12 {
    width: 16.6666666667%; 
  }

  .th-3-12 {
    width: 25%; 
  }

  .th-4-12 {
    width: 33.3333333333%; 
  }

  .th-5-12 {
    width: 41.6666666667%; 
  }

  .th-6-12 {
    width: 50%; 
  }

  .th-7-12 {
    width: 58.3333333333%; 
  }

  .th-8-12 {
    width: 66.6666666667%; 
  }

  .th-9-12 {
    width: 75%; 
  }

  .th-10-12 {
    width: 83.3333333333%; 
  }

  .th-11-12 {
    width: 91.6666666667%; 
  }

  .th-12-12 {
    width: 100%; 
  } 

  .th-show {
    display: block !important; 
  }

  .th-hide {
    display: none !important; 
  }

  .th-full {
    width: 100%; 
  }

  .th-hide {
    display: none !important; 
  }

  .th-show.b {
    display: block; 
  }

  .th-show.ib {
    display: inline-block; 
  }

  .th-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .th-left {
    text-align: left !important; 
  }

  .th-right {
    text-align: right !important; 
  }

  .th-center {
    text-align: center !important; 
  }

  .th-no-mar {
    margin: 0 !important; 
  }

  .th-fw-100 {
    font-weight: 10; 
  }

  .th-fw-200 {
    font-weight: 20; 
  }

  .th-fw-300 {
    font-weight: 30; 
  }

  .th-fw-400 {
    font-weight: 40; 
  }

  .th-fw-500 {
    font-weight: 50; 
  }

  .th-fw-600 {
    font-weight: 60; 
  }

  .th-fw-700 {
    font-weight: 70; 
  }

  .th-fw-800 {
    font-weight: 80; 
  }

  .th-fw-900 {
    font-weight: 90; 
  }

  .th-t-align-center {
    text-align: center; 
  }

  .th-t-align-left {
    text-align: left; 
  }

  .th-t-align-right {
    text-align: left; 
  }

  .th-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .th-t-transform-none {
    text-transform: none; 
  }

  .th-t-decoration-none a,
  .th-t-decoration-none {
    text-decoration: none; 
  }

  .th-t-decoration-underline a,
  .th-t-decoration-underline {
    text-decoration: underline; 
  }

  .th-bg-position-center,
  .th-bg-position-center-center {
    background-position: center center; 
  }

  .th-bg-position-center-right {
    background-position: center right; 
  }

  .th-bg-position-center-left {
    background-position: center left; 
  }

  .th-bg-position-top-center {
    background-position: top center; 
  }

  .th-bg-position-top-right {
    background-position: top right; 
  }

  .th-bg-position-top-left {
    background-position: top left; 
  }

  .th-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .th-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .th-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .th-bg-size-cover {
    background-size: cover; 
  }

  .th-bg-size-contain {
    background-size: contain; 
  }

  .th-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
@media screen and (max-width: 768px) {
  .tv-1-1 {
    width: 100%; 
  }

  .tv-1-2 {
    width: 50%; 
  }

  .tv-2-2 {
    width: 100%; 
  }

  .tv-1-3 {
    width: 33.3333333333%; 
  }

  .tv-2-3 {
    width: 66.6666666667%; 
  }

  .tv-3-3 {
    width: 100%; 
  }

  .tv-1-4 {
    width: 25%; 
  }

  .tv-2-4 {
    width: 50%; 
  }

  .tv-3-4 {
    width: 75%; 
  }

  .tv-4-4 {
    width: 100%; 
  }

  .tv-1-5 {
    width: 20%; 
  }

  .tv-2-5 {
    width: 40%; 
  }

  .tv-3-5 {
    width: 60%; 
  }

  .tv-4-5 {
    width: 80%; 
  }

  .tv-5-5 {
    width: 100%; 
  }

  .tv-1-6 {
    width: 16.6666666667%; 
  }

  .tv-2-6 {
    width: 33.3333333333%; 
  }

  .tv-3-6 {
    width: 50%; 
  }

  .tv-4-6 {
    width: 66.6666666667%; 
  }

  .tv-5-6 {
    width: 83.3333333333%; 
  }

  .tv-6-6 {
    width: 100%; 
  }

  .tv-1-7 {
    width: 14.2857142857%; 
  }

  .tv-2-7 {
    width: 28.5714285714%; 
  }

  .tv-3-7 {
    width: 42.8571428571%; 
  }

  .tv-4-7 {
    width: 57.1428571429%; 
  }

  .tv-5-7 {
    width: 71.4285714286%; 
  }

  .tv-6-7 {
    width: 85.7142857143%; 
  }

  .tv-7-7 {
    width: 100%; 
  }

  .tv-1-8 {
    width: 12.5%; 
  }

  .tv-2-8 {
    width: 25%; 
  }

  .tv-3-8 {
    width: 37.5%; 
  }

  .tv-4-8 {
    width: 50%; 
  }

  .tv-5-8 {
    width: 62.5%; 
  }

  .tv-6-8 {
    width: 75%; 
  }

  .tv-7-8 {
    width: 87.5%; 
  }

  .tv-8-8 {
    width: 100%; 
  }

  .tv-1-9 {
    width: 11.1111111111%; 
  }

  .tv-2-9 {
    width: 22.2222222222%; 
  }

  .tv-3-9 {
    width: 33.3333333333%; 
  }

  .tv-4-9 {
    width: 44.4444444444%; 
  }

  .tv-5-9 {
    width: 55.5555555556%; 
  }

  .tv-6-9 {
    width: 66.6666666667%; 
  }

  .tv-7-9 {
    width: 77.7777777778%; 
  }

  .tv-8-9 {
    width: 88.8888888889%; 
  }

  .tv-9-9 {
    width: 100%; 
  }

  .tv-1-10 {
    width: 10%; 
  }

  .tv-2-10 {
    width: 20%; 
  }

  .tv-3-10 {
    width: 30%; 
  }

  .tv-4-10 {
    width: 40%; 
  }

  .tv-5-10 {
    width: 50%; 
  }

  .tv-6-10 {
    width: 60%; 
  }

  .tv-7-10 {
    width: 70%; 
  }

  .tv-8-10 {
    width: 80%; 
  }

  .tv-9-10 {
    width: 90%; 
  }

  .tv-10-10 {
    width: 100%; 
  }

  .tv-1-11 {
    width: 9.0909090909%; 
  }

  .tv-2-11 {
    width: 18.1818181818%; 
  }

  .tv-3-11 {
    width: 27.2727272727%; 
  }

  .tv-4-11 {
    width: 36.3636363636%; 
  }

  .tv-5-11 {
    width: 45.4545454545%; 
  }

  .tv-6-11 {
    width: 54.5454545455%; 
  }

  .tv-7-11 {
    width: 63.6363636364%; 
  }

  .tv-8-11 {
    width: 72.7272727273%; 
  }

  .tv-9-11 {
    width: 81.8181818182%; 
  }

  .tv-10-11 {
    width: 90.9090909091%; 
  }

  .tv-11-11 {
    width: 100%; 
  }

  .tv-1-12 {
    width: 8.3333333333%; 
  }

  .tv-2-12 {
    width: 16.6666666667%; 
  }

  .tv-3-12 {
    width: 25%; 
  }

  .tv-4-12 {
    width: 33.3333333333%; 
  }

  .tv-5-12 {
    width: 41.6666666667%; 
  }

  .tv-6-12 {
    width: 50%; 
  }

  .tv-7-12 {
    width: 58.3333333333%; 
  }

  .tv-8-12 {
    width: 66.6666666667%; 
  }

  .tv-9-12 {
    width: 75%; 
  }

  .tv-10-12 {
    width: 83.3333333333%; 
  }

  .tv-11-12 {
    width: 91.6666666667%; 
  }

  .tv-12-12 {
    width: 100%; 
  } 

  .tv-show {
    display: block !important; 
  }

  .tv-hide {
    display: none !important; 
  }

  .tv-full {
    width: 100%; 
  }

  .tv-hide {
    display: none !important; 
  }

  .tv-show.b {
    display: block; 
  }

  .tv-show.ib {
    display: inline-block; 
  }

  .tv-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .tv-left {
    text-align: left !important; 
  }

  .tv-right {
    text-align: right !important; 
  }

  .tv-center {
    text-align: center !important; 
  }

  .tv-no-mar {
    margin: 0 !important; 
  }

  .tv-fw-100 {
    font-weight: 10; 
  }

  .tv-fw-200 {
    font-weight: 20; 
  }

  .tv-fw-300 {
    font-weight: 30; 
  }

  .tv-fw-400 {
    font-weight: 40; 
  }

  .tv-fw-500 {
    font-weight: 50; 
  }

  .tv-fw-600 {
    font-weight: 60; 
  }

  .tv-fw-700 {
    font-weight: 70; 
  }

  .tv-fw-800 {
    font-weight: 80; 
  }

  .tv-fw-900 {
    font-weight: 90; 
  }

  .tv-t-align-center {
    text-align: center; 
  }

  .tv-t-align-left {
    text-align: left; 
  }

  .tv-t-align-right {
    text-align: left; 
  }

  .tv-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .tv-t-transform-none {
    text-transform: none; 
  }

  .tv-t-decoration-none a,
  .tv-t-decoration-none {
    text-decoration: none; 
  }

  .tv-t-decoration-underline a,
  .tv-t-decoration-underline {
    text-decoration: underline; 
  }

  .tv-bg-position-center,
  .tv-bg-position-center-center {
    background-position: center center; 
  }

  .tv-bg-position-center-right {
    background-position: center right; 
  }

  .tv-bg-position-center-left {
    background-position: center left; 
  }

  .tv-bg-position-top-center {
    background-position: top center; 
  }

  .tv-bg-position-top-right {
    background-position: top right; 
  }

  .tv-bg-position-top-left {
    background-position: top left; 
  }

  .tv-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .tv-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .tv-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .tv-bg-size-cover {
    background-size: cover; 
  }

  .tv-bg-size-contain {
    background-size: contain; 
  }

  .tv-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
@media screen and (max-width: 640px) {
  .m-1-1 {
    width: 100%; 
  }

  .m-1-2 {
    width: 50%; 
  }

  .m-2-2 {
    width: 100%; 
  }

  .m-1-3 {
    width: 33.3333333333%; 
  }

  .m-2-3 {
    width: 66.6666666667%; 
  }

  .m-3-3 {
    width: 100%; 
  }

  .m-1-4 {
    width: 25%; 
  }

  .m-2-4 {
    width: 50%; 
  }

  .m-3-4 {
    width: 75%; 
  }

  .m-4-4 {
    width: 100%; 
  }

  .m-1-5 {
    width: 20%; 
  }

  .m-2-5 {
    width: 40%; 
  }

  .m-3-5 {
    width: 60%; 
  }

  .m-4-5 {
    width: 80%; 
  }

  .m-5-5 {
    width: 100%; 
  }

  .m-1-6 {
    width: 16.6666666667%; 
  }

  .m-2-6 {
    width: 33.3333333333%; 
  }

  .m-3-6 {
    width: 50%; 
  }

  .m-4-6 {
    width: 66.6666666667%; 
  }

  .m-5-6 {
    width: 83.3333333333%; 
  }

  .m-6-6 {
    width: 100%; 
  }

  .m-1-7 {
    width: 14.2857142857%; 
  }

  .m-2-7 {
    width: 28.5714285714%; 
  }

  .m-3-7 {
    width: 42.8571428571%; 
  }

  .m-4-7 {
    width: 57.1428571429%; 
  }

  .m-5-7 {
    width: 71.4285714286%; 
  }

  .m-6-7 {
    width: 85.7142857143%; 
  }

  .m-7-7 {
    width: 100%; 
  }

  .m-1-8 {
    width: 12.5%; 
  }

  .m-2-8 {
    width: 25%; 
  }

  .m-3-8 {
    width: 37.5%; 
  }

  .m-4-8 {
    width: 50%; 
  }

  .m-5-8 {
    width: 62.5%; 
  }

  .m-6-8 {
    width: 75%; 
  }

  .m-7-8 {
    width: 87.5%; 
  }

  .m-8-8 {
    width: 100%; 
  }

  .m-1-9 {
    width: 11.1111111111%; 
  }

  .m-2-9 {
    width: 22.2222222222%; 
  }

  .m-3-9 {
    width: 33.3333333333%; 
  }

  .m-4-9 {
    width: 44.4444444444%; 
  }

  .m-5-9 {
    width: 55.5555555556%; 
  }

  .m-6-9 {
    width: 66.6666666667%; 
  }

  .m-7-9 {
    width: 77.7777777778%; 
  }

  .m-8-9 {
    width: 88.8888888889%; 
  }

  .m-9-9 {
    width: 100%; 
  }

  .m-1-10 {
    width: 10%; 
  }

  .m-2-10 {
    width: 20%; 
  }

  .m-3-10 {
    width: 30%; 
  }

  .m-4-10 {
    width: 40%; 
  }

  .m-5-10 {
    width: 50%; 
  }

  .m-6-10 {
    width: 60%; 
  }

  .m-7-10 {
    width: 70%; 
  }

  .m-8-10 {
    width: 80%; 
  }

  .m-9-10 {
    width: 90%; 
  }

  .m-10-10 {
    width: 100%; 
  }

  .m-1-11 {
    width: 9.0909090909%; 
  }

  .m-2-11 {
    width: 18.1818181818%; 
  }

  .m-3-11 {
    width: 27.2727272727%; 
  }

  .m-4-11 {
    width: 36.3636363636%; 
  }

  .m-5-11 {
    width: 45.4545454545%; 
  }

  .m-6-11 {
    width: 54.5454545455%; 
  }

  .m-7-11 {
    width: 63.6363636364%; 
  }

  .m-8-11 {
    width: 72.7272727273%; 
  }

  .m-9-11 {
    width: 81.8181818182%; 
  }

  .m-10-11 {
    width: 90.9090909091%; 
  }

  .m-11-11 {
    width: 100%; 
  }

  .m-1-12 {
    width: 8.3333333333%; 
  }

  .m-2-12 {
    width: 16.6666666667%; 
  }

  .m-3-12 {
    width: 25%; 
  }

  .m-4-12 {
    width: 33.3333333333%; 
  }

  .m-5-12 {
    width: 41.6666666667%; 
  }

  .m-6-12 {
    width: 50%; 
  }

  .m-7-12 {
    width: 58.3333333333%; 
  }

  .m-8-12 {
    width: 66.6666666667%; 
  }

  .m-9-12 {
    width: 75%; 
  }

  .m-10-12 {
    width: 83.3333333333%; 
  }

  .m-11-12 {
    width: 91.6666666667%; 
  }

  .m-12-12 {
    width: 100%; 
  } 

  .m-show {
    display: block !important; 
  }

  .m-hide {
    display: none !important; 
  }

  .m-full {
    width: 100%; 
  }

  .m-hide {
    display: none !important; 
  }

  .m-show.b {
    display: block; 
  }

  .m-show.ib {
    display: inline-block; 
  }

  .m-show.fl {
    display: flex;
    flex-wrap: wrap; 
  }

  .m-left {
    text-align: left !important; 
  }

  .m-right {
    text-align: right !important; 
  }

  .m-center {
    text-align: center !important; 
  }

  .m-no-mar {
    margin: 0 !important; 
  }

  .m-fw-100 {
    font-weight: 10; 
  }

  .m-fw-200 {
    font-weight: 20; 
  }

  .m-fw-300 {
    font-weight: 30; 
  }

  .m-fw-400 {
    font-weight: 40; 
  }

  .m-fw-500 {
    font-weight: 50; 
  }

  .m-fw-600 {
    font-weight: 60; 
  }

  .m-fw-700 {
    font-weight: 70; 
  }

  .m-fw-800 {
    font-weight: 80; 
  }

  .m-fw-900 {
    font-weight: 90; 
  }

  .m-t-align-center {
    text-align: center; 
  }

  .m-t-align-left {
    text-align: left; 
  }

  .m-t-align-right {
    text-align: left; 
  }

  .m-t-transform-uppercase {
    text-transform: uppercase; 
  }

  .m-t-transform-none {
    text-transform: none; 
  }

  .m-t-decoration-none a,
  .m-t-decoration-none {
    text-decoration: none; 
  }

  .m-t-decoration-underline a,
  .m-t-decoration-underline {
    text-decoration: underline; 
  }

  .m-bg-position-center,
  .m-bg-position-center-center {
    background-position: center center; 
  }

  .m-bg-position-center-right {
    background-position: center right; 
  }

  .m-bg-position-center-left {
    background-position: center left; 
  }

  .m-bg-position-top-center {
    background-position: top center; 
  }

  .m-bg-position-top-right {
    background-position: top right; 
  }

  .m-bg-position-top-left {
    background-position: top left; 
  }

  .m-bg-position-bottom-center {
    background-position: bottom center; 
  }

  .m-bg-position-bottom-right {
    background-position: bottom right; 
  }

  .m-bg-position-bottom-left {
    background-position: bottom left; 
  }

  .m-bg-size-cover {
    background-size: cover; 
  }

  .m-bg-size-contain {
    background-size: contain; 
  }

  .m-bg-no-repeat {
    background-repeat: no-repeat; 
  } 
}
.flex-ctn,
.flex-container {
  display: flex;
  flex-wrap: wrap; 
}

/* align-items AKA Vertical align (Horizontal if "flex-direction = column") */
.flex-vert-start,
.flex-vert-top,
.flex-vertical-start,
.flex-vertical-top,
.flex-align-start,
.flex-align-top {
  align-items: flex-start; 
}

.flex-vert-end,
.flex-vert-bot,
.flex-vert-bottom,
.flex-vertical-end,
.flex-vertical-bot,
.flex-vertical-bottom,
.flex-align-end,
.flex-align-bot,
.flex-align-bottom {
  align-items: flex-end; 
}

.flex-vert-stretch,
.flex-vertical-stretch,
.flex-align-stretch {
  align-items: stretch; 
}

.flex-vert-center,
.flex-vertical-center,
.flex-align-center {
  align-items: center; 
}

.flex-vert-baseline,
.flex-vertical-baseline,
.flex-align-baseline {
  align-items: baseline; 
}

/* justify-content AKA Vertical align (Horizontal if "flex-direction = column") */
.flex-hori-center,
.flex-horizontal-center,
.flex-justify-center {
  justify-content: center; 
}

.flex-hori-end,
.flex-hori-right,
.flex-horizontal-end,
.flex-horizontal-right,
.flex-justify-end,
.flex-justify-right {
  justify-content: flex-end; 
}

.flex-hori-start,
.flex-hori-left,
.flex-horizontal-start,
.flex-horizontal-left,
.flex-justify-start,
.flex-justify-left {
  justify-content: flex-start; 
}

.flex-hori-between,
.flex-horizontal-between,
.flex-justify-between {
  justify-content: space-between; 
}

.flex-hori-around,
.flex-horizontal-around,
.flex-justify-around {
  justify-content: space-around; 
}

/* align-items AKA Vertical align (Horizontal if "flex-direction = column") */
.flex-hori-center,
.flex-horizontal-center,
.flex-justify-center {
  justify-content: center; 
}

.flex-hori-end,
.flex-hori-right,
.flex-horizontal-end,
.flex-horizontal-right,
.flex-justify-end,
.flex-justify-right {
  justify-content: flex-end; 
}

.flex-hori-start,
.flex-hori-left,
.flex-horizontal-start,
.flex-horizontal-left,
.flex-justify-start,
.flex-justify-left {
  justify-content: flex-start; 
}

.flex-hori-between,
.flex-horizontal-between,
.flex-justify-between {
  justify-content: space-between; 
}

.flex-hori-around,
.flex-horizontal-around,
.flex-justify-around {
  justify-content: space-around; 
}

/* switch sides AKA want to center multiple stacked blocks vertically */
.flex-dir-column,
.flex-dir-col,
.flex-dir,
.flex-switch,
.flex-column,
.flex-direction-column,
.flex-direction-col,
.flex-direction {
  flex-direction: column; 
}

.flex-dir-row,
.flex-row,
.flex-direction-row {
  flex-direction: row; 
}

/* Général */

.no-pad {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important; 
}

.no-pad-v {
  padding-top: 0 !important;
  padding-bottom: 0 !important; 
}

.no-pad-h {
  padding-left: 0 !important;
  padding-right: 0 !important; 
}

.no-pad-t {
  padding-top: 0 !important; 
}

.no-pad-b {
  padding-bottom: 0 !important; 
}

.no-pad-l {
  padding-left: 0 !important; 
}

.no-pad-r {
  padding-right: 0 !important; 
}

.no-mar {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important; 
}

.no-mar-v {
  margin-top: 0 !important;
  margin-bottom: 0 !important; 
}

.no-mar-h {
  margin-left: 0 !important;
  margin-right: 0 !important; 
}

.no-mar-t {
  margin-top: 0 !important; 
}

.no-mar-b {
  margin-bottom: 0 !important; 
}

.no-mar-l {
  margin-left: 0 !important; 
}

.no-mar-r {
  margin-right: 0 !important; 
}

.no-mar-last:last-child {
  margin-bottom: 0 !important; 
}

.circle {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%; 
}


.pc {
  display: inline-block;
  width: 100%;
  margin-top: -6px; 
}

.col {
  box-sizing: border-box;
  position: relative;
  float: left;
  vertical-align: top; 
}

.cb {
  clear: both; 
}

.filler {
  min-height: 1px; 
}

.flipv {
  -moz-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  -webkit-transform: scaleY(-1);
  -ms-transform: scaleY(-1);
  transform: scaleY(-1);
  -webkit-filter: FlipV;
  filter: FlipV;
  -ms-filter: "FlipV"; 
}

.rotate90 {
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg); 
}

.rotate180 {
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg); 
}

.rotate270 {
  -ms-transform: rotate(270deg);
  -webkit-transform: rotate(270deg);
  transform: rotate(270deg);
}


/* ==========================================================================
   POPUP DE RECHERCHE (#searchPopup)
   ========================================================================== */

   #masthead .hexaJaune{
    cursor: pointer;
    color: var(--noir);
    transition: transform var(--transitionTiming), background-color var(--transitionTiming);
  }
  #masthead .hexaJaune:hover,
  #masthead .hexaJaune:focus-visible{
    transform: scale(1.08);
    outline: none;
  }

  body.has-search-open{
    overflow: hidden;
  }

  .searchPopup{
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease-out, visibility 0.25s ease-out;
  }
  .searchPopup.is-open{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .searchPopup__backdrop{
    position: absolute;
    inset: 0;
    background-color: rgba(34, 29, 25, 0.72); /* var(--noir) à 72% */
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    cursor: pointer;
  }
  .searchPopup__box{
    position: relative;
    width: min(92vw, 640px);
    background-color: var(--beigeP);
    padding: 3.3333333333333335rem 3.3333333333333335rem 2.7777777777777777rem;
    border-radius: 4px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.35);
    transform: translateY(12px) scale(0.98);
    transition: transform 0.3s ease-out;
  }
  .searchPopup.is-open .searchPopup__box{
    transform: translateY(0) scale(1);
  }
  .searchPopup__title{
    font-family: var(--font-family);
    font-size: clamp(22px, 1.2vw + 18px, 30px);
    font-weight: 500;
    color: var(--noir);
    margin: 0 0 1.3888888888888888rem;
    letter-spacing: -0.01em;
  }
  .searchPopup__close{
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 2.2222222222222222rem;
    height: 2.2222222222222222rem;
    background-color: var(--jaune);
    color: var(--noir);
    border: 0;
    border-radius: 50%;
    font-size: 1rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color var(--transitionTiming), transform var(--transitionTiming);
  }
  .searchPopup__close:hover,
  .searchPopup__close:focus-visible{
    background-color: var(--rouge);
    color: #fff;
    transform: rotate(90deg);
    outline: none;
  }

/* ── Bouton clear custom (remplace le X natif du navigateur) ── */
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  display: none;
}
.search-clear {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.75rem;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--noir);
  opacity: 0.4;
  font-size: 0.9rem;
  transition: opacity var(--transitionTiming), color var(--transitionTiming);
}
.search-clear:hover {
  opacity: 1;
  color: var(--rouge);
}

/* Formulaire de recherche à l'intérieur du popup */
.searchPopup .search-form{
  display: flex;
  align-items: stretch;
  gap: 0;
  border-radius: 2px;
  overflow: hidden;
  background-color: #fff;
}
.searchPopup .search-form label{
  /* caché visuellement mais accessible */
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
.searchPopup .search-field{
  flex: 1 1 auto;
  border: 0;
  background: transparent;
  padding: 0.9444444444444444rem 1.1111111111111112rem;
  font-family: var(--font-family);
  font-size: 1rem;
  color: var(--noir);
  outline: none;
}
.searchPopup .search-field::placeholder{
  color: rgba(34,29,25,0.5);
}
.searchPopup .search-submit{
  flex: 0 0 auto;
  border: 0;
  background-color: var(--rouge);
  color: #fff;
  font-family: var(--font-family);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08333333333333333rem;
  font-size: 0.8333333333333334em;
  padding: 0 1.6666666666666667rem;
  cursor: pointer;
  transition: background-color var(--transitionTiming);
}
.searchPopup .search-submit:hover,
.searchPopup .search-submit:focus-visible{
  background-color: var(--rougeF);
  outline: none;
  color: #fff!important;
}

@media (max-width: 600px){
  .searchPopup__box{
    padding: 2.2222222222222223rem 1.6666666666666667rem 1.6666666666666667rem;
  }
  .searchPopup .search-form{
    flex-direction: column;
  }
  .searchPopup .search-submit{
    padding: 0.8333333333333334rem 1rem;
  }
}


/* ==========================================================================
   PAGE DE RÉSULTATS DE RECHERCHE (search.php)
   ========================================================================== */

   .searchPage{

    padding: 3.3333333333333335rem 0 5.555555555555555rem;
    display: inline-block;
    width: 100%;
  }
  .searchPage__header{
    margin-bottom: 3.3333333333333335rem;
  }
  .searchPage__count{
    color: var(--noir);
    font-size: 1rem;
    opacity: 0.75;
    margin: 0 0 1.1111111111111112rem;
  }

  .searchPage__form{
    max-width: 560px;
    margin: 0;
  }
  .searchPage__form .search-form{
    display: flex;
    align-items: stretch;
    border: 1px solid rgba(0, 0, 0, 0.5);
    border-radius: 2px;
    overflow: hidden;
    background-color: #fff;
  }
  .searchPage__form .search-form label{
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0);
    white-space: nowrap; border: 0;
  }
  .searchPage__form .search-field{
    flex: 1 1 auto;
    border: 0;
    background: transparent;
    padding: 0.7777777777777778rem 1.1111111111111112rem;
    font-family: var(--font-family);
    font-size: 1rem;
    color: var(--noir);
    outline: none;
  }
  .searchPage__form .search-submit{
    flex: 0 0 auto;
    border: 0;
    background-color: var(--rouge);
    color: #fff;
    font-family: var(--font-family);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08333333333333333rem;
    font-size: 0.8333333333333334em;
    padding: 0 1.3888888888888888rem;
    cursor: pointer;
    transition: background-color var(--transitionTiming);
  }
  .searchPage__form .search-submit:hover{
    background-color: var(--rougeF);
    color: #fff!important;
  }

  .searchPage__results{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.6666666666666667rem;
  }
  .searchCard{
    background-color: #fff;
    padding: 1.6666666666666667rem;
    border-radius: 2px;
    transition: transform var(--transitionTiming), box-shadow var(--transitionTiming), border-color var(--transitionTiming);
    display: flex;
    flex-direction: column;
  }
  .searchCard:hover{
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(0,0,0,0.08);
  }
  .searchCard__type{
    display: inline-block;
    font-size: 0.75em;
    text-transform: uppercase;
    letter-spacing: 0.08333333333333333rem;
    font-weight: 700;
    color: var(--noir);
    padding-bottom: 5px;
    margin-bottom: 1.25rem;
    border-bottom: 3px solid transparent;
  }
  .searchCard__type--jaune      { border-bottom-color: var(--jaune); }
  .searchCard__type--turquoise  { border-bottom-color: var(--turquoise); }
  .searchCard__type--orange     { border-bottom-color: var(--orange); }
  .searchCard__type--vert       { border-bottom-color: var(--vert); }
  .searchCard__title{
    font-size: 1.2222222222222223rem;
    line-height: 1.25;
    font-weight: 600;
    color: var(--noir);
    margin: 0 0 0.666666rem!important;
  }
  .searchCard__title a{
    color: inherit;
    text-decoration: none;
    background-image: linear-gradient(0.25turn, var(--rouge) 49.4%, transparent 49.5%);
    background-size: 200% 1px;
    background-position: 100% 100%;
    background-repeat: no-repeat;
    transition: background-position-x 0.4s ease-out, color var(--transitionTiming);
    font-weight: 800;
  }
  .searchCard__title a:hover{
    background-position-x: 0%;
    color: var(--rouge);
  }
  .searchCard__excerpt{
    font-size: 0.9444444444444444rem;
    color: var(--noir);
    opacity: 0.85;
    margin: 0 0 1.1111111111111112rem;
    line-height: 1.55;
  }
  .searchCard__more{
    margin-top: auto;
    color: var(--rouge) !important;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.08333333333333333rem;
    font-size: 0.8333333333333334em;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
  }
  .searchCard__more i{
    transition: transform var(--transitionTiming);
  }
  .searchCard__more:hover i{
    transform: translateX(4px);
  }

/* Pagination */
.searchPage__nav{
  margin-top: 3.3333333333333335rem;
  display: flex;
  justify-content: center;
}
.searchPage__nav .nav-links{
  display: inline-flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  align-items: center;
}
.searchPage__nav a,
.searchPage__nav span{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.4444444444444446rem;
  height: 2.4444444444444446rem;
  padding: 0 0.8333333333333334rem;
  background-color: #fff;
  color: var(--noir);
  font-weight: 600;
  text-decoration: none;
  border-radius: 2px;
  transition: background-color var(--transitionTiming), color var(--transitionTiming);
}
.searchPage__nav a:hover{
  background-color: var(--jaune);
  color: var(--noir);
}
.searchPage__nav .current{
  background-color: var(--rouge);
  color: #fff;
}

/* Aucun résultat */
.searchPage .no-results{
  background-color: #fff;
  padding: 2.7777777777777777rem;
  border-left: 6px solid var(--rouge);
  border-radius: 2px;
}
.searchPage .no-results .page-title{
  margin-top: 0;
}

@media (max-width: 700px){
  .searchPage{
    padding: 2.7777777777777777rem 0 3.3333333333333335rem;
  }
  .searchPage__results{
    grid-template-columns: 1fr;
  }
}

.vcenter {
  display: flex;
  align-items: center;
}

/* ==========================================================================
   BURGER MENU — STYLES DE BASE (desktop : burger caché, drawer inactif)
   ========================================================================== */

   .menuBurger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 44px;
    height: 44px;
    background: none;
    border: none;
    cursor: pointer;
    margin:8px 1.333rem;
    z-index: 1001;
    position: relative;
    flex-shrink: 0;
  }
  .menuBurger__bar {
    display: block;
    width: 26px;
    height: 2px;
    background-color: #fff;
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
  }
  body:not(.home) .menuBurger__bar,
  .masthead--scrolled .menuBurger__bar {
    background-color: var(--noir);
  }
  .menuBurger.is-open .menuBurger__bar:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }
/* Masquer le burger quand le drawer est ouvert (le bouton X du drawer prend le relais) */
.menuBurger.is-open {
  opacity: 0;
  pointer-events: none;
}
.menuBurger.is-open .menuBurger__bar:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
.menuBurger.is-open .menuBurger__bar:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.menuDrawer__close {
  display: none;
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: none;
  border: none;
  font-size: 1.4rem;
  color: var(--noir);
  cursor: pointer;
  line-height: 1;
  padding: 0.5rem;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease;
}
.menuDrawer__close:hover { opacity: 0.6; }

.menuDrawer__backdrop {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 998;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.menuDrawer__backdrop.is-visible {
  opacity: 1;
  pointer-events: all;
}

body.has-menu-open { overflow: hidden; }

/* ==========================================================================
   RESPONSIVE ≤ 1024px — Tablette + mobile
   ========================================================================== */
   @media screen and (max-width: 1024px) {
    .listingAllInside .theWrap {
      grid-template-columns: repeat(2, 1fr);
    }
    .logo {
      z-index: 9999;
    }
    .bannerNav { 
      left: calc(50% - 73px);
    }
    html .cols3 .col:nth-child(3),
    html .cols3 .col:nth-child(1){
      width: 100%!important;
    }
    ul.twoCols{
      columns: 1;
      -webkit-columns: 1;
      -moz-columns: 1;
    }

    /* ── Header : annule le inline-block global et maintient le flex ── */
    #masthead .flexThat {
      display: flex !important;
      justify-content: space-between;
      align-items: center;
      flex-wrap: nowrap;
    }
    #masthead .col.d-2-12 { width: auto; flex: 0 1 auto; }
    #masthead .col        { width: auto; flex: 0 0 auto;  }
    #masthead { min-height: 80px; }
    #masthead .logo { padding-top: 0.8em; padding-bottom: 0.8em; }
    #masthead .logo:before { display: none; }
    #masthead .logo:after  { display: none; }

    /* ── Burger visible ── */
    .menuBurger { display: flex; }

    /* ── Backdrop ── */
    .menuDrawer__backdrop { display: block; }

    html:has(.theMainMenu.is-open) {
      overflow: hidden;
    }
    /* ── Drawer ── */
    .theMainMenu {
      position: fixed;
      top: 0;
      right: 0;
      width: 320px;
      max-width: 40vw;
      height: 100dvh;
      background-color: var(--beigeP);
      z-index: 999;
      transform: translateX(110%);
      transition: transform 0.35s cubic-bezier(.4, 0, .2, 1);
      overflow-y: auto;
      padding: 5rem 0 2rem;
      box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
      display: block !important;
    }
    .theMainMenu.is-open { transform: translateX(0); }

    /* ── Bouton fermer ── */
    .menuDrawer__close { display: flex; }

    /* ── Items de nav empilés ── */
    .theMainMenu .menuParent { padding: 0; }
    .theMainMenu .main-menu.nav {
      flex-direction: column;
      align-items: flex-start;
      width: 100%;
      padding: 0 1.5rem;
    }
    .theMainMenu .menu { width: 100%; }
    .theMainMenu .menu li {
      display: block;
      margin: 0;
      border-bottom: 1px solid rgba(34, 29, 25, 0.1);
    }
    .theMainMenu .menu li a {
      color: var(--noir) !important;
      font-size: 1rem;
      padding: 0.85rem 0;
      width: 100%;
      background-image: none !important;
      text-align: right;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 10px;
    }
    /* Cache le ::after (chevron desktop) dans le drawer */
    .theMainMenu .menu .menu-item-has-children > a::after {
      display: none;
    }

    /* ── Bouton toggle sous-menu (chevron simple, style desktop) ── */
    .submenu-toggle {
      display: inline-flex;
      align-items: center;
      flex-shrink: 0;
      background: none;
      border: none;
      cursor: pointer;
      color: var(--noir)!important;
      font-size: 0.7em; 
      padding: 1em 0 1em 1em;
    }
    .submenu-toggle i {
      transition: transform 0.25s ease;
      pointer-events: none;
    }
    .menu-item-has-children.sub-open > a .submenu-toggle i {
      transform: rotate(-180deg);
    }

    /* ── Sous-menus mobiles ── */
    .theMainMenu .menu .sub-menu {
      position: static;
      opacity: 1;
      visibility: visible;
      background-color: var(--beigeP);
      width: 100%;
      margin: 0;
      padding: 0!important;
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease;
      box-shadow: none;
    }
    .theMainMenu .menu .menu-item-has-children.sub-open .sub-menu {
      max-height: 600px;
    }
    .theMainMenu .menu .sub-menu li { border-bottom: none; border-top: 1px solid rgba(34, 29, 25, 0.1);}
    .theMainMenu .menu .sub-menu a {
      color: var(--noir) !important;
      font-size: 0.9rem;
      padding-right: 2em;
    }

    /* ── Icône recherche dans le drawer ── */
    .theMainMenu .hexaJaune {
      margin: 1.5rem 1.5rem 0;
      align-self: flex-end;
      background-color: var(--jaune);
    }
    .theMainMenu .hexaJaune i { color: var(--noir); }

    /* ── Paddings réduits ── */

    .padTB  { padding-top: 3rem;   padding-bottom: 3rem;   }
    .padTB120 { padding-top: 3.5rem; padding-bottom: 3.5rem; }
    .padTB80  { padding-top: 2.5rem; padding-bottom: 2.5rem; }
    .padTB40  { padding-top: 1.5rem; padding-bottom: 1.5rem; }

    /* ── Containers : retire les marges internes larges ── */
    .container8  { padding-left: 0;    padding-right: 0;    }
    .container10 { padding-left: 1.333rem; padding-right: 1.333rem; }
    .container6  { padding-left: 1.333rem; padding-right: 1.333rem; }
    .container9L, .container9R { padding-left: 0; padding-right: 0; }
    .container9LSpecial { padding-left: 0; padding-right: 0; }

    /* ── Bannière ── */
    .homeBannerPanel { margin-top: -135px!important; height: auto; }
    .homeBannerPanelInner { flex-wrap: wrap; }
    .homeBannerPanelInner .col { width: 100% !important; }

    /* ── Section 3 colonnes titre : géré dans le bloc ≤1280px ── */
    .cols3 .imgCover { max-height: 300px; object-position: center }
    .cols3 .hexaRouge { display: none; }

    /* ── Listing page (grille 5 cols → 2 cols) ── */
    /*.listingAllInside .theWrap { grid-template-columns: repeat(2, 1fr); }*/

    /* ── Listing home : le titre s'empile ── */
    .listingInner .col { width: 100% !important; }
    .listingInner .padL { padding-left: 1.333rem; }

    /* ── Article cards ── */
    .article-card h4    { min-height: auto; }
    .theWrap .theCtnCard h4 { min-height: auto !important; }
    .theWrap .articleCardExcerpt { min-height: auto !important; }

    /* ── Section toggle ── */
    .theTogglePage { display: block; }
    .theTogglePage .col.d-4-12 { width: 100% !important; text-align: left !important; }
    .theTogglePage .col.d-8-12 { width: 100% !important; }
    .containerToogle { display: block; }

    /* ── Slider membres ── */
    .lignes-membres:after { display: none; }
    .lmHeader { flex-wrap: wrap; gap: 0.75rem; }
    .lmSeparator { display: none; }

    /* ── Section 14-34 ── */
    .ctn14-34 .flexThat { display: block !important; }
    .ctn14-34 .col { width: 100% !important; }

    /* ── Footer ── */
    #colophon .infolettre { display: block; }
    #colophon .infolettre .col { width: 100% !important; display: block; }
    .insideBottom { 
      display: inline-block;
      width: 100%;
      padding-bottom: 0;
      padding-top: 2.2222222222222223rem;
      margin-top: 2.2222222222222223rem;
    }
    .logoFoot{
      padding-bottom: 2.2222222222222223rem;
    }
    .insideBottom .col { width: 100% !important; text-align: left !important; }
    .copyRight { 
      display: inline-block;
      width: 100%; 
    }
    /*.copyRight .col { width: 100% !important; text-align: left !important; }*/
    .bottomPage .insideBottom { border-top: 1px solid rgba(255, 255, 255, 0.3); }

    /* ── Décorations absolues ── */
    .home .listingArticles:before { width: 250px; background-size: contain; top: -30px;}
    .cta { background-image: none; }
  }

/* ==========================================================================
   RESPONSIVE —
   ========================================================================== */
   @media screen and (max-width: 1024px) {
    .ctnInfolettre{
      padding-bottom: 35px;
    }
  }
  @media screen and (max-width: 768px) {

    .hexbox h4, .hexbox p { 
      text-align: center;
    }
    .listingAllInside .theWrap {
      grid-template-columns: repeat(2, 1fr)!important;
    }
    .imgNotAct img { 
      height: 14em !important;
    }

    /* ── Bannière : réduit le padding-top du texte ── */
    .txtOnBanner {  height: auto; min-height: 50vw; }
    .homeBannerBg { height: auto; min-height: 60vw; }
    .bannerSlide .col { width: 100% !important; }
    .bannerSlide_text { height: auto;  }
    .bannerNav { 
      position: static; 
      transform: none; 
      width: 100%; 
      justify-content: flex-start; 
      gap: 1rem; 
      min-height: auto; 
      padding: 1rem 1.333rem; 
      background-size: 80px;
      background-image: none;
    }
    .bannerNavBtn{
      font-size: 1rem;
    }
    .bannerSlide_text:before{
      background-image: none;
    }
    .bannerNav .bannerNavBtn { transform: none; }

    .homeBannerPanelInner .col:first-of-type img{
      width: 70%;
      right: 0;
      object-fit: contain;
    }

    /* ── Section 50/50 : image en second sur mobile ── */
    .content-h5050 .h5050-half.colonne_2 { order: -1; }
    .content-h5050 .flexThat { flex-direction: column; }

    /* ── Listing page (2 cols reste) ── */
    .listingAllInside .theWrap { grid-template-columns: repeat(2, 1fr); gap: 2rem 1rem; }

    /* ── MailChimp footer : 1 colonne ── */
    #mc_embed_signup .mc-field-group.long{
      width: 98%!important;
    }
    #mc_embed_signup .mc-field-group { width: 98% !important; float: none !important; }
    #mc_embed_signup .mc-field-group input { width: 98% !important; box-sizing: border-box !important; }

    /* ── Footer espacements ── */
    #colophon { padding-top: 3rem; }
    .insideBottom { padding-bottom: 2rem; margin-top: 2rem; }
  }

/* ==========================================================================
   RESPONSIVE ≤ 640px — Mobiles
   ========================================================================== */
   @media screen and (max-width: 640px) {

    /* ── Base ── */
    html, body { font-size: 16px !important; }


    /* ── Header ── */
    #masthead .logo img { max-width: 150px; }
    #masthead { min-height: 60px; }

    /* ── Drawer plein écran sur mobile ── */
    .theMainMenu { width: 100%; max-width: 100%; }

    /* ── Paddings encore réduits ── */
    .padTB  { padding-top: 2.2rem; padding-bottom: 2.2rem; }
    .padTB120 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
    .padTB80  { padding-top: 2rem;   padding-bottom: 2rem;   }
    .padTB40  { padding-top: 1.2rem; padding-bottom: 1.2rem; }

    /* ── Containers ── */
    .container10 { padding-left: 1rem; padding-right: 1rem; }
    .container6  { padding-left: 1rem; padding-right: 1rem; }

    /* Listing page -> 1 colonne */
    .listingAllInside .theWrap { grid-template-columns: 1fr!important; }

    .theWrap .theCtnCard{
      margin-top: 0;
    }


    /* Toggles */
    .rowToggle { margin-bottom: 1.5rem; display: flex; align-items: center; flex-wrap: wrap;}

    /* Decorations */
    .ligneTemps:before { display: none; }
    .theToggle:before  { display: none; }
    .ctn13-23:before   { display: none; }
    .homeBannerPanelInner:after { display: none; }

    /* Footer copyright */
    /*.copyRight .col { text-align: center !important; }*/
    .copyRight p { margin-bottom: 0.5rem; }
    .theMainMenu .main-menu.nav{
      flex-wrap: wrap;
      align-content: flex-end;
    }
  }
  @media screen and (max-width: 1024px) {
    .theToggle:before{
      width: 250px;
      background-size: contain;
      top: -35px;
    }
    .leTitre{
      padding-bottom: 1.9444444444444444rem;
    }
  }
/* ==========================================================================
   CORRECTIFS — v1.2
   ========================================================================== */

/* Empêche la scrollbar horizontale causée par le drawer off-screen */
html { overflow-x: hidden; }

/* Bouton toggle sous-menu : caché sur desktop */
@media screen and (min-width: 1025px) {
  .submenu-toggle { display: none !important; }
}

/* Padding desktop du menu principal (équivalent padLR retiré du HTML) */
.theMainMenu {
  padding-left: 4.444rem;
  padding-right: 4.444rem;
  display: inline-block;
  width: 100%;
}


@media screen and (max-width: 1280px) {
  #masthead .logo.padL{
    padding-left: 3.3333333333333335rem;
  }
  .theMainMenu{
    padding-left: 3.3333333333333335rem;
    padding-right: 3.3333333333333335rem;
  }

  .menu li{
    margin: 0 0.8888888888888888rem;
  }
  /* Listing grille + cols3 layout a 1280px */
  .listingAllInside .theWrap { 
    /*grid-template-columns: repeat(3, 1fr);*/
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  }
  .cols3 .imgCover {
    max-height: 300px!important; 
  }
  .listingAllInside .theWrap { /*créer*/
    grid-template-columns: repeat(3, 1fr);
  }
  /* cols3 : titre(50%) | image(50%) sur ligne 1, contenu(100%) sur ligne 2 */
  .cols3 .flex { display: flex !important; flex-direction: row !important; flex-wrap: wrap; }
  .cols3 .col:nth-child(1) { width: 50% !important; order: 1; text-align: left !important; }  /* titre */
  .cols3 .col:nth-child(2) { width: 50% !important; order: 2; text-align: left !important; } /* contenu */
  .cols3 .col:nth-child(3) { width: 100% !important; order: 3; text-align: left !important; }                               /* image */

  .ctn14-34 .container8{
    padding-left: 8.333%;
    padding-right: 8.333%;
  }
  .leTitre {
    padding-bottom: 1.9444444444444444rem;
  }
}
/* ---- Corrections grand écran > 1920px ---- */
@media screen and (min-width: 1921px) {
  /* Aligne le titre de bannière avec le maxW du panel en-dessous */
  .txtOnBanner {
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ---- Corrections <= 1024px ---- */
@media screen and (max-width: 1024px) {
  .home #masthead:not(.masthead--scrolled) {
    .menuBurger__bar {
      background-color: var(--beigeP) !important;
    }
  }
  .cols3 .col:nth-child(2) { 
    width: 100% !important;
    order: 2;
  }
  .cols3 .col:nth-child(1) .padTB { 
    padding-bottom:0 !important;
  } 
  .cols3 .col:nth-child(2) .padTB { 
    padding-top:0 !important;
  }

  /* Drawer : annule le padding desktop du theMainMenu */
  .theMainMenu { padding-left: 0; padding-right: 0; }

  /* Header toujours beige sur mobile */
  #masthead.masthead--scrolled { background-color: var(--beigeP); }

  /* Burger bars visibles sur fond beige */
  .menuBurger__bar { background-color: var(--noir) !important; }

  /* Logo visible sur mobile : colonne à largeur fixe pour éviter le collapse flex */
  #masthead .col.d-2-12 { flex: 0 0 150px; width: 150px; min-width: 0; }
  #masthead .logo { display: block !important; width: 100%; padding: 0.8rem 1.333rem !important; }
  #masthead .logo img { display: block; width: auto; max-width: 130px; height: auto; }

  /* Bouton fermer : position:fixed pour sortir du flux overflow-y:auto */
  .menuDrawer__close {
    position: fixed !important;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 1001;
    pointer-events: none;
    opacity: 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    font-size: 1.3rem;
    background: var(--beigeP);
    border-radius: 50%;
    transition: opacity 0.2s ease;
    color: var(--noir)!important;
  }
  /* Visible uniquement quand le drawer est ouvert */
  .theMainMenu.is-open .menuDrawer__close {
    opacity: 1;
    pointer-events: auto;
  }

  /* homeBanner : hauteur auto pour ne pas deborder sur la section suivante */
  .homeBanner { height: auto; }
  .homeBannerBg { height: 410px;  }
  .homeBannerPanel {
    position: relative;
    height: auto;
    z-index: 1;
  }
  .txtOnBanner {
    padding-top: 170px;
  }

  /* ctn14-34 : padding sur l'image comme sur le texte */
  .ctn14-34 .col { padding-left: 1.333rem; padding-right: 1.333rem; }
  .ctn14-34 .padLR { padding-left: 0; padding-right: 0; }

  /* cols3 spacing : géré dans ≤1280px */

  /* hexa50 : maintien du flex pour centrage vertical, pas inline-block */
  .hexa50 .flexThat { display: flex !important; align-items: center; flex-wrap: wrap; }
  .hexa50 .col.d-1-2 { width: 100%; padding-bottom:2rem; }
  .lmHeader {
    flex-direction: column; /*ajouter*/
    align-items: flex-start; /*ajouter*/
  }
  /* lm-card tablette */
  .lm-card { width: calc(28vw - 1rem); gap: 0.5rem; }
  .lm-hex  { width: 80px; height: 93px; }
  .hexa50 .padR{
    padding-left: 1rem!important;
  }
}

/* ---- Corrections <= 768px ---- */
@media screen and (max-width: 768px) {


  /* hexa50 : empile image + texte */
  .hexa50 .flexThat { flex-direction: column; }

  .hexa50 img { max-width: 260px; margin: 0 auto; }

  /* lm-card mobile */
  .lm-card { width: calc(42vw - 1rem); }
  .lm-hex  { width: 70px; height: 81px; }
}

/* ---- Corrections <= 640px ---- */
@media screen and (max-width: 640px) {

  /* lm-card petit mobile */
  .lm-card { width: calc(55vw - 1rem); }
  .lm-hex  { width: 60px; height: 69px; }
}
