@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
/* Font google */
/* !BASE & STRUCTURE */
:root {
	/*----------------------------------------*/
	/* !GENERAL */
	/*----------------------------------------*/
	--fontSizeHtml: 62.5%;

	/* Font Family */
	--sansserifFont: 'Montserrat', sans-serif;
	--serifFont: serif;
	--cursiveFont: cursive;

	/* Background  */
	--backgroundColor: #FEFEFE;

	/**/
	--primaryColor: #030303;
	--secondaryColor: #C0B791;
	--secondaryColorContrast: #FEFEFE;

	/**/
	--linkColor: #C0B791;
	--linkHover: #030303;

	/**/ 
	--max-width: 1440px; /* Valeur par défaut si var() était vide */

	/*----------------------------------------*/
	/* !Navigation gen */
	/*----------------------------------------*/
	/* Logo */
	--logo: url('../images/logo.svg');
	--logo_home: url('../images/logo.svg');
	--logo_menu: url('../images/logo_menu.svg');

	/* Menu */
	--menuColor: #FFFFFF;
	--menuColorhover: var(--primaryColor);
	--menuColorFixed: #0A2246;
	--borderRadmegamenu: 6px;
	--megamenuaHover: color-mix(in srgb, var(--secondaryColorContrast), transparent 90%);

	/* bouton mobile */
	--toggleColor: var(--primaryColor);
	--toggleColorContrast: var(--secondaryColorContrast);

	/* menu mobile */
	--mobileMenuSize: 100vw;
	--mobileMenuBg: var(--secondaryColor);
	--mobileMenuColor: var(--secondaryColorContrast);

	/*----------------------------------------*/
	/* social sharing */
	/*----------------------------------------*/
	--ssBg: var(--backgroundColor);
	--ssBgHover: var(--primaryColor);
	--ssborderRadius: 50%;
	--ssBorder: 1px solid transparent;
	--ssBorderHover: 1px solid var(--secondaryColor);

	/*----------------------------------------*/
	/* !FORMULAIRE */
	/*----------------------------------------*/
	/* Remplacement de rgba($primaryColor, .4) */
	--placeholderColor: color-mix(in srgb, var(--primaryColor), transparent 60%);
	--placeholderWeight: 400;

	/* label */
	--labelBg: var(--secondaryColor);
	--labelColor: var(--secondaryColorContrast);
	--labelRadius: 3px;
	--labelSize: 1.2rem;

	/* input */
	--inputSize: 1.6rem;
	--inputWeight: 400;
	--inputBg: var(--backgroundColor);
	--inputColor: var(--primaryColor);
	--inputBorder: 1px solid color-mix(in srgb, var(--primaryColor), transparent 50%);
	--inputRadius: 5px;

	/**/
	--inputBgHover: var(--backgroundColor);
	--inputColorHover: var(--inputColor);
	--inputBorderHover: 1px solid var(--secondaryColor);
	--inputRadiusHover: var(--inputRadius);

	/**/
	--inputBgFocus: var(--backgroundColor);
	--inputColorFocus: var(--inputColor);
	--inputBorderFocus: 1px solid var(--secondaryColor);
	--inputRadiusFocus: var(--inputRadius);

	/**/
	--inputBgDisabled: #CCCCCC;
	--inputBorderDisabled: #CCCCCC;
	--inputColorDisabled: #CCCCCC;

	/* submit */
	--submitSize: var(--inputSize);
	--submitBg: var(--secondaryColor);
	--submitColor: var(--secondaryColorContrast);
	--submitBorder: 1px solid var(--secondaryColor);
	--submitRadius: var(--inputRadius);

	/**/
	--submitBgHover: var(--primaryColor);
	--submitColorHover: var(--secondaryColor);
	--submitBorderHover: 1px solid var(--primaryColor);
	--submitRadiusHover: var(--inputRadius);

	/* textarea */
	--textareaLineheight: 1.4;
	--textareaHeight: 96px;
	--textareaHeightFocus: 120px;

	/* radio & checkbox */
	--radioBg: var(--inputBg);
	--radioOutline: var(--inputBorder);
	--radioOutlineHover: var(--inputBorderHover);
	--radioOutlineoffset: 2px;
	--checkboxSize: clamp(1rem, 1vw, 1.5rem);
	--checkboxColor: var(--secondaryColor);

	/* file */
	--fileBg: var(--secondaryColor);
	--fileColor: var(--secondaryColorContrast);
	--fileBorderColorHover: var(--secondaryColor);
	--fileRadius: 0;
}
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; margin: 0; padding: 0; }
*, *:before, *:after { box-sizing:border-box;}
/*
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling user zoom.
 */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  margin: 0; /* 2 */
}
/**/
article, aside, details, footer, header, main, menu, nav, section { display: block; }
summary { display: list-item;}
img { border: 0; display: block; }
/* PRINT */
@media print {
   * { background: transparent !important; color: black !important; box-shadow: none !important; text-shadow: none !important; -webkit-filter: none !important; filter: none !important; -ms-filter: none !important; }
   a, a:visited { text-decoration: underline; }
   a[href]:after { content: " (" attr(href) ")"; }
   abbr[title]:after { content: " (" attr(title) ")"; }
   .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
   pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
   thead { display: table-header-group; }
   tr, img { page-break-inside: avoid; }
   img { max-width: 100% !important; }
   @page { margin: 0.5cm; }
   p, h2, h3 { orphans: 3; widows: 3; }
   h2, h3 { page-break-after: avoid; }
}
/* !THEMES */
[data-theme="light"] {
}
[data-theme="dark"] {
}
[data-theme="neon"] {
}
/* !LAYOUTS */
/* @import "layouts/_nav-classic.css"; */
/*----------------*/
/* !HEADER & LOGO */
/*----------------*/
header { position:fixed; top:0; left:0; width:100%; height:0; transition:all 0.5s; z-index:2000;}
#logo { position:absolute; top:30px; left:50px; width:321px; height:112px; -webkit-transform-origin:left top; transform-origin:left top; transition:all 0.5s; z-index:1000;}
#logo a { background:var(--logo) no-repeat 0 0 / contain rgba(0,0,0,0); text-indent:-999em; display:block; margin:0; opacity:1; transition:all 0.5s; height:100%; width:100%;}
.home #logo { top:40px; left:50px; }
.home #logo a { }
/*-----------------------*/
/* !PARAMETRER LE TOGGLE */
/*-----------------------*/
.nav-burger #toggle { z-index:9100; position:fixed; transition:all 0.5s; top:30px; right:40px; color:var(--toggleColor); border-radius:0; padding:8px 10px; border:none; text-transform:uppercase; font-size:1.9rem; font-weight:550; }
/*---------------*/
/* !MENU GENERAL */
/*---------------*/
.nav-burger #menu, .nav-burger #menu * { transition:all 0.5s;}
.nav-burger #menu { background:var(--mobileMenuBg); left:calc(-1 * var(--mobileMenuSize)); width:var(--mobileMenuSize); margin:0; position:fixed; top:0; bottom:0; z-index:9000; overflow-y:auto; overflow-x:hidden; height:calc(var(--vh, 1vh) * 100); display:grid;}
.nav-burger #menu > div { padding:50px; display:flex; flex-direction:column; justify-content:center; background:var(--logo_menu) no-repeat 70% 50% / 40%;}
.nav-burger #menu > div > ul { width:30%; margin:0;}
.nav-burger #menu a { font-family:var(--sansserifFont); font-size:2.4rem; font-weight:300; line-height:1.2; padding:5px 10px; color:var(--menuColor); text-align:left; display:block;}
.nav-burger #menu a:hover { background: oklch(from var(--primaryColor) l c h / 0.05);}
.nav-burger #menu a.havesub, .nav-burger #menu li > a { position:relative; padding:5px 35px 5px 25px; border-radius:5px 0 0 5px;}
.nav-burger #menu a.havesub:after { content:'>'; font-size:1.6rem; color:var(--menuColor); position:absolute; right:15px; top:50%; -webkit-transform:translateY(-50%); transform:translateY(-50%);}
.nav-burger #menu a.havesub:hover { background: oklch(from var(--primaryColor) l c h / 0.05);}
/* snd (secondaire top right) */
ul.snd { position:fixed; right:130px; top:36px; display:flex; padding:0; margin:0; transition:all .5s; z-index:2000;}
ul.snd > li { position:relative; list-style-type:none; margin:0;}
ul.snd a { color:var(--primaryColor); display:block; text-align:center; padding:6px; border:1px solid var(--primaryColor); border-radius:50vh; width:30px; height:30px; font-size:1.2rem; font-weight:500;}
ul.snd a:hover{ background: var(--primaryColor); color:var(--backgroundColor);}
/* contact fixe */
a.contact { position:fixed; bottom:10px; right:0; font-size:1.4rem; line-height:1; font-weight:700; text-transform:uppercase; background:none; color:var(--secondaryColorContrast); padding:15px 20px; cursor:pointer;}
a.contact:before { content:''; position:absolute; left:0; top:0; background:var(--secondaryColor); height:100%; width:calc(100% + 10px); -webkit-transform:skew(-15deg); transform:skew(-15deg); z-index:-1; transition:all .5s; border-radius: 10px}
a.contact span { display:block; clear:both; text-transform:none; font-weight:500;}
a.contact:hover { color:var(--backgroundColor);}
a.contact:hover:before { background:var(--primaryColor);}
/*---------------*/
/* !MEGAMENU     */
/*---------------*/
.nav-burger #menu .megamenu { background:rgba(0,0,0,.1); position:absolute; top:0; left:calc(30% + 20px); opacity:0; min-height:100%; width:30%; display:flex; flex-direction:column; justify-content:center; visibility:hidden; padding:20px;}
.nav-burger #menu .megamenu a { font-size:2rem;}
.nav-burger #menu .megamenu .backnav { display:none;}
.nav-burger #menu .megamenu .mg { background:rgba(0,0,0,.18); position:absolute; top:0; left:100%; opacity:0; min-height:100%; width:100%; display:flex; flex-direction:column; justify-content:center; visibility:hidden;}
.nav-burger #menu .megamenu .mg a:hover { background:rgba(255,255,255,.05);}
/* ouverture niveaux */
.nav-burger #menu .lv0_p .megamenu { opacity:1; visibility:visible;}
.nav-burger #menu .lv1_p > .mg,
.nav-burger #menu .lv2_p > .mg,
.nav-burger #menu .lv3_p > .mg,
.nav-burger #menu .lv4_p > .mg { opacity:1; padding:20px; visibility:visible;}
/*---------------*/
/* !MENU FIXED   */
/*---------------*/
.fixed { background:var(--backgroundColor); box-shadow:0 5px 5px 0 rgba(0,0,0,0.2); height:50px;}
.fixed #logo { width:140px; height:36px; top:50%; -webkit-transform:translateY(-50%); transform:translateY(-50%); left:40px;}
.fixed #toggle { top:4px;}
.home.nav-burger .fixed #toggle span { background:var(--toggleColorContrast);}
.fixed ul.snd { top:10px;}
.home .fixed ul.snd a { color:var(--primaryColor);}
/*----------------------*/
/* !media queries       */
/*----------------------*/
@media all and (max-width:1080px) {
	.nav-burger #menu { background:var(--mobileMenuBg); left:calc(-1 * var(--mobileMenuSize)); margin:0; position:fixed; top:0; bottom:0; width:var(--mobileMenuSize); overflow-y:auto; overflow-x:hidden; height:auto; display:flex; flex-direction:column; z-index:9000; padding:80px 10px 0;}
	.nav-burger #menu > div { padding:0;}
	.nav-burger #menu > div > ul { position:inherit; width:auto;}
	.nav-burger #menu li .megamenu { margin:0; left:100%; top:0; right:auto; width:100%; height:auto; opacity:1; min-height:100vh; overflow:visible; -webkit-transform:none; transform:none; box-shadow:none; flex-direction:column; justify-content:flex-start; padding:80px 20px 0;}
	.nav-burger #menu .megamenu a { width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; line-height:43px;}
	.nav-burger #menu .megamenu .mg { margin:0; padding:80px 0 0 !important; justify-content:flex-start;}
	.nav-burger #menu .megamenu .backnav { display:flex;}
	.nav-burger #menu .megamenu .backnav a:before { content:'<'; margin:0 5px 0 0;}
	.nav-burger #menu .megamenu .backnav .vall { text-align:right; text-transform:none; width:160px; font-size:1.1rem;}
	.nav-burger #menu .megamenu .backnav .vall:before { display:none;}
	.nav-burger #menu .lv0_gp > li > a { -webkit-transform:translateX(calc(-1 * var(--mobileMenuSize))); transform:translateX(calc(-1 * var(--mobileMenuSize)));}
	.nav-burger #menu .lv0_p .megamenu { left:0; opacity:1;}
	.nav-burger #menu .lv1_gp > div > a,
	.nav-burger #menu .lv2_gp > div > a,
	.nav-burger #menu .lv3_gp > div > a,
	.nav-burger #menu .lv4_gp > div > a { -webkit-transform:translateX(calc(-1 * var(--mobileMenuSize))); transform:translateX(calc(-1 * var(--mobileMenuSize)));}
	.nav-burger #menu .lv1_gp > div > .vall,
	.nav-burger #menu .lv2_gp > div > .vall,
	.nav-burger #menu .lv3_gp > div > .vall,
	.nav-burger #menu .lv4_gp > div > .vall { -webkit-transform:translateX(calc(-1 * var(--mobileMenuSize))); transform:translateX(calc(-1 * var(--mobileMenuSize)));}
	.nav-burger #menu .lv1_p > .mg,
	.nav-burger #menu .lv2_p > .mg,
	.nav-burger #menu .lv3_p > .mg,
	.nav-burger #menu .lv4_p > .mg { left:0; opacity:1;}
	.nav-burger .deploy_h #toggle::after { display:none;}
	.nav-burger .displayed { display:none;}
}
@media all and (max-width:810px) {
	.nav-burger a.projet_btn { bottom:0;}
	.nav-burger #menu > div { background:none;}
}
@media all and (max-width:480px) {
	.home .fixed #logo { top:0;}
	.nav-burger #toggle { top:7px; right:10px;}
	ul.snd { top: 10px; right: 90px;}
	#logo, .home #logo { top:2vh; width:162px; height:55px; left:20px;}
	.nav-burger .mob_navlvl2 #menu address,
	.nav-burger .mob_navlvl2 #menu .thd,
	.nav-burger .mob_navlvl2 .taskbar { opacity:0; visibility:hidden;}
}
/* @import "layouts/_nav-eshop.css"; */
/*---------------*/
/* !FOOTER       */
/*---------------*/
footer * { transition: all .5s; }
footer { position: relative; padding: 0; width: 86%; margin: 120px auto 20px; }
footer > div { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 30px 0; }
footer > div > div { margin: 10px 0; }
footer ul { margin: 0; }
footer li, footer a, footer p { color: var(--primaryColor); font-size: 1.2rem; font-weight: 400; text-align: left; list-style: none; position: relative; text-decoration: none; margin: 0; line-height: 1.4; padding: 0; letter-spacing: 1px; font-style: normal; }
footer a:hover { color: var(--linkColor); }
footer li { margin: 0 0 0 10px; }
footer .f_tit { font-size: 2.2rem; font-weight: 500; margin: 0 0 15px; line-height: 1; text-transform: uppercase; }
/* Réseaux sociaux */
footer .f_reso ul { padding: 0 5px; }
footer .f_reso li { display: inline-block; margin: 0; }
footer .f_reso li a { font-size: 1.9rem; display: block; padding: 10px; }
/* Signature Colibri */
footer .colibri { margin: 0; border-top: 1px solid color-mix(in srgb, var(--primaryColor), transparent 90%); padding: 20px;}
footer .colibri a { color: var(--primaryColor); font-size: 1.6rem; }
/* Bouton On Top */
footer .ontop { background: var(--secondaryColor); color: var(--secondaryColorContrast); font-size: 1.4rem; line-height: 1.1; text-align: center; border-radius: 5px; height: 30px; width: 30px; display: none; position: fixed; right: 20px; bottom: 70px; z-index: 9500; margin: 0; padding: 0; transition: all 0.5s; cursor: pointer; }
footer .ontop:hover { background: var(--primaryColor); color: var(--backgroundColor); text-decoration: none; }
footer .ontop:before { content: "\e9f0"; font-family: 'colibri'; font-size: 2.5rem; }
footer .ontop_showed { display: block; }
/* !COMPONENTS (Base) */
/*-------------------*/
/* !COMPONENTS: BTNS */
/*-------------------*/
[class*="btn_"] { 
    display: inline-block; 
    font-size: 1.4rem; 
    color: var(--primaryColor); 
    border-radius: 40px; 
    padding: 12px 34px; 
    margin: 5px 5px 5px 0; 
    transition: all .5s; 
    text-decoration: none; 
    cursor: pointer; 
    border: none;
    text-align: center;
}
.btn_gen { background: var(--primaryColor); color: var(--backgroundColor); }
.btn_gen:hover { background: var(--secondaryColor); color: var(--secondaryColorContrast); }
.btn_aside { background: var(--secondaryColor); color: var(--secondaryColorContrast); border: 1px solid var(--backgroundColor);}
.btn_aside:hover { background: var(--primaryColor); color: var(--backgroundColor); border: 1px solid var(--primaryColor);}
.btn_color { background: var(--secondaryColor); color: var(--secondaryColorContrast); }
.btn_color:hover { background: var(--primaryColor); color: var(--backgroundColor); }
.more { font-size: 1.4rem; color: var(--primaryColor); border: 1px solid color-mix(in srgb, var(--primaryColor), transparent 80%); background: none; border-radius: 30px; padding: 12px 24px; margin: 5px 5px 5px 0; transition: all .5s; display: inline-block; }
.more:hover { background: var(--primaryColor); border: 1px solid var(--primaryColor); color: var(--backgroundColor);}
/*----------------*/
/* !FORMULAIRE V2 */
/*----------------*/
.rowElem { margin: 18px 0; position: relative; }
.radioElem, .checkboxElem, .selectElem, .fileElem { position: relative; }
.presuffix { display: flex; align-items: center; }
.presuffix p { margin: 0 10px !important; }
/* fieldset */
fieldset { margin: 10px 0; padding: 3%; border: 1px solid color-mix(in srgb, var(--primaryColor), transparent 90%); border-radius: 10px; }
legend { font-size: 2rem; padding: 0 10px; }
/* global inputs */
input, textarea, select, input[type="file"] { outline: none; font-size: var(--inputSize); font-weight: var(--inputWeight); width: 100%; padding: clamp(1rem, 1vw, 1.5rem) clamp(1.5rem, 1.5vw, 2rem); transition: all 0.5s; }
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { color: var(--placeholderColor); font-weight: var(--placeholderWeight); }
input::-moz-placeholder, textarea::-moz-placeholder { color: var(--placeholderColor); font-weight: var(--placeholderWeight); }
input::placeholder, textarea::placeholder { color: var(--placeholderColor); font-weight: var(--placeholderWeight); }
/* label */
label { font-size: var(--inputSize); }
label span { background: var(--labelBg); color: var(--labelColor); border-radius: var(--labelRadius); font-size: var(--labelSize); font-weight: 600; top: -10px; left: 8px; max-height: 0; overflow: hidden; position: absolute; transition: all 0.5s; }
label.show-label span { max-height: 22px; padding: 2px 6px; }
/* input states */
input { background: var(--inputBg); border: var(--inputBorder); color: var(--inputColor); border-radius: var(--inputRadius); }
input:hover { background: var(--inputBgHover); border: var(--inputBorderHover); color: var(--inputColorHover); border-radius: var(--inputRadiusHover); }
input:focus, textarea:focus { background: var(--inputBgFocus); border: var(--inputBorderFocus); color: var(--inputColorFocus); border-radius: var(--inputRadiusFocus); }
input[disabled], textarea[disabled] { background: var(--inputBgDisabled); border: var(--inputBorderDisabled); color: var(--inputColorDisabled); }
/* textarea */
textarea { background: var(--inputBg); border: var(--inputBorder); color: var(--inputColor); border-radius: var(--inputRadius); font-size: var(--inputSize); height: var(--textareaHeight); line-height: var(--textareaLineheight); resize: none; transition: all 0.5s; }
textarea:hover { background: var(--inputBgHover); border: var(--inputBorderHover); color: var(--inputColorHover); border-radius: var(--inputRadiusHover); }
textarea:focus { height: var(--textareaHeightFocus); }
/* select */
select { background: var(--inputBg); border: var(--inputBorder); color: var(--inputColor); border-radius: var(--inputRadius); -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select:hover { border: var(--inputBorderHover); }
.selectElem:after { content: '\e9f1'; font-family: 'colibri'; font-size: 2rem; pointer-events: none; position: absolute; right: clamp(10px, 20px, 1vw); top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
/* file */
input[type="file"] { cursor: pointer; position: relative; }
input[type="file"]::-webkit-file-upload-button { margin-right: 0; border: none; background: var(--secondaryColor); color: var(--secondaryColorContrast); position: absolute; right: 0; top: 0; height: 100%; padding: 0 20px; cursor: pointer; }
input[type="file"]::file-selector-button { margin-right: 0; border: none; background: var(--secondaryColor); color: var(--secondaryColorContrast); position: absolute; right: 0; top: 0; height: 100%; padding: 0 20px; cursor: pointer; }
/* submit */
input[type="submit"] { background: var(--submitBg); border: var(--submitBorder); color: var(--submitColor); border-radius: var(--submitRadius); font-size: var(--submitSize); cursor: pointer; transition: all 0.5s; }
input[type="submit"]:hover { background: var(--submitBgHover); border: var(--submitBorderHover); color: var(--submitColorHover); border-radius: var(--submitRadiusHover); }
/* radio */
.radioElem label { display: flex; align-items: center; }
input[type="radio"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; margin: 0; border: none; width: auto; height: auto; position: relative; }
input[type="radio"]::before { display: block; content: ''; height: clamp(1rem, 1vw, 1.5rem); width: clamp(1rem, 1vw, 1.5rem); border-radius: 50%; background: var(--radioBg); outline: var(--radioOutline); outline-offset: var(--radioOutlineoffset); transition: all 0.5s; }
input[type="radio"]:hover::before { outline: var(--radioOutlineHover); }
input[type="radio"]:checked::before { outline: var(--radioOutlineHover); background: var(--labelBg); }
/* radio spécial (star) */
.star input[type="radio"]::before { content: '\e965'; height: auto; width: auto; color: var(--primaryColor); font-size: var(--inputSize); font-family: 'colibri'; outline: none; background: none; }
.star input[type="radio"]:hover::before { content: '\e965'; color: var(--secondaryColor); }
.star input[type="radio"]:checked::before { content: '\e930'; color: var(--secondaryColor); background: none; }
/* checkbox */
.checkboxElem label { display: flex; align-items: center; }
input[type="checkbox"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; margin: 0; border: none; width: auto; position: relative; }
input[type="checkbox"]::before { font-family: 'colibri'; content: '\e9e5'; color: var(--backgroundColor); font-size: var(--inputSize); display: block; height: clamp(1rem, 1vw, 1.5rem); width: clamp(1rem, 1vw, 1.5rem); background: var(--radioBg); outline: var(--radioOutline); outline-offset: var(--radioOutlineoffset); transition: all 0.5s; }
input[type="checkbox"]:hover::before { outline: var(--radioOutlineHover); }
input[type="checkbox"]:checked::before { outline: var(--radioOutlineHover); content: '\e9e5'; color: var(--checkboxColor); font-size: var(--checkboxSize); background: transparent; }
/* checkbox spécial (square) */
.square input[type="checkbox"]::before { content: ''; }
.square input[type="checkbox"]:checked::before { background: var(--labelBg); }
/* Toggle switch */
.switch { --button-width: 35px; --button-height: 20px; --toggle-diameter: 15px; --button-toggle-offset: calc((var(--button-height) - var(--toggle-diameter)) / 2); --toggle-shadow-offset: 10px; --toggle-wider: 30px; --color-green: var(--secondaryColor); cursor: pointer; }
.sslider { display: inline-block; width: var(--button-width); height: var(--button-height); background: color-mix(in srgb, var(--primaryColor), transparent 80%); border-radius: calc(var(--button-height) / 2); position: relative; transition: 0.3s all ease-in-out; }
.sslider::after { content: ""; display: inline-block; width: var(--toggle-diameter); height: var(--toggle-diameter); background: var(--primaryColor); border-radius: 50%; position: absolute; top: var(--button-toggle-offset); -webkit-transform: translateX(var(--button-toggle-offset)); transform: translateX(var(--button-toggle-offset)); box-shadow: var(--toggle-shadow-offset) 0 calc(var(--toggle-shadow-offset) * 4) rgba(0, 0, 0, 0.1); transition: 0.3s all ease-in-out; }
.switch input[type="checkbox"]:checked + .sslider { background: var(--secondaryColor); }
.switch input[type="checkbox"]:checked + .sslider::after { -webkit-transform: translateX(calc(var(--button-width) - var(--toggle-diameter) - var(--button-toggle-offset))); transform: translateX(calc(var(--button-width) - var(--toggle-diameter) - var(--button-toggle-offset))); box-shadow: calc(var(--toggle-shadow-offset) * -1) 0 calc(var(--toggle-shadow-offset) * 4) rgba(0, 0, 0, 0.1); }
.switch input[type="checkbox"] { display: none; }
.switch input[type="checkbox"]:active + .sslider::after { width: var(--toggle-wider); }
.switch input[type="checkbox"]:checked:active + .sslider::after { -webkit-transform: translateX(calc(var(--button-width) - var(--toggle-wider) - var(--button-toggle-offset))); transform: translateX(calc(var(--button-width) - var(--toggle-wider) - var(--button-toggle-offset))); }
/*----------------*/
/* !RANGE */
/*----------------*/
input[type="range"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; background: none; cursor: pointer; border-radius: 5px; border: none; }
/* Thumb (le curseur) */
input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 16px; height: 16px; background: var(--backgroundColor); border-radius: 50%; box-shadow: 0 0 2px 0 #000; border: 1px solid var(--secondaryColor); -webkit-transition: all .5s; transition: all .5s; -webkit-transform: translateY(calc(-50% + 2px)); transform: translateY(calc(-50% + 2px)); }
input[type="range"]::-moz-range-thumb { width: 16px; height: 16px; background: var(--backgroundColor); border-radius: 50%; box-shadow: 0 0 2px 0 #000; border: 1px solid var(--backgroundColor); -moz-transition: all .5s; transition: all .5s; }
/* Hover sur le curseur */
input[type="range"]:hover::-webkit-slider-thumb { border: 1px solid var(--secondaryColor); }
input[type="range"]:hover::-moz-range-thumb { border: 1px solid var(--secondaryColor); }
/* Track (la barre) */
input[type="range"]::-webkit-slider-runnable-track { background-color: color-mix(in srgb, var(--primaryColor), black 10%); height: 5px; border-radius: 5px; }
input[type="range"]::-moz-range-track { background-color: color-mix(in srgb, var(--backgroundColor), black 10%); border-radius: 5px; }
/* Progress (la partie remplie - Firefox uniquement) */
input[type="range"]::-moz-range-progress { background-color: color-mix(in srgb, var(--secondaryColor), transparent 40%); border-radius: 5px; }
/* time */
input[type="time"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="time"]::-webkit-calendar-picker-indicator { display: none; }
/*--------------*/
/* !TOGGLE      */
/*--------------*/
.toggle { display: block; cursor: pointer; padding: 10px; margin: 0; border: 1px solid var(--secondaryColor); }
.toggle i { display: flex; justify-content: center; flex-direction: column; align-items: center; flex-wrap: wrap; position: relative; width: 100%; height: 100%; }
.toggle span { display: block; transition: all 0.5s; height: 1px; width: 100%; margin: 4px 0; position: relative; -webkit-transform-origin: top left; transform-origin: top left; background: var(--toggleColor); }
/*------------------*/
/* !ACTION deploy_h */
/*------------------*/
header, main, footer { left: 0; position: relative; transition: all 0.5s; }
.deploy_h header, .deploy_h main, .deploy_h footer { left: var(--mobileMenuSize); transition: all 0.5s; }
.deploy_h #menu { left: 0 !important; box-shadow: 3px 0 5px -2px color-mix(in srgb, var(--primaryColor), transparent 80%); transition: left 500ms cubic-bezier(1, 0, 0, 1) 0ms, -webkit-transform 500ms cubic-bezier(1, 0, 0, 1) 0ms; transition: transform 500ms cubic-bezier(1, 0, 0, 1) 0ms, left 500ms cubic-bezier(1, 0, 0, 1) 0ms; transition: transform 500ms cubic-bezier(1, 0, 0, 1) 0ms, left 500ms cubic-bezier(1, 0, 0, 1) 0ms, -webkit-transform 500ms cubic-bezier(1, 0, 0, 1) 0ms; }
.deploy_h { overflow: hidden; position: fixed; width: 100%; }
/*-----------------*/
/* !TOGGLE STYLES */
/*---------------*/
.hotdog i { -webkit-transform: rotate(-10deg); transform: rotate(-10deg); }
.hotdog span { margin: 5px 0 0; height: 1.5px; }
.hotdog span:nth-child(1) { width: 22px; }
.hotdog span:nth-child(2) { width: 32px; }
.hotdog span:nth-child(3) { width: 22px; }
.hotdog:hover span:nth-child(1) { width: 24px; }
.hotdog:hover span:nth-child(2) { width: 20px; }
.hotdog:hover span:nth-child(3) { width: 12px; }
.deploy_h .hotdog i { -webkit-transform: rotate(0); transform: rotate(0); }
.deploy_h .hotdog span:nth-child(1) { -webkit-transform: rotate(45deg) translate(1px, -4px); transform: rotate(45deg) translate(1px, -4px); }
.deploy_h .hotdog span:nth-child(2) { width: 0; }
.deploy_h .hotdog span:nth-child(3) { -webkit-transform: rotate(-45deg) translate(1px, 3px); transform: rotate(-45deg) translate(1px, 3px); }
/* Burger style */
.burger:hover span:nth-child(1) { width: 26px; }
.burger:hover span:nth-child(2) { width: 20px; }
.burger:hover span:nth-child(3) { width: 26px; }
.deploy_h .burger span:nth-child(1) { -webkit-transform: rotate(45deg) translate(1px, -4px); transform: rotate(45deg) translate(1px, -4px); }
.deploy_h .burger span:nth-child(2) { width: 0; }
.deploy_h .burger span:nth-child(3) { -webkit-transform: rotate(-45deg) translate(1px, 3px); transform: rotate(-45deg) translate(1px, 3px); }
/* Fries style */
.fries i { align-items: center; }
.fries span { margin: 2.5px 0; }
.fries span:nth-child(1) { width: 18px; }
.fries span:nth-child(2) { width: 24px; }
.fries span:nth-child(3) { width: 18px; }
.fries:hover span:nth-child(1) { width: 24px; }
.fries:hover span:nth-child(2) { width: 26px; }
.fries:hover span:nth-child(3) { width: 12px; }
.deploy_h .fries span:nth-child(1) { -webkit-transform: rotate(45deg) translate(0, -5px); transform: rotate(45deg) translate(0, -5px); width: 30px; }
.deploy_h .fries span:nth-child(2) { width: 0; }
.deploy_h .fries span:nth-child(3) { -webkit-transform: rotate(-45deg) translate(-1px, 4px); transform: rotate(-45deg) translate(-1px, 4px); width: 30px; }
/* Named style */
.named { width: auto; height: auto; }
.named span { height: auto; width: auto; background: none; font-style: normal; margin: 0; }
.named span:before { content: attr(data-named-on); white-space: nowrap; width: 100%; height: 100%; color: var(--toggleColorContrast); }
.deploy_h .named span:before, .e_deploy_h .named span:before { content: attr(data-named-off); width: 100%; height: 100%; color: var(--toggleColorContrast); }
/* Choco style */
.choco i { justify-content: space-between; }
.choco span { height: 4px; width: 4px; margin: 2px; -webkit-transform-origin: center left; transform-origin: center left; }
.choco:hover span:nth-child(1) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .1s; animation-delay: .1s; }
.choco:hover span:nth-child(2) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .2s; animation-delay: .2s; }
.choco:hover span:nth-child(3) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .3s; animation-delay: .3s; }
.choco:hover span:nth-child(4) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .4s; animation-delay: .4s; }
.choco:hover span:nth-child(5) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .5s; animation-delay: .5s; }
.choco:hover span:nth-child(6) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .6s; animation-delay: .6s; }
.choco:hover span:nth-child(7) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .7s; animation-delay: .7s; }
.choco:hover span:nth-child(8) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .8s; animation-delay: .8s; }
.choco:hover span:nth-child(9) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .9s; animation-delay: .9s; }
.deploy_h .choco:hover span { -webkit-animation: none; animation: none; }
.deploy_h .choco span { width: 100%; height: 2px; display: none; }
.deploy_h .choco span:nth-child(1) { -webkit-transform: rotate(45deg) translate(1px, 0px); transform: rotate(45deg) translate(1px, 0px); display: block; }
.deploy_h .choco span:nth-child(3) { -webkit-transform: rotate(-45deg) translate(1px, 0px); transform: rotate(-45deg) translate(1px, 0px); display: block; }
/* Bento style */
.bento i { justify-content: space-between; }
.bento span { height: 4px; width: 4px; border-radius: 4px; margin: 2px; }
.bento:hover span:nth-child(1) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .1s; animation-delay: .1s; }
.bento:hover span:nth-child(2) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .2s; animation-delay: .2s; }
.bento:hover span:nth-child(3) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .3s; animation-delay: .3s; }
.bento:hover span:nth-child(4) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .4s; animation-delay: .4s; }
.bento:hover span:nth-child(5) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .5s; animation-delay: .5s; }
.bento:hover span:nth-child(6) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .6s; animation-delay: .6s; }
.bento:hover span:nth-child(7) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .7s; animation-delay: .7s; }
.bento:hover span:nth-child(8) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .8s; animation-delay: .8s; }
.bento:hover span:nth-child(9) { -webkit-animation: opa .9s infinite forwards; animation: opa .9s infinite forwards; -webkit-animation-delay: .9s; animation-delay: .9s; }
.deploy_h .bento:hover span { -webkit-animation: none; animation: none; }
.deploy_h .bento span { width: 100%; height: 2px; display: none; }
.deploy_h .bento span:nth-child(1) { -webkit-transform: rotate(45deg) translate(1px, 0px); transform: rotate(45deg) translate(1px, 0px); display: block; }
.deploy_h .bento span:nth-child(3) { -webkit-transform: rotate(-45deg) translate(1px, 0px); transform: rotate(-45deg) translate(1px, 0px); display: block; }
/**/
@-webkit-keyframes opa { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }
@keyframes opa { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }
/*---------------*/
/* !DROPDOWN     */
/*---------------*/
.dropdown * { transition: all .5s; }
.dropdown { position: relative; display: table; margin: 10px auto; }
.dropdown p.current { font-size: 1.6rem; font-weight: 400; line-height: 2; white-space: nowrap; cursor: pointer; padding: 5px 20px; margin: 0; display: flex; align-items: center; position: relative; background: var(--secondaryColor); color: var(--secondaryColorContrast); border-radius: 50vh; }
.dropdown p.current span { margin: 0 10px; }
.dropdown p.current:after { content: '\e98e'; font-family: 'colibri'; margin: 0 0 0 20px; }
/**/
.dropdown ul { position: absolute; left: 50%; top: calc(100% - 10px); -webkit-transform: translateX(-50%); transform: translateX(-50%); width: calc(100% - 20px); padding: 0; margin: 0; background: var(--secondaryColor); display: flex; flex-direction: column; opacity: 0; z-index: 100; border-radius: 0 0 20px 20px; pointer-events: none; }
.dropdown ul li { list-style: none; margin: 0; height: 0; overflow: hidden; cursor: pointer; }
.dropdown ul li:hover, .dropdown ul li.active { background: color-mix(in srgb, var(--primaryColor), transparent 90%); border-radius: 30px; }
.dropdown ul li a { color: var(--secondaryColorContrast); white-space: nowrap; padding: 5px 20px; display: flex; align-items: center; justify-content: center; text-decoration: none; }
/**/
.dropdown.show ul { padding: 10px; opacity: 1; pointer-events: auto; }
.dropdown.show ul li { height: 100%; overflow: visible; margin: 2px 0; }
.dropdown.show p.current:after { content: '\e98f'; }
/**/
.sortBy {}
/**/
.filterBy ul { position: relative; margin: -5px 0 0; }
.filterBy ul li a { height: 0; padding: 0; }
.filterBy.show ul li a { height: 34px; }
/**/
.bordered { border: 1px solid color-mix(in srgb, var(--primaryColor), transparent 70%); border-radius: 30px; overflow: hidden; }
.bordered ul { width: 100%; margin: 0; background: var(--backgroundColor); color: var(--primaryColor); }
.bordered p.current { background: var(--backgroundColor); color: var(--primaryColor); }
.bordered.show { border-radius: 20px; }
/*----------------*/
/* !SOCIAL SHARING*/
/*----------------*/
.social_sharing * { transition: all .5s; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transform: translateZ(0) scale(1, 1); transform: translateZ(0) scale(1, 1); }
/* Configuration : ToRight / Origin Left / 6 items / Size 40px */
.social_sharing { position: relative; right: 10px; margin: 5px 0; z-index: 1100; width: 240px; overflow: hidden; -webkit-transform-origin: 20px 20px; transform-origin: 20px 20px; -webkit-transform: rotate(0deg) translate(0px, 0px); transform: rotate(0deg) translate(0px, 0px); }
.social_sharing #social_btn { z-index: 20; position: relative; cursor: pointer; }
.social_sharing a { display: block; color: var(--primaryColor); background: var(--ssBg); border: var(--ssBorder); line-height: 40px; width: 40px; height: 40px; font-weight: normal; text-align: center; font-size: 1.6rem; -webkit-transform: rotate(0deg); transform: rotate(0deg); border-radius: var(--ssborderRadius); }
.social_sharing a:hover { color: var(--secondaryColor); background: var(--ssBgHover); border: var(--ssBorderHover); text-decoration: none;}
/**/
.social_icons { position: absolute; left: 0; top: 0; margin: 0; padding: 0; display: flex; flex-direction: row-reverse; -webkit-transform: translate(-100%, 0); transform: translate(-100%, 0); transition: all .5s; }
.social_icons li { list-style: none !important; width: 40px; height: 40px; opacity: .8; margin: 0 2px !important; }
.social_icons li:hover { opacity: 1; }
.social_icons span { display: none; }
/**/
.social_sharing.showed .social_icons { -webkit-transform: translate(40px, 0); transform: translate(40px, 0); }
/* !COMPONENTS (Specific) */
/*----------------*/
/* !EDITO */
/*----------------*/
.edito{ margin:20vh auto 0; padding:0; position: relative; width:100%; display: flex; flex-wrap: wrap; justify-content: space-around; align-items: center;}
.edito .head{ max-width: 44%; padding:0 6%;}
.edito .imgs{ max-width: 52%; max-height: 80vh; aspect-ratio: 1/1; overflow: hidden; -webkit-mask:url("../images/mask.svg") no-repeat; mask:url("../images/mask.svg") no-repeat; -webkit-mask-size:100%; mask-size:100%; position: relative; order: 1; margin: 0 4% 0 0;}
.edito .imgs img, .edito .imgs video{ width: 100%;}
.edito .txt{ margin: 0 0 20px;}
/**/
@media all and (max-width:480px) {
	.edito{ margin:60px auto 0;}
	.edito > div{ max-width: 90% !important;}
	.edito .imgs{ margin: 60px auto 0;}
}
/*----------------*/
/* !IMAGEUNIQUE */
/*----------------*/
.imageunique { position: relative; margin: 0 auto; display: flex; flex-direction: column; width: 74%;}
.home .imageunique { height: 96vh; width: 100%; flex-direction: row; align-items: center; justify-content: space-around;}
.noiimg .imageunique { height: 34vh; }
/**/
.home .imageunique .iimg { width: 100%; height: 100%; position: relative;}
.imageunique .iimg img, .imageunique .iimg picture, .imageunique .iimg video { -o-object-fit: cover; object-fit: cover; width: 100%; height: 100%; }
.imageunique .iimg .mask_gradient{ position: absolute; top:0; left: 0; width: 100%; height: 100%;
	 background-image:linear-gradient( 180deg, var(--backgroundColor) 0%, color-mix(in srgb, var(--backgroundColor), transparent 100%) 23%, 
	   color-mix(in srgb, var(--backgroundColor), transparent 65%) 72%, var(--backgroundColor) 100%)
 }
