:root{--golden-ratio:1.618;--golden-ratio-inverse:.618;--base-size:.9375rem;--scale-factor:1;--font-primary:'Outfit',sans-serif;--font-secondary:'Instrument Serif',Georgia,serif;--font-system:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--color-primary:#2c3e50;--color-dark:#1a252f;--color-light:#f8f9fa;--color-white:#ffffff;--color-gray-100:#ecf0f1;--color-gray-200:#bdc3c7;--color-gray-300:#95a5a6;--color-gray-400:#7f8c8d;--color-highlight:#C9A04A;--color-success:#27ae60;--color-warning:#f39c12;--color-error:#c0392b;--gradient-primary:linear-gradient(135deg,#2c3e50 0%,#1a252f 100%);--gradient-gold:linear-gradient(135deg,#C9A04A 0%,#A07830 100%);--shadow-soft:0 4px 20px rgba(44,62,80,.1);--shadow-medium:0 8px 30px rgba(44,62,80,.15);--shadow-hard:0 15px 40px rgba(26,37,47,.25);--shadow-gold:0 0 30px rgba(201,160,74,.4);--size-xxs:calc(var(--base-size) / (var(--golden-ratio) * 1.5));--size-xs:calc(var(--base-size) / var(--golden-ratio));--size-sm:calc(var(--base-size) / 1.2);--size-md:calc(var(--base-size) * var(--golden-ratio));--size-lg:calc(var(--size-md) * var(--golden-ratio));--size-xl:calc(var(--size-lg) * var(--golden-ratio));--size-xxl:calc(var(--size-xl) * var(--golden-ratio));--size-xxxl:calc(var(--size-xxl) * var(--golden-ratio));--space-unit:.9375rem;--space-xxs:calc(var(--space-unit) / (var(--golden-ratio) * 2));--space-xs:calc(var(--space-unit) / var(--golden-ratio));--space-sm:var(--space-unit);--space-md:calc(var(--space-unit) * var(--golden-ratio));--space-lg:calc(var(--space-md) * var(--golden-ratio));--space-xl:calc(var(--space-lg) * var(--golden-ratio));--space-xxl:calc(var(--space-xl) * var(--golden-ratio));--container-max:1200px;--transition-base:.3s cubic-bezier(.4,0,.2,1);--border-radius:8px;}@media (min-width:768px){:root{--scale-factor:1.1}}@media (min-width:1024px){:root{--scale-factor:1.2}}.font-poppins{font-family:var(--font-primary)}.font-merriweather{font-family:var(--font-secondary)}.font-system{font-family:var(--font-primary)}h1{font-size:clamp(2.2rem,5vw + 1rem,calc(var(--size-xxl) * var(--scale-factor)));font-weight:700;line-height:1.1;letter-spacing:-.03em;margin-bottom:var(--space-lg);text-transform:uppercase;}h2{font-size:clamp(1.6rem,3.5vw + .5rem,calc(var(--size-xl) * var(--scale-factor)));font-weight:600;line-height:1.1;letter-spacing:-.02em;margin-bottom:var(--space-xs);}h3{font-size:clamp(1.2rem,2.5vw + .3rem,calc(var(--size-lg) * var(--scale-factor)));font-weight:500;line-height:1.2;letter-spacing:-.01em;margin-bottom:var(--space-md);text-transform:lowercase;}h4{font-size:clamp(1rem,1.5vw + .3rem,calc(var(--size-md) * var(--scale-factor)));font-weight:500;line-height:1.3}h5{font-size:clamp(.875rem,1vw + .2rem,calc(var(--size-sm) * var(--scale-factor)));font-weight:500;line-height:1.3;margin-bottom:var(--space-xs);}h6{font-size:clamp(.8rem,.8vw + .2rem,calc(var(--size-xs) * var(--scale-factor)));font-weight:500;line-height:1.4;margin-bottom:var(--space-xs);}.titre{font-size:clamp(1.4rem,3vw + .5rem,calc(var(--size-xl) * var(--scale-factor)));font-weight:600;margin-bottom:var(--space-sm);}.sous-titre{font-size:clamp(1.2rem,2vw + .3rem,calc(var(--size-lg) * var(--scale-factor)))!important;font-weight:400;line-height:1.3;margin-bottom:var(--space-sm);letter-spacing:.03em;}.mega-title{font-size:clamp(calc(var(--size-xl) * var(--scale-factor)),calc(8vw + 1rem),calc(var(--size-xxxl) * var(--scale-factor)));line-height:1.1;font-weight:800;text-transform:uppercase;letter-spacing:-.03em;}.text-eyebrow{font-size:var(--size-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-400);margin-bottom:var(--space-xxs);}.emphase{font-size:clamp(1rem,1.5vw + .3rem,calc(var(--size-md) * 1.2 * var(--scale-factor)));font-weight:500;line-height:var(--golden-ratio);}.extra-p-padding{padding-bottom:var(--space-xl)!important;}.highlight{font-size:larger;font-weight:900;}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{font-size:100%;scroll-behavior:smooth;overflow-x:hidden;}body{font-family:var(--font-primary);font-size:var(--base-size);line-height:var(--golden-ratio);color:var(--color-primary);background-color:var(--color-white);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}img{max-width:100%;height:auto;display:block;}a{color:inherit;text-decoration:none;transition:color var(--transition-base);}button{font-family:inherit;border:none;background:none;cursor:pointer;}.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-md);width:100%;}.container-min{margin-inline:auto;max-width:90%;box-shadow:rgba(181,181,181,.1) 0 7px 29px 0;backdrop-filter:blur(5px);padding:48px;margin-bottom:var(--space-lg)}.container-min-slides{margin-left:calc(var(--space-md) * -1 - 15px);height:97%;width:50vw;box-shadow:rgb(4 3 3 / 38%) 0 7px 29px 0;backdrop-filter:blur(5px);padding:3rem;padding-left:6rem;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;}@media screen and (max-width:992px){.container-min-slides{width:82vw;padding-left:3rem;padding-right:3rem}}.container-min img,.real-prod img{width:96px;height:auto;margin-left:auto;margin-right:auto;margin-bottom:.5rem;filter:invert(1);filter:invert(.5) sepia(1) saturate(5) hue-rotate(175deg);}.section{padding-block:var(--space-xl);}.row{display:flex;flex-wrap:wrap;gap:var(--space-md);}.col{flex:1 1 100%}.col-6{flex:0 0 calc(50% - var(--space-md))}.col-4{flex:0 0 calc(33.333% - var(--space-md))}.col-3{flex:0 0 calc(25% - var(--space-md))}.fullscreen{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100vw;padding:var(--space-lg);}.trio{display:grid;grid-template-columns:repeat(3,1fr);column-gap:3rem;text-align:center;margin-top:var(--space-lg);}.choose-me{background:#f5f6f5;}.bg-primary{background-color:var(--color-primary)}.bg-dark{background-color:var(--color-dark)}.bg-light{background-color:var(--color-light)}.bg-highlight{background-color:var(--color-highlight)}.bg-gradient-primary{background:var(--gradient-primary)}.bg-gradient-gold{background:var(--gradient-gold)}.text-primary{color:var(--color-primary)}.text-dark{color:var(--color-dark)}.text-light{color:var(--color-light)}.text-white{color:var(--color-white)}.text-highlight{color:var(--color-highlight)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.w-100{width:100%}.h-100{height:100%}.vh-100{height:100vh}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mt-md{margin-top:var(--space-md)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.rounded{border-radius:var(--border-radius)}.rounded-full{border-radius:50%}.shadow{box-shadow:var(--shadow-soft)}.shadow-medium{box-shadow:var(--shadow-medium)}.shadow-hard{box-shadow:var(--shadow-hard)}.shadow-gold{box-shadow:var(--shadow-gold)}.overflow-hidden{overflow:hidden}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.fixed{position:fixed}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.big-title{font-size:clamp(1.4rem,3vw + .5rem,calc(var(--size-xl) * var(--scale-factor)))!important;font-weight:700;line-height:1.1;letter-spacing:-.03em;margin-bottom:var(--space-xl)!important;margin-top:var(--space-xl)}.mid-title{font-size:clamp(1.4rem,3vw + .5rem,calc(var(--size-md) * var(--scale-factor)))!important;font-weight:700;line-height:1.1;letter-spacing:-.03em;list-style:none;text-transform:capitalize;text-align:left;}.mid-title li{border-bottom:1px solid rgba(251,255,44,.2);padding-bottom:10px;padding-top:10px;}.yellow-underline{background:#C9A04A;display:inline-block;padding-left:12px;padding-right:12px;}.cadre-infos{background-color:rgba(255,255,255,.05);backdrop-filter:blur(5px);color:var(--color-highlight);border-radius:5px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-xs) var(--space-md);border-radius:2rem;font-size:var(--size-sm);text-transform:uppercase;border:none;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;}.btn-primary{background:var(--gradient-primary);color:var(--color-white);}.btn-accent{background:var(--gradient-gold);color:var(--color-white);box-shadow:var(--shadow-gold);}.btn-secondary{background:transparent;color:var(--color-white);border:2px solid var(--color-highlight);position:relative;overflow:hidden;}.btn-secondary::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(201,160,74,.2),transparent);transition:left .6s;}.btn-secondary:hover::before{left:100%;}.btn--rounded{background:var(--gradient-gold);color:var(--color-white);padding:var(--space-sm) var(--space-lg);border-radius:50px;font-weight:300;box-shadow:var(--shadow-gold);}.section .btn--rounded{margin-top:24px;}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(201,160,74,.4);}.card{background-color:var(--color-white);background-image:var(--card-bg);background-size:cover;background-position:center;padding:0;border-radius:var(--border-radius);transition:all var(--transition-base);position:relative;overflow:hidden;box-shadow:4.0 8.0 8.0 hsl(0deg 0% 0% / .38);}.card::before{content:'';position:absolute;top:0;left:0;width:4px;height:0;background:#C9A04A;transition:height var(--transition-base);z-index:3;}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-hard);}.card:hover::before{height:100%;}.card-overlay{position:absolute;inset:0;background:rgba(0,0,0,.0);z-index:1;border-radius:inherit;}.card-label{position:relative;z-index:2;color:var(--color-dark);font-weight:600;font-size:1.2rem;text-align:center;padding:var(--space-md);line-height:1.4;display:flex;justify-content:left;align-items:center;width:100%;border-left:4px solid #C9A04A;padding-right:0;padding-left:16px;padding-top:0;padding-bottom:0;text-align:left;margin-top:var(--space-md);}.card-scroll{margin-top:3rem;width:100%;min-height:300px;display:flex;align-items:center;justify-content:center;}.card-wrapper{display:flex;flex-direction:column;align-items:center;flex:0 0 280px;margin-top:1rem;margin-bottom:1rem;;}.card-caption{margin-top:var(--space-xs);font-size:var(--size-sm);color:var(--color-gray-400);text-align:left;width:100%;padding-right:var(--space-md);}.header{position:fixed;top:0;left:0;width:100%;background:var(--gradient-primary);display:flex;flex-direction:column;z-index:1000;transition:transform .3s ease,background-color .3s ease;box-shadow:var(--shadow-hard);}.header--hidden{transform:translateY(-100%);}.nav{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-lg);}.nav-logo-img{width:90px;height:auto;transition:filter var(--transition-base);filter:brightness(1);}.nav-links{display:flex;gap:var(--space-lg);margin-left:auto;align-items:center;}.nav-link{color:var(--color-white);text-decoration:none;font-size:var(--size-sm);position:relative;transition:color var(--transition-base);}.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-highlight);transition:width var(--transition-base);}.nav-link:hover::after{width:100%;}.menu-toggle{display:none;background:none;border:none;cursor:pointer;width:30px;height:22px;position:relative;order:2;}.menu-icon,.menu-icon::before,.menu-icon::after{display:block;width:100%;height:3px;background-color:var(--color-white);border-radius:2px;position:absolute;transition:all .3s ease;}.menu-icon{top:50%;transform:translateY(-50%);}.menu-icon::before{content:'';top:-8px;}.menu-icon::after{content:'';top:8px;}.menu-toggle.active .menu-icon{background-color:transparent;}.menu-toggle.active .menu-icon::before{transform:rotate(45deg);top:0;}.menu-toggle.active .menu-icon::after{transform:rotate(-45deg);top:0;}.mobile-menu{visibility:hidden;pointer-events:none;position:absolute;top:100%;right:0;left:0;background:rgba(11,22,34,.88);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-top:1px solid rgba(255,255,255,.12);box-shadow:0 12px 40px rgba(0,0,0,.5);z-index:999;opacity:0;transform:translateY(-8px);transition:opacity .3s ease,transform .3s ease,visibility 0s linear .3s}.mobile-menu[aria-hidden="false"]{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease,visibility 0s linear 0s}.mobile-menu-inner{max-height:0;overflow:hidden;transition:max-height .35s ease}.mobile-menu[aria-hidden="false"] .mobile-menu-inner{max-height:500px}.mobile-menu ul{list-style:none;margin:0;padding:0;}.mobile-menu li{border-bottom:1px solid rgba(255,255,255,.1);}.mobile-menu a{display:block;padding:var(--space-sm) var(--space-lg);color:var(--color-white);text-decoration:none;transition:background-color var(--transition-base);}.mobile-menu a:hover{background-color:rgba(255,255,255,.1);}.hero{width:100%;min-height:90vh;display:flex;align-items:center;justify-content:center;padding-top:80px;background:linear-gradient(135deg,#1a252f 0%,#0d1b2a 50%,#1a252f 100%);position:relative;overflow:hidden;}.hero__webgl-canvas{position:absolute;inset:0;width:100%!important;height:100%!important;z-index:0;display:block;pointer-events:auto;cursor:crosshair;}@media (max-width:768px){.hero__webgl-canvas{display:none}.hero{background:linear-gradient(135deg,rgba(26,37,47,.2) 0%,rgba(13,27,42,.5) 50%,rgba(26,37,47,.2) 100%),image-set(url('img/hero-poster.webp') 1x type('image/webp'),url('img/hero-poster.png') 1x type('image/png')) center center / cover no-repeat;}.hero__click-hint{display:none}}.hero__overlay{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;min-height:90vh;padding-top:80px;background:linear-gradient(to bottom,rgba(10,18,26,.10) 0%,rgba(10,18,26,.30) 100%);}.hero__overlay .hero__container,.hero__overlay .btn{pointer-events:auto;}.hero__click-hint{position:absolute;bottom:var(--space-lg);left:50%;transform:translateX(-50%);font-size:var(--size-xs);color:rgba(255,255,255,.4);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;pointer-events:none;animation:hintPulse 3s ease-in-out infinite;}@keyframes hintPulse{0%,100%{opacity:.4}50%{opacity:.8}}.hero__container{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}.hero__logo{max-width:min(30vw,48rem);height:auto;margin-bottom:var(--space-lg);animation:fadeIn 1s ease;will-change:opacity,transform;filter:drop-shadow(0 0 20px rgba(255,255,255,.3));}.hero__content{text-align:center;color:var(--color-white);max-width:min(34vw,600px);line-height:var(--golden-ratio);font-weight:300;letter-spacing:1px;animation:fadeIn 2.4s ease;will-change:opacity,transform;}.hero__lead{margin-bottom:var(--space-xl);margin-top:var(--space-md);font-size:clamp(.875rem,1vw + .3rem,calc(var(--size-sm) * var(--scale-factor)));line-height:1.2;}.hero__title{font-size:clamp(1rem,2vw + .3rem,1.4rem);font-weight:300;color:var(--color-white);text-transform:none;letter-spacing:.01em;line-height:1.4;margin-bottom:var(--space-sm);opacity:.9;}.hero__title.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}#autre-regard{background-image:repeating-linear-gradient(234deg,rgba(13,124,145,.08) 0,rgba(13,124,145,.08) 1px,transparent 1px,transparent 9px),repeating-linear-gradient(144deg,rgba(13,124,145,.08) 0,rgba(13,124,145,.08) 1px,transparent 1px,transparent 9px),linear-gradient(189deg,rgb(0,39,65),rgb(26,37,47));background-position:center;background-size:cover;color:var(--color-white);padding:var(--space-xxl) var(--space-lg);position:relative;overflow:hidden;column-gap:3rem;}.section-animated{position:relative;width:100vw;overflow:hidden}.intro-animated{position:relative;height:100vh;overflow:hidden;background-color:black;}.media-wrapper{position:absolute;inset:0;overflow:hidden;}.media{position:absolute;inset:0;}.media img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;will-change:transform;}.media-1{z-index:1}.media-2{z-index:2}.media-3{z-index:3}.word-wrapper{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:10;}.word{margin:0;position:absolute;display:flex;justify-content:center;align-items:center;font-size:clamp(2.2rem,7vw + .5rem,10rem);font-weight:800;line-height:1;will-change:transform;text-shadow:0 2px 10px rgba(0,0,0,.5);}.word-inner{display:inline-flex;overflow:hidden;}.char{display:inline-block;opacity:0;}.reveal{position:relative;height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;text-align:center;overflow:hidden;}.reveal::after{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:transparent;}.reveal-inner{align-items:center;column-gap:3rem;height:100%;text-align:left;max-width:85%;}.reveal-left{flex:1;display:flex;justify-content:center;}.reveal-right{flex:2;justify-content:center;padding:3rem;padding-right:0;}.reveal-right h3{font-size:clamp(1rem,1.5vw + .3rem,calc(var(--size-md) * var(--scale-factor)));line-height:1.2;}.reveal-text{font-size:clamp(1.6rem,6vw,4rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;word-break:normal;overflow-wrap:break-word;}.reveal-text .word{display:inline!important;white-space:normal!important;}.reveal-text .word::after{content:' ';white-space:pre;}.reveal-text .char{display:inline-block;}@media screen and (max-width:1200px){.reveal{height:auto;min-height:100vh;padding-block:var(--space-xxl)}.reveal-inner{flex-direction:column;text-align:center;align-items:center;justify-content:center;height:auto;padding-block:var(--space-lg)}.reveal-left,.reveal-right{flex:none;width:100%}.reveal-left{justify-content:center}.reveal-right{padding:var(--space-lg) 0 0 0;text-align:left}.reveal-text{text-align:center}}.underline{display:inline-block;position:relative;}.underline::after{content:'';position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--color-highlight);transition:width .3s;}.underline.char.animated::after{width:100%;}.horizontal-scroll-section{position:relative;width:100%;height:100vh;overflow:hidden;}.super-bold{text-transform:uppercase;font-weight:800;}.horizontal-scroll-wrapper{position:relative;width:400vw;height:100vh;display:flex;will-change:transform;}.horiz-col-left,.horiz-col-right{width:100vw;height:100vh;flex-shrink:0;padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column;justify-content:center;overflow-y:auto;align-items:flex-start;border-left:4px solid var(--color-highlight);position:relative;}#col-0-left{background:url(img/dot-grid.webp) repeat center center;color:var(--color-dark);}#col-1-left{background-color:rgba(26,26,26,.5);color:var(--color-white);}#col-1-right{background-color:rgba(26,26,26,.5);color:var(--color-white);}#col-2-left{background-color:rgba(26,26,26,.5);color:var(--color-white);}.col-photo{position:absolute;inset:0;z-index:0;pointer-events:none;mix-blend-mode:overlay;opacity:.35;}.col-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;}.horiz-col-left,.horiz-col-right{isolation:isolate;}.horiz-col-left .container-min-slides,.horiz-col-right .container-min-slides{position:relative;z-index:1;}#col-2-right{background-color:rgba(26,26,26,.5);color:var(--color-white);}#col-3-right{background-color:#1A2A3B;color:var(--color-white);}#col-3-left{background-color:rgba(26,26,26,.5);color:var(--color-white);}.horiz-col-left h3,.horiz-col-right h3,.horiz-col-left .super-bold,.horiz-col-right .super-bold{font-size:clamp(1.5rem,2.5vw + .4rem,2.2rem);}.horiz-col-left p,.horiz-col-right p,.horiz-col-left ul,.horiz-col-right ul,.horiz-col-left li,.horiz-col-right li{font-size:clamp(.95rem,1.2vw + .2rem,1.15rem);line-height:1.7;}@media screen and (min-width:993px) and (max-width:1392px){.col-photo img{object-position:right center}}@keyframes cinematicLight{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.fade-paragraph{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease;}#horiz-section-3{background-color:var(--color-light);padding:0;position:relative;z-index:3;display:flex;flex-direction:column;overflow:hidden;}.scrolling-banner{height:25vh;overflow:hidden;position:relative;background-color:#fefefe;display:flex;align-items:center;border-bottom:1px solid var(--color-highlight);}.scrolling-content{display:flex;align-items:center;white-space:nowrap;animation:scrollHorizontal 15s linear infinite;will-change:transform;}.scrolling-text{font-size:clamp(3.5rem,10vw,12rem);font-weight:800;color:var(--color-white);text-transform:uppercase;letter-spacing:-2px;line-height:1;padding:0 var(--space-lg);text-shadow:0 2px 10px rgba(0,0,0,.5);}.separator{font-size:clamp(2.5rem,6vw,8rem);color:var(--color-highlight);opacity:.8;}.section-content{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-xxl) 0;}@keyframes scrollHorizontal{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.scrolling-banner::before,.scrolling-banner::after{content:'';position:absolute;top:0;bottom:0;width:10vw;z-index:2;pointer-events:none;}.scrolling-banner::before{left:0}.scrolling-banner::after{right:0}.scrolling-banner:hover .scrolling-content{animation-play-state:paused;}#offre{background:var(--gradient-primary);color:var(--color-white);padding:var(--space-xxl) var(--space-lg);background-image:repeating-linear-gradient(45deg,rgba(97,97,97,.1) 0,rgba(97,97,97,.1) 2px,transparent 2px,transparent 4px),linear-gradient(90deg,rgb(67 92 123),rgb(131 165 160));}.offre-details{display:grid;grid-template-columns:repeat(2,1fr);row-gap:3rem;text-align:center;max-width:1300px;margin-left:auto;margin-right:auto;column-gap:3rem}.offre-details h3{padding:24px;}@media screen and (max-width:768px){.offre-details{grid-template-columns:1fr}}#offre h2,.real-prod h2{font-size:clamp(1.1rem,2vw + .3rem,calc(var(--size-lg) * var(--scale-factor)));margin-bottom:var(--space-md);}#offre h3{font-size:clamp(.85rem,1vw + .2rem,calc(var(--size-sm) * var(--scale-factor)));margin-bottom:var(--space-md);font-weight:700;}.real-prod{color:var(--color-white);padding:var(--space-xxl) var(--space-lg);margin-top:var(--space-xl);}.cards-scroll-section{padding-block:var(--space-xl);}.cards-scroll__header{max-width:40rem;margin-bottom:var(--space-lg);}.cards-scroll{display:flex;gap:var(--space-md);overflow-x:auto;padding:0 var(--space-lg);cursor:grab;scroll-behavior:auto;scrollbar-width:none;-ms-overflow-style:none;}.cards-scroll::-webkit-scrollbar{display:none;}.cards-scroll.is-dragging{cursor:grabbing;user-select:none;}.references-section{padding:var(--space-xl) 0;background-color:var(--color-light);}.section-title{text-align:center;margin-bottom:var(--space-xl);color:var(--color-primary);}.logos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-lg);align-items:center;justify-items:center;}.logo-item{display:flex;align-items:center;justify-content:center;padding:var(--space-md);aspect-ratio:1/1;}.logo-item img{max-width:80%;max-height:80%;width:auto;height:auto;object-fit:contain;transition:all var(--transition-base);}.logo-item:hover img{transform:scale(1.05);}:focus-visible{outline:3px solid var(--color-highlight);outline-offset:2px;}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}@media (max-width:992px){.scrolling-text{font-size:clamp(2.5rem,8vw,8rem)}.separator{font-size:clamp(2rem,5vw,5rem)}.logos-grid{grid-template-columns:repeat(4,1fr);gap:var(--space-md)}}@media (max-width:768px){.menu-toggle{display:block}.nav-links{display:none}.col-6,.col-4,.col-3{flex:1 1 100%}.trio{grid-template-columns:1fr;row-gap:var(--space-lg)}.horiz-col-left,.horiz-col-right{padding:var(--space-lg) var(--space-md)}.scrolling-banner{height:25vh}.scrolling-text{font-size:clamp(3rem,12vw,6rem);padding:0 var(--space-md);letter-spacing:-1px}.separator{font-size:clamp(2rem,7vw,4rem)}.scrolling-content{animation-duration:12s}.logos-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-sm)}.cards-scroll{padding-left:var(--space-sm);padding-right:var(--space-sm);gap:var(--space-sm)}.card-wrapper{flex:0 0 80%}}@media (max-width:480px){:root{--base-size:.875rem}.container{padding-inline:var(--space-sm)}.hero__content{max-width:90vw}.hero__logo{max-width:60vw}.scrolling-text{font-size:clamp(4.5rem,11vw,6rem);padding:0 var(--space-sm)}.separator{font-size:clamp(1.5rem,6vw,2.5rem)}.section-content{padding:var(--space-xl) var(--space-sm)}.logos-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}#offre{padding:var(--space-xl) var(--space-sm)}}@media (min-width:769px){.mobile-menu{display:none!important}}@media (hover:hover) and (pointer:fine){.cards-scroll:not(.is-dragging) .card:hover{box-shadow:0 20px 40px rgba(0,0,0,.08);transform:scale(1.035) rotateX(2deg) rotateY(-2deg);z-index:2}}.horiz-scroll-indicator{position:absolute;bottom:var(--space-md);left:50%;transform:translateX(-50%);display:flex;gap:var(--space-xs);z-index:10;}.horiz-scroll-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);transition:background var(--transition-base),transform var(--transition-base);cursor:pointer;}.horiz-scroll-dot.active{background:var(--color-highlight);transform:scale(1.3);}.horiz-swipe-hint{display:none;position:absolute;bottom:var(--space-lg);right:var(--space-md);color:rgba(255,255,255,.6);font-size:var(--size-xs);font-family:var(--font-primary);letter-spacing:.05em;align-items:center;gap:var(--space-xxs);animation:swipeHint 2s ease-in-out infinite;}@media (max-width:768px){.horiz-swipe-hint{display:flex}}@keyframes swipeHint{0%,100%{transform:translateX(0);opacity:.6}50%{transform:translateX(6px);opacity:1}}.site-footer{background:var(--gradient-primary);color:var(--color-white);box-shadow:var(--shadow-hard);padding:var(--space-xl) var(--space-lg) var(--space-md);}.footer-inner{max-width:var(--container-max);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);}.footer-left{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs);}.footer-logo-link{display:inline-block;margin-bottom:var(--space-xs);}.footer-logo-img{width:180px;height:auto;filter:brightness(1);transition:filter var(--transition-base);}.footer-logo-link:hover .footer-logo-img{filter:brightness(1.15) drop-shadow(0 0 8px rgba(201,160,74,.5));}.footer-info{font-size:var(--size-sm);color:rgba(255,255,255,.75);line-height:var(--golden-ratio);letter-spacing:.02em;}.footer-right{display:flex;align-items:center;gap:var(--space-md);}.footer-social-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,.25);color:var(--color-white);transition:all var(--transition-base);}.footer-social-link:hover{border-color:var(--color-highlight);color:var(--color-highlight);box-shadow:var(--shadow-gold);transform:translateY(-3px);}.footer-bottom{max-width:var(--container-max);margin-inline:auto;margin-top:var(--space-lg);padding-top:var(--space-sm);border-top:1px solid rgba(255,255,255,.1);text-align:center;}.footer-bottom p{font-size:var(--size-xs);color:rgba(255,255,255,.4);letter-spacing:.05em;}.footer-legal-link{color:rgba(255,255,255,.4);text-decoration:none;transition:color var(--transition-base);}.footer-legal-link:hover{color:var(--color-highlight);}@media (max-width:768px){.footer-inner{flex-direction:column;align-items:center;text-align:center;gap:var(--space-lg)}.footer-left{align-items:center}.footer-logo-img{width:clamp(120px,40vw,180px)}.footer-right{gap:var(--space-lg)}.footer-social-link{width:52px;height:52px}}@media (max-width:480px){.site-footer{padding:var(--space-lg) var(--space-sm) var(--space-sm)}.footer-info{font-size:var(--size-xs)}}.h2-line-mask{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em;}.h2-line-inner{display:inline-block;will-change:transform,opacity;}@media (pointer:fine){html,body,a,button,[role="button"],input,label,select,textarea{cursor:none!important}}.cursor-ring,.cursor-dot,.cursor-label{position:fixed;top:0;left:0;pointer-events:none;z-index:99999;display:none;}@media (pointer:fine){.cursor-ring,.cursor-dot,.cursor-label{display:block}}.cursor-ring{width:36px;height:36px;border:1.5px solid rgba(255,255,255,.85);border-radius:50%;transform:translate(-50%,-50%);transition:width .35s cubic-bezier(.25,1,.5,1),height .35s cubic-bezier(.25,1,.5,1),border-color .35s ease,background-color .35s ease,opacity .2s ease;will-change:transform;mix-blend-mode:difference;}.cursor-ring.is-hovering{width:22px;height:22px;border-color:rgba(255,255,255,1);}.cursor-ring.is-dragging{width:72px;height:72px;background-color:var(--color-highlight,#C9A04A);border-color:var(--color-highlight,#C9A04A);opacity:.9;}.cursor-dot{width:6px;height:6px;background-color:var(--color-highlight,#C9A04A);border-radius:50%;transform:translate(-50%,-50%);will-change:transform;transition:opacity .2s ease,transform .2s ease;}.cursor-dot.is-dragging{opacity:0;transform:translate(-50%,-50%) scale(0);}.cursor-label{font-family:'Outfit',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.15em;color:var(--color-dark,#0d1b2a);transform:translate(-50%,-50%);opacity:0;transition:opacity .25s ease;white-space:nowrap;text-transform:uppercase;}.cursor-label.is-dragging{opacity:1;}.lottie-container{margin-bottom:var(--space-lg);text-align:center;}.lottie-container lottie-player{margin:0 auto;}@media (max-width:768px){.lottie-container lottie-player{width:200px!important;height:200px!important}}@media (max-width:480px){.lottie-container lottie-player{width:150px!important;height:150px!important}}.legal-page{min-height:100vh;background-color:var(--color-light);padding-top:120px;padding-bottom:var(--space-xxl);}.legal-container{max-width:780px;margin:0 auto;padding-inline:var(--space-lg);}.legal-back{display:inline-flex;align-items:center;gap:.5rem;font-family:'Outfit',sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-highlight);text-decoration:none;margin-bottom:var(--space-xl);transition:gap .2s ease,color .2s ease;}.legal-back:hover{gap:.9rem;color:var(--color-primary);}.legal-header{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:2px solid var(--color-highlight);}.legal-tag{display:block;font-family:'Outfit',sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-highlight);margin-bottom:var(--space-sm);}.legal-title{font-family:'Outfit',sans-serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;color:var(--color-dark);line-height:1.1;letter-spacing:-.03em;margin:0 0 var(--space-sm);}.legal-date{font-family:'Outfit',sans-serif;font-size:.8rem;color:#888;}.legal-section{margin-bottom:var(--space-xl);}.legal-section h2{font-family:'Outfit',sans-serif;font-size:1rem;font-weight:700;color:var(--color-dark);letter-spacing:-.01em;margin:0 0 var(--space-md);padding-left:var(--space-sm);border-left:3px solid var(--color-highlight);overflow:visible!important;}.legal-section h2 .h2-line-mask,.legal-section h2 .h2-line-inner{display:inline!important;overflow:visible!important;opacity:1!important;transform:none!important;}.legal-section p,.legal-section li{font-family:'Outfit',sans-serif;font-size:.95rem;line-height:1.8;color:#444;margin-bottom:var(--space-sm);}.legal-section ul,.legal-section ol{padding-left:1.5rem;margin-bottom:var(--space-md);}.legal-section li{margin-bottom:.35rem;}.legal-section a{color:var(--color-highlight);text-decoration:underline;text-underline-offset:3px;transition:color .2s ease;}.legal-section a:hover{color:var(--color-primary);}.legal-highlight{background:rgba(201,160,74,.1);border-left:3px solid var(--color-highlight);border-radius:0 6px 6px 0;padding:var(--space-md) var(--space-lg);margin:var(--space-lg) 0;}.legal-highlight p{margin:0;font-weight:500;color:var(--color-dark)!important;}.legal-footer-note{margin-top:var(--space-xxl);padding-top:var(--space-lg);border-top:1px solid #ddd;text-align:center;}.legal-footer-note p{font-family:'Outfit',sans-serif;font-size:.8rem;color:#999;}.legal-footer-note a{color:var(--color-highlight);}@media (max-width:768px){.legal-page{padding-top:90px}.legal-container{padding-inline:var(--space-md)}}.faq-section{background:var(--color-light);padding:var(--space-xxl) var(--space-lg);position:relative;}.faq-section::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:transparent;}.faq-container{max-width:860px;margin-inline:auto;}.faq-header{text-align:center;margin-bottom:var(--space-xxl);}.faq-tag{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-highlight);margin-bottom:var(--space-sm);}.faq-intro{font-size:clamp(.95rem,1.2vw,1.1rem);color:var(--color-gray-400);max-width:560px;margin-inline:auto;line-height:1.7;}.faq-list{display:flex;flex-direction:column;}.faq-item{border-bottom:1px solid rgba(44,62,80,.12);}.faq-item:first-child{border-top:1px solid rgba(44,62,80,.12);}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg) 0;background:none;border:none;cursor:pointer;text-align:left;font-size:clamp(.95rem,1.3vw,1.05rem);font-weight:600;color:var(--color-dark);line-height:1.4;transition:color var(--transition-base);}.faq-question:hover{color:var(--color-primary);}.faq-question[aria-expanded="true"]{color:var(--color-primary);}.faq-icon{flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--color-gray-200);position:relative;transition:border-color var(--transition-base),background-color var(--transition-base);}.faq-icon::before,.faq-icon::after{content:'';position:absolute;background:var(--color-dark);border-radius:2px;transition:background var(--transition-base),transform .35s cubic-bezier(.25,1,.5,1),opacity .25s ease;}.faq-icon::before{width:12px;height:1.5px;top:50%;left:50%;transform:translate(-50%,-50%);}.faq-icon::after{width:1.5px;height:12px;top:50%;left:50%;transform:translate(-50%,-50%);}.faq-question[aria-expanded="true"] .faq-icon{border-color:#C9A04A;background-color:#C9A04A;}.faq-question[aria-expanded="true"] .faq-icon::before,.faq-question[aria-expanded="true"] .faq-icon::after{background:var(--color-dark);}.faq-question[aria-expanded="true"] .faq-icon::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0;}.faq-answer{overflow:hidden;max-height:0;transition:max-height .4s cubic-bezier(.25,1,.5,1);}.faq-answer:not([hidden]){max-height:600px;}.faq-answer[hidden]{display:block!important;visibility:visible!important;}.faq-answer-inner{padding-bottom:var(--space-lg);padding-right:var(--space-xl);}.faq-answer-inner p{font-size:clamp(.9rem,1.1vw,1rem);line-height:1.8;color:#555;}@media (max-width:768px){.faq-section{padding:var(--space-xl) var(--space-md)}.faq-answer-inner{padding-right:0}.faq-question{font-size:.95rem}}.skip-link{position:absolute;top:-100px;left:var(--space-sm);background:var(--color-highlight);color:var(--color-dark);padding:var(--space-xs) var(--space-md);border-radius:0 0 var(--border-radius) var(--border-radius);font-weight:600;font-size:var(--size-sm);z-index:99999;text-decoration:none;transition:top .2s ease;}.skip-link:focus{top:0;}@media (min-width:769px) and (max-width:1024px){.hero__content{max-width:min(55vw,600px);}.hero__logo{max-width:min(45vw,480px);}}.cards-nav{display:flex;justify-content:flex-end;gap:var(--space-xs);padding-right:24px;margin-top:var(--space-md);}.cards-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--color-dark);color:var(--color-white);border:1.5px solid rgba(255,255,255,.15);cursor:pointer;transition:all var(--transition-base);}.cards-nav-btn:hover{background:var(--color-highlight);color:var(--color-dark);border-color:var(--color-highlight);transform:translateY(-2px);box-shadow:var(--shadow-gold);}@media (pointer:fine){.cards-nav-btn{cursor:none!important;}}@media (max-width:480px){.cards-nav{padding-right:12px;}.cards-nav-btn{width:38px;height:38px;}}@media (prefers-reduced-motion:reduce){.cursor-dot{display:none!important;}.cursor-ring{transition:none;}}
.video-trigger{display:block;position:relative;width:100%;max-width:480px;border:none;padding:0;background:none;border-radius:var(--border-radius);overflow:hidden;margin-bottom:var(--space-lg);box-shadow:0 8px 32px rgba(0,0,0,.45);transition:transform var(--transition-base),box-shadow var(--transition-base);}.video-trigger:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.55);}@media (pointer:fine){.video-trigger{cursor:none!important;}}.video-thumb{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--border-radius);filter:brightness(.75);transition:filter var(--transition-base);}.video-trigger:hover .video-thumb{filter:brightness(.6);}.video-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);display:flex;align-items:center;justify-content:center;transition:transform var(--transition-base);filter:drop-shadow(0 4px 12px rgba(0,0,0,.4));}.video-trigger:hover .video-play-btn{transform:translate(-50%,-60%) scale(1.1);}.video-label{position:absolute;bottom:var(--space-sm);left:50%;transform:translateX(-50%);font-family:var(--font-primary);font-size:var(--size-xs);font-weight:600;color:rgba(255,255,255,.9);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:rgba(0,0,0,.35);padding:4px 12px;border-radius:20px;backdrop-filter:blur(4px);}.video-modal{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:var(--space-md);}.video-modal[hidden]{display:none!important;}.video-modal-backdrop{position:absolute;inset:0;background:rgba(10,18,26,.92);backdrop-filter:blur(6px);cursor:pointer;}.video-modal-inner{position:relative;z-index:1;width:100%;max-width:900px;}.video-modal-close{position:absolute;top:-44px;right:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1.5px solid rgba(255,255,255,.4);border-radius:50%;background:none;color:var(--color-white);cursor:pointer;transition:border-color var(--transition-base),background var(--transition-base);}.video-modal-close:hover{border-color:var(--color-highlight);background:var(--color-highlight);color:var(--color-dark);}@media (pointer:fine){.video-modal-close{cursor:none!important;}}.video-modal-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--border-radius);overflow:hidden;background:#000;box-shadow:0 24px 80px rgba(0,0,0,.7);}.video-modal-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}@media (max-width:768px){.video-trigger{max-width:100%;}.video-modal-close{top:-40px;}}
.video-modal-inner{max-width:95vw;width:95vw;}.video-modal-frame{max-height:85vh;}.nav-link{font-size:calc(var(--size-sm) + 2px);}.btn--rounded{background:#ffffff;color:#005277;padding:var(--space-sm) var(--space-lg);border-radius:50px;font-weight:300;box-shadow:0 0 20px rgb(0 0 0 / 20%);border:2px solid #90b9c2;font-size:1.1rem;height:auto;}.btn--rounded:hover{background:#005277;color:#ffffff;border-color:#005277;box-shadow:0 6px 24px rgb(0 0 0 / 30%);transform:translateY(-2px);}
/* ─── Design tokens (appended to base :root) ─── */
:root{--f-mono:'JetBrains Mono',monospace;--f-serif:'Instrument Serif',Georgia,serif;--ink-900:#040d19;--ink-800:#0a1628;--ink-700:#111F2D;--ink-600:#1A2A3B;--ink-2:#111F2D;--ink-3:#1A2A3B;--gold-400:#d4af5e;--gold-500:#C9A04A;--gold-600:#A07830;--paper-100:#F8F4EE;--paper-200:#F4EEE3;--paper-300:#EDE6D9;--paper:#F4EEE3;--paper-soft:#EDE6D9;--paper-mute:#E4DCCC;--paper-faint:#F8F4EE;--line:rgba(255,255,255,.08);--line-strong:rgba(255,255,255,.18);--ease-premium:cubic-bezier(.22,.61,.36,1);--ease-p:cubic-bezier(.22,.61,.36,1);--dur-fast:200ms;--dur-base:400ms;--dur-slow:600ms;}

/* ─── Typography utilities ─── */
.it{font-family:var(--f-serif);font-style:italic;font-weight:400;}
.font-merriweather{font-family:var(--f-serif);}
.thin{font-weight:300;}
.body{font-size:clamp(.95rem,1.2vw,1.1rem);line-height:1.8;}
.eyebrow{display:flex;align-items:center;gap:.75rem;font-family:var(--f-mono);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--color-highlight);margin-bottom:1.2rem;}
.eyebrow::before{content:'';display:inline-block;width:28px;height:1px;background:var(--color-highlight);flex-shrink:0;}
.letter-highlight{color:var(--color-highlight);}
.yellow-underline{background:transparent;display:inline;padding:0;}

/* ─── Grain overlay ─── */
body::after{content:'';position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.25;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");}

/* ─── Global overflow (required for position:sticky support) ─── */
html{overflow-x:clip;}
body{overflow-x:clip;}

/* ─── GSAP mask helpers ─── */
.h2-line-mask:has(.it){padding-bottom:.15em;}
.h2-line-inner{padding-right:0;padding-left:0;}

/* ─── Header ─── */
.header{background:rgba(0,0,0,.55);}
.header--glass{background:rgba(11,22,34,.72);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--line);}

/* Nav links */
.nav-link{position:relative;}
.nav-link::after{display:none;}
.nav-link::before{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:1px;background:var(--color-highlight);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-p);}
.nav-link:hover::before{transform:scaleX(1);}
.nav-link:hover{color:var(--color-highlight);}
.nav-links li{list-style:disc;list-style-position:inside;display:flex;align-items:center;justify-content:center;gap:.35rem;}
.nav-links li::before{content:none;}
.nav-links li::marker{color:#fff;}

/* Nav CTA pill */
.nav-cta{display:inline-flex;align-items:center;padding:.45rem 1.1rem;border:1px solid rgba(255,255,255,.35);border-radius:99px;font-size:.82rem;letter-spacing:.06em;color:#fff;white-space:nowrap;text-decoration:none;margin-left:var(--space-lg);position:relative;overflow:hidden;z-index:0;transition:color .25s,border-color .25s;}
.nav-cta::before{content:'';position:absolute;inset:0;background:var(--color-highlight);transform:translateY(105%);transition:transform .4s var(--ease-p);z-index:-1;border-radius:inherit;}
.nav-cta:hover::before{transform:translateY(0);}
.nav-cta:hover{color:#fff;border-color:var(--color-highlight);}
@media(max-width:768px){.nav-cta{display:none;}}

/* Hamburger */
.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;height:auto;min-height:36px;}
.menu-toggle span{display:block;width:22px;height:2px;background:rgba(255,255,255,.9);border-radius:1px;transition:transform .35s ease,opacity .25s ease;}
.menu-toggle.active span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.menu-toggle.active span:nth-child(2){opacity:0;}
.menu-toggle.active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
@media(max-width:768px){.menu-toggle{display:flex;}}

/* ─── Hero ─── */
.hero__title{font-size:clamp(1.4rem,3vw + .5rem,3rem);font-weight:400;line-height:1.05;letter-spacing:-.01em;}
.hero__title .it{color:var(--color-highlight);}
.hero__meta{display:flex;flex-wrap:wrap;gap:1.5rem;font-family:var(--f-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:2rem;}
.hero__meta .dot{display:inline-block;width:6px;height:6px;background:var(--color-highlight);border-radius:50%;margin-right:.5rem;vertical-align:middle;}
.hero__overlay{padding-top:0;}
.hero__overlay .btn-premium{pointer-events:auto;}
@media(min-width:1025px){.hero__content{max-width:min(52vw,780px);}}
@media(min-width:769px) and (max-width:1024px){.hero__content{max-width:min(55vw,600px);}.hero__logo{max-width:min(45vw,480px);}}
@media(min-width:481px) and (max-width:781px){.hero__container{padding-inline:72px;max-width:100%;}.hero__content{max-width:min(70vw,600px);}}
@media(max-width:480px){.hero__content{max-width:90vw;}}

/* ─── Intro words animation ─── */
.word{font-size:clamp(2.8rem,9vw + .5rem,12rem);}
.word-inner{color:var(--color-highlight);font-family:var(--f-serif);font-style:italic;font-weight:400;padding-bottom:.2em;padding-right:.15em;}
.word-inner .char{color:inherit;font-family:inherit;font-style:inherit;}

/* ─── Btn premium ─── */
.btn-premium{position:relative;display:inline-flex;align-items:center;gap:14px;padding:16px 28px;font-size:14px;font-weight:500;letter-spacing:.02em;border-radius:100px;border:1px solid var(--color-highlight);background:transparent;color:var(--color-white);cursor:pointer;transition:color .25s,border-color .25s;overflow:hidden;text-decoration:none;}
.btn-premium::before{content:'';position:absolute;inset:0;background:var(--color-highlight);transform:translateY(101%);transition:transform .45s var(--ease-p);z-index:0;}
.btn-premium > *{position:relative;z-index:1;}
.btn-premium:hover{color:var(--color-dark);border-color:var(--color-highlight);}.choose-me .btn-premium:hover{color:var(--color-white);}
.btn-premium:hover::before{transform:translateY(0);}
.btn-premium .arrow{width:22px;height:22px;border-radius:50%;border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;transition:transform .25s var(--ease-p);flex-shrink:0;}
.btn-premium:hover .arrow{transform:rotate(-45deg);}
.btn-premium .arrow svg{width:10px;height:10px;}
#horiz-section-3 .btn-premium--dark{border-color:var(--color-primary);color:var(--color-primary);margin-top:1.5rem;}
#horiz-section-3 .btn-premium--dark::before{background:var(--color-primary);}
#horiz-section-3 .btn-premium--dark:hover{color:var(--color-white);}

/* ─── Cards (activation ciblée) ─── */
.cards-scroll-section{background:var(--color-light);}
.cards-scroll-section .btn-premium{color:var(--color-primary);border-color:var(--color-primary);flex-shrink:0;}
.cards-scroll-section .btn-premium::before{background:var(--color-primary);}
.cards-scroll-section .btn-premium:hover{color:var(--color-white)!important;border-color:var(--color-primary);}
.cards-scroll-section h2{color:var(--color-dark);}
.cards-header{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;margin-bottom:var(--space-lg);}
.cards-header > p{padding-bottom:24px;}
.cta-aside{display:flex;align-items:center;gap:1.5rem;margin-top:1.5rem;flex-wrap:wrap;}
.cta-note{font-size:.75rem;color:rgba(0,0,0,.38);max-width:28ch;line-height:1.6;font-family:var(--f-mono);letter-spacing:.04em;margin:0;}
.eyebrow--center{justify-content:center;}
.emphase.thin{margin-top:1.5rem;margin-bottom:2.5rem;}
.card-label{font-size:15px;font-weight:400;letter-spacing:-.01em;border-left:1px solid var(--color-highlight);padding-left:12px;}
.card.card-scroll{border:none;box-shadow:inset 0 0 0 0.5px rgba(255,255,255,.12);}
.card-wrapper:hover .card.card-scroll{box-shadow:inset 0 0 0 0.5px var(--color-highlight),0 12px 32px rgba(0,0,0,.18);transform:translateY(-4px);}
@media(max-width:768px){.cards-header{grid-template-columns:1fr;margin-bottom:0;}}

/* ─── #autre-regard ─── */
#autre-regard.reveal{height:auto;min-height:100vh;overflow:visible;}
#autre-regard .reveal-inner{height:auto;align-items:flex-start;padding-block:0;}
#autre-regard .reveal-left{flex-direction:column;align-items:flex-start;color:var(--color-white);position:sticky;top:120px;align-self:flex-start;}
#autre-regard .reveal-right{color:var(--color-white);}
#autre-regard h2{color:var(--color-white);font-size:clamp(1.6rem,6vw,4rem);font-weight:800;}
#autre-regard .body{color:rgba(255,255,255,.75);}
#autre-regard .reveal-text .it{color:var(--color-highlight);}
#autre-regard .mid-title{list-style:none;padding:0;margin:2.5rem 0 0;border-top:1px solid var(--line);}
#autre-regard .mid-title li{display:flex;align-items:center;justify-content:flex-start;gap:1rem;padding:20px 0;border-bottom:1px solid var(--line);font-size:clamp(18px,2.2vw,28px);font-weight:400;letter-spacing:-.02em;color:var(--color-white);transition:color .25s,padding .25s;cursor:default;}
#autre-regard .mid-title li::before{content:attr(data-num);font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--color-highlight);flex-shrink:0;margin-right:8px;transition:color .25s;}
#autre-regard .mid-title li::after{content:'→';font-size:20px;color:var(--color-highlight);flex-shrink:0;margin-left:auto;opacity:0;transition:transform .25s,color .25s,opacity .25s;}
#autre-regard .mid-title li:hover{color:var(--color-highlight);padding-left:12px;}
#autre-regard .mid-title li:hover::before{color:var(--color-highlight);}
#autre-regard .mid-title li:hover::after{color:var(--color-highlight);transform:translateX(6px);opacity:1;}
@media(max-width:1200px){#autre-regard .reveal-left{position:static;top:auto;align-self:auto;text-align:left;}}
@media(max-width:768px){#autre-regard .reveal-left{position:static;}}

/* ─── Choose-me / atouts ─── */
.choose-me{background:#0B1622;color:var(--color-white);}
.choose-me h2{color:var(--color-white);}
.choose-me .btn-premium{margin-top:var(--space-sm);align-self:flex-start;}
.atout-body a{color:var(--color-highlight);border-bottom:1px solid var(--color-highlight);}
.choose-me .btn-premium--dark{margin-top:1.5rem;}
#col-0-left{background:#172435;}
.choose-me h3{text-transform:none;}
.choose-me .emphase{color:rgba(255,255,255,.6);}
.atouts-grid{margin-top:clamp(48px,6vw,96px);display:grid;grid-template-columns:repeat(12,1fr);gap:32px;align-items:stretch;}
.atout-block{padding:36px 24px;border-left:1px solid var(--line);background:transparent;box-shadow:none;border-radius:0;display:flex;flex-direction:column;gap:12px;transition:border-color .3s;}
.atout-block:hover{border-left-color:var(--color-highlight);}
.atout-num{font-family:var(--f-mono);font-size:11px;letter-spacing:.22em;color:var(--color-highlight);display:block;}
.atout-title{display:block;font-size:clamp(20px,2.2vw,28px);font-weight:500;color:var(--color-white);line-height:1.2;margin:0;}
.atout-body{display:block;color:rgba(255,255,255,.6);font-weight:300;font-size:15px;line-height:1.65;max-width:42ch;margin:0;}
.atout-expertise,.atout-peda{grid-column:span 6;}
.atout-photo,.atout-chef{grid-column:span 6;}
.atout-photo{position:relative;overflow:hidden;min-height:320px;border-radius:4px;display:flex;align-items:stretch;}
.atout-photo-pic{position:absolute;inset:0;display:block;width:100%;height:100%;}
.atout-photo-portrait{width:100%;height:120%;object-fit:cover;object-position:center 15%;display:block;border-radius:4px;will-change:transform;}
.atout-photo-placeholder{width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,#111F2D,#1A2A3B);border-radius:4px;position:relative;}
.atout-photo-placeholder::after{content:'PORTRAIT · À VENIR';position:absolute;bottom:16px;left:16px;font-family:var(--f-mono);font-size:10px;letter-spacing:.18em;color:rgba(255,255,255,.3);}
@media(max-width:900px){
  .atouts-grid{grid-template-columns:1fr;gap:4px;}
  .atout-expertise,.atout-photo,.atout-peda,.atout-chef{grid-column:span 1;}
  .atout-photo{min-height:56vw;aspect-ratio:4/5;}
  .atout-photo-placeholder{aspect-ratio:16/10;}
}

/* ─── Horizontal scroll slides ─── */
.horiz-col-left,.horiz-col-right{position:relative;overflow:hidden;}
.horizontal-scroll-section .container-min-slides{position:relative;z-index:3;}
.horizontal-scroll-section .paragraph-group{position:relative;z-index:3;}
.horizontal-scroll-section .container-min-slides h3{font-size:clamp(32px,4.5vw,64px);font-weight:500;letter-spacing:-.035em;line-height:1;margin:0 0 24px;text-transform:none;color:var(--color-white);}
.horizontal-scroll-section .container-min-slides h3 .it{color:var(--color-highlight);font-family:var(--f-serif);font-style:italic;font-weight:400;}
.horizontal-scroll-section .container-min-slides .eyebrow{display:flex;margin-bottom:16px;color:var(--color-highlight);}
.slide-svg-deco{position:absolute;right:calc(-9% + 14px);top:50%;transform:translateY(-50%);height:56vh;pointer-events:none;z-index:1;}
.slide-svg-deco svg{height:100%;width:auto;display:block;}
.slide-svg-deco path,.slide-svg-deco text{fill:var(--color-highlight);}
#col-0-left .container-min{background:transparent;box-shadow:none;}
#col-0-left h2{color:var(--color-white);}
#col-0-left h3{color:rgba(255,255,255,.75);line-height:1;}
@media(max-width:768px){.slide-svg-deco{right:calc(-7% + 14px);top:80%;height:25vh;}}

/* ─── h3 text-transform reset (base h3 default is lowercase) ─── */
#autre-regard h3,.choose-me h3,#horiz-section-3 h3,.testimonials-section h3,.section-contact h3,.faq-section h3{text-transform:none;}

/* ─── #offre ─── */
#offre{background-color:#111F2D;background-image:repeating-linear-gradient(45deg,rgba(97,97,97,.08) 0,rgba(97,97,97,.08) 2px,transparent 2px,transparent 4px),linear-gradient(135deg,#111F2D 0%,#1A2A3B 100%);}
#offre h2{color:var(--color-white);font-size:clamp(2.5rem,5.5vw,5.375rem);font-weight:500;letter-spacing:-.04em;line-height:1;margin-top:.4rem;margin-bottom:0;}
#offre .container .eyebrow{margin-bottom:.4rem;}
#offre .container{margin-bottom:6.375rem;}
.offre-details{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);max-width:1920px;margin-inline:auto;text-align:left;}
.offre-block{display:block;text-align:left;padding:4.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);}
.offre-num{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-highlight);margin:0 0 24px;}
.mono-ico{font-family:var(--f-serif);font-style:italic;font-size:1.4rem;color:var(--color-highlight);}
.offre-block h3{font-size:clamp(28px,3vw,44px);font-weight:200;letter-spacing:-.025em;text-transform:none;text-align:left;margin:0;padding:0;color:var(--color-white);}
.cadre-infos{border-left:1px solid var(--color-highlight);padding-left:12px;font-size:.88rem;color:var(--color-highlight);margin:12px 0 20px;background:none;backdrop-filter:none;border-radius:0;}
.offre-block .cadre-infos{font-style:italic;}
.offre-block p{color:rgba(255,255,255,.6);font-weight:300;font-size:15px;line-height:1.65;margin:0;text-align:left;}
.offre-block p+p{margin-top:10px;}
.offre-block .cadre-infos{color:var(--color-highlight);}
.offre-label{color:var(--color-white);font-weight:500;font-style:normal;}
@media(max-width:768px){.offre-details{grid-template-columns:1fr;}#offre .container{margin-bottom:2.75rem;}}

/* ─── #horiz-section-3 ─── */
#horiz-section-3 h2{color:var(--color-primary);}
#horiz-section-3 h2 .it{color:var(--color-highlight);}

/* ─── Scrolling banner separator ─── */
.separator{font-size:72px;line-height:1;vertical-align:middle;}

/* ─── Testimonials ─── */
.testimonials-section{padding-block:var(--space-xl);background:#0B1622;color:var(--color-white);}
.testimonials-section h2{color:var(--color-white);}
.testimonials-section h2 .it{color:var(--color-highlight);}
.testi-viewport{overflow:hidden;position:relative;padding-inline:var(--space-lg);margin-top:48px;}
.testi-scroll{display:flex;gap:var(--space-md);cursor:grab;overflow-x:auto;scroll-behavior:auto;scrollbar-width:none;-ms-overflow-style:none;max-width:1920px;margin-inline:auto;}
.testi-scroll::-webkit-scrollbar{display:none;}
.testi-scroll.is-dragging{cursor:grabbing;user-select:none;}
.testi-card{flex:0 0 calc(50% - var(--space-md));background:linear-gradient(180deg,#1A2A3B,#111F2D);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:var(--space-lg);display:flex;flex-direction:column;justify-content:space-between;scroll-snap-align:start;}
.testi-card:hover{border-color:var(--color-highlight);}
.testi-card .quote{display:block;font-family:var(--f-serif);font-style:italic;font-size:48px;line-height:1;color:var(--color-highlight);margin-bottom:1rem;opacity:.7;}
.testi-text{font-size:clamp(.95rem,1.2vw,1.1rem);line-height:1.7;color:var(--paper);margin-bottom:var(--space-md);font-style:italic;font-weight:300;}
.testi-meta{display:flex;flex-direction:column;gap:.25rem;border-top:1px solid rgba(255,255,255,.08);padding-top:24px;margin-top:1.5rem;}
.testi-name{font-weight:500;color:var(--paper);font-size:1rem;}
.testi-role{font-size:10px;color:var(--paper-mute);font-family:var(--f-mono);letter-spacing:.22em;text-transform:uppercase;}
.testi-nav{display:flex;justify-content:flex-end;gap:var(--space-xs);padding-right:24px;margin-top:var(--space-md);}
.testi-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--color-dark);color:var(--color-white);border:1.5px solid rgba(255,255,255,.15);cursor:pointer;transition:all var(--transition-base);}
.testi-nav-btn:hover{background:var(--color-highlight);color:var(--color-dark);border-color:var(--color-highlight);transform:translateY(-2px);box-shadow:var(--shadow-gold);}
.testimonials-section .testi-header{display:grid;grid-template-columns:1.15fr 0.85fr;gap:2rem;align-items:end;margin-bottom:3rem;}
.testimonials-section .testi-header > p{padding-bottom:24px;}
@media(pointer:fine){.testi-nav-btn{cursor:none!important;}}
@media(max-width:768px){
  .testi-card{flex:0 0 76%;border-radius:8px;}.testi-viewport{padding-inline:0;}.testi-scroll{gap:12px;scroll-snap-type:x mandatory;}
  .testi-nav{padding-right:12px;}
  .testi-nav-btn{width:38px;height:38px;}
  .testimonials-section .testi-header{grid-template-columns:1fr;}
}

/* ─── References ─── */
.references-section{padding:var(--space-xl) 0;background:#fff;color:var(--color-primary);}
.references-section h2{color:var(--color-primary);}
.references-section h2 .h2-line-inner{color:var(--color-primary);}
.references-section h2 .it{color:var(--color-highlight);}
.references-section .font-system{color:var(--color-primary);opacity:.7;}
.refs-header{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;margin-bottom:2.5rem;}
.references-section .refs-header{border-bottom:1px solid rgba(44,62,80,.12);padding-bottom:2.5rem;margin-bottom:2.5rem;}
.references-section .eyebrow{color:var(--color-highlight);}
.logos-grid-4{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(44,62,80,.12);border-left:1px solid rgba(44,62,80,.12);gap:0;}
.logo-item{border-right:1px solid rgba(44,62,80,.12);border-bottom:1px solid rgba(44,62,80,.12);display:flex;align-items:center;justify-content:center;padding:2rem;min-height:100px;}
@media(max-width:768px){
  .refs-header{grid-template-columns:1fr;}
  .logos-grid-4{grid-template-columns:repeat(2,1fr);}.logo-item{padding:0.5rem;}.logo-item img{max-width:96%;max-height:96%;}
}

/* ─── Contact ─── */
.section-contact{position:relative;padding:clamp(120px,16vw,240px) 0;background:#111F2D;border-top:1px solid var(--line);overflow:hidden;}
.section-contact::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 70% 60% at 50% 50%,rgba(201,160,74,.22) 0%,transparent 70%);}
.section-contact .container{position:relative;z-index:1;}
.section-contact h2{font-size:clamp(32px,5.5vw,88px);font-weight:500;letter-spacing:-.04em;line-height:.95;margin:0 0 32px;max-width:18ch;color:var(--color-white);}
.section-contact h2 .it{color:var(--color-highlight);}
.section-contact .body{margin-bottom:40px;font-size:clamp(15px,1.2vw,18px);color:rgba(255,255,255,.65);line-height:1.7;}
.section-contact .eyebrow{margin-bottom:1.2rem;}

/* ─── FAQ ─── */
.faq-section{padding:clamp(60px,8vw,120px) 0;background:#0B1622;border-top:1px solid var(--line);}
.faq-container{max-width:var(--container-max);margin:0 auto;padding-inline:var(--space-md);}
.faq-header{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;padding-bottom:64px;text-align:left;}
.faq-header > *{text-align:left;}
.faq-tag{font-family:var(--f-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--color-highlight);display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;background:none;padding:0;font-weight:500;}
.faq-tag::before{content:'';width:28px;height:1px;background:var(--color-highlight);flex-shrink:0;}
.faq-header h2{font-size:clamp(40px,6vw,88px);font-weight:500;letter-spacing:-.04em;line-height:1;margin:0;max-width:14ch;color:var(--color-white);overflow:visible;}
.faq-header h2 .it{font-family:var(--f-serif);font-style:italic;font-weight:400;}
.faq-intro{color:rgba(255,255,255,.5);max-width:36ch;margin:0;font-size:15px;line-height:1.65;padding-bottom:24px;}
.faq-list{border-top:1px solid var(--line);}
.faq-item{border-bottom:1px solid var(--line);}
.faq-question{padding:24px 0;font-size:clamp(15px,1.4vw,20px);font-weight:400;letter-spacing:-.01em;color:var(--color-white);transition:color .2s;}
.faq-question:hover{color:var(--color-highlight);}
.faq-icon{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:none;}
.faq-icon::before,.faq-icon::after{background:var(--color-white);}
.faq-icon::before{width:10px;height:1px;}
.faq-icon::after{width:1px;height:10px;}
.faq-question[aria-expanded="true"] .faq-icon{background:var(--color-highlight);border-color:var(--color-highlight);}
.faq-question[aria-expanded="true"] .faq-icon::before,.faq-question[aria-expanded="true"] .faq-icon::after{background:#0B1622;}
.faq-answer-inner p{color:rgba(255,255,255,.6);font-size:16px;line-height:1.7;}
@media(max-width:768px){
  .faq-section{padding:var(--space-xl) var(--space-md);}
  .faq-header{grid-template-columns:1fr;gap:24px;padding-bottom:2.75rem;margin-bottom:0;}
  .faq-answer-inner{padding-right:0;}
  .faq-question{font-size:.95rem;}
}

/* ─── Footer ─── */
.footer-info{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.45);line-height:1.3;margin-bottom:.15rem;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;text-align:left;}
