:root {
		--fontlvl1-submenu-size:.875rem;
		--fontlvl2-submenu-size:.875rem;
		
    --background: 0 0% 98%;
    --foreground: 0 0% 8%;
    --card: 0 0% 100%;
    --card-foreground: 0 0% 8%;
    --popover: 0 0% 100%;
    --popover-foreground: 0 0% 8%;
    --primary: 43 72% 52%;
    --primary-foreground: 0 0% 100%;
    --secondary: 0 0% 96%;
    --secondary-foreground: 0 0% 8%;
    --muted: 0 0% 94%;
    --muted-foreground: 0 0% 45%;
    --accent: 43 72% 52%;
    --accent-foreground: 0 0% 100%;
    --destructive: 0 84.2% 60.2%;
    --destructive-foreground: 0 0% 100%;
    --border: 0 0% 88%;
    --input: 0 0% 88%;
    --ring: 43 72% 52%;
    --radius: .25rem;
    --gold: 43 72% 52%;
    --gold-light: 43 60% 70%;
    --gold-dark: 43 72% 38%;
    --noir: 0 0% 8%;
    --noir-light: 0 0% 15%;
    --blanc: 0 0% 98%;
    --blanc-pure: 0 0% 100%;
    --gris: 0 0% 45%;
    --gris-light: 0 0% 92%;
    --sidebar-background: 0 0% 98%;
    --sidebar-foreground: 0 0% 8%;
    --sidebar-primary: 43 72% 52%;
    --sidebar-primary-foreground: 0 0% 100%;
    --sidebar-accent: 0 0% 94%;
    --sidebar-accent-foreground: 0 0% 8%;
    --sidebar-border: 0 0% 88%;
    --sidebar-ring: 43 72% 52%;

    --ico-esc:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><path d="M22 5h-5v4h-4v4H9v4H4v4"></path></svg>'); 
		--ico-vitre:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="0"></rect><line x1="3" y1="12" x2="21" y2="12"></line><line x1="12" y1="3" x2="12" y2="21"></line></svg>'); 
		--ico-sculpture:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2c-1.5 0-3 1.5-3 3.5S10.5 9 12 9s3-1.5 3-3.5S13.5 2 12 2z"></path><path d="M9 9c-2 1-3.5 3.5-3 6l1 3h10l1-3c.5-2.5-1-5-3-6"></path><rect x="9" y="18" width="6" height="2"></rect><rect x="8" y="20" width="8" height="2"></rect></svg>'); 
		--ico-svg:url('data:image/svg+xml,\ ');
		--ico-carport:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><path d="M2 10 L12 4 L22 10"></path><line x1="2" y1="10" x2="2" y2="20"></line><line x1="22" y1="10" x2="22" y2="20"></line><line x1="2" y1="20" x2="22" y2="20"></line><line x1="7" y1="10" x2="7" y2="20"></line><line x1="17" y1="10" x2="17" y2="20"></line><line x1="2" y1="10" x2="22" y2="10"></line></svg>');
		--ico-pergola:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><path d="M4 6h16"></path><path d="M4 6l2 14h12l2-14"></path><path d="M8 6V4h8v2"></path><line x1="4" y1="10" x2="20" y2="10"></line></svg>');
		--ico-location:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg>');
		--ico-phone:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>');
		--ico-mail:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="20" height="16" x="2" y="4" rx="2"></rect><path d="m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"></path></svg>');
		--ico-clock:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>');
		
		--ico-medail:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-award w-6 h-6 text-gold"><path d="m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526"></path><circle cx="12" cy="8" r="6"></circle></svg>');
		--ico-marteau:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-hammer w-6 h-6 text-gold"><path d="m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9"></path><path d="m18 15 4-4"></path><path d="m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5"></path></svg>');
		--ico-bouclier:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield w-6 h-6 text-gold"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg>');
		--ico-ecouteur:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-headphones w-6 h-6 text-gold"><path d="M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3"></path></svg>');
		
		--ico-oeil:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye w-8 h-8 text-gold mx-auto mb-3"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"></path><circle cx="12" cy="12" r="3"></circle></svg>');
		--ico-dalles:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-layers w-8 h-8 text-gold mx-auto mb-3"><path d="m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z"></path><path d="m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65"></path><path d="m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65"></path></svg>');
		--ico-diamant:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-gem w-8 h-8 text-gold mx-auto mb-3"><path d="M6 3h12l4 6-10 13L2 9Z"></path><path d="M11 3 8 9l4 13 4-13-3-6"></path><path d="M2 9h20"></path></svg>');
		--ico-regle:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-ruler w-8 h-8 text-gold mx-auto mb-3"><path d="M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z"></path><path d="m14.5 12.5 2-2"></path><path d="m11.5 9.5 2-2"></path><path d="m8.5 6.5 2-2"></path><path d="m17.5 15.5 2-2"></path></svg>');
		
		--ico-facebook:url('data:image/svg+xml,\<svg class="w-4 h-4" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.791-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"></path></svg>');
		--ico-instagram:url('data:image/svg+xml,\<svg class="w-4 h-4" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M12 0C8.74 0 8.333.015 7.053.072 5.775.132 4.905.333 4.14.63c-.789.306-1.459.717-2.126 1.384S.935 3.35.63 4.14C.333 4.905.131 5.775.072 7.053.012 8.333 0 8.74 0 12s.015 3.667.072 4.947c.06 1.277.261 2.148.558 2.913.306.788.717 1.459 1.384 2.126.667.666 1.336 1.079 2.126 1.384.766.296 1.636.499 2.913.558C8.333 23.988 8.74 24 12 24s3.667-.015 4.947-.072c1.277-.06 2.148-.262 2.913-.558.788-.306 1.459-.718 2.126-1.384.666-.667 1.079-1.335 1.384-2.126.296-.765.499-1.636.558-2.913.06-1.28.072-1.687.072-4.947s-.015-3.667-.072-4.947c-.06-1.277-.262-2.148-.558-2.913-.306-.789-.718-1.459-1.384-2.126C21.319 1.347 20.651.935 19.86.63c-.765-.297-1.636-.499-2.913-.558C15.667.012 15.26 0 12 0zm0 2.16c3.203 0 3.585.016 4.85.071 1.17.055 1.805.249 2.227.415.562.217.96.477 1.382.896.419.42.679.819.896 1.381.164.422.36 1.057.413 2.227.057 1.266.07 1.646.07 4.85s-.015 3.585-.074 4.85c-.061 1.17-.256 1.805-.421 2.227-.224.562-.479.96-.899 1.382-.419.419-.824.679-1.38.896-.42.164-1.065.36-2.235.413-1.274.056-1.648.07-4.859.07-3.211 0-3.586-.015-4.859-.074-1.171-.061-1.816-.256-2.236-.421-.569-.224-.96-.479-1.379-.899-.421-.419-.69-.824-.9-1.38-.165-.42-.359-1.065-.412-2.234-.056-1.274-.07-1.648-.07-4.859 0-3.21.015-3.586.07-4.859.055-1.171.249-1.816.409-2.236.224-.569.479-.96.9-1.381.419-.419.824-.689 1.38-.9.42-.164 1.065-.36 2.235-.412 1.267-.057 1.643-.07 4.85-.07zm0 3.6a5.135 5.135 0 1 0 0 10.27 5.135 5.135 0 0 0 0-10.27zm0 8.468a3.333 3.333 0 1 1 0-6.666 3.333 3.333 0 0 1 0 6.666zm6.538-8.671a1.2 1.2 0 1 1-2.4 0 1.2 1.2 0 0 1 2.4 0z"></path></svg>');
		
		--svg-fleche-bas:url('data:image/svg+xml,\<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-4 w-4 shrink-0 transition-transform duration-200"><path d="m6 9 6 6 6-6"></path></svg>');
    --padding-content: 0 15%;
}


