/* convertir ttf en woff2 en ligne : https://transfonter.org/ */
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Thin.woff2') format('woff2');font-weight: 100;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-ThinItalic.woff2') format('woff2');font-weight: 100;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-ExtraLight.woff2') format('woff2');font-weight: 200;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-ExtraLightItalic.woff2') format('woff2');font-weight: 200;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Light.woff2') format('woff2');font-weight: 300;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-LightItalic.woff2') format('woff2');font-weight: 300;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Regular.woff2') format('woff2');font-weight: normal;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Italic.woff2') format('woff2');font-weight: normal;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Medium.woff2') format('woff2');font-weight: 500;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-MediumItalic.woff2') format('woff2');font-weight: 500;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-SemiBold.woff2') format('woff2');font-weight: 600;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-SemiBoldItalic.woff2') format('woff2');font-weight: 600;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Bold.woff2') format('woff2');font-weight: bold;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-BoldItalic.woff2') format('woff2');font-weight: bold;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-ExtraBold.woff2') format('woff2');font-weight: bold;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-ExtraBoldItalic.woff2') format('woff2');font-weight: bold;font-style: italic;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-Black.woff2') format('woff2');font-weight: 900;font-style: normal;font-display: swap;}
@font-face {font-family: 'Poppins';src: url('../fonts/Poppins-BlackItalic.woff2') format('woff2');font-weight: 900;font-style: italic;font-display: swap;}
/*
.svg-primary {fill: #eb0525;}
.svg-secondary {fill: #f07e24;}
.svg-primary {fill: #ff611c;}
.svg-secondary {fill: #f50538;}
*/
:root {
--error: #f82452;
--error-rgb: 239, 68, 68;
--success: #22c55e;
--success-rgb: 34, 197, 94;
--info-rgb: 76, 130, 247;
--warning-rgb: 255, 186, 8;
--danger-rgb: 239, 68, 68;
--white: #fff;
--white-rgb: 255, 255, 255;
--dark: #232323;
--dark-rgb: 35, 35, 35;
--black: #000;
--black-rgb: 0, 0, 0;
--gray-lightest: #f9f9f9;
--gray-lightest-rgb: 249, 249, 249;
--yellow-lightest: #fff8ee;
--yellow-lightest-rgb: 255, 248, 238;
--yellow-rgb: 255, 255, 0;
--yellow-medium-rgb: 255, 186, 8;
/* ===============================================================
	PRIMARY = BLEU ACRONET 
=============================================================== */
--primary-lightest: #e6f4ff;
--primary-lightest-rgb: 230, 244, 255;
--primary-lighter: #bfe4ff;
--primary-lighter-rgb: 191, 228, 255;
--primary-light: #80c9ff;
--primary-light-rgb: 128, 201, 255;
--primary-light-medium: #bac6d2;
--primary-light-medium-rgb: 186, 198, 210;
--primary-medium-light: #3fb0fb;
--primary-medium: #0598f5;
--primary-medium-rgb: 5, 152, 245;
--primary-medium-dark: #047ac4;
--primary-dark: #192340;
--primary-dark-rgb: 25, 35, 64;
--primary-dark-darkest: #0c1320;
--primary-dark-darkest-rgb: 12, 19, 32;
--primary-darkest: #020917;
--primary-darkest-rgb: 2, 9, 23;
/* Teintes complémentaires PRIMARY */
--primary-fluo: #36e3ff;
--primary-fluo-rgb: 36, 227, 255;
--primary-leger: #f0f8ff;
--primary-leger-rgb: 240, 248, 255;
--primary-moyen: #046fb4;
--primary-moyen-rgb: 4, 111, 180;
/* ===============================================================
	SECONDARY = ROUGE ACRONET
=============================================================== */
--secondary-lightest: #ffe6ec;
--secondary-lightest-rgb: 255, 230, 236;
--secondary-lighter: #ffccd9;
--secondary-lighter-rgb: 255, 204, 217;
--secondary-light: #ff99b3;
--secondary-light-rgb: 255, 153, 179;
--secondary-medium-light: #f93a5f;
--secondary-medium: #f50538;
--secondary-medium-rgb: 245, 5, 56;
--secondary-dark: #b6042a;
--secondary-dark-rgb: 176, 4, 42;
--secondary-darkest: #79021c;
--secondary-darkest-rgb: 121, 2, 28;
/* Teintes complémentaires SECONDARY */
--secondary-fluo: #ff2b63;
--secondary-fluo-rgb: 255, 43, 99;
--secondary-leger: #fff0f4;
--secondary-leger-rgb: 255, 240, 244;
--secondary-moyen: #d90431;
--secondary-moyen-rgb: 217, 4, 49;
/* ===============================================================
	Tertiaires / Quaternaires (inchangés)
=============================================================== */
--tertiary-fluo: #fc3cf9;
--tertiary-fluo-rgb: 252, 60, 249;
--tertiary-medium: #8633ff;
--tertiary-medium-rgb: 134, 51, 255;

--quaternary-fluo: #3cfffc;
--quaternary-fluo-rgb: 60, 255, 252;
--quaternary-leger: #37a8ff;
--quaternary-leger-rgb: 55, 168, 255;
--quaternary-medium: #0063cc;
--quaternary-medium-rgb: 0, 99, 204;
--quaternary-moyen: #0063cc;
--quaternary-moyen-rgb: 0, 99, 204;

/* ===============================================================
	QUINARY = ORANGE ACRONET (#ff611c)
=============================================================== */
--quinary-lightest: #fff1e8;
--quinary-lightest-rgb: 255, 241, 232;
--quinary-lighter: #ffd8bf;
--quinary-lighter-rgb: 255, 216, 191;
--quinary-light: #ffb88c;
--quinary-light-rgb: 255, 184, 140;
--quinary-medium-light: #ff8747;
--quinary-medium: #ff611c;
--quinary-medium-rgb: 255, 97, 28;
--quinary-dark: #b34414;
--quinary-dark-rgb: 179, 68, 20;
--quinary-darkest: #73270a;
--quinary-darkest-rgb: 115, 39, 10;
/* Teintes complémentaires QUINARY */
--quinary-fluo: #ff8a3d;
--quinary-fluo-rgb: 255, 138, 61;
--quinary-leger: #fff7f0;
--quinary-leger-rgb: 255, 247, 240;
--quinary-moyen: #e65519;
--quinary-moyen-rgb: 230, 85, 25;
/* ================================================================== */

/* ===============================================================
	SURFACES / TEXTE — Dark theme tokens (from index-v2.php)
=============================================================== */
--surface-card: rgba(25,35,64,.55);
--surface-card-hover: rgba(25,35,64,.85);
--border-subtle: rgba(5,152,245,.12);
--border-glow: rgba(54,227,255,.25);
--glass-bg: rgba(25,35,64,.45);
--glass-border: rgba(128,201,255,.1);
--text-primary: #f0f4f8;
--text-secondary: rgba(255,255,255,.8);
--text-muted: rgba(255,255,255,.8);

--h1: 3.8rem;
--h2: 3.8rem;
--h3: 2.625rem;
--h4: 2.25rem;
--h5: 1.75rem;
--h6: 1.5rem;
--fs-max: 6rem;
--fs-middle: 3rem;
--menu-btn-bg-color: rgba(var(--black-rgb), 1);
--menu-btn-active-width: 136%;
--menu-btn-transition-duration: 0.3s;
--menu-btn-transition-easing: ease;
--btn-padding-y: .75rem;
--btn-padding-x: 2rem;
--btn-font-size: .9rem;
--btn-font-weight: 600;
--btn-border-radius: 50px;
--primary-font: 'Poppins', Arial, sans-serif;

/* V3 Hero tokens */
--acro-red: #f50538;
--acro-blue: #2a8cff;
--acro-dark: #05080f;
--acro-card-bg: #0e121d;
}

/* ===============================================================
   Bootstrap 5.3 dark mode — map BS variables to Acronet palette
=============================================================== */
[data-bs-theme="dark"] {
  --bs-body-bg: var(--primary-darkest);
  --bs-body-color: var(--text-primary);
  --bs-border-color: rgba(255,255,255,.1);
  --bs-tertiary-bg: rgba(var(--primary-dark-rgb),.55);
  --bs-secondary-bg: rgba(var(--primary-dark-rgb),.35);
  --bs-emphasis-color: #fff;
  --bs-link-color: var(--secondary-medium);
  --bs-link-hover-color: var(--secondary-light);
  --bs-heading-color: #fff;
  --bs-secondary-color: var(--text-secondary);
  color-scheme: dark;
}

*,*::before,*::after {box-sizing: border-box;}
html {scroll-behavior: smooth;}
body {--opacity: 1;margin: 0;padding: 0;font-size: 16px;font-family: 'Poppins', system-ui, -apple-system, sans-serif;font-weight: 400;color: var(--text-primary);background: var(--primary-darkest);line-height: 1.7;overflow-x: hidden;}

/* --- Scrollbar --- */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--primary-darkest)}
::-webkit-scrollbar-thumb{background:var(--primary-medium);border-radius:3px}

/* --- Selection --- */
::selection{background:var(--primary-medium);color:#fff}

/* Animations */
@keyframes removeBlur {from {backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);}to {backdrop-filter: blur(0px);-webkit-backdrop-filter: blur(0px);}}
@keyframes addBlur {from {backdrop-filter: blur(0px);-webkit-backdrop-filter: blur(0px);}to {backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);}}
@keyframes svgFadeInUp {from {opacity: 0;transform: translate(-50%, -30%);}to {opacity: 1;transform: translate(-50%, -50%);}}

a {color: inherit;text-decoration: inherit;}
a:not([class]) {text-decoration-line: underline;text-underline-offset: 2px;}
a:not([class]):hover {text-decoration-line: none;}

img, figure {max-width: 100%;height: auto;vertical-align: middle;}
figure {margin: 0 0 1rem;}
table {caption-side: bottom;border-collapse: collapse}
caption {padding-top: .75rem;padding-bottom: .75rem;color:var(--black-rgb);text-align: left;}
th {font-weight: 700;text-align: inherit;text-align: -webkit-match-parent;}
thead,tbody,tfoot,tr,td,th {border-color: inherit;border-style: solid;border-width: 0;}
label {display: inline-block;}
button {border-radius: 0;}
button:focus:not(:focus-visible) {outline: 0;}
input, button, select, optgroup, textarea {margin: 0;font-family: inherit;font-size: inherit;line-height: inherit;}
button, select {text-transform: none;}
[role=button] {cursor: pointer;}
select {word-wrap: normal;}
select:disabled {opacity: 1;}
[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {display: none !important;}
button,[type=button],[type=reset],[type=submit] {-webkit-appearance: button;appearance: button;}
button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled) {cursor: pointer;}
::-moz-focus-inner {padding: 0;border-style: none;}
textarea {resize: vertical;min-height: calc(1.6em + 1.25rem + 2px);}
fieldset {min-width: 0;padding: 0;margin: 0;border: 0;}
legend {float: left;width: 100%;padding: 0;margin-bottom: .5rem;font-size: calc(1.275rem + 0.3vw);line-height: inherit;}

.visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {position: absolute !important;width: 1px !important;height: 1px !important;padding: 0 !important;margin: -1px !important;overflow: hidden !important;clip: rect(0, 0, 0, 0) !important;white-space: nowrap !important;border: 0 !important;}
.text-white {--opacity: 1;color: rgba(var(--white-rgb), var(--opacity));}
.text-black {--opacity: 1;color: rgba(var(--black-rgb), var(--opacity));}
.text-yellow-lightest {--opacity: 1;color: rgba(var(--yellow-lightest-rgb), var(--opacity));}
.text-primary-lightest {--opacity: 1;color: rgba(var(--primary-lightest-rgb), var(--opacity));}
.text-primary-lighter {--opacity: 1;color: rgba(var(--primary-lighter-rgb), var(--opacity));}
.text-primary-light {--opacity: 1;color: rgba(var(--primary-light-rgb), var(--opacity));}
.text-primary-medium {--opacity: 1;color: rgba(var(--primary-medium-rgb), var(--opacity));}
.text-primary-dark {--opacity: 1;color: rgba(var(--primary-dark-rgb), var(--opacity));}
.text-primary-darkest {--opacity: 1;color: rgba(var(--primary-darkest-rgb), var(--opacity));}
.text-hl {position: relative;display: inline;white-space: nowrap;--opacity: 0.5;--highlight-color: rgba(var(--yellow-rgb), var(--opacity));}
.text-hl::before {content: '';position: absolute;z-index: -1;top: 50%;left: -0.8rem;right: -0.8rem;height: 0.55em;transform: translateY(-45%) rotate(-1deg);background-color: var(--highlight-color);border-radius: 0.5rem;}
.text-hl-yellow {--opacity: 0.5;--highlight-color: rgba(var(--yellow-rgb), var(--opacity));}
.text-hl-primary {--opacity: 0.5;--highlight-color: rgba(var(--primary-medium-rgb), var(--opacity));}
.text-hl-secondary {--opacity: 0.5;--highlight-color: rgba(var(--secondary-medium-rgb), var(--opacity));}
.text-brun {--opacity: 1;color: rgba(var(--brun-rgb), var(--opacity));}
.text-dark {--opacity: .98;color: rgba(var(--black-rgb), var(--opacity));}
.text-secondary {--opacity: 1;color: rgba(var(--secondary-medium-rgb), var(--opacity));}

