/* :::::::::::::::::::::: */
/* :::::::: FONTS :::::: */
/* :::::::::::::::::::::: */

/* @font-face {
	font-family: 'Ostrich';
	src: url('font/OstrichSans-Medium.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
} */

@font-face {
    font-family: 'BruteGrotesque';
    src: url('./font/BrutGrotesque-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'BruteGrotesque';
    src: url('./font/BrutGrotesque-Book.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'BruteGrotesque';
    src: url('./font/BrutGrotesque-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}


@font-face {
	font-family: 'Ostrich';
	src: url('./font/ostrich-sans.sansinline.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
}

/* @font-face {
	font-family: 'Ostrich';
	src: url('font/OstrichSans-Black.woff2') format('woff2');
	font-weight: 900;
	font-style: normal;
} */

:root {
  --nav-height: 3vw;
}


a {
	text-decoration: none;
}

.btn { border: none; color: white; }
.btn:hover { color: var(--button-form-clr); border: 1px solid var(--button-form-clr); }
.btn svg, .btn svg * { fill: white; }
.btn:hover svg, .btn:hover svg * { fill: var(--navbar-hover); }

/* ----------- --------- */

body {
	overflow-x: hidden;
	overflow-y: auto;
}

.desktop {
	display: block;
}

.mobile {
	display: none;
}

@media(max-width:768px) {
	.desktop {
		display: none!important; 
	}

	.mobile {
		display: block;
	}
}


/* :::::::::::::::::::::: */
/* :::::::: NAVBAR :::::: */
/* :::::::::::::::::::::: */

nav {
	width: 75vw;
	background-color: #fff;
	height: 4vw;
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	justify-content: left;
	align-items: center;
	gap: 3vw;
	padding-left: 2vw;
	z-index: 10;
}

nav .sticky-nav {
	display: flex;
    gap: 2vw;
}

nav span {
	font-size: 0.8vw;
	text-transform: uppercase;
	font-family: 'Roboto';
}

nav span a {
	color: #000;
	padding-bottom: 0.25rem;
  	transition: color 0.2s;

}
nav span a.active {
  border-bottom: 2px solid #D28A76;
}





/* :::::::::::::::::::::: */
/* :::::::: HEADER :::::: */
/* :::::::::::::::::::::: */

header {
	width: 75vw;
	padding-top: 4vw;
	height: auto;
	position: relative;
	display: flex;
}

header .header-carousel {
	width: 100%;
	height: auto;
}

header .splide_header .splide-visu {
	height: auto;
	width: 100%;
}

header .logo-constructa {
	width: 13vw;
	height: auto;
	position: absolute;
	top: 6vw;
	left: 2vw;
	z-index: 1;
}

header .logo-prog {
	width: 45vw;
	height: auto;
	position: absolute;
	top: 50%;                /* milieu vertical du header */
  	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
	margin: auto 0;
}

header .patch-fno {
	width: 12vw;
	height: auto;
	position: absolute;
	right: 2vw;
	bottom: 2vw;
	z-index: 1;
}

header .header-patch-fno {
	position: absolute;
    left: 2vw;
    bottom: 2vw;
    font-family: "Bowlby One", cursive;
    font-size: 2vw;
    padding: 1vw 1.5vw;
    background-color: #CEB953;
    color: #fff;
    text-transform: uppercase;
    z-index: 1;
    line-height: 2vw;
}

header .header-text {
	position: absolute;
	color: #fff;
	background-color: #afbf89d4;
	padding: 1vw 2vw;
	text-align: center;
	width: 100%;
	height: auto;
	bottom: 0;
	z-index: 1;
}

header .header-text h5 {
	margin: 0;
	font-size: 1.5vw;
	font-family: "roboto";
	font-weight: 700;
	text-transform: uppercase;

}

header .header-text h5 span {
	display: block;
	font-size: 1.1vw;
	font-weight: 100;
	margin-top: 0.5vw;
}

header .header-carousel .splide__pagination { bottom: 5vw; }

header .bloc-header {
	width: 70vw;
	height: auto;
	position: absolute;
	top: 6vw;
	left: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 1;
}

header .bloc-header .header-left {
	padding-left: 2vw;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 1vw;
}

header .bloc-header .header-left .left-constructa {
	width: 10vw;
	height: auto;
}

header .bloc-header .header-left .left-sinopia {
	width: 33vw;
	height: auto;
}

header .bloc-header .header-right {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1vw;
}

header .bloc-header .header-right img {
	width: 7vw;
	height: auto;
}
@media (min-width: 720px){

  /* base pour que le bottom fonctionne bien */
  .splide_header{
    position: relative;
  }

  .splide_header .splide__pagination{
    /* ✅ force visible */
    display: flex !important;

    /* ✅ au-dessus du bandeau */
    bottom: calc(var(--banner-bottom, 0px) + var(--banner-h, 56px) + var(--dots-gap, 14px)) !important;
    z-index: 999 !important;

    /* ✅ responsive spacing */
    gap: var(--dot-space, 10px);
  }

  .splide_header .splide__pagination__page{
    width: var(--dot-size, 10px) !important;
    height: var(--dot-size, 10px) !important;
    margin: 0 !important;
  }
  .header-carousel{ --dots-gap: 28px; } 
}
.header-carousel{
  position: relative;
  overflow: hidden;

  --banner-h: 56px;
  --banner-bottom: 0px;
  --banner-blur: 2px;

  /* ✅ largeur du formulaire qui recouvre à droite (auto responsive) */
  --overlap-right: clamp(0px, 22vw, 420px);
}

.header-offer-banner{
  position: absolute;
  left: 0;                 /* ✅ pleine largeur */
  right: 0;                /* ✅ pleine largeur */
  bottom: 0;               /* collé en bas */
  height: var(--banner-h);
  z-index: 1;

  display: flex;
  align-items: center;
  justify-content: center;

  /* ✅ le fond prend toute la largeur, mais le texte garde un peu d’air */
  padding: 0 16px;
  box-sizing: border-box;

  background: rgba(182, 90, 65, 0.50);
  color: #fff;

  font-family: inherit;
  font-weight: 700;
  font-size: clamp(16px, 2vw, 30px);
  line-height: 1.1;
  text-align: center;

  border-radius: 0;        /* ✅ pas d’arrondi */
  backdrop-filter: blur(var(--banner-blur));
  -webkit-backdrop-filter: blur(var(--banner-blur));
}
/* :::::::::::::::::::::: */
/* :::::::: MAIN :::::: */
/* :::::::::::::::::::::: */

/* ===== DEBUT BLOC A COPIER DANS LA LP ===== */
    #slide_mosaique {
      font-family: Arial, sans-serif;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: center;
      gap: 3vw;
      width: 100%;
      box-sizing: border-box;
      padding: 2rem;
    }

    #slide_mosaique * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    #slide_mosaique .splide {
      max-width: 100%;
      width: 100%;
      margin: 0 !important;
      overflow: hidden;
    }
    

    /* Autoriser le débordement pour l'effet de zoom */
    #slide_mosaique .splide__track,
    #slide_mosaique .splide__list {
      overflow: visible !important;
    }

    #slide_mosaique .splide__list {
       padding-top: 4vw !important;
    }

    #slide_mosaique .splide__slide {
      transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.4s ease;
      transform: scale(0.90);
      opacity: 0.5;
      z-index: 0;
    }

    #slide_mosaique .splide__slide.is-active {
      transform: scale(1.3) translateY(-60px);
      opacity: 1;
      z-index: 1;
      padding-top: 1vw;
      transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.4s ease;
    }

	

    #slide_mosaique .slide-item {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      justify-content: flex-start;
      overflow: hidden;
      color: #333;
      border-radius: 12px;
      /* box-shadow: 0 4px 20px rgba(0,0,0,0.15); */
    }

    #slide_mosaique .slide-item .item-image {
      width: 100%;
      height: 28vw;
      flex-shrink: 0;
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat;
    }

    #slide_mosaique .slide-1 .item-image {
        background-image: url('../images/constructa_pers1.webp');
    }

    #slide_mosaique .slide-2 .item-image {
        background-image: url('../images/constructa_pers2.webp');
    }

    #slide_mosaique .slide-3 .item-image {
        background-image: url('../images/constructa_pers3.webp');
    }

	#slide_mosaique .slide-4 .item-image {
        background-image: url('../images/constructa_pers4.webp');
    }

	#slide_mosaique .slide-5 .item-image {
        background-image: url('../images/constructa_pers5.webp');
    }

		#quartier_cards {
			width: 100%;
			display: flex;
			gap: 0.5vw;
			align-items: flex-start;
			margin-top: 1vw;
			overflow: visible;
		}

		#quartier_cards .quartier-card {
			flex: 1;
			min-width: 0;
			border: 0;
			background: transparent;
			padding: 0;
			text-align: left;
			cursor: pointer;
			transform-origin: center bottom;
			transform: scale(0.90);
			/* opacity: 0.50; */
			/* filter: saturate(0.5); */
			transition: flex 0.4s ease, transform 0.4s ease, opacity 0.35s ease, filter 0.35s ease;
		}

		#quartier_cards .quartier-card .item-image {
			width: 100%;
			height: 15vw;
			background-position: center;
			background-size: contain;
			background-repeat: no-repeat;
			border-radius: 10px;
			transition: transform 0.4s ease, height 0.4s ease;
		}

		#quartier_cards .quartier-card .item-content {
			padding: 0.75vw 0.35vw 0;
			min-height: 12vw;
		}

		#quartier_cards .quartier-card h3 {
			font-size: 1vw;
			color: #000;
			text-align: left;
			margin: 0;
			font-family: "Bowlby One", cursive;
			letter-spacing: 0.05vw;
			text-align: center;
		}

		#quartier_cards .quartier-card .item-description {
			margin-top: 0.45vw;
			font-size: 0.9vw;
			line-height: 1vw;
			color: #000;
			text-align: left;
			max-height: 15vw;
			min-height: 10vw;
			/* overflow: hidden; */
			color: #000;
			font-family: "brute grotesque", sans-serif;
			text-align: center;
			opacity: 0;
			visibility: hidden;
			transform: translateY(1.2vw);
			transition: opacity 0.35s ease, transform 0.45s ease, visibility 0s linear 0.45s;
		}

		#quartier_cards .quartier-card .item-description span {
			color: #000;
			font-weight: 800;
			font-family: "brute grotesque", sans-serif;
			text-align: center;
		}

		#quartier_cards .quartier-card.is-active {
			flex: 2.2;
			transform: scale(1) translateY(40px);
			opacity: 1;
			/* filter: saturate(1); */
			z-index: 2;
		}

		

		#quartier_cards .quartier-card.is-active .item-description {
			color: #000;
			font-family: "brute grotesque", sans-serif;
			text-align: center;
			font-weight: 400;
			opacity: 1;
			visibility: visible;
			transform: translateY(0);
			transition-delay: 0.25s, 0.25s, 0s;
		}

		#quartier_cards .quartier-card.is-active .item-description ul {
			text-align: left;
		}

		#quartier_cards .quartier-card.is-active .item-content h3 {
			font-size: 1.5vw;
		}

		#quartier_cards .quartier-card.is-active .item-image {
			transform: scale(1);
			height: 22vw;
		}

		#quartier_cards .slide-1 .item-image {
			background-image: url('../images/constructa_pers1.webp');
		}

		#quartier_cards .slide-2 .item-image {
			background-image: url('../images/constructa_pers2.webp');
		}

		#quartier_cards .slide-3 .item-image {
			background-image: url('../images/constructa_pers3.webp');
		}

		#quartier_cards .slide-4 .item-image {
			background-image: url('../images/constructa_pers4.webp');
		}

		#quartier_cards .slide-5 .item-image {
			background-image: url('../images/constructa_pers5.webp');
		}

    #slide_mosaique .item-content {
      padding: 1rem;
    }

    #slide_mosaique .item-description {
      margin-top: 0.75rem;
      font-size: 0.6vw;
      color: #555;
      line-height: 1.2;
      text-align: center;
    }

    #slide_mosaique h3 {
      font-size: 1.2vw;
      color: #333;
      font-weight: bold;
      text-align: center;
    }

    @media (max-width: 768px) {
			#quartier_cards {
				display: none;
			}

      #slide_mosaique {
        padding: 0;
        gap: 1rem;
      }

      #slide_mosaique .splide {
        width: 100vw;
        max-width: 100vw;
      }

      #slide_mosaique .splide__list {
        padding-top: 0 !important;
      }

      #slide_mosaique .splide__slide,
      #slide_mosaique .splide__slide.is-active {
        transform: none;
        opacity: 1;
        padding-top: 0;
      }

      #slide_mosaique .slide-item .item-image {
        height: 75vw;
      }

      #slide_mosaique .item-content {
        padding: 1rem 1.1rem 1.25rem;
      }

      #slide_mosaique h3 {
        font-size: 6vw;
		font-family: "Bowlby One", cursive;
		text-align: center;
		margin: 4vw 0;
      }

		#slide_mosaique .item-description {
    		font-size: 3.3vw;
    		line-height: 1.4;  
			font-family: "BruteGrotesque", sans-serif; 	
		}

		#slide_mosaique .item-description span {
			font-size: 3.5vw;
			font-weight: 800;
			font-family: "BruteGrotesque", sans-serif;
			text-align: center;
			display: block;
			margin-top: 1vw;

		}

		#slide_mosaique .item-description ul {
			list-style: disc;
			padding: 0 5vw;
		}

    }
    /* ===== FIN BLOC A COPIER DANS LA LP ===== */

