/* Sky Flow Agency — feuille de style */
:root{
  --sky:#F2F8FF;--sky2:#DDEEFF;--blue:#4DA8FF;--blue-d:#1C6FD1;--ink:#0B1B33;--mute:#4A5B78;--sun:#FFD45C;--coral:#FF7A59;--pink:#FFB3C1;--white:#FFFFFF;--line:#C9DAF0;
  --fd:'Bricolage Grotesque','Arial Black','Segoe UI',sans-serif;--fb:'Manrope','Segoe UI',system-ui,sans-serif;--fh:'Caveat','Comic Sans MS',cursive;
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--sky:#F2F8FF;--ink:#0B1B33}}
:root[data-theme="dark"]{--sky:#F2F8FF;--ink:#0B1B33}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;background:var(--sky);color:var(--ink);font-family:var(--fb);-webkit-font-smoothing:antialiased}
body{overflow-x:hidden}
a{color:inherit;text-decoration:none}
::selection{background:var(--sun);color:var(--ink)}
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(18px,3vw,36px)}
.hand{font-family:var(--fh);font-weight:700;color:var(--blue-d)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--blue-d)}
.h2{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(36px,5.4vw,80px);line-height:.98;letter-spacing:-.04em}
.h2 em{font-style:normal;position:relative;white-space:nowrap}
.h2 em svg{position:absolute;left:-4%;bottom:-.18em;width:108%;height:.42em;overflow:visible}
.draw{stroke-dasharray:1;stroke-dashoffset:1}
.btn{display:inline-flex;align-items:center;gap:12px;min-height:56px;padding:0 28px;border-radius:999px;font-weight:800;font-size:16px;background:var(--ink);color:var(--white);border:2.5px solid var(--ink);box-shadow:4px 4px 0 var(--blue);transition:transform .2s,box-shadow .2s;cursor:pointer;font-family:inherit}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--blue)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--blue)}
.btn.light{background:var(--white);color:var(--ink);box-shadow:4px 4px 0 var(--ink)}
.btn.light:hover{box-shadow:7px 7px 0 var(--ink)}

/* floo */
.floo{display:block;width:100%;height:auto;overflow:visible}
.floo .f-arm-r,.floo .f-arm-l{transform-box:fill-box}
.floo .f-arm-r{transform-origin:0% 100%}
.floo .f-arm-l{transform-origin:100% 100%}
.floo .f-eyes{transform-box:fill-box;transform-origin:center}
.floo .f-scarf{transform-box:fill-box;transform-origin:100% 50%;animation:scarf 1.4s ease-in-out infinite}
@keyframes scarf{0%,100%{transform:skewY(0) scaleX(1)}50%{transform:skewY(-8deg) scaleX(1.12)}}
.floo-wave .f-arm-r{animation:wave 1.6s ease-in-out infinite}
@keyframes wave{0%,100%{transform:rotate(0)}25%{transform:rotate(-28deg)}75%{transform:rotate(12deg)}}
.float{animation:float 5s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-16px) rotate(2deg)}}

/* loader */
.loader{position:fixed;inset:0;z-index:100;background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;animation:lf .5s 4s forwards}
@keyframes lf{to{transform:translateY(-100%)}}
.loader .lf{width:150px}
.loader .lt{font-family:var(--fd);font-weight:800;font-size:22px;color:var(--ink)}
.loader .lb{width:180px;height:8px;border-radius:99px;background:rgba(11,27,51,.15);overflow:hidden;border:2px solid var(--ink)}
.loader .lb i{display:block;height:100%;width:0;background:var(--sun)}

/* topbar + nav */
.topbar{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 18px;background:var(--ink);color:var(--white);font-size:14px;font-weight:700;text-align:center}
.topbar a{color:var(--sun);text-decoration:underline;text-underline-offset:3px}
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;padding:14px 0}
.nav-in{display:flex;justify-content:space-between;align-items:center;gap:16px;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border:2px solid var(--ink);border-radius:999px;padding:8px 8px 8px 20px;box-shadow:4px 4px 0 var(--ink)}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--fd);font-weight:800;font-size:21px;letter-spacing:-.03em}
.logo .lm{width:42px}
.links{display:flex;align-items:center;gap:24px;font-weight:700;font-size:15px}
.links a:not(.btn){padding:12px 0;position:relative}
.links a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:3px;border-radius:3px;background:var(--sun);transform:scaleX(0);transition:transform .3s}
.links a:not(.btn):hover::after{transform:scaleX(1)}
.links .btn{min-height:46px;padding:0 20px;font-size:15px;box-shadow:none}
@media (max-width:820px){.links a:not(.btn){display:none}}

/* sky decor */
.cloud{position:absolute;pointer-events:none}
.cloud path{fill:var(--white);stroke:var(--ink);stroke-width:3}
.doodle{position:absolute;pointer-events:none;stroke:var(--ink);fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}

/* hero */
.hero{position:relative;padding:clamp(40px,6vw,80px) 0 clamp(70px,9vw,120px);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:40px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;background:var(--white);border:2px solid var(--ink);border-radius:999px;font-weight:700;font-size:14px}
.badge b{background:var(--sun);border:2px solid var(--ink);border-radius:999px;padding:3px 10px;font-size:12px}
.hero h1{margin:22px 0 0;font-family:var(--fd);font-weight:800;font-size:clamp(46px,7.4vw,112px);line-height:.92;letter-spacing:-.05em}
.hero h1 .ln{display:block;padding-bottom:.04em}
.hero h1 .ch{display:inline-block}
.hero h1 .bl{color:var(--blue-d)}
.hero p.lead{margin:24px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.6;color:var(--mute);max-width:540px}
.hero .ctas{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:34px}
.rating{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px}
.stars{display:flex;gap:2px;color:var(--sun)}
.hero-art{position:relative;max-width:560px;justify-self:center;width:100%}
.hero-art .sun{position:absolute;right:2%;top:-2%;width:28%;aspect-ratio:1;border-radius:50%;background:var(--sun);border:3px solid var(--ink)}
.hero-art .note{position:absolute;left:-2%;top:6%;font-family:var(--fh);font-size:clamp(22px,2.2vw,30px);color:var(--blue-d);transform:rotate(-8deg);line-height:1}
.hero-art .note2{position:absolute;right:-2%;bottom:6%;font-family:var(--fh);font-size:clamp(22px,2.2vw,30px);color:var(--coral);transform:rotate(6deg);line-height:1;text-align:right}

/* marquee */
.mq{background:var(--blue);border-top:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);overflow:hidden;padding:18px 0;transform:rotate(-1.6deg);margin:0 -2%}
.mq-t{display:flex;width:max-content}
.mq-t div{display:flex;align-items:center;gap:36px;padding-right:36px;font-family:var(--fd);font-weight:800;font-size:clamp(26px,3.6vw,52px);letter-spacing:-.03em;white-space:nowrap}
.mq-t svg{width:.8em;height:.8em}

/* logos */
.logos{padding:72px 0 30px;text-align:center}
.logos p{margin:0 0 26px;font-weight:700;color:var(--mute)}
.logo-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}
.logo-row span{min-height:64px;display:flex;align-items:center;justify-content:center;border:2px dashed var(--line);border-radius:16px;font-weight:700;color:#7C8DAA;font-size:14px}

/* expertises */
.sec{padding:clamp(80px,10vw,130px) 0;position:relative}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:56px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}
.card{position:relative;background:var(--white);border:2.5px solid var(--ink);border-radius:28px;padding:30px;display:flex;flex-direction:column;gap:16px;box-shadow:6px 6px 0 var(--ink);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s;transform-style:preserve-3d}
.card:hover{box-shadow:10px 10px 0 var(--blue)}
.card .ic{width:64px;height:64px;border-radius:18px;border:2.5px solid var(--ink);display:flex;align-items:center;justify-content:center}
.card .ic svg{width:34px;height:34px;stroke:var(--ink);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.card h3{margin:0;font-family:var(--fd);font-weight:800;font-size:28px;letter-spacing:-.03em}
.card p{margin:0;font-size:16px;line-height:1.6;color:var(--mute)}
.card .tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.card .tags span{font-size:13px;font-weight:700;padding:6px 12px;border-radius:999px;background:var(--sky);border:1.5px solid var(--line)}

/* meet floo */
.meet{background:var(--ink);color:var(--white);border-radius:clamp(28px,4vw,56px);margin:0 clamp(10px,2vw,24px);overflow:hidden;position:relative}
.meet .h2{color:var(--white)}
.meet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:48px;align-items:center}
.meet p{font-size:18px;line-height:1.7;color:#B9C8E2;margin:0}
.poses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:34px}
.pose{background:#13284A;border:2px solid #24406B;border-radius:22px;padding:16px 12px 12px;text-align:center;transition:transform .3s,background-color .3s}
.pose:hover{transform:translateY(-6px) rotate(-2deg);background:#1A3560}
.pose span{display:block;margin-top:6px;font-family:var(--fh);font-size:22px;color:var(--sun)}
.palette{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:30px}
.sw{border-radius:16px;aspect-ratio:1;border:2px solid #24406B;display:flex;align-items:flex-end;padding:8px;font-size:11px;font-weight:800;color:var(--ink)}
.meet-art{position:relative;max-width:480px;justify-self:center;width:100%}
.meet-art .bubble{position:absolute;top:-4%;right:-2%;background:var(--white);color:var(--ink);border:2.5px solid var(--ink);border-radius:22px 22px 22px 4px;padding:12px 16px;font-family:var(--fh);font-size:26px;line-height:1.05;max-width:220px}

/* process */
.steps{display:flex;flex-direction:column;gap:22px}
.step{position:sticky;top:calc(110px + env(safe-area-inset-top,0px));display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:28px;align-items:center;min-height:300px;border:2.5px solid var(--ink);border-radius:32px;padding:clamp(26px,4vw,48px);box-shadow:6px 6px 0 var(--ink);transform-origin:center top}
.step:nth-child(1){background:var(--white)}
.step:nth-child(2){background:var(--sky2)}
.step:nth-child(3){background:var(--sun)}
.step:nth-child(4){background:var(--blue)}
.step:nth-child(5){background:var(--coral)}
.step .n{font-family:var(--fd);font-weight:800;font-size:clamp(84px,11vw,160px);line-height:.8;letter-spacing:-.06em;-webkit-text-stroke:2.5px var(--ink);color:transparent}
.step h3{margin:0 0 10px;font-family:var(--fd);font-weight:800;font-size:clamp(28px,3.2vw,46px);letter-spacing:-.04em}
.step p{margin:0;font-size:17px;line-height:1.6;max-width:460px}
.step .t{display:inline-block;margin-top:16px;font-size:13px;font-weight:800;padding:7px 13px;border-radius:999px;border:2px solid var(--ink);background:var(--white)}

/* sectors */
.chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.chip{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border:2.5px solid var(--ink);border-radius:999px;background:var(--white);font-weight:800;font-size:16px;transition:background-color .25s,transform .25s}
.chip:hover{background:var(--sun);transform:rotate(-3deg) scale(1.05)}

/* testimonials */
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px}
.tcard{margin:0;background:var(--white);border:2.5px solid var(--ink);border-radius:26px;padding:28px;display:flex;flex-direction:column;gap:20px}
.tcard:nth-child(2){transform:rotate(1.5deg);background:var(--sky2)}
.tcard:nth-child(3){transform:rotate(-1.2deg)}
.tcard blockquote{margin:0;font-size:18px;line-height:1.6}
.tcard figcaption{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--mute)}
.tcard figcaption b{display:block;color:var(--ink);font-size:16px}
.av{width:46px;height:46px;border-radius:50%;border:2px solid var(--ink);background:var(--sun);flex:none}

/* faq */
.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:40px;align-items:stretch}
details{background:var(--white);border:2.5px solid var(--ink);border-radius:22px;margin-bottom:12px;overflow:hidden}
summary{list-style:none;cursor:pointer;min-height:68px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-family:var(--fd);font-weight:700;font-size:clamp(18px,1.6vw,22px);letter-spacing:-.02em}
summary::-webkit-details-marker{display:none}
summary i{flex:none;width:38px;height:38px;border-radius:50%;border:2px solid var(--ink);background:var(--sun);position:relative;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
summary i::before,summary i::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2.5px;background:var(--ink);transform:translate(-50%,-50%)}
summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
details[open] summary i{transform:rotate(135deg);background:var(--blue)}
details p{margin:0;padding:0 22px 22px;font-size:16px;line-height:1.7;color:var(--mute)}