/* montserrat-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200;
  src: url('./fonts/montserrat-v31-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('./fonts/montserrat-v31-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-regular - latin */
@font-face {
  font-display: swap; 
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('./fonts/montserrat-v31-latin-regular.woff2') format('woff2'); 
}
/* montserrat-500 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('./fonts/montserrat-v31-latin-500.woff2') format('woff2'); 
}
/* montserrat-700 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('./fonts/montserrat-v31-latin-700.woff2') format('woff2');
}
/* montserrat-900 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 900;
  src: url('./fonts/montserrat-v31-latin-900.woff2') format('woff2'); 
}


/* cormorant-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant';
  font-style: normal;
  font-weight: 300;
  src: url('./fonts/cormorant-v24-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cormorant-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant';
  font-style: normal;
  font-weight: 400;
  src: url('./fonts/cormorant-v24-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cormorant-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant';
  font-style: normal;
  font-weight: 500;
  src: url('./fonts/cormorant-v24-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* cormorant-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Cormorant';
  font-style: normal;
  font-weight: 700;
  src: url('./fonts/cormorant-v24-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}




*, :before, :after {
    box-sizing: border-box;
    border-style: solid;
    border-width: 0;
}

.t_g, h1, h2, h3, ::placeholder, input{line-height:1.2;font-size: 1rem;font-family: Montserrat, sans-serif;	font-size: .875rem;line-height:1.8;}
h1, h2, h3, h1.t_g, h2.t_g, h3.t_g{font-family:"Cormorant Garamond",Times,serif;font-weight:700;position:relative;font-weight:normal;margin:inherit;line-height:1.2;}
.text-xxs {font-size: .5rem;}
.text-xs {font-size: .75rem;}
.text-sm {font-size: .875rem;}
.text-base {font-size: 1rem;}


.text-lg h1,.text-lg h2,.text-lg h3,.text-lg {font-size: 1.125rem;}
.text-xl h1,.text-xl h2,.text-xl h3,.text-xl {font-size: 1.25rem;}
.text-2xl h1,.text-2xl h2,.text-2xl h3,.text-2xl {font-size: 1.5rem;}
.text-3xl h1,.text-3xl h2,.text-3xl h3,.text-3xl {font-size: 1.875rem;}
.text-4xl h1,.text-4xl h2,.text-4xl h3,.text-4xl {font-size: 2.25rem;}
.text-5xl h1,.text-5xl h2,.text-5xl h3,.text-5xl, h1.ttitle {font-size: 3rem;}
.text-6xl h1,.text-6xl h2,.text-6xl h3,.text-6xl{font-size: 4rem;}
.text-7xl h1,.text-7xl h2,.text-7xl h3,.text-7xl{font-size: 5rem;}
.text-8xl h1,.text-8xl h2,.text-8xl h3,.text-8xl{font-size: 6rem;}
.mt-1{margin-top:1rem!important;}
.mt-1\.5 {margin-top: 1.5rem!important;}
.mb-0\.75 {margin-bottom: .75rem!important;}
.mb-1{margin-bottom:1rem!important;}
.mb-1\.5{margin-bottom: 1.5rem!important;}
.mb-2 {margin-bottom: 2rem!important;}
.mb-4 {margin-bottom: 4rem!important;}
.mb-6 {margin-bottom: 6rem!important;}
.mb-8 {margin-bottom: 8rem!important;}



.prestSVG{width:2.5rem;aspect-ratio:1;} 
.prestSVG:before, .icoStdBef:before, .icoStdBef2:before, .ggsm_down:after, .ggsm_next:after {	content:'';	display:block;    mask-size: contain !important;;    background: hsl(var(--gris));    width: 100%;    height: 100%;    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
	    transition-duration: 0.5s;    transition-property: all;}
.icoStdBef:before, .icoStdBef2:before{width:1rem;height:1rem;display:inline-block;vertical-align:middle;}
.icoStdBef2:before{width:1.5rem;height:1.5rem;}
.icoStdBef>div, .icoStdBef2>div{display:inline-block;width:auto!important;vertical-align:middle;}

.ico-esc:before {mask: var(--ico-esc);}
.ico-vitre:before {mask: var(--ico-vitre);}
.ico-sculpture:before {mask: var(--ico-sculpture);}
.ico-carport:before {mask: var(--ico-carport);}
.ico-pergola:before {mask: var(--ico-pergola);}
.ico-location:before {mask: var(--ico-location);}
.ico-phone:before {mask: var(--ico-phone);}
.ico-mail:before {mask: var(--ico-mail);}
.ico-clock:before {mask: var(--ico-clock);}
.ico-medail:before {mask: var(--ico-medail);}
.ico-marteau:before {mask: var(--ico-marteau);}
.ico-bouclier:before {mask: var(--ico-bouclier);}
.ico-ecouteur:before {mask: var(--ico-ecouteur);}

.ico-oeil:before {mask: var(--ico-oeil);}
.ico-dalles:before {mask: var(--ico-dalles);}
.ico-diamant:before {mask: var(--ico-diamant);}
.ico-regle:before {mask: var(--ico-regle);}
.ico-facebook:before {mask: var(--ico-facebook);}
.ico-instagram:before {mask: var(--ico-instagram);}
.ggsm_down:after, .ggsm_next:after{mask: var(--svg-fleche-bas);} 

.ico-fleche-bas{-webkit-mask: var(--svg-fleche-bas);  mask: var(--svg-fleche-bas); mask-size: contain;}

.icogold:before{background:hsl(var(--gold))}

.noAfter{display:none;}


.ico-heure, .ico-heureb:before{-webkit-mask: var(--svg-heure);  mask: var(--svg-heure); mask-size: contain;}


html{ font-size: inherit;   scroll-behavior: smooth;    line-height: 1.5; -webkit-text-size-adjust: 100%;-moz-tab-size: 4;-o-tab-size: 4;tab-size: 4;font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol, "Noto Color Emoji";font-feature-settings: normal;font-variation-settings: normal;-webkit-tap-highlight-color: transparent;}
body{    background-color: hsl(var(--background));font-family: Montserrat, sans-serif;color: hsl(var(--foreground));-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;    margin: 0;line-height: inherit}
*{box-sizing:border-box}
.container{margin:0;padding:0;}

#global_container{position:relative;min-height:100%;}
b, strong{font-weight:bold;}
img { max-width: 100%; max-height: 100%;width:100%;height:auto;}
.hidden{opacity:0;}
.visible{ opacity:1;}
.athide, .athideuser {display:none;} 
.connected .athideuser {display:block;}
.posrelat{position:relative;}
.alignLeft{text-align:left;}
.alignRight{text-align:right;}
.alignCenter, .bcenter{	text-align:center;	}
.fullWidth{width:100%;}
.wysiwyg{background-color:#b3b3b3;}
a {    color: inherit;    text-decoration: inherit;}

.lineStd{    background-color: hsl(var(--primary));width:100px;height:1px;}
.lineCenter{margin:auto}
.lineAnimBut{position:relative;}
.lineAnimBut:after{content:'';position:absolute; bottom:5px;margin-left:10px;height:1px;width:10%;    transform-origin: left;background-color: hsl(var(--gold));transition-property: transform;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);transition-duration: .5s;    animation-duration: .5s;    transform: scaleX(0.2);}
.lineAnimBut:hover:after{transform: scaleX(1);}
.lineAnimBut>div{display:inline-block}

.uppercase{    text-transform: uppercase;letter-spacing: .3em;}
#div_container_1_h, #div_container_5_fr, #div_container_9_fo{display: block;margin:auto;width: 100%;z-index:2;}
.bcont{display:block;width:100%;padding:var(--padding-content);margin-left:auto;margin-right:auto;}
#div_container_5_fr{overflow:hidden;}

.carousel {margin:0}
.carousel-caption{display:none;padding:0.2% 0 0.2% 1%;font-family:"Cormorant Garamond",Times,serif;text-align:center;position:absolute;bottom:30%;left:15%;width:50%;background:none;}
.carousel-caption h4, .carousel-caption p { text-align: center;color:black;color:white;}
.carousel-indicators, .carousel-control  {display:none;}
.carousel-indicators li {	border-radius:0px;height: 13px;width: 13px;background-color: white	;}
.carousel-indicators .active { background-color: var(--color-1);}
.carousel .item img { max-height: 200%;width:100%;height:auto;}
.thumb-carousel-control{display:none;}
.description_gen_carrousel{}
.title_gen_carrousel{font-family:"Cormorant Garamond",Times,serif;} 
.div_thumbnailsCarousel, .thumbnailsCarousel {height: 100%;}



.input_submit, .formLogin .button_valid, .btnstd, .btnstdinv, #global_container input[type='button']{    animation-duration: 0.3s;    transition-duration: 0.3s;    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 0 #0000, 0 0 #0000, 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);    
    color: hsl(var(--primary-foreground));   font-weight: 200;padding:15px 40px;background-color: hsl(var(--primary));   line-height: 1.5!important;
    border:none;cursor:pointer;text-transform:uppercase;letter-spacing: .2em;}
.btnstdinv{border:2px solid hsl(var(--primary));background:transparent;color:hsl(var(--primary));font-weight:700}
.btnstd:hover, .btnstdinv:hover, #global_container input[type='button']:hover, .input_submit:hover {    background-color: hsl(var(--accent));color: hsl(var(--accent-foreground));box-shadow: 0 0 #0000, 0 0 #0000, 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);}
.bcontmin{width:100%;margin:auto;padding:var(--padding-content);}



/**** HEADER / MENU ***/