section {scroll-margin-top: var(--nav-height);}

section#adresse {
	width: 75vw;
	height: 60vw;
	background-image: url('../images/nanterre-visuel-bloc-adresse.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
}

section#adresse .blc-adresse {
	width: 31vw;
	position: relative;
	margin-left: 0;
	background: url("../images/background-bloc-adresse.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	padding: 3vw 2vw 6vw 2vw;
	height: 37vw;

}

section#adresse .blc-adresse h3, h4{
	color: #fff;
	font-family: "roboto";
}

section#adresse .blc-adresse h2 {
	color: #fff;
	font-family: "Ostrich", sans-serif;
	font-weight: 700;
	font-size: 3.4vw;
	margin: 0 0 1.5vw 0;
	line-height: 3.1vw;
}

section#adresse .blc-adresse h4 {
	color: #fff;
	font-weight: 700;
}
section#adresse .blc-adresse h4 span{
	font-weight: 100;
}

section#adresse .blc-adresse p{
	color: #fff;
	font-family: "roboto";
	font-weight: 100;
}
section#adresse .blc-adresse p b{
	font-weight: 700;
}

section#transition .hr {
    width: 70%;
    height: 2px;
    background-color: #BD5639;
    margin: 5vw 0;
    margin: 0 2.5vw;
}

/* section#adresse .blc-adresse p:last-of-type { min-height:7vw;} */
/* section#adresse .blc-adresse p:last-of-type::after {
	content:" ";
    width: 20vw;
    height: 7vw;
    position: absolute;
    background-image: url(../images/rivage-metro.svg);
    bottom: 1vw;
    left: 0;
	background-repeat: no-repeat;
} */

/* section#adresse .blc-adresse-transport {

} */

section#adresse .blc-adresse-transport div {
	display: flex;
	justify-content: start;
	align-items: center;
	gap: 2vw;
}

section#adresse .blc-adresse-transport div.transport-item {
	margin: 1vw 0;
}

section#adresse .blc-adresse-transport div.transport-item p {
	margin: 0;
}

section#adresse .blc-adresse-transport div img.picto-xl {
	width: 4vw;
	height: auto;
}

section#adresse .blc-adresse-transport div img.picto-m {
	width: 1.7vw;
	height: auto;
}

section#adresse .blc-adresse-transport div .bloc-picto {
	min-width: 4vw;
	justify-content: end;
}

section#carousel {
	width: 72.5vw;
	height: 25vw;
	display: flex;
	justify-content: center;
	align-items: center;
}

section#carousel .container-carousel {
	width: 100%;
}

section#carousel .container-carousel .splide-visu {
	width: 100%;
}

section#carousel .splide__pagination {
	display: flex;
}

section#carousel .splide__pagination__page.is-active {
	background: #707070;
}


.splide__arrow.splide__arrow--prev, .splide__arrow.splide__arrow--next {
	display: none;
}

/* Quartier */

section#quartier {
	width: 75%;
	height: auto;
	background-color: #fff;
	display: flex;
	justify-content: space-between;
}

section#quartier h2 {
	font-family: 'Bowlby One', cursive;
	color: #BD5639;
	padding: 0;
	letter-spacing: 0.05vw;
	font-size: 3vw;
	margin-bottom: 0;
}

section#quartier .blc-quartier {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1vw;
	align-items: flex-start;
	padding: 5vw 1vw 5vw 2vw;
	flex-direction: column;
}

section#quartier .blc-quartier .quartier-title {
	text-align: left;
}

section#quartier .blc-quartier .quartier-title h2 {
	font-family: 'BruteGrotesque', sans-serif;
	font-size: 3vw;
	color: #fff;
}

section#quartier .blc-quartier .quartier-description p {
	font-family: "roboto";
	font-weight: 400;
	font-size: 0.95vw;
	color: #fff;
	line-height: 1.3vw;
}

section#quartier .quartier-image img {
	height: 100%;
	width: auto;
}

section.quartier-perspective {
	width: 75vw;
}

section.quartier-perspective .perspective {
	width: 100%;
	height: auto;
} 

section.quartier-perspective .transition {
	position: relative;
	top: -2vw;
	width: 100%;
	height: auto;
}



section#appartements {
	width: 75vw;
	height: 53vw;
	background-image: url('../images/nanterre-visuel-bloc-appart.jpg');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position-y: bottom;
}

