.hero{position:relative;overflow:hidden;padding:36px 5% 22px;min-height:730px;isolation:isolate}
.hero-top{display:flex;justify-content:space-between;align-items:center}
.hero-top .eyebrow{margin:0;display:flex;align-items:center;gap:12px}
.asterisk{font-size:24px;color:#b0ef61}
.location{font-size:10px;letter-spacing:1.8px;color:#9a9d96}
.hero-body{position:relative;z-index:1;padding:57px 0 58px}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;max-width:1080px}
.hero-bottom p{color:#b9bdb4;line-height:1.7;font-size:17px;margin:0}
.hero-actions{display:flex;flex-direction:column;align-items:center;gap:19px}
.hero-foot{border-top:1px solid #ffffff20;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.6px;color:#a5a89f}
.hero-tags i{font-style:normal;color:#666;padding:0 15px}
.aurora{position:absolute;width:900px;height:900px;right:-320px;top:-100px;z-index:-1;opacity:.85;background:radial-gradient(ellipse at 55% 48%,#8260b928,transparent 55%);transform:translate(var(--mx,0px),var(--my,0px));transition:transform 1s ease-out;pointer-events:none}
.orbit{position:absolute;width:650px;height:650px;border-radius:50%;border:1px solid #c8ff9d66;transform:rotate(-32deg) scaleX(.59);box-shadow:inset 0 0 28px #bbfe7833,0 0 24px #9e8cd133}
.orbit-one{left:50px;top:85px;animation:breathe 10s ease-in-out infinite}
.orbit-two{left:100px;top:60px;border-color:#b394ff88;box-shadow:inset 0 0 35px #ac75ff33,0 0 45px #ac75ff44}
.orbit-three{left:150px;top:35px;border-width:16px;border-color:#a7ee6410;filter:blur(9px)}
@keyframes breathe{50%{transform:rotate(-22deg) scaleX(.63);filter:brightness(1.7)}}
.clients{background:#f6f6f1;color:#181a16;padding:30px 0 35px;overflow:hidden}
.client-label{display:flex;align-items:center;justify-content:space-between;padding:0 5%;margin-bottom:25px}
.client-label p{font-size:13px;line-height:1.5;margin:0;color:#6a6e65}
.client-label strong{color:#222;font-weight:500}
.client-label button{background:none;border:0;font-size:12px;color:#53574f}
.client-label button span{margin-left:8px}
.logo-track{display:flex;align-items:center;width:max-content;animation:marquee 48s linear infinite}
.logo-track.paused,.marquee:hover .logo-track{animation-play-state:paused}
.logo-item{width:220px;height:64px;padding:5px 30px;display:flex;align-items:center;justify-content:center}
.logo-item img{max-width:100%;max-height:54px;object-fit:contain;mix-blend-mode:multiply;filter:grayscale(1)}
@keyframes marquee{to{transform:translateX(-50%)}}
.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:55px}
.section-intro{max-width:350px;margin:0;color:#a5aa9f;font-size:16px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service{padding:32px;background:#1a1c18;border:1px solid #ffffff0d;border-radius:8px;min-height:365px;transition:background .3s,border-color .3s,transform .3s;display:flex;flex-direction:column}
.service:hover{transform:translateY(-5px);border-color:#b1ef6670;background:#20241c}
.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}
.service-icon{font-size:25px;line-height:1;color:#b1ef66}
.number{font-size:12px;color:#747a6e}
.service h3{font-size:28px;line-height:1.18;letter-spacing:-.9px;font-weight:500;margin:0 0 18px}
.service p{font-size:14px;color:#aeb2a7;margin:0 0 25px;line-height:1.75}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.tags span{font-size:11px;padding:4px 8px;border:1px solid #ffffff20;border-radius:3px;color:#c1c4bb}
.service>a{font-size:13px;margin-top:24px;text-decoration:underline;text-underline-offset:5px}
.feature{background:#252d1e;border-color:#8ead5944}
.growth{background:#24202b}
.growth .service-icon{color:#b59bfa}
.pos{background:#b1ef66;color:#182013;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}
.pos h2{font-size:clamp(42px,4.5vw,67px);letter-spacing:-3px}
.pos h2>span{color:#527b2c}
.pos-description{max-width:480px;margin:28px 0;font-size:16px}
.travel{font-size:12px;margin-top:20px}
.pos-panel{background:#f2f8e7;border:1px solid #19281114;border-radius:12px;box-shadow:14px 20px 0 #182c1112;transform:rotate(1deg);padding:35px}
.pos-panel-heading{border-bottom:1px solid #1a30152a;padding-bottom:25px;display:flex;flex-direction:column;gap:8px}
.pos-wordmark{font-size:34px;font-style:italic;font-weight:700;letter-spacing:-1.5px}
.pos-wordmark b{font-style:normal;font-weight:400}
.pos-panel-heading>span:last-child{font-size:9px;letter-spacing:1px}
.pos-row{display:flex;gap:23px;padding:25px 0;border-bottom:1px solid #1a30151a}
.pos-row>span{font-size:12px;color:#68775a;padding-top:4px}
.pos-row h3{font-size:19px;margin:0 0 6px;font-weight:600}
.pos-row p{font-size:13px;line-height:1.7;color:#59634f;margin:0}
.pos-panel-foot{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.5px;padding-top:22px}
.connection{font-size:24px}
.support{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;background:radial-gradient(ellipse at 10% 100%,#6c408c22,transparent 65%)}
.support h2{font-size:48px}
.support-content>p:not(.large-text){color:#a9aca3;font-size:15px}
.support-list{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:30px 0;color:#d4c3f9;font-size:13px}
.support-list span:before{content:'+';margin-right:9px}
.method{background:#f6f6f1;color:#1d2119}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}
.steps article{border-top:1px solid #aeb6a6;padding-top:25px}
.steps article>span{font-size:10px;letter-spacing:1.5px;color:#6b7462}
.steps h3{font-size:23px;font-weight:500;letter-spacing:-.6px;margin:22px 0 12px}
.steps p{font-size:14px;color:#6a7063}
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:center}
.about-mark{min-height:490px;background:#1b1e19;display:flex;flex-direction:column;justify-content:space-between;padding:44px;position:relative;overflow:hidden;border-radius:8px}
.about-mark:after{content:'';position:absolute;width:500px;height:500px;border-radius:50%;border:1px solid #b0ef6130;right:-300px;bottom:-200px;box-shadow:0 0 0 40px #b0ef6105,0 0 0 80px #b0ef6105,0 0 0 120px #b0ef6105}
.about-mark img{width:160px;border-radius:8px}
.about-mark>span{font-size:25px;line-height:1.4;letter-spacing:-1px;z-index:1}
.about-mark em{color:#b1ef66;font-style:normal}
.about h2{font-size:39px;letter-spacing:-1.5px;margin-bottom:30px}
.about-copy>p:not(.eyebrow):not(.large-text){font-size:15px;color:#a9afa1}
.sister-brand{display:block;margin-top:30px;border-top:1px solid #ffffff20;padding-top:24px;font-size:12px;letter-spacing:1px}
.sister-brand span{display:block;font-size:13px;color:#9ca394;letter-spacing:0;margin-top:5px}
.faq{display:grid;grid-template-columns:.65fr 1.35fr;gap:8%;padding-top:40px}
.faq details{border-bottom:1px solid #ffffff25}
.faq summary{list-style:none;display:flex;justify-content:space-between;gap:20px;cursor:pointer;padding:25px 0;font-size:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{color:#b1ef66;font-size:23px;line-height:1}
.faq details[open] summary span{transform:rotate(45deg)}
.faq details p{color:#aab0a2;font-size:14px;margin:0;padding:0 40px 24px 0}
.contact{background:radial-gradient(ellipse at 100% 130%,#68429160,transparent 60%),#1c2019;border-top:1px solid #ffffff10}
.contact h2{font-size:clamp(56px,7vw,105px);letter-spacing:-5px}
.contact h2 span{color:#b1ef66}
.contact-bottom{display:flex;align-items:center;justify-content:space-between;max-width:1050px;margin-top:35px;gap:20px}
.contact-bottom p{color:#b3baac;font-size:17px}
.email{font-size:14px;display:inline-block;margin-top:18px;border-bottom:1px solid #757b70}
@media(min-width:1600px){.hero,.header,.section{padding-left:max(6%,calc((100vw - 1450px)/2));padding-right:max(6%,calc((100vw - 1450px)/2))}}
@media(max-width:1000px){.location{display:none}
.service{padding:24px}
.service h3{font-size:24px}
.pos{gap:5%}
.pos-panel{padding:25px}
.support h2{font-size:38px}
.about{gap:6%}
.about-mark{padding:30px}
.hero-actions{align-items:flex-start}
.hero-tags{display:none}}
@media(max-width:740px){.hero{min-height:0;padding:25px 6% 22px}
.hero-top .eyebrow{font-size:9px;letter-spacing:1px;gap:8px}
.asterisk{font-size:18px}
.hero-body{padding:43px 0 40px}
.hero-bottom{display:block}
.hero-bottom p{font-size:15px;max-width:360px}
.hero-actions{margin-top:28px;gap:20px;align-items:flex-start}
.hero-foot{font-size:8px;letter-spacing:1px}
.aurora{right:-570px;top:-80px;opacity:.55}
.client-label p{font-size:11px}
.logo-item{width:170px;padding:5px 20px}
.logo-item img{max-height:44px}
.section-heading{display:block;margin-bottom:32px}
.section-intro{margin-top:25px;max-width:100%;font-size:15px}
.service-grid{grid-template-columns:1fr}
.service{min-height:290px;padding:28px}
.service-top{margin-bottom:24px}
.service h3{font-size:27px}
.service h3 br{display:none}
.tags span{font-size:11px}
.pos{grid-template-columns:1fr;gap:40px}
.pos h2{font-size:49px;letter-spacing:-2.5px}
.pos-panel{transform:none}
.pos-description{font-size:15px}
.support{grid-template-columns:1fr;gap:32px}
.support h2{font-size:36px}
.support-list{font-size:12px}
.steps{grid-template-columns:1fr;gap:24px}
.steps h3{margin-top:15px}
.about{grid-template-columns:1fr;gap:35px}
.about-mark{min-height:310px;padding:28px}
.about-mark img{width:110px}
.about-mark>span{font-size:23px}
.about h2{font-size:34px}
.faq{grid-template-columns:1fr;gap:22px;padding-top:10px}
.faq h2 br{display:none}
.faq summary{font-size:15px}
.contact h2{font-size:clamp(41px,10vw,70px);letter-spacing:-2.5px}
.contact-bottom{display:block}
.contact-bottom p{font-size:15px;margin-bottom:25px}
.desktop{display:none}}
@media(prefers-reduced-motion:reduce){.logo-track{width:100%;flex-wrap:wrap;justify-content:center}
.logo-track [aria-hidden=true]{display:none}
.aurora{transform:none}}

/* Titres de l’accueil : H1 descriptif et accroche avec son style initial. */
.hero-top h1.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.8px;line-height:1.6;margin:0;max-width:none;text-transform:uppercase}
.hero-top .asterisk{flex-shrink:0}
.hero-headline{font-size:clamp(55px,6.3vw,96px);line-height:1.035;letter-spacing:-5px;font-weight:500;margin:0 0 36px;max-width:1150px}
@media(max-width:1000px){.hero-headline{letter-spacing:-3px}}
@media(max-width:740px){.hero-top h1.eyebrow{font-size:9px;letter-spacing:1px}.hero-headline{font-size:clamp(41px,9.2vw,66px);letter-spacing:-2.4px;line-height:1.08;margin-bottom:30px}}