.gpmenumo{display:none;}
.gphead{    animation-duration: .5s;transition-duration: .5s;    transition-property: all;transition-timing-function: cubic-bezier(.4, 0, .2, 1);background-color: hsl(var(--noir) / .7);    z-index: 500;top:0;left:0;right:0;    position: fixed;}
.connected .gphead{position:relative;}
.gpheader{margin-left: auto;margin-right: auto;display: flex;    align-items: center;    justify-content: space-between;    padding: var(--padding-content);    padding-top: .5rem;
    padding-bottom: .5rem;   }
.gpmenu{    align-items: center;    gap: 2rem;display: flex;}
.mbut, .mbutcont{    text-transform: uppercase;letter-spacing: .15em;opacity: .8; position:relative;color: hsl(var(--blanc));animation-duration: .3s;    transition-duration: .3s;    transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1);}
.mbut:hover{    color: hsl(var(--gold));}
.mbut:after{  content: ''; width:100%; height:1px;   transition-duration: .3s; animation-duration: .3s;    transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1);    background-color: hsl(var(--gold));    width: 0px;height: 1px;    left: 0;bottom: -4px;    position: absolute;}
.mbut:hover:after,.gpmenu .linkClickedCurrentPage:after{    content: ''; width: 100%;}
.mbutcont{    border:1px solid hsl(var(--gold));color:hsl(var(--gold));padding : 0.625rem 1.5rem; border-radius:9999px; margin-left:5rem;font-weight:700;}
.mbutcont:hover{background-color: hsl(var(--gold));color:black;}
.gg_sm .gg_smn {    white-space: nowrap;}
.logoH{height: 0;animation-duration: .3s;    transition-duration: .3s;    transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1);}
.connected .logoH, .logoH.scrolled{height: 3.5rem;}
.logoI{height: 7rem;position:absolute;top:5.5rem;left:2rem; animation-duration: .3s;    transition-duration: .3s;    transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1);}
.logoI.scrolled{height: 0;}
.connected .logoI{display:none;}