section#appartements .blc-appartements {
	width: auto;
    display: flex;
    justify-content: center;
    gap: 1vw;
    align-items: center;
    background: url('../images/background-bloc-adresse.jpg');
    padding: 5vw 2vw;
    flex-direction: column;
}

section#appartements .blc-appartements .appartements-title {
	width: 100%;
	text-align: center;
}

section#appartements .blc-appartements .appartements-title h3 {
	font-family: "roboto";
	font-size: 0.9vw;
	color: #E0CA9A;
	margin-bottom: 1.5vw;
}

section#appartements .blc-appartements .appartements-title h2 {
	font-family: "Ostrich", sans-serif;
	font-weight: 700;
	font-size: 3.4vw;
	color: #fff;
	letter-spacing: 0.1vw;
	line-height: 3.5vw;
	width: fit-content;
	margin: 0 auto;
}

section#appartements .blc-appartements .appartements-description {
	text-align: center;
	width: 75%;
	margin-top: 1.5vw;

}

main h2 .underline {
	border-bottom: 1px solid #fff;
	padding-bottom: 0.5vw;
		
}

section#appartements .blc-appartements .appartements-description p {
	font-family: "roboto";
	font-weight: 400;
	font-size: 0.9vw;
	color: #fff;
	padding-right: 0;
}
section#appartements .blc-appartements .appartements-description p b {
	font-weight: 700;
}

/* ARCHITECTURE */
section#architecture {
	width: 75vw;
	height: 15vw;
}

section#architecture .blc-appartements {
	width: auto;
    display: flex;
    justify-content: center;
    gap: 0vw;
    align-items: center;
    padding: 2vw;
    flex-direction: column;
}

section#architecture .blc-appartements .appartements-title {
	width: 100%;
	text-align: center;
}

section#architecture .blc-appartements .appartements-title h2 {
	font-family: "BruteGrotesque", sans-serif;
	font-size: 3vw;
	color: #BD5639;
}

section#architecture .blc-appartements .appartements-description {
	text-align: center;
	width: 75%;
	margin-top: 1.5vw;
}

section#architecture .blc-appartements .appartements-description p {
	font-family: "roboto";
	font-weight: 400;
	font-size: 1vw;
	color: #BD5639;
	padding-right: 0;
}
section#architecture .blc-appartements .appartements-description p b {
	font-weight: 700;
}

section.quartier-perspective .transition_2 {
	position: relative;
	width: 100%;
	height: auto;
	bottom: -2vw;
}

/* ARCHITECTURE */
section#architecture_lumiere {
	width: 75vw;
	background-color: #D28A76;
	text-align: center;
	padding: 4vw 0;
	margin-top: -3vw;
}

section#architecture_lumiere .architecture-container  {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 1vw;
}

section#architecture_lumiere .architecture-container h2 {
	font-family: "BruteGrotesque", sans-serif;
	font-size: 3vw;
	color: #fff;
}

section#architecture_lumiere .architecture-container .architecture_descr p {
	font-family: "roboto";
	font-weight: 400;
	font-size: 0.95vw;
	color: #fff;
	line-height: 1.3vw;
	margin-bottom: 0.5vw;
	padding: 0 5vw;
}

section#architecture_perspective {
	width: 75vw;
	margin-top: -3vw;
}

section#architecture_perspective .transition_2 {
	position: relative;
	width: 100%;
	height: auto;
	bottom: -2vw;
}

/* PRESTATIONS */
section#prestations {
	width: 75vw;
	height: auto;
	display: flex;
	flex-direction: column;
	padding: 5vw 0 2.5vw 0;
}

section#prestations .blc-prestations {
	width: 100%;
	padding: 0 3.5vw;
	text-align: left;
	margin-bottom: 3vw;
}

section#prestations .blc-prestations h2 {
	font-family: "Bowlby One", cursive;
	font-weight: 700;
	font-size: 3vw;
	margin: 0;
	color: #BD5639;
	margin: 0 auto;
}

section#prestations .blc-prestations h3 {
	font-family: "roboto";
	font-size: 0.9vw;
	color: #E0CA9A;
	margin: 0 0 1.5vw 0;
}

section#prestations .container-prestations {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: start;
	padding: 2vw;
}
section#prestations .container-prestations.second {
	padding: 4vw 2vw 2vw 2vw;
}

section#prestations .prestation-image {
	width: 100%;
	height: auto;
}

section#prestations .prestation-communes {
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 8vw;
}

section#prestations .prestation-column {
	width: fit-content;
}

/* Accordeon css */

 /* Reset de base */

 /* Conteneur principal */
.features { 
	display: flex;
	font-family: "roboto";
	flex-wrap: wrap;
	gap: 2vw;
}
.feature-block { 
	flex: 1; 
	padding: 0; 
	display: flex; 
	min-width: 25vw;
	max-width: 33vw;
}

 /* Titre et lien accordion */
.accordion {
   display: block;
   width: 30%;
   text-align: left;
   text-decoration: none;
   color: #BD5639;
   font-size: 1.1vw;
   font-weight: 700;
   margin-bottom: 1.5vw;
   cursor: pointer;
   position: relative;
   padding: 0;
   font-family: "Bowlby One", cursive;
   letter-spacing: 0.05vw;
   transition: color 0.3s ease;
}

.accordion::after {
   content: "";
   position: absolute;
   right: 0;
   top: 50%;
   transform: translateY(-50%);
   font-size: 1.25rem;
   line-height: 1;
}

 /* Contenu toujours visible par défaut (desktop) */
.panel { display: block; width: 65%; }

 /* Liste sans puces de base */
.feature-list { list-style: none; margin: 0; padding: 0; }

 /* Groupes avec séparateur horizontal */
.feature-list.group + .feature-list.group { border-top: 1px solid #ccc; margin-top: 1rem; padding-top: 1rem; }

 /* Items et pictogrammes */

.feature-list li { position: relative; 
	padding-left: 3.3rem; 
	margin-bottom: 0.75rem;
	font-size: 0.85vw;
    font-weight: 500;
	color: #BD5639;
}
.feature-list li::before {
   content: "";
   position: absolute;
   left: 0;
   top: 0.65vw;
   transform: translateY(-50%);
   width: 1.65rem;
   height: 1.65rem;
   background-repeat: no-repeat;
   background-size: contain;
   margin-right:1vw;
}
 /* Exemple d'icônes (à remplacer par vos propres SVG/PNG) */
 .icon-brique::before    { background-image: url('../images/brique.svg'); }
 /* .icon-carrelage::before { background-image: url('../images/carrelage.svg'); } */
 .icon-faience::before    { background-image: url('../images/faience.svg'); }

 .icon-douche::before  { background-image: url('../images/douche.svg');}
 .icon-prise::before        { background-image: url('../images/prise.svg'); }
 .icon-radiateur::before  { background-image: url('../images/radiateur.svg'); }
 /* .icon-menuiseri::before  { background-image: url('../images/menuiserie-blc.svg'); } */
 .icon-volet::before  { background-image: url('../images/volet-blc.svg'); }
 .icon-terrasse::before  { background-image: url('../images/terrasse.svg'); }
 .icon-badge::before  { background-image: url('../images/badge.svg'); }
 /* .icon-smart::before  { background-image: url('../images/smart.svg'); } */
 .icon-hall::before  { background-image: url('../images/hall.svg'); }
 /* .icon-boite::before  { background-image: url('../images/boite.svg'); } */
 .icon-velo::before  { background-image: url('../images/velo.svg'); }
 .icon-magasin::before  { background-image: url('../images/magasin.svg'); }

 /* Icônes vertes pour le bloc mobile uniquement */
 
 

 
 /* List-style vert pour le bloc mobile */
 

 /* Sous-listes : flèche orientable */
 .feature-list li ul { list-style: none; margin-top: 0.5rem; padding-left: 1.5rem; }
 .feature-list li ul li { padding-left: 1.5rem; margin-bottom: 0.5rem; }
 .feature-list {
	list-style: none;
	margin-top: 0.5rem;
	padding-left: 0;
  }

 .feature-list li::after {
	content: "";
	position: absolute;
	left: 1.8vw;
    top: 0.3vw;
    width: 0.7rem;
	height: 0.7rem;
	background-image: url('../images/arrow.svg');
	background-repeat: no-repeat;
	background-size: contain;
 }
 /* .feature-list li::before {
   content: '\2794'; /* flèche unicode --> 
   position: absolute;
   left: 0;
   top: 50%;
   transform: translateY(-50%);
   font-size: 0.9rem;
   color: #333;
 } */


/* --------------------- */

section#gdp {
	width: 72.5vw;
	height: auto;
	display: flex;
	flex-direction: column;
}

section#gdp .gdp-visuel {
	width: 100%;
	height: 55vw;
	background-image: url('../images/rivage-visuel-gdp.jpg');
	background-repeat: no-repeat;
	background-size: cover;
}

section#gdp .gdp-container {
	width: 90%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 2vw;
	height: 10vw;
	background-color: #000;
	margin: 0 auto;
	position: relative;
	margin-top: -10vw;
}

.price-list {
  width: 100%;
}