/* cta */
.cta{position:relative;background:var(--blue);border-top:2.5px solid var(--ink);overflow:hidden;padding:clamp(90px,12vw,150px) 0 0;text-align:center}
.cta h2{margin:0 auto;font-family:var(--fd);font-weight:800;font-size:clamp(48px,9vw,140px);line-height:.9;letter-spacing:-.055em;max-width:1100px}
.cta p{margin:24px auto 0;font-size:clamp(17px,1.5vw,20px);line-height:1.6;max-width:560px}
.cta .row{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin-top:36px}
.cta-floo{width:min(320px,70vw);margin:40px auto -10px;position:relative;z-index:2}
.ground{position:relative;height:120px;margin-top:-60px}
.ground svg{position:absolute;left:0;bottom:0;width:100%;height:100%}
footer{background:var(--ink);color:#B9C8E2;padding:48px 0 calc(48px + env(safe-area-inset-bottom,0px));font-size:14px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
footer .logo{color:var(--white)}

/* companion */
.buddy{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:flex-end;gap:8px;pointer-events:none}
.buddy .say{pointer-events:auto;background:var(--white);border:2.5px solid var(--ink);border-radius:18px 18px 4px 18px;padding:10px 14px;font-family:var(--fh);font-size:21px;line-height:1.05;max-width:190px;box-shadow:3px 3px 0 var(--ink);transform-origin:bottom right}
.buddy button{pointer-events:auto;width:96px;height:84px;padding:0;border:none;background:transparent;cursor:pointer}
@media (max-width:600px){.buddy .say{display:none}.buddy button{width:72px;height:64px}}


/* ===== V3 : hero ===== */
.hero{min-height:calc(100svh - 120px);display:flex;flex-direction:column;justify-content:center}
.hero-bg{position:absolute;inset:0;pointer-events:none}
.hero-bg .ring{position:absolute;right:-10vw;top:50%;border:2px dashed #BBD3F0;border-radius:50%;transform:translateY(-50%)}
.hero-bg .r1{width:70vw;height:70vw;max-width:980px;max-height:980px}
.hero-bg .r2{width:50vw;height:50vw;max-width:700px;max-height:700px;right:0;border-style:solid;border-color:#D6E6F8}
.hero-bg .r3{width:30vw;height:30vw;max-width:420px;max-height:420px;right:10vw;background:#E6F1FF;border:none}
.rot-wrap{position:relative;display:inline-block;color:var(--blue-d)}
.rot{display:inline-block}
.rot-line{position:absolute;left:-3%;bottom:-.08em;width:106%;height:.36em;z-index:-1;overflow:visible}
.hero h1{position:relative;z-index:1}
.trust{display:flex;align-items:center;gap:14px;margin-top:30px;font-size:14px;color:var(--mute);line-height:1.4}
.trust b{color:var(--ink)}
.avs{display:flex}
.avs span{width:42px;height:42px;border-radius:50%;border:2.5px solid var(--ink);margin-left:-12px}
.avs span:first-child{margin-left:0}
.flight{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.floo-hero{position:relative;z-index:2;width:88%;margin:6% auto 0}
.hchip{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:var(--white);border:2.5px solid var(--ink);border-radius:14px;font-weight:800;font-size:14px;box-shadow:4px 4px 0 var(--ink);white-space:nowrap}
.hchip i{width:10px;height:10px;border-radius:50%}
.hchip.c1{left:-4%;top:40%}
.hchip.c2{right:-2%;top:22%;background:var(--sun)}
.hchip.c3{right:6%;bottom:2%;background:var(--sky2)}
.scrollcue{display:inline-flex;align-items:center;gap:12px;margin-top:clamp(36px,5vw,64px);font-weight:700;font-size:14px;color:var(--mute);min-height:44px}
.mouse{width:24px;height:38px;border:2.5px solid var(--ink);border-radius:14px;position:relative}
.mouse i{position:absolute;left:50%;top:7px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--ink);animation:wheel 1.6s infinite}
@keyframes wheel{0%{opacity:1;transform:none}100%{opacity:0;transform:translateY(12px)}}
@media (max-width:600px){.hchip{font-size:12px;padding:8px 10px}.hchip.c1{left:0}.hchip.c2{right:0}}

/* ===== réalisations ===== */
.filters{display:flex;flex-wrap:wrap;gap:8px}
.flt{min-height:46px;padding:0 18px;border-radius:999px;border:2.5px solid var(--ink);background:var(--white);font-family:inherit;font-weight:800;font-size:14px;color:var(--ink);cursor:pointer;transition:background-color .2s,transform .2s}
.flt:hover{transform:translateY(-2px)}
.flt.on{background:var(--ink);color:var(--white)}
.works{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:24px}
.work{display:flex;flex-direction:column;gap:16px}
.work.wide{grid-column:1/-1}
.browser{border:2.5px solid var(--ink);border-radius:24px;overflow:hidden;background:var(--white);box-shadow:6px 6px 0 var(--ink);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.work:hover .browser{transform:translate(-4px,-4px) rotate(-.6deg);box-shadow:12px 12px 0 var(--blue)}
.browser .bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:2.5px solid var(--ink);background:var(--sky)}
.browser .bar i{width:11px;height:11px;border-radius:50%;border:2px solid var(--ink)}
.browser .bar i:nth-child(1){background:var(--coral)}.browser .bar i:nth-child(2){background:var(--sun)}.browser .bar i:nth-child(3){background:#3BB273}
.browser .bar span{margin-left:10px;font-size:12px;font-weight:700;color:var(--mute);background:var(--white);border:1.5px solid var(--line);border-radius:99px;padding:3px 12px}
.shot{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;overflow:hidden}
.work.wide .shot{aspect-ratio:21/9}
.shot > .ph-txt{font-family:var(--fd);font-weight:800;font-size:clamp(18px,2vw,28px);color:var(--ink);opacity:.55;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.work:hover .shot .mk{filter:saturate(1.15)}
.shot .mk{transition:filter .4s}
.wmeta{display:flex;justify-content:space-between;align-items:center;gap:12px}
.wmeta h3{margin:0 0 8px;font-family:var(--fd);font-weight:800;font-size:clamp(22px,2vw,28px);letter-spacing:-.03em}
.wtags{display:flex;flex-wrap:wrap;gap:6px}
.wtags span{font-size:13px;font-weight:700;padding:5px 11px;border-radius:99px;border:1.5px solid var(--line);background:var(--white)}
.go{flex:none;width:52px;height:52px;border-radius:50%;border:2.5px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;background:var(--sun);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.work:hover .go{transform:rotate(-45deg)}
.work.add{border:3px dashed var(--ink);border-radius:28px;background:var(--sky2);min-height:340px;justify-content:center}
.add-in{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:30px}
.add-in h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(24px,2.4vw,32px);letter-spacing:-.03em;max-width:340px}
.work.hide{display:none}

/* ===== contact ===== */
.cta{text-align:left;padding:clamp(80px,10vw,130px) 0 0}
.cta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(36px,5vw,72px);align-items:center;position:relative}
.cta h2{margin:12px 0 0;font-size:clamp(44px,6.4vw,96px);line-height:.92;text-align:left}
.cta h2 .hl{background:var(--sun);border:3px solid var(--ink);border-radius:18px;padding:0 .14em;display:inline-block;transform:rotate(-2deg);box-shadow:5px 5px 0 var(--ink)}
.cta p{margin:22px 0 0;max-width:520px;text-align:left}
.checks{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;font-weight:700;font-size:17px}
.checks li{display:flex;align-items:center;gap:12px}
.checks li span{flex:none;width:30px;height:30px;border-radius:50%;background:var(--white);border:2.5px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:14px}
.team{display:flex;align-items:center;gap:14px;margin-top:30px;font-size:15px}
.form{position:relative;background:var(--white);border:3px solid var(--ink);border-radius:32px;padding:clamp(26px,3vw,40px);padding-top:clamp(70px,7vw,90px);box-shadow:10px 10px 0 var(--ink);display:flex;flex-direction:column;gap:18px;margin-top:70px}
.form-floo{position:absolute;width:170px;left:50%;top:-110px;margin-left:-85px}
.form h3{margin:0;font-family:var(--fd);font-weight:800;font-size:28px;letter-spacing:-.03em;text-align:center}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.form label{display:flex;flex-direction:column;gap:7px;font-weight:800;font-size:14px}
.form input,.form textarea,.news input{font-family:inherit;font-size:16px;color:var(--ink);background:var(--sky);border:2.5px solid var(--ink);border-radius:14px;padding:14px 16px;min-height:52px;outline:none;transition:box-shadow .2s,background-color .2s}
.form input:focus,.form textarea:focus,.news input:focus{background:var(--white);box-shadow:4px 4px 0 var(--blue)}
.form textarea{resize:vertical}
fieldset{border:none;margin:0;padding:0}
legend{font-weight:800;font-size:14px;margin-bottom:8px;padding:0}
.pick{display:flex;flex-wrap:wrap;gap:8px}
.pk{min-height:44px;padding:0 16px;border-radius:999px;border:2px solid var(--ink);background:var(--white);font-family:inherit;font-weight:700;font-size:14px;color:var(--ink);cursor:pointer;transition:background-color .2s,transform .2s}
.pk[aria-pressed="true"]{background:var(--blue);transform:rotate(-2deg)}
.form-ok{margin:0;min-height:1.4em;text-align:center;font-weight:800;color:var(--blue-d)}
.cta .ground{height:110px;margin-top:70px}

/* ===== footer ===== */
footer{background:var(--ink);color:#B9C8E2;padding:70px 0 calc(30px + env(safe-area-inset-bottom,0px));font-size:15px;overflow:hidden}
footer .wrap{display:block}
.f-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:40px}
.f-brand{grid-column:span 2;min-width:0}
@media (max-width:560px){.f-brand{grid-column:auto}}
.f-brand p{margin:18px 0 22px;line-height:1.7;max-width:400px}
.news{display:flex;gap:8px;flex-wrap:wrap;max-width:440px}
.news input{flex:1 1 200px;background:#13284A;border-color:#2C4670;color:var(--white)}
.news input::placeholder{color:#8EA3C6}
.f-small{display:block;margin-top:10px;font-size:13px;color:#8EA3C6}
.f-col{display:flex;flex-direction:column;gap:4px}
.f-col h4{margin:0 0 10px;font-family:var(--fd);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--sun)}
.f-col a{padding:7px 0;color:#D6E2F5;transition:color .2s,transform .2s;display:inline-block}
.f-col a:hover{color:var(--white);transform:translateX(4px)}
.socials{display:flex;gap:10px;margin-top:12px}
.socials a{width:46px;height:46px;border-radius:50%;border:2px solid #2C4670;display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .25s,border-color .25s}
.socials a:hover{background:var(--blue);border-color:var(--blue);transform:none}
.socials svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.f-word{position:relative;margin-top:70px;line-height:.78;user-select:none}
.wm{display:block;font-family:var(--fd);font-weight:800;font-size:clamp(80px,21vw,330px);letter-spacing:-.07em;color:#13284A;white-space:nowrap}
.sleepy{position:absolute;right:6%;top:-8%;width:clamp(90px,13vw,190px);transform:rotate(8deg)}
.z{position:absolute;font-family:var(--fh);font-weight:700;color:var(--sun);right:-10%;animation:zz 3s infinite}
.z1{top:0;font-size:20px}.z2{top:-20%;right:-22%;font-size:26px;animation-delay:1s}.z3{top:-42%;right:-34%;font-size:34px;animation-delay:2s}
@keyframes zz{0%{opacity:0;transform:translate(0,10px)}30%{opacity:1}100%{opacity:0;transform:translate(14px,-24px)}}
.f-bot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;border-top:1px solid #1E3558;margin-top:24px;padding-top:24px;font-size:14px}
.f-bot a{text-decoration:underline;text-underline-offset:3px}
.totop{min-height:44px;padding:0 18px;border-radius:999px;border:2px solid #2C4670;background:transparent;color:var(--white);font-family:inherit;font-weight:700;font-size:14px;cursor:pointer;transition:background-color .2s}
.totop:hover{background:#13284A}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}


/* ===== technologies ===== */
.tech-note{display:flex;align-items:center;gap:10px}
.tech-note .hand{font-size:24px;line-height:1.05;transform:rotate(-4deg)}
.techs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:20px}
.tech{position:relative;display:flex;flex-direction:column;gap:14px;background:var(--white);border:2.5px solid var(--ink);border-radius:28px;padding:28px;box-shadow:6px 6px 0 var(--ink);overflow:hidden;isolation:isolate;transition:box-shadow .3s}
.tech::before{content:"";position:absolute;left:-20%;right:-20%;bottom:-100%;height:100%;background:var(--c);border-radius:50% 50% 0 0;z-index:-1;transition:bottom .55s cubic-bezier(.7,0,.2,1)}
.tech:hover::before{bottom:-8%}
.tech:hover{box-shadow:10px 10px 0 var(--ink)}
.t-ic{width:68px;height:68px;border-radius:20px;border:2.5px solid var(--ink);background:var(--c);display:flex;align-items:center;justify-content:center;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.tech:hover .t-ic{transform:rotate(-12deg) scale(1.08);background:var(--white)}
.t-ic svg{width:36px;height:36px;fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.tech h3{margin:6px 0 0;font-family:var(--fd);font-weight:800;font-size:28px;letter-spacing:-.03em}
.tech p{margin:0;font-size:16px;line-height:1.6;color:var(--mute);transition:color .3s}
.tech:hover p{color:var(--ink)}
.t-fit{font-size:14px;line-height:1.5;padding:10px 12px;border-radius:14px;background:var(--sky);border:1.5px dashed var(--line)}
.t-fit b{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.t-go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:15px;min-height:44px}
.t-go i{font-style:normal;display:inline-block;transition:transform .3s}
.tech:hover .t-go i{transform:translateX(6px)}


/* ===== plan de vol ===== */
.plan-perks{display:flex;flex-direction:column;gap:10px;max-width:400px}
.plan-perks span{display:flex;align-items:center;gap:12px;font-weight:700;font-size:16px;background:var(--white);border:2px solid var(--ink);border-radius:16px;padding:10px 14px}
.plan-perks svg{flex:none;width:24px;height:24px;fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.plan-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
@media (max-width:900px){.plan-grid{grid-template-columns:minmax(0,1fr)}.cockpit{display:none!important}}
.cockpit{position:sticky;top:calc(110px + env(safe-area-inset-top,0px));background:var(--ink);color:var(--white);border-radius:30px;padding:26px;display:flex;flex-direction:column;gap:20px;box-shadow:8px 8px 0 var(--blue);overflow:hidden}
.ck-head{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#B9C8E2}
.ck-dot{width:10px;height:10px;border-radius:50%;background:#3BB273;box-shadow:0 0 0 0 rgba(59,178,115,.6);animation:ckp 1.8s infinite}
@keyframes ckp{70%{box-shadow:0 0 0 10px rgba(59,178,115,0)}100%{box-shadow:0 0 0 0 rgba(59,178,115,0)}}
.gauge{position:relative;width:170px;margin:0 auto}
.gauge svg{display:block;width:100%}
.g-in{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;color:#B9C8E2}
.g-pct{font-family:var(--fd);font-weight:800;font-size:40px;color:var(--white);letter-spacing:-.04em;line-height:1}
.ck-step{display:flex;flex-direction:column;gap:4px;background:#13284A;border-radius:18px;padding:14px 16px}
.ck-lbl{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8EA3C6}
.ck-name{font-family:var(--fd);font-weight:800;font-size:26px;letter-spacing:-.03em;color:var(--sun)}
.ck-num{font-size:13px;font-weight:700;color:#B9C8E2}
.ck-alt{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#B9C8E2;border-top:1px dashed #2C4670;padding-top:14px}
.ck-alt b{font-family:var(--fd);font-size:20px;color:var(--white)}
.ck-floo{position:absolute;right:-26px;bottom:-30px;width:120px;opacity:.95}
.route{position:relative;display:flex;flex-direction:column;gap:28px;padding-left:64px}
.line{position:absolute;left:22px;top:10px;bottom:10px;width:4px;background:repeating-linear-gradient(to bottom,var(--ink) 0 10px,transparent 10px 20px);opacity:.25;border-radius:4px}
.line-fill{position:absolute;inset:0;background:var(--blue-d);transform-origin:top;transform:scaleY(0);border-radius:4px}
.rider{position:absolute;left:-12px;top:0;width:72px;z-index:3}
.leg{position:relative}
.pin{position:absolute;left:-56px;top:34px;width:32px;height:32px;border-radius:50%;background:var(--white);border:3px solid var(--ink);display:flex;align-items:center;justify-content:center;z-index:2;transition:background-color .35s,transform .35s}
.pin i{width:10px;height:10px;border-radius:50%;background:var(--ink)}
.leg.on .pin{background:var(--c);transform:scale(1.25)}
.ticket{display:grid;grid-template-columns:minmax(0,1fr) 190px;background:var(--white);border:2.5px solid var(--ink);border-radius:26px;box-shadow:6px 6px 0 var(--ink);overflow:hidden;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,opacity .45s}
.plan.live .leg:not(.on) .ticket{opacity:.55;transform:scale(.97)}
.leg.on .ticket{opacity:1;transform:none;box-shadow:10px 10px 0 var(--ink)}
@media (max-width:640px){.ticket{grid-template-columns:minmax(0,1fr)}.tk-stub{border-left:none!important;border-top:2.5px dashed var(--ink)}}
.tk-main{padding:clamp(22px,3vw,32px);display:flex;flex-direction:column;gap:10px}
.tk-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.tk-n{font-family:var(--fd);font-weight:800;font-size:56px;line-height:.85;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2.5px var(--ink);transition:color .4s}
.leg.on .tk-n{color:var(--c)}
.tk-dur{font-size:13px;font-weight:800;padding:6px 12px;border-radius:999px;border:2px solid var(--ink);background:var(--sky)}
.tk-main h3{margin:4px 0 0;font-family:var(--fd);font-weight:800;font-size:clamp(26px,2.6vw,36px);letter-spacing:-.04em}
.tk-sub{font-family:var(--fh);font-size:24px;color:var(--blue-d);line-height:1}
.tk-main p{margin:4px 0 0;font-size:16px;line-height:1.65;color:var(--mute)}
.tk-dl{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.tk-dl span{font-size:13px;font-weight:700;padding:6px 12px;border-radius:999px;border:1.5px solid var(--ink);background:var(--white)}
.tk-dl span::before{content:"✓ ";color:var(--blue-d);font-weight:800}
.tk-stub{position:relative;background:var(--c);border-left:2.5px dashed var(--ink);padding:22px 18px;display:flex;flex-direction:column;gap:8px;justify-content:center}
.tk-lbl{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.tk-you{font-family:var(--fd);font-weight:700;font-size:19px;line-height:1.2;letter-spacing:-.02em}
.tk-code{width:100px;height:30px;margin-top:8px}
.arrival{display:flex;flex-direction:column;gap:4px;padding:22px 26px;border:3px dashed var(--ink);border-radius:24px;background:var(--sun);font-weight:700}
.arrival .hand{font-size:32px;color:var(--ink)}


/* ===== secteurs ===== */
.stabs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,215px),1fr));gap:12px;margin-bottom:28px;align-items:stretch}
.stab{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:54px;white-space:nowrap;margin:0;padding:0 18px 0 14px;text-align:left;border:2.5px solid var(--ink);border-radius:999px;background:var(--white);font-family:inherit;font-weight:800;font-size:15px;color:var(--ink);cursor:pointer;transition:transform .25s,box-shadow .25s,background-color .25s}
.stab:hover{transform:translateY(-2px);box-shadow:4px 4px 0 var(--ink)}
.stab.on{background:var(--c);box-shadow:4px 4px 0 var(--ink);transform:translateY(-2px)}
.s-ic{width:24px;height:24px;fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.spanel{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:clamp(28px,4vw,56px);align-items:center;background:var(--white);border:3px solid var(--ink);border-radius:36px;padding:clamp(26px,4vw,52px);box-shadow:10px 10px 0 var(--ink);position:relative;overflow:hidden;isolation:isolate}
.spanel::before{content:"";position:absolute;right:-14%;top:-30%;width:60%;aspect-ratio:1;border-radius:50%;background:var(--c);opacity:.35;z-index:-1;transition:background-color .5s}
.sp-copy{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.sp-tag{display:inline-flex;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:999px;border:2px solid var(--ink);background:var(--c)}
.sp-copy h3{margin:0;font-family:var(--fd);font-weight:800;font-size:clamp(28px,3.2vw,46px);line-height:1.02;letter-spacing:-.04em}
.sp-copy p{margin:0;font-size:17px;line-height:1.65;color:var(--mute);max-width:560px}
.sp-copy ul{list-style:none;margin:4px 0 8px;padding:0;display:flex;flex-direction:column;gap:10px}
.sp-copy li{display:flex;align-items:flex-start;gap:12px;font-weight:700;font-size:16px;line-height:1.4}
.sp-copy li::before{content:"✓";flex:none;width:26px;height:26px;border-radius:50%;border:2px solid var(--ink);background:var(--c);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.sp-art{position:relative;max-width:460px;width:100%;justify-self:center;padding:20px 0 40px}
.sp-browser{border:2.5px solid var(--ink);border-radius:22px;overflow:hidden;background:var(--white);box-shadow:6px 6px 0 var(--ink);transform:rotate(2deg)}
.sp-browser .bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:2.5px solid var(--ink);background:var(--sky)}
.sp-browser .bar i{width:10px;height:10px;border-radius:50%;border:2px solid var(--ink)}
.sp-browser .bar i:nth-child(1){background:var(--coral)}.sp-browser .bar i:nth-child(2){background:var(--sun)}.sp-browser .bar i:nth-child(3){background:#3BB273}
.sp-browser .bar span{margin-left:8px;font-size:12px;font-weight:700;color:var(--mute);background:var(--white);border:1.5px solid var(--line);border-radius:99px;padding:3px 10px}
.sp-screen{padding:20px;display:flex;flex-direction:column;gap:16px}
.sp-hero{display:flex;align-items:center;gap:16px;background:var(--c);border:2px solid var(--ink);border-radius:16px;padding:18px;transition:background-color .5s}
.sp-big{width:64px;height:64px;flex:none;fill:none;stroke:var(--ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;background:var(--white);border:2px solid var(--ink);border-radius:16px;padding:10px}
.sp-lines{flex:1;display:flex;flex-direction:column;gap:8px}
.sp-lines span{height:10px;border-radius:6px;background:var(--ink);opacity:.8}
.sp-lines span:nth-child(2){opacity:.3}
.sp-lines .short{width:55%;opacity:.3}
.sp-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sp-cards span{aspect-ratio:1;border-radius:12px;border:2px solid var(--ink);background:var(--sky)}
.sp-cta{align-self:flex-start;font-size:14px;font-weight:800;padding:10px 16px;border-radius:999px;background:var(--ink);color:var(--white)}
.sp-floo{position:absolute;width:130px;left:-30px;bottom:-6px}
.sp-note{position:absolute;right:-6px;bottom:0;font-size:24px;line-height:1;transform:rotate(-6deg)}
.sp-other{margin:28px 0 0;text-align:center;font-weight:700;color:var(--mute)}
.sp-other a{color:var(--blue-d);text-decoration:underline;text-underline-offset:4px}


/* ===== à propos v2 ===== */
.meet{padding-top:clamp(90px,10vw,130px)}
.m-star{position:absolute;width:22px;fill:var(--sun);animation:twk 2.4s ease-in-out infinite}
.m-star:nth-of-type(2){animation-delay:.8s}.m-star:nth-of-type(3){animation-delay:1.6s}
@keyframes twk{0%,100%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(.5) rotate(45deg);opacity:.5}}
.m-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap;margin-bottom:64px}
.m-head p{max-width:460px;margin:0}
.m-hl{display:inline-block;background:var(--sun);color:var(--ink);border-radius:16px;padding:0 .14em;transform:rotate(-3deg)}
.m-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:40px;align-items:start}
.stage{position:relative;min-height:520px;border-radius:32px;background:#13284A;border:2px solid #24406B;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:24px}
.st-sun{position:absolute;right:10%;top:12%;width:90px;height:90px;border-radius:50%;background:var(--sun);border:3px solid var(--ink);box-shadow:0 0 0 14px rgba(255,212,92,.12),0 0 0 30px rgba(255,212,92,.06)}
.st-cloud{position:absolute;width:140px;opacity:.9}
.st-cloud path{fill:#1E3558;stroke:#2C4670;stroke-width:3}
.st-cloud.c1{left:-40px;top:22%;animation:drift 18s linear infinite}
.st-cloud.c2{left:-40px;top:52%;width:90px;animation:drift 26s linear infinite 6s}
@keyframes drift{from{transform:translateX(0)}to{transform:translateX(900px)}}
.stage .bubble{position:absolute;top:10%;left:8%;right:auto;background:var(--white);color:var(--ink);border:2.5px solid var(--ink);border-radius:22px 22px 22px 4px;padding:12px 16px;font-family:var(--fh);font-size:26px;line-height:1.05;max-width:240px;z-index:3}
.st-floo{position:relative;z-index:2;width:min(330px,80%);margin-bottom:6px;cursor:pointer}
.st-shadow{width:180px;height:18px;border-radius:50%;background:rgba(0,0,0,.35);margin-bottom:22px;filter:blur(2px)}
.st-tabs{position:relative;z-index:3;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;background:#0B1B33;border:2px solid #24406B;border-radius:999px;padding:6px}
.st-tab{min-height:44px;padding:0 16px;border-radius:999px;border:none;background:transparent;color:#B9C8E2;font-family:inherit;font-weight:800;font-size:14px;cursor:pointer;transition:background-color .25s,color .25s}
.st-tab:hover{color:var(--white)}
.st-tab.on{background:var(--sun);color:var(--ink)}
.pass{position:relative;z-index:2;background:#FFF8E6;color:var(--ink);border:3px solid var(--ink);border-radius:28px;box-shadow:8px 8px 0 var(--blue);overflow:hidden;display:flex;flex-direction:column}
.pass-top{display:flex;justify-content:space-between;gap:10px;background:var(--blue);border-bottom:3px solid var(--ink);padding:14px 22px;font-family:var(--fd);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.pass-body{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;padding:22px}
@media (max-width:480px){.pass-body{grid-template-columns:minmax(0,1fr)}}
.pass-photo{width:120px;height:140px;border:2.5px solid var(--ink);border-radius:16px;background:var(--sky2);display:flex;align-items:center;justify-content:center;padding:10px}
.pass-info{margin:0;display:flex;flex-direction:column;gap:10px}
.pass-info div{border-bottom:1.5px dashed #E2D3A8;padding-bottom:8px}
.pass-info dt{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#8A7A50}
.pass-info dd{margin:2px 0 0;font-weight:700;font-size:16px}
.pass-stats{display:flex;flex-direction:column;gap:10px;padding:0 22px 20px}
.ps{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr);gap:12px;align-items:center;font-size:14px;font-weight:700}
.ps b{height:14px;border:2px solid var(--ink);border-radius:99px;background:var(--white);overflow:hidden}
.ps i{display:block;height:100%;width:var(--w);background:var(--sun);border-right:2px solid var(--ink)}
.ps:last-child i{background:var(--coral)}
.pass-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:3px dashed var(--ink);padding:16px 22px}
.pass-foot .hand{font-size:24px;color:var(--ink)}
.stamp{flex:none;font-family:var(--fd);font-weight:800;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:#C8402A;border:3px solid #C8402A;border-radius:10px;padding:6px 12px;transform:rotate(-12deg)}
.values{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:24px;margin-top:32px;position:relative;z-index:1}
.val{background:#13284A;border:2px solid #24406B;border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:10px;transition:transform .3s,border-color .3s}
.val:hover{transform:translateY(-6px);border-color:var(--sun)}
.v-ic{width:52px;height:52px;border-radius:16px;border:2.5px solid var(--ink);display:flex;align-items:center;justify-content:center}
.v-ic svg{width:26px;height:26px;fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.val h3{margin:4px 0 0;font-family:var(--fd);font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--white)}
.val p{font-size:15px;line-height:1.6}
.brand{position:relative;margin-top:28px;background:#13284A;border:2px solid #24406B;border-radius:24px;padding:22px;display:flex;flex-direction:column;gap:16px}
.b-lbl{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#B9C8E2}
.brand .palette{margin:0;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.brand .sw{aspect-ratio:auto;min-height:88px;border:2.5px solid var(--ink);border-radius:16px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:2px;padding:12px;font-family:inherit;color:var(--ink);cursor:pointer;text-align:left;transition:transform .25s}
.brand .sw:hover{transform:translateY(-4px)}
.brand .sw b{font-size:15px}.brand .sw span{font-size:12px;font-weight:700;opacity:.75}
.brand .sw.dark{color:var(--white);border-color:#2C4670}
.fonts{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:baseline;font-size:20px;color:var(--white)}
.toast{position:absolute;right:22px;top:18px;background:var(--sun);color:var(--ink);font-weight:800;font-size:14px;border-radius:99px;padding:6px 14px;opacity:0;pointer-events:none}


/* ===== équipage ===== */
.crew{margin-top:32px;background:#13284A;border:2px solid #24406B;border-radius:28px;padding:clamp(22px,3vw,34px)}
.crew-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.crew-head h3{margin:6px 0 0;font-family:var(--fd);font-weight:800;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.03em;color:var(--white)}
.mates{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:16px}
.mate{perspective:1000px;min-height:290px}
.mate-in{position:relative;width:100%;height:100%;min-height:290px;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.mate:hover .mate-in,.mate:focus-within .mate-in{transform:rotateY(180deg)}
.mate-front,.mate-back{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:2.5px solid var(--ink);border-radius:22px;padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}
.mate-front{background:var(--white);color:var(--ink);box-shadow:5px 5px 0 var(--ink)}
.mate-back{transform:rotateY(180deg);color:var(--ink);justify-content:center;gap:12px}
.mate-back p{margin:0;font-size:15px;line-height:1.55;color:var(--ink)!important}
.mate-back .hand{font-size:20px;color:var(--ink)}
.m-photo{width:110px;height:110px;border-radius:50%;border:2.5px solid var(--ink);display:flex;align-items:center;justify-content:center;margin-bottom:8px;overflow:hidden}
.m-photo > span{font-size:12px;font-weight:800;color:var(--ink);opacity:.6;display:block}
.m-photo > span[data-floo]{opacity:1}
.m-rank{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:99px;border:1.5px solid var(--ink);background:var(--sky)}
.mate h3{margin:6px 0 0;font-family:var(--fd);font-weight:800;font-size:24px;letter-spacing:-.03em}
.m-role{font-size:14px;font-weight:700;color:var(--mute)}
@media (hover:none){.mate:active .mate-in{transform:rotateY(180deg)}}


/* ===== témoignages v2 ===== */
.reviews{overflow:hidden}
.score{display:flex;align-items:center;gap:18px;background:var(--white);border:2.5px solid var(--ink);border-radius:24px;padding:16px 22px;box-shadow:6px 6px 0 var(--ink)}
.sc-num{display:flex;align-items:baseline;font-family:var(--fd);font-weight:800;letter-spacing:-.05em}
.sc-num b{font-size:56px;line-height:1}
.sc-num span{font-size:22px;color:var(--mute)}
.sc-info{display:flex;flex-direction:column;gap:2px;font-size:14px;color:var(--mute)}
.sc-info b{color:var(--ink)}
.sc-stars{color:var(--sun);font-size:22px;letter-spacing:2px;-webkit-text-stroke:1px var(--ink)}
.sc-link{font-weight:800;color:var(--blue-d);margin-top:4px;min-height:28px;display:inline-flex;align-items:center}
.feat{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:stretch}
@media (max-width:900px){.feat{grid-template-columns:minmax(0,1fr)}}
.feat-quote{position:relative;margin:0;background:var(--ink);color:var(--white);border-radius:32px;padding:clamp(30px,4vw,52px);display:flex;flex-direction:column;justify-content:space-between;gap:30px;box-shadow:8px 8px 0 var(--blue)}
.fq-mark{width:64px;fill:var(--sun)}
.feat-quote blockquote{margin:0;font-family:var(--fd);font-weight:700;font-size:clamp(24px,2.6vw,36px);line-height:1.25;letter-spacing:-.02em}
mark{background:linear-gradient(transparent 55%,rgba(255,212,92,.85) 55%);color:inherit;padding:0 .08em}
.feat-quote mark{background:linear-gradient(transparent 58%,rgba(77,168,255,.7) 58%)}
.feat-quote figcaption{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:14px;color:#B9C8E2}
.feat-quote figcaption b{display:block;color:var(--white);font-size:17px}
.fq-result{margin-left:auto;display:flex;flex-direction:column;background:var(--sun);color:var(--ink);border:2.5px solid var(--ink);border-radius:16px;padding:8px 16px;font-family:var(--fd);font-weight:800;font-size:20px;transform:rotate(-3deg)}
.fq-result small{font-family:var(--fb);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.rc-av{flex:none;width:46px;height:46px;border-radius:50%;border:2.5px solid var(--ink)}
.rc-av.big{width:60px;height:60px;border-color:var(--white)}
.feat-video{position:relative;display:flex;flex-direction:column}
.fv-screen{position:relative;flex:1;min-height:300px;border:3px solid var(--ink);border-radius:32px;background:repeating-linear-gradient(135deg,#DDEEFF 0 18px,#CFE5FF 18px 36px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;box-shadow:8px 8px 0 var(--ink);overflow:hidden}
.fv-play{width:92px;height:92px;border-radius:50%;border:3px solid var(--ink);background:var(--coral);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 0 rgba(255,122,89,.55);animation:play 2s infinite;transition:transform .25s}
.fv-play:hover{transform:scale(1.08)}
.fv-play svg{width:38px;height:38px;fill:var(--ink);margin-left:5px}
@keyframes play{70%{box-shadow:0 0 0 22px rgba(255,122,89,0)}100%{box-shadow:0 0 0 0 rgba(255,122,89,0)}}
.fv-label{font-weight:800;font-size:15px;background:var(--white);border:2px solid var(--ink);border-radius:99px;padding:6px 14px}
.fv-floo{position:absolute;width:130px;right:-20px;bottom:-34px;transform:rotate(8deg)}
.fv-note{position:absolute;left:-10px;bottom:-40px;font-size:24px;line-height:1;transform:rotate(-5deg)}
.rails{display:flex;flex-direction:column;gap:22px;margin-top:90px}
.rail{overflow:hidden;padding:8px 0 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.rail-t{display:flex;gap:22px;width:max-content;animation:rail 46s linear infinite}
.rail.rev .rail-t{animation-direction:reverse;animation-duration:52s}
.rail:hover .rail-t{animation-play-state:paused}
@keyframes rail{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 11px))}}
.rcard{flex:none;width:min(84vw,400px);margin:0;background:var(--bg);border:2.5px solid var(--ink);border-radius:26px;padding:26px;display:flex;flex-direction:column;gap:16px;box-shadow:5px 5px 0 var(--ink);transition:transform .3s,box-shadow .3s}
.rcard:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:9px 9px 0 var(--ink)}
.rc-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.rc-stars{color:var(--sun);font-size:18px;letter-spacing:2px;-webkit-text-stroke:1px var(--ink)}
.rc-kind{font-size:12px;font-weight:800;padding:5px 11px;border-radius:99px;border:1.5px solid var(--ink);background:var(--white)}
.rcard blockquote{margin:0;font-size:17px;line-height:1.6}
.rcard figcaption{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--mute);margin-top:auto}
.rcard figcaption b{display:block;color:var(--ink);font-size:16px}
.rails-hint{text-align:center;margin:18px 0 0;font-size:14px;font-weight:700;color:var(--mute)}


/* ===== aperçus de sites (concepts) ===== */
.shot{position:relative;container-type:inline-size;background:#fff}
.shot .mk{position:absolute;inset:-10% 0;padding:calc(10% + 4cqw) 5cqw 4cqw;display:flex;flex-direction:column;gap:3cqw;overflow:hidden;text-align:left}
.concept{position:absolute;left:12px;bottom:12px;z-index:2;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-radius:99px;padding:4px 10px}
.mk-nav{display:flex;align-items:center;justify-content:space-between;gap:2cqw;font-size:2.4cqw;letter-spacing:.12em}
.mk-links{display:flex;gap:1.6cqw}.mk-links i{display:block;width:6cqw;height:.9cqw;border-radius:9px;background:currentColor;opacity:.35}
.mk-btn{font-size:1.9cqw;font-weight:800;padding:1.1cqw 2.2cqw;border-radius:99px;letter-spacing:.02em}
.mk small{font-size:1.7cqw;font-weight:800;letter-spacing:.18em;opacity:.7}
.mk h4{margin:0;font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.02;letter-spacing:-.02em}
.mk-row{flex:1;display:grid;grid-template-columns:1.1fr 1fr;gap:4cqw;align-items:center}
.mk-copy{display:flex;flex-direction:column;gap:2.4cqw;align-items:flex-start}
/* Olea */
.mk-olea{background:#F3ECE0;color:#2F3A22}
.mk-olea .mk-btn{background:#55663A;color:#F3ECE0}
.mk-olea h4{font-size:6.4cqw;font-style:italic}
.mk-plate{position:relative;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,#FFFDF8 0 52%,#E8DCC8 53% 56%,#FFFDF8 57% 100%);box-shadow:0 2cqw 5cqw rgba(60,50,30,.25)}
.mk-plate span{position:absolute;border-radius:50%}
.mk-plate span:nth-child(1){inset:30% 34% 36% 30%;background:radial-gradient(circle at 40% 35%,#E8693F,#B33A1E)}
.mk-plate span:nth-child(2){width:14%;height:14%;left:56%;top:30%;background:#6E8B3D}
.mk-plate span:nth-child(3){width:10%;height:10%;left:28%;top:58%;background:#F2C14E}
.mk-plate span:nth-child(4){width:24%;height:6%;left:48%;top:62%;border-radius:9px;background:#7A9A4A;transform:rotate(-20deg)}
.mk-strip{display:flex;gap:2cqw}.mk-strip span{flex:1;font-size:1.8cqw;font-weight:700;padding:1.6cqw;border:1px solid #CDBFA6;border-radius:1.2cqw;text-align:center}
/* Vélin */
.mk-velin{background:#EBDDD3;color:#3B2A24;align-items:center;text-align:center}
.mk-velin .mk-nav{width:100%}
.mk-cart{font-size:1.9cqw;font-weight:700}
.mk-velin h4{font-size:7cqw;text-align:center}
.mk-bottles{flex:1;display:flex;align-items:flex-end;justify-content:center;gap:5cqw;width:100%}
.mk-bottles span{position:relative;width:13cqw;border-radius:3cqw 3cqw 2cqw 2cqw;box-shadow:inset -2cqw 0 0 rgba(0,0,0,.08),0 2cqw 4cqw rgba(80,40,30,.2)}
.mk-bottles span::before{content:"";position:absolute;left:30%;right:30%;top:-5cqw;height:5cqw;border-radius:1cqw 1cqw 0 0;background:#3B2A24}
.mk-bottles .b1{height:26cqw;background:#C98F7A}.mk-bottles .b2{height:34cqw;background:#F6EFE8}.mk-bottles .b3{height:22cqw;background:#A7B49A}
/* Nordhaus */
.mk-nord{background:#0F1E2E;color:#F2F4F6}
.mk-nord .mk-btn{background:#D9B26F;color:#0F1E2E}
.mk-nord h4{font-size:5.6cqw}
.mk-search{display:flex;align-items:center;gap:2cqw;background:#F2F4F6;color:#5A6676;border-radius:99px;padding:1cqw 1cqw 1cqw 3cqw;font-size:1.9cqw;width:100%}
.mk-search span{flex:1}.mk-search b{background:#0F1E2E;color:#fff;border-radius:99px;padding:1.2cqw 2.4cqw}
.mk-house{position:relative;aspect-ratio:4/5;border-radius:2cqw;overflow:hidden}
.mk-house .sky{position:absolute;inset:0;background:linear-gradient(#F4B183,#E98A6B 45%,#6B4D6E)}
.mk-house .home{position:absolute;left:12%;right:12%;bottom:0;height:62%;background:#1B2B3C;clip-path:polygon(0 38%,50% 0,100% 38%,100% 100%,0 100%)}
.mk-house .home::after{content:"";position:absolute;left:38%;bottom:0;width:24%;height:36%;background:#F2C14E}
.mk-house .price{position:absolute;left:4cqw;top:3cqw;font-size:2cqw;font-weight:800;background:#fff;color:#0F1E2E;border-radius:99px;padding:.8cqw 2cqw}
/* Forge */
.mk-forge{background:#2A211C;color:#EAD9C6;align-items:center;justify-content:center}
.mk-phones{display:flex;align-items:center;gap:4cqw}
.mk-phones .ph{position:relative;width:20cqw;aspect-ratio:9/16;border-radius:3cqw;border:1cqw solid #12100E;background:repeating-linear-gradient(100deg,#8A5A36 0 2cqw,#9C6B43 2cqw 3cqw,#7A4E2E 3cqw 5cqw)}
.mk-phones .ph:first-child{filter:grayscale(.7) brightness(.7)}
.mk-phones .mid{width:25cqw;background:repeating-linear-gradient(95deg,#C8925E 0 2cqw,#D6A270 2cqw 3.4cqw,#B47F4E 3.4cqw 5cqw)}
.mk-phones .tag{position:absolute;left:1.6cqw;top:1.6cqw;font-size:1.7cqw;font-weight:800;background:#EAD9C6;color:#2A211C;border-radius:99px;padding:.6cqw 1.4cqw}
.mk-phones .likes{position:absolute;left:1.6cqw;bottom:1.6cqw;font-size:1.8cqw;font-weight:800;color:#fff}
.mk-handle{font-size:2.2cqw;letter-spacing:.06em}
/* Kinetic */
.mk-kin{background:#DCE7D8;color:#1E3326}
.mk-kin .mk-btn{background:#1E3326;color:#DCE7D8}
.mk-kin .mk-nav b{font-size:3.4cqw;letter-spacing:0}
.mk-kin h4{font-family:var(--fd);font-weight:800;font-size:7.6cqw;letter-spacing:-.04em;line-height:.95}
.mk-rings{position:absolute;right:8cqw;top:30%;width:36cqw;aspect-ratio:1}
.mk-rings span{position:absolute;inset:0;border-radius:50%;border:1.2cqw solid #F28C6B}
.mk-rings span:nth-child(2){inset:16%;border-color:#1E3326;opacity:.5}.mk-rings span:nth-child(3){inset:34%;background:#F28C6B;border:none}
.mk-phone{position:absolute;right:30cqw;bottom:6cqw;width:15cqw;aspect-ratio:9/16;border-radius:2.4cqw;background:#1E3326;display:flex;align-items:center;justify-content:center;color:#F28C6B;font-style:normal;font-size:4cqw;transform:rotate(-8deg)}
.mk-phone i{font-style:normal}
/* Lumen */
.mk-lumen{background:#1C1547;color:#EEEAFF}
.mk-lumen .mk-btn{background:#9B87FF;color:#1C1547}
.mk-lumen h4{font-family:var(--fd);font-weight:800;font-size:6.6cqw;letter-spacing:-.04em;max-width:80%}
.mk-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4cqw;margin-top:auto}
.mk-cards span{height:12cqw;border-radius:2cqw;background:#2B2166;border:1px solid #3E3290;padding:2cqw;display:flex;align-items:flex-end}
.mk-cards i{display:block;height:1.2cqw;border-radius:9px;background:#9B87FF}
.wide .shot .mk h4{font-size:4.4cqw}
.wide .mk-plate{width:22cqw;justify-self:center}
.wide .mk-nav{font-size:1.6cqw}.wide .mk-btn{font-size:1.4cqw}.wide .mk small{font-size:1.3cqw}.wide .mk-strip span{font-size:1.3cqw;padding:1cqw}
.wide .shot .mk{gap:2cqw;padding:calc(10% + 2.5cqw) 6cqw 2.5cqw}
.wtags .sector{background:var(--sun)}
/* étiquettes exemple */
.ex{flex:none;margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border:1.5px dashed currentColor;border-radius:99px;padding:3px 8px;opacity:.7}
.ex-feat{position:absolute;right:22px;top:22px;color:#B9C8E2}
.fv-screen .ex{margin:0}
.rc-av{display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;color:var(--ink)}

/* ===== MENU v2 ===== */
.nav{padding:12px 0;transition:padding .3s}
.nav-in{position:relative;transition:padding .3s,box-shadow .3s,background-color .3s}
.nav.scrolled{padding:6px 0}
.nav.scrolled .nav-in{padding-top:5px;padding-bottom:5px;box-shadow:3px 3px 0 var(--ink);background:rgba(255,255,255,.94)}
.logo .lm{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.logo:hover .lm{transform:rotate(-12deg) scale(1.12)}
.links{position:relative;gap:4px}
.links a.nl{position:relative;z-index:1;padding:10px 16px;border-radius:999px;transition:color .25s}
.links a.nl::after{display:none}
.links a.nl.on{color:var(--ink)}
.nav-ind{position:absolute;z-index:0;top:50%;height:40px;margin-top:-20px;left:0;width:0;border-radius:999px;background:var(--sun);border:2px solid var(--ink);opacity:0;transition:left .45s cubic-bezier(.2,.7,.2,1),width .45s cubic-bezier(.2,.7,.2,1),opacity .3s}
.nav-right{display:flex;align-items:center;gap:12px}
.nav-status{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--mute);white-space:nowrap}
.nav-status i{width:9px;height:9px;border-radius:50%;background:#3BB273;box-shadow:0 0 0 0 rgba(59,178,115,.6);animation:ckp 1.8s infinite}
.nav-cta{min-height:46px;padding:0 20px;font-size:15px;box-shadow:none}
.burger{display:none;width:48px;height:48px;border-radius:50%;border:2px solid var(--ink);background:var(--sun);cursor:pointer;position:relative}
.burger span{position:absolute;left:13px;right:13px;height:2.5px;border-radius:2px;background:var(--ink);transition:transform .35s,top .35s}
.burger span:nth-child(1){top:18px}.burger span:nth-child(2){top:26px}
.burger[aria-expanded="true"] span:nth-child(1){top:22px;transform:rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){top:22px;transform:rotate(-45deg)}
.nav-progress{position:relative;height:4px;margin:6px 28px 0;border-radius:4px;overflow:hidden}
.nav-progress i{display:block;height:100%;width:0;background:var(--blue-d);border-radius:4px}
@media (max-width:1080px){.nav-status{display:none}}
@media (max-width:860px){.links{display:none}.burger{display:block}.nav-cta{display:none}}
.mnav{position:fixed;inset:0;z-index:39;background:var(--blue);padding:calc(180px + env(safe-area-inset-top,0px)) 28px calc(40px + env(safe-area-inset-bottom,0px));overflow:auto}
.mnav-in{display:flex;flex-direction:column;gap:6px;max-width:600px;margin:0 auto;position:relative;min-height:100%}
.mnav .ml:not(.btn){display:flex;align-items:baseline;gap:14px;font-family:var(--fd);font-weight:800;font-size:clamp(40px,11vw,64px);letter-spacing:-.04em;padding:6px 0;border-bottom:2.5px solid rgba(11,27,51,.15)}
.mnav .ml small{font-family:var(--fb);font-size:14px;font-weight:800;opacity:.6}
.menu-open .buddy{display:none}
.mnav-floo{width:150px;margin:30px 0 0 auto}

/* ===== FAQ v2 ===== */
.fq-flow{display:inline-block;color:var(--white);background:var(--blue-d);border:3px solid var(--ink);border-radius:18px;padding:0 .14em;transform:rotate(-3deg);box-shadow:5px 5px 0 var(--ink)}
.fq-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:28px}
.fq-search{flex:1 1 320px;max-width:520px;display:flex;align-items:center;gap:10px;background:var(--white);border:2.5px solid var(--ink);border-radius:999px;padding:0 18px;min-height:56px;box-shadow:4px 4px 0 var(--ink)}
.fq-search svg{width:22px;height:22px;flex:none;fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round}
.fq-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:16px;color:var(--ink);min-height:50px}
.fq-search:focus-within{box-shadow:4px 4px 0 var(--blue)}
.fq-tabs{display:flex;flex-wrap:wrap;gap:8px}
.fq-tab{min-height:46px;padding:0 18px;border-radius:999px;border:2.5px solid var(--ink);background:var(--white);font-family:inherit;font-weight:800;font-size:14px;color:var(--ink);cursor:pointer;transition:background-color .2s,transform .2s}
.fq-tab:hover{transform:translateY(-2px)}
.fq-tab.on{background:var(--ink);color:var(--white)}
.fq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:32px;align-items:start}
@media (max-width:900px){.fq-grid{grid-template-columns:minmax(0,1fr)}}
.fq-list{display:flex;flex-direction:column;gap:12px}
.qa{background:var(--white);border:2.5px solid var(--ink);border-radius:22px;transition:box-shadow .3s,background-color .3s}
.qa.open{box-shadow:6px 6px 0 var(--ink);background:#FFFDF5}
.qa[hidden]{display:none}
.qa-q{width:100%;min-height:72px;display:flex;align-items:center;gap:16px;padding:16px 20px;background:transparent;border:none;cursor:pointer;text-align:left;font-family:var(--fd);font-weight:700;font-size:clamp(17px,1.5vw,21px);letter-spacing:-.02em;color:var(--ink)}
.qa-n{flex:none;font-family:var(--fb);font-size:13px;font-weight:800;color:var(--blue-d);width:28px}
.qa-t{flex:1}
.qa-cat{flex:none;font-family:var(--fb);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:99px;border:1.5px solid var(--line);color:var(--mute)}
@media (max-width:560px){.qa-cat{display:none}}
.qa-i{flex:none;width:38px;height:38px;border-radius:50%;border:2px solid var(--ink);background:var(--sun);position:relative;transition:transform .4s cubic-bezier(.2,.7,.2,1),background-color .3s}
.qa-i::before,.qa-i::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2.5px;background:var(--ink);transform:translate(-50%,-50%)}
.qa-i::after{transform:translate(-50%,-50%) rotate(90deg)}
.qa.open .qa-i{transform:rotate(135deg);background:var(--blue)}
.qa-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1)}
.qa.open .qa-a{grid-template-rows:1fr}
.qa-a > div{overflow:hidden}
.qa-a p{margin:0;padding:0 24px 22px 64px;font-size:16px;line-height:1.7;color:var(--mute)}
@media (max-width:560px){.qa-a p{padding-left:20px}}
.fq-empty{margin:0;padding:24px;border:2.5px dashed var(--ink);border-radius:22px;text-align:center;font-weight:700}
.fq-empty a{color:var(--blue-d);text-decoration:underline}
.fq-aside{position:sticky;top:calc(120px + env(safe-area-inset-top,0px));background:var(--sky2);border:2.5px solid var(--ink);border-radius:28px;padding:28px;display:flex;flex-direction:column;gap:14px;box-shadow:6px 6px 0 var(--ink)}
.fq-af{width:130px;margin:-60px auto 0}
.fq-aside h3{margin:0;font-family:var(--fd);font-weight:800;font-size:24px;letter-spacing:-.03em;line-height:1.1}
.fq-aside p{margin:0;font-size:15px;line-height:1.6;color:var(--mute)}
.fq-mail{text-align:center;font-size:14px;font-weight:700;color:var(--blue-d);text-decoration:underline;min-height:32px;display:flex;align-items:center;justify-content:center}

/* ===== CONTACT v2 ===== */
.cta-top{text-align:center;max-width:980px;margin:0 auto 56px;display:flex;flex-direction:column;align-items:center}
.cta-top h2{text-align:center!important}
.cta-top p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.cta .cta-grid{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:clamp(28px,4vw,56px);align-items:start}
@media (max-width:960px){.cta .cta-grid{grid-template-columns:minmax(0,1fr)}}
.plane{position:absolute;width:44px;fill:var(--white);stroke:var(--ink);stroke-width:2.5;stroke-linejoin:round;pointer-events:none}
.plane.p1{left:-60px;top:22%;animation:fly 16s linear infinite}
.plane.p2{left:-60px;top:62%;width:32px;animation:fly 22s linear infinite 7s}
@keyframes fly{0%{transform:translate(0,0) rotate(8deg)}50%{transform:translate(55vw,-60px) rotate(-6deg)}100%{transform:translate(115vw,20px) rotate(10deg)}}
.cta-side{display:flex;flex-direction:column;gap:20px}
.howto{background:var(--white);border:2.5px solid var(--ink);border-radius:26px;padding:24px;box-shadow:6px 6px 0 var(--ink)}
.ht-lbl{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-d)}
.ht-steps{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:0;position:relative}
.ht-steps::before{content:"";position:absolute;left:19px;top:20px;bottom:20px;border-left:2.5px dashed var(--ink);opacity:.3}
.ht-steps li{position:relative;display:flex;align-items:center;gap:16px;padding:10px 0}
.ht-n{flex:none;width:40px;height:40px;border-radius:50%;border:2.5px solid var(--ink);background:var(--sun);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:800;font-size:17px;position:relative;z-index:1}
.ht-steps li:nth-child(2) .ht-n{background:var(--blue)}.ht-steps li:nth-child(3) .ht-n{background:var(--coral)}
.ht-steps b{display:block;font-size:17px}
.ht-steps small{font-size:14px;color:var(--mute)}
.alt{display:flex;flex-direction:column;gap:10px}
.alt-c{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:rgba(255,255,255,.75);border:2.5px solid var(--ink);border-radius:20px;padding:12px 16px;font-family:inherit;color:var(--ink);cursor:pointer;transition:transform .25s,box-shadow .25s,background-color .25s}
.alt-c:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink);background:var(--white)}
.alt-ic{flex:none;width:46px;height:46px;border-radius:14px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center}
.alt-ic svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.alt-c b{display:block;font-size:16px}
.alt-c small{font-size:13px;color:var(--mute)}
.cta .team{margin-top:6px}
.form-wrap{position:relative;margin-top:70px}
.form-wrap .form{margin-top:0}
.f-prog{position:relative;height:28px;border:2px solid var(--ink);border-radius:99px;background:var(--sky);overflow:hidden}
.f-prog i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--sun);transition:width .45s cubic-bezier(.2,.7,.2,1)}
.f-prog span{position:relative;display:flex;align-items:center;justify-content:center;height:100%;font-size:12px;font-weight:800}
.pick.single .pk[aria-pressed="true"]{background:var(--sun)}
.cta .form-ok{margin:0!important;font-size:15px;max-width:none}
.cta .f-legal,.f-legal{margin:0!important;max-width:none;font-size:12px!important;line-height:1.5;color:var(--mute);text-align:center}
.form-done{background:var(--white);border:3px solid var(--ink);border-radius:32px;padding:40px 30px;box-shadow:10px 10px 0 var(--ink);display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.form-done[hidden]{display:none}
.form-done h3{margin:0;font-family:var(--fd);font-weight:800;font-size:30px;letter-spacing:-.03em}
.form-done p{margin:0!important;font-size:17px;line-height:1.6;color:var(--mute);max-width:420px}
.form-done small{font-size:12px;color:var(--mute)}

/* ===== FOOTER v2 ===== */
.f-cta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;padding-bottom:48px;margin-bottom:48px;border-bottom:1px solid #1E3558}
.f-kicker{display:block;font-family:var(--fh);font-size:28px;color:var(--sun);margin-bottom:6px}
.f-mail{display:inline-flex;align-items:center;gap:14px;background:none;border:none;padding:0;cursor:pointer;font-family:var(--fd);font-weight:800;font-size:clamp(28px,4.4vw,60px);letter-spacing:-.04em;color:var(--white);text-align:left;min-height:44px}
.f-mail #fMailTxt{background:linear-gradient(var(--sun),var(--sun)) left bottom/0 4px no-repeat;transition:background-size .4s}
.f-mail:hover #fMailTxt{background-size:100% 4px}
.f-copy{font-family:var(--fb);font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:2px solid #2C4670;border-radius:99px;padding:6px 12px;color:#B9C8E2;transition:background-color .2s,color .2s}
.f-mail:hover .f-copy{background:var(--sun);color:var(--ink);border-color:var(--sun)}
.f-live{display:flex;align-items:center;gap:8px;padding:7px 0;color:#D6E2F5;font-weight:700}
.f-live i{width:9px;height:9px;border-radius:50%;background:#3BB273;animation:ckp 1.8s infinite}
.f-info{padding:5px 0;color:#8EA3C6;font-size:14px}
.wm{display:flex}
.wm span{display:inline-block;transition:transform .35s cubic-bezier(.2,.7,.2,1),color .35s;cursor:default}
.wm span:hover{transform:translateY(-14%) rotate(-6deg);color:var(--blue)}
.totop{display:inline-flex;align-items:center;gap:8px}
.tt-floo{display:inline-block;width:34px;transition:transform .4s}
.totop:hover .tt-floo{transform:translateY(-6px) rotate(-10deg)}


/* ===== contact : nouveau ciel ===== */
.cta{background:linear-gradient(180deg,#CFE7FF 0%,#9CCFFF 38%,#5FB1FF 72%,#4DA8FF 100%);border-top:none}
.cta > .wrap{position:relative;z-index:2}
.cta .ground{position:relative;z-index:3;margin-top:80px}
.cta-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.sky-sun{position:absolute;left:50%;top:6%;width:min(520px,70vw);aspect-ratio:1;margin-left:calc(min(520px,70vw) / -2);border-radius:50%;background:radial-gradient(circle,rgba(255,212,92,.55) 0%,rgba(255,212,92,.18) 45%,rgba(255,212,92,0) 70%)}
.sky-sun span{position:absolute;inset:30%;border-radius:50%;background:#FFE08A;box-shadow:0 0 0 18px rgba(255,224,138,.35),0 0 0 44px rgba(255,224,138,.18),0 0 0 80px rgba(255,224,138,.08);animation:sunp 6s ease-in-out infinite}
@keyframes sunp{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
.sky-route{position:absolute;left:0;right:0;top:4%;width:100%;height:46%;opacity:.7}
.cta .plane{fill:#FFFFFF;stroke:#0B1B33;stroke-width:2;filter:drop-shadow(0 6px 8px rgba(11,27,51,.18))}
.spark{position:absolute;color:#FFFFFF;font-size:18px;animation:twk 2.6s ease-in-out infinite;text-shadow:0 0 12px rgba(255,255,255,.8)}
.spark.k1{left:12%;top:14%}.spark.k2{right:14%;top:22%;font-size:24px;animation-delay:.7s}.spark.k3{left:30%;top:46%;font-size:13px;animation-delay:1.4s}.spark.k4{right:28%;top:58%;animation-delay:2s}
.sea{position:absolute;left:-10%;right:-70%}
.sea.l1{bottom:0;height:340px;opacity:0.5;background-image:radial-gradient(circle at 50% 100%,#FFFFFF 0 58%,transparent 59%),radial-gradient(circle at 50% 100%,#FFFFFF 0 58%,transparent 59%),linear-gradient(#FFFFFF,#FFFFFF);background-size:300px 170px,210px 132px,100% calc(100% - 166px);background-position:0 0,150px 37px,0 100%;background-repeat:repeat-x,repeat-x,no-repeat;animation:sea 70s linear infinite }
.sea.l2{bottom:0;height:300px;opacity:0.75;background-image:radial-gradient(circle at 50% 100%,#FFFFFF 0 58%,transparent 59%),radial-gradient(circle at 50% 100%,#FFFFFF 0 58%,transparent 59%),linear-gradient(#FFFFFF,#FFFFFF);background-size:380px 200px,266px 156px,100% calc(100% - 196px);background-position:0 0,190px 44px,0 100%;background-repeat:repeat-x,repeat-x,no-repeat;animation:sea 52s linear infinite reverse}
.sea.l3{bottom:0;height:270px;opacity:1;background-image:radial-gradient(circle at 50% 100%,#F2F8FF 0 58%,transparent 59%),radial-gradient(circle at 50% 100%,#F2F8FF 0 58%,transparent 59%),linear-gradient(#F2F8FF,#F2F8FF);background-size:460px 240px,322px 187px,100% calc(100% - 236px);background-position:0 0,230px 52px,0 100%;background-repeat:repeat-x,repeat-x,no-repeat;animation:sea 38s linear infinite }
.sea.l3::after{content:"";position:absolute;left:0;right:0;bottom:-40px;height:60px;background:#F2F8FF}
@keyframes sea{from{transform:translateX(0)}to{transform:translateX(-460px)}}
@media (max-width:960px){.sea{opacity:.45!important}}


/* titre contact à gauche */
.cta-top.cta-left{text-align:left;align-items:flex-start;margin:0 0 8px;max-width:none}
.cta-top.cta-left h2{text-align:left!important;font-size:clamp(40px,5vw,76px)}
.cta-top.cta-left p{text-align:left!important;margin-left:0!important;margin-right:0!important;max-width:520px}
.cta .cta-grid{align-items:center}

/* ===== bandeau croisé ===== */
.mq-wrap{position:relative;padding:40px 0 48px;overflow:hidden}
.mq-wrap .mq{margin:0;padding:0;transform:none;border:2.5px solid var(--ink);border-left:none;border-right:none;overflow:hidden}
.mq-a{position:relative;z-index:2;background:var(--blue);transform:none!important;box-shadow:none}
.mq-b{position:relative;z-index:1;background:var(--sun);transform:none!important;border-top:none!important}
.mq-wrap .mq-t div{gap:28px;padding-right:28px}
.mq-a .mq-t div{padding-top:16px;padding-bottom:16px}
.mq-i{display:inline-flex;align-items:center;gap:16px;font-family:var(--fd);font-weight:800;font-size:clamp(28px,3.8vw,56px);letter-spacing:-.04em;color:var(--ink);white-space:nowrap}
.mq-i.out{color:var(--white);-webkit-text-stroke:2px var(--ink)}
.mq-ic{flex:none;width:clamp(44px,4.4vw,64px);height:clamp(44px,4.4vw,64px);border-radius:16px;border:2.5px solid var(--ink);background:var(--white);display:flex;align-items:center;justify-content:center;transform:none;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.mq-i:nth-child(4n+1) .mq-ic{background:var(--sun)}
.mq-i:nth-child(4n+3) .mq-ic{background:var(--pink)}
.mq-ic svg{width:58%;height:58%;fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.mq-i:hover .mq-ic{transform:scale(1.1)}
.mq-star{flex:none;width:clamp(22px,2.4vw,34px);height:auto;fill:var(--sun);stroke:var(--ink);stroke-width:1.6;animation:spin 8s linear infinite}
.mq-b .mq-t div{padding-top:12px;padding-bottom:12px}
.mq-p{font-family:var(--fd);font-weight:700;font-size:clamp(16px,1.7vw,22px);letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap;color:var(--ink)}
.mq-dot{flex:none;width:12px;height:12px;border-radius:50%;background:var(--ink)}
.mq-floo{position:absolute;z-index:3;width:clamp(70px,7vw,100px);top:-4px;left:0;pointer-events:none}
.mq-wrap:hover .mq-t{animation-play-state:paused}

.sea-base{position:absolute;left:0;right:0;bottom:0;height:90px;background:#F2F8FF}
.cta{padding-bottom:0}
footer{padding-top:40px}
.at-footer .buddy{opacity:0;pointer-events:none}
.buddy{transition:opacity .3s}

/* ===== HERO v3 ===== */
.hero-bg .dots{position:absolute;inset:0;background-image:radial-gradient(#BCD3EE 1.4px,transparent 1.6px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 70% 45%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 70% 70% at 70% 45%,#000 20%,transparent 75%);opacity:.9}
.hero-bg .r3{display:none}
.hero-art{aspect-ratio:1/1.02;max-width:600px}
.hero-art .glow{position:absolute;inset:4% 2% 8% 2%;border-radius:50%;background:radial-gradient(circle,rgba(77,168,255,.28),rgba(77,168,255,0) 65%);filter:blur(6px)}
.hero-art .sun{right:4%;top:2%;width:24%;box-shadow:0 0 0 14px rgba(255,212,92,.25),0 0 0 32px rgba(255,212,92,.12)}
.floo-hero{position:absolute;z-index:4;width:62%;left:19%;top:22%;margin:0}
.dash{position:absolute;z-index:2;left:2%;bottom:4%;width:56%;background:var(--white);border:2.5px solid var(--ink);border-radius:20px;box-shadow:6px 6px 0 var(--ink);overflow:hidden;transform:rotate(-5deg)}
.dash-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:2.5px solid var(--ink);background:var(--sky)}
.dash-bar i{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--ink)}
.dash-bar i:nth-child(1){background:var(--coral)}.dash-bar i:nth-child(2){background:var(--sun)}.dash-bar i:nth-child(3){background:#3BB273}
.dash-bar span{margin-left:6px;font-size:11px;font-weight:800;color:var(--mute)}
.dash-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px}
.dash-lbl{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.dash-chart{width:100%;height:auto;overflow:visible}
.dash-area{fill:rgba(77,168,255,.18)}
.dash-line{fill:none;stroke:var(--blue-d);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:drawl 1.6s cubic-bezier(.6,0,.2,1) 3.4s forwards}
@keyframes drawl{to{stroke-dashoffset:0}}

/* ===== HERO v4 : texte au centre, animations sur les côtés ===== */
.hero{position:relative;min-height:calc(100svh - 110px);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:clamp(30px,5vw,70px) 0 clamp(50px,6vw,80px);overflow:hidden}
.hero-stage{position:relative;z-index:2;width:100%;max-width:1440px;margin:0 auto;padding:0 clamp(18px,3vw,36px);box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,660px) minmax(0,1fr);align-items:center;gap:clamp(10px,2vw,30px)}
.hero-center{text-align:center;display:flex;flex-direction:column;align-items:center}
.hero-center .hero-copy{display:flex;flex-direction:column;align-items:center}
.hero-center h1{font-size:clamp(44px,5.6vw,92px)!important;margin-top:22px}
.hero-center .lead{margin-left:auto;margin-right:auto;text-align:center}
.hero-center .ctas,.hero-center .trust{justify-content:center}
.hero-center .rot-line{left:-3%}
.hero-art{position:relative;max-width:none;width:100%;aspect-ratio:1/1.15;justify-self:stretch}
.side-l .floo-hero{position:absolute;z-index:4;width:80%;left:10%;top:28%}
.side-l .orbit{position:absolute;z-index:3;inset:18% 0 14% 0}
.side-l .glow{position:absolute;inset:10% -10%;border-radius:50%;background:radial-gradient(circle,rgba(77,168,255,.25),rgba(77,168,255,0) 65%)}
.side-l .flight{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.side-l .hchip.c1{left:auto;right:2%;top:6%}
.side-l .note{position:absolute;left:0;top:14%;right:auto}
.side-r .sun{position:absolute;right:6%;top:2%;left:auto;width:38%;aspect-ratio:1}
.side-r .dash{position:absolute;left:4%;bottom:14%;width:86%;transform:rotate(4deg)}
.side-r .hchip.c2{left:-8%;right:auto;top:34%}
.side-r .hchip.c3{right:-2%;bottom:4%;top:auto}
.side-r .note2{position:absolute;right:auto!important;left:0!important;top:8%;bottom:auto!important;text-align:left}
.hspark.s1{left:6%;top:30%}.hspark.s3{right:12%;top:2%;left:auto}.hspark.s2{left:10%;top:6%;right:auto}
.hero .scrollcue{position:relative;z-index:3;margin-top:clamp(20px,3vw,40px)}
/* fond */
.hero-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.hero-bg .dots{-webkit-mask-image:radial-gradient(ellipse 60% 60% at 50% 45%,#000 10%,transparent 75%);mask-image:radial-gradient(ellipse 60% 60% at 50% 45%,#000 10%,transparent 75%)}
.h-glow{position:absolute;left:50%;top:44%;width:min(900px,90vw);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,224,138,.45) 0%,rgba(255,224,138,.12) 40%,rgba(255,224,138,0) 65%);animation:sunp 7s ease-in-out infinite}
.hero-bg .ring{left:50%;right:auto;top:44%;transform:translate(-50%,-50%);border:2px dashed #C3D9F2}
.hero-bg .r1{width:min(1100px,110vw);height:min(1100px,110vw);max-width:none;max-height:none;animation:ringspin 120s linear infinite}
.hero-bg .r2{width:min(780px,90vw);height:min(780px,90vw);max-width:none;max-height:none;border-style:solid;border-color:#DCE8F7}
.hero-bg .r3{display:block;width:min(480px,70vw);height:min(480px,70vw);max-width:none;max-height:none;border:2px dashed #C3D9F2;background:none;animation:ringspin 80s linear infinite reverse}
@keyframes ringspin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.h-plane{position:absolute;width:34px;fill:#FFFFFF;stroke:#0B1B33;stroke-width:2;stroke-linejoin:round;opacity:.8}
.h-plane.hp1{left:-50px;top:16%;animation:fly 24s linear infinite}
.h-plane.hp2{left:-50px;top:58%;width:24px;animation:fly 30s linear infinite 9s}
.h-cloud{position:absolute;height:44px;border-radius:44px;background:#FFFFFF;opacity:.9;filter:drop-shadow(0 6px 10px rgba(28,111,209,.08))}
.h-cloud::before,.h-cloud::after{content:"";position:absolute;bottom:40%;border-radius:50%;background:#FFFFFF}
.h-cloud::before{left:18%;width:44%;aspect-ratio:1}
.h-cloud::after{left:46%;width:34%;aspect-ratio:1}
.h-cloud.hc1{width:150px;left:4%;top:12%;animation:hcl 28s ease-in-out infinite alternate}
.h-cloud.hc2{width:110px;right:6%;top:9%;animation:hcl 34s ease-in-out infinite alternate-reverse}
.h-cloud.hc3{width:90px;left:38%;top:5%;opacity:.7;animation:hcl 40s ease-in-out infinite alternate}
@keyframes hcl{to{transform:translateX(120px)}}
.h-sea{position:absolute;left:0;right:0;bottom:0;height:300px;opacity:.95}
.h-sea .sea.l1{opacity:.7;background-image:radial-gradient(circle at 50% 100%,#DDEEFF 0 58%,transparent 59%),radial-gradient(circle at 50% 100%,#DDEEFF 0 58%,transparent 59%),linear-gradient(#DDEEFF,#DDEEFF)}
.h-sea .sea.l2{opacity:.9;background-image:radial-gradient(circle at 50% 100%,#EAF3FF 0 60%,transparent 61%),radial-gradient(circle at 50% 100%,#EAF3FF 0 60%,transparent 61%),linear-gradient(#EAF3FF,#EAF3FF)}
.h-sea .sea.l3{background-image:radial-gradient(circle at 50% 100%,#FFFFFF 0 62%,transparent 63%),radial-gradient(circle at 50% 100%,#FFFFFF 0 62%,transparent 63%),linear-gradient(#FFFFFF,#FFFFFF)}
.h-sea .sea.l1{height:260px}.h-sea .sea.l2{height:200px}.h-sea .sea.l3{height:140px}
.h-sea .sea.l3::after{display:none}
@media (max-width:1100px){
  .hero-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"c c" "l r"}
  .hero-center{grid-area:c}.side-l{grid-area:l}.side-r{grid-area:r}
  .hero-art{max-width:360px;justify-self:center}
}
@media (max-width:600px){
  .hero-art .note,.hero-art .note2,.side-r .hchip.c3{display:none}
  .hchip{font-size:11px;padding:6px 9px}
  .ob{width:34px;height:34px;margin:-17px 0 0 -17px}.ob svg{width:18px;height:18px}
}
/* footer : mot géant propre */
.f-word{position:relative;margin-top:60px;line-height:1;overflow:hidden;padding-top:clamp(40px,6vw,90px)}
.wm{display:flex;line-height:.9;padding-bottom:.16em}
.sleepy{top:clamp(0px,2vw,30px);right:clamp(12%,22vw,26%);width:clamp(80px,11vw,170px);z-index:2}


/* hero : côté droit épuré + fond qui se fond en bas */
.side-r .sun{right:auto;left:50%;top:22%;width:58%;transform:translateX(-50%);box-shadow:0 0 0 18px rgba(255,212,92,.28),0 0 0 44px rgba(255,212,92,.14),0 0 0 80px rgba(255,212,92,.06)}
.side-r .hchip.c2{left:2%;top:62%;transform:rotate(-4deg)}
.hero-bg{-webkit-mask-image:linear-gradient(#000 70%,transparent 100%);mask-image:linear-gradient(#000 70%,transparent 100%)}
.hero{padding-bottom:clamp(30px,4vw,50px)}
.mq-wrap{padding-top:10px}


/* ===== footer : wordmark v2 ===== */
.f-word{position:relative;margin-top:56px;padding-top:clamp(70px,9vw,140px);overflow:visible;line-height:1}
.wm{display:flex!important;justify-content:space-between;width:100%;font-family:var(--fd);font-weight:800;font-size:clamp(64px,17.5vw,270px)!important;letter-spacing:0!important;line-height:.86!important;padding-bottom:.12em!important;color:#13284A}
.wm .wl{position:relative;display:inline-block;color:#132B4F;-webkit-text-stroke:2px #24406B;transition:color .35s,-webkit-text-stroke-color .35s,transform .45s cubic-bezier(.2,.7,.2,1);cursor:default}
.wm .wl:hover{color:var(--c);-webkit-text-stroke-color:#0B1B33;transform:translateY(-8%) rotate(-4deg)}
.wm.lit .wl{animation:wlit 3.2s ease-in-out}
@keyframes wlit{0%,100%{color:#132B4F}30%,60%{color:var(--c)}}
.wm .wl:nth-child(2){animation-delay:.12s}.wm .wl:nth-child(3){animation-delay:.24s}.wm .wl:nth-child(4){animation-delay:.36s}.wm .wl:nth-child(5){animation-delay:.48s}.wm .wl:nth-child(6){animation-delay:.6s}.wm .wl:nth-child(7){animation-delay:.72s}
.wm .sleepy{position:absolute!important;left:50%!important;right:auto!important;top:auto!important;bottom:88%;width:clamp(70px,9vw,150px)!important;transform:translateX(-50%) rotate(6deg)!important;-webkit-text-stroke:0;color:#FFD45C;font-family:var(--fh);font-size:initial}
.wm .sl-floo{display:block}
.wm .z{-webkit-text-stroke:0;color:var(--sun)}
.f-sign{display:block;text-align:right;margin-top:-6px;font-family:var(--fh);font-size:clamp(20px,2vw,28px);color:#8EA3C6}


/* =====================================================================
   OPTIMISATION MOBILE (≤ 760px) — n'affecte pas la version ordinateur
   ===================================================================== */
@media (max-width:760px){
  /* rythme général */
  .sec{padding:64px 0}
  .sec-head{margin-bottom:32px;gap:16px}
  .h2{font-size:clamp(32px,9vw,44px)}
  .topbar{font-size:12px;padding:8px 14px;gap:4px}
  .nav{padding:8px 0}
  .nav-progress{margin:4px 20px 0}

  /* hero */
  .hero{min-height:auto;padding:24px 0 30px}
  .hero-center h1{font-size:clamp(38px,11vw,52px)!important;margin-top:16px}
  .badge{font-size:12.5px;text-align:left}
  .hero p.lead{font-size:16px;margin-top:18px}
  .hero .ctas{flex-direction:column;align-items:stretch;width:100%;gap:12px;margin-top:26px}
  .hero .ctas .btn{justify-content:center}
  .trust{flex-direction:column;gap:8px;text-align:center;margin-top:22px}
  .hero-stage{gap:6px}
  .hero-art{max-width:200px;aspect-ratio:1/1}
  .side-l .floo-hero{width:86%;left:7%;top:24%}
  .side-l .hchip.c1{right:-6%;top:0}
  .side-r .sun{width:62%;top:16%}
  .side-r .hchip.c2{left:-4%;top:66%}
  .hero .scrollcue{display:none}
  .trust > div{text-align:center}
  .trust .stars{justify-content:center}
  .hero-stage{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"c" "l"!important}
  .side-r{display:none}
  .side-l{max-width:250px;margin-top:10px}
  .side-l .hchip.c1{right:-10%;top:4%}
  .side-l .note{display:block;left:-8%;top:10%;font-size:20px}
  .rcard figcaption{flex-wrap:wrap}
  .h-cloud{transform:scale(.6)}
  .hero-bg .r1,.hero-bg .r3{display:none}

  /* bandeau */
  .mq-wrap{padding:18px 0 26px}
  .mq-i{font-size:28px;gap:10px}
  .mq-ic{width:40px;height:40px;border-radius:12px}
  .mq-p{font-size:14px}

  /* logos */
  .logos{padding:40px 0 10px}
  .logo-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .logo-row span{min-height:52px}

  /* expertises */
  .card{padding:22px;border-radius:22px;gap:12px}
  .card h3{font-size:24px}

  /* réalisations */
  .filters,.fq-tabs{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .filters::-webkit-scrollbar,.fq-tabs::-webkit-scrollbar{display:none}
  .flt,.fq-tab{flex:none}
  .works{gap:28px}
  .work.wide .shot{aspect-ratio:16/10}
  .wide .shot .mk h4{font-size:6cqw}
  .wide .mk-plate{width:34cqw}
  .wide .mk-nav{font-size:2.4cqw}.wide .mk-btn{font-size:1.9cqw}.wide .mk small{font-size:1.7cqw}
  .wide .mk-strip{display:none}
  .go{width:44px;height:44px;font-size:18px}
  .work.add{min-height:280px}

  /* à propos */
  .meet{margin:0 8px;border-radius:28px}
  .m-head{margin-bottom:36px}
  .stage{min-height:420px;padding:18px}
  .stage .bubble{font-size:21px;max-width:190px;top:6%;left:6%}
  .st-tabs{border-radius:22px}
  .st-tab{padding:0 12px;font-size:13px}
  .pass-body{padding:18px;gap:14px}
  .pass-photo{width:96px;height:110px}
  .ps{grid-template-columns:minmax(0,1fr) 42%;gap:10px;font-size:13px}
  .pass-foot{flex-direction:column;align-items:flex-start;gap:10px}
  .values{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
  .val{padding:16px;border-radius:18px}
  .val h3{font-size:17px}
  .val p{font-size:13.5px!important;line-height:1.5}
  .v-ic{width:42px;height:42px;border-radius:12px}
  .crew{padding:18px;margin-top:24px}
  .mates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .mate,.mate-in{min-height:230px}
  .mate-front,.mate-back{padding:14px 10px}
  .m-photo{width:78px;height:78px}
  .m-rank{font-size:9.5px;padding:3px 8px;line-height:1.3}
  .mate h3{font-size:19px}
  .m-role{font-size:12.5px}
  .mate-back p{font-size:13px}

  /* plan de vol */
  .plan-perks{max-width:none}
  .plan-perks span{font-size:14px}
  .route{padding-left:40px;gap:20px}
  .line{left:14px}
  .pin{left:-40px;top:28px;width:26px;height:26px}
  .rider{left:-16px;width:56px}
  .tk-main{padding:20px}
  .tk-n{font-size:44px}
  .tk-main p{font-size:15px}
  .tk-stub{padding:16px 20px}
  .arrival .hand{font-size:26px}

  /* technologies */
  .tech-note{display:none}
  .tech{padding:22px;gap:10px}
  .t-ic{width:54px;height:54px}
  .tech h3{font-size:24px}

  /* secteurs : onglets en ligne qui défilent */
  .stabs{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:8px;margin-bottom:20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .stabs::-webkit-scrollbar{display:none}
  .stab{flex:none;width:auto!important;min-height:48px;padding:0 16px 0 12px;font-size:14px}
  .spanel{padding:22px;border-radius:26px;box-shadow:6px 6px 0 var(--ink)}
  .sp-copy h3{font-size:26px}
  .sp-copy p{font-size:15.5px}
  .sp-art{max-width:300px;padding-bottom:30px}
  .sp-note{display:none}
  .sp-floo{width:96px;left:-14px}

  /* témoignages */
  .score{width:100%;box-sizing:border-box;padding:14px 16px}
  .sc-num b{font-size:44px}
  .feat-quote{padding:26px;border-radius:26px}
  .feat-quote blockquote{font-size:21px}
  .fq-result{margin-left:0}
  .fv-screen{min-height:220px;border-radius:26px}
  .fv-floo{width:96px;right:-6px;bottom:-26px}
  .fv-note{display:none}
  .rails{margin-top:60px;gap:16px}
  .rcard{width:78vw;padding:20px}
  .rcard blockquote{font-size:15.5px}
  .rails-hint{display:none}

  /* FAQ */
  .fq-search{flex-basis:100%;max-width:none}
  .qa-q{min-height:64px;padding:14px 16px;gap:12px;font-size:16px}
  .qa-n{width:22px}
  .qa-i{width:34px;height:34px}
  .qa-a p{padding:0 18px 18px 18px;font-size:15px}
  .fq-aside{margin-top:40px}

  /* contact */
  .cta{padding-top:64px}
  .cta-top.cta-left h2{font-size:clamp(38px,11vw,50px)}
  .howto{padding:20px}
  .form{padding:22px;padding-top:74px;border-radius:26px;box-shadow:6px 6px 0 var(--ink)}
  .form h3{font-size:24px}
  .form-floo{width:140px;margin-left:-70px;top:-88px}
  .pk{min-height:42px;padding:0 14px;font-size:13.5px}
  .cta .ground{margin-top:50px;height:80px}

  /* footer */
  .f-cta{padding-bottom:36px;margin-bottom:36px}
  .f-mail{font-size:26px;flex-wrap:wrap;gap:10px}
  .f-cta .btn{width:100%;justify-content:center}
  .f-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
  .f-brand{grid-column:1 / -1}
  .f-top > .f-col:last-child{grid-column:1 / -1}
  .news .btn{flex:1 1 100%;justify-content:center}
  .f-word{margin-top:40px;padding-top:56px}
  .wm{font-size:clamp(56px,16vw,90px)!important}
  .wm .sleepy{width:62px!important}
  .f-sign{font-size:18px;margin-top:4px}
  .f-bot{flex-direction:column;align-items:flex-start;gap:12px}
  .totop{align-self:stretch;justify-content:center}
}


/* Floo posé bien droit sur la ligne du bandeau */
.mq-wrap{padding-top:64px}
.mq-floo{top:64px!important;width:clamp(70px,7vw,100px)!important;margin-top:calc(clamp(70px,7vw,100px) * -0.38);transform-origin:50% 100%}
@media (max-width:760px){.mq-wrap{padding-top:52px!important}.mq-floo{top:52px!important;width:64px!important;margin-top:-25px}}


/* ===== contenus réels ===== */
.shot.has-img{background:#fff}
.shot-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.shot.tall .shot-img{transition:object-position 6s ease-in-out}
.work:hover .shot.tall .shot-img{object-position:bottom center}
.shot:not(.tall) .shot-img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.work:hover .shot:not(.tall) .shot-img{transform:scale(1.04)}
.mk-forge2{background:#F4EDE4;color:#3A2618}
.mk-forge2 .mk-btn{background:#5B3A22;color:#F4EDE4}
.mk-forge2 h4{font-family:var(--fd);font-weight:800;font-size:6.2cqw;letter-spacing:-.03em}
.fg-hero{position:relative;aspect-ratio:4/3.2;border-radius:2cqw;overflow:hidden;background:repeating-linear-gradient(98deg,#9C6B43 0 2.4cqw,#B07A4C 2.4cqw 3.6cqw,#8A5A36 3.6cqw 6cqw)}
.fg-shelf{position:absolute;left:12%;right:12%;height:5%;background:#EAD9C6;border-radius:.6cqw;box-shadow:0 1cqw 1.4cqw rgba(0,0,0,.25)}
.fg-shelf.s1{top:24%}.fg-shelf.s2{top:48%}.fg-shelf.s3{top:72%}
.fg-badge{position:absolute;right:3cqw;bottom:3cqw;font-size:1.8cqw;font-weight:800;background:#F4EDE4;color:#3A2618;border-radius:99px;padding:.8cqw 1.8cqw}
.fg-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2cqw}
.fg-thumbs span{aspect-ratio:4/3;border-radius:1.4cqw;background:repeating-linear-gradient(95deg,#C8925E 0 1.6cqw,#D6A270 1.6cqw 2.6cqw,#B47F4E 2.6cqw 4cqw)}
.fg-thumbs span:nth-child(2){background:#3A2618}.fg-thumbs span:nth-child(4){background:#E2CDB4}
.m-photo .av-svg{width:100%;height:100%;display:block}
.av-mini{display:inline-block;width:42px;height:42px;border-radius:50%;border:2.5px solid var(--ink);margin-left:-12px;overflow:hidden;background:#fff}
.av-mini:first-child{margin-left:0}
.av-mini .av-svg{width:100%;height:100%;display:block}
.avs span.av-mini{width:42px;height:42px}
.logo-row span.lg{border-style:solid;border-color:var(--line);background:rgba(255,255,255,.6);font-size:18px;color:inherit;transition:transform .3s,box-shadow .3s}
.logo-row span.lg:hover{transform:translateY(-3px);box-shadow:4px 4px 0 var(--ink)}
.sc-num b{color:var(--coral)}


/* équipage : initiales dans des ronds identiques */
.m-photo{flex:none;width:110px!important;height:110px!important;aspect-ratio:1/1;border-radius:50%!important;display:flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box}
.m-photo > .m-init{font-family:var(--fd);font-weight:800;font-size:52px;line-height:1;color:var(--ink);letter-spacing:-.04em;opacity:1!important}
.floo-mate .m-photo > span{width:80%!important}
@media (max-width:760px){.m-photo{width:78px!important;height:78px!important}.m-photo > .m-init{font-size:36px}}

@media (prefers-reduced-motion: reduce){.dash-line{stroke-dashoffset:0}}
.dash-dot{fill:var(--sun);stroke:var(--ink);stroke-width:2.5}
.dash-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dash-kpis span{display:flex;flex-direction:column;gap:5px;font-size:11px}
.dash-kpis i{display:block;height:8px;border-radius:9px;background:var(--sky2);position:relative;overflow:hidden}
.dash-kpis i::after{content:"";position:absolute;inset:0;width:var(--w);background:var(--blue);border-radius:9px}
.orbit{position:absolute;z-index:3;inset:8% 6% 10% 6%;pointer-events:none}
.orbit-ring{position:absolute;inset:0;border:2px dashed #9CC3EA;border-radius:50%;transform:rotateX(64deg)}
.orbit-spin{position:absolute;inset:0;animation:orbit 22s linear infinite}
.ob{position:absolute;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:16px;border:2.5px solid var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:3px 3px 0 var(--ink);animation:orbit 22s linear infinite reverse}
.ob svg{width:26px;height:26px;fill:none;stroke:var(--ink);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.ob.o1{left:50%;top:0}.ob.o2{left:100%;top:50%}.ob.o3{left:50%;top:100%}.ob.o4{left:0;top:50%}
@keyframes orbit{to{transform:rotate(360deg)}}
.hspark{position:absolute;z-index:5;color:var(--sun);-webkit-text-stroke:1.2px var(--ink);font-size:26px;animation:twk 2.4s ease-in-out infinite}
.hspark.s1{left:8%;top:18%}.hspark.s2{right:10%;top:46%;font-size:18px;animation-delay:.8s}.hspark.s3{left:46%;top:4%;font-size:20px;animation-delay:1.6s}
.hchip{z-index:6}
.hchip.c1{left:-6%;top:30%}.hchip.c2{right:-4%;top:16%}.hchip.c3{right:0;bottom:12%}
.hero-art .note{z-index:6;left:4%;top:2%}
.hero-art .note2{z-index:6;right:-2%;bottom:-2%}
.flight{z-index:1}
.btn.shine{position:relative;overflow:hidden}
.btn.shine::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:shine 3.6s ease-in-out infinite 2.5s}
@keyframes shine{0%{left:-60%}35%,100%{left:130%}}

@media (max-width:600px){.ob{width:40px;height:40px;margin:-20px 0 0 -20px}.ob svg{width:20px;height:20px}.dash{width:62%}}

.hero > .wrap{width:100%;box-sizing:border-box}
.hero-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:clamp(24px,4vw,64px)}
.hero h1{font-size:clamp(46px,6.6vw,104px)}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}.loader{display:none}.draw{stroke-dashoffset:0}}