.gpheadscr .gpheader{background-color: hsl(var(--foreground) / 0.8);    box-shadow: 0 0 #0000,  0 0 #0000, 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);}	


.gg_sm {display: flex !important;      visibility: hidden;      opacity: 0;      transform: translateY(-6px);      transition: opacity 0.22s ease, visibility 0.22s ease, transform 0.22s ease;      pointer-events: none;  }
.ggmenu > .cmenu > .gg_hc:hover > .gg_sm,  .gg_hc .gg_hc:hover .gg_sm {      visibility: visible;      opacity: 1;      transform: translateY(0);     pointer-events: auto;  z-index:501}
.gg_hc .is-active {      visibility: visible !important;      opacity: 1 !important;      transform: translateY(0) !important;      pointer-events: auto !important;  }
.gg_sm {border-bottom:2px solid hsl(var(--accent))}
.cmenu{display: flex;    gap: 2rem;    align-items: center;}

/**global**/ 
.titleCarousel{color: hsl(var(--blanc));letter-spacing: .025em;font-weight: 300;line-height: 1;font-family: Cormorant Garamond, serif; animation: fade-in-up .8s ease-out forwards;}
.descCarousel, .descCarousel h1, h1.descCarousel{   margin-left: auto; margin-right: auto; letter-spacing: .025em;font-weight: normal;     font-family: Montserrat, sans-serif;  margin-bottom: 2.5rem;    max-width: 36rem; font-size:1rem;   animation: fade-in 1s ease-out forwards;    color: hsl(var(--blanc));line-height: 1.5rem;animation-delay: 0.3s; }

.titleCarousel em{    background: linear-gradient(135deg, hsl(var(--gold-dark)), hsl(var(--gold)), hsl(var(--gold-light)));
    -webkit-background-clip: text;    -webkit-text-fill-color: transparent;    background-clip: text;}
.button_valid{    background-color: hsl(var(--gold));    padding-left: 2rem;padding-right: 2rem;padding-top: .875rem;padding-bottom: .875rem;    text-transform: uppercase;    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(.4, 0, .2, 1);transition-duration: .3s;    animation-duration: .3s;font-weight: 500;letter-spacing: .15em;border-radius: 0;}
.button_valid:hover{background-color: hsl(var(--gold-light));}
.font-heading {font-family: Cormorant Garamond, serif;}
.font-heading em{color: hsl(var(--gold));}
h1.ttitle {font-family: Cormorant Garamond, serif;margin-bottom:1.5rem}

.text-gris {color: hsl(var(--gris));line-height: 1.625;}
.text-gold {color: hsl(var(--gold));}
.scriptGold{color:hsl(var(--gold)); letter-spacing: .3em; text-transform: uppercase;}
.scriptGold:before{background:hsl(var(--gold));}
.fullLine{display:flex;      align-items: center;  justify-content: space-between;gap: 1rem;}
.fullLine:before, .fullLine:after{opacity: .6;background-color: hsl(var(--gold));     flex-grow: 1;   max-width: 80%;height: 1px;display: block;content:'';}
.fullLine.shortB:before{max-width: 4rem;}
.fullLine.noAfter:after{background-color: transparent;}

.leftUnderLine{background-color: hsl(var(--gold));margin-bottom: 2rem;height: 1px; width: 4rem;}
.centerUnderLine{margin:auto;background-color: hsl(var(--gold));margin-bottom: 2rem;height: 1px; width: 4rem;}

.section-dark {    background-color: hsl(var(--noir));    color: hsl(var(--blanc));}

/**** ACCUEIL ****/
.gpacc0{position:relative;overflow: hidden;justify-content: center;align-items: center;display: flex;position: relative; margin-top: 5rem;}
.gpacc0:has(img){min-height: 600px;height: 100vh; margin-top: 0;}
   
.gpacc0full{top: 0;right: 0;bottom: 0;left: 0;position: absolute;}
.container_imacc1{object-fit: cover;width: 100%;height: 100%;max-width: 100%;}  
.container_imacc1 .container, .container_imacc1 .carousel{width:100%;height:100%;}
.container_imacc1 .carousel .item img{animation: ken-burns 12s ease-in-out infinite;max-height: initial;width: 100%;max-width: initial;height: 100%;object-fit: cover;margin: auto;}

.bckgpacc1{z-index:2;background: linear-gradient(to bottom, hsl(var(--noir) / .6), hsl(var(--noir) / .8));top: 0;right: 0;bottom: 0;left: 0;position: absolute;}
.gpacc0Text{max-width: 56rem;z-index:300;margin:auto;  position:relative;  padding-left: 1.5rem;padding-right: 1.5rem;text-align: center;}
/**section 1 **/
.gpacc1, .gpprest1{background-color: hsl(var(--blanc));color: hsl(var(--noir));padding-top: 6rem;padding-bottom: 6rem;}
.gpacca10, .gpacca50, .gpacca80, .gpacca100{width:100%;margin-left: auto;margin-right: auto;padding:var(--padding-content) }
.gpaccb10,.gpprestb10, .gpaccb100{display: grid; align-items: center; gap: 4rem;grid-template-columns: repeat(2, minmax(0, 1fr));}
.imacc2{position:relative;aspect-ratio:3/4;width:100%;}
.imacc2:before{content:'';position: absolute;top: -1rem;    left: -1rem;    height: 6rem;    width: 6rem;border-top-width: 2px;border-left-width: 2px;border-color: hsl(var(--gold));}
.imacc2:after{content:'';position: absolute;bottom: -1rem;    right: -1rem;    height: 6rem;    width: 6rem;border-bottom-width: 2px;border-right-width: 2px;border-color: hsl(var(--gold));}
.gpaccd11, .gpprestd11{display: flex;    gap: 3rem;}
.gpprestd11{justify-content: center;}
.compteur {color: hsl(var(--gold));line-height: 0.75;}
.compteur>.suffixe{color: hsl(var(--gris));line-height:1.2;    margin-top: .25rem;letter-spacing: .3em;letter-spacing: .15em; text-transform: uppercase;font-size: .75rem;font-family: Montserrat, sans-serif;}
/** Section 2 : realisations**/
.gpacc2, .gpprod2, .gpprod1, .gpprod3, .gpprod4, .gpprod5{padding-top: 4rem;padding-bottom: 4rem;}
.gpaccc85{display:grid; grid-template-columns: repeat(3, minmax(0, 1fr));gap: 2rem;}
.gpaccb95{display:grid; grid-template-columns: repeat(2, minmax(0, 1fr));gap: 2rem;}
.gpPrest{display:flex;flex-direction: column;justify-content:center;align-items:center; position: relative;border-width: 1px;border-color: hsl(var(--border));padding: 2rem;text-align: center;transition-property: all;transition-timing-function: cubic-bezier(.4, 0, .2, 1);transition-duration: .5s;animation-duration: .5s;
    background: white;}
.gpPrest:hover{border-color: hsl(var(--gold));}


.gpPrest:hover .prestSVG:before{ background: hsl(var(--gold));}
.gpPrest:after{content:'';position:absolute; bottom:0;height:2px;width:100%;    transform-origin: left;background-color: hsl(var(--gold));transition-property: transform;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);transition-duration: .5s;    animation-duration: .5s;    transform: scaleX(0);}