.price-item {
  padding: 1em 0;
  color: #fff;
  font-weight: bold;
  font-size: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* Si vous ne voulez pas de bordure sur le dernier élément : */
.price-item:last-child {
  border-bottom: none;
}

section#iframe {
	width: 72.5vw;
	height: 45vw;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	padding-bottom: 5vw;
}



/* iframe */
.iframe-container {
    position: relative;
    width: 90%;
    /* Ratio 16:9 → padding-bottom: 56.25% */
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.iframe-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

section#acces {
	width: 75vw;
	height: auto;
}

section#acces .acces_title {
	width: 100%;
	background-color: #D28A76;
}

section#acces .acces_title h2 {
	text-align: center;
	font-family: "BruteGrotesque", sans-serif;
	font-size: 3.5vw;
	color: #fff;
	margin: 0;
	text-transform: uppercase;
	line-height: 0;
}

section#acces .acces_title .transition {
	position: relative;
	width: 100%;
	bottom: -1.3vw;
}

section#acces .acces_title .transition_2 {
	position: relative;
	width: 100%;
	top: -1.5vw;
}

section#acces .acces_container {
	display: flex;
	padding: 4vw 2vw 1.5vw 2vw;
	justify-content: start;
	gap: 2vw;
}

section#acces .acces-map {
	background-color: #D28A76;
	width: 50vw;
	height: fit-content;
}

section#acces .acces-map .map {
	width: 100%;
	height: auto;
}

section#acces .acces-map .bdv-infos img {
	width: 1.5vw;
	height: auto;
}

section#acces .acces-map .bdv-infos {
	display: flex;
	justify-content: left;
	align-items: center;
	gap: 1.5vw;
	padding-left: 2vw;
	font-family: "roboto";
	font-size: 1.1vw;
	font-weight: 
	500;
}
section#acces .acces-map .bdv-infos p {
	margin: 1vw 0;
	color: #fff;
}

section#acces .acces-container {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: start;
    gap: 0vw;
}

section#acces .acces-container h3 {
	color: #E0CA9A;
	margin: 0 0 1.5vw 0;
	font-family: "roboto";
	font-size: 0.9vw;
}

section#acces .acces-container h2 {
	color: #123B3E;
	text-transform: uppercase;
	margin: 0;
	font-family: "Ostrich", sans-serif;
	font-weight: 700;
	font-size: 3.4vw;
	letter-spacing: 0.1vw;
	line-height: 3vw;
}
/* css liste station de metro */

.metro-list {
	display: flex;
	flex-direction: column;
	gap: 3rem; /* espacement vertical entre les lignes */
	padding-top: 2.8vw;
  }
  
  /* Chaque ligne */
  .metro-item {
	display: flex;
	align-items: left;
	padding: 0.5rem 0;
	position: relative;
	flex-direction: column;
	/* border-bottom: 1px solid #ccc; /* Ligne de séparation */
	padding-left: 1.5vw;

  }

  .metro-item:last-of-type {
	border-bottom: none;
  }
  
  /* Flèche placée en ::before */
  /* .metro-name::before {
	content: "";
	position: absolute;
	width: 16px;
	height: 16px;
	background: url('../images/arrow.svg') no-repeat center / contain;
	left: 0vw;
  } */

  .metro-item span {
	margin-left: 3.5vw;
  }

  @media (min-width: 1025px) AND (max-width: 1600px) {
	.metro-item span {
		margin-left: 3vw;
  	}

	.feature-list li::after {
		left: 2.3vw;
	}
  }

  .metro-item span::before {
   content: "";
   position: absolute;
   left: 0;
   transform: translateY(-50%);
   background-repeat: no-repeat;
   background-size: contain;
   margin-right:1vw;
}


.picto-gare::before { 
	background-image: url('../images/gare.svg');
	top: 1.05vw;
    width: 3vw;
    height: 3vw;
}
/* .picto-m15::before { 
	background-image: url('../images/m15.svg');
	top: 1.75vw;
    width: 3.35rem;
    height: 3.35rem;
}
.picto-m1::before { 
	background-image: url('../images/m1.svg'); 
	top: 1.75vw;
    width: 3.35rem;
    height: 3.35rem;
} */
.picto-train::before { 
	background-image: url('../images/train.svg');
	top: 1.55vw;
    width: 2vw;
    height: 2vw;
    margin-left: 0.9vw;
}
.picto-velo::before { 
	background-image: url('../images/velo.svg'); 
	top: 1.35vw;
    width: 2.5vw;
    height: 2.5vw;
    margin-left: 0.7vw;
}
.picto-tramway::before { 
	background-image: url('../images/tram.svg'); 
	top: 1.15vw;
    width: 2.5vw;
    height: 2.5vw;
    margin-left: 1.1vw
}
.picto-voiture::before { 
	background-image: url('../images/voiture.svg'); 
	top: 1.85vw;
    width: 2.2vw;
    height: 2.2vw;
    margin-left: 0.9vw;
}
.picto-avion::before { 
	background-image: url('../images/avion.svg'); 
	top: 1.15vw;
    width: 2vw;
    height: 2vw;
    margin-left: 0.7vw;
}
  
  /* Nom de la station, prend tout l'espace restant */
  .metro-name {
	flex-grow: 1;
	font-weight: 400;
	font-family: "roboto";
	font-size: 0.9vw;
  }
  
  /* Bloc des temps */
  .metro-times {
	display: flex;
	align-items: center;
	gap: 1.5rem; /* espacement entre marche et vélo */
	font-family: "roboto";
	font-size: 0.85vw;
	font-weight: 500;
	margin-top: 0.3vw;
  }

  .metro-times span {
	font-weight: bold;
  }
  
  /* Icônes marche / vélo via ::before */
  .icon {
	display: inline-flex;
	align-items: center;
	font-size: 0.9rem;
	white-space: nowrap;
  }
  
  .icon::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 0.25rem;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
  }
  
  /* Marche à pied */
  .icon--walk::before {
	background-image: url('../images/pieton.svg');
  }
  
  /* Vélo */
  .icon--bike::before {
	background-image: url('../images/velo2.svg');
  }


/* :::::::::::::::::::::: */
/* :::::::: FOOTER :::::: */
/* :::::::::::::::::::::: */

footer {
	width: 74.5vw;
	height: auto;
	background-color: #000;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-family: "roboto";
	padding-bottom: 5vw;
}

footer .footer-infos {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

footer .footer-infos .infos-left {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 1vw;
	padding: 2vw;
}

footer .footer-infos .infos-left span {
	color: #fff;
	font-size: 0.9vw;
	font-weight: 100;
}

footer .footer-infos .infos-right {
	display: flex;
	flex-direction: column;
	justify-content: right;
	align-items: flex-end;
	padding: 2vw;
	gap: 1vw;
}

footer .footer-infos .infos-right a.tel {
	color: #fff;
	background-color: #BD5639;
	padding: 0.55vw 2.5vw;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: end;
	border-radius: 5px;
	box-shadow: 5px 5px 7.5px 0 rgba(1, 40, 122, 0.38);
}
footer .footer-infos .infos-right a.tel span:first-child {
	font-size: 1.05vw;
	font-weight: bold;
}
footer .footer-infos .infos-right a.tel span:last-child {
	font-size: 0.5vw;
	font-weight: 100;
}

footer .footer-infos .infos-right .footer-links {
	color: #fff;
	display: flex;
	justify-content: right;
	gap: 0.5vw;
}
footer .footer-infos .infos-right .footer-links a {
	color: #fff;

}

footer .footer-infos .logo-constructa {
	width: 17vw;
	height: auto;
}

footer .footer-ml {
	width: 100%;
	color: #fff;
	font-size: 0.63rem;
}

footer .footer-ml p {
	padding: 0 2vw;
	font-weight: 100;
	line-height: 1.2vw;
}

/* :::::::::::::::::::::: */
/* ::::: FORMULAIRE ::::: */
/* :::::::::::::::::::::: */

.mg-2 {
    margin-top: 1.2vw;
    margin-bottom: 1vw;
  }

  .mg-3 {
    margin-bottom: 0.4vw;
  }

  .mg-4 {
    margin-top: 0.3vw;
  }


.roboto-black {
  font-family: "Roboto-Black";
}

.roboto-light {
  font-family: "Roboto-Light";
}

#formulaire {
    width: 25vw;
    padding: 0;
    color: #000;
    position: fixed;
    top: 0;
    right: 0;
    text-align: center;
    background-color: #fff;
    box-shadow: 2.5px 2.5px 10px #707070;
    z-index: 10;
    overflow-y: scroll;
    height: 100%;
	font-family: "roboto";
}

#projet {
	margin: 0!important;
}

#projet h3, #surface h3, .title-coordonnees {
	font-size: 1.1vw;
	font-weight: 500;
	font-family: "Bowlby One", cursive;
	text-align: left;
	letter-spacing: 0.05vw;
}

.title-coordonnees {
	margin-top: 1vw;
}

form small {
	text-align: right;
}