.iimg .imageunique .iimg .mask_gradient{ display: none;}
/**/
.home .imageunique .itxt { position:absolute; width:60%; bottom: 0; left: 5%; z-index: 100;}
.home .imageunique .itxt h1 { text-align: left;}
.imageunique .itxt { order: 0; padding:0; text-align: center;}
.imageunique .itxt h1 {}
.imageunique .itxt .rtn { justify-content: center; text-transform: none; font-size: 1.4rem; font-style: italic; letter-spacing:0; font-weight: 500;}
/**/
@media all and (max-width: 480px) {
	.home .imageunique .itxt{ width: 90%;}
	.imageunique{ width: 84%;}
}
@use '../base/index' as *;
/*---------------*/
/* !SLIDER Home */
/*---------------*/
.cycle-slideshow{  position: relative; overflow: hidden;}
.slide { width: 100%;}
.slide img { width: 100%;}
/**/
.sliderCaption { position: absolute; top:0; right:8%; z-index:200; width:42%; min-height:364px; padding: 60px; max-width: 1160px; background: $secondaryColor;}
.services .mask_gradient{width: 100%;	height: 100%; -webkit-transform: scaleY(-1); transform: scaleY(-1); background-image: linear-gradient(180deg, #B9AF97 2%, rgba(185,175,151,0.00) 47%, #B9AF97 98%); position: absolute; top:0; left: 0;}
/**/
.controls{ position: absolute; top:10px; right:calc(8% + 10px); z-index: 300; display: flex; align-items: center; justify-content: flex-end;}
.controls button{ background: none; border: none; color: $primaryColor; padding:0; margin: 0; height:46px; width:46px; text-align: center; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 1s;}
.controls button:before{ content:'\e98d'; font-size: 3rem; font-family:'Colibri';}
.controls button.next:before{ content:'\e990';}
/**/
@media all and (max-width: 480px) {	
}
/*---------------------------*/
/* !NEWS HOME Forme encarts  */
/*---------------------------*/
.news_home_encarts { width:76%; max-width: var(--max-width); position: relative; padding: 0; margin:12vw auto;}
.news_home_encarts h2 { margin: 0 0 10px; color: var(--secondaryColorContrast); }
/* txt */
.news_home_encarts .swiper-content{ width:47%; height:270px; padding:35px 50px; background:#1D1D1B; border-radius: 20px; position: absolute; top:50%; left: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index: 10;}
.news_home_encarts .swiper-content time{ color: var(--backgroundColor); text-transform: uppercase; font-size: 1.2rem;}
.news_home_encarts .swiper-content h2{ margin: 20px; font-size: 3rem; font-weight:400; line-height: 1;}
.news_home_encarts .swiper-content a{ color: var(--backgroundColor); padding:10px 0;}
.news_home_encarts .swiper-content a:hover{ padding:10px 20px;}
/* imgs */
.news_home_encarts .swiper{ height:30vw; width:56%; margin: 0 0 0 auto; border-radius:30px;}
.news_home_encarts .swiper-slide{ display: flex; justify-content: center;}
.news_home_encarts .swiper-slide img { height: 100%; max-width: 100%; -o-object-fit: cover; object-fit: cover; border-radius:30px;}
/* nav */
.news_home_encarts .swiper-nav{ position: absolute; top: 10px; right:10px; z-index:30; display:flex;}
.news_home_encarts .swiper-nav button{ background: none; color:var(--backgroundColor); border: none; padding:0; margin:0; height:40px; width:40px; text-align: center; display: flex; align-items: center; justify-content: center; cursor: pointer; border-radius: 10px; transition: all .5s;}
.swiper-nav button:before{ content:'\e9ee'; font-size:2.2rem; font-family:'Colibri';}
.swiper-nav button.swiper-next:before{ content:'\e9ef';}
.news_home_encarts .swiper-nav button:hover{ background: oklch(from var(--backgroundColor) l c h / 0.05);}
/* pagination */
.news_home_encarts .swiper-pagination{ position: absolute; left:auto; right: 58%; width:auto; bottom:30px;}
.news_home_encarts .swiper-pagination-bullet-active{ background: var(--primaryColor)}
/*---------------------------*/
/* !NEWS HOME Forme Carousel  */
/*---------------------------*/
.news_home_carou { width:100%; position: relative; padding: 0; margin: 0 auto;}
.news_home_carou h2 { margin: 0 0 10px; color: var(--secondaryColorContrast);}
/* imgs */
.news_home_carou .swiper-wrapper{ display: flex; align-items: center;}
.news_home_carou .swiper-slide article > div{ padding:15px 25px;}
.news_home_carou .swiper-slide article .categ{font-size: 1.2rem; font-weight:500; padding:0; margin: 0;}
.news_home_carou .swiper-slide article h3{ font-size:2rem; font-weight: 400; margin:10px 0;}
.news_home_carou .swiper-slide article img { width: 100%; border-radius: 20px}
.news_home_carou .swiper-slide article a{ position: absolute; top:0; left: 0; width: 100%; height: 100%;}
/* nav */
.news_home_carou .swiper-nav{ width: 100vw; position:absolute; left:50% !important; top:50%; z-index: 10; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); display: flex; justify-content: space-between;}
.news_home_carou .swiper-nav button{ border: none; cursor: pointer; width: 50px; height: 50px; border-radius: 0 28px 28px 0; margin: 0; background:var(--secondaryColor); color: var(--secondaryColorContrast); transition: all .5s;}
.news_home_carou .swiper-nav button.swiper-next{ border-radius: 28px 0 0 28px;}
.news_home_carou .swiper-nav button:hover{ background:var(--primaryColor); color: var(--backgroundColor);}
/*---------------*/
/* !NEWS LISTING */
/*---------------*/
.news_listing * { transition: .5s all; }
.news_listing { display: flex; margin: 0 auto; flex-direction: column; padding: 0; }
.news_listing h1 { width: 100%; text-align: center; margin: 0 0 10px;}
.news_listing h1:before { left: 50%; top: -20px; -webkit-transform: translateX(-100%); transform: translateX(-100%); }
.news_listing h2 { width: 100%; text-align: center; }
.news_listing .content { flex: 1 1 80%; order: 2; }
.news_listing aside { order: 1; }
/**/
.news_grid { margin: 0 auto; }
.news_grid article { display: inline-block; width: 300px; box-shadow: 0 2px 34px 0 rgba(0, 0, 0, 0.08); text-align: center; margin: 15px; position: relative; background: var(--backgroundColor); border-radius: 10px; overflow: hidden; }
.news_grid article img { width: 100%; }
.news_grid .category { font-size: 1.1rem; font-weight: 600; text-transform: uppercase; padding: 5px 10px; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); margin: 0; display: inline-block; position: absolute; left: 50%; border-radius: 5px; background: var(--secondaryColor); color: var(--secondaryColorContrast); }
.news_grid article h3 { font-size: 1.6rem; padding: 0; letter-spacing: 1px; overflow: hidden; margin: 20px 0 0; color: var(--primaryColor); }
.news_grid article time { font-size: 1.1rem; font-weight: 600; color: var(--secondaryColorContrast); text-transform: uppercase; padding: 5px 20px; display: block; clear: both; letter-spacing: 1px; }
.news_grid article > div { padding: 0 20px 20px; overflow: hidden; margin: 0; }
.news_grid article > div p { font-size: 1.2rem; font-weight: 400; }
.news_grid article a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.news_grid article:hover { -webkit-transform: scale(.95); transform: scale(.95); }
/**/
.loadmore { display: block; border: none; background: var(--primaryColor); color: var(--backgroundColor); padding: 10px 25px; border-radius: 50vh; font-size: 1.6rem; margin: 30px auto; cursor: pointer; transition: all .5s; }
.loadmore:hover { background: var(--secondaryColor); color: var(--secondaryColorContrast); }
/*---------------*/
/* !NEWS DETAILS */
/*---------------*/
.news_details { display: flex; max-width: var(--maxWidth); }
.news_details h1 { margin: 20px 0; text-align: left; }
.news_details .category { font-size: 1.1rem; font-weight: 600; text-transform: uppercase; padding: 5px 10px; margin: 0 !important; background: var(--secondaryColor); color: #FFF; display: inline-block; border-radius: 5px; }
.news_details time { font-size: 1.4rem; font-weight: 400; text-transform: uppercase; display: block; letter-spacing: 1px; margin: 10px 0; }
.news_details .head { margin: 0 0 40px 40px; float: right; max-width: 50%; }
.news_details .head img { max-width: 100%; border-radius: 10px; }
/**/
@-webkit-keyframes animArrow { 0% { -webkit-transform: translateX(2px); transform: translateX(2px); } 50% { -webkit-transform: translateX(-5px); transform: translateX(-5px); } 100% { -webkit-transform: translateX(5px); transform: translateX(5px); } }
@keyframes animArrow { 0% { -webkit-transform: translateX(2px); transform: translateX(2px); } 50% { -webkit-transform: translateX(-5px); transform: translateX(-5px); } 100% { -webkit-transform: translateX(5px); transform: translateX(5px); } }
.rtn { font-size: 1rem; letter-spacing: .5px; text-transform: uppercase; color: var(--primaryColor); margin: 0 auto 10px; padding: 0; line-height: 3rem; display: flex !important; align-items: center; }
.rtn:hover { text-decoration: none; color: var(--primaryColor); }
.rtn:before { content: '\e9ea'; font-family: "Colibri"; font-size: 1.6rem; color: var(--primaryColor); margin: 0 5px 0 0; }
.rtn:hover:before { -webkit-animation: animArrow 1s infinite forwards; animation: animArrow 1s infinite forwards; }
/**/
@media all and (max-width: 480px) { 
	.news_grid article { margin: 10px auto; width: 100%; } 
	.news_listing { margin: 0 auto; min-width: 0; width: 84%; padding: 0; } 
	.news_listing aside { margin: 0 auto; width: 300px; } 
	.news_listing h1 { text-align: center; font-size: 3rem; margin: 10px 0; } 
	.news_details .head { max-width: 100%; margin: 0 0 20px; } 
	.news_details .category { margin: 0; } 
	.news_details time { font-size: 11px; font-weight: 600; color: var(--secondaryColor); letter-spacing: 0; text-transform: uppercase; } 
	/**/
	.news_home_encarts{ width: 90%;}
	.news_home_encarts .swiper{ margin: 0; width: 100%; height: 30vh}
	.news_home_encarts .swiper-content,
	.news_home_encarts .swiper-pagination{ position: relative; width: 100%; top: auto; left: auto; right: auto; bottom: auto; -webkit-transform: none; transform: none; margin: 5px 0;}
	.news_home_encarts .swiper-content{ padding: 20px; height: auto;}
	.news_home_encarts .swiper-content h2{ margin: 0; padding:20px 10px 10px; font-size: 2.6rem;}
}
/*---------------*/
/* !GALLERY*/
/*---------------*/
.gallery{ width:84%; margin: 120px auto;}
.gallery h2{ text-align: center;}
.gallery .g_content{ margin: 0 auto;}
.gallery .g_content a{ display:block; padding:0; width:calc(33.3333% - 40px); margin:20px; transition: all .5s; overflow: hidden; border-radius:20px;}
.gallery .g_content a:hover{ padding: 0;}
.gallery .g_content img{ -o-object-fit: cover; object-fit: cover; min-height: 100%; max-width: 100%; vertical-align: bottom; transition: all .5s;}
.gallery .g_content a:hover img{ -webkit-transform: scale(1.05); transform: scale(1.05);}
.gallery .stamp{  width:30%; height: 10px; background: orange; position: absolute; left: 35%; border-radius: 20px}
/*il faut absolument le height en px*/
/**/
@media all and (max-width: 480px) {	
	.gallery{ margin: 40px auto;}
	.gallery .g_content a{ width:100%; margin:15px 0;}
}
@use '../base/index' as *;
/*---------------*/
/* !GALLERY VIDEO*/
/*---------------*/
.gallery_video{ width:84%; margin: 120px auto;}
.gallery_video .gv_content{ margin: 0 auto; display: flex; flex-wrap: wrap; }
.gallery_video .gv_content > div{ flex: 1 50%; position: relative; padding:10px; position: relative;}
.gallery_video .gv_content > div > div{ transition: all .5s; overflow: hidden; border-radius:30px;}
.gallery_video .gv_content img{ -o-object-fit: cover; object-fit: cover; height: 100%; max-width: 100%; vertical-align: bottom; transition: all .5s;}
.gallery_video .gv_content > div:hover > div> img{ -webkit-transform: scale(1.05); transform: scale(1.05);}
.gallery_video .gv_content img{ color: $secondaryColorContrast; background: $secondaryColor;}
.gallery_video .gv_content img.ico{ background: none; position:absolute; top:50%; left:50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); width: 20%; height: 30%;}
.gallery_video .gv_content a{ position:absolute; top:0; left: 0; height: 100%; width: 100%; transition: all .5s;}
/**/
@media all and (max-width: 480px) {
	.gallery_video{ width:84%; margin: 60px auto;}
	.gallery_video .gv_content a, .gallery_video .gv_content div{ flex: 1  100%; padding: 10px 0}
}
/*----------------*/
/* coachs listing */
/*----------------*/
.coachs_listing * { transition: all .5s; }
.coachs_listing { display: flex; flex-direction: column; padding: 0; margin: 0 auto; }
.coachs_listing h1 { width: 100%; text-align: center; }
.coachs_listing .content { order: 2; margin: 40px 0 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); grid-gap: 30px 30px; }
/**/
.coachs_listing article { position: relative; overflow: hidden; cursor: pointer; }
.coachs_listing article .pic { position: relative; overflow: hidden; border-radius: 20px; background: color-mix(in srgb, var(--primaryColor), transparent 95%); }
.coachs_listing article .pic p { margin: 0; text-align: center; font-size: 1.4rem; font-weight: 550; text-transform: uppercase; }
.coachs_listing article .pic > img { max-width: 100%; transition: all .5s; }
.coachs_listing article .pic > div { position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 80%; height: 80%; opacity: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: all .5s; }
.coachs_listing article:hover .pic img { -webkit-transform: scale(1.05); transform: scale(1.05); }
/**/
.coachs_listing article .descr { position: relative; padding: 20px; }
.coachs_listing article .descr p { font-size: 2rem; font-weight: 500; text-align: center; margin: 0; }
.coachs_listing article .descr > div { position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: 100%; opacity: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.coachs_listing article .descr a { display: inline-block; font-size: 1.2rem; background: color-mix(in srgb, var(--primaryColor), transparent 95%); color: var(--primaryColor); border-radius: 40px; padding: 8px 24px; margin: 5px 5px 5px 0; text-transform: uppercase; text-decoration: none; }
.coachs_listing article .descr a:hover { background: var(--primaryColor); color: var(--backgroundColor); }
.coachs_listing article .descr a+a { background: var(--secondaryColor); color: var(--secondaryColorContrast); }
.coachs_listing article:hover .descr > div { opacity: 1; }
.coachs_listing article:hover .descr p { opacity: 0; }
/* coachs details */
.coachs_details { width: 100%; display: grid; grid-template-columns: 60% 40%; padding: 0 10%; background: url("../images/bg_coach.svg") no-repeat; background-position: bottom left; }
.coachs_details .head { min-height: auto; }
.coachs_details .head h1 { text-align: left; position: relative; -webkit-transform: none; transform: none; left: auto; bottom: auto; }
.coachs_details aside { grid-column: 1; grid-row: 1 / span 9000; padding: 0 14% 0 0; }
.coachs_details aside .apic { z-index: 0; position: relative; max-width: 640px; margin: 0 auto; }
.coachs_details aside .apic img { width: 100%; border-radius: 50vh; }
.coachs_details aside .acontent { text-align: center; margin: -20px 0 0; position: relative; z-index: 10; }
.coachs_details aside .acontent .btn_color { font-size: 1.4rem; text-transform: uppercase; padding: 8px 34px; }
.coachs_details aside .acontent p { font-size: 1.6rem; }
/* other coachs */
.other_coachs { text-align: center; }
.other_coachs .content { display: flex; justify-content: center; flex-wrap: wrap; }
/**/
@media all and (max-width: 480px) {
	.coachs .coach_item { width: 360px; }
	.coachs_details { grid-template-columns: 100%; text-align: center; padding: 120px 10%; }
	.coachs_details .head h1 { text-align: center; }
	.coachs_details aside { grid-row: 2; padding: 0; }
}
/* !COMPONENTS (Self-employement) */
/* @import "components/datatable/_datatable.css"; */
/* !PAGES */
/*---------------*/
/* !SERVICES     */
/*---------------*/
.services { position: relative; margin:0; padding: 120px 0 0; width: 100%; }
.services .swiper-slide { position: relative; }
.services .swiper-slide img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
.services .mask_gradient { width: 100%; height: 100%; -webkit-transform: scaleY(-1); transform: scaleY(-1); background-image: linear-gradient(180deg, #B9AF97 2%, rgba(185, 175, 151, 0) 47%, #B9AF97 98%); position: absolute; top: 0; left: 0; z-index: 10; }
.services .swiper-content { position: absolute; top: 0; right: 8%; z-index: 20; width: 42%; min-height: 304px; padding: 60px; max-width: 1160px; background: #201f1e; min-width: 460px; }
/**/
.services .swiper-nav { position: absolute; top: 10px; right: calc(8% + 10px); z-index: 30; display: flex; }
.services .swiper-nav button { background: none; border: none; color: var(--primaryColor); padding: 0; margin: 0; height: 40px; width: 40px; text-align: center; display: flex; align-items: center; justify-content: center; cursor: pointer; border-radius: 10px; transition: all .5s; }
.swiper-nav button:before { content: '\e9ee'; font-size: 2.2rem; font-family: 'Colibri'; }
.swiper-nav button.swiper-next:before { content: '\e9ef'; }
.services .swiper-nav button:hover { background: color-mix(in srgb, var(--primaryColor), transparent 95%); }
/*---------------*/
/* !ACTIVITES    */
/*---------------*/
.h_activite { width: 90%; margin: 60px 0 100px 10%; }
.h_activite .head { display: flex; justify-content: space-between; align-items: center; padding: 0; }
.h_activite .head h2 { margin: 50px 0; }
.h_activite .swiper-wrapper img { width: 100%; }
.h_activite article { position: relative; }
.h_activite article h3 { background: var(--secondaryColor); color: var(--secondaryColorContrast); text-transform: uppercase; font-size: 1.6rem; font-weight: 700; letter-spacing: 1px; padding: 20px 28px; margin: 0 0 0 4%; width: 80%; min-height: 80px; -webkit-transform: translateY(-70%); transform: translateY(-70%); }
.h_activite article a { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
/*---------------*/
/* !HOME APP     */
/*---------------*/
.h_app { width: 100%; aspect-ratio: 1265/522; background: url("../images/bg_app.jpg") no-repeat center center / 100%; position: relative; }
.h_app .descr { position: absolute; top: 50%; right: 10%; width: 40%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.h_app .descr p { font-size: 1.4rem; padding: 10px 40px; }
.h_app .descr .more { background: var(--secondaryColor); margin: 0 10px 0 0; height: 46px; border: none; }
/*---------------*/
/* !Suites       */
/*---------------*/
.suites article { display: flex; justify-content: space-between; align-items: flex-start; position: relative; z-index: 1; margin: 60px auto; border: 1px solid color-mix(in srgb, var(--primaryColor), transparent 60%); border-radius: 30px; padding: 20px; }
.suites article .img { overflow: hidden; border-radius: 20px; }
.suites article img { width: 100%; }
.suites article:nth-of-type(odd) .img { order: 1; }
.suites article .descr { flex: 0 0 34%; margin: 0 4%; }
.suites_details .content > p { border: 1px solid color-mix(in srgb, var(--secondaryColorContrast), transparent 60%); font-size: 1.4rem; color: var(--secondaryColorContrast); padding: 10px 25px; margin: 5px; border-radius: 10px; }
/*---------------*/
/* !CLUB         */
/*---------------*/
.club aside { background: #292725; color: var(--secondaryColorContrast); }
[class*="nova-"] { background: #201F1E; color: var(--secondaryColorContrast); border-radius: 50vh; font-size: 2.4rem; padding: 15px; margin: 5px 5px 5px 0; font-family: 'colibri'; line-height: 1; }
[class*="nova-"]:hover { background: var(--primaryColor); color: var(--backgroundColor); }
.nova-call:before { content: "\e907"; }
.nova-whatsapp:before { content: "\f234"; }
.nova-mail:before { content: "\e977"; }
.nova-text { font-size: 1.4rem; padding: 12px 34px; background: var(--secondaryColor); color: var(--secondaryColorContrast); font-family: var(--sansserifFont); }
.activites_list { display: flex; flex-wrap: wrap; }
.activites_list a { border: 1px solid color-mix(in srgb, var(--secondaryColorContrast), transparent 60%); font-size: 1.4rem; color: var(--secondaryColorContrast); padding: 10px 25px; margin: 5px; border-radius: 10px; }
.activites_list a:hover { background: var(--secondaryColorContrast); color: var(--backgroundColor); }
/*---------------*/
/* !MEDIA QUERIES*/
/*---------------*/
@media all and (max-width: 480px) {
    .services { padding: 0; margin: 0; }
    .services .swiper-content { width: 94%; position: relative; top: auto; right: auto; margin: 0 auto; padding: 30px; min-height: 264px; min-width: 0; }
    .services .swiper-nav { display: none; }
    .h_activite { width: 100%; margin: 0; }
    .h_activite .head h2 { margin: 40px auto; }
    .h_activite article h3 { padding: 10px; font-size: 1.4rem; width: 90%; }
    .h_app { background: url("../images/bg_app.jpg") no-repeat top center / 100%; display: flex; justify-content: flex-end; aspect-ratio: auto; }
    .h_app .descr { position: relative; top: auto; right: auto; -webkit-transform: none; transform: none; width: 90%; margin: 150px auto 0; }
    .h_app .descr p { padding: 0 10px; text-align: center; }
    .suites article { flex-direction: column; }
    .suites article:nth-of-type(2n+1) .img { order: 0; }
    .suites article .descr { width: 100%; }
}
/* !VENDORS OVERRIDES */
/*------------------*/
/* !Tarte au citron */
/*------------------*/
#tarteaucitronRoot #tarteaucitronAlertBig{ background: var(--secondaryColor) !important}
#tarteaucitronAlertBig #tarteaucitronPersonalize2, #tarteaucitronAllDenied2, #tarteaucitronCloseAlert{
background:none !important; color: var(--secondaryColorContrast) !important; border:1px solid color-mix(in srgb, var(--secondaryColorContrast), transparent 50%) !important; font-size: 1.4rem !important;}
#tarteaucitronAlertBig #tarteaucitronAllDenied2{ border:none !important;}
#tarteaucitronAlertBig #tarteaucitronCloseAlert{ background: var(--secondaryColorContrast) !important; color: var(--secondaryColor) !important;}
/**/
#tarteaucitronAlertBig #tarteaucitronPersonalize2:hover, #tarteaucitronAlertBig #tarteaucitronAllDenied2:hover{background: var(--secondaryColorContrast) !important; color: var(--secondaryColor) !important;}
#tarteaucitronAlertBig #tarteaucitronCloseAlert:hover{ background: var(--secondaryColor) !important; color: var(--secondaryColorContrast) !important;}
/*---------------*/
/* !VANILLA ROOT */
/*---------------*/
html { font-size: var(--fontSizeHtml); scroll-behavior: smooth; }
body { color: var(--primaryColor); font-family: var(--sansserifFont); overflow-x: hidden; background: var(--backgroundColor);}
/* Titres */
h1 { font-size: 5rem; font-weight:400; margin: 0 0 50px; line-height:1;}
h2 { font-size: 3.2rem; font-weight: 300; margin: 30px 0; line-height:1;}
h3 { font-size: 2.4rem; font-weight: 500; margin: 20px 0; }
h4 { font-size: 1.8rem; font-weight: 500; margin: 10px 0; }
h5 { font-size: 1.6rem; font-weight: 500; margin: 10px 0; }
/**/
.home h2{ font-size: 5rem; font-weight:300;}
/**/
[class^="h"] strong { font-weight:bold; }
/* Éléments textuels */
p { font-size: 1.6rem; font-weight: normal; color: var(--primaryColor); margin: 0 0 10px; }
a { font-size: 1.6rem; font-weight: normal; color: var(--linkColor); padding: 0 5px; transition: all .5s; text-decoration: none; }
a:hover { color: var(--linkHover); text-decoration: none; }
ul, ol { font-size: 1.6rem; font-weight: normal; margin: 10px; list-style-position: inside; }
ul li { list-style-type: none;}
blockquote { font-size: 1.6rem; color: var(--primaryColor); font-style: italic; padding:10px 30px; margin:40px 0; position: relative; border-left: 6px solid var(--secondaryColor); }
blockquote h2 { margin: 10px 0 30px; }
::-moz-selection { background: var(--secondaryColor); color: var(--secondaryColorContrast); }
::selection { background: var(--secondaryColor); color: var(--secondaryColorContrast); }
/**/
.video { height: 0; padding-top: 25px; padding-bottom: 56.25%; margin-bottom: 10px; position: relative; overflow: hidden; }
.video iframe, .video object, .video embed, .video video { top: 0; left: 0; width: 100%; height: 100%; position: absolute; }
/**/
#mute { position: absolute;right: 3vw;top: 50%;font-size: 2.2rem;z-index: 200; cursor: pointer; height: 40px; width: 40px; display:flex; align-items: center; justify-content: center;}
/*---------------*/
/* !GEN          */
/*---------------*/
main { margin: 0 auto; padding: 180px 0; position: relative; }
.home main{ padding: 0;}
main > section { margin: 0 auto; padding: 0; width: 84%; }
.insta { margin: 80px auto 0; }
.insta h2 { margin: 40px 0; }
.rgpd_text { padding: 10px; }
.rgpd_text label { align-items: flex-start; }
.rgpd_text a, .rgpd_text p, .rgpd_text { font-size: 1.2rem; font-style: italic; margin: 0 !important; display: inline-block; }
/*---------------------------*/
/* !PROJET HOME CAROUSEL  */
/*---------------------------*/
.projet_home_carou { width:120%; position: relative; padding: 0; margin:0 -10%;}
.projet_home_carou h2 { margin: 0 0 10px; color: var(--secondaryColorContrast);}
/* imgs */
.projet_home_carou .swiper-slide:nth-child(even){ margin:100px 0 0; -webkit-transform: scale(.9); transform: scale(.9); transition: all .5s}
.projet_home_carou .swiper-slide article{ position: relative; overflow: hidden; border-radius:60px}
.projet_home_carou .swiper-slide article > div{ padding:15px; position: absolute; bottom: 0; left:5%; background: var(--primaryColor); color: var(--backgroundColor); width:90%; text-align: center; border-radius:30px 30px 0 0; -webkit-transform: translateY(100%); transform: translateY(100%); transition: all .5s;}
.projet_home_carou .swiper-slide article:hover > div{ -webkit-transform: translateY(0); transform: translateY(0) }
.projet_home_carou .swiper-slide article .categ{font-size: 1.2rem; font-weight:500; padding:0; margin: 0 0 5px; color: var(--backgroundColor); text-transform: uppercase;}
.projet_home_carou .swiper-slide article h3{ font-size:2.2rem; font-weight:500; margin:0 0 5px;}
.projet_home_carou .swiper-slide article img { width: 100%;}
.projet_home_carou .swiper-slide article a{ position: absolute; top:0; left: 0; width: 100%; height: 100%;}
/* nav */
.projet_home_carou .swiper-nav{ width: 100vw; position:absolute; left:8%; top:50%; z-index: 10; -webkit-transform: translate(0%,-50%); transform: translate(0%,-50%); display: flex; justify-content: space-between;}
.projet_home_carou .swiper-nav button{ border: none; cursor: pointer; width: 50px; height: 50px; border-radius: 0 28px 28px 0; margin: 0; background:var(--secondaryColor); color: var(--secondaryColorContrast); transition: all .5s;}
.projet_home_carou .swiper-nav button.swiper-next{ border-radius: 28px 0 0 28px;}
.projet_home_carou .swiper-nav button:hover{ background:var(--primaryColor); color: var(--backgroundColor);}
/*------------------*/
/* !PROJETS DETAILS */
/*------------------*/
.projets_details{ display: flex; align-items: flex-start; flex-wrap: wrap; width: 74%;}
.projets_details .content{ flex:1 1 60%; margin:0; padding:100px 0 0 8%;}
.projets_details aside{ flex: 1 1 40%; margin:0; padding:100px 8%;}
.projets_details aside .p_link{ display: block; clear: both; padding:5 0; margin: 10px; color: var(--primaryColor); text-decoration:underline; font-style: italic;}
/*---------------*/
/* !WYSI         */
/*---------------*/
.wysi{ display: flex; align-items: flex-start; flex-wrap: wrap; width:100%; position: relative; z-index: 20; margin:0 auto; padding: 0;}
.wysi .content{ flex:1 1 36%; margin:0 5% 0 10%; padding:0;}
.wysi .content .txt{ padding: 0 5%;}
.wysi aside{ flex: 1 1 40%; padding:0; margin:0; position: relative;}
.wysi aside .apic{ position: relative; z-index: -1; border-radius: 60px 0 0 60px; overflow: hidden}
.wysi aside .apic img{ width: 100%;}
.wysi aside .acontent{ padding:6% 10%; background:var(--secondaryColor); border-radius: 40px; margin: -60px 10% 0;}
.wysi aside .acontent *{ color: var(--secondaryColorContrast);}
/* Jodit */
.jodit-wysiwyg { background: var(--backgroundColor); padding: 4%; margin: 0; }
.jodit-wysiwyg ul li { list-style: inherit; }
/*---------------*/
/* !WYSI ENCARTS */
/*---------------*/
.wysi_encarts { width: 100%; padding: 60px 11%; margin: 0 auto; }
.wysi_encarts > div { display: flex; flex-wrap: wrap; }
.wysi_encarts article { flex: 1 1 auto; margin: 1%; position: relative; overflow: hidden; border-radius: 30px; }
.wysi_encarts article img { width: 100%; transition: all .5s; }
.wysi_encarts article .mask_gradient { position: absolute; bottom: 0; left: 0; height: 60%; width: 100%; z-index: 0; background-image: linear-gradient(0deg, var(--backgroundColor) 0%, color-mix(in srgb, var(--backgroundColor), transparent 20%) 25%, color-mix(in srgb, var(--backgroundColor), transparent 100%) 100%); }
.wysi_encarts article h3 { line-height: 1; color: var(--secondaryColorContrast); position: absolute; bottom: 20px; left: 10%; z-index: 10; margin: 0; width: 80%; }
.wysi_encarts article a { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.wysi_encarts article:hover img { -webkit-transform: scale(1.05); transform: scale(1.05); }
p.rubrique{ text-transform: uppercase; color:var(--secondaryColor); font-weight: 600; font-size: 1.6rem;}
/* col number */
.we2col article { flex: 1 1 48%; }
.we3col article { flex: 1 1 31%; }
.we4col article { flex: 1 1 23%; }
/*-------------------*/
/* !WYSI sur mesure  */
/*-------------------*/
[class*="cflex"] { display: flex; flex-wrap: wrap; }
[class*="cflex"] > div { margin: 1%; }
.cflex_2col > div { width: 48%; }
.cflex_3col > div { width: 31%; }
.cflex_4col > div { width: 23%; }
.cflex_5col > div { width: 18%; }
.jc_center { justify-content: center; }
.jc_between { justify-content: space-between; }
.cflex_column { flex-direction: column; }
/**/
.insert { background: var(--primaryColor); border-radius: 10px; padding: 20px 40px; }
.insert p, .insert h2, .insert h3, .insert h4 .insert ul li  { color: var(--backgroundColor); }
.insert_colored { background-image: linear-gradient(155deg, var(--secondaryColor) 0%, color-mix(in srgb, var(--secondaryColor), transparent 20%) 100%); border-radius: 10px; padding: 20px 40px; }
.insert_colored p, .insert_colored h2, .insert_colored h3, .insert_colored h4, .insert_colored ul li { color: var(--secondaryColorContrast); }
.insert_bordered { border: 2px solid var(--secondaryColor); border-radius: 10px; padding: 20px 40px; }
.insert_bordered p, .insert_bordered h2, .insert_bordered h3, .insert_bordered h4, .insert_bordered ul li { color: var(--secondaryColor); }
/**/
ol.sm { list-style: none; counter-reset: item; }
ol.sm > li { counter-increment: item; margin: 0 0 10px; }
ol.sm > li:before { margin: 0 10px 0 0; content: counter(item); border-radius: 60px; color: var(--primaryColor); font-weight: 600; width: 30px; line-height: 28px; text-align: center; display: inline-block; border: 1.6px solid var(--secondaryColorC); }
.wysi ul li { list-style: disc; list-style-position: inside; margin: 0 0 5px;}
ul.sm > li { list-style-image: url("../images/puce.svg"); list-style-position: inside; margin: 0 0 5px; padding: 0; }
/**/
.numcolor { display: inline-block; border-radius: 50vw; width: 40px; line-height: 30px; padding-bottom: 40px; padding: 5px; background: var(--secondaryColor); color: var(--primaryColor); text-align: center; margin: 0 10px 0 0; }
.cgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); grid-gap: 40px; justify-content: center; }
/**/
.custom_tab { margin: 20px 0; border-radius: 10px; border: 1px solid color-mix(in srgb, var(--primaryColor), transparent 80%); padding: 10px 5px; }
.custom_tab img { max-height: 25px; float: right; }
.custom_tab p { font-weight: 600; font-size: 1.7rem; margin: 5px 15px; }
.custom_tab tr { background: color-mix(in srgb, var(--primaryColor), transparent 95%); margin: 5px; padding: 5px; border-radius: 10px; display: flex; justify-content: space-between; }
.custom_tab td { font-size: 1.5rem; padding: 4px 16px; text-align: left; }
/**/
.custom_tab2 { border-radius: 10px; padding: 10px; background: rgba(43, 42, 41, 0.34); margin: 20px 0; }
.custom_tab2 img { max-height: 25px; float: right; }
.custom_tab2 table { border-radius: 10px; overflow: hidden; }
.custom_tab2 p { font-weight: 600; margin: 0 5px 10px; }
.custom_tab2 td { font-size: 1.4rem; background: color-mix(in srgb, var(--backgroundColor), transparent 60%); padding: 6px 15px; }
.custom_tab2 td:last-child { text-align: right; }
/**/
.custom_tab3 { border-radius: 10px; padding: 10px; background: color-mix(in srgb, var(--primaryColor), transparent 90%); margin: 20px 0; }
.custom_tab3 img { max-height: 20px; float: right; }
.custom_tab3 table { border-radius: 10px; overflow: hidden; }
.custom_tab3 p { font-weight: 600; margin: 0 5px 10px; }
.custom_tab3 td { font-size: 1.4rem; padding: 5px; margin: 0 5px; border-top: 1px solid color-mix(in srgb, var(--primaryColor), transparent 90%); }
.custom_tab3 td:last-child { border-bottom: 1px solid transparent; }
/*---------------------*/
/* !MEDIA QUERIES MAIN */
/*---------------------*/
@media all and (max-width: 810px) {
	.wysi { flex-direction: column; }
	.wysi_encarts { padding: 20px; }
	.wysi_encarts article h3 { font-size: 2.4rem; bottom: 10px; left: 10px; width: calc(100% - 20px); }
	.we2col article, .we3col article, .we4col article { flex: 1 1 100%; }
}
@media all and (max-width: 480px) {
	html { font-size: 56%; }
	h1, .home h2 { font-size: 3.8rem; text-align: left; padding: 0; }
	h2 { font-size: 2.6rem; }
	[class*="cflex"] { flex-direction: column; }
	[class*="cflex"] > div { width: 100%; }
	main { overflow: hidden; padding: 100px 0 0;}
	.wysi .content { margin: 0; width: 100%; padding: 0 20px;}
	.wysi aside { padding: 20px 0 20px 20px; width: 100%; margin: 40px 0; }
	.wysi aside .apic { border-radius: 20px 0 0 20px;}
	.wysi aside .acontent { padding: 0; min-height:100px; border-radius: 20px; padding:10px 20px; margin: -20px 10% 0;}
	.wysi aside .acontent h2{ margin: 20px 0;}
	.rtv_grid article { width: 100%; margin: 10px 0; padding: 10px 20px;}
	footer { margin: 20px auto; }
	footer > div{ flex-direction: column}
	footer .colibri { right: -10px; }
}
/*# sourceMappingURL=main.css.map */