.gpaccc11, .gpaccc100, .gpaccd10, .gpaccd100, .gpprestc11 {    display: flex;    flex-direction: column;}
.gpaccc11, .gpaccc100, .gpprestc11 { gap: 2rem; }
.gpaccd10, .gpaccd100 { gap: 1rem; }


.gpaccb51, .gpaccb80 { width: 100%; }



.imacc2b { position: relative; aspect-ratio: 3/4; }
.imacc2b:before {    content: ''; position: absolute; top: -1rem; right: -1rem;    height: 6rem; width: 6rem;    border-top-width: 2px; border-right-width: 2px; border-color: hsl(var(--gold));}
.imacc2b:after {    content: ''; position: absolute; bottom: -1rem; left: -1rem;    height: 6rem; width: 6rem;    border-bottom-width: 2px; border-left-width: 2px; border-color: hsl(var(--gold));}

.gpa2quote {    border-left: 3px solid hsl(var(--gold));    padding-left: 1.5rem;    font-style: italic;    line-height: 1.6;}


.gpaccb52 {    display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 1rem;}
.gpa2realItem {    position: relative;    overflow: hidden;    aspect-ratio: 4/5;    width: 100%;    cursor: pointer;    background: linear-gradient(to top, hsl(var(--noir) / .85) 0%, hsl(var(--noir) / .2) 60%, transparent 100%);
    animation-duration: 0.7s;    transition-duration: 0.7s;    transition-property: all;    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);}
.gpa2realItem:before{	position : absolute;	content : '';	width : 100%;	height: 100%;	z-index:1; 
   background-image: linear-gradient(to top, hsl(var(--noir) / .5), transparent);
}
.connected .gpa2realItem:before{height:90%;bottom:0;}
.gpa2realItem:hover:before{ background-image: linear-gradient(to top, hsl(var(--noir) / .9), transparent);}
.gpa2realItem .container_ima {    position: absolute;    inset: 0;    overflow: hidden;}
.gpa2realItem .container_ima img {    width: 100%; height: 100%; object-fit: cover;    transition: transform .6s cubic-bezier(.4,0,.2,1);}
.gpa2realItem:hover .container_ima img { transform: scale(1.08); }


.gpa2realDesc{	animation-duration: .5s;	transition-duration: .5s;	transition-property: all;    transition-timing-function: cubic-bezier(.4, 0, .2, 1);	transform: translate(0, 1rem);}

/* Overlay texte */
.gpa2realItem .t_g {    position: absolute; inset: 0;    display: flex; flex-direction: column; justify-content: flex-end;    padding: 2rem 1.5rem;    opacity: 0; z-index: 2;}
.gpa2realItem:hover .t_g { opacity: 1; }
.gpa2realCat { letter-spacing: .3em; text-transform: uppercase; margin-bottom: 2.5rem;     opacity: 1 !important; }

/* Ligne gold sous le titre au hover */
.gpa2realItem:after {    content: ''; display: block;    height: 2px; width: 0px;    z-index:2;    background-color: hsl(var(--gold));    position:absolute;    bottom:0.75rem;    left:1.5rem;
    transition: width .4s ease .1s;}
.gpa2realItem:hover:after{	width:4rem;	}
.gpa2realItem:hover .t_g .t_para:last-child:after { width: 3rem; }
.imgacc5 { width: 100%; height: 100%; object-fit: cover; }

.gpa2realItem .imgacc5{    animation-duration: 0.7s;    transition-duration: 0.7s;    transition-property: all;    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);}
.gpa2realItem:hover .imgacc5{   transform: scaleX(1.1) scaleY(1.1);}
.connected .gpa2realItem:hover .imgacc5 { transform: scaleX(1) scaleY(1); }

/* ============================================================
   PRESTATIONS (080) — wrappers intérieur / extérieur
   ============================================================ */
.gpaccb80 { width: 100%; margin-bottom: 3rem; }
.gpaccb85, .gpaccb90 { width: 100%; }
.gpaccb85 { margin-bottom: 3rem; }
.gpaccc80, .gpaccc90 { margin-bottom: 1.5rem; }

/* ============================================================
   CONTACT sur accueil(120)
   ============================================================ */
/* Formulaire contact — grille 2 colonnes */
/* !important nécessaire : generic.css utilise div[class^=table_form_]{display:table} */
.gpa2contactForm.gg_form .t_g {    display: grid !important;    grid-template-columns: 1fr 1fr;    gap: 1.25rem 2rem;    margin-bottom: 1.5rem;    border-spacing: 0;}
.line_full { grid-column: 1 / -1 !important; width: 100% !important; }
.gpa2contactForm.gg_form .line_form.line_full { grid-column: 1 / -1 !important; }

.gpa2contactForm.gg_form .line_form {    display: flex !important;    flex-direction: column;}
.gpa2contactForm.gg_form .cell_1_form, .gpa2contactForm.gg_form .cell_2_form {    display: block !important;    width: 100%;}
.gpa2contactForm.gg_form .cell_1_form label {    display: block;    font-size: .7rem;    font-weight: 500;    letter-spacing: .1em;    text-transform: uppercase;    color: hsl(var(--gris));    margin-bottom: .4rem;}
.p1080 input, .gpa2contactForm.gg_form .cell_2_form input,.gpa2contactForm.gg_form .cell_2_form select, .gpa2contactForm.gg_form .cell_2_form textarea {    width: 100%;    background: transparent;    border: 1px solid hsl(var(--border));    padding: .75rem 1rem;    font-size: .875rem;
    color: hsl(var(--foreground));    transition: border-color .3s ease;    outline: none;    border-radius: 0;    font-family: Montserrat, sans-serif;    box-sizing: border-box;}
.gpa2contactForm.gg_form .cell_2_form input:focus, .gpa2contactForm.gg_form .cell_2_form textarea:focus, .gpa2contactForm.gg_form .cell_2_form select:focus {    border-color: hsl(var(--gold));}
.gpa2contactForm.gg_form .cell_2_form textarea { resize: vertical; min-height: 140px; }
.gpa2contactForm.gg_form .input_submit { cursor: pointer; border: none; border-radius: 0; margin-top: .25rem; }

.gpacca120 {    width: 100%; max-width: 1400px;    margin-left: auto; margin-right: auto;    padding-left: 1.5rem; padding-right: 1.5rem;}
.gpaccb120 { text-align: center; margin-bottom: 3rem; }
.gpaccb125 {    display: grid;    grid-template-columns: 2fr 2fr;    gap: 4rem;    align-items: center;}
.gpaccc120 { width: 100%; }
.gpaccc125 { display: flex; flex-direction: column; gap: 1rem; }
/* Coordonnées grille 2×2 */
.gpaccd125 {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 1.5rem 2rem;}