#projet .control {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 0%;
	margin: 0;
}

#surface {
	margin-top: 1vw;
}

#surface .control {
	display: block;
	margin-top: 0.75vw;
}

.surface-range-wrap {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1vw;
}

.surface-range {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 0.5vw;
	min-height: 8px;
	border-radius: 999px;
	outline: none;
	background: linear-gradient(
		to right,
		#BD5639 0%,
		#BD5639 var(--surface-progress, 40%),
		#e4d7d2 var(--surface-progress, 40%),
		#e4d7d2 100%
	);
}

.surface-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 1.8vw;
	height: 1.8vw;
	min-width: 24px;
	min-height: 24px;
	background: #CEB953;
	border: 0;
	cursor: pointer;
	clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.surface-range::-moz-range-thumb {
	width: 1.8vw;
	height: 1.8vw;
	min-width: 24px;
	min-height: 24px;
	background: #CEB953;
	border: 0;
	cursor: pointer;
	clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.surface-range::-moz-range-track {
	height: 0.5vw;
	min-height: 8px;
	border: 0;
	border-radius: 999px;
	background: #e4d7d2;
}

.surface-value-box {
	min-width: 7.5vw;
	padding: 0.8vw 1.2vw;
	text-align: center;
	font-family: 'Roboto';
	font-weight: 700;
	font-size: 1.2vw;
	color: #000;
	background-color: #fff;
	border: 1px solid #CFCFCF;
	border-radius: 0.5vw;
	box-sizing: border-box;
}

#formulaire .titre-form {
	background-color: #BD5639;
	padding: 3vw 2vw 1vw 2vw;
}

#formulaire .titre-form h3 {
	padding-top: 1vw;
	font-size: 1.2vw;
	margin-bottom: 1vw;
}
#formulaire .titre-form p {
	font-size: 1vw;
	font-weight: 700;
	padding-top: 1vw!important;
	color: #fff;
}

#formulaire .titre-form p:last-child {
	font-weight: 400;
	font-size: 0.8vw;
	padding-top: 0;
}

.formLeads {
	padding: 2vw;
}

.formLeads #container_input {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 0;
	padding: 0;
}
  
.formLeads #container_input input {
    background-color: white;
    width: 92%;
    font-size: 0.875rem;
    border-radius: 7px;
    margin-bottom: 6%;
    color: black;
    padding: 0.5rem;
    height: 2.5vw;
    border: 1px #AAAAAA solid;
    font-family: 'Roboto';
}

.oneinput {
	padding: 0;
}
.oneinput input {
    background-color: white;
    width: 96%;
    font-size: 0.875rem;
    border-radius: 7px;
    margin-bottom: 6%;
    color: black;
    padding: 0.5rem;
    height: 2.5vw;
    border: 1px #AAAAAA solid;
}

.oneinput input::placeholder {
    color: #8C8B8B;
}

.formLeads .mandatory {
	font-size: 0.8vw;
	text-align: right;
	margin-right: 0.2vw;
}
  
.formLeads #container_input input::-webkit-input-placeholder,
.formLeads #container_input input::-moz-placeholder,
.formLeads #container_input input:-ms-input-placeholder,
.formLeads #container_input input::placeholder {
	color: #8C8B8B;
	/*padding: 0vw;*/
	font-style: italic;
}
  
.formLeads form .projet::placeholder {
    color: #8C8B8B;
}

  .formLeads #container_input input::placeholder{
    color: #8C8B8B;
  }
  
  .formLeads form .projet .mab_radio {
    border-radius: 7px;
  
    /* font-family: "albert-bold"; */
  }
  
  .formLeads .form-group .control {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4%;
  }
  
  .formLeads .projet p {
    color: black;
    text-align: center;
    margin-bottom: 1.25vw;
  }
  
  .formLeads .mab_radio {
    display: block;
    width: 48%;
    margin: 0;
  }
  .formLeads .optin.mab_radio {
    display: flex;
    width: 100%;
    margin: 0;
    margin-top: 0px;
    align-items: flex-start;
  }
  .formLeads .projet .mab_radio label {
    color: #707070;
    text-align: center;
    transition: all 0.3s ease;
    line-height: 1em;
    background-color: #f2f2f2;
    padding: 1rem 2rem;
    border-radius: 8px;
    width: 100%;
    display: block;
    cursor: pointer;
	font-family: "Roboto";
	font-weight: 100;
  }
  
  .formLeads .optin.mab_radio2 {
    font-size: 1vw;
    margin-top: 0.1vw;
    display: inline-flex;
    width: 100%;
    gap: 0vw;
  }

  .formLeads .optin.mab_radio2 input {
    position: absolute;
    z-index: -1;
    width: max(1.5vw, 20px);
    height: max(1.5vw, 20px);
    margin: 0;
    opacity: 0;
}

.formLeads .optin.mab_radio2 .mab_radio__input{
  display: inline-flex;
  min-width: 30%;
  justify-content: left;
  gap: 0.8vw;
}

  .formLeads .optin.mab_radio2 .mab_radio__control {
    border-radius: 25px !important;
    border: 1px #AAAAAA solid !important;
}

  .formLeads .optin.mab_radio2 input{
    width: 2vw;
    
  }

  .formLeads .projet .control {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 0%;
  
  }
  .formLeads #projet .mab_radio input:checked + label,
  .formLeads #projet .mab_checkbox input:checked + label {
    background-color: #D28A76;
    color: white;
    font-weight: 700;
    border: 1px  #D28A76 solid;
  }

  .mab_checkbox input:checked + label {
    background-color: #D28A76;
    color: white;
    border: 1px  #D28A76 solid;
  }
  
  .formLeads #container_typo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* font-family: "albert-bold"; */
  }
  
  .formLeads form .label-typo {
    text-align: center;
    color: #ffffff;
    margin-top: 1.5vw;
  }
  
  .mab_checkbox label {
    border: 1px #AAAAAA solid !important;
    background-color: white;
    color: black;
    font-weight: bold;
    border-radius: 7px !important;
  }
  
  .formLeads .mab_checkbox {
    width: 100% !important;
  }
  
  
  .formLeads form i {
    color: #ffffff;
  }
  
  .mab_radio__control {
    width: max(1.5vw, 20px);
    height: max(1.5vw, 20px);
    border: 1px solid #56809A;
    transition: background 0.3s ease;
  }
  
  .mab_radio__label,
  .mab_radio__input {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    font-weight: 100;
    line-height: 1rem;
	font-size: 0.8rem;
  }

  .mab_radio__control {
    border-radius: 5px!important;
    border: 1px #AAAAAA solid !important;
  }
  
  .formLeads .mab_radio input:checked + .mab_radio__control {
    /* background-color: #E0CA99; */
    color: white;
  }
  
  .formLeads .optin {
    margin-top: 1.5vw;
  }
  
  .formLeads .optin input {
    margin-bottom: var(--padd4d);
    background-color: white;
    border: 1px solid var(--secondary);
    color: black;
    border-radius: 5px;
    width: 100%;
    height: 2vw;
    padding: 0 max(0.5vw, 15px);
    font-size: 75%;
    font-family: "Roboto";
  }
  
  .formLeads button {
    background-color: #000;
    color: white;
    border-radius: 0;
    padding: 13px 40px;
    margin-top: 2vw;
    text-decoration: none;
    font-family: 'Roboto';
    font-size: 1vw;
    line-height: 1.5;
    cursor: pointer;
    font-weight: bold;
    border-radius: 7px;
  }

  .formLeads button:hover {
    background-color: #D28A76;
    color: white;
    cursor: pointer;
  }
  
  .formLeads .form-footer {
    width: 25%;
    margin-top: 2.5vw;
  }
  
  .formLeads #projet .mab_checkbox label {
    font-size: 0.875rem;
    height: 2.5vw;
    font-family: 'Roboto';
  }
  .formLeads .mab_checkbox label {
    font-size: 0.875rem;
    height: 3vw;
    font-family: 'Roboto';
  }

  .form-ml {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    line-height: 1rem;
    padding: 3vw 0;
    font-size: 0.8rem;
	font-family: 'Roboto';
	font-weight: 100;
  }

.formLeads #projet .mab_radio input:checked + label {
	background-color: #ebc371;
	color: white;
	width: 35vw;
	height: 100%;
	font-weight: bold;
	}

.formLeads form .projet .mab_radio {
	height: 10.5vw;
	width: auto;
}

.formLeads #projet .mab_radio input:checked + label {
	background-color: #ebc371;
	color: white;
	width: 10vw;
	height: 100%;
	font-weight: bold;
}


.mobile-menu-toggle,
.mobile-overlay {
  display: none;
}

/* ----------- --------- */