/* ─────────────── Dégradés de texte Acronet : bleu, orange, violet ─────────────── */
.text-gradient-primary {background: linear-gradient(91.25deg, var(--primary-fluo) 4.64%, var(--primary-medium-light) 89.82%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;}
.text-gradient-secondary {background: linear-gradient(91.25deg, var(--quinary-medium) 4.64%, var(--secondary-medium) 89.82%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;}
.text-gradient-tertiary {background: linear-gradient(91.25deg, var(--tertiary-fluo) 4.64%, var(--tertiary-medium) 89.82%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;}
.text-gradient-quaternary {background: linear-gradient(91.25deg, var(--quaternary-fluo) 4.64%, var(--quaternary-moyen) 89.82%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;color: transparent;}



.bg-none {background-color: transparent !important;}
.bg-white {--opacity: 1;background-color: rgba(var(--white-rgb), var(--opacity));}
.bg-black {--opacity: 1;background-color: rgba(var(--black-rgb), var(--opacity));}
.bg-dark {--opacity: .98;background-color: rgba(var(--black-rgb), var(--opacity));}
.bg-gray-lightest {--opacity: 1;background-color: rgba(var(--gray-lightest-rgb), var(--opacity));}
.bg-yellow-lightest {--opacity: 1;background-color: rgba(var(--yellow-lightest-rgb), var(--opacity));}
.bg-primary-lightest {--opacity: 1;background-color: rgba(var(--primary-lightest-rgb), var(--opacity));}
.bg-primary-lighter {--opacity: 1;background-color: rgba(var(--primary-lighter-rgb), var(--opacity));}
.bg-primary-light {--opacity: 1;background-color: rgba(var(--primary-light-rgb), var(--opacity));}
.bg-primary-medium {--opacity: 1;background-color: rgba(var(--primary-medium-rgb), var(--opacity));}
.bg-primary-dark {--opacity: 1;background-color: rgba(var(--primary-dark-rgb), var(--opacity));}
.bg-primary-darkest {--opacity: 1;background-color: rgba(var(--primary-darkest-rgb), var(--opacity));}
.bg-primary-leger {background-color: var(--primary-leger);}
.bg-primary-leger-rgb {--opacity: 1;background-color: rgba(var(--primary-leger-rgb), var(--opacity));}
.bg-primary-moyen {background-color: var(--primary-moyen);}
.bg-primary-moyen-rgb {--opacity: 1;background-color: rgba(var(--primary-moyen-rgb), var(--opacity));}
.bg-secondary-rgb {--opacity: 1;background-color: rgba(var(--secondary-medium-rgb), var(--opacity));}

.bg-success {--opacity: 1;background-color: rgba(var(--success-rgb), var(--opacity));}
.bg-info {--opacity: 1;background-color: rgba(var(--info-rgb), var(--opacity));}
.bg-warning {--opacity: 1;background-color: rgba(var(--warning-rgb), var(--opacity));}
.bg-danger {--opacity: 1;background-color: rgba(var(--danger-rgb), var(--opacity));}

hr {margin: 0 0;color: rgba(var(--black-rgb), .15);border: 0;border-top: 1px solid;}

.icon-title {display: flex;align-items: center;justify-content: center;gap: 0.5rem;flex-wrap: nowrap;text-align: center;}
.icon-title svg {flex-shrink: 0;width: 2.5rem;height: 2.5rem;}
@media (max-width: 576px) {.icon-title {flex-wrap: wrap;}}

ul.list-unstyled {list-style: none;padding-left: 0;}
ul.list-unstyled li{padding-bottom: 0.5rem;}
ul.list-unstyled li:last-child  {padding-bottom: 0;}
ul.infos-list{width: 100%;padding: 0;list-style: none;}
ul.infos-list li {font-size: 1rem;font-style: normal;line-height: 1.2;margin-bottom: 0.4rem;}
ul.infos-list li img {display: flex;align-self: stretch;width: 1.3rem;height: 1.3rem;margin-right: 0.5rem;}
ul.infos-list li a, ul.infos-list li span {display: flex;align-items: center;}
ul.infos-list li a:after {background-color: transparent;transform: none;}


.block {display:block;}
.hidden {display:none;}
.text-center {text-align: center;}
.text-left,.text-start {text-align: left;}
.text-right,.text-end {text-align: right;}
.text-justify {text-align: justify;}
.text-decoration-none {text-decoration: none;}
.text-decoration-underline {text-decoration: underline;}
.text-decoration-line-through {text-decoration: line-through;}
.text-lowercase {text-transform: lowercase;}
.text-uppercase {text-transform: uppercase;}
.text-capitalize {text-transform: capitalize;}
.text-wrap {white-space: normal;}
.text-nowrap {white-space: nowrap;}
.text-break {word-wrap: break-word;word-break: break-word;}
.text-404 {font-size: 11.2rem;font-weight: 900;margin-top: -2rem;color: rgba(var(--black-rgb), .9);text-shadow: 4px 4px 0 var(--white),-4px 0 0 var(--white),7px 4px 0 rgba(var(--black-rgb), .9);}
.infos-404 {max-width:650px;margin-left:auto;margin-right:auto;text-align: left;}

.w-100 {width: 100%;}
.w-100v {width: 100vh;}
.w-80 {width: 80%;}
.w-70 {width: 70%;}
.w-60 {width: 60%;}
.w-50 {width: 50%;}
.w-25 {width: 25%;}
.w-15 {width: 15%;}
.h-100 {height: 100%;}
.h-100v {height: 100vh;}

.d-block {display: block;}
.d-flex {display: flex;}
.d-flex-wrap {display: flex;flex-wrap: wrap;}
.d-flex-stretch {display: flex; align-items: stretch;}
.d-flex-cs {display: flex;align-items: center;justify-content: start;}
.d-flex-cc {display: flex;align-items: center;justify-content: center;}
.d-flex-ce {display: flex;align-items: center;justify-content: end;}

.flex-column {flex-direction: column;}
.flex-row {flex-direction: row;}

.flex-shrink-0 {flex-shrink: 0;}

.row-cols-1 > * {flex: 0 0 auto;width: 100%;}
.row-cols-2 > * {flex: 0 0 auto;width: 50%;}

.order-first {order: -1;}
.order-0 {order: 0;}
.order-1 {order: 1;}
.order-2 {order: 2;}
.order-3 {order: 3;}
.order-4 {order: 4 ;}
.order-5 {order: 5;}
.order-last {order: 6;}

.justify-content-start {justify-content: flex-start;}
.justify-content-end {justify-content: flex-end;}
.justify-content-center {justify-content: center;}
.justify-content-between {justify-content: space-between;}

.align-items-start {align-items: flex-start;}
.align-items-end {align-items: flex-end;}
.align-items-center {align-items: center;}
.align-items-baseline {align-items: baseline;}
.align-items-stretch {align-items: stretch;}

.position-static {position: static;}
.position-relative {position: relative;}
.position-absolute {position: absolute;}
.position-fixed {position: fixed;}
.position-sticky {position: sticky;top: 1rem;}

.z-index-n1 {z-index: -1;}
.z-index-0 {z-index: 0;}
.z-index-1 {z-index: 1;}
.z-index-2 {z-index: 2;}

/* Spacing & margin/padding utilities: handled by Bootstrap 5 native classes */
/* Custom-only: .ps-05 = padding-left: 0.5rem (use Bootstrap .ps-2 instead) */

h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1 {font-family: 'Poppins', Arial, sans-serif;font-size: inherit;font-weight: 600;margin-top: 0;margin-bottom: 1rem;letter-spacing: -.05em;}
/* Tailles de base */
.h1 {font-size: var(--h1);}
.h2 {font-size: var(--h2);}
.h3 {font-size: var(--h3);}
.h4 {font-size: var(--h4);}
.h5 {font-size: var(--h5);}
.h6 {font-size: var(--h6);}

.fs-1 {font-size: calc(1.375rem + 1.5vw) !important;}
.fs-2 {font-size: calc(1.325rem + 0.9vw) !important;}
.fs-3 {font-size: calc(1.3rem + 0.6vw) !important;}
.fs-4 {font-size: calc(1.275rem + 0.3vw) !important;}
.fs-5 {font-size: 1.25rem !important;}
.fs-6 {font-size: 1rem !important;}
.fs-xl {font-size: 1.25rem !important;}
.fs-xxl {font-size: 1.6rem !important;}
.fs-lg {font-size: 1.125rem !important;}
.fs-title {font-size: 1.5rem !important;}
.fs-base {font-size: 1rem !important;}
.fs-sm {font-size: 0.875rem !important;}
.fs-xs {font-size: 0.75rem !important;}
.fs-middle {font-size: var(--fs-middle);}
.fs-max {font-size: var(--fs-max);}

.fw-normal {font-weight: normal !important;}
.fw-semibold {font-weight: 500 !important;}
.fw-bold {font-weight: 600 !important;}

.lh-sm {line-height: 1;}
.lh-base {line-height: 1.25;}
.lh-lg {line-height: 1.5;}
.lh-xl {line-height: 1.75;}

/* Tailles spécifiques pour les petits écrans */
@media (max-width: 1200px) {
.h1 {font-size: calc(var(--h1) / 1.55);}
.h2 {font-size: calc(var(--h2) / 1.55);}
.h3 {font-size: calc(var(--h3) / 1.2);}
.h4 {font-size: calc(var(--h4) / 1.2);}
.h5 {font-size: calc(var(--h5) / 1.2);}
.h6 {font-size: calc(var(--h6) / 1.2);}
.fs-middle {font-size: calc(var(--fs-middle) / 2);}
.fs-max {font-size: calc(var(--fs-max) / 1.2);}
}
@media (max-width: 600px) {
.fs-max {font-size: calc(var(--fs-max) / 2);}
}
.opacity-0 {--opacity: 0 !important;}
.opacity-05 {--opacity: 0.05 !important;}
.opacity-10 {--opacity: 0.1 !important;}
.opacity-25 {--opacity: 0.25 !important;}
.opacity-50 {--opacity: 0.5 !important;}
.opacity-75 {--opacity: 0.75 !important;}
.opacity-80 {--opacity: 0.80 !important;}
.opacity-90 {--opacity: 0.90 !important;}
.opacity-95 {--opacity: 0.95 !important;}
.opacity-98 {--opacity: 0.98 !important;}
.opacity-100 {--opacity: 1 !important;}

.background-image,[data-bg-src] {background-repeat:no-repeat;background-size:cover;background-position:center center}
[data-overlay] {position: relative;overflow: hidden;border-radius: inherit;}
[data-overlay]::before {content: "";right: 0;bottom: 0;z-index: 1;border-radius: inherit;}
.overlay, [data-overlay]::before {left: 0;top: 0;position: absolute;}
[data-overlay=black]:before {background-color:var(--black);}
[data-overlay=white]:before {background-color:var(--white);}
[data-overlay=primary]:before {background-color:var(--primary-darkest);}
[data-overlay=secondary]:before {background-color:var(--secondary-medium);}
[data-overlay=tertiary]:before {background-color:var(--tertiary-medium);}
[data-overlay=quaternary]:before {background-color:var(--quaternary-medium);}
[data-overlay=quinary]:before {background-color:var(--quinary-medium);}
[data-opacity="0"]:before {opacity: 0}
[data-opacity="1"]:before {opacity:.1}
[data-opacity="2"]:before {opacity:.2}
[data-opacity="3"]:before {opacity:.3}
[data-opacity="4"]:before {opacity:.4}
[data-opacity="5"]:before {opacity:.5}
[data-opacity="6"]:before {opacity:.6}
[data-opacity="7"]:before {opacity:.7}
[data-opacity="8"]:before {opacity:.8}
[data-opacity="9"]:before {opacity:.9}

.breadcrumb-simple {background: rgba(var(--primary-light-rgb),0.1);border-bottom: 1px solid rgba(var(--primary-light-rgb),.25);padding:.5rem 0;font-size:.9rem;line-height: 0;}
.breadcrumb-simple.dark {background: rgba(var(--primary-darkest-rgb),0.99);border-bottom: 1px solid rgba(var(--primary-light-rgb),.15);}
.breadcrumb-simple.dark a{color: rgba(var(--primary-light-rgb),0.5);}
.breadcrumb-simple.dark li{color: rgba(var(--primary-light-rgb),0.5);}
.breadcrumb-simple.dark li+li::before{color: rgba(var(--primary-light-rgb),0.2);}
.breadcrumb-simple.dark .breadcrumb-home-icon svg{stroke:rgba(var(--primary-light-rgb),0.2);}
.breadcrumb-simple .breadcrumb-inner{display:flex;align-items:center;justify-content:flex-start;max-width: 80rem; margin: 0 auto;}
.breadcrumb-simple .breadcrumb-list{display:flex;align-items:center;flex-wrap:nowrap;gap:.35rem;margin:0;padding:0;list-style:none;font-size:.85rem;white-space:nowrap;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;}
.breadcrumb-simple .breadcrumb-list::-webkit-scrollbar{display:none;}
.breadcrumb-simple li{display:inline-flex;align-items:center;color:rgba(var(--primary-darkest-rgb),1);}
.breadcrumb-simple li+li::before{content:">";margin:0 .25rem;color:rgba(var(--primary-darkest-rgb),.6);}
.breadcrumb-simple a{display:inline-flex;align-items:center;gap:.35rem;color:rgba(var(--primary-darkest-rgb),1);text-decoration:none;}
.breadcrumb-simple a:hover{text-decoration:underline;}
.breadcrumb-simple .breadcrumb-home{display:inline-flex;align-items:center;height: 1.1rem;}
.breadcrumb-simple .breadcrumb-home-icon{display:inline-flex;align-items:center;width: 1.1rem;height: 1.1rem;}
.breadcrumb-simple .breadcrumb-home-icon svg{display:block;width:100%;height:100%;stroke:rgba(var(--primary-darkest-rgb),1);transform:translateY(-0.05em) translateX(0.1em);}
.breadcrumb-simple .breadcrumb-label{display:inline-block;}
.breadcrumb-simple li.active .breadcrumb-label{color:rgba(var(--primary-darkest),1);font-weight:500;}

.rounded {border-radius: 0.5rem !important;}
.rounded-1 {border-radius: 1rem !important;}
.rounded-top-0 {border-top-left-radius: 0 !important;border-top-right-radius: 0 !important;}
.rounded-bottom-0 {border-bottom-left-radius: 0 !important;border-bottom-right-radius: 0 !important;}
.rounded-start-0 {border-top-left-radius: 0 !important;border-bottom-left-radius: 0 !important;}
.rounded-end-0 {border-top-right-radius: 0 !important;border-bottom-right-radius: 0 !important;}
.rounded-circle {border-radius: 50% !important;}

/* --- Utility color classes --- */
.text-star{color:#fbbf24}
.icon-fluo{color:var(--primary-fluo)}
.icon-fluo-red{color:var(--secondary-fluo)}
.gradient-text-fluo{
	background:linear-gradient(135deg,var(--primary-fluo),var(--secondary-fluo));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}

/* Mobile */
@media (max-width: 768px) {
.sm\:block {display:block;}
.sm\:hidden {display:none;}
.sm\:text-center{text-align: center;}
.sm\:text-left{text-align: left;}
.sm\:text-right{text-align: right;}

.gap-sm-0 {gap: 0 !important;}
.gap-sm-1 {gap: .25rem !important;}
.gap-sm-2 {gap: .5rem !important;}
.gap-sm-3 {gap: 1rem !important;}
.gap-sm-4 {gap: 1.5rem !important;}
.gap-sm-5 {gap: 3 !important;}

.h-sm-unset {height: unset !important;}
.w-sm-unset {width: unset !important;}

.p-sm-0 {padding: 0 !important;}
.p-sm-3 {padding: 3rem !important;}
.p-sm-5 {padding: 5rem !important;}
.pt-sm-0 {padding-top: 0 !important;}
.pt-sm-1 {padding-top: 1rem !important;}
.pt-sm-2 {padding-top: 2rem !important;}
.pt-sm-3 {padding-top: 3rem !important;}
.pb-sm-1 {padding-bottom: 1rem !important;}
.pb-sm-2 {padding-bottom: 2rem !important;}
.pb-sm-3 {padding-bottom: 3rem !important;}
.ps-sm-1 {padding-left: 1rem !important;}
.ps-sm-2 {padding-left: 1.5rem !important;}
.pe-sm-1 {padding-right: 1rem !important;}
.pe-sm-2 {padding-right: 1.5rem !important;}
.px-sm-1 {padding-left: 1rem !important;padding-right: 1rem !important;}
.py-sm-1 {padding-top: 1rem !important;padding-bottom: 1rem !important;}

.m-sm-0 {margin: 0 !important;}
.mt-sm-0 {margin-top: 0 !important;}
.mt-sm-3 {margin-top: 3rem !important;}
.ms-sm-3 {margin-left: 3rem !important}
.me-sm-3 {margin-right: 3rem !important}
.mb-sm-0 {margin-bottom: 0 !important;}

.mx-sm-0 {margin-right: 0 !important;margin-left: 0 !important;}

.row-cols-sm-1 > * {flex: 0 0 auto;width: 100%}
.row-cols-sm-2 > * {flex: 0 0 auto;width: 50%}

.order-sm-first {order: -1 !important}
.order-sm-0 {order: 0 !important}
.order-sm-1 {order: 1 !important}
.order-sm-2 {order: 2 !important}
.order-sm-3 {order: 3 !important}
.order-sm-4 {order: 4 !important}
.order-sm-5 {order: 5 !important}
.order-sm-last {order: 6 !important}

.justify-content-sm-start {justify-content: flex-start !important;}
.justify-content-sm-end {justify-content: flex-end !important;}
.justify-content-sm-center {justify-content: center !important;}
.justify-content-sm-between {justify-content: space-between !important;}

.align-items-sm-start {align-items: flex-start !important;}
.align-items-sm-end {align-items: flex-end !important;}
.align-items-sm-center {align-items: center !important;}
.align-items-sm-baseline {align-items: baseline !important;}
.align-items-sm-stretch {align-items: stretch !important;}
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
.md\:block {display:block;}
.md\:hidden {display:none;}
.md\:text-center{text-align: center;}
.md\:text-left{text-align: left;}
.md\:text-right{text-align: right;}

.gap-md-0 {gap: 0 !important;}

.h-md-unset {height: unset !important;}
.w-md-unset {width: unset !important;}

.w-md-50 {width: 50%;}
.w-md-60 {width: 60%;}

.p-md-0 {padding: 0 !important;}
.p-md-3 {padding: 3rem !important;}
.p-md-5 {padding: 5rem !important;}
.pt-md-0 {padding-top: 0 !important;}
.pt-md-1 {padding-top: 1rem !important;}
.pt-md-2 {padding-top: 2rem !important;}
.pt-md-3 {padding-top: 3rem !important;}
.pb-md-1 {padding-bottom: 1rem !important;}
.pb-md-2 {padding-bottom: 2rem !important;}
.pb-md-3 {padding-bottom: 3rem !important;}
.ps-md-1 {padding-left: 1rem !important;}
.ps-md-2 {padding-left: 1.5rem !important;}
.pe-md-1 {padding-right: 1rem !important;}
.pe-md-2 {padding-right: 1.5rem !important;}
.px-md-1 {padding-left: 1rem !important;padding-right: 1rem !important;}
.py-md-1 {padding-top: 1rem !important;padding-bottom: 1rem !important;}

.m-md-0 {margin: 0 !important;}
.mt-md-0 {margin-top: 0 !important;}
.mt-md-3 {margin-top: 3rem !important;}
.ms-md-2 {margin-left: 1.5rem !important;}
.ms-md-3 {margin-left: 3rem !important}
.me-md-3 {margin-right: 3rem !important}
.mb-md-0 {margin-bottom: 0 !important;}

.ms-md-auto {margin-left: auto !important;}
.me-md-auto {margin-right: auto !important;}
.mx-md-0 {margin-right: 0 !important;margin-left: 0 !important;}

.text-md-center {text-align: center !important;}
.text-md-left,.text-md-start {text-align: left !important;}
.text-md-right,.text-md-end {text-align: right !important;}
.text-md-justify {text-align: justify !important;}

.flex-md-row {flex-direction: row !important;}
.flex-md-column {flex-direction: column !important;}

.row-cols-md-1 > * {flex: 0 0 auto;width: 100%}
.row-cols-md-2 > * {flex: 0 0 auto;width: 50%}

.order-md-first {order: -1 !important}
.order-md-0 {order: 0 !important}
.order-md-1 {order: 1 !important}
.order-md-2 {order: 2 !important}
.order-md-3 {order: 3 !important}
.order-md-4 {order: 4 !important}
.order-md-5 {order: 5 !important}
.order-md-last {order: 6 !important}

.justify-content-md-start {justify-content: flex-start !important;}
.justify-content-md-end {justify-content: flex-end !important;}
.justify-content-md-center {justify-content: center !important;}
.justify-content-md-between {justify-content: space-between !important;}

.align-items-md-start {align-items: flex-start !important;}
.align-items-md-end {align-items: flex-end !important;}
.align-items-md-center {align-items: center !important;}
.align-items-md-baseline {align-items: baseline !important;}
.align-items-md-stretch {align-items: stretch !important;}
}

/* PC */
@media (min-width: 1024px) {
.lg\:block {display:block;}
.lg\:hidden {display:none;}
.lg\:text-center{text-align: center;}
.lg\:text-left{text-align: left;}
.lg\:text-right{text-align: right;}

.gap-lg-0 {gap: 0 !important;}

.h-lg-unset {height: unset !important;}
.w-lg-unset {width: unset !important;}

.w-lg-50 {width: 50%;}
.w-lg-60 {width: 60%;}

.p-lg-0 {padding: 0 !important;}
.p-lg-3 {padding: 3rem !important;}
.p-lg-5 {padding: 5rem !important;}
.pt-lg-0 {padding-top: 0 !important;}
.pt-lg-1 {padding-top: 1rem !important;}
.pt-lg-2 {padding-top: 2rem !important;}
.pt-lg-3 {padding-top: 3rem !important;}
.pb-lg-1 {padding-bottom: 1rem !important;}
.pb-lg-2 {padding-bottom: 2rem !important;}
.pb-lg-3 {padding-bottom: 3rem !important;}
.ps-lg-0 {padding-left: 0rem !important;}
.ps-lg-1 {padding-left: 1rem !important;}
.ps-lg-2 {padding-left: 1.5rem !important;}
.pe-lg-0 {padding-right: 0rem !important;}
.pe-lg-1 {padding-right: 1rem !important;}
.pe-lg-2 {padding-right: 1.5rem !important;}
.px-lg-1 {padding-left: 1rem !important;padding-right: 1rem !important;}
.py-lg-1 {padding-top: 1rem !important;padding-bottom: 1rem !important;}

.m-lg-0 {margin: 0 !important;}
.mt-lg-0 {margin-top: 0 !important;}
.mt-lg-3 {margin-top: 3rem !important;}
.ms-lg-2 {margin-left: 1.5rem !important;}
.ms-lg-3 {margin-left: 3rem !important}
.me-lg-3 {margin-right: 3rem !important}
.mb-lg-0 {margin-bottom: 0 !important;}

.ms-lg-auto {margin-left: auto !important;}
.me-lg-auto {margin-right: auto !important;}
.mx-lg-0 {margin-right: 0 !important;margin-left: 0 !important;}

.text-lg-center {text-align: center !important;}
.text-lg-left,.text-lg-start {text-align: left !important;}
.text-lg-right,.text-lg-end {text-align: right !important;}
.text-lg-justify {text-align: justify !important;}

.flex-lg-row {flex-direction: row !important;}
.flex-lg-column {flex-direction: column !important;}

.row-cols-lg-1 > * {flex: 0 0 auto;width: calc(100% - 1.5rem);}
.row-cols-lg-2 > * {flex: 0 0 auto;width: calc(50% - 0.75rem);}

.order-lg-first {order: -1 !important}
.order-lg-0 {order: 0 !important}
.order-lg-1 {order: 1 !important}
.order-lg-2 {order: 2 !important}
.order-lg-3 {order: 3 !important}
.order-lg-4 {order: 4 !important}
.order-lg-5 {order: 5 !important}
.order-lg-last {order: 6 !important}

.justify-content-lg-start {justify-content: flex-start !important;}
.justify-content-lg-end {justify-content: flex-end !important;}
.justify-content-lg-center {justify-content: center !important;}
.justify-content-lg-between {justify-content: space-between !important;}

.align-items-lg-start {align-items: flex-start !important;}
.align-items-lg-end {align-items: flex-end !important;}
.align-items-lg-center {align-items: center !important;}
.align-items-lg-baseline {align-items: baseline !important;}
.align-items-lg-stretch {align-items: stretch !important;}
}

/* Global Typo */
.t-arial {font-family: Arial, sans-serif;font-weight: normal;}
.t-regular {font-family: var(--primary-font);font-weight: 400;}
.t-italic {font-family: var(--primary-font);font-weight: 400;font-style: italic;}
.t-medium {font-family: var(--primary-font);font-weight: 500;}
.t-mediumitalic {font-family: var(--primary-font);font-weight: 500;font-style: italic;}
.t-semibold {font-family: var(--primary-font);font-weight: 600;}
.t-semibolditalic {font-family: var(--primary-font);font-weight: 600;font-style: italic;}
.t-extrabold {font-family: var(--primary-font);font-weight: 800;}
.t-extrabolditalic {font-family: var(--primary-font);font-weight: 800;font-style: italic;}
.t-logotype {font-family: var(--primary-font);font-weight: bold;}

/* Borders */
.border {border: 0.5rem solid var(--black);}
.border-top {border-top: 0.5rem solid var(--black);}
.border-bottom {border-bottom: 0.5rem solid var(--black);}
.border-left {border-left: 0.5rem solid var(--black);}
.border-right {border-right: 0.5rem solid var(--black);}

.border-0 {border: 0 !important;}
.border-top-0 {border-top: 0 !important;}
.border-bottom-0 {border-bottom: 0 !important;}
.border-left-0 {border-left: 0 !important;}
.border-right-0 {border-right: 0 !important;}

.border-primary-leger {border-color: var(--primary-leger);}
.border-primary-leger-rgb {--opacity-border: 1;border-color: rgba(var(--primary-leger-rgb), var(--opacity-border));}
.border-primary-moyen {border-color: var(--primary-moyen);}
.border-primary-moyen-rgb {--opacity-border: 1;border-color: rgba(var(--primary-moyen-rgb), var(--opacity-border));}
.border-primary-medium {--opacity-border: .55;border-color: rgba(var(--primary-medium-rgb), var(--opacity-border));}
.border-primary-icones {border-color: #449368;}
.border-gray-200 {--opacity-border: .05;border-color: rgba(var(--black-rgb), var(--opacity-border));}
.border-gray-300 {--opacity-border: .10;border-color: rgba(var(--black-rgb), var(--opacity-border));}

/* Séparateurs */
.sep-line {width: 15rem;height: 0.50rem;border-radius: 0.375rem;}
.sep-left {margin-left: 0;margin-right: auto;}
.sep-center {margin: auto;}
.sep-right {margin-left: auto;margin-right: 0;}
.sep-white {background-color: var(--white);}
.sep-black {background-color: var(--black);}
.sep-brun {background-color: var(--brun);}
.sep-primary {background-color: var(--primary-medium);}
.sep-secondary {background-color: var(--secondary-medium);}
.sep-tertiary {background-color: var(--primary-darkest);}


.shadow-lg {box-shadow: 0 .3rem 1.525rem -0.375rem rgba(var(--black-rgb), .1), 0 .25rem .8125rem -0.125rem rgba(var(--black-rgb), .06) !important;}

/* ======================================= */
/*  BOUTONS                                */
/* ======================================= */

/* Base — neutre, pas d'opinion visuelle */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .5rem;
	cursor: pointer;
	white-space: nowrap;
	user-select: none;
	text-decoration: none;
	font-family: inherit;
	font-size: var(--btn-font-size);
	font-weight: var(--btn-font-weight);
	padding: var(--btn-padding-y) var(--btn-padding-x);
	border: none;
	border-radius: var(--btn-border-radius);
	background: transparent;
	color: inherit;
	transition: all .3s ease;
}
.btn img {margin: 0 0.5rem 0 0;}

/* ======================================= */
/*  BOUTON SLIDE (motor animation)         */
/* ======================================= */
.btn-slide {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	white-space: nowrap;
	user-select: none;
	text-decoration: none;
	font-size: var(--btn-font-size);
	font-weight: var(--btn-font-weight);
	padding: var(--btn-padding-y) var(--btn-padding-x);
	border-radius: var(--btn-border-radius);
	border: none;
	background-color: var(--btn-bg, transparent);
	color: var(--btn-color, inherit);
	box-shadow: 0 .5rem 1.125rem -0.5rem rgba(var(--btn-shadow-rgb,0,0,0), .7);
	overflow: hidden;
	z-index: 1;
	transition: color .25s ease-in-out, box-shadow .25s ease-in-out, background-color .25s ease-in-out;
}
.btn-slide > * {position: relative; z-index: 2;}
.btn-slide:hover {
	color: var(--btn-color-hover, var(--btn-color));
	background-color: var(--btn-bg-hover, var(--btn-bg));
}

/* LINEAR */
.btn-slide-linear::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--btn-bg-hover, transparent);
	transform-origin: left center;
	transform: scaleX(0);
	transition: transform .35s ease-out;
	z-index: 0;
}
.btn-slide-linear:hover::before {transform: scaleX(1.05);}

/* CERCLE */
.btn-slide-circle::before {
	content: "";
	position: absolute;
	top: 50%; left: 50%;
	width: 1px; height: 1px;
	border-radius: 999px;
	background: var(--btn-bg-hover, transparent);
	transform: translate(-50%, -50%) scale(0);
	transition: transform .35s ease-out;
	z-index: 0;
}
.btn-slide-circle:hover::before {transform: translate(-50%, -50%) scale(500);}

/* PRIMO (CTA rouge avec glow) */
.btn-primo {
	--btn-bg: rgba(var(--secondary-medium-rgb), 1);
	--btn-bg-hover: rgba(var(--primary-medium-rgb), 1);
	--btn-color: #fff;
	--btn-color-hover: rgba(var(--primary-lightest-rgb), 1);
	--btn-shadow-rgb: var(--primary-darkest-rgb);
}
.btn-primo:hover {box-shadow: 0 0 5px rgba(var(--primary-medium-rgb),0.05),-5px 0 20px rgba(var(--primary-medium-rgb),0.7),5px 0 20px rgba(var(--primary-medium-rgb),0.7);}

/* ======================================= */
/*  VARIANTES CLASSIQUES (sous-pages)      */
/* ======================================= */
.btn-light {
	background: rgba(var(--primary-lighter-rgb), 1);
	border: 2px solid rgba(var(--primary-light-rgb), 1);
	border-radius: .5rem;
	color: rgba(var(--black-rgb), 1);
}
.btn-light:hover {
	background: rgba(var(--primary-light-rgb), 1);
	border-color: rgba(var(--primary-light-rgb), 1);
}

.btn-medium {
	background: rgba(var(--primary-medium-rgb), 1);
	border: 2px solid rgba(var(--primary-medium-rgb), 1);
	border-radius: .5rem;
	color: #fff;
}
.btn-medium:hover {
	background: rgba(var(--primary-dark-rgb), 1);
	border-color: rgba(var(--primary-dark-rgb), 1);
}

.btn-darkest {
	background: rgba(var(--primary-dark-rgb), 1);
	border: 2px solid rgba(var(--primary-dark-rgb), 1);
	border-radius: .5rem;
	color: #fff;
}
.btn-darkest:hover {
	background: rgba(var(--primary-darkest-rgb), 1);
	border-color: rgba(var(--primary-darkest-rgb), 1);
}

.btn-black {
	background: rgba(var(--black-rgb), 1);
	border: 2px solid rgba(var(--black-rgb), 1);
	border-radius: .5rem;
	color: #fff;
}
.btn-black:hover {
	background: rgba(var(--black-rgb), .85);
	border-color: rgba(var(--black-rgb), .15);
}

.btn-secondary {
	background: rgba(var(--secondary-medium-rgb), 1);
	border: 2px solid rgba(var(--secondary-medium-rgb), 1);
	border-radius: .5rem;
	color: #fff;
}
.btn-secondary:hover {
	box-shadow: 0 0 5px rgba(var(--secondary-medium-rgb),0.05),-5px 0 20px rgba(var(--secondary-medium-rgb),0.7),5px 0 20px rgba(var(--secondary-medium-rgb),0.7);
}

.btn-secondary-light {
	background: rgba(var(--secondary-lighter-rgb), 1);
	border: 2px solid rgba(var(--secondary-medium-rgb), 1);
	border-radius: .5rem;
	color: rgba(var(--primary-darkest-rgb), 1);
}
.btn-secondary-light:hover {
	background: rgba(var(--secondary-light-rgb), 1);
	box-shadow: 0 0 5px rgba(var(--secondary-light-rgb),0.05),-5px 0 20px rgba(var(--secondary-light-rgb),0.7),5px 0 20px rgba(var(--secondary-medium-rgb),0.7);
}




/* Images */
.img-box {position: relative;}
.img-box .content{position: absolute;bottom: 0;left: 0;padding: 3rem;border-radius: 0 3rem 0 0;}
.img-container {display: flex;align-items: center;justify-content: center;height: 200px;width: 100%;overflow: hidden;background-color: rgba(var(--black-rgb),.05)}
.img-container img {max-width: 100%;max-height: 100%;object-fit: contain;}
/* Aligner les icônes avec du texte */
.icon-text {display: flex;align-items: center;}
.icon-text img {margin-right: 0.5rem;width: 20px;height: 20px;}

/* Liste à puces */
.content-info-list {display: flex;flex-direction: column;list-style-type: none;margin: 0.5rem 0 0.5rem 0.5rem;padding: 0;}
.content-info-list li {position: relative;display: flex;align-items: start;font-size: 1rem;line-height: 1.5;padding-left: 0.5rem;margin-bottom: 0.5rem;}
.content-info-list li:last-child {margin: 0;}
.content-info-list li .check-icon {
flex-shrink: 0;
width: 1.5rem;
height: 1.5rem;
margin-right: 0.8rem;
box-shadow: 0 0 0.45rem 0 rgba(0, 0, 0, 0);
border-radius: 50%;
border: 0.15em solid rgba(var(--secondary-medium-rgb),1);
background-color: rgba(var(--white-rgb), 0);
padding: 0;
background-image: url('data:image/svg+xml,%3Csvg%20viewBox=%220%200%2020%2020%22%20fill=%22none%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath%20stroke=%22%23d90431%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222%22%20d=%22M17%205L8%2015l-5-4%22/%3E%3C/svg%3E');
background-size: 1.1rem;
background-repeat: no-repeat;
background-position: center;
transform: translate(0, 0rem);
}
.content-info-list li .text {flex: 1;}
.content-info-list li span {font-weight: 600;}

ul.content-list {margin:0px;}
/*
ul.content-list li {display:flex;align-items:center;gap:0.5rem;font-size:1.2rem;line-height:1.6;list-style:none;padding-bottom:10px;}
*/
ul.content-list li {display: flex;align-items: flex-start;justify-content: flex-start;gap: 0.5rem;font-size: 1.2rem;line-height: 1.3;text-align: start;width: 100%;list-style: none;margin-bottom: 0.5rem;}
ul.content-list li:last-child {margin-bottom: 0;}
ul.content-list li svg {display:block;flex:0 0 1.6rem;overflow:visible;width:1.6rem;height:1.6rem;}
@media (max-width: 768px) {
ul.content-list li {font-size:1rem;line-height:1.3;}
}

/*
.tik-list {display: grid;grid-template-columns: repeat(2, 1fr);grid-gap: 1rem;list-style: none;padding: 0;}
.tik-list li {display: flex;align-items: center;font-weight: 500;}
.tik-list li::before {
display: inline-block;
content: "";
width: 1.5rem;
height: 1.5rem;
background-image: url('data:image/svg+xml,%3Csvg%20viewBox=%220%200%2020%2020%22%20fill=%22none%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath%20stroke=%22%23000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222%22%20d=%22M17%205L8%2015l-5-4%22/%3E%3C/svg%3E');
background-size: contain;
background-repeat: no-repeat;
margin-right: 0.5rem;
filter:invert(1);
}
@media (max-width: 380px) {.tik-list {grid-template-columns: repeat(1, 1fr);grid-gap: 1rem;}}
*/

.tik-list {list-style:none;width:100%;margin:.5rem 0 .75rem 0;padding:0;}
.tik-list li{position:relative;display:block;font-size:1rem;line-height:1.4;margin-bottom:.4rem;padding-left:1.6rem;}
.tik-list li::before{content: "";position: absolute;left: .0em;top: -.1em;width: 1.5rem;height: 1.5rem;
background-image: url('data:image/svg+xml,%3Csvg%20viewBox=%220%200%2020%2020%22%20fill=%22none%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath%20stroke=%22%23000%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%20stroke-width=%222%22%20d=%22M17%205L8%2015l-5-4%22/%3E%3C/svg%3E');
background-size: contain;
background-repeat: no-repeat;
margin-right: 0.5rem;
filter:invert(1);
}





.tik-list-simple {display: grid;grid-template-columns: repeat(2, 1fr);grid-gap: 1rem;list-style: none;padding: 0;}
.tik-list-simple .icones{min-width: 40px;}
.tik-list-simple li {display: flex;align-items: center;font-weight: 500;}
.tik-list-simple li::before {display: inline-block;content: "";}
.tik-list-simple li > * img {padding: .5rem;}
@media (max-width: 768px) {.tik-list-simple {grid-template-columns: repeat(1, 1fr);grid-gap: 1rem;}}

/* blockquote */
blockquote {font-style: italic;font-size: 1.2rem;line-height: 1.5;margin: 0 0 1rem;padding: 1.2rem 1.1rem;}
.blockquote-black {--opacity: .75;border-left: 0.5rem solid rgba(var(--black-rgb), var(--opacity));background: rgba(var(--white-rgb), var(--opacity));}
.blockquote-medium {--opacity: .75;border-left: 0.5rem solid rgba(var(--primary-medium-rgb), var(--opacity));background: rgba(var(--white-rgb), var(--opacity));}
.blockquote-medium.primary{border-left: 0.5rem solid rgba(var(--primary-medium-rgb), var(--opacity));background: rgba(var(--white-rgb), var(--opacity));}
.blockquote-medium.secondary{border-left: 0.5rem solid rgba(var(--secondary-medium-rgb), var(--opacity));background: rgba(var(--white-rgb), var(--opacity));}
.blockquote-citation {display: block;position: relative;z-index: 1;overflow: hidden;padding: 50px 60px;margin: 35px 0;line-height: 30px;}
.blockquote-citation::before {
position: absolute;
z-index: -1;
content: "";
right: 40px;
bottom: 30px;
width: 11.5rem;
height: 11.5rem;
background-image: url('data:image/svg+xml,%3Csvg%20fill=%22%23fff%22%20viewBox=%220%200%2024%2024%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d=%22M3.691%206.292C5.094%204.771%207.217%204%2010%204h1v2.819l-.804.161c-1.37.274-2.323.813-2.833%201.604A2.902%202.902%200%200%200%206.925%2010H10a1%201%200%200%201%201%201v7c0%201.103-.897%202-2%202H3a1%201%200%200%201-1-1v-5l.003-2.919c-.009-.111-.199-2.741%201.688-4.789zM20%2020h-6a1%201%200%200%201-1-1v-5l.003-2.919c-.009-.111-.199-2.741%201.688-4.789C16.094%204.771%2018.217%204%2021%204h1v2.819l-.804.161c-1.37.274-2.323.813-2.833%201.604A2.902%202.902%200%200%200%2017.925%2010H21a1%201%200%200%201%201%201v7c0%201.103-.897%202-2%202z%22/%3E%3C/svg%3E');
background-size: contain;opacity:0.05;
background-repeat: no-repeat;
}

/* Effets */
.blur > * {backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);}

.div-logo {display: flex;justify-content: center;align-items: center;}
.div-logo img {width: 4.5rem !important;height: 4.5rem !important;margin: -0;}

/* Card : base handled by Bootstrap 5 dark mode — custom enhancements only */
.card a.stretched-link {text-decoration-line: underline;text-underline-offset: 2px;font-weight:500;}
.card a.stretched-link:hover{text-decoration-line: none;}
.card a.stretched-link::after {content: "";position: absolute;z-index: 1;top: 0;right: 0;bottom: 0;left: 0;}
.card a.simple-link {text-decoration-line: underline;text-underline-offset: 2px;font-weight:500;}
.card a.simple-link:hover{text-decoration-line: none;}
.card a.simple-link::after {content: "";}
.card-hover:not(.bg-transparent) {transition: transform .2s ease-in-out, border-color .2s ease-in-out, background-color .2s ease-in-out, box-shadow .2s ease-in-out;}
.card-hover:not(.bg-transparent):hover {transform: translateY(-0.25rem);}
.card-body img {transition: transform 0.3s ease;}
.card-body img:hover {transform: scale(1.1);}
.card-body .icones {display: inline-block;flex-shrink: 0;padding: 1rem;border-radius: 0.5rem;}
.card-footer img, .reassurance img{margin-right: 0.25rem;}

/* Boutique — Product card glass-card */
article.card{background:var(--surface-card);border:1px solid var(--glass-border);border-radius:.75rem;overflow:hidden;transition:box-shadow .3s ease,transform .3s ease;}
article.card:hover{box-shadow:0 .5rem 1.5rem rgba(0,0,0,.25);transform:translateY(-2px);}

/* Blog — Social sharing box */
.blog-share-box{background:var(--surface-card);border:1px solid var(--glass-border);border-radius:.75rem;padding:1.5rem;margin-top:1rem;}

/* Boutique — Info card (default message) */
.boutique-info-card{background:var(--surface-card);border:1px solid var(--glass-border);border-radius:.75rem;padding:1.5rem;color:var(--text-primary);}

/* Boutique — Out-of-stock card */
.out-of-stock-card{background:var(--surface-card);border:1px solid var(--glass-border);border-radius:.75rem;padding:1.5rem;text-align:center;}

/* Old header/menu/scrollToTop removed — replaced by new dark navbar system in this file */

main {line-height: 1.7;}
main p {line-height: 1.5;}

/* Debug */
.mail-data pre {white-space:pre-wrap;word-break:break-word;background:#111;color:#0f0;padding:1rem;border-radius:8px;font-size:.85rem;max-width:100%;overflow-x:auto;}
/* Fin - Debug */

section {position: relative;z-index: 0;}

section.about {width: 100%;margin: 0 auto;overflow-wrap: break-word;}
section.about .about-content {width: calc(100% - 3rem);max-width: 80em;margin: 0 auto;padding: 5rem 0;}
section.about .about-screen {content: '';height: 100%;width: 100%;background-position: 60% 50%;}

section.produits {width: 100%;margin: 0 auto;overflow-wrap: break-word;}
section.produits .produits-content {width: calc(100% - 3rem);max-width: 80em;margin: 0 auto;padding: 5rem 0;}
section.produits .produits-icons {display: inline-block;padding: 0.55rem;}
section.produits .produits-svg {width:50px; height:50px;flex-shrink: 0;filter: invert(100%);}
section.produits .slider-content {width: calc(100% - 3rem);max-width: 110em;margin: 0 auto;padding: 5rem 0;}

/* Badge produit : neuf/occasion/reconditionné/promo etc*/
.badge {
--badge-padding-x: 0.6em;
--badge-padding-y: 0.35em;
--badge-font-size: 0.8125em;
--badge-font-weight: 600;
--badge-color: #fff;
--badge-border-radius: 0.25rem;
display: inline-block;
padding: var(--badge-padding-y) var(--badge-padding-x);
font-size: var(--badge-font-size);
font-weight: var(--badge-font-weight);
line-height: 1;
color: var(--badge-color);
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: var(--badge-border-radius)
}
.badge:empty {display: none;}
.badge.bg-success{background-color:#198754 !important;color:#fff;}
.badge.bg-warning{background-color:#ffc107 !important;color:#000;}
.badge.bg-danger{background-color:#dc3545 !important;color:#fff;}
.badge.bg-secondary-rgb{background-color:rgba(var(--secondary-medium-rgb),.15);color:var(--secondary-medium);}

/* Nav tabs/pills : handled by Bootstrap 5 dark mode */
.tab-content > .tab-pane {display: none;}
.tab-content > .active {display: block;}

/* produit page article.php */
.qte-group {position: relative;width: 100%;max-width: 7rem;height: 3.5rem;display: flex;flex-wrap: wrap;align-items: stretch;border: 0.20rem solid var(--glass-border);border-radius:.5rem;}
.qte-group > .form-control {position: relative;width: 1%;min-width: 0;flex: 1 1 auto;}
.qte-group > input {border:0;padding:0;background: initial;font-size: 1.05rem;font-weight: 600;color:var(--text-primary);}
.qte-group > input.form-control {box-shadow: initial;}
.qte-group > button {width: 30%;font-size: 1.6rem;font-weight: normal;border: 0;background: initial;padding: 0;box-shadow: initial;color: var(--text-primary);}
.qte-group > button:hover {border: 0;background: initial;box-shadow: initial;color: #fff;}


section.marques {width: 100%;margin: 0 auto;overflow-wrap: break-word;}
section.marques .slider-content {width: calc(100% - 3rem);max-width: 110em;margin: 0 auto;padding: 5rem 0;}

section.reviews {width: 100%;margin: 0 auto;overflow-wrap: break-word;}
section.reviews .slider-content {width: calc(100% - 3rem);max-width: 110em;margin: 0 auto;padding: 5rem 0;}
section.reviews p {margin: 10px 0;}

section.accompagnement {width: 100%;margin: 0 auto;overflow-wrap: break-word;}
section.accompagnement .accompagnement-content {width: calc(100% - 3rem);max-width: 80em;margin: 0 auto;padding: 5rem 0;}
section.accompagnement .accompagnement-screen {content: '';height: 100%;width: 100%;background-position: center center;}

section.blog {width: 100%;margin: 0 auto;overflow-wrap: break-word;}
section.blog .blog-content {width: calc(100% - 3rem);max-width: 80em;margin: 0 auto;padding: 5rem 0;}

/* ================================
   Blog — Cartes article
================================ */
article.blog {
--blog-box-shadow: 0 .275rem .75rem -0.0625rem rgba(0,0,0,.15), 0 .125rem .4rem -0.0625rem rgba(0,0,0,.06);
--blog-box-shadow-hover: 0 .5rem 1.5rem -0.0625rem rgba(0,0,0,.25), 0 .25rem .75rem -0.0625rem rgba(0,0,0,.10);
--blog-header-bg: rgba(var(--primary-darkest-rgb),.5);
--blog-bg: var(--surface-card);
--blog-border: 1px solid var(--glass-border);
--blog-radius: .75rem;
--blog-date-width: 3.5rem;
--blog-date-font-size: .8rem;
--blog-date-padding: .8rem .25rem;
--blog-date-border-top: .25rem solid var(--secondary-medium);
--blog-date-bg: rgba(var(--primary-darkest-rgb),.92);
--blog-img-size: 20px;
--blog-footer-border-top: 1px solid var(--glass-border);
--blog-title-color: #fff;
--blog-title-hover: var(--secondary-medium);
background-color: var(--blog-bg);
border: var(--blog-border);
border-radius: var(--blog-radius);
overflow: hidden;
box-shadow: var(--blog-box-shadow);
transition: box-shadow .3s ease, transform .3s ease;
}
article.blog:hover {box-shadow: var(--blog-box-shadow-hover);transform: translateY(-2px);}
article.blog .header {position: relative;overflow: hidden;width: 100%;aspect-ratio: 4 / 3;background-color: var(--blog-header-bg);}
article.blog .header a.position-absolute {z-index: 1;top: 0;left: 0;width: 100%;height: 100%;cursor: pointer;}
article.blog .header img {z-index: 0;width: 100%;height: 100%;object-fit: cover;transition: transform .3s ease;}
article.blog .header:hover img {transform: scale(1.05);}
article.blog .header .date {
position: absolute;z-index: 2;display: inline-block;top: 1.6rem;right: 1.6rem;
width: var(--blog-date-width);color: #fff;font-size: var(--blog-date-font-size);
text-align: center;text-decoration: none;padding: var(--blog-date-padding);
border-top: var(--blog-date-border-top);border-radius: 0 0 .35rem .35rem;
background-color: var(--blog-date-bg);backdrop-filter: blur(6px);
}
article.blog .header .date::first-line {font-size: 1.25rem;font-weight: 600;line-height: 1.4;}
article.blog .body {margin: 1.5rem;font-size: .9rem;color: rgba(255,255,255,.85);}
article.blog .body h3 a {color: var(--blog-title-color);text-decoration: none;transition: color .3s ease;}
article.blog .body h3 a:hover {color: var(--blog-title-hover);}
article.blog .body .text {font-size: 1rem;line-height: 1.5;}
article.blog .body > * i.fa-solid,
article.blog .body > * i.fa-regular {font-size: var(--blog-img-size);margin-right: .25rem;vertical-align: middle;color: rgba(255,255,255,.6);}
article.blog .footer {margin: 0 1.5rem;padding: 1rem 0;border-top: var(--blog-footer-border-top);}
article.blog .footer a {color: rgba(255,255,255,.7);text-decoration: none;}
article.blog .footer a:hover {color: var(--secondary-medium);}
article.blog .footer i.fa-solid,
article.blog .footer i.fa-regular {font-size: 1rem;margin-right: .25rem;color: rgba(255,255,255,.6);}
article.blog .footer .fs-sm {color: rgba(255,255,255,.6);}

.read-btn {position: relative;font-size: 1rem;font-weight: 500;color: rgba(255,255,255,.8);text-decoration: none;}
.read-btn:hover {color: #fff;}
.read-btn::after {content: "";position: absolute;left: 0;bottom: -.25rem;width: 100%;height: .2rem;background-color: var(--secondary-medium);transform: scaleX(0);transform-origin: right;transition: transform .6s ease-out;}
.read-btn:hover::after {transform: scaleX(1);transform-origin: left;}

/* ================================
   Blog — Article détail
================================ */
article.blog-details ul.article-info {display: flex;flex-wrap: wrap;justify-content: start;padding: 0;margin: 0;list-style: none;}
article.blog-details ul.article-info li {position: relative;display: flex;align-items: center;padding: 0 .5rem 0 1.6rem;margin-bottom: .5rem;white-space: nowrap;color: rgba(255,255,255,.7);}
article.blog-details ul.article-info li {padding-left: 0;}
article.blog-details ul.article-info li i {margin-right: .4rem;color: rgba(255,255,255,.5);}
article.blog-details ul.article-info li a,
article.blog-details ul.article-info li span {display: flex;align-items: center;white-space: nowrap;color: rgba(255,255,255,.7);text-decoration: none;}
article.blog-details ul.article-info li a:hover {color: var(--secondary-medium);}
article.blog-details ul.article-info li img {width: 20px;height: 20px;margin-right: .5rem;}
article.blog-details .article-image {position: relative;width: 100%;aspect-ratio: 4 / 3;overflow: hidden;border-radius: .5rem;}
article.blog-details .article-image img {width: 100%;height: 100%;object-fit: cover;display: block;}
article.blog-details .article-footer {display: flex;justify-content: space-between;align-items: center;padding-top: 1rem;flex-wrap: wrap;}
article.blog-details .keywords {display: flex;align-items: center;flex-wrap: wrap;}
article.blog-details .keywords > * {margin: 0 .5rem 0 0;padding: 0;white-space: nowrap;}
article.blog-details .keywords-list {display: flex;gap: .5rem;flex-wrap: wrap;}
article.blog-details .keyword-badge {padding: .25rem .75rem;font-size: .875rem;text-decoration: none;color: #fff;font-weight: 500;background-color: rgba(255,255,255,.08);border-radius: .25rem;border: 1px solid rgba(255,255,255,.1);transition: all .3s ease;}
article.blog-details .keyword-badge:hover {background-color: rgba(var(--secondary-medium-rgb),.2);border-color: var(--secondary-medium);}
article.blog-details .like-button {
position: relative;display: flex;align-items: center;justify-content: space-between;
background-color: rgba(255,255,255,.05);border: 1px solid rgba(255,255,255,.1);
padding: 1rem 1.5rem;border-radius: .5rem;color: #fff;white-space: nowrap;font-weight: 500;
cursor: pointer;transition: all .3s ease;text-decoration: none;
}
article.blog-details .like-button:hover {background-color: rgba(var(--secondary-medium-rgb),.15);border-color: var(--secondary-medium);}
article.blog-details .like-button i {margin-right: .25rem;color: rgba(255,255,255,.7);}
article.blog-details .like-badge {margin-left: .5rem;padding: .25rem .5rem;color: #fff;font-weight: 500;border-radius: .25rem;font-size: .875rem;background-color: var(--secondary-medium);}
@media (max-width: 768px) {
article.blog-details .article-footer {flex-direction: column;align-items: flex-start;gap: 1rem;}
article.blog-details .like-button {width: 100%;justify-content: center;}
article.blog-details .keywords {width: 100%;}
}

/* Article content — lisibilité dark mode */
.article-content {font-size: 1.1rem;line-height: 1.8;color: #e0e0e0;text-align: justify;}
.article-content p {margin-bottom: 1.5rem;}
.article-content blockquote {
background-color: rgba(255,255,255,.05) !important;border-left: 4px solid var(--secondary-medium) !important;
color: #fff !important;padding: 1.5rem 2rem !important;margin: 2rem 0 !important;
font-style: italic;border-radius: 0 .5rem .5rem 0;font-size: 1.15rem;
}
.article-content h2 {color: #fff;margin-top: 3rem;margin-bottom: 1.5rem;padding-bottom: .5rem;border-bottom: 1px solid rgba(255,255,255,.1);font-size: 1.75rem;}
.article-content h3 {color: var(--primary-light);margin-top: 2rem;margin-bottom: 1rem;font-weight: 600;font-size: 1.4rem;}
.article-content ul,.article-content ol {margin-bottom: 1.5rem;padding-left: 1.5rem;}
.article-content li {margin-bottom: .5rem;line-height: 1.6;color: #d0d0d0;}
.article-content a {color: var(--secondary-light);text-decoration: underline;text-underline-offset: 4px;font-weight: 600;}
.article-content a:hover {color: #fff;}

/* ================================
   Blog — Sidebar
================================ */
aside.sidebar-area .widget {margin-bottom: 2rem;padding: 1.5rem;background-color: var(--surface-card);border: 1px solid var(--glass-border);border-radius: .75rem;}
aside.sidebar-area .widget h4 {color: #fff;}

aside.sidebar-area .cat ul {margin: 0;padding: 0;list-style: none;}
aside.sidebar-area .cat ul li {display: block;position: relative;cursor: pointer;padding: .75rem 1.25rem;margin-bottom: .5rem;background-color: rgba(255,255,255,.04);border-radius: .5rem;transition: background-color .3s, color .3s;}
aside.sidebar-area .cat ul li:last-child {margin-bottom: 0;}
aside.sidebar-area .cat ul li a {display: flex;align-items: center;font-size: .95rem;font-weight: 600;text-decoration: none;color: rgba(255,255,255,.75);transition: color .3s;}
aside.sidebar-area .cat ul li a i {margin-right: .5rem;font-size: .75rem;color: rgba(255,255,255,.5);transition: color .3s;}
aside.sidebar-area .cat ul li:hover a i {color: #fff;}
aside.sidebar-area .cat ul li:hover {background-color: rgba(var(--secondary-medium-rgb),.12);}
aside.sidebar-area .cat ul li:hover a {color: #fff;}
aside.sidebar-area .cat ul li.active {background-color: rgba(var(--secondary-medium-rgb),.15);}
aside.sidebar-area .cat ul li.active a {color: #fff !important;}

/* ================================
   Réalisations — Cards
================================ */
.realisation-card{max-width:none;width:100%;overflow:hidden;background:var(--surface-card);border:1px solid var(--glass-border);border-radius:.75rem;box-shadow:0 .275rem .75rem -0.0625rem rgba(0,0,0,.15),0 .125rem .4rem -0.0625rem rgba(0,0,0,.06);transition:box-shadow .3s ease,transform .3s ease;}
.realisation-card:hover{box-shadow:0 .5rem 1.5rem -0.0625rem rgba(0,0,0,.25),0 .25rem .75rem -0.0625rem rgba(0,0,0,.10);transform:translateY(-2px);}
.realisation-card-media{position:relative;overflow:hidden;width:100%;aspect-ratio:16 / 9;background-color:rgba(var(--primary-darkest-rgb),.5);}
.realisation-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;}
.realisation-card:hover .realisation-card-media img{transform:scale(1.05);}
.realisation-card-body{padding:1.5rem;font-size:.9rem;color:rgba(255,255,255,.85);}
.realisation-card-body h2 a{color:#fff;text-decoration:none;transition:color .3s ease;}
.realisation-card-body h2 a:hover{color:var(--secondary-medium);}
.realisation-card-body .mission{display:inline-block;padding:.2rem .75rem;font-size:.8rem;font-weight:500;color:rgba(255,255,255,.85);background:rgba(255,255,255,.08);border-radius:.5rem;margin-top:.5rem;}
.realisation-card-body .recap{font-size:.85rem;line-height:1.5;}
.realisation-card-body .recap p{margin:0;}
.realisation-footer{margin:0;padding:0 1.5rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--glass-border);padding-top:1rem;}
.realisation-footer span{display:inline-flex;align-items:center;color:rgba(255,255,255,.6);font-size:.85rem;}
.realisation-footer i{font-size:.9rem;}
.realisation-footer .read-btn{color:rgba(255,255,255,.7);text-decoration:none;font-weight:600;font-size:.9rem;}
.realisation-footer .read-btn:hover{color:var(--secondary-medium);}
.realisation-grid-item.is-hidden{display:none;}

/* Réalisations filter */
.realisations-filter-list {margin: 0;padding: 0;list-style: none;}
.realisations-filter-list li {margin-bottom: .5rem;}
.realisations-filter-list li:last-child {margin-bottom: 0;}
.realisations-filter-list .filter-btn {display: flex;align-items: center;width: 100%;padding: .75rem 1.25rem;font-size: .95rem;font-weight: 600;font-family: inherit;text-align: left;cursor: pointer;color: rgba(255,255,255,.75);background-color: rgba(255,255,255,.04);border: 1px solid transparent;border-radius: .5rem;transition: background-color .3s, color .3s, border-color .3s;}
.realisations-filter-list .filter-btn:hover {background-color: rgba(var(--secondary-medium-rgb),.12);color: #fff;}
.realisations-filter-list .filter-btn i {margin-right: .5rem;font-size: .75rem;color: rgba(255,255,255,.5);transition: color .3s;}
.realisations-filter-list .filter-btn:hover i {color: #fff;}
.realisations-filter-list .filter-btn.is-active {background-color: rgba(var(--secondary-medium-rgb),.15);color: #fff;border-color: rgba(var(--secondary-medium-rgb),.3);}
.realisations-filter-list .filter-btn.is-active i {color: #fff;}

aside.sidebar-area .blog .blog-recent {display: flex;align-items: center;gap: 1rem;margin-bottom: 1rem;}
aside.sidebar-area .blog .blog-recent:last-child {margin-bottom: 0;}
aside.sidebar-area .blog .media {flex: 0 0 80px;max-width: 80px;overflow: hidden;border-radius: .35rem;}
aside.sidebar-area .blog .media img {width: 100%;height: auto;display: block;}
aside.sidebar-area .blog .body > * a {display: flex;text-decoration: none;align-items: center;color: rgba(255,255,255,.7);}
aside.sidebar-area .blog .body > * a:hover {color: var(--secondary-medium);}
aside.sidebar-area .blog .body .meta {font-size: .8rem;margin-bottom: .35rem;color: rgba(255,255,255,.5);}
aside.sidebar-area .blog .body .meta a i {margin-right: .25rem;font-size: .85rem;color: rgba(255,255,255,.5);}
aside.sidebar-area .blog .body .title {margin: 0;font-size: .9rem;}
aside.sidebar-area .blog .body .title a {color: rgba(255,255,255,.85);}
aside.sidebar-area .blog .body .title a:hover {color: var(--secondary-medium);}

aside.sidebar-area .tags a {
display: inline-block;padding: .45rem .9rem;margin: .2rem;font-size: .85rem;font-weight: 500;
color: rgba(255,255,255,.75);background-color: rgba(255,255,255,.06);
border: 1px solid rgba(255,255,255,.08);border-radius: 50px;text-decoration: none;
transition: all .3s ease;white-space: nowrap;
}
aside.sidebar-area .tags a:hover {background-color: rgba(var(--secondary-medium-rgb),.2);border-color: var(--secondary-medium);color: #fff;}
aside.sidebar-area .tags a.active {background-color: var(--secondary-medium);border-color: var(--secondary-medium);color: #fff;}
aside.sidebar-area .tags div {display: flex;flex-wrap: wrap;justify-content: flex-start;gap: .35rem;}
@media (max-width: 768px) {
aside.sidebar-area .tags div {justify-content: center;}
}

/* Footer articles récents */
.footer-articles{padding:0}
.footer-articles .footer-title{margin-bottom:1rem}
.footer-articles-grid{display:flex;flex-direction:column;gap:1rem}
.acro-footer .blog-recent{display:flex;align-items:center;gap:.75rem}
.acro-footer .blog-recent .media{flex:0 0 56px;max-width:56px;overflow:hidden;border-radius:.35rem}
.acro-footer .blog-recent .media img{width:100%;height:auto;display:block;aspect-ratio:1;object-fit:cover}
.acro-footer .blog-recent .body > * a{display:flex;text-decoration:none;align-items:center;color:rgba(255,255,255,.6)}
.acro-footer .blog-recent .body > * a:hover{color:var(--primary-fluo)}
.acro-footer .blog-recent .body .meta{font-size:.7rem;margin-bottom:.15rem}
.acro-footer .blog-recent .body .meta a i{margin-right:.25rem;font-size:.75rem;color:rgba(255,255,255,.4)}
.acro-footer .blog-recent .body .title{margin:0;font-size:.8rem;line-height:1.4}

/* Sidebar widget dark overrides (article.php) */
.sidebar .widget,.sidebar .card {background-color: rgba(255,255,255,.05);border: 1px solid rgba(255,255,255,.1);color: #fff;border-radius: .75rem;}
.sidebar .widget-title,.sidebar .card-title {color: #fff;border-bottom: 1px solid rgba(255,255,255,.1);padding-bottom: .75rem;margin-bottom: 1rem;}
.tag-cloud a,.sidebar .badge {background-color: rgba(255,255,255,.08);color: rgba(255,255,255,.75);border: 1px solid rgba(255,255,255,.06);border-radius: 50px;padding: .35rem .85rem;font-size: .85rem;text-decoration: none;transition: all .3s ease;}
.tag-cloud a:hover {background-color: rgba(var(--secondary-medium-rgb),.2);color: #fff;border-color: var(--secondary-medium);}

/* ================================
   Pagination — dark overrides (base handled by Bootstrap 5)
================================ */
.pagination {
--bs-pagination-color: rgba(255,255,255,.7);
--bs-pagination-bg: transparent;
--bs-pagination-border-color: transparent;
--bs-pagination-hover-color: #fff;
--bs-pagination-hover-bg: var(--secondary-medium);
--bs-pagination-hover-border-color: transparent;
--bs-pagination-active-color: #fff;
--bs-pagination-active-bg: var(--secondary-medium);
--bs-pagination-active-border-color: transparent;
--bs-pagination-disabled-color: rgba(255,255,255,.3);
--bs-pagination-disabled-bg: transparent;
--bs-pagination-disabled-border-color: transparent;
justify-content: center;gap: .5rem;
}
.page-link {border-radius: .375rem;}
@media (max-width: 576px) {
.page-item {display: none;}
.page-item:first-child,.page-item:last-child,.page-item:nth-child(2) {display: flex;}
}


.service-item, .blog-item {text-align: center;}
.service-item img, .blog-item img {max-width: 100%;height: auto;margin-bottom: 20px;}

/* Slider */
.slider-content {user-select: none;-webkit-user-select: none;-ms-user-select: none;}
.slider-wrapper {position: relative;z-index: 100;width: 100%;margin: 0 auto;overflow: hidden;}
.slider-box {display: flex;transition: transform 0.5s ease-in-out;}
.slider-container {flex: 0 0 100%;padding: 1rem;box-sizing: border-box;}
.slider-item {width: 100%;box-sizing: border-box;padding: 20px;background: rgba(var(--primary-dark-rgb),.55);border: 1px solid rgba(255,255,255,.06);box-shadow: 0 0 10px rgba(0,0,0,.15);border-radius: 8px;color: var(--text-primary);}
.quote {height: 11rem;font-size: 16px;line-height: 1.6em;}
.stars {color: rgba(var(--yellow-medium-rgb), 1);}
.author {font-weight: 500;}
.slider-item .date {color: rgba(255,255,255,.6);}
.slider-controls {display: flex;align-items: center;justify-content: center;margin-top: 20px;}
.slider-controls button {display: flex;align-items: center;justify-content: center;width: 2.6rem;height: 2.6rem;font-size: 2rem;font-weight: normal;white-space: nowrap;cursor: pointer;color: rgba(var(--white-rgb), 1);background-color: rgba(var(--black-rgb), 1);border: none;margin: 0 5px;border-radius: 50%;flex-shrink: 0;
box-shadow: 0 0.275rem 0.75rem -0.0625rem rgba(var(--black-rgb), 0.6), 0 0.125rem 0.4rem -0.0625rem rgba(var(--black-rgb), 0.03);}
.slider-controls button:hover {background-color: rgba(var(--black-rgb), 0.85);}
.slider-controls button img {filter: invert(90%);-webkit-filter: invert(90%);}
.slider-controls.primary button {color: rgba(var(--black-rgb), 1);background-color: rgba(var(--primary-dark-rgb), 1);}
.slider-controls.primary button:hover {color: rgba(var(--black-rgb), 1);background-color: rgba(var(--primary-medium-rgb), 1);}
.slider-controls.white button {color: rgba(var(--white-rgb), 1);background-color: rgba(var(--white-rgb), 1);box-shadow: 0 0.275rem 0.75rem -0.0625rem rgba(var(--black-rgb), 0.10), 0 0.125rem 0.4rem -0.0625rem rgba(var(--black-rgb), 0.03);}
.slider-controls.white button:hover {color: rgba(var(--white-rgb), 1);background-color: rgba(var(--white-rgb), 1);}
.slider-controls.white button img {filter: invert(0%);-webkit-filter: invert(0%);}
.slider-controls.white button:hover img {filter: invert(20%);-webkit-filter: invert(20%);}
.slider-controls.secondary button {color: rgba(var(--white-rgb), 1);background-color: rgba(var(--secondary-medium-rgb), 1);box-shadow: 0 0.275rem 0.75rem -0.0625rem rgba(var(--black-rgb), 0.25), 0 0.125rem 0.4rem -0.0625rem rgba(var(--black-rgb), 0.03);}
.slider-controls.secondary button:hover {color: rgba(var(--white-rgb), 1);background-color: rgba(var(--secondary-medium-rgb), 1);}

/* Page : à propos — timeline removed (unused) */

/* team-photos-grid + grid-columns removed (unused) */

/* zoom > img */
/*
.modal-img {position: fixed;z-index: 1000;left: 0;top: 0;display: flex;justify-content: center;align-items: center;width: 100%;height: 100%;overflow: hidden;background-color: rgba(var(--black-rgb), 0.8);}
.modal-img .modal-img-content {position: relative;max-width: 90%;max-height: 90%;overflow: visible;padding: 0;}
.modal-img .modal-img-content img {display: block;width: auto;height: auto;max-width: 100%;max-height: 800px;margin: 0 auto;}
.modal-img .close-img:before {content: "Fermer";color: var(--white);font-size: 1rem;margin-left: 1.2rem;}
.modal-img .close-img {position: absolute;cursor: pointer;top: -1.3rem;right: 3.8rem;width: 1.2rem;height: 1.2rem;background: url('data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22white%22%3E%3Cpath d=%22M19.3 4.7a1 1 0 0 0-1.4 0L12 10.6 6.1 4.7a1 1 0 0 0-1.4 1.4l5.9 5.9-5.9 5.9a1 1 0 1 0 1.4 1.4l5.9-5.9 5.9 5.9a1 1 0 0 0 1.4-1.4l-5.9-5.9 5.9-5.9a1 1 0 0 0 0-1.4z%22/%3E%3C/svg%3E') no-repeat center;background-size: contain;}
*/

/* Slide img + Diaporama */
.zoom-img {cursor: pointer;}
.zoom-modal-overlay {position: fixed;z-index: 998;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.95);}
.zoom-modal-slideshow-content {position: absolute;z-index: 1000;display: flex;flex-direction: column;justify-content: center;align-items: center;top: 50%;left: 50%;transform: translate(-50%, -50%);}
.zoom-modal-slideshow {position: fixed;z-index: 1000;display: flex;justify-content: center;align-items: center;top: 0;left: 0;width: 100%;height: 100%;}
.zoom-modal-slideshow.visually-hidden {display: none;}
.zoom-img-container {display: flex;justify-content: center;align-items: center;max-width: 100%;max-height: 100%;}
.zoom-img-container img {display: block;max-width: 100%;max-height: 80vh;margin: auto;border-radius: 10px;}
.zoom-close-slideshow {
position: absolute;
top: 20px;
right: 20px;
font-size: 2rem;
color: white;
background: rgba(0, 0, 0, 0.5);
padding: 10px;
cursor: pointer;
z-index: 1001;
width: 30px;
height: 30px;
display: flex;
justify-content: center;
align-items: center;
border: 0.15rem solid #fff;
opacity: 0.75;
}
.zoom-close-slideshow:hover {opacity: 1;}
.zoom-prev-img, .zoom-next-img {
position: absolute;
z-index: 1001;
pointer-events: auto;
font-size: 2rem;
color: white;
background: rgba(0, 0, 0, 0.5);
border-radius: 50%;
cursor: pointer;
top: 50%;
transform: translateY(-50%);
width: 50px;
height: 50px;
display: flex;
justify-content: center;
align-items: center;
border: 0.15rem solid #fff;
line-height: 1;
opacity: 0.5;
}
.zoom-prev-img:hover, .zoom-next-img:hover {opacity: 1;}
.zoom-prev-img {left: 20px;}
.zoom-next-img {right: 20px;}
.zoom-play-slideshow {
position: absolute;
z-index: 1002;
bottom: 20px;
left: 50%;
transform: translateX(-50%);
font-size: 2rem;
color: white;
background: rgba(0, 0, 0, 0.5);
padding: 15px;
cursor: pointer;
width: 50px;
height: 50px;
display: flex;
justify-content: center;
align-items: center;
border: 0.15rem solid #fff;
opacity: 0.75;
}
.zoom-play-slideshow:hover {opacity: 1;}
.zoom-controls-container {position: absolute;display: flex;top: 0;left: 0;width: 100%;height: 100%;justify-content: space-between;align-items: center;pointer-events: none;}
.zoom-prev-img, .zoom-next-img, .zoom-play-slideshow, .zoom-close-slideshow {pointer-events: auto;}
@media (max-width: 768px) {
.zoom-modal-slideshow-content {width: 100%;height: auto;}
.zoom-img-container img {max-width: 90%;max-height: 70vh;}
}

/* filter-link removed (unused) */

/* Sommaire */
.sommaire {display: flex;flex-direction: column;color: #fff;border-radius: .75rem;padding: 1.5rem;margin: 0 0 1rem 0;background-color: rgba(255,255,255,.05);border: 1px solid rgba(255,255,255,.08);}
.sommaire-header {display: flex;align-items: center; margin-bottom: 0.5rem;}
.sommaire-icon {font-size: 1.8rem;color: var(--secondary-medium);margin-right: 0.5rem;}
.sommaire-title {font-size: 1.5rem;margin: 0;color: #fff;}
.sommaire-list {list-style: none;padding: 0;margin: 0;}
.sommaire-list li {margin: 0.6rem 0;}
.sommaire-list a {position: relative;color: rgba(255,255,255,.75);text-decoration: none;padding-bottom: 0px;transition: all 0.2s;}
.sommaire-list a::before {content: '';position: absolute;bottom: -0.25rem;left: 0;right: 100%;height: 0.35rem;background-color: var(--secondary-medium);transition: right 0.3s;}
.sommaire-list a:hover::before {right: 0;}
.sommaire-list a:hover {color: #fff;}

/* Accordion : handled by Bootstrap 5 dark mode */


/* Old footer removed — replaced by .acro-footer in this file */

/* Elements */
.box-link {display: flex;justify-content: space-between;flex-direction: column;align-items: center;gap: 1rem;}
.box-link-2 {display: flex;justify-content: space-between;flex-direction: column;}
.box-link-2 h1 {width: 100%;}
.scrollable {max-height: 12rem;overflow-y: auto;scrollbar-width: thin;}

/* Mobile */
@media (max-width: 768px) {
.text-404 {font-size: 9rem;}
}

/* PC */
@media (min-width: 1024px) {
.box-link {display: flex;justify-content: flex-start;flex-direction: row;align-items: start;gap: 1.2rem;}
.box-link-2 {display: flex;justify-content: flex-start;flex-direction: row;align-items: center;}
.box-link-2 h1 {width: 55%;}
}

/* PC */
@media (min-width: 1150px) {
section.about .about-content {width: 100%;max-width: initial;margin: 0;padding: 0;}
section.accompagnement .accompagnement-content {width: 100%;max-width: initial;margin: 0;padding: 0;}
.slider-container {box-sizing: border-box;flex: 0 0 calc(100% / var(--pc-count) - 0px);}
.slider-container.last {margin-right: 0;}
}

/* Alertes */
.alert {
--sv-alert-bg: transparent;
--sv-alert-padding-x: 1rem;
--sv-alert-padding-y: 1rem;
--sv-alert-margin-bottom: 1rem;
--sv-alert-color: inherit;
--sv-alert-border-color: transparent;
--sv-alert-border: 1px solid var(--sv-alert-border-color);
--sv-alert-border-radius: 0.5rem;
position: relative;
padding: var(--sv-alert-padding-y) var(--sv-alert-padding-x);
margin-bottom: var(--sv-alert-margin-bottom);
color: var(--sv-alert-color);
background-color: var(--sv-alert-bg);
border: var(--sv-alert-border);
border-radius: var(--sv-alert-border-radius)
}
.alert-danger {--sv-alert-color: #d73d3d;--sv-alert-bg: #fdecec;--sv-alert-border-color: #f7a2a2;}
.alert-success {--sv-alert-color: #1fb155;--sv-alert-bg: #e9f9ef;--sv-alert-border-color: #91e2af;}

/* Forms, validation, form-check : handled by Bootstrap 5 dark mode */


/* Modal + fade + collapse + btn-close : handled by Bootstrap 5 dark mode */
.fade {transition: opacity .15s linear;}
.fade:not(.show) {opacity: 0;}
.collapse:not(.show) {display: none;}

/* Réseaux sociaux (FA icons) */
.social-sharing {display: flex;align-items: center;gap: .75rem;}
.social-sharing a {display: inline-flex;align-items: center;justify-content: center;width: 2.5rem;height: 2.5rem;font-size: 1.15rem;color: rgba(255,255,255,.7);background-color: rgba(255,255,255,.08);border: 1px solid rgba(255,255,255,.1);border-radius: 50%;text-decoration: none;transition: all .3s ease;}
.social-sharing a:hover {color: #fff;background-color: rgba(var(--secondary-medium-rgb),.2);border-color: var(--secondary-medium);}


/* Animations */
@keyframes fade-fromleft {
0% {
opacity:0;
-webkit-transform:translate(-5em);
-moz-transform:translate(-5em);
-ms-transform:translate(-5em);
-o-transform:translate(-5em);
transform:translate(-5em)
}
100% {
opacity:1;
-webkit-transform:translate(0);
-moz-transform:translate(0);
-ms-transform:translate(0);
-o-transform:translate(0);
transform:translate(0)
}
}
@-webkit-keyframes fade-fromleft {
0% {
opacity:0;
-webkit-transform:translate(-5em);
-moz-transform:translate(-5em);
-ms-transform:translate(-5em);
-o-transform:translate(-5em);
transform:translate(-5em)
}
100% {
opacity:1;
-webkit-transform:translate(0);
-moz-transform:translate(0);
-ms-transform:translate(0);
-o-transform:translate(0);
transform:translate(0)
}
}
@keyframes fade-fromright {
0% {
opacity:0;
-webkit-transform:translate(5em);
-moz-transform:translate(5em);
-ms-transform:translate(5em);
-o-transform:translate(5em);
transform:translate(5em)
}
100% {
opacity:1;
-webkit-transform:translate(0);
-moz-transform:translate(0);
-ms-transform:translate(0);
-o-transform:translate(0);
transform:translate(0)
}
}
@-webkit-keyframes fade-fromright {
0% {
opacity:0;
-webkit-transform:translate(5em);
-moz-transform:translate(5em);
-ms-transform:translate(5em);
-o-transform:translate(5em);
transform:translate(5em)
}
100% {
opacity:1;
-webkit-transform:translate(0);
-moz-transform:translate(0);
-ms-transform:translate(0);
-o-transform:translate(0);
transform:translate(0)
}
}
@keyframes fade-fromtop {
0% {
opacity:0;
-webkit-transform:translateY(-5em);
-moz-transform:translateY(-5em);
-ms-transform:translateY(-5em);
-o-transform:translateY(-5em);
transform:translateY(-5em)
}
100% {
opacity:1;
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@-webkit-keyframes fade-fromtop {
0% {
opacity:0;
-webkit-transform:translateY(-5em);
-moz-transform:translateY(-5em);
-ms-transform:translateY(-5em);
-o-transform:translateY(-5em);
transform:translateY(-5em)
}
100% {
opacity:1;
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@keyframes fade-frombot {
0% {
opacity:0;
-webkit-transform:translateY(5em);
-moz-transform:translateY(5em);
-ms-transform:translateY(5em);
-o-transform:translateY(5em);
transform:translateY(5em)
}
100% {
opacity:1;
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@-webkit-keyframes fade-frombot {
0% {
opacity:0;
-webkit-transform:translateY(5em);
-moz-transform:translateY(5em);
-ms-transform:translateY(5em);
-o-transform:translateY(5em);
transform:translateY(5em)
}
100% {
opacity:1;
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@keyframes translate-fromtop {
0% {
-webkit-transform:translateY(-5em);
-moz-transform:translateY(-5em);
-ms-transform:translateY(-5em);
-o-transform:translateY(-5em);
transform:translateY(-5em)
}
100% {
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@-webkit-keyframes translate-fromtop {
0% {
-webkit-transform:translateY(-5em);
-moz-transform:translateY(-5em);
-ms-transform:translateY(-5em);
-o-transform:translateY(-5em);
transform:translateY(-5em)
}
100% {
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@keyframes translate-frombot {
0% {
-webkit-transform:translateY(5em);
-moz-transform:translateY(5em);
-ms-transform:translateY(5em);
-o-transform:translateY(5em);
transform:translateY(5em)
}
100% {
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@-webkit-keyframes translate-frombot {
0% {
-webkit-transform:translateY(5em);
-moz-transform:translateY(5em);
-ms-transform:translateY(5em);
-o-transform:translateY(5em);
transform:translateY(5em)
}
100% {
-webkit-transform:translateY(0);
-moz-transform:translateY(0);
-ms-transform:translateY(0);
-o-transform:translateY(0);
transform:translateY(0)
}
}
@keyframes translate-fromright {
0% {
-webkit-transform:translate(5em);
-moz-transform:translate(5em);
-ms-transform:translate(5em);
-o-transform:translate(5em);
transform:translate(5em)
}
100% {
-webkit-transform:translate(0);
-moz-transform:translate(0);
-ms-transform:translate(0);
-o-transform:translate(0);
transform:translate(0)
}
}
@-webkit-keyframes translate-fromright {
0% {
-webkit-transform:translate(5em);
-moz-transform:translate(5em);
-ms-transform:translate(5em);
-o-transform:translate(5em);
transform:translate(5em)
}
100% {
-webkit-transform:translate(0);
-moz-transform:translate(0);
-ms-transform:translate(0);
-o-transform:translate(0);
transform:translate(0)
}
}
@keyframes translate-menu {
0% {
transform:translate(0);
-webkit-transform:translate(0)
}
100% {
transform:translate(calc(-100vw + 6em));
-webkit-transform:translate(-webkit-calc(-100vw + 6em))
}
}
@keyframes translate-menu-reverse {
0% {
transform:translate(calc(-100vw + 6em));
-webkit-transform:translate(-webkit-calc(-100vw + 6em))
}
100% {
transform:translate(0);
-webkit-transform:translate(0)
}
}
@-webkit-keyframes translate-menu {
0% {
transform:translate(0);
-webkit-transform:translate(0)
}
100% {
transform:translate(calc(-100vw + 6em));
-webkit-transform:translate(-webkit-calc(-100vw + 6em))
}
}
@-webkit-keyframes translate-menu-reverse {
0% {
transform:translate(calc(-100vw + 6em));
-webkit-transform:translate(-webkit-calc(-100vw + 6em))
}
100% {
transform:translate(0);
-webkit-transform:translate(0)
}
}
@keyframes letter-clock {
0% {
clip-path:polygon(50% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%)
}
12.5% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%)
}
25% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%)
}
37.5% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%)
}
50% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%)
}
62.5% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,0% 0%,0% 0%,0% 0%)
}
75% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,50% -25%,50% -25%,50% -25%)
}
87.5% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,50% -25%,100% 0%,100% 0%)
}
100% {
clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,50% -25%,100% 0%,125% 50%)
}
}
@-webkit-keyframes letter-clock {
0% {
-webkit-clip-path:polygon(50% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%)
}
12.5% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%)
}
25% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%)
}
37.5% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%)
}
50% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%)
}
62.5% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,0% 0%,0% 0%,0% 0%)
}
75% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,50% -25%,50% -25%,50% -25%)
}
87.5% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,50% -25%,100% 0%,100% 0%)
}
100% {
-webkit-clip-path:polygon(50% 50%,125% 50%,100% 100%,50% 125%,0% 100%,-25% 50%,0% 0%,50% -25%,100% 0%,125% 50%)
}
}
@keyframes letter-clock-invert {
0% {
clip-path:polygon(50% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%)
}
12.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%)
}
25% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%)
}
37.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%)
}
50% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%)
}
62.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,100% 0%,100% 0%,100% 0%)
}
75% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,50% -25%,50% -25%,50% -25%)
}
87.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,50% -25%,0% 0%,0% 0%)
}
100% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,50% -25%,0% 0%,-25% 50%)
}
}
@-webkit-keyframes letter-clock-invert {
0% {
clip-path:polygon(50% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%,-25% 50%)
}
12.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%,0% 100%)
}
25% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%,50% 125%)
}
37.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%)
}
50% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,125% 50%,125% 50%,125% 50%,125% 50%)
}
62.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,100% 0%,100% 0%,100% 0%)
}
75% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,50% -25%,50% -25%,50% -25%)
}
87.5% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,50% -25%,0% 0%,0% 0%)
}
100% {
clip-path:polygon(50% 50%,-25% 50%,0% 100%,50% 125%,100% 100%,125% 50%,100% 0%,50% -25%,0% 0%,-25% 50%)
}
}
@keyframes scalefocus {
0% {
-webkit-transform:scale(1);
-moz-transform:scale(1);
-ms-transform:scale(1);
transform:scale(1)
}
50% {
-webkit-transform:scale(1.2);
-moz-transform:scale(1.2);
-ms-transform:scale(1.2);
transform:scale(1.2)
}
100% {
-webkit-transform:scale(1);
-moz-transform:scale(1);
-ms-transform:scale(1);
transform:scale(1)
}
}
@-webkit-keyframes scalefocus {
0% {
-webkit-transform:scale(1);
-moz-transform:scale(1);
-ms-transform:scale(1);
transform:scale(1)
}
50% {
-webkit-transform:scale(1.2);
-moz-transform:scale(1.2);
-ms-transform:scale(1.2);
transform:scale(1.2)
}
100% {
-webkit-transform:scale(1);
-moz-transform:scale(1);
-ms-transform:scale(1);
transform:scale(1)
}
}
@keyframes scale-in {
0% {
-webkit-transform:scale(0);
-moz-transform:scale(0);
-ms-transform:scale(0);
transform:scale(0)
}
100% {
-webkit-transform:scale(1);
-moz-transform:scale(1);
-ms-transform:scale(1);
transform:scale(1)
}
}
@-webkit-keyframes scale-in {
0% {
-webkit-transform:scale(0)
}
100% {
-webkit-transform:scale(1)
}
}
@keyframes window-fromleft {
0% {
clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%)
}
100% {
clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%)
}
}
@-webkit-keyframes window-fromleft {
0% {
clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%)
}
100% {
clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%)
}
}
@keyframes window-fromright {
0% {
clip-path:polygon(100% 0%,100% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(100% 0%,100% 100%,100% 100%,100% 0%)
}
100% {
clip-path:polygon(100% 0%,100% 100%,0% 100%,0% 0%);
-webkit-clip-path:polygon(100% 0%,100% 100%,0% 100%,0% 0%)
}
}
@-webkit-keyframes window-fromright {
0% {
clip-path:polygon(100% 0%,100% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(100% 0%,100% 100%,100% 100%,100% 0%)
}
100% {
clip-path:polygon(100% 0%,100% 100%,0% 100%,0% 0%);
-webkit-clip-path:polygon(100% 0%,100% 100%,0% 100%,0% 0%)
}
}
@keyframes window-frombot {
0% {
clip-path:polygon(0% 100%,100% 100%,100% 100%,0% 100%);
-webkit-clip-path:polygon(0% 100%,100% 100%,100% 100%,0% 100%)
}
100% {
clip-path:polygon(0% 100%,100% 100%,100% 0%,0% 0%);
-webkit-clip-path:polygon(0% 100%,100% 100%,100% 0%,0% 0%)
}
}
@-webkit-keyframes window-frombot {
0% {
clip-path:polygon(0% 100%,100% 100%,100% 100%,0% 100%);
-webkit-clip-path:polygon(0% 100%,100% 100%,100% 100%,0% 100%)
}
100% {
clip-path:polygon(0% 100%,100% 100%,100% 0%,0% 0%);
-webkit-clip-path:polygon(0% 100%,100% 100%,100% 0%,0% 0%)
}
}
@keyframes window-fromtop {
0% {
clip-path:polygon(0% 0%,100% 0%,100% 0%,0% 0%);
-webkit-clip-path:polygon(0% 0%,100% 0%,100% 0%,0% 0%)
}
100% {
clip-path:polygon(0% 0%,100% 0%,100% 100%,0% 100%);
-webkit-clip-path:polygon(0% 0%,100% 0%,100% 100%,0% 100%)
}
}
@-webkit-keyframes window-fromtop {
0% {
clip-path:polygon(0% 0%,100% 0%,100% 0%,0% 0%);
-webkit-clip-path:polygon(0% 0%,100% 0%,100% 0%,0% 0%)
}
100% {
clip-path:polygon(0% 0%,100% 0%,100% 100%,0% 100%);
-webkit-clip-path:polygon(0% 0%,100% 0%,100% 100%,0% 100%)
}
}
@keyframes label-window-fromleft {
0% {
clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%);
color:rgba(255,255,255,0)
}
50% {
clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
color:rgba(255,255,255,0)
}
100% {
clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
color:rgba(255,255,255,1)
}
}
@-webkit-keyframes label-window-fromleft {
0% {
clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,0% 100%,0% 0%);
color:rgba(255,255,255,0)
}
50% {
clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
color:rgba(255,255,255,0)
}
100% {
clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
-webkit-clip-path:polygon(0% 0%,0% 100%,100% 100%,100% 0%);
color:rgba(255,255,255,1)
}
}
@keyframes circle-fromcenter {
0% {
clip-path:circle(0%);
-webkit-clip-path:circle(0%)
}
100% {
clip-path:circle(50%);
-webkit-clip-path:circle(50%)
}
}
@-webkit-keyframes circle-fromcenter {
0% {
clip-path:circle(0%);
-webkit-clip-path:circle(0%)
}
100% {
clip-path:circle(50%);
-webkit-clip-path:circle(50%)
}
}
@keyframes circle-fromcenter-over {
0% {
clip-path:circle(0%);
-webkit-clip-path:circle(0%)
}
100% {
clip-path:circle(115%);
-webkit-clip-path:circle(115%)
}
}
@-webkit-keyframes circle-fromcenter-over {
0% {
clip-path:circle(0%);
-webkit-clip-path:circle(0%)
}
100% {
clip-path:circle(115%);
-webkit-clip-path:circle(115%)
}
}
@keyframes circle-frombot-over {
0% {
clip-path:circle(0% at 50% 100%);
-webkit-clip-path:circle(0% at 50% 100%)
}
100% {
clip-path:circle(115% at 50% 100%);
-webkit-clip-path:circle(115% at 50% 100%)
}
}
@-webkit-keyframes circle-frombot-over {
0% {
clip-path:circle(0% at 50% 100%);
-webkit-clip-path:circle(0% at 50% 100%)
}
100% {
clip-path:circle(115% at 50% 100%);
-webkit-clip-path:circle(115% at 50% 100%)
}
}
@keyframes fade-in {
0% {
opacity:0
}
100% {
opacity:1
}
}
@-webkit-keyframes fade-in {
0% {
opacity:0
}
100% {
opacity:1
}
}
@keyframes fade-out {
0% {
opacity:1
}
100% {
opacity:0
}
}
@-webkit-keyframes fade-out {
0% {
opacity:1
}
100% {
opacity:0
}
}
@keyframes blur {
0% {
filter:blur(0);
-webkit-filter:blur(0)
}
100% {
filter:blur(10px);
-webkit-filter:blur(10px)
}
}
@-webkit-keyframes blur {
0% {
filter:blur(0);
-webkit-filter:blur(0)
}
100% {
filter:blur(10px);
-webkit-filter:blur(10px)
}
}
@keyframes blur-out {
0% {
filter:blur(10px);
-webkit-filter:blur(10px)
}
100% {
filter:blur(0);
-webkit-filter:blur(0)
}
}
@-webkit-keyframes blur-out {
0% {
filter:blur(10px);
-webkit-filter:blur(10px)
}
100% {
filter:blur(0);
-webkit-filter:blur(0)
}
}
@keyframes menu-circle-big {
0% {
width:0;
height:0;
margin-left:0;
margin-top:0;
opacity:0
}
25% {
opacity:1
}
100% {
width:200vh;
height:200vh;
margin-left:-100vh;
margin-top:-100vh;
opacity:0
}
}
@-webkit-keyframes menu-circle-big {
0% {
width:0;
height:0;
margin-left:0;
margin-top:0;
opacity:0
}
25% {
opacity:1
}
100% {
width:200vh;
height:200vh;
margin-left:-100vh;
margin-top:-100vh;
opacity:0
}
}
@keyframes menu-circle-small {
0% {
width:0;
height:0;
margin-left:0;
margin-top:0;
opacity:0
}
25% {
opacity:1
}
100% {
width:5em;
height:5em;
margin-left:-2.5em;
margin-top:-2.5em;
opacity:1
}
}
@-webkit-keyframes menu-circle-small {
0% {
width:0;
height:0;
margin-left:0;
margin-top:0;
opacity:0
}
25% {
opacity:1
}
100% {
width:5em;
height:5em;
margin-left:-2.5em;
margin-top:-2.5em;
opacity:1
}
}
@keyframes cta-fromleft {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
50% {
height:100%;
width:2.75em;
margin-top:-1.375em;
margin-left:-1.375em
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.375em;
margin-left:-1.375em
}
}
@-webkit-keyframes cta-fromleft {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
50% {
height:100%;
width:2.75em;
margin-top:-1.375em;
margin-left:-1.375em
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.375em;
margin-left:-1.375em
}
}
@keyframes cta-fromcenter {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0;
left:50%
}
25% {
opacity:1
}
50% {
height:100%;
width:2.75em;
margin-top:-1.375em;
margin-left:-1.375em;
left:50%
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.375em;
margin-left:-1.375em;
left:1.375em
}
}
@-webkit-keyframes cta-fromcenter {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0;
left:50%
}
25% {
opacity:1
}
50% {
height:100%;
width:2.75em;
margin-top:-1.375em;
margin-left:-1.375em;
left:50%
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.375em;
margin-left:-1.375em;
left:1.375em
}
}
@keyframes cta-fromleft-big {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
50% {
height:100%;
width:3.375em;
margin-top:-1.6875em;
margin-left:-1.6875em
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.6875em;
margin-left:-1.6875em
}
}
@-webkit-keyframes cta-fromleft-big {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
50% {
height:100%;
width:3.375em;
margin-top:-1.6875em;
margin-left:-1.6875em
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.6875em;
margin-left:-1.6875em
}
}
@keyframes cta-fromcenter-big {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0;
left:50%
}
25% {
opacity:1
}
50% {
height:100%;
width:3.375em;
margin-top:-1.6875em;
margin-left:-1.6875em;
left:50%
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.6875em;
margin-left:-1.6875em;
left:1.6875em
}
}
@-webkit-keyframes cta-fromcenter-big {
0% {
height:0%;
opacity:0;
width:0;
margin-top:0;
margin-left:0;
left:50%
}
25% {
opacity:1
}
50% {
height:100%;
width:3.375em;
margin-top:-1 6875em;
margin-left:-1 6875em;
left:50%
}
100% {
height:100%;
opacity:1;
width:100%;
margin-top:-1.6875em;
margin-left:-1.6875em;
left:1.6875em
}
}
@keyframes panel-fromcenter {
0% {
height:0%;
opacity:0;
width:0;
margin-top:1.375em;
margin-left:0;
left:50%
}
33% {
height:2.75em;
opacity:1;
width:2.75em;
margin-top:0;
margin-left:-1.375em;
left:50%
}
66% {
height:2.75em;
width:100%;
margin-left:-1.375em;
left:1.375em
}
100% {
height:100%;
opacity:1
}
}
@-webkit-keyframes panel-fromcenter {
0% {
height:0%;
opacity:0;
width:0;
margin-top:1.375em;
margin-left:0;
left:50%
}
33% {
height:2.75em;
opacity:1;
width:2.75em;
margin-top:0;
margin-left:-1.375em;
left:50%
}
66% {
height:2.75em;
width:100%;
margin-left:-1.375em;
left:1.375em
}
100% {
height:100%;
opacity:1
}
}
@keyframes number-scale-in {
0% {
opacity:0;
width:0;
height:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
100% {
opacity:1;
width:3.5em;
height:3.5em;
margin-top:-1.75em;
margin-left:-1.75em
}
}
@-webkit-keyframes number-scale-in {
0% {
opacity:0;
width:0;
height:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
100% {
opacity:1;
width:3.5em;
height:3.5em;
margin-top:-1.75em;
margin-left:-1.75em
}
}
@keyframes number-large-scale-in {
0% {
opacity:0;
width:0;
height:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
50% {
width:4em;
height:4em;
margin-top:-2em;
margin-left:-2em
}
100% {
opacity:1;
width:9em;
height:4em;
margin-top:-2em;
margin-left:-4.5em
}
}
@-webkit-keyframes number-large-scale-in {
0% {
opacity:0;
width:0;
height:0;
margin-top:0;
margin-left:0
}
25% {
opacity:1
}
50% {
width:4em;
height:4em;
margin-top:-2em;
margin-left:-2em
}
100% {
opacity:1;
width:9em;
height:4em;
margin-top:-2em;
margin-left:-4.5em
}
}
@keyframes smooth-float {
0% {
transform:translateY(0);
-webkit-transform:translateY(0)
}
50% {
transform:translateY(1em);
-webkit-transform:translateY(1em)
}
100% {
transform:translateY(0);
-webkit-transform:translateY(0)
}
}
@-webkit-keyframes smooth-float {
0% {
transform:translateY(0);
-webkit-transform:translateY(0)
}
50% {
transform:translateY(1em);
-webkit-transform:translateY(1em)
}
100% {
transform:translateY(0);
-webkit-transform:translateY(0)
}
}

/* Les classes des animations */
/*
.anim-wfl::before {opacity: 0;}
.anim-wfl {opacity: 1 !important;animation: 1s ease-in-out 0s window-fromleft both;-webkit-animation: 1s ease-in-out 0s window-fromleft both;}
.anim-wfr::before {opacity: 0;}
.anim-wfr {opacity: 1 !important;animation: 1s ease-in-out 0s window-fromright both;-webkit-animation: 1s ease-in-out 0s window-fromright both;}
*/


/* =============================================
   DARK DESIGN SYSTEM — ACRONET V2
   Merged from index-v2.php inline CSS
   ============================================= */

/* =============================================
   NAVBAR
   ============================================= */
.acro-nav{
	background:rgba(2,9,23,.85);
	backdrop-filter:blur(20px) saturate(180%);
	-webkit-backdrop-filter:blur(20px) saturate(180%);
	border-bottom:1px solid var(--border-subtle);
	transition:all .3s ease;
	z-index:1050;
}
.acro-nav.scrolled{
	background:rgba(2,9,23,.96);
	box-shadow:0 4px 30px rgba(5,152,245,.08);
}
.acro-nav .navbar-brand img{height:28px;transition:transform .3s}
.acro-nav .navbar-brand:hover img{transform:scale(1.05)}
.acro-nav .nav-link{
	color:var(--text-secondary)!important;
	font-size:.875rem;
	font-weight:500;
	padding:.5rem 1rem!important;
	transition:color .3s;
	position:relative;
}
.acro-nav .nav-link::after{
	content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;
	background:linear-gradient(90deg,var(--primary-fluo),var(--secondary-fluo));
	transition:all .3s ease;transform:translateX(-50%);
}
.acro-nav .nav-link:hover,
.acro-nav .nav-link.active{color:var(--text-primary)!important}
.acro-nav .nav-link:hover::after,
.acro-nav .nav-link.active::after{width:60%}
.nav-cta{
	background:var(--secondary-medium)!important;
	border:none!important;
	color:#fff!important;
	font-weight:600!important;
	font-size:.8rem!important;
	padding:.5rem 1.25rem!important;
	border-radius:50px!important;
	transition:all .3s ease!important;
	box-shadow:0 0 20px rgba(245,5,56,.25);
}
.nav-cta:hover{
	background:var(--secondary-fluo)!important;
	transform:translateY(-1px);
	box-shadow:0 0 30px rgba(245,5,56,.4)!important;
}

/* =============================================
   HERO
   ============================================= */
.hero{
	min-height:100vh;
	display:flex;align-items:center;
	position:relative;
	overflow:hidden;
	padding-top:80px;
}
.hero::before{
	content:'';position:absolute;inset:0;
	background:
		radial-gradient(ellipse 60% 50% at 20% 50%,rgba(5,152,245,.08) 0%,transparent 70%),
		radial-gradient(ellipse 40% 60% at 80% 30%,rgba(245,5,56,.06) 0%,transparent 70%),
		radial-gradient(ellipse 80% 40% at 50% 100%,rgba(54,227,255,.04) 0%,transparent 60%);
	z-index:0;
}
.hero-grid{
	position:absolute;inset:0;
	background-image:
		radial-gradient(circle,rgba(5,152,245,.10) 1px,transparent 1px),
		radial-gradient(circle,rgba(54,227,255,.05) 1px,transparent 1px);
	background-size:28px 28px, 28px 28px;
	background-position:0 0, 14px 14px;
	-webkit-mask-image:radial-gradient(ellipse 75% 65% at 50% 45%,black 30%,transparent 100%);
	mask-image:radial-gradient(ellipse 75% 65% at 50% 45%,black 30%,transparent 100%);
	animation:gridPulse 10s ease-in-out infinite;
	z-index:0;
}
@keyframes gridPulse{
	0%,100%{opacity:.4;transform:scale(1)}
	50%{opacity:.7;transform:scale(1.02)}
}
.hero-orb{
	position:absolute;border-radius:50%;
	filter:blur(80px);opacity:.35;
	animation:orbFloat 12s ease-in-out infinite;
	z-index:0;
}
.hero-orb-1{width:500px;height:500px;background:var(--primary-medium);top:-10%;right:-5%;animation-delay:0s}
.hero-orb-2{width:350px;height:350px;background:var(--secondary-medium);bottom:-8%;left:-3%;animation-delay:-4s}
.hero-orb-3{width:250px;height:250px;background:var(--primary-fluo);top:40%;left:30%;animation-delay:-8s;opacity:.15}
@keyframes orbFloat{
	0%,100%{transform:translate(0,0) scale(1)}
	33%{transform:translate(30px,-20px) scale(1.05)}
	66%{transform:translate(-20px,15px) scale(.95)}
}
.hero-content{position:relative;z-index:2}
.hero-badge{
	display:inline-flex;align-items:center;gap:.5rem;
	padding:.4rem 1rem;border-radius:50px;
	background:var(--glass-bg);
	border:1px solid var(--glass-border);
	backdrop-filter:blur(10px);
	font-size:.78rem;font-weight:500;
	color:var(--primary-light);
	margin-bottom:1.5rem;
	animation:fadeInDown .8s ease-out;
}
.hero-badge .dot{
	width:8px;height:8px;border-radius:50%;
	background:var(--secondary-medium);
	animation:pulse 2s infinite;
}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.hero h1{
	font-size:clamp(2.2rem,5vw,4rem);
	font-weight:800;
	line-height:1.1;
	margin-bottom:1.25rem;
	letter-spacing:-.02em;
}
.text-gradient{
	background:linear-gradient(135deg,#ff611c -50%,#f50538 50%);
	-webkit-background-clip:text;
	-webkit-text-fill-color:transparent;
	background-clip:text;
}
.text-gradient-parrainage{
	background:linear-gradient(135deg,var(--primary-fluo) 0%,var(--primary-light) 30%,var(--secondary-fluo) 70%,var(--secondary-light) 100%);
	-webkit-background-clip:text;
	-webkit-text-fill-color:transparent;
	background-clip:text;
}
.hero-sub{
	font-size:clamp(1rem,2vw,1.2rem);
	color:var(--text-secondary);
	max-width:540px;
	line-height:1.7;
	margin-bottom:2rem;
}
.hero-stats{
	display:flex;gap:2.5rem;flex-wrap:wrap;
	margin-top:2.5rem;
}
.hero-stat{text-align:center}
.hero-stat-value{
	font-size:2rem;font-weight:800;
	background:linear-gradient(135deg,var(--primary-fluo),var(--primary-light));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;
	background-clip:text;
}
.hero-stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-weight:500}

/* Hero right — Acro IA card */
.hero-acro-ia{position:relative;z-index:2}
.acro-ia-card{
	background:var(--surface-card);
	border:1px solid var(--glass-border);
	border-radius:20px;
	padding:2rem;
	backdrop-filter:blur(16px);
	-webkit-backdrop-filter:blur(16px);
	box-shadow:0 20px 60px rgba(5,152,245,.08);
	position:relative;overflow:hidden;
}
.acro-ia-card::before{
	content:'';position:absolute;top:0;left:0;right:0;height:3px;
	background:linear-gradient(90deg,var(--primary-medium),var(--secondary-medium));
}
.acro-ia-card .aia-badge{
	display:inline-flex;align-items:center;gap:.4rem;
	padding:.3rem .75rem;border-radius:50px;
	background:rgba(245,5,56,.1);
	border:1px solid rgba(245,5,56,.2);
	font-size:.68rem;font-weight:700;
	text-transform:uppercase;letter-spacing:.04em;
	color:var(--secondary-fluo);
	margin-bottom:.75rem;
}
.acro-ia-card .aia-title{
	font-size:1.25rem;font-weight:700;
	margin-bottom:.4rem;color:var(--text-primary);
	line-height:1.3;
}
.acro-ia-card .aia-desc{
	font-size:.85rem;color:var(--text-secondary);
	margin-bottom:1rem;line-height:1.6;
}
.acro-ia-card .aia-desc strong{color:var(--text-primary)}
.acro-ia-card .aia-features{
	list-style:none;padding:0;margin:0 0 1.25rem;
	display:flex;flex-direction:column;gap:.45rem;
}
.acro-ia-card .aia-features li{
	display:flex;align-items:center;gap:.5rem;
	font-size:.82rem;color:var(--text-secondary);
}
.acro-ia-card .aia-features .aia-ico{
	width:28px;height:28px;flex-shrink:0;
	border-radius:8px;
	display:flex;align-items:center;justify-content:center;
	font-size:.7rem;
	background:rgba(5,152,245,.1);
	color:var(--primary-fluo);
}
.acro-ia-card .aia-stats{
	display:flex;gap:1rem;
	padding-top:.75rem;margin-top:.75rem;
	border-top:1px solid var(--border-subtle);
}
.acro-ia-card .aia-stat{text-align:center;flex:1}
.acro-ia-card .aia-stat-val{
	font-size:1.3rem;font-weight:800;
	background:linear-gradient(135deg,var(--primary-fluo),var(--secondary-fluo));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.acro-ia-card .aia-stat-lbl{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500}
@media(max-width:991.98px){
	.acro-ia-card{margin-top:2rem}
}

/* =============================================
   HERO DEVICE STAGE
   ============================================= */
.hero-device-stage{
	position:relative;
	display:flex;justify-content:flex-end;align-items:flex-end;
	min-height:400px;z-index:2;
	pointer-events:none;
}
.hero-device-stage .device{
	pointer-events:auto;position:relative;
	user-select:none;z-index:1;
	transition:transform .4s cubic-bezier(.25,.46,.45,.94);
}
.hero-device-stage .device-phone{
	width:130px;position:absolute;left:10px;bottom:0;z-index:5;
}
.device-phone-body{
	position:relative;aspect-ratio:9/19.5;border-radius:28px;
	background:linear-gradient(135deg,var(--primary-medium) 0%,var(--primary-dark) 50%,var(--primary-darkest) 100%);
	box-shadow:inset 0 0 0 2px rgba(255,255,255,.15),inset 0 0 0 5px var(--primary-darkest),0 20px 40px rgba(2,9,23,.5);
}
.device-phone-bezel{position:absolute;inset:7px;background:#000;z-index:1;border-radius:22px}
.device-phone .device-screen{inset:8px;z-index:2;border-radius:20px;position:absolute;overflow:hidden;background:#121212;scrollbar-width:none}
.device-phone .device-screen::-webkit-scrollbar{display:none}
.device-phone-island{position:absolute;top:14px;left:50%;transform:translateX(-50%);width:35%;height:16px;background:#000;border-radius:20px;z-index:20}
.hero-device-stage .device-mac{width:min(520px,85%);position:relative;z-index:1}
.device-mac-lid{
	position:relative;aspect-ratio:16/10;border-radius:14px;
	background:linear-gradient(135deg,var(--primary-medium) 0%,var(--primary-dark) 40%,var(--primary-darkest) 100%);
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 25px 50px rgba(2,9,23,.4);
}
.device-mac-lid::before{content:"";position:absolute;inset:8px;bottom:12px;border-radius:8px;background:#000}
.device-mac .device-screen{inset:9px;bottom:13px;border-radius:7px;position:absolute;overflow:hidden;background:#121212;scrollbar-width:none}
.device-mac .device-screen::-webkit-scrollbar{display:none}
.device-mac-camera{position:absolute;left:50%;top:7px;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:#333;box-shadow:0 0 0 1px rgba(255,255,255,.1);z-index:20}
.device-mac-base{
	position:relative;width:104%;left:-2%;height:14px;margin-top:-6px;
	background:linear-gradient(180deg,var(--primary-medium) 0%,var(--primary-dark) 30%,var(--primary-darkest) 100%);
	border-radius:2px 2px 10px 10px;box-shadow:0 15px 30px rgba(0,0,0,.3);z-index:2;
}
.device-mac-base::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:15%;height:5px;background:rgba(0,0,0,.25);border-radius:0 0 5px 5px}
.device-shot{display:block;width:100%;height:auto;position:static}
.device-glare{position:absolute;inset:0;pointer-events:none;z-index:10;border-radius:inherit;background:linear-gradient(115deg,rgba(255,255,255,.15) 0%,rgba(255,255,255,0) 40%,rgba(255,255,255,.05) 70%,rgba(255,255,255,0) 100%);mix-blend-mode:overlay}
.hero-device-col{position:relative}
.hero-device-annotation{
	position:absolute;top:0;left:25%;transform:translateX(-50%);
	z-index:10;pointer-events:none;
	display:flex;align-items:flex-end;gap:.35rem;
	white-space:nowrap;
}
.hero-device-annotation .annotation-text{
	font-size:1rem;font-weight:400;letter-spacing:.02em;
	color:var(--primary-fluo);
	text-shadow:0 0 20px rgba(54,227,255,.3);
	font-style:italic;
	position:relative;top:-45px;
}
.hero-device-annotation .annotation-arrow{
	width:80px;flex-shrink:0;
	margin-left:.25rem;
}
.hero-device-caption{
	text-align:center;margin-top:1.25rem;z-index:3;position:relative;
}
.hero-device-caption .btn{font-size:.82rem;padding:.55rem 1.5rem}
@media(hover:hover){
	.hero-device-stage .device-phone:hover{transform:scale(1.08) translateY(-10px);z-index:30}
	.hero-device-stage .device-phone:hover ~ .device-mac{transform:scale(.95) translateX(20px);opacity:.8}
	.hero-device-stage .device-mac:hover{z-index:20;transform:scale(1.02)}
}
@media(max-width:991.98px){
	.hero-device-stage{min-height:auto;justify-content:center;padding:1rem 0;margin-top:0}
	.hero-device-stage .device-phone{position:relative;left:auto;bottom:auto;width:22%;max-width:100px;margin-right:-8%;margin-bottom:-5px}
	.hero-device-stage .device-mac{width:80%}
	.device-phone-body{border-radius:16px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),inset 0 0 0 4px var(--primary-darkest),0 10px 20px rgba(2,9,23,.4)}
	.device-phone-bezel{border-radius:12px;inset:5px}
	.device-phone .device-screen{border-radius:10px;inset:6px}
	.device-phone-island{top:10px;height:12px}
}

/* =============================================
   V3 HERO — Intégré depuis index-v3.php
   ============================================= */

/* --- V3 Section Tokens --- */
.v3-section-title{text-transform:uppercase;letter-spacing:.15em;font-size:.8rem;font-weight:600;color:var(--acro-blue);margin-bottom:.5rem}
.v3-heading{font-weight:800;font-family:'Poppins',system-ui,-apple-system,sans-serif;color:#fff}
.v3-text-red{background:linear-gradient(135deg,#ff611c -50%,#f50538 50%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.v3-text-blue{background:linear-gradient(135deg,#5ab0ff,#1a6dcc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.text-v3-blue{color:var(--acro-blue)}
.text-v3-red{color:var(--acro-red)}

/* --- V3 Boutons --- */
.btn-v3-primary{
	background:linear-gradient(135deg,#ff611c -50%,#f50538 50%);
	border:none;color:#fff;
	padding:12px 30px;border-radius:50px;
	font-weight:600;font-family:'Poppins',system-ui,sans-serif;font-size:.9rem;
	box-shadow:0 4px 15px rgba(245,5,56,.3);
	transition:transform .2s,box-shadow .2s;
	text-decoration:none;
	display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
	cursor:pointer;
}
.btn-v3-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(245,5,56,.5);color:#fff}
.btn-v3-outline{
	background:transparent;
	border:2px solid rgba(255,255,255,.2);
	color:#fff;
	padding:10px 28px;border-radius:50px;
	font-weight:600;font-family:'Poppins',system-ui,sans-serif;font-size:.9rem;
	transition:all .3s;text-decoration:none;
	display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
	cursor:pointer;
}
.btn-v3-outline:hover{border-color:var(--acro-blue);color:var(--acro-blue)}
.btn-v3-outline--sm{font-size:.8rem;padding:.5rem 1.2rem}

/* --- V3 Hero Section --- */
.v3-hero{padding:140px 0 80px;position:relative}
#heroParticles{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
main,footer,.full-menu-overlay{position:relative;z-index:1}
.v3-hero-badge{
	background:rgba(5,152,245,.08);border:1px solid rgba(5,152,245,.15);color:var(--primary-light);
	padding:8px 16px;border-radius:30px;
	font-size:.9rem;font-weight:600;
	display:inline-flex;align-items:center;gap:8px;
	margin-bottom:20px;
	border:1px solid rgba(42,140,255,.2);
}
.v3-hero-badge .dot{
	width:8px;height:8px;border-radius:50%;
	background:var(--acro-red);
	box-shadow:0 0 6px rgba(245,5,56,.5);
	animation:v3-dot-pulse 2s ease-in-out infinite;
	flex-shrink:0;
}
@keyframes v3-dot-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}
.v3-hero h1{font-weight:700;font-size:3.5rem;line-height:1.1;margin-bottom:25px;font-family:'Poppins',system-ui,sans-serif}
.v3-hero .v3-lead{color:var(--primary-lighter);font-size:1.1rem;max-width:600px;margin-bottom:1.5rem}
.v3-hero-stats{
	display:flex;flex-wrap:wrap;gap:.5rem;
	margin-top:2.5rem;
}
.hero-stat-chip{
	display:inline-flex;align-items:center;gap:.4rem;
	padding:.35rem .75rem;
	border-radius:50px;
	background:rgba(255,255,255,.04);
	border:1px solid rgba(255,255,255,.07);
	font-size:.75rem;font-weight:500;
	color:var(--text-secondary);
	white-space:nowrap;
}
.hero-stat-chip i{color:var(--primary-medium-light);font-size:.6rem}
.hero-stat-chip--gold i{color:#fbbf24}

/* --- V3 Hero Device Stage --- */
.v3-hero-device-col{position:relative}
.v3-hero-device-stage{
	position:relative;
	display:flex;justify-content:flex-end;align-items:flex-end;
	min-height:380px;z-index:2;
	pointer-events:none;
	animation:v3-stage-in .9s cubic-bezier(.16,1,.3,1) both,v3-stage-breathe 6s ease-in-out 1.2s infinite;
}
@keyframes v3-stage-in{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes v3-stage-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.v3-device{pointer-events:auto;position:relative;user-select:none;z-index:1;transition:transform .45s cubic-bezier(.25,.46,.45,.94)}

/* Phone */
.v3-device-phone{width:120px;position:absolute;left:5px;bottom:0;z-index:5}
.v3-device-phone-body{
	position:relative;aspect-ratio:9/19.5;border-radius:26px;
	background:linear-gradient(145deg,rgba(42,140,255,.15) 0%,var(--primary-dark) 40%,var(--primary-darkest) 100%);
	box-shadow:inset 0 0 0 2px rgba(255,255,255,.12),inset 0 0 0 5px var(--primary-darkest),0 25px 50px rgba(2,9,23,.6),0 0 80px rgba(42,140,255,.06);
}
.v3-device-phone-bezel{position:absolute;inset:7px;background:#000;z-index:1;border-radius:20px}
.v3-device-phone .v3-device-screen{inset:8px;z-index:2;border-radius:18px;position:absolute;overflow:hidden;background:#0a0a0a;scrollbar-width:none}
.v3-device-phone .v3-device-screen::-webkit-scrollbar{display:none}
.v3-device-phone-island{position:absolute;top:13px;left:50%;transform:translateX(-50%);width:34%;height:15px;background:#000;border-radius:20px;z-index:20}

/* Laptop */
.v3-device-mac{width:min(480px,82%);position:relative;z-index:1}
.v3-device-mac-lid{
	position:relative;aspect-ratio:16/10;border-radius:12px;
	background:linear-gradient(145deg,rgba(42,140,255,.1) 0%,var(--primary-dark) 35%,var(--primary-darkest) 100%);
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 30px 60px rgba(2,9,23,.5),0 0 100px rgba(42,140,255,.04);
}
.v3-device-mac-lid::before{content:"";position:absolute;inset:7px;bottom:11px;border-radius:7px;background:#000}
.v3-device-mac .v3-device-screen{inset:8px;bottom:12px;border-radius:6px;position:absolute;overflow:hidden;background:#0a0a0a;scrollbar-width:none}
.v3-device-mac .v3-device-screen::-webkit-scrollbar{display:none}
.v3-device-mac-camera{position:absolute;left:50%;top:6px;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:#222;box-shadow:0 0 0 1px rgba(255,255,255,.08);z-index:20}
.v3-device-mac-base{
	position:relative;width:104%;left:-2%;height:12px;margin-top:-5px;
	background:linear-gradient(180deg,var(--primary-dark) 0%,var(--primary-darkest) 100%);
	border-radius:2px 2px 8px 8px;box-shadow:0 12px 25px rgba(0,0,0,.35);z-index:2;
}
.v3-device-mac-base::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:14%;height:4px;background:rgba(0,0,0,.3);border-radius:0 0 4px 4px}

/* Common device */
.v3-device-shot{display:block;width:100%;height:auto;position:static}
.v3-device-glare{
	position:absolute;inset:0;pointer-events:none;z-index:10;border-radius:inherit;
	background:linear-gradient(120deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,0) 35%,rgba(255,255,255,.04) 65%,rgba(255,255,255,0) 100%);
	mix-blend-mode:overlay;
}
.v3-hero-device-caption{text-align:center;margin-top:1rem;position:relative;z-index:3}
.device-caption-pill{
	display:inline-flex;align-items:center;gap:.55rem;
	padding:.45rem .9rem;
	border-radius:50px;
	background:rgba(8,12,24,.65);
	border:1px solid rgba(255,255,255,.08);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	text-decoration:none;
	transition:border-color .3s,background .3s;
	box-shadow:0 4px 15px rgba(0,0,0,.2);
}
.device-caption-pill:hover{
	border-color:rgba(5,152,245,.25);
	background:rgba(8,12,24,.8);
}
.device-caption-tag{
	font-size:.58rem;font-weight:700;
	text-transform:uppercase;letter-spacing:.04em;
	color:var(--primary-medium-light);
}
.device-caption-sep{
	width:1px;height:12px;
	background:rgba(255,255,255,.12);
}
.device-caption-name{
	font-size:.72rem;font-weight:500;
	color:var(--text-primary);
}
.device-caption-name i{
	font-size:.5rem;margin-left:.25rem;
	opacity:.5;
	transition:transform .25s,opacity .25s;
}
.device-caption-pill:hover .device-caption-name i{
	transform:translateX(3px);opacity:1;
}

/* Hover interactions */
@media(hover:hover){
	.v3-device-phone:hover{transform:scale(1.08) translateY(-8px);z-index:30}
	.v3-device-phone:hover ~ .v3-device-mac{transform:scale(.96) translateX(15px);opacity:.85}
	.v3-device-mac:hover{z-index:20;transform:scale(1.02)}
}

/* --- Floating vCards --- */
@keyframes v3-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes v3-vcard-in{from{opacity:0;transform:translateY(15px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
.v3-vcard{
	position:absolute;z-index:10;
	border-radius:14px;
	background:rgba(8,12,24,.75);
	backdrop-filter:blur(14px);
	border:1px solid rgba(255,255,255,.08);
	padding:.6rem .85rem;
	box-shadow:0 8px 30px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.03) inset;
	opacity:0;
	animation:v3-vcard-in .6s cubic-bezier(.16,1,.3,1) forwards,v3-float 4s ease-in-out infinite;
	pointer-events:none;
}
.v3-vcard--ia{top:10px;left:-20px;width:160px;border-color:rgba(245,5,56,.2);animation-delay:.3s,.3s}
.v3-vcard-pulse{
	display:inline-block;width:6px;height:6px;
	border-radius:50%;background:#22c55e;
	margin-left:4px;vertical-align:middle;
	box-shadow:0 0 6px rgba(34,197,94,.6);
	animation:v3-pulse-dot 1.5s ease-in-out infinite;
}
@keyframes v3-pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}
.v3-vcard--seo{bottom:0px;left:-95px;width:170px;border-color:rgba(34,197,94,.2);animation-delay:.5s,.5s}
.v3-vcard--speed{top:15px;right:-10px;width:155px;border-color:rgba(251,191,36,.15);animation-delay:.7s,.7s}
.v3-vcard--rating{bottom:-5px;right:30px;width:140px;border-color:rgba(251,191,36,.15);animation-delay:.9s,.9s}

/* vCard inner elements */
.v3-vcard--ia .fa-robot{color:var(--acro-red);font-size:1.1rem}
.v3-vcard--speed .fa-bolt{color:#fbbf24;font-size:1rem}
.v3-vcard-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}
.v3-vcard-label.badge{color:#fff}
.v3-vcard-value{font-weight:700;font-size:.85rem;color:#fff}
.v3-vcard-sub{color:var(--text-muted);font-size:.7rem}
.v3-vcard-sub.mt{margin-top:.25rem}
.v3-vcard .progress{height:5px;background:rgba(255,255,255,.06);border-radius:3px}
.v3-vcard-stars{gap:2px}
.v3-vcard-stars i{color:#fbbf24;font-size:.6rem}
.v3-vcard-note{font-size:.6rem;color:var(--text-muted);margin-top:2px}

/* --- V3 Hero Responsive --- */
@media(max-width:991.98px){
	.v3-hero-device-stage{min-height:auto;justify-content:center;padding:1rem 0}
	.v3-device-phone{position:relative;left:auto;bottom:auto;width:22%;max-width:95px;margin-right:-8%;margin-bottom:-5px}
	.v3-device-mac{width:78%}
	.v3-device-phone-body{border-radius:16px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),inset 0 0 0 4px var(--primary-darkest),0 10px 20px rgba(2,9,23,.4)}
	.v3-device-phone-bezel{border-radius:12px;inset:5px}
	.v3-device-phone .v3-device-screen{border-radius:10px;inset:6px}
	.v3-device-phone-island{top:10px;height:12px}
}
@media(max-width:768px){
	.v3-hero h1{font-size:2.5rem}
	.v3-hero{padding-top:100px;text-align:center}
	.v3-hero .v3-lead{margin-left:auto;margin-right:auto}
	.v3-hero .d-flex.gap-3{justify-content:center}
	.v3-hero-stats{justify-content:center}
	.v3-vcard{display:none}
}
@media(max-width:575.98px){
	.v3-hero h1{font-size:2rem}
}

/* --- V3 Feature Cards (Nos Expertises) --- */
.v3-feature-card{
	background:var(--surface-card);
	border:1px solid var(--glass-border);
	border-radius:16px;
	padding:1.8rem;
	height:100%;
	transition:all .35s ease;
	position:relative;
	overflow:hidden;
}
.v3-feature-card::before{
	content:'';position:absolute;top:0;left:0;right:0;
	height:3px;background:linear-gradient(90deg,var(--acro-blue),transparent);
	opacity:0;transition:opacity .35s ease;
}
.v3-feature-card:hover{
	transform:translateY(-6px);
	border-color:rgba(5,152,245,.25);
	box-shadow:0 12px 40px rgba(5,152,245,.1);
}
.v3-feature-card:hover::before{opacity:1}
.v3-feature-card.is-highlighted{
	border-color:rgba(245,5,56,.2);
	background:linear-gradient(165deg,var(--surface-card) 60%,rgba(245,5,56,.06) 100%);
}
.v3-feature-card.is-highlighted::before{background:linear-gradient(90deg,var(--acro-red),transparent)}
.v3-feature-card.is-highlighted:hover{
	border-color:rgba(245,5,56,.35);
	box-shadow:0 12px 40px rgba(245,5,56,.1);
}
.v3-feature-card h4{
	font-size:1.1rem;font-weight:700;color:#fff;margin:1rem 0 .6rem;
}
.v3-feature-card p{
	font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1rem;
}
.v3-feature-card ul{margin:0;padding:0}
.v3-feature-card ul li{
	font-size:.8rem;color:var(--text-secondary);
	padding:.25rem 0;display:flex;align-items:center;
}
.v3-icon-box{
	width:48px;height:48px;border-radius:12px;
	display:flex;align-items:center;justify-content:center;
	font-size:1.15rem;
}
.v3-icon-blue{
	background:rgba(5,152,245,.1);color:var(--acro-blue);
}
.v3-icon-red{
	background:rgba(245,5,56,.1);color:var(--acro-red);
}

/* =============================================
   SECTION ACRO IA (standalone)
   ============================================= */
.acroia-section{
	background:linear-gradient(180deg,var(--primary-darkest) 0%,rgba(25,35,64,.4) 50%,var(--primary-darkest) 100%);
	border-top:1px solid var(--border-subtle);
	border-bottom:1px solid var(--border-subtle);
	position:relative;overflow:hidden;
}
.acroia-section::before{
	content:'';position:absolute;top:0;left:0;
	width:450px;height:450px;
	background:radial-gradient(circle,rgba(245,5,56,.08) 0%,transparent 70%);
	border-radius:50%;transform:translate(-20%,-20%);
}
.acroia-section > .container{position:relative;z-index:2}
.aia-badge .dot{width:6px;height:6px}
.acroia-section .aia-ico{background:rgba(245,5,56,.1);color:var(--secondary-fluo)}
.acroia-section::after{
	content:'';position:absolute;bottom:0;right:0;
	width:400px;height:400px;
	background:radial-gradient(circle,rgba(5,152,245,.06) 0%,transparent 70%);
	border-radius:50%;transform:translate(20%,20%);
}
/* Acroia — editorial layout (sans carte) */
.acroia-section .aia-badge{
	display:inline-flex;align-items:center;gap:.4rem;
	padding:.35rem .85rem;border-radius:50px;
	background:rgba(245,5,56,.08);
	border:1px solid rgba(245,5,56,.18);
	font-size:.68rem;font-weight:700;
	text-transform:uppercase;letter-spacing:.04em;
	color:var(--secondary-fluo);
	margin-bottom:1.25rem;
}
.acroia-section .aia-badge .dot{
	width:6px;height:6px;border-radius:50%;
	background:var(--secondary-fluo);
	animation:aia-pulse 2s ease-in-out infinite;
}
@keyframes aia-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.aia-headline{
	font-size:clamp(1.25rem,2.5vw,1.55rem);font-weight:700;
	color:var(--text-primary);
	line-height:1.35;margin-bottom:1.25rem;
}
.aia-lead{
	color:var(--text-secondary);
	font-size:.88rem;line-height:1.8;
	margin-bottom:1.75rem;
}
.aia-lead strong{color:var(--text-primary)}
.aia-checklist{
	list-style:none;padding:0;margin:0 0 1.75rem;
	display:flex;flex-direction:column;gap:.6rem;
}
.aia-checklist li{
	display:flex;align-items:center;gap:.65rem;
	font-size:.84rem;color:var(--text-secondary);
	line-height:1.5;
}
.aia-checklist li i{
	color:var(--primary-fluo);font-size:.7rem;
	width:18px;text-align:center;flex-shrink:0;
}
/* Acroia — argument cards */
.aia-arguments{
	display:flex;flex-direction:column;gap:.6rem;
	margin-bottom:1.75rem;
}
.aia-arg{
	display:flex;align-items:flex-start;gap:.75rem;
	padding:.8rem .9rem;
	border-radius:12px;
	border:1px solid var(--glass-border);
	background:rgba(255,255,255,.02);
	transition:border-color .25s,background .25s;
}
.aia-arg:hover{
	background:rgba(255,255,255,.04);
	border-color:rgba(255,255,255,.08);
}
.aia-arg-ico{
	width:34px;height:34px;flex-shrink:0;
	border-radius:9px;
	display:flex;align-items:center;justify-content:center;
	font-size:.8rem;
}
.aia-arg--blue .aia-arg-ico{
	background:rgba(5,152,245,.1);
	color:var(--primary-fluo);
}
.aia-arg--red .aia-arg-ico{
	background:rgba(245,5,56,.1);
	color:var(--secondary-fluo);
}
.aia-arg-title{
	font-size:.76rem;font-weight:700;
	color:var(--text-primary);
	margin-bottom:.15rem;
}
.aia-arg-text{
	font-size:.7rem;
	color:var(--text-muted);
	line-height:1.55;margin:0;
}
.aia-arg-text strong{color:var(--text-secondary)}
.aia-metrics{
	display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;
	margin-top:1.5rem;
	font-size:.78rem;color:var(--text-muted);
}
.aia-metrics strong{
	background:linear-gradient(135deg,var(--primary-fluo),var(--secondary-fluo));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
	font-weight:800;font-size:.95rem;
}
.aia-metric-dot{
	width:4px;height:4px;border-radius:50%;
	background:var(--border-subtle);
}
/* Acroia — gallery thumbnails */
.aia-gallery{
	display:grid;
	grid-template-columns:repeat(6,1fr);
	gap:.5rem;
	margin:1.25rem auto 0;
	max-width:600px;
}
.aia-gallery-item{
	aspect-ratio:1/1;
	border-radius:10px;overflow:hidden;
	border:1px solid var(--glass-border);
	background:var(--surface-card);
}
.aia-gallery-item img{
	width:100%;height:100%;
	object-fit:cover;
	opacity:.65;
	transition:opacity .25s,transform .25s;
}
.aia-gallery-item:hover img{
	opacity:1;
	transform:scale(1.08);
}
.aia-gallery-caption{
	text-align:center;margin-top:.6rem;
	font-size:.68rem;color:var(--text-muted);
}
@media(max-width:575.98px){
	.aia-gallery{grid-template-columns:repeat(3,1fr)}
}
/* Before / After slider */
.ba-wrap{
	--pos:50%;position:relative;width:100%;max-width:600px;margin:0 auto;
	aspect-ratio:1/1;border-radius:16px;overflow:hidden;
	border:1px solid var(--glass-border);
	box-shadow:0 20px 60px rgba(5,152,245,.08);
	background: #fff url('../img/bg-damier.gif');touch-action:none;user-select:none;
}
.ba-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-drag:none}
.ba-layer--after{z-index:1}
.ba-layer--before{z-index:2;clip-path:inset(0 calc(100% - var(--pos)) 0 0);will-change:clip-path}
.ba-divider{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:rgba(255,255,255,.85);box-shadow:0 0 4px rgba(0,0,0,.3);z-index:10;pointer-events:none}
.ba-handle{
	position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
	width:36px;height:36px;border-radius:50%;background:white;
	border:1px solid rgba(2,9,23,.15);box-shadow:0 4px 12px rgba(0,0,0,.25);
	display:flex;align-items:center;justify-content:center;
	color:var(--primary-darkest);pointer-events:auto;cursor:grab;
}
.ba-handle i{font-size:.75rem}
.ba-label{
	position:absolute;top:12px;padding:.35rem .6rem;font-size:.85rem;font-weight:800;
	border-radius:.65rem;color:white;
	background:rgba(2,9,23,.65);border:1px solid rgba(255,255,255,.12);
	backdrop-filter:blur(6px);z-index:15;
}
.ba-label--before{left:12px}
.ba-label--after{right:12px}

/* =============================================
   MODALE WAITLIST
   ============================================= */
.wl-modal-overlay{
	position:fixed;inset:0;
	background:rgba(2,9,23,.85);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	z-index:3000;
	display:flex;align-items:center;justify-content:center;
	opacity:0;visibility:hidden;
	transition:all .3s ease;
	padding:1rem;
}
.wl-modal-overlay.active{opacity:1;visibility:visible}
.wl-modal{
	background:linear-gradient(180deg,rgba(25,35,64,.95),rgba(2,9,23,.98));
	border:1px solid var(--glass-border);
	border-radius:20px;
	padding:2.5rem 2rem;
	width:100%;max-width:540px;
	max-height:90vh;overflow-y:auto;
	position:relative;
	box-shadow:0 30px 80px rgba(5,152,245,.12);
	transform:translateY(20px) scale(.97);
	transition:transform .3s ease;
}
.wl-modal-overlay.active .wl-modal{transform:translateY(0) scale(1)}
.wl-modal-close{
	position:absolute;top:1rem;right:1rem;
	width:36px;height:36px;
	border:1px solid var(--border-subtle);
	background:rgba(255,255,255,.05);
	border-radius:50%;
	color:var(--text-muted);
	display:flex;align-items:center;justify-content:center;
	font-size:1rem;cursor:pointer;
	transition:all .2s;
}
.wl-modal-close:hover{background:rgba(255,255,255,.1);color:#fff;border-color:var(--border-glow)}
.wl-modal::-webkit-scrollbar{width:4px}
.wl-modal::-webkit-scrollbar-track{background:transparent}
.wl-modal::-webkit-scrollbar-thumb{background:var(--primary-medium);border-radius:2px}
.waitlist-card .wl-title,
.wl-modal .wl-title{
	font-size:1.3rem;font-weight:700;
	margin-bottom:.3rem;color:var(--text-primary);
}
.waitlist-card .wl-desc,
.wl-modal .wl-desc{
	font-size:.85rem;color:var(--text-secondary);
	margin-bottom:1.25rem;line-height:1.6;
}
.wl-label{
	display:block;font-size:.78rem;font-weight:600;
	color:var(--text-secondary);margin-bottom:.25rem;
}
.wl-input{
	display:block;width:100%;
	padding:.55rem .75rem;
	font-size:.85rem;font-family:'Poppins',system-ui,sans-serif;
	color:var(--text-primary);
	background:rgba(2,9,23,.5);
	border:1px solid var(--border-subtle);
	border-radius:10px;
	transition:border-color .2s,box-shadow .2s;
}
.wl-input:focus{
	outline:none;
	border-color:var(--primary-medium);
	box-shadow:0 0 0 3px rgba(5,152,245,.15);
}
.wl-input::placeholder{color:var(--text-muted);font-size:.8rem}
select.wl-input{
	appearance:none;
	background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%239aa5b4' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
	background-repeat:no-repeat;background-position:right .75rem center;background-size:14px 10px;
}
.wl-row{display:flex;gap:.75rem}
.wl-row>div{flex:1}
.wl-group{margin-bottom:.75rem}
.wl-checks{
	display:grid;grid-template-columns:1fr 1fr;gap:.4rem;
	margin-top:.4rem;
}
.wl-check{
	display:flex;align-items:center;gap:.4rem;
	font-size:.78rem;color:var(--text-secondary);cursor:pointer;
}
.wl-check input[type="checkbox"]{
	width:16px;height:16px;cursor:pointer;
	accent-color:var(--primary-medium);
}
.wl-consent{
	margin-top:.75rem;padding:.65rem .75rem;
	border:1px solid var(--border-subtle);
	border-radius:10px;
	background:rgba(5,152,245,.04);
}
.wl-consent label{font-size:.72rem;color:var(--text-muted);cursor:pointer;line-height:1.4}
.wl-submit{
	margin-top:1rem;width:100%;
	padding:.75rem 1.5rem;
	border:none;border-radius:50px;
	background:linear-gradient(135deg,var(--primary-medium),var(--secondary-medium));
	color:#fff;font-family:'Poppins',system-ui,sans-serif;
	font-size:.9rem;font-weight:700;
	cursor:pointer;transition:all .3s ease;
	box-shadow:0 4px 20px rgba(5,152,245,.3);
	position:relative;overflow:hidden;
}
.wl-submit:hover{
	transform:translateY(-2px);
	box-shadow:0 8px 30px rgba(5,152,245,.4);
}
.wl-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.wl-status{display:none;font-size:.8rem;font-weight:600;text-align:center;margin-top:.5rem;color:var(--secondary-fluo)}
.wl-success{
	display:none;text-align:center;padding:2rem 1rem;
	color:var(--primary-fluo);
}
.wl-success h3{font-size:1.2rem;margin-bottom:.75rem;color:var(--text-primary)}
.wl-success p{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.6}
.wl-success strong,.wl-desc strong{color:var(--text-primary)}
.wl-sep{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-subtle);font-size:.7rem;color:var(--text-muted);text-align:center}
.wl-check{font-size:.72rem;color:var(--text-muted)}
.was-validated .wl-input:invalid{border-color:var(--secondary-fluo);box-shadow:0 0 0 3px rgba(245,5,56,.15)}
.was-validated .wl-input:valid{border-color:rgba(54,227,255,.4)}
.wl-modal .captcha-question{color:var(--text-secondary);font-weight:700;font-size:.9rem;white-space:nowrap}
.wl-modal textarea.wl-input{resize:vertical;min-height:80px}
@media(max-width:575.98px){
	.wl-row{flex-direction:column;gap:.75rem}
	.wl-checks{grid-template-columns:1fr}
}

/* =============================================
   BTNS OVERRIDE
   ============================================= */
.btn-acro-primary{
	background:var(--secondary-medium);
	border:none;color:#fff;
	font-weight:600;font-size:.9rem;
	padding:.75rem 2rem;
	border-radius:50px;
	transition:all .3s ease;
	box-shadow:0 4px 25px rgba(245,5,56,.3);
	position:relative;overflow:hidden;
}
.btn-acro-primary::before{
	content:'';position:absolute;inset:0;
	background:linear-gradient(135deg,transparent,rgba(255,255,255,.1),transparent);
	transform:translateX(-100%);transition:transform .5s;
}
.btn-acro-primary:hover{
	background:var(--secondary-fluo);color:#fff;
	transform:translateY(-2px);
	box-shadow:0 8px 35px rgba(245,5,56,.45);
}
.btn-acro-primary:hover::before{transform:translateX(100%)}

.btn-acro-secondary{
	background:transparent;
	border:1px solid var(--primary-medium);
	color:var(--primary-light);
	font-weight:500;font-size:.9rem;
	padding:.75rem 2rem;
	border-radius:50px;
	transition:all .3s ease;
}
.btn-acro-secondary:hover{
	background:rgba(5,152,245,.1);
	border-color:var(--primary-fluo);
	color:var(--primary-fluo);
	transform:translateY(-2px);
	box-shadow:0 4px 20px rgba(5,152,245,.2);
}

/* =============================================
   SECTIONS (communes)
   ============================================= */
.section-dark{padding:6rem 0;position:relative}
.section-alt{background:linear-gradient(180deg,rgba(25,35,64,.3) 0%,var(--primary-darkest) 100%)}

.section-tag{
	display:inline-flex;align-items:center;gap:.4rem;
	padding:.3rem .85rem;border-radius:50px;
	background:rgba(5,152,245,.08);
	border:1px solid rgba(5,152,245,.15);
	font-size:.72rem;font-weight:600;
	text-transform:uppercase;letter-spacing:.08em;
	color:var(--primary-light);
	margin-bottom:1rem;
}
.section-title{
	font-size:clamp(1.6rem,3.5vw,2.5rem);
	font-weight:700;line-height:1.2;
	margin-bottom:1rem;
}
.section-lead{
	color:var(--text-secondary);
	font-size:1rem;
	max-width:600px;
	line-height:1.8;
}
.sep-gradient{
	width:60px;height:3px;border-radius:3px;
	background:linear-gradient(90deg,var(--primary-medium),var(--secondary-medium));
	margin-bottom:2rem;
}
.sep-gradient.mx-auto{margin-left:auto;margin-right:auto}
.sep-red{
	width:60px;height:3px;border-radius:3px;
	background:var(--secondary-medium);
	margin-bottom:2rem;
}

/* =============================================
   GLASS CARDS
   ============================================= */
.glass-card{
	background:var(--surface-card);
	border:1px solid var(--glass-border);
	border-radius:16px;
	padding:2rem;
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	transition:all .4s cubic-bezier(.175,.885,.32,1.275);
	position:relative;
	overflow:hidden;
}
.glass-card::before{
	content:'';position:absolute;top:0;left:0;right:0;
	height:1px;
	background:linear-gradient(90deg,transparent,var(--border-glow),transparent);
	opacity:0;transition:opacity .4s;
}
.glass-card:hover{
	background:var(--surface-card-hover);
	border-color:var(--border-glow);
	transform:translateY(-6px);
	box-shadow:0 20px 60px rgba(5,152,245,.1),0 0 0 1px rgba(54,227,255,.08);
}
.glass-card:hover::before{opacity:1}

.glass-card .card-icon{
	width:56px;height:56px;
	border-radius:14px;
	display:flex;align-items:center;justify-content:center;
	font-size:1.4rem;
	margin-bottom:1.25rem;
	transition:all .3s;
}
.glass-card:hover .card-icon{transform:scale(1.1)}
.icon-blue{background:rgba(5,152,245,.12);color:var(--primary-fluo)}
.icon-red{background:rgba(245,5,56,.12);color:var(--secondary-fluo)}
.icon-cyan{background:rgba(54,227,255,.12);color:var(--primary-fluo)}

.glass-card h3{font-size:1.15rem;font-weight:600;margin-bottom:.6rem}
.glass-card p{color:var(--text-secondary);font-size:.88rem;line-height:1.7}

.card-featured{border-color:var(--secondary-medium)!important;box-shadow:0 0 30px rgba(245,5,56,.08)}
.card-featured .badge-featured{
	position:absolute;top:0;right:24px;
	background:var(--secondary-medium);
	color:#fff;font-size:.65rem;font-weight:700;
	padding:.3rem .8rem;
	border-radius:0 0 8px 8px;
	text-transform:uppercase;letter-spacing:.05em;
}

/* =============================================
   TARIFS — Pricing section
   ============================================= */
section.pricing :is(.billing-switch,.billing-btn,.price-lg,.pricing-card>.card-body>.save-badge) {border-radius:999px;}
section.pricing .billing-switch {display:inline-flex;background:rgba(var(--primary-darkest-rgb),.25);padding:.25rem;}
section.pricing .billing-btn {border:0;background:transparent;padding:.5rem 1rem;font-weight:700;color:rgba(var(--primary-light-rgb),.8);cursor:pointer;transition:background .2s ease;}
section.pricing .billing-btn.active {background:var(--secondary-medium);color:var(--white);}
section.pricing .pricing-card {
--pricing-bullet-size:.95rem;
--pricing-bullet-check-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg stroke='%2322c55e' stroke-width='6' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='32' cy='32' r='26'/%3E%3Cpath d='M22 34l7 7 14-16'/%3E%3C/g%3E%3C/svg%3E");
--pricing-bullet-cross-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='%23eb0525'%3E%3Cpath d='M19.2 19.2a4 4 0 0 1 5.6 0L32 26.4l7.2-7.2a4 4 0 1 1 5.6 5.6L37.6 32l7.2 7.2a4 4 0 0 1-5.6 5.6L32 37.6l-7.2 7.2a4 4 0 1 1-5.6-5.6l7.2-7.2-7.2-7.2a4 4 0 0 1 0-5.6z'/%3E%3C/g%3E%3C/svg%3E");
position:relative;
height:100%;
}
section.pricing .pricing-card .badge-featured {position:absolute;top:-.5rem;right:.75rem;background:var(--secondary-medium);color:var(--white);font-weight:700;border-radius:.5rem;padding:.25rem .5rem;}
section.pricing .price-lg {display:inline-flex;gap:0;align-items:baseline;justify-content:center;margin:0;border:.15rem solid var(--secondary-medium);padding:.7rem 1.1rem;background:rgba(var(--primary-darkest-rgb),.35);color:#fff;text-align:center;}
section.pricing .price-lg .price {display:inline-flex;align-items:baseline;gap:.25rem;font-weight:700;line-height:1.1;white-space:nowrap;}
section.pricing .price-lg .price-value {font-size:1.8rem;line-height:1;}
section.pricing .price-lg .price-currency {font-weight:600;opacity:.9;}
section.pricing .price-lg .price-period {font-size:1rem;font-weight:600;opacity:.85;white-space:nowrap;}
section.pricing .price-note {margin-top:.4rem;text-align:center;font-size:.9rem;line-height:1.2;font-weight:500;color:var(--secondary-medium);opacity:.9;}
section.pricing .price-pill.is-custom {border-style:dashed;}
section.pricing .price-pill.is-custom .price-value {font-size:1.2rem;}
section.pricing .pricing-card>.card-body>.save-badge {display:none;align-items:center;justify-content:center;gap:.4rem;margin-top:.35rem;padding:.25rem .6rem;background:rgba(var(--secondary-medium-rgb),.12);color:var(--secondary-medium);font-weight:700;font-size:.88rem;}
section.pricing .pricing-card>.card-body>.save-badge:not([hidden]) {display:inline-flex;}
section.pricing .pricing-card ul {list-style:none;margin:0;padding:0;}
section.pricing .pricing-card ul li {position:relative;padding-left:1.6rem;font-size:.85rem;line-height:1.5;margin-bottom:.35rem;}
section.pricing .pricing-card ul li::before {content:"";position:absolute;left:0;top:.35em;width:var(--pricing-bullet-size);height:var(--pricing-bullet-size);background-repeat:no-repeat;background-position:left center;background-size:contain;background-image:var(--pricing-bullet-check-icon);}
section.pricing .pricing-card ul li:has(del)::before {background-image:var(--pricing-bullet-cross-icon);opacity:.9;}
section.pricing .pricing-card ul li del {opacity:.75;}
section.pricing .pricing-card ul li sup {position:relative;top:-.2em;font-size:.7em;line-height:0;}
@media (max-width:480px){
section.pricing .price-lg .price-value {font-size:1.6rem;}
}

/* Expand (listes tronquées) */
.expand {overflow:hidden;max-height:none;transition:max-height 0.35s ease;position:relative;}
.expand.with-gradient {-webkit-mask-image:linear-gradient(to bottom,#000 50%,transparent 100%);mask-image:linear-gradient(to bottom,#000 50%,transparent 100%);}
.expand-toggle {margin-top:.4rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;border:none;background:none;cursor:pointer;color:var(--secondary-medium);padding:0;font-weight:600;}
.expand-toggle:hover {text-decoration:underline;}
.expand-toggle::after {content:"";width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:.2s ease;}
.expand-toggle.is-open::after {transform:rotate(-135deg);}

/* ---- Comparison: sticky header (div) ---- */
.comparison-header {position:sticky;top:70px;z-index:10;background:rgba(var(--primary-darkest-rgb),1);border-radius:.5rem .5rem 0 0;border-bottom:2px solid rgba(255,255,255,.1);}

/* Desktop header row */
.comparison-header-row {display:flex;}
.comparison-hcell {flex:1;padding:1.25rem 1rem;text-align:center;font-size:.85rem;color:#fff;line-height:1.4;}
.comparison-hcell strong {display:block;font-size:.9rem;margin-bottom:.15rem;}
.comparison-hcell span {display:block;font-size:1.1rem;font-weight:700;margin:.4rem 0;}
.comparison-hcell .btn {margin-top:.5rem;}
.hcell-feature {text-align:left;font-weight:600;display:flex;align-items:center;}
.hcell-popular {background:rgba(var(--secondary-medium-rgb),.15);border-top:3px solid var(--secondary-medium);border-radius: 0.5rem;}

/* Plan selector badges */
.plan-selector {display:none;flex-wrap:wrap;justify-content:center;gap:.5rem;padding:1rem;}
.plan-badge {padding:.5rem 1rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:transparent;color:rgba(255,255,255,.7);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;}
.plan-badge:hover {background:rgba(var(--secondary-medium-rgb),.1);color:#fff;border-color:rgba(var(--secondary-medium-rgb),.3);}
.plan-badge.is-active {background:var(--secondary-medium);color:#fff;border-color:var(--secondary-medium);}

/* ---- Comparison: table body ---- */
.comparison-table {width:100%;table-layout:fixed;border-collapse:collapse;font-size:.9rem;}
.comparison-table thead.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.comparison-table tbody td {padding:.85rem 1rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.06);color:rgba(255,255,255,.8);}
.comparison-table tbody td:first-child {text-align:left;font-weight:500;color:rgba(255,255,255,.9);}
.comparison-table tbody tr:hover td {background:rgba(255,255,255,.03);}
.comparison-table .section-row td {font-weight:700;font-size:.95rem;color:#fff;padding:1rem;background:rgba(var(--primary-dark-rgb),.4);border-bottom:1px solid rgba(255,255,255,.08);}
.comparison-table .section-row i {margin-right:.5rem;color:var(--secondary-medium);}
.comparison-table .ct-yes {color:#22c55e;font-size:1.1rem;}
.comparison-table .ct-no {color:rgba(255,255,255,.2);font-size:.75rem;}

/* ---- Comparison: mobile single-column ---- */
@media (max-width:1024px){
.comparison-header-row {display:none;}
.plan-selector {display:flex;}
.comparison-table,.comparison-table tbody {display:block;}
.comparison-table tbody tr {display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.06);}
.comparison-table tbody td {display:none;padding:0;border:none;}
.comparison-table tbody td:first-child {display:block;flex:1;text-align:left;font-weight:500;color:rgba(255,255,255,.9);}
.comparison-table.show-plan-1 tbody td:nth-child(2),
.comparison-table.show-plan-2 tbody td:nth-child(3),
.comparison-table.show-plan-3 tbody td:nth-child(4),
.comparison-table.show-plan-4 tbody td:nth-child(5) {display:block;text-align:right;flex-shrink:0;padding-left:1rem;color:rgba(255,255,255,.8);}
.comparison-table .section-row {padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.08);}
.comparison-table .section-row td[colspan] {display:block;width:100%;background:transparent;padding:0;border:none;font-weight:700;font-size:.95rem;color:#fff;}
}

/* =============================================
   SPLIT — WEB vs IA
   ============================================= */
.split-card{height:100%;position:relative}
.split-card .split-badge{
	display:inline-block;
	padding:.35rem .9rem;
	border-radius:8px;
	font-size:.72rem;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.06em;
	margin-bottom:1.25rem;
}
.split-web .split-badge{background:rgba(5,152,245,.15);color:var(--primary-fluo)}
.split-ia .split-badge{background:rgba(245,5,56,.15);color:var(--secondary-fluo)}
.split-card h3{font-size:1.3rem;font-weight:700;margin-bottom:.75rem}
.split-card .split-desc{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.25rem}
.split-list strong{color:var(--text-primary)}
.split-list{list-style:none;padding:0;margin:0 0 1.5rem}
.split-list li{
	display:flex;align-items:flex-start;gap:.6rem;
	padding:.45rem 0;
	font-size:.85rem;
	color:var(--text-secondary);
}
.split-list .check{
	width:20px;height:20px;flex-shrink:0;margin-top:2px;
	border-radius:50%;
	display:flex;align-items:center;justify-content:center;
	font-size:.6rem;
}
.split-web .check{background:rgba(5,152,245,.15);color:var(--primary-fluo)}
.split-ia .check{background:rgba(245,5,56,.15);color:var(--secondary-fluo)}
.split-ia{border-color:rgba(245,5,56,.2)!important}
.split-ia:hover{border-color:rgba(245,5,56,.4)!important;box-shadow:0 20px 60px rgba(245,5,56,.08)}

/* =============================================
   PARRAINAGE BANDEAU
   ============================================= */
.parrainage-section{
	background:linear-gradient(135deg,var(--primary-dark) 0%,rgba(25,35,64,.8) 50%,rgba(245,5,56,.08) 100%);
	border-top:1px solid var(--border-subtle);
	border-bottom:1px solid var(--border-subtle);
	position:relative;overflow:hidden;
}
.parrainage-section::before{
	content:'';position:absolute;top:0;right:0;
	width:400px;height:400px;
	background:radial-gradient(circle,rgba(245,5,56,.1) 0%,transparent 70%);
	border-radius:50%;
	transform:translate(30%,-30%);
}
.parrainage-section > .container{position:relative;z-index:2}
.parrainage-desc{color:var(--text-secondary);font-size:.95rem;margin-bottom:1.5rem}
.parrainage-reward-icon{font-size:1.5rem;margin-bottom:.4rem}
.parrainage-best-label{font-size:.6rem;font-weight:700;color:var(--secondary-fluo);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.3rem}
.parrainage-reward{
	text-align:center;padding:1.5rem 1rem;
	background:rgba(255,255,255,.03);
	border:1px solid rgba(255,255,255,.06);
	border-radius:12px;
	transition:all .3s;
}
.parrainage-reward:hover{
	background:rgba(255,255,255,.06);
	border-color:var(--border-glow);
	transform:translateY(-4px);
}
.parrainage-reward.is-best{border-color:var(--secondary-medium);box-shadow:0 0 20px rgba(245,5,56,.12)}
.parrainage-amount{
	font-size:2rem;font-weight:800;
	background:linear-gradient(135deg,var(--primary-fluo),var(--secondary-fluo));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;
	background-clip:text;
}
.parrainage-label{font-size:.8rem;color:var(--text-secondary);margin-top:.25rem}
.parrainage-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.parrainage-pill{
	display:inline-flex;align-items:center;gap:.35rem;
	padding:.3rem .8rem;border-radius:50px;
	background:rgba(5,152,245,.08);
	border:1px solid rgba(5,152,245,.15);
	font-size:.72rem;font-weight:500;
	color:var(--primary-light);
}
.parrainage-visual{position:relative;max-width:520px;margin:0 auto;width:100%}
.parrainage-visual > img{
	filter:drop-shadow(0 20px 50px rgba(245,5,56,.2));
	animation:heroFloat 6s ease-in-out infinite;
	animation-delay:-3s;
}
.parrainage-steps{display:flex;gap:1rem;flex-wrap:wrap;margin:1.5rem 0}
.parrainage-step{
	display:flex;align-items:center;gap:.5rem;
	font-size:.8rem;color:var(--text-secondary);
}
.parrainage-step-num{
	width:26px;height:26px;border-radius:50%;
	background:linear-gradient(135deg,var(--primary-medium),var(--primary-fluo));
	color:#fff;
	display:flex;align-items:center;justify-content:center;
	font-size:.7rem;font-weight:700;flex-shrink:0;
}

/* --- Illicado Slider (parrainage) --- */
.illicado-slider{
	position:relative;width:100%;max-width:520px;
	margin:0 auto;height:380px;perspective:1200px;
}
.slider-track{
	position:relative;width:100%;height:100%;
	transform-style:preserve-3d;
}
.slider-card{
	position:absolute;top:50%;left:50%;
	width:90%;max-width:460px;
	transform:translate(-50%,-50%);
	transition:all .6s cubic-bezier(.4,0,.2,1);
	opacity:0;pointer-events:none;
}
.slider-card.active{
	opacity:1;z-index:3;
	transform:translate(-50%,-50%) scale(1) rotateY(0deg);
}
.slider-card.prev{
	opacity:.02;z-index:1;
	transform:translate(-120%,-50%) scale(.85) rotateY(25deg);
}
.slider-card.next{
	opacity:.35;z-index:1;
	transform:translate(20%,-50%) scale(.85) rotateY(-25deg);
}
.slider-card img{
	width:100%;height:auto;
	filter:drop-shadow(0 15px 50px rgba(5,152,245,.2));
	border-radius:16px;
}
.slider-dots{
	display:flex;gap:.6rem;justify-content:center;margin-top:1.5rem;
}
.slider-dot{
	width:10px;height:10px;border-radius:50%;
	background:rgba(5,152,245,.2);cursor:pointer;
	transition:all .3s;border:none;padding:0;
}
.slider-dot.active{
	background:var(--primary-fluo);width:28px;
	border-radius:5px;box-shadow:0 0 8px rgba(54,227,255,.3);
}
.slider-arrows{
	position:absolute;top:50%;left:0;right:0;
	transform:translateY(-50%);
	display:flex;justify-content:space-between;
	pointer-events:none;z-index:10;
}
.slider-arrow{
	width:42px;height:42px;border-radius:50%;
	background:var(--surface-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border:1px solid var(--border-glow);
	color:var(--primary-light);
	font-size:.85rem;
	display:flex;align-items:center;justify-content:center;
	cursor:pointer;transition:all .3s;
	font-size:1.2rem;font-weight:900;
	pointer-events:all;
	box-shadow:0 8px 25px rgba(5,152,245,.15);
}
.slider-arrow:hover{
	background:var(--primary-medium);color:#fff;
	border-color:var(--primary-medium);transform:scale(1.1);
	box-shadow:0 8px 25px rgba(5,152,245,.3);
}
.slider-arrow.prev{margin-left:-18px}
.slider-arrow.next{margin-right:-18px}

/* =============================================
   PRICING TEASER
   ============================================= */
.pricing-card{text-align:center}
.pricing-card .price-tag{
	font-size:2.5rem;font-weight:800;
	margin:.75rem 0 .25rem;
	background:linear-gradient(135deg,var(--primary-fluo),var(--secondary-fluo));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.pricing-card .price-tag .currency{font-size:1rem;font-weight:500;color:var(--text-muted);-webkit-text-fill-color:var(--text-muted)}
.pricing-card .price-from{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.pricing-card .pricing-desc{font-size:.82rem;color:var(--text-secondary);margin-bottom:1.5rem}
.pricing-card .pricing-desc strong{color:var(--primary-light)}
.pricing-card.card-featured .pricing-desc strong{color:var(--secondary-light)}

/* =============================================
   OFFSET SWIPER — Reusable overflow slider
   ============================================= */
.offset-swiper-section{overflow:hidden}
.offset-swiper-section .container{position:relative}

/* Layout : editorial left + swiper right */
.offset-swiper-row{display:flex;align-items:center;gap:2rem}
.offset-swiper-editorial{flex:0 0 340px;max-width:340px}
.offset-swiper-editorial .section-tag{margin-bottom:.75rem;display:inline-block}
.offset-swiper-editorial .section-title{font-size:clamp(1.4rem,2.8vw,1.8rem);text-align:left;margin-bottom:1rem}
.offset-swiper-editorial .section-lead{font-size:.88rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1.75rem}
.offset-swiper-editorial .sep-gradient{margin:0 0 1rem}

/* Swiper container — overflows right viewport edge */
.offset-swiper-wrap{flex:1;min-width:0;overflow:visible}
.offset-swiper-wrap .swiper{overflow:visible}

/* Navigation arrows */
.offset-swiper-nav{display:flex;gap:.75rem;margin-top:1.5rem;position:relative;z-index:2}
.offset-swiper-arrow{
	width:44px;height:44px;border-radius:50%;
	border:1px solid var(--glass-border);background:var(--surface-card);
	color:var(--text-primary);font-size:.85rem;
	display:inline-flex;align-items:center;justify-content:center;
	cursor:pointer;transition:all .3s ease;backdrop-filter:blur(8px);
	position:relative;z-index:2;
}
.offset-swiper-arrow:hover{border-color:var(--primary-fluo);color:var(--primary-fluo);background:rgba(5,152,245,.08)}
.offset-swiper-arrow.swiper-button-disabled{opacity:.3;cursor:default;pointer-events:none}
.offset-swiper-arrow.is-hidden{opacity:0;pointer-events:none;width:0;padding:0;border:0;margin:0;overflow:hidden}

/* Slide card — pricing variant */
.offset-slide-card{
	background:var(--surface-card);
	border:1px solid var(--glass-border);
	border-radius:16px;padding:2rem 1.5rem;
	backdrop-filter:blur(12px);
	text-align:center;height:100%;
	display:flex;flex-direction:column;
	transition:border-color .3s ease,box-shadow .3s ease;
}
.offset-slide-card:hover{border-color:rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.2)}
.offset-slide-card.is-popular{border-color:var(--secondary-medium);box-shadow:0 0 30px rgba(245,5,56,.08)}
.offset-slide-card .card-badge{
	display:inline-block;font-size:.6rem;font-weight:700;
	text-transform:uppercase;letter-spacing:.08em;
	padding:.25rem .75rem;border-radius:50px;margin-bottom:.75rem;
	background:rgba(245,5,56,.12);color:var(--secondary-fluo);
}
.offset-slide-card h3{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}
.offset-slide-card .card-short{font-size:.78rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.25rem;min-height:2.4em}
.offset-slide-card .card-price-from{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.offset-slide-card .card-price{
	font-size:2.2rem;font-weight:800;margin:.5rem 0 .25rem;
	background:linear-gradient(135deg,var(--primary-light),var(--primary-light));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.offset-slide-card.is-popular .card-price{
	background:linear-gradient(135deg,var(--secondary-fluo),var(--secondary-medium));
	-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.offset-slide-card .card-price .currency{font-size:.85rem;font-weight:500;-webkit-text-fill-color:var(--text-muted)}
.offset-slide-card .card-monthly{font-size:.78rem;color:var(--text-secondary);margin-bottom:1.5rem}
.offset-slide-card .card-monthly strong{color:var(--primary-light)}
.offset-slide-card.is-popular .card-monthly strong{color:var(--secondary-light)}
.offset-slide-card .card-cta{margin-top:auto}

/* Tarifs — pricing variant of offset-slide-card */
.offset-slide-card.pricing-card ul {text-align:left;}
.offset-slide-card.pricing-card .card-monthly {margin-bottom:.25rem;min-height:1.2em;}
.offset-slide-card.pricing-card .expand {margin-top:1rem;}
.offset-slide-card.pricing-card .card-price {margin:.5rem 0 .15rem;}

/* Swiper slide sizing */
.offset-swiper-wrap .swiper-slide{width:280px}

/* Responsive */
@media(max-width:991.98px){
	.offset-swiper-row{flex-direction:column;align-items:flex-start;gap:1.5rem}
	.offset-swiper-editorial{flex:none;max-width:100%}
	.offset-swiper-editorial .section-title{font-size:1.4rem}
	.offset-swiper-wrap{width:100%;margin-left:0}
	.offset-swiper-wrap .swiper-slide{width:260px}
}
@media(max-width:575.98px){
	.offset-swiper-wrap .swiper-slide{width:240px}
	.offset-slide-card{padding:1.5rem 1.25rem}
	.offset-slide-card .card-price{font-size:1.8rem}
}

/* =============================================
   FOOTER — ACRO-FOOTER
   ============================================= */
.acro-footer{
	background:linear-gradient(180deg,var(--primary-darkest) 0%,rgba(2,9,23,1) 100%);
	border-top:1px solid var(--border-subtle);
	padding:3rem 0 1.5rem;
}
.acro-footer a{color:var(--text-secondary);text-decoration:none;transition:color .3s;font-size:.85rem}
.acro-footer a:hover{color:var(--primary-fluo)}
.footer-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:1rem}
.footer-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.7}

/* Socials */
.footer-socials{display:flex;gap:.75rem;margin-top:1.25rem}
.footer-socials a{
	width:36px;height:36px;border-radius:50%;
	border:1px solid var(--glass-border);
	display:inline-flex;align-items:center;justify-content:center;
	color:var(--text-muted);font-size:.85rem;
	transition:all .3s;
}
.footer-socials a:hover{
	border-color:var(--primary-fluo);color:var(--primary-fluo);
	background:rgba(5,152,245,.08);
}

/* Main grid */
.footer-main{margin-top:2.5rem}

/* Bottom bar */
.footer-bottom{border-top:1px solid var(--border-subtle);padding-top:1.5rem;margin-top:2rem}
.footer-bottom p{font-size:.75rem;color:var(--text-muted);margin:0}
.footer-bottom .text-fluo{color:var(--primary-fluo)}
.footer-legal{display:flex;gap:1rem}
.footer-legal a{font-size:.75rem;color:var(--text-muted);transition:color .3s}
.footer-legal a:hover{color:var(--primary-fluo)}

/* =============================================
   FOOTER — TOP ROW : CTA + NEWSLETTER
   ============================================= */
.footer-top-row{margin-bottom:1rem}

/* Shared card base */
.footer-cta-card,.footer-newsletter{
	padding:2rem 2rem;height:100%;
	background:var(--surface-card);border:1px solid var(--glass-border);
	border-radius:16px;position:relative;overflow:hidden;
	display:flex;flex-direction:column;justify-content:center;
}

/* Radial glows */
.footer-cta-glow,.footer-nl-glow{
	position:absolute;width:200px;height:200px;border-radius:50%;
	filter:blur(80px);opacity:.15;pointer-events:none;
}
.footer-cta-glow{top:-40px;right:-40px;background:var(--secondary-fluo)}
.footer-nl-glow{bottom:-40px;left:-40px;background:var(--primary-fluo)}

/* Shared tag */
.footer-cta-tag,.footer-nl-tag{
	display:inline-flex;align-items:center;gap:.4rem;
	font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
	padding:.35rem .85rem;border-radius:50px;margin-bottom:1rem;width:fit-content;
}
.footer-cta-tag{background:rgba(245,5,56,.1);color:var(--secondary-fluo)}
.footer-cta-tag i{font-size:.55rem}
.footer-nl-tag{background:rgba(5,152,245,.1);color:var(--primary-fluo)}
.footer-nl-tag i{font-size:.6rem}

/* CTA Proximité */
.footer-cta-heading{
	font-size:clamp(1.3rem,2.5vw,1.65rem);font-weight:800;
	color:var(--text-primary);line-height:1.25;margin-bottom:.75rem;
}
.footer-cta-lead{
	color:var(--text-secondary);font-size:.85rem;line-height:1.65;margin-bottom:1.25rem;
}
.footer-cta-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.footer-chip{
	display:inline-flex;align-items:center;gap:.35rem;
	font-size:.72rem;color:var(--text-muted);
	padding:.3rem .7rem;border-radius:50px;
	border:1px solid var(--glass-border);background:rgba(255,255,255,.03);
}
.footer-chip i{font-size:.5rem;color:var(--secondary-fluo)}
.footer-cta-btn{
	display:inline-flex;align-items:center;gap:.6rem;
	padding:.7rem 1.5rem;border-radius:50px;
	background:linear-gradient(135deg,rgba(245,5,56,.15),rgba(245,5,56,.05));
	border:1px solid rgba(245,5,56,.25);
	color:#fff;font-size:.85rem;font-weight:600;
	text-decoration:none;transition:all .3s;width:fit-content;
}
.acro-footer .footer-cta-btn:hover{
	background:linear-gradient(135deg,rgba(245,5,56,.25),rgba(245,5,56,.1));
	border-color:rgba(245,5,56,.4);
	color:#fff;transform:translateY(-1px);
	box-shadow:0 4px 20px rgba(245,5,56,.2);
}
.footer-cta-btn i{font-size:.7rem;transition:transform .3s}
.footer-cta-btn:hover i{transform:translateX(3px)}
.footer-nl-title{
	font-size:clamp(1.2rem,2vw,1.45rem);font-weight:800;color:var(--text-primary);margin-bottom:.5rem;
}
.footer-nl-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.6;margin:0}
.footer-nl-input-group{
	display:flex;gap:0;border-radius:50px;overflow:hidden;
	border:1px solid var(--glass-border);background:rgba(255,255,255,.04);
	transition:border-color .3s;
}
.footer-nl-input-group:focus-within{
	border-color:var(--primary-fluo);box-shadow:0 0 0 3px rgba(54,227,255,.1);
}
.footer-nl-input{
	flex:1;border:none;background:transparent;color:var(--text-primary);
	padding:.75rem 1.5rem;font-size:.9rem;outline:none;
}
.footer-nl-input::placeholder{color:var(--text-muted)}
.footer-nl-btn{
	border:none;background:linear-gradient(135deg,var(--acro-blue),var(--primary-fluo));
	color:var(--primary-darkest);font-weight:700;font-size:.85rem;
	padding:.75rem 1.75rem;cursor:pointer;transition:all .3s;white-space:nowrap;
}
.footer-nl-btn:hover{
	background:linear-gradient(135deg,var(--primary-fluo),var(--acro-blue));
	box-shadow:0 4px 20px rgba(54,227,255,.3);
}
.footer-nl-btn i{margin-right:.35rem}
.footer-nl-rgpd{
	display:flex;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding-left:.25rem;
}
.footer-nl-rgpd .form-check-input{margin-top:.2rem;flex-shrink:0}
.footer-nl-rgpd label{font-size:.75rem;color:var(--text-muted);line-height:1.4}
.footer-nl-rgpd label a{color:var(--primary-fluo)!important;text-decoration:underline}
.footer-nl-form #msgNewsletter{margin-top:.75rem;font-size:.85rem;border-radius:8px}
@media(max-width:991.98px){
	.footer-cta-card,.footer-newsletter{padding:1.75rem}
	.footer-cta-heading{font-size:1.3rem}
	.footer-nl-title{font-size:1.15rem}
}
@media(max-width:575.98px){
	.footer-nl-input-group{flex-direction:column;border-radius:12px}
	.footer-nl-input{border-bottom:1px solid var(--glass-border);border-radius:0;padding:.75rem 1rem}
	.footer-nl-btn{border-radius:0;padding:.75rem 1rem}
}

/* =============================================
   UTILS / ANIMATIONS
   ============================================= */
.fade-up{opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.165,.84,.44,1)}
.fade-up.visible{opacity:1;transform:translateY(0)}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}
@keyframes heroFloat{
	0%,100%{transform:translateY(0)}
	50%{transform:translateY(-15px)}
}

@media(max-width:991.98px){
	.hero{min-height:auto;padding-top:100px;padding-bottom:3rem}
	.hero h1{font-size:2rem}
	.hero-stats{gap:1.5rem}
	.section-dark{padding:4rem 0}
	.illicado-slider{height:280px;max-width:360px}
	.slider-arrows{display:none}
}
@media(max-width:767.98px){
	.hero-stats{justify-content:center}
	.hero-stat-value{font-size:1.5rem}
	.parrainage-steps{flex-direction:column}
}
@media(max-width:575.98px){
	.illicado-slider{height:240px}
	.slider-card{width:85%}
}

/* =============================================
   BURGER BUTTON
   ============================================= */
.menu-btn{
	width:46px;height:46px;
	border:none;
	background:rgba(5,152,245,.10);
	cursor:pointer;
	position:relative;
	padding:0;
	outline:none;
	border-radius:50%;
	transition:all .25s ease;
	flex-shrink:0;
}
.menu-btn:hover{background:rgba(5,152,245,.20)}
.menu-btn:focus-visible{box-shadow:0 0 0 3px rgba(54,227,255,.3)}
.menu-btn span{
	display:block;width:22px;height:2px;
	position:absolute;left:50%;transform:translateX(-50%);
	background:var(--text-primary);
	transition:all .25s ease-in-out;
	border-radius:2px;
}
.menu-btn span:nth-child(1){top:16px}
.menu-btn span:nth-child(2){top:22px}
.menu-btn span:nth-child(3){top:28px}

/* =============================================
   MENU OPEN STATE
   ============================================= */
body.menu-open{overflow:hidden}
body.menu-open #mainNav{
	z-index:2200!important;
	background:transparent!important;
	backdrop-filter:none!important;
	-webkit-backdrop-filter:none!important;
	box-shadow:none!important;
	border-color:transparent!important;
}
body.menu-open .menu-btn span{background:#fff!important}
body.menu-open .menu-btn span:nth-child(1){top:22px;transform:translateX(-50%) rotate(45deg)}
body.menu-open .menu-btn span:nth-child(2){opacity:0}
body.menu-open .menu-btn span:nth-child(3){top:22px;transform:translateX(-50%) rotate(-45deg)}
body.menu-open #mainNav .navbar-brand,
body.menu-open #mainNav .nav-desktop{
	opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
body.menu-open #mainNav .container{pointer-events:none}
body.menu-open #mainNav .menu-btn{pointer-events:auto;position:relative;z-index:2205}

/* =============================================
   FULLSCREEN MENU OVERLAY
   ============================================= */
.full-menu-overlay{
	position:fixed;inset:0;
	background:
		radial-gradient(900px 500px at 10% 10%,rgba(5,152,245,.15),transparent 60%),
		radial-gradient(600px 400px at 90% 20%,rgba(245,5,56,.12),transparent 55%),
		linear-gradient(180deg,rgba(2,9,23,.97),rgba(2,9,23,.99));
	z-index:2100;
	display:flex;align-items:center;justify-content:center;
	opacity:0;visibility:hidden;
	transition:all .35s ease;
	transform:translateY(-10px);
}
.full-menu-overlay.active{
	opacity:1;visibility:visible;transform:translateY(0);
}
.menu-link{
	font-family:'Poppins',system-ui,sans-serif;
	font-size:clamp(1.4rem,4.2vw,2rem);
	font-weight:600;
	color:#fff;
	text-decoration:none;
	display:block;
	margin:.1rem 0;
	transition:all .2s ease;
	text-align:center;
	letter-spacing:-.01em;
}
.menu-link:hover{
	color:var(--primary-fluo);
	transform:translateX(8px);
}
.menu-actions{
	display:flex;flex-wrap:wrap;gap:.7rem;
	justify-content:center;
	margin-top:2rem;
}
.menu-chip{
	display:inline-flex;align-items:center;gap:.45rem;
	padding:.5rem .85rem;
	border-radius:50px;
	border:1px solid rgba(255,255,255,.14);
	color:rgba(255,255,255,.78);
	text-decoration:none;
	font-weight:600;font-size:.8rem;
	background:rgba(255,255,255,.05);
	backdrop-filter:blur(10px);
	transition:all .2s ease;
	cursor:default;
}
.menu-chip[href]{cursor:pointer}
.menu-chip:hover{border-color:rgba(54,227,255,.3);color:#fff;transform:translateY(-1px)}
.menu-chip .fa-check{color:var(--primary-fluo)}
.menu-footer-divider{border-top:1px solid rgba(255,255,255,.10);width:min(600px,100%)}
.menu-tagline{color:var(--text-muted);font-size:.8rem;font-weight:500}
.maintenance-banner{background:#ffbb00}

@media(max-width:991.98px){
	#mainNav{padding:10px 0!important}
}

/* =============================================
   SCROLL TO TOP
   ============================================= */
.scroll-top{
	position:fixed;bottom:28px;right:28px;
	width:46px;height:46px;
	border:1px solid var(--border-glow);
	background:var(--surface-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	color:var(--primary-fluo);
	border-radius:50%;
	display:flex;align-items:center;justify-content:center;
	font-size:1.1rem;
	cursor:pointer;
	opacity:0;visibility:hidden;
	transform:translateY(12px);
	transition:all .3s ease;
	z-index:1040;
	box-shadow:0 8px 30px rgba(5,152,245,.15);
}
.scroll-top.visible{
	opacity:1;visibility:visible;transform:translateY(0);
}
.scroll-top:hover{
	background:var(--primary-medium);
	color:#fff;
	border-color:var(--primary-medium);
	transform:translateY(-3px);
	box-shadow:0 12px 35px rgba(5,152,245,.3);
}

/* =============================================
   REALISATIONS SWIPER
   ============================================= */
.realisations-swiper-wrap{
	border-radius:20px;
	overflow:hidden;
	box-shadow:0 20px 60px rgba(5,152,245,.08);
	position:relative;
	border:1px solid var(--glass-border);
}
.realisations-swiper{height:480px;position:relative}
.realisations-swiper .swiper-slide{position:relative;height:100%;background:var(--primary-darkest)}
.realisations-swiper .swiper-slide img{width:100%;height:100%;object-fit:cover;opacity:.82;transition:opacity .4s}
.realisations-swiper .swiper-slide-active img{opacity:.92}
.realisations-caption{
	position:absolute;left:0;right:0;bottom:0;
	padding:2.5rem 2rem 1.8rem;
	background:linear-gradient(to top,rgba(2,9,23,.92),rgba(2,9,23,.4) 60%,transparent);
	color:#fff;
	z-index:2;
}
.realisations-caption .rea-badge{
	display:inline-flex;align-items:center;gap:.4rem;
	padding:.3rem .75rem;border-radius:50px;
	background:rgba(5,152,245,.15);
	border:1px solid rgba(5,152,245,.25);
	font-size:.72rem;font-weight:600;
	color:var(--primary-fluo);
	margin-bottom:.6rem;
	backdrop-filter:blur(8px);
}
.realisations-caption h3{
	font-size:clamp(1.1rem,2.5vw,1.5rem);
	font-weight:700;margin-bottom:.3rem;
}
.realisations-caption h3 a{color:#fff;text-decoration:none;transition:color .2s}
.realisations-caption h3 a:hover{color:var(--primary-fluo)}
.realisations-caption .rea-mission{
	font-size:.82rem;color:var(--text-secondary);
	margin-bottom:.5rem;
	display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.realisations-caption .rea-location{
	display:inline-flex;align-items:center;gap:.35rem;
	font-size:.78rem;color:var(--text-muted);font-weight:500;
}
.realisations-caption .rea-location i{color:var(--primary-fluo);font-size:.7rem}
.rea-logo{
	position:absolute;top:1.2rem;left:1.5rem;z-index:3;
	background:rgba(255,255,255,.95);
	border-radius:10px;padding:.4rem .6rem;
	box-shadow:0 4px 16px rgba(0,0,0,.2);
}
.rea-logo img{height:28px;width:auto;display:block}
.realisations-swiper .swiper-button-prev,
.realisations-swiper .swiper-button-next{
	width:46px;height:46px;
	border-radius:50%;
	background:var(--surface-card);
	backdrop-filter:blur(12px);
	border:1px solid var(--glass-border);
	color:var(--primary-fluo);
	transition:all .25s ease;
}
.realisations-swiper .swiper-button-prev:hover,
.realisations-swiper .swiper-button-next:hover{
	background:var(--primary-medium);
	border-color:var(--primary-medium);
	color:#fff;
	box-shadow:0 8px 25px rgba(5,152,245,.3);
}
.realisations-swiper .swiper-button-prev:after,
.realisations-swiper .swiper-button-next:after{font-size:1rem;font-weight:900}
.realisations-swiper .swiper-pagination-bullet{
	background:rgba(255,255,255,.35);opacity:1;width:10px;height:10px;
}
.realisations-swiper .swiper-pagination-bullet-active{
	background:var(--primary-fluo)!important;
	box-shadow:0 0 8px rgba(54,227,255,.4);
}
@media(max-width:991.98px){
	.realisations-swiper{height:400px}
}
@media(max-width:575.98px){
	.realisations-swiper{height:340px}
	.realisations-caption{padding:1.5rem 1.2rem 1.2rem}
	.realisations-swiper .swiper-button-prev,
	.realisations-swiper .swiper-button-next{width:38px;height:38px}
	.realisations-swiper .swiper-button-prev:after,
	.realisations-swiper .swiper-button-next:after{font-size:.85rem}
}

/* =============================================
   FEATURE SWITCH — POURQUOI ACRONET
   ============================================= */
.fs-wrap{
	position:relative;
	background:var(--surface-card);
	border:1px solid var(--glass-border);
	border-radius:20px;
	padding:2rem 1.5rem 2rem;
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
}
.fs-nav{
	display:none;
	position:relative;
	flex-wrap:wrap;justify-content:center;gap:.45rem;
	margin-bottom:2rem;
	padding:.35rem;
	background:rgba(2,9,23,.6);
	border:1px solid var(--border-subtle);
	border-radius:50px;
}
.fs-nav-btn{
	position:relative;z-index:1;
	border:none;background:transparent;
	color:var(--text-secondary);
	font-family:'Poppins',system-ui,sans-serif;
	font-size:.78rem;font-weight:600;
	padding:.5rem 1rem;border-radius:50px;
	cursor:pointer;transition:color .2s;
	white-space:nowrap;
}
.fs-nav-btn:hover{color:var(--text-primary)}
.fs-nav-btn.is-active{color:#fff}
.fs-nav-highlight{
	position:absolute;top:50%;left:0;
	height:calc(100% - .7rem);
	border-radius:50px;
	background:linear-gradient(135deg,#1a6dcc,#1457a4);
	transform:translateY(-50%);
	opacity:0;
	transition:left .25s ease,width .25s ease,opacity .2s ease;
	pointer-events:none;z-index:0;
	box-shadow:0 4px 15px rgba(5,152,245,.3);
}
.fs-title{
	display:flex;align-items:center;justify-content:space-between;
	width:100%;border:none;
	background:rgba(5,152,245,.06);
	border:1px solid var(--border-subtle);
	color:var(--text-secondary);
	font-family:'Poppins',system-ui,sans-serif;
	font-size:.85rem;font-weight:600;
	padding:.7rem 1rem;border-radius:12px;
	cursor:pointer;transition:all .2s;
}
.fs-title:hover{background:rgba(5,152,245,.10);color:var(--text-primary)}
.fs-title::after{
	content:'';display:inline-block;
	width:.55rem;height:.55rem;
	border-right:2px solid currentColor;border-bottom:2px solid currentColor;
	transform:rotate(-90deg);transition:transform .2s ease;
	flex-shrink:0;margin-left:.5rem;
}
.fs-item.is-active .fs-title{
	background:linear-gradient(135deg,rgba(5,152,245,.12),rgba(245,5,56,.08));
	border-color:var(--border-glow);
	color:var(--primary-fluo);
}
.fs-item.is-active .fs-title::after{transform:rotate(45deg)}
.fs-body{
	display:none;
	margin-top:1rem;padding:.5rem 0;
	color:var(--text-primary);
}
.fs-item.is-active .fs-body{display:block}
.fs-item+.fs-item{margin-top:.4rem}
.fs-badge{
	display:inline-flex;align-items:center;gap:.35rem;
	padding:.25rem .7rem;border-radius:50px;
	font-size:.72rem;font-weight:600;
	background:rgba(245,5,56,.12);
	border:1px solid rgba(245,5,56,.2);
	color:var(--secondary-fluo);
	margin-bottom:.6rem;
}
.fs-heading{
	font-size:1.15rem;font-weight:700;
	margin:0 0 .6rem;color:var(--text-primary);
}
.fs-lead{
	font-size:.88rem;font-weight:500;
	color:var(--text-secondary);
	margin:0 0 .75rem;line-height:1.7;
}
.fs-checklist{
	list-style:none;padding:0;margin:0 0 1rem;
}
.fs-checklist li{
	position:relative;
	padding-left:1.6rem;
	font-size:.84rem;color:var(--text-secondary);
	line-height:1.6;
}
.fs-checklist li+li{margin-top:.5rem}
.fs-lead strong,.fs-checklist strong{color:var(--text-primary)}
.fs-checklist a{color:var(--primary-fluo)}
.fs-check{
	position:absolute;left:0;top:2px;
	width:20px;height:20px;
	border-radius:50%;
	display:flex;align-items:center;justify-content:center;
	font-size:.6rem;
	background:rgba(5,152,245,.12);
	color:var(--primary-fluo);
	border:1px solid rgba(5,152,245,.2);
}
.fs-img{border-radius:14px;overflow:hidden}
.fs-img img{width:100%;height:100%;object-fit:cover;border-radius:14px}
@media(min-width:768px){
	.fs-wrap{padding:2.5rem 2.25rem}
	.fs-nav{display:flex}
	.fs-title{display:none}
	.fs-body{display:none;margin-top:0;padding:0}
	.fs-item.is-active .fs-body{display:block}
	.fs-item+.fs-item{margin-top:0}
}
@media(min-width:992px){
	.fs-wrap{padding:2.5rem 3rem}
}
@media(max-width:991.98px){
	.fs-nav-highlight{display:none!important}
}
@media(max-width:767.98px){
	.fs-item .fs-title{font-size:.95rem!important}
}