/* Coordonnées items */
.gpa2coordItem {    display: flex; gap: .75rem; align-items: flex-start;    color: hsl(var(--foreground));}
.gpa2coordItem:before {    content: '';    display: block;    flex-shrink: 0;    width: 1.5rem; height: 1.5rem;    background-color: hsl(var(--gold));    mask-repeat: no-repeat;
    mask-position: center;    mask-size: contain;    -webkit-mask-repeat: no-repeat;    -webkit-mask-position: center;    -webkit-mask-size: contain;}
.gpa2coordAddr:before  { mask-image: var(--ico-location); -webkit-mask-image: var(--ico-location); }
.gpa2coordTel:before   { mask-image: var(--ico-phone);    -webkit-mask-image: var(--ico-phone); }
.gpa2coordMail:before  { mask-image: var(--ico-mail);     -webkit-mask-image: var(--ico-mail); }
.gpa2coordHours:before { mask-image: var(--ico-clock);    -webkit-mask-image: var(--ico-clock); }


/*** SITEMAP ***/
.gpsitemap{padding: var(--padding-content);border:1px solid hsl(var(--border));}
.div_fsm {padding:15px 0}
.fsm {font-weight:700;}
.fsm > a{padding:0 10px;font-weight:normal}
.fsm > a:first-child{padding:0 10px 0 0;}
.fsm .linkClickedCurrentPage{color:hsl(var(--gold));	}



/*** PRESTATION ***/
.imprestas{position:relative;aspect-ratio:1;width:100%;}
.gpprest1{padding-top: 2rem;padding-bottom: 2rem;}
.gpprest1 .group_duplicable_editor, .gpprest1 .duplicate_line , .gpprest1 .duplicate_line  > a  {width:100%;display: flex;}
.gpprest1 .group_duplicable_editor {display:block;}
.gpprest1 .group_duplicable_editor .duplicable_button, .gpprest1 .group_duplicable_editor .duplicable_button,
.breals .group_duplicable_editor .duplicable_button, .breals .group_duplicable_editor .duplicable_button{display:none;}
.gpaccc10 , .imprestas {display: flex;}
.gpprest1 > .duplicate_line:nth-child(odd) .gpaccc10, .gpprest1 > .group_duplicable_editor:nth-child(odd) .gpaccc10 {order:2}
.gpprest1 > .duplicate_line:nth-child(odd) .gpprestc11, .gpprest1 > .group_duplicable_editor:nth-child(odd) .gpprestc11 {order:1}
.gpprestb10{gap:0}
.gpprestc11{padding:3rem}

.gpprest4{padding: 3rem;transition-delay: 450ms;    color: hsl(var(--blanc));background-color: hsl(var(--noir));animation-duration: .7s;    transition-duration: .7s;transition-property: all;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);border:1px solid hsl(var(--gold) / .3);transform: scaleX(1) scaleY(1);    max-width: 56rem;margin-left:auto;margin-right:auto;margin-bottom:8rem;}
.gpprest4b{       display: flex;     flex-direction: row;    align-items: center;    gap: 2rem;}
.gpprest4c{width: 66.66%;}
.gpprest4d{width: 33.333333%; justify-content: center;display: flex;}
.gpprest4e{    gap: .5rem;    grid-template-columns: repeat(4, minmax(0, 1fr));display: grid;}
.tcoloprest{    border:1px solid hsl(var(--border));height: 2.5rem;    width: 2.5rem;}
.colprest1{ background-color: rgb(24 24 27);}
.colprest2{ background-color: rgb(63 63 70);}
.colprest3{ background-color: rgb(161 161 170);}
.colprest4{ background-color: rgb(214 211 209);}
.colprest5{ background-color: rgb(180 83 9);}
.colprest6{ background-color: rgb(120 53 15);}
.colprest7{ background-color: rgb(6 78 59);}
.colprest8{ background-color: rgb(30 58 138);}

.gpprest5,.gpprest7{        grid-template-columns: repeat(4, minmax(0, 1fr));    gap: 1.5rem;    display: grid;}
.gpprest5b{transition-delay: 0ms;    animation-duration: .5s;transition-duration: .5s;transition-property: all;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);    opacity: 1;    text-align: center;    padding: 1.5rem;border:1px solid hsl(var(--gold) / .2);}
.gpprest5b:hover{    border-color: hsl(var(--gold));background-color: hsl(var(--gold) / .05);}   

.gpprest6{display: grid;gap: .75rem;grid-template-columns: repeat(3, minmax(0, 1fr));}
.gpprest6b{    transition-delay: 0ms;animation-duration: .7s;    transition-duration: .7s;    transition-property: all;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);    opacity: 1;overflow: hidden;    cursor: pointer;width: 100%;    height: 100%;    aspect-ratio: 4 / 5;position: relative;}
.container_imprestasreal {width:100%;height:100%;}
.container_imprestasreal >.container{ height:100%;}
.imprestasreal{    animation-duration: .7s;transition-duration: .7s;    transition-property: transform;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);  width: 100%;    height: 100%;    aspect-ratio: 1 / 1;position: relative;}
.gpprest6 .group_duplicable_editor, .gpprest6 .group_duplicate_line{width: 100%;    height: 100%;    aspect-ratio: 1 / 1;position: relative;}
.imprestasreal img{object-fit: cover;    awidth: auto !important;    height: 100% !important;    max-width: 200%;    display: block;
    vertical-align: middle;}
    
.prestationSVG{border: 1px solid hsl(var(--gold) / .3);border-radius: 9999px;display: flex;justify-content: center;    align-items: center;width: 3.5rem;    height: 3.5rem;}
.prestationSVG:before {	content:'';	display:block;    mask-size: contain;    background: hsl(var(--gold));    width: 50%;    height: 50%;    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
	    transition-duration: 0.5s;    transition-property: all;}
.gpprest7b{align-items: center;flex-direction: column;    display: flex;}	    
.gpFAQs{width:70%;display:block;margin:auto;}
.gpFAQs .group_duplicable_editor,.gpFAQs .duplicate_line {width:100%;vertical-align:top;margin:1% 0}
.gpFAQ{transition-property: all;    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);    transition-duration: 0.15s; background-color: rgb(249 250 251 );
	padding:30px;border:1px solid hsl(var(--border));}
