*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}img{display:block;max-width:100%}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{list-style:none;padding:0}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--fond)}
.mods{background:#101418;color:#fff;font:600 .85rem/1.25 Arial,sans-serif;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1.1rem;padding-block:.55rem}.mods a{color:#fff;text-underline-offset:3px}.mods a[aria-current]{color:#ffb000;text-decoration:none}.mods .ret{margin-right:auto}.mods span{color:#aab2bd}
.fictif{background:#ffb000;color:#14100a;font:600 .85rem/1.3 Arial,sans-serif;text-align:center;padding-block:.5rem}
.g{padding-left:max(clamp(16px,4vw,56px),env(safe-area-inset-left,0px));padding-right:max(clamp(16px,4vw,56px),env(safe-area-inset-right,0px))}
.c{max-width:1280px;margin-inline:auto;width:100%}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
address{font-style:normal}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Animations d'images, pilotees par le defilement quand le navigateur le permet */
.mv{overflow:clip}.mv-z,.mv-d{view-timeline:--mv block}
@keyframes mv-ouvre{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
@keyframes mv-zoom{from{transform:scale(1.16)}to{transform:none}}
@keyframes mv-derive{from{transform:translateY(-5%) scale(1.12)}to{transform:translateY(5%) scale(1.12)}}
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
.mv-o{animation:mv-ouvre linear both;animation-timeline:view();animation-range:entry 5% cover 38%}
.mv-z img,.mv-z .vid{animation:mv-zoom linear both;animation-timeline:--mv;animation-range:entry 0% cover 55%}
.mv-d img{animation:mv-derive linear both;animation-timeline:--mv;animation-range:cover}
}}
/* Reseau auto : bleu atelier, jaune signal, capitales italiques. Widget de prise en charge au premier plan. */
@font-face{font-family:"Barlow Condensed";font-weight:800;font-style:italic;font-display:swap;src:url(fonts/barlow-condensed-latin-800-italic.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:700;font-display:swap;src:url(fonts/barlow-condensed-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:400;font-display:swap;src:url(fonts/barlow-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:600;font-display:swap;src:url(fonts/barlow-latin-600-normal.woff2) format("woff2")}
:root{--fond:#fff;--bleu:#12337e;--nuit:#0a1c4a;--vif:#1f56c3;--jaune:#ffd400;--encre:#0e1a33;--gris:#f1f4f9;--ligne:#d8dfeb;--mute:#52607a;--rouge:#d7261e;--t:"Barlow Condensed","Arial Narrow",sans-serif;--x:"Barlow",Arial,sans-serif;color-scheme:light}
body{margin:0;background:var(--fond);color:var(--encre);font:400 1.05rem/1.55 var(--x)}
h1,h2{font-family:var(--t);font-weight:800;font-style:italic;text-transform:uppercase;line-height:1;letter-spacing:.005em}
h1{font-size:clamp(2.7rem,6.6vw,5.4rem)}h2{font-size:clamp(2rem,4.2vw,3.2rem);color:var(--bleu)}
h3{font-family:var(--t);font-weight:700;font-size:1.4rem;line-height:1.1;text-transform:uppercase}
p{max-width:64ch}a{color:inherit}
.util{background:var(--nuit);color:#d9e2f6;font-size:.8rem;padding-block:.4rem}.util .c{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.util a{text-decoration:none}
.tt{background:#fff;padding-block:.75rem;border-bottom:1px solid var(--ligne)}.tt .c{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{font:800 italic clamp(1.45rem,2.6vw,2rem)/1 var(--t);text-transform:uppercase;color:var(--bleu);text-decoration:none;white-space:nowrap}
.logo span{background:var(--jaune);padding:0 .25em;color:var(--bleu);margin-right:.25em}
.appelb{background:var(--jaune);color:var(--encre);font:700 clamp(1.15rem,2vw,1.5rem)/1 var(--t);padding:.6rem 1rem;text-decoration:none;white-space:nowrap}
.nav{background:var(--bleu);color:#fff;position:sticky;top:env(safe-area-inset-top,0px);z-index:30}.nav .c{display:flex;gap:clamp(1rem,3vw,2.6rem);overflow-x:auto}.nav a{font:700 1.1rem/1 var(--t);text-transform:uppercase;text-decoration:none;padding-block:.85rem;white-space:nowrap;border-bottom:3px solid transparent;transition:border-color .25s}.nav a:hover{border-color:var(--jaune)}
.heros{position:relative;background:linear-gradient(115deg,var(--nuit) 18%,var(--bleu) 72%);color:#fff;overflow:hidden;isolation:isolate}
.heros .im{position:absolute;inset:0;z-index:-1;overflow:hidden}.heros .im picture{display:block;width:100%;height:100%}
.heros .im img{width:100%;height:100%;object-fit:cover;object-position:72% 50%;animation:lent 16s ease-out both}
.heros .im::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--nuit) 4%,color-mix(in srgb,var(--nuit) 72%,transparent) 36%,transparent 68%)}
@keyframes lent{from{transform:scale(1.07)}to{transform:none}}@media (prefers-reduced-motion:reduce){.heros .im img{animation:none}}
.reflet{position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.2) 50%,transparent 60%);transform:translateX(-100%);pointer-events:none;mix-blend-mode:screen}
.offre:hover .reflet{transition:transform 1s cubic-bezier(.16,1,.3,1);transform:translateX(100%)}
@media (prefers-reduced-motion:no-preference){.offre .reflet{animation:reflet 7s ease-in-out infinite}.offre:nth-child(2) .reflet{animation-delay:1.6s}.offre:nth-child(3) .reflet{animation-delay:3.2s}}
@keyframes reflet{0%,62%{transform:translateX(-100%)}82%,100%{transform:translateX(100%)}}
.page .im img{animation:lent 16s ease-out both}@media (prefers-reduced-motion:reduce){.page .im img{animation:none}}
.offre picture{display:block;width:100%;height:100%}.vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .65s}.vid.on{opacity:1}
.atelier{overflow:clip}.atelier img{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover}
.heros .c{padding-top:clamp(2.5rem,6vw,4.5rem);padding-bottom:clamp(7.5rem,14vw,11rem);min-height:clamp(420px,52vw,560px);display:grid;align-content:center;gap:1.1rem}
.heros h1,.page h1{max-width:13ch}.heros p{font-size:1.15rem;color:#dce5f7;max-width:44ch}
.tag{display:inline-block;background:var(--jaune);color:var(--encre);font:700 1rem/1 var(--t);text-transform:uppercase;padding:.4rem .7rem;width:max-content;transform:skewX(-10deg)}
@keyframes entre{from{transform:translateX(-34px);opacity:.15}to{transform:none;opacity:1}}.heros .c>*{animation:entre .8s cubic-bezier(.16,1,.3,1) both}.heros .c>*:nth-child(2){animation-delay:.07s}.heros .c>*:nth-child(3){animation-delay:.14s}
.outil{position:relative;margin-top:clamp(-6.5rem,-9vw,-4.5rem);z-index:5;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);background:#fff;box-shadow:0 20px 50px rgba(14,26,51,.2);border-top:5px solid var(--jaune)}
.outil>div{padding:clamp(1.25rem,2.6vw,2rem);min-width:0}.outil>div+div{border-left:1px solid var(--ligne)}
.outil h2{font-size:1.8rem}
.plaque{display:flex;border:2px solid var(--encre);border-radius:6px;overflow:hidden;margin-top:.9rem;max-width:300px}.plaque b{background:#123fa0;color:#fff;display:grid;place-items:center;width:38px;font:700 1.1rem var(--t)}.plaque input{border:0;width:100%;min-width:0;font:700 1.7rem/1 var(--t);text-align:center;letter-spacing:.06em;text-transform:uppercase;padding:.5rem;color:var(--encre);background:#fff}
.plaque input:focus{outline:0}.plaque:focus-within{box-shadow:0 0 0 3px var(--jaune)}
.tuiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:.9rem}
.tuile{appearance:none;background:#fff;border:1.5px solid var(--ligne);border-radius:8px;padding:.75rem .5rem;display:flex;align-items:center;gap:.6rem;font:600 .98rem/1.1 var(--x);color:var(--encre);cursor:pointer;text-align:left;transition:.2s}
.tuile svg{width:26px;height:26px;fill:none;stroke:var(--vif);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.tuile:hover{border-color:var(--vif)}.tuile[aria-pressed=true]{background:var(--bleu);border-color:var(--bleu);color:#fff}.tuile[aria-pressed=true] svg{stroke:var(--jaune)}
.recap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem 1.2rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--ligne);font-weight:600}
.bt{display:inline-block;background:var(--jaune);color:var(--encre);font:700 1.3rem/1 var(--t);text-transform:uppercase;padding:.8rem 1.2rem;text-decoration:none;transition:.2s}.bt:hover{background:var(--encre);color:#fff}
.sec{padding-block:clamp(3rem,7vw,5.5rem)}.gris{background:var(--gris)}
.offres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.75rem}
.offre{position:relative;display:block;aspect-ratio:4/3;overflow:clip;color:#fff;text-decoration:none;background:var(--nuit)}.offre img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1)}.offre:hover img{transform:scale(1.06)}
.offre div{position:absolute;inset:auto 0 0;padding:1rem;background:linear-gradient(0deg,rgba(10,28,74,.94),rgba(10,28,74,0));display:grid;gap:.15rem}.offre h3{font-size:1.8rem;font-style:italic;font-weight:700}.offre strong{color:var(--jaune);font:700 1.25rem var(--t)}
.note-prix{margin-top:.7rem;font-size:.85rem;color:var(--mute)}
.conf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.conf li{background:#fff;padding:1.1rem;border-left:4px solid var(--jaune)}.conf b{display:block;font:700 1.3rem var(--t);text-transform:uppercase}
.deux{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,5vw,4rem);align-items:start}
.lps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.lp{appearance:none;background:#0a1224;border:0;border-radius:8px;color:#3a455c;padding:1.1rem .5rem;display:grid;justify-items:center;gap:.5rem;font:600 .86rem var(--x);cursor:pointer;transition:.25s}.lp span{color:#cdd6e8}.lp svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.lp[aria-pressed=true].r{color:#ff3b24}.lp[aria-pressed=true].a{color:#ffb000}.lp[aria-pressed=true] svg{filter:drop-shadow(0 0 8px currentColor)}
.cons{min-height:6.5rem;display:grid;gap:.3rem;align-content:start;margin-top:1rem}
.ls li{padding-block:.7rem;border-bottom:1px solid var(--ligne)}
.page{background:linear-gradient(115deg,var(--nuit),var(--bleu));color:#fff;position:relative;overflow:hidden;isolation:isolate}.page .im{position:absolute;right:0;top:0;bottom:0;width:60%;z-index:-1;-webkit-mask-image:linear-gradient(90deg,transparent,#000 42%);mask-image:linear-gradient(90deg,transparent,#000 42%)}.page .im img{width:100%;height:100%;object-fit:cover}.page .c{padding-block:clamp(2.5rem,6vw,4.5rem);display:grid;gap:1rem}.page p{color:#dce5f7}.fil{font-size:.85rem}
.pied{background:var(--nuit);color:#dce5f7;padding-block:2.5rem}.pied .c{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.pied h2{color:#fff;font-size:1.4rem}.hor{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.1rem 1rem}
.mob{display:none}
@media (max-width:860px){.outil{grid-template-columns:minmax(0,1fr)}.outil>div+div{border-left:0;border-top:1px solid var(--ligne)}.offres,.deux,.pied .c{grid-template-columns:minmax(0,1fr)}.conf{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.heros .im::after{background:linear-gradient(90deg,color-mix(in srgb,var(--nuit) 84%,transparent),color-mix(in srgb,var(--nuit) 34%,transparent))}.heros .im img{object-position:74% 40%}.page .im{width:100%;opacity:.45;-webkit-mask-image:none;mask-image:none}.tuiles{grid-template-columns:repeat(2,minmax(0,1fr))}.util{display:none}body{padding-bottom:calc(3.9rem + env(safe-area-inset-bottom,0px))}
.mob{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:40;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bleu)}.mob a{text-align:center;padding-block:1.05rem;font:700 1.2rem/1 var(--t);text-transform:uppercase;text-decoration:none;color:#fff}.mob a:first-child{background:var(--jaune);color:var(--encre)}}