@media(max-width:768px) {
	.btn {
		color: white;
    	border: 2px solid #fff;
		cursor: pointer;
		border-radius: 5px;
    	display: flex;
    	justify-content: center;
    	align-items: center;
		background-color: #BD5639;
	}

	#surface {
		margin-top: 4vw;
	}

	#surface .control {
		margin-top: 2vw;
	}

	.surface-range-wrap {
		gap: 3.5vw;
	}

	.surface-range {
		height: 2.2vw;
		min-height: 10px;
	}

	.surface-range::-webkit-slider-thumb {
		width: 7vw;
		height: 7vw;
		min-width: 28px;
		min-height: 28px;
	}

	.surface-range::-moz-range-thumb {
		width: 7vw;
		height: 7vw;
		min-width: 28px;
		min-height: 28px;
	}

	.surface-value-box {
		min-width: 30vw;
		padding: 2.8vw 4vw;
		font-size: 5.5vw;
		border-radius: 2vw;
	}

	.btn:hover {
		color: white;
	}

	
    #cta {
        position: fixed;
        z-index: 100;
        right: 4vw;
        bottom: 2vw;
        left: unset;
        width: 65%;
        height: 12vw;
        margin-left: 0;
		border: none;
    }

	body {
		overflow-x: hidden;
		overflow-y: auto;
	}

	section {scroll-margin-top: calc(var(--nav-height) * 6);}

	.mobile-menu-toggle {
    	display: block;
 	 }
  	.mobile-overlay {
   	 	/* reste display:none tant que .open n’est pas ajouté */
    	display: block; 
 	}
	nav .sticky-nav {
		display: none;
	}

	nav {
    	height: 20vw;
		z-index: 110; 
		width: 100%;
		background-color: #BD5639; 
	}

	nav .nav-logo {
    	width: 60vw;
    	position: relative;
    	top: 0;
    	left: -15vw;
	}

	nav .nav-cta {
    	flex-direction: column-reverse;
		margin-top: 15vw;
		position: fixed;
		right: -1vw;
		z-index: 99;
	}

	nav .nav-cta a {
		width: 14vw;
		height: 14vw;
		color: #fff;
		border-radius: 50%;
		text-align: center;
		font-family: 'PierSans-Bold';
    	display: flex;
    	justify-content: center;
    	align-items: center;
	}

	nav .nav-cta a.mobile {
		display: inherit;
	}

	nav .nav-cta .picto-cta-tel {
		width: 5vw;
	}

	nav .nav-cta .picto-cta-form {
		width: 8vw;
	}

	/* Gestion du menu burger */

	.mobile-menu-toggle {
		display: block;
		position: fixed;
		top: 0.5rem;
		left: 0.5rem;
		background: none;
		border: none;
		font-size: 3rem;
		z-index: 1001;
		cursor: pointer;
		color: #fff;
	}

	/* Overlay pleine hauteur, glissant depuis la gauche */
	.mobile-overlay {
		display: block;
		position: fixed;
		top: 0;
		left: -100%;              /* hors écran */
		width: 90vw;              /* 90% de la largeur */
		height: 100vh;            /* toute la hauteur */
		background: #fff;
		box-shadow: 2px 0 8px rgba(0,0,0,0.2);
		transition: left 0.3s ease;
		z-index: 1000;
	}
	.mobile-overlay.open {
		left: 0;                  /* revient à 0 pour être visible */
	}

	/* Bouton fermer en haut à droite de l’overlay */
	.mobile-menu-close {
		position: absolute;
		top: 1.3rem;
		right: 1rem;
		background: none;
		border: none;
		font-size: 1.5rem;
		cursor: pointer;
		color: #000;
	}

	/* Contenu centré verticalement */
	.mobile-overlay__content {
		display: flex;
		flex-direction: column;
		align-items: left;
		padding-top: 2rem;       /* espace sous le bouton fermer */
		padding-left: 0.2rem;
		height: 100%;
	}

	/* Logo */
	.mobile-overlay__logo  {
		font-family: "Ostrich", sans-serif;
		font-weight: 500;
		font-size: 2.25rem;
		height: auto;
		margin-bottom: 2rem;
		padding-left: 3.5rem;
		display: inline;
		color: #123B3E;
	}

	/* Liens verticalisés et espacés */
	.mobile-overlay__links {
		list-style: none;
		padding: 0;
		margin: 0;
		width: 100%;
		text-align: left;
	}
	.mobile-overlay__links li + li {
		margin-top: 1.5rem;
	}
	.mobile-overlay__links a {
		display: block;
		font-size: 1.25rem;
		color: #333;
		text-decoration: none;
		padding: 0.5rem 1rem;
		transition: background 0.2s;
		font-weight: 700;
	}
	.mobile-overlay__links a:hover {
		background: rgba(0,0,0,0.05);
	}

	

	.mobile-overlay__logo img {
		width: 33vw;
		height: auto;
	}

	header {
	    height: 90vw;
		width: 100%;
		padding-top: 18vw;
	}

	header .bloc-header .header-left .left-sinopia {
		width: 45vw;
	}

	header .bloc-header .header-right img {
		width: 15vw;
	}

	header .header-video {
    	width: auto;
    	height: 80vw;
	}

	header .logo-constructa {
		width: 30vw;
		top: 25vw;
		left: 5vw;
	}

	header .logo-prog {
		top: 58%;
		width: 65vw; 
	}

	header .patch-fno {
		width: 23vw;
        right: 4vw;
        bottom: 2vw;
	}

	header .header-carousel .splide__pagination { bottom:0; }

	.splide__arrow.splide__arrow--prev, .splide__arrow.splide__arrow--next {
		display: none;
	}

	header .header-text h5 {
    	font-size: 3.5vw;
	}

	header .header-text h5 span {
		font-size: 3.5vw;
	}

	header .bloc-header {
		width: 100%;
		top: 20vw;
		padding: 4vw 5vw;
	}
	 .header-carousel{
		--banner-h: 44px;       /* bandeau moins haut */
	}

	.header-offer-banner{
		height: var(--banner-h);
		padding: 0 10px;

		/* ✅ autorise une taille plus petite sur mobile */
		font-size: clamp(11px, 3.4vw, 15px);

		/* ✅ empêche le texte de passer sur 2 lignes */
		white-space: nowrap;
	}

	.header-offer-banner sup{
		font-size: 0.6em;
		line-height: 0;
	}
	section#quartier {
		width: 100%;
		height: 100%;
		padding-top: 10vw;
		padding-bottom: 10vw;
	}

	section#quartier .blc-quartier {
		align-items: center;
	}

	section#quartier .blc-quartier .quartier-title h2 {
    	font-family: 'BruteGrotesque', sans-serif;
    	font-size: 6.5vw;
    	color: #fff;
		line-height: 6.5vw;
	}

	
	section#quartier .blc-quartier .quartier-description p {
		font-size: 3.25vw;
		line-height: 4.2vw;
		text-align: center;
		padding: 0 4vw;
	}

	section#quartier .blc-quartier .quartier-description p:last-of-type {
		padding-bottom: 4vw;
	}

	section#quartier .blc-quartier .quartier-title {
		text-align: center;
	}

	section#quartier .blc-quartier {
		width: 100%;
		padding: 0;
	}

	section#quartier .quartier-image {
		width: 100%;
		/* height: auto;
		position: relative; */
		margin: 8vw 0;
	}

	section.quartier-perspective {
		width: 100%;
		height: auto;
	}

	section#adresse { 
		width: 100%;
		background-image: unset;
		padding: 0;
		height: auto;
	}
	section#adresse .blc-adresse.first {
		width: 100%;
		background-color: #fff;
		font-family: "roboto";
		padding: 4vw 3vw 6vw 3vw;
		margin: 0;
	}
	section#adresse .blc-adresse.first h2 {
		font-size: 1.75rem;
	}
	section#adresse .blc-adresse.first h3 {
		font-size: 3.4vw;
		color: #E0CA9A;
	}
	section#adresse .blc-adresse.image {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	section#adresse .blc-adresse.second {
		width: 100%;
		margin: 0;
		padding: 4vw 3vw 6vw 3vw;
		font-size: 0.8rem;
	}
	section#adresse .blc-adresse.second p:last-of-type { min-height:40vw;}
	section#adresse .blc-adresse.second p:last-of-type::after {
		width: 60vw;
    	height: 30vw;
		background-size: 60%;
	}
	section#carousel {
		width: 100%;
		height: auto;
		padding: 4vw 0 10vw 0;
	}
	section#carousel .splide__pagination { bottom: -2vw; }

	section#adresse .blc-adresse {
		width: 100%;
		height: 130vw;
	}

	section#adresse .blc-adresse.mobile {
		width: 100%;
		height: 83vw;
	}

	section#adresse .blc-adresse-transport div img.picto-xl {
    	width: 11vw;
    	height: auto;
	}

	section#adresse .blc-adresse-transport div img.picto-m {
	    width: 8vw;
	    height: auto;
	}

	section#adresse .blc-adresse-transport div .bloc-picto {
    	min-width: 11vw;
	}

	section#adresse .blc-adresse h2 {
		font-size: 10.5vw;
		line-height: 10.5vw;
		text-align: center;
	}

	section#adresse .blc-adresse p {
		width: 90%;
		text-align: center;
		margin: 8vw auto;
	}

	section#adresse .blc-adresse-transport {
		display: flex;
		justify-content: space-around;
		row-gap: 5vw;
		column-gap: 1vw;
		align-items: center;
		flex-wrap: wrap;
	}

	section#adresse .blc-adresse-transport .transport-item { 
		width: 40%;
	}

	section#adresse .blc-adresse-transport .transport-item p {
		width: 100%;
		font-size: 2.8vw; 
	}

  	#splide01 .splide__slide {
   	 	flex: 0 0 auto !important;   /* désactive tout flex-basis forcé */
    	width: 100%     !important;   /* annule width:100% inline ou CSS */
    	max-width: none !important;   /* au cas où */
 	}

	section#appartements {
		width: 100%;
		padding: 0;
        margin: 0;
		background-image: unset;
		height: auto;
	}
	section#appartements .blc-appartements {
		display: block;
		padding: 6vw 3vw 6vw 3vw;
		margin: 0;
	}
	section#appartements .blc-appartements .appartements-title h3 {
		font-size: 3.4vw;

	}
	section#appartements .blc-appartements .appartements-title h2 {
		font-size: 10.5vw;
	}

	section#appartements .blc-appartements .appartements-description {
    	text-align: center;
    	width: 90%; 
		margin:  10vw auto 2vw auto;

	}

	section#appartements .blc-appartements .appartements-description p {
    	text-align: center;
    	width: 90%; 
		margin:  0 auto;
		font-size: 2.8vw;
	}

	section#appartements .blc-appartements .appartements-description p{
		font-size: 0.8rem;
		text-align: center;
		padding: 0;
	}

	section#architecture {
		width: 100%;
		padding: 0;
        margin: -2vw 0 0 0;
		background-image: unset;
		height: auto;
	}

	main h2 .underline {
		border-bottom: 1px solid #fff;
		padding-bottom: 1.5vw;
		
	}

	section#architecture .blc-appartements {
		display: block;
		padding: 6vw 3vw 6vw 3vw;
		margin: 0;
	}
	section#architecture .blc-appartements .appartements-title h3 {
		font-size: 3.4vw;

	}
	section#architecture .blc-appartements .appartements-title h2 {
		font-size: 6.5vw;
		line-height: 6.5vw;
	}

	section#architecture .blc-appartements .appartements-description {
		text-align: center;
		width: 90%;
		margin: 5vw auto;
		font-size: 2.6vw;
		text-align: center;
	}

	section#architecture .blc-appartements .appartements-description p{
		font-size: 3.25vw;
		text-align: center;
		padding: 0;
	}

	section#architecture_lumiere {
    	width: 100%;
    	background-color: #D28A76;
    	text-align: center;
    	padding: 4vw 0;
    	margin-top: -5vw;
	}
	section#architecture_lumiere .architecture-container{
		padding: 5vw 0;
	}

	section#architecture_lumiere .architecture-container h2 {
		font-size: 6.5vw;
		line-height: 7vw;
	}

	section#architecture_lumiere .architecture-container .architecture_descr p {
		font-size: 3.25vw;
		line-height: 4.2vw;
		padding: 0 4vw;
	}

	section#architecture_perspective {
    	width: 100%;
		height: 100%;
    	margin-top: -3vw;
	}

	section#prestations {
		width: 100%;
		padding: 0;
        margin: -2vw 0 0 0;
		background: none;
	}

	/* .container-prestations .icon-parquet::before    { background-image: url('../images/parquets-vert.svg'); }
	.container-prestations .icon-baignoire::before  { background-image: url('../images/douche-vert.svg');}
	.container-prestations .icon-usb::before        { background-image: url('../images/prise-vert.svg'); }
	.container-prestations .icon-menuiseri::before  { background-image: url('../images/menuiserie-vert.svg'); }
	.container-prestations .icon-volet::before      { background-image: url('../images/volet-vert.svg'); }
	.container-prestations .icon-jardin::before     { background-image: url('../images/plante-vert.svg'); }
	.container-prestations .icon-badge::before      { background-image: url('../images/cle-vert.svg'); }
	.container-prestations .icon-hall::before       { background-image: url('../images/hall-vert.svg'); }
	.container-prestations .icon-velo::before       { background-image: url('../images/velo-vert.svg'); } */

	section#prestations .blc-prestations {
		padding: 2vw 3vw 2vw 3vw;
		margin-top: 7vw;
		height: 10vw;
		background-size: 100%;
		line-height: 12vw;
	}

	section#prestations .prestation-column {
		width: 100%;
		height: auto;
	}

	.feature-block {
		max-width: 100%;
	}

	section#prestations .blc-prestations h3 {
		font-size: 3.4vw;
	}
	section#prestations .blc-prestations h2 {
		font-size: 8.5vw;
		line-height: 12.5vw;
	}

	section#quartier h2 {
		font-size: 6.5vw;
		line-height: 6.5vw;
		padding: 2vw 3vw 10vw 3vw;
	}

	header .header-patch-fno {
    	bottom: 0vw;
    	font-size: 4vw;
	    line-height: 4.2vw;
	}

	section#prestations .container-prestations {
		padding: 0 3vw 6vw 3vw;
		/* margin: 5vw 0 0 0; */
		color: #BD5639;
	}
	section#prestations .container-prestations .features {
		width: 100%;
		display: block; 
		color: #BD5639;
	}
	section#prestations .container-prestations .features .feature-block{
		border-left: none; 
		display: block;
		margin: 10vw 0;
	}

	.accordion {
		width: 100%;
	}

	.accordion:hover {
   		color: #D28A76;
	}

	.container-prestations .feature-list {
		list-style: none;
		padding-left: 0;
	}

	.container-prestations .feature-list li::after {
		content: "";
		position: absolute;
		left: 7.5vw;
        top: 0.5vw;
        width: 0.7rem;
        height: 0.7rem;
		background-image: url('../images/arrow.svg');
		background-repeat: no-repeat;
		background-size: contain;
	}

	section#prestations .container-prestations .features .feature-block .panel { display: none; width: 100%; padding-top: 2vw;}
   	section#prestations .container-prestations .features .feature-block.open .panel { display: block; }
	.accordion {width: 96%; font-size: 5.2vw;}
    .accordion::after { content: '\002B'; } /* + */
    .feature-block.open .accordion::after { content: '\2212'; } /* – */
	#parties-communes .accordion {
        width: 96%;
    }

	.surface-range-wrap {
    	width: 90%;
    	display: flex;
    	flex-direction: column;
    	align-items: center;
    	gap: 1vw;
    	margin: 5vw auto;
	}

	.feature-list li {
		font-size: 0.9rem;
		color: #BD5639;
	}
	.feature-list li::before {
		top: 0.6rem;
	}

	#espaces-verts .accordion {width: 45%;}

	section#gdp {
		width: 100%;
		padding: 0;
        margin: 0;
	}
	section#iframe {
		width: 100%;
		padding: 4vw 0;
        margin: 0;
		height: auto;
	}
	section#acces {
		display: flex;
		width: 100%;
		padding: 0;
        margin: 0;
		flex-direction: column; 
		align-items: stretch; 
	}

	section#acces .acces_title h2{
		font-size: 6.5vw;
		line-height: 7vw;
		text-align: center;
	}

	section#acces .acces_title .transition {
		bottom: -3vw;
	}
	section#acces .acces-map {
		width: 100%;
		display: block;
		padding: 3vw 3vw 7vw 3vw;
        background-color: #fff;
	}
	section#acces .acces-map .bdv-infos {
		font-size: 0.7rem;
		gap: 4vw;
		padding: 3vw;
		background-color:  #D28A76;
	}

	section#acces .acces-map .bdv-infos p {
		font-size: 3.3vw;
	}

	section#acces .acces-map .bdv-infos img {
		width: 5.5vw;
	}

	section#acces .acces_container {
		flex-direction: column-reverse;
	}

	section#acces .acces-container {
		width: 100%;
		display: block;
		padding: 4vw 3vw 3vw 3vw;
	}

	
	section#acces .acces-container h3 {
		font-size: 3.4vw;
	}
	section#acces .acces-container h2 {
		font-size: 10.5vw;
		line-height: 10.5vw;
		text-align: center;
	}
	.metro-list {
		padding-top: 4vw;
	}
	.metro-name {
		font-size: 1rem;
		padding-left: 5vw;
	}
	.metro-times {
		padding: 1vw 4vw;
	}

	.metro-item span {
    	margin-left: 15vw;
		line-height: 3.8vw;
	}

	.picto-gare::before {
		top: 6.65vw;
		width: 10vw;
		height: 10vw;
	}

	.picto-m15::before {
		top: 7.75vw;
	}

	.picto-m1::before {
		top: 6.75vw;
	}

	.picto-train::before {
		top: 8.75vw;
		width: 10vw;
		height: 10vw;
	}

	.picto-velo::before {
		top: 6.85vw;
		width: 10vw;
		height: 10vw;

	}

	.picto-tramway::before {
		top: 6.15vw;
		width: 10vw;
		height: 10vw;

	}

	.picto-voiture::before {
		top: 10.45vw;
		width: 9vw;
		height: 9vw;

	}

	.picto-avion::before {
		width: 9vw;
		height: 9vw;
		top: 5.25vw;
	}

	footer {
        height: 100%;
        margin-bottom: 0;
        padding-left: 0;
        padding-top: 8vw;
        text-align: center;
		width: 100%;
		padding-bottom: 7vw;
    }

	footer .footer-infos { display: block; }
	footer .footer-infos .infos-left, footer .footer-infos .infos-right  {
		width: 100%;
		text-align: center;
		display: block;
	}
	footer .footer-infos .infos-left span {  display: block; font-size:0.7rem; padding-top: 2vw;}
	footer .footer-infos .logo-constructa { width: 39vw; }
	
	footer .footer-infos .infos-right a.tel { width: 60%; margin: 0 auto; text-align: center; align-items: center; padding-top: 3vw;}
	footer .footer-infos .infos-right a.tel span:first-child {
    	font-size: 1.3rem;
	}
	footer .footer-infos .infos-right a.tel span:last-child { font-size: 0.6rem; text-align: right;
        width: 70%;
	}
	footer .footer-infos .infos-right .footer-links { 
		margin: 0 auto; text-align: center; align-items: center; display:block; padding: 7vw 3vw;

	}

	footer .footer-ml {
    	margin-top: 6.5vw;
    	color: #fff;
    	width: 100%;
		text-align: left;
		padding: 0 3vw;
	}

	footer .footer-ml p {
    	font-size: 2.35vw;
		line-height: 1rem;
	}

	.cta-mentions {
		font-size: 2.7vw;
		padding-left: 5vw;
	}

	.modal-ml-txt {
    	padding: 5vw;
		font-size: 3vw;
	}

 /* modal-name="modal1" class="modal-open */

 	

	#formulaire {
    	width: 100%;
    	padding: var(--padd2d) var(--padd);
    	color: #000;
    	position:relative ;
    	top: inherit;
    	text-align: center;
    	background-color:  #E0CA9A;
    	z-index: 101;
    	overflow-y: scroll;
    	height: 97%;
        bottom: 0;
	}

	#formulaire .titre-form h3 {
		padding-top: 3vw;
		font-size: 1.3rem;
		margin-bottom: 2vw;
	}
	#formulaire .titre-form p{
		font-size: 1.1rem;
		font-weight: 700;
		text-transform: uppercase;
		padding-top: 4vw;
		line-height: 1.3rem;
	}

	#formulaire .logo-form {
        display: block;
        width: 50vw;
        margin: 4vw auto;
    }

	.formLeads {
		padding: 8vw 1vw 3vw 1vw;
		background-color: #fff;
	}

	.surface-range-wrap {
		gap: 5vw;
	}


	.form-ml {
		font-size: 0.8rem;
		padding: 6vw 3vw;
	}

	.formLeads .projet .mab_radio label {
        width: 35vw;
    }
    
      .formLeads #container_input input {
        height: 10vw;
        padding: 0 3vw;
        font-size: 14px;
		margin-bottom: 1.8vw;
      }
    
      .formLeads form .label-typo {
        margin-top: 4vw;
      }
    
      .formLeads #projet .mab_radio input:checked + label {
        background-color: #000;
        color: white;
        width: 35vw;
        height: 100%;
        font-weight: bold;
      }
    
      .formLeads form .projet .mab_radio {
        height: 10.5vw;
        width: auto;
      }
    
	  .formLeads .mandatory { font-size: 0.8rem; margin-right: 4vw;}
	  .formLeads #projet {
	  	padding: 0 2vw 0 2.1vw;
	  }
	  .formLeads #projet h3, #surface h3, .title-coordonnees {
		font-size: 1.1rem;
		text-align: left;
        padding-left: 2vw;
		margin-bottom: 1vw;
	  }

	  .title-coordonnees {
		margin: 5vw 0;
	}

	  #formulaire .titre-form p:last-child {
    	font-weight: 400;
    	font-size: 2.8vw;
    	padding-top: 0;
	}

	  .mg-2 { padding: 3vw; }
	  .formLeads .optin.mab_radio { padding: 3vw; }
	  .formLeads #projet .mab_checkbox input:checked + label {
        background-color: #000;
        color: white;
        width: 100%;
        height: 100%;
        font-weight: bold;
      }

	  .formLeads .optin.mab_radio2 {
		font-size: 2.7vw;
		padding: 3vw;
	  }
	  .formLeads .optin.mab_radio2 .mab_radio__input{
		gap: 3vw;
	  }

	  .formLeads #projet .mab_checkbox label {
        font-size: 14px;
        height: 40px;
	  }
    
      .formLeads #container_input {
		grid-template-columns: 1fr;
        column-gap: 2.5vw;
        margin-top: 0;
      }
	  .formLeads .oneinput {
		padding: 0 2vw 3vw 2vw;

	  }
	  .formLeads .oneinput input {
        height: 10vw;
        padding: 0 3vw;
        font-size: 14px;
    }
    
      .formLeads #container_input label {
        margin-bottom: 1vw;
      }
    
      .fsize_vsm {
        font-size: 12px
      }
    
      .formLeads .optin {
        margin-top: 5.5vw;
      }
    
      .formLeads button {
		background-color: black;
		color: white;
        margin-top: 5vw;
        padding: 10px 55px 10px 55px;
        line-height: 1.5;
        font-weight: bold;
        margin-top: 7vw;
        font-size: 4.4vw;
      }
	  .formLeads button:hover {
		background-color: black;
    	color: white;
		border: 1px solid #000;

	  }

      .small-required {
        font-size: 3vw;
        font-weight: 500;
      }

      .formLeads form {
        margin-top: 5vw;
      }
    
      .formLeads .projet p {
        margin-bottom: 4.55vw;
        margin-top: 2vw;
      }
    
      .formLeads .mab_checkbox {
        height: 10vw;
      }
    
      .formLeads .mab_checkbox label {
        font-size: 13px
      }
    
      .mab_modal {
        z-index: 9999 !important;
      }
      .ui-autocomplete {
        z-index: 10000 !important;
      }

      .formLeads .titre-form {
        margin: 5vw 0;
      }

	  .mab_radio__label,
  	.mab_radio__input {
		font-size: 0.8rem;
	}

	.modal-block .close {
		right: 4vw !important;
		top: 1vw;
	}

	.form-bdv {
		padding: 2.5vw !important;
	}

	/* main .cta-titre::after {
        content: "";
        width: 100vw;
        height: 45vw;
        position: absolute;
        background-image: url(../images/fair-thiais-cta-mob-deco.png);
        background-repeat: no-repeat;
        top: 0vw;
        right: 0;
        z-index: -99999;
        background-size: 106vw;
    } */

	/* main::before {
        content: "";
        width: 95vw;
        height: 45vw;
        position: absolute;
        background-image: url(../images/fair-thiais-cta-mob-deco.png);
        background-repeat: no-repeat;
        top: 211vw;
        right: 0;
        z-index: 1;
        background-size: 110vw;
        bottom: -39.7vw;
    } */

	footer {
		position: relative;
		z-index: 102;
	}	

	footer p {
    	font-size: 3.8vw;
    	font-family: 'Roboto', sans-serif;
	}

	footer .footer-bloc {
		flex-direction: column;
	}


	footer .bloc-mentions {
    	flex-direction: column;;
    	gap: 4vw;
    	margin-top: 2vw;

	}

	footer .bloc-mentions span, footer .bloc-mentions a {
    	font-size: 3.8vw;
    	text-decoration: underline;
	}


	main .contenu-carousel .splide::after {
		display: none;
	}

	

	.modal-content #formulaire {
		display: block;
	}
	

	.modal-content {
		background-color: #D87900 !important;
		overflow-y: scroll;
	}

	#mab_completion__list {
		font-size: max(.8vw, 14px)!important;
	}

	section#transition .hr {
	    width: 95%;
	}

	.splide__pagination {
    	position: absolute;
    	z-index: 1;
    	bottom: 4.5vw!important;
    	left: 50%;
    	-webkit-transform: translate(-50%, 125%);
    	transform: translate(-50%, 125%);
    	padding: 0;
		gap: 2vw;
	}

}

/* @media screen and (min-width: 1025px) and (max-width: 1845px) {
	
	header {
		width: 115vw;
        background-size: 95%;
        height: 78.4vw;
    }

	header .header-baseline {
		width: 115vw;
	}

	main .localisation-frise {
    	width: 120%;
	}

	main .bloc-contenu {
    	width: 120vw;
	}

	main .bloc-bdv {
	    width: 120vw;
	}

	footer {
	    width: 120vw;
	}
} */


.formLeads .markus_error .markus_radio__control, .formLeads .markus_error input, .formLeads .markus_error label, .formLeads .markus_error select {
    color: #900c15 !important;
    border: #900c15 1px solid !important;
}

.formLeads .markus_error input::placeholder, .formLeads .markus_error .markus_radio__label {
    color: #900c15 !important;
	
}