.gpFAQ:hover{border-color: hsl(var(--gold));	}
.gpFAQSel{border-color: hsl(var(--gold));}
.gpFAQti{display:flex;justify-content: space-between;align-items: center;cursor:pointer;}
.gpFAQtxt{display: none;text-align:left}
.icofaq{transition: all 0.5s ease 0s;cursor:pointer;width:15px;height:15px;background:black}
.tifaq{font-weight:700}
.descfaq{margin-top:20px;}
.connected .gpFAQtxt{display:block;}




/*** PRODUITS ***/
.gpprod0{position:relative;overflow: hidden;justify-content: center;align-items: center;display: flex;position: relative;flex-direction:row;background:black;}

.gpprod0img{width:50%;height:100%;}
.container_improd1{object-fit: cover;width: 100%;height: 100%;max-width: 100%;aspect-ratio:1}  
.container_improd1 .container, .container_improd1 .carousel{width:100%;height:100%;}
.container_improd1 .carousel .item img{animation: ken-burns 12s ease-in-out infinite;max-height: initial;width: 100%;max-width: initial;height: 100%;object-fit: cover;margin: auto;}
.gpacc0Text2{width:50%;position:relative;  padding-left: 1.5rem;padding-right: 1.5rem;}
.gpprod1d{display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));gap: 1rem;}
.improd2{width:100%;height:100%;aspect-ratio:1.5}
.gpprod1e{position:relative;}
.txtgpprod1{    padding: 1rem;    background-image: linear-gradient(to top, hsl(var(--noir)/ .8), transparent);right: 0;    left: 0;bottom: 0;position: absolute;}
.gpprod2c, .gpprod4f, .gpprod5f{ background-color: hsl(var(--blanc-pure) / .05);padding: 2.5rem;border:1px solid hsl(var(--border) / .2);}
.gpprod4f, .gpprod5f{padding: 1.5rem;}
.gpprod2c strong, .gpprod2c bold, .gpprod2c b,
.gpprod4f strong, .gpprod4f bold, .gpprod4f b,
.gpprod5f strong, .gpprod5f bold, .gpprod5f b{color:hsl(var(--gold));font-weight:700}
.gpprod2d{ background-color: hsl(var(--gold) / .1);padding: 2.5rem;border-left:4px solid hsl(var(--gold));}

.gpprod3c, .gpprod3g{padding: 2.5rem;    border:1px solid hsl(var(--border));background-color: hsl(var(--gris-light));}
.gpprod3d, .gpprod3f{    display: grid;        grid-template-columns: repeat(5, minmax(0, 1fr));gap: 1rem;}
.gpprod3f{grid-template-columns: repeat(2, minmax(0, 1fr));}
.gpprod3e{    background-color: hsl(var(--blanc-pure));padding: 1.25rem;text-align: center;border:1px solid hsl(var(--border));}

.gpprod3h{display: flex;  flex-wrap: wrap;  justify-content: center;    gap: .75rem;}
.txtgpprod3h{letter-spacing: .1em;padding : 0.625rem 1.25rem;border:1px solid hsl(var(--gold) / .3);}

.gpprod4b, .gpprod5b{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));justify-content: center;    align-items: center;    align-content: center;}
.gpprod4c, .gpprod5c{width:100%}
.improd3, .improd3{width:100%;aspect-ratio:0.75}
.gpprod4d, .gpprod5d{padding: 3.5rem;justify-content: center;    flex-direction: column;display: flex;}
.gpprod4e, .gpprod5e{justify-content: center;    flex-direction: column;display: flex;}

.gpprod5d{background-color: hsl(var(--gris-light));}
.gpprod5f{background-color: hsl(var(--blanc-pure));border:1px solid hsl(var(--border));}


/*** REALISATIONS ***/
.bbreals{padding-top:2rem;padding-bottom:2rem;}
.breals{display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));justify-content: center;    align-items: center;    align-content: center;gap:25px;}
.breals .duplicate_line > a{width:100%}

.bbrealisation{width: 100%;    }
.brealisation{width: 100%;      padding:20px; text-align:center; border:1px solid hsl(var(--gold));border-radius:10px;transition-property: all;    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);    transition-duration: 0.15s;}
.brealisation:hover{background:hsl(var(--gold));color:white;font-weight:700}
.gpreal1{padding:2rem 4rem;}

/*** CONTACT ***/
.main_ggMap, .ggMap  {width:100%;aspect-ratio:1.9;   height: auto;}


/* ============================================================
   FOOTER
   ============================================================ */
.bfooter {    background-color: hsl(var(--noir));    color: hsl(var(--blanc));    border-top: 1px solid hsl(var(--noir-light));}
.bfooterInner { width: 100%;     margin: auto;     padding:var(--padding-content);    padding-top: 5rem;    padding-bottom: 5rem;}
.bfooterCols {  display: grid;    grid-template-columns: repeat(3, minmax(0, 1fr));    gap: 3rem;    margin-bottom: 3rem;}
.bfooterCol { display: flex; flex-direction: column; gap: .5rem; }
.bfooterLogo { width: 100%; display:flex;    justify-content: space-evenly; gap: 1rem;    align-items: center;}
.logofo { width: auto; height: 2.5rem; object-fit: contain; }
.logofo *{max-width:100%; max-height:100%;height: inherit;}
.bfooterDescTxt { color: hsl(var(--blanc) / .5); font-size: .875rem; line-height: 1.6; margin-top: .5rem; }
.bfooterColTitle {    color: hsl(var(--gold));    font-size: .7rem; letter-spacing: .3em; text-transform: uppercase;    margin-bottom: .75rem;}
.bfooterNavLink {    color: hsl(var(--blanc) / .5);    font-size: .875rem;    transition: color .3s ease, opacity .3s ease;}
.bfooterNavLink:hover { color: hsl(var(--gold)); opacity: 1; }
.bfooterInfo { color: hsl(var(--blanc) / .5); font-size: .875rem; }
.bfooterInfo:hover { color: hsl(var(--blanc)); }
.bfooterCopy {    border-top: 1px solid hsl(var(--noir-light));}
.bfooterCopyInner {    width: 100%;     margin-left: auto; margin-right: auto;    padding:var(--padding-content);    padding-top: 1.5rem;    padding-bottom:1.5rem;    display: flex;
    flex-direction: column;    gap: .5rem;}
.bfooterCopyTxt { color: hsl(var(--blanc) / .3); font-size: .75rem; }
.bfooterCopyTxt a { color: inherit; }
.bfooterCopyTxt a:hover { color: hsl(var(--gold)); }
.icoFooter:before{background: hsl(var(--gold)); width:2rem;height:2rem; } 
.icoFooter{display:inline-block;}




.closePopImg { width: 40px;    height: 40px;    line-height: 40px;    text-align: center;}



/****animations ***/

@keyframes ken-burns {
    0% {transform: scale(1)}
    50% {transform: scale(1.08)}
    to {transform: scale(1)}
}

@keyframes fade-in {
    0% { opacity: 0 }
    to {opacity: 1}
}

@keyframes fade-in-up {
    0% {opacity: 0;transform: translateY(30px)}
    to {opacity: 1;transform: translateY(0)}
}

@keyframes pulse {
    50% {opacity: .5}
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1024px) {
	:root {
    --padding-content: 0 2%;
}
}
@media (max-width: 768px) {

}
@media 	only screen and (max-width : 468px) {
	:root {
		--fontlvl1-submenu-size:.875rem;
		--fontlvl2-submenu-size:.875rem;
		
    --padding-content: 0 2%;
}
	

	.text-6xl h1,.text-6xl h2,.text-6xl h3,.text-6xl{font-size: 4rem;}
	.text-7xl h1,.text-7xl h2,.text-7xl h3,.text-7xl{font-size: 4rem;}
	.text-8xl h1,.text-8xl h2,.text-8xl h3,.text-8xl{font-size: 4rem;}
	
	
	.mb-4 {margin-bottom: 2.5rem!important;}
	.mb-6 {margin-bottom: 3rem!important;}
	.mb-8 {margin-bottom: 3.5rem!important;}

  html, body{width:100%;height:100%;}
  .gpmenumo{display:block;cursor:pointer;}
  .ibutmob{width: 2.5rem;        height: 2.5rem;        fill: #ffffff;        position: absolute;        top: 0.5rem;         right: 1rem;}
  .gpheader { padding-top: 0.5rem;    padding-bottom: 0.5rem;flex-direction:column;align-items: flex-start;}
  .gpheader>a{font-size:0;}
  .gphead { background-color: hsl(var(--noir) / .9);}
  .gpmenu{  transition: none; display:none;  overflow: auto;     flex-flow: nowrap;    width: 100%;text-align:center!important;padding:0; }
	.gpmenu .cmenu {display: inline-flex;        width: 96%;}
	.gpmenu .cmenu li {  display: block;}
	.gpmenu .gg_sm a {  white-space: wrap;}
	.cmenu .lvl1 { margin-left: 0;width: 100%;}
	.cmenu>.gg_hc{width:86%}
	.ggmenu>.cmenu .gg_sm, 
	.ggmenu>.cmenu .gg_hc:hover>.gg_sm{display:none !important;}
	.ggsm_next{display:block;content:''}
	.ggsm_next:before{content:'';}
	.ggsm_down:after, .ggsm_next:after{ position: static; width:1.5rem;height: 1.5rem;        position: absolute;        top: 0	;        right: 0.5rem;        left: initial;        bottom: initial;}
	.ggsm_next:after{top:0.5rem;}
	.ggsm_down:hover:after, .ggsm_next:hover:after{width:1.5rem} 
  .ggsm_down:has(+.is-active):after, .ggsm_next:has(+.is-active):after{transform: rotate(90deg);} 
  .ggmenu>.cmenu .gg_sm.is-active, .ggmenu>.cmenu .gg_hc:hover>.gg_sm.is-active{display: flex !important;text-align: left; }
  .ggmenu>.cmenu .gg_sm.is-active { visibility: visible;opacity: 1;transform: translateY(0);pointer-events: auto;}
	.gg_sm.lvl1, .gg_sm.lvl2 {   position: static !important;  }
	.gg_sm {border-bottom: none;}
	
	
	.t_g.gg_smn { padding: 0.5rem;}
	.mbutcont {  margin-left: 0;}
	.gplinkCont{display:none;}
	.logoH,.connected .logoH, .logoH.scrolled {height: 2.5rem;}
	 .mbut {   white-space: nowrap;        text-align: center;        width: 100%;}
	
	
	
	.gpacc0Text { max-width: 100%;    padding-left: 2%;    padding-right: 2%;}
	.descCarousel, .descCarousel h1, h1.descCarousel { max-width: 100%;}
	.gpacc1, .gpprest1, .gpacc2, .gpprod2, .gpprod1, .gpprod3, .gpprod4, .gpprod5 {  padding-top: 2rem;    padding-bottom: 2rem;}
	.gpaccb10, .gpprestb10, .gpaccb100 {  grid-template-columns: repeat(1, minmax(0, 1fr));}
	.gpaccd11, .gpprestd11 {gap: 1rem;}
	.gpaccd11{align-items: center;}
	.compteur {text-align:center}
	.gpaccb52 {  grid-template-columns: repeat(2, minmax(0, 1fr));}
	.gpaccc85, .gpaccb95 { grid-template-columns: repeat(1, minmax(0, 1fr));}
	.gpaccb125 {  grid-template-columns: 1fr ;    gap: 2rem;}
	.gpaccd125 { grid-template-columns: 1fr ;  gap: 2rem;}
	
	
	.gpprest1 > .duplicate_line:nth-child(odd) .gpaccc10, .gpprest1 > .group_duplicable_editor:nth-child(odd) .gpaccc10 {order:1}
	.gpprest1 > .duplicate_line:nth-child(odd) .gpprestc11, .gpprest1 > .group_duplicable_editor:nth-child(odd) .gpprestc11 {order:2}
	.gpprestc11 {	    padding: 1rem;	}
	
	.gpprod0 {  min-height: 100%;    height: auto;    flex-direction: column;}
	
	.gpacc0Text2 {width: 100%;order:2;padding:1rem;	}
	.gpprod0img {width: 100%;order:1}
	.gpprod1d {  grid-template-columns: repeat(2, minmax(0, 1fr));}
	.gpprod3d, .gpprod3f { grid-template-columns: repeat(2, minmax(0, 1fr));}
	.txtgpprod3h {font-size:0.6rem;}
	.gpprod4b, .gpprod5b {  grid-template-columns: repeat(1, minmax(0, 1fr));}
	.gpprod4d, .gpprod5d {  padding: 1rem;}
	.gpFAQs { width: 100%;}
	.gpFAQ {  padding: 1rem;}
	.icofaq {  width: 1rem;    height: 1rem;}
	
	.gpreal1 { padding: 1rem 2%;}
	.gpprest5,.gpprest7{        grid-template-columns: repeat(2, minmax(0, 1fr));    }
	.gpprest6 { gap: 1rem;    grid-template-columns: repeat(1, minmax(0, 1fr));}
	
	
	
	
	.bfooterInner {  padding-top: 2rem;    padding-bottom: 2rem;}
	.bfooterCols {grid-template-columns: repeat(1, minmax(0, 1fr));    gap: 2rem;    margin-bottom: 2rem;}
	.bfooterCopyInner { padding-top: 2rem;    padding-bottom: 2rem;    gap: 0.5rem;}
	
}
