/* ANCA · concept « plan de vol » : un site qui respire comme le ciel de Gréolières.
   Azur + or + rouge viennent du logo. Un seul moment de bravoure : le ciel du haut de page, réel selon l'heure. */
@font-face{font-family:Archivo;src:url(fonts/Archivo-r.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}
@font-face{font-family:Archivo;src:url(fonts/Archivo-i.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:italic;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(fonts/InstrumentSans-r.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(fonts/JetBrainsMono-r.woff2) format("woff2");font-weight:400 700;font-display:swap}

:root{
  --azur:#0E5BD3;--azur-fort:#0A3F9E;--or:#F5B51E;--rouge:#DB2B2A;
  --fond:#F4F8FD;--fond-2:#E6EFFA;--surface:#FFFFFF;--texte:#0A1B33;--texte-2:#44566F;--trait:#CBD9EA;
  --lien:#0B50BC;--sur-accent:#FFFFFF;
  /* Panneau d'instruments : sombre dans les deux thèmes, comme un cockpit. */
  --bord:#081526;--bord-2:#102440;--bord-trait:#26405F;--bord-texte:#EDF4FC;--bord-texte-2:#A9BDD4;
  --ok:#2FBF71;--att:#F5B51E;--non:#F05247;--off:#2A3C54;
  /* Ciel du haut de page, remplacé selon l'heure réelle au terrain. */
  --ciel-h:#2F7FE6;--ciel-m:#7DB6F4;--ciel-b:#DCEEFF;--ciel-texte:#071B3A;--ciel-texte-2:#17365F;--ciel-btn:#071B3A;--ciel-btn-t:#FFFFFF;--crete-loin:#B4CBE6;--crete-mi:#8FAEC6;--crete-pres:#5F8579;--pre:#6E8C4C;--nuage-op:.92;
  --display:Archivo,"Arial Narrow",Arial,sans-serif;--corps:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--data:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --gouttiere:clamp(20px,5vw,72px);--max:1320px;--section:clamp(72px,11vw,168px);
  --ease:cubic-bezier(.2,.7,.2,1);color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){
  --azur:#5AA2FF;--azur-fort:#8CBDFF;--or:#F7C544;--rouge:#FF6A5E;--fond:#071222;--fond-2:#0D1E35;--surface:#10233C;--texte:#EAF2FB;--texte-2:#A5B8CE;--trait:#264160;--lien:#8FC0FF;--sur-accent:#04152C;color-scheme:dark}}
:root[data-theme=dark]{--azur:#5AA2FF;--azur-fort:#8CBDFF;--or:#F7C544;--rouge:#FF6A5E;--fond:#071222;--fond-2:#0D1E35;--surface:#10233C;--texte:#EAF2FB;--texte-2:#A5B8CE;--trait:#264160;--lien:#8FC0FF;--sur-accent:#04152C;color-scheme:dark}
:root[data-ciel=aube]{--ciel-h:#3C5E9E;--ciel-m:#E8A98F;--ciel-b:#FFE1BE;--ciel-texte:#14203F;--ciel-texte-2:#2B3558;--crete-loin:#8F87A8;--crete-mi:#5F6288;--crete-pres:#3D4A59;--pre:#5C6A47;--nuage-op:.8}
:root[data-ciel=couchant]{--ciel-h:#27386F;--ciel-m:#D9708A;--ciel-b:#FFC67F;--ciel-texte:#FFFFFF;--ciel-texte-2:#FFEDE0;--ciel-btn:#FFFFFF;--ciel-btn-t:#27386F;--crete-loin:#6F5C86;--crete-mi:#4A4069;--crete-pres:#2E2C47;--pre:#3D3F3C;--nuage-op:.62}
:root[data-ciel=nuit]{--ciel-h:#050C1E;--ciel-m:#0D1E3D;--ciel-b:#223B62;--ciel-texte:#F2F7FF;--ciel-texte-2:#C6D6EA;--ciel-btn:#F2F7FF;--ciel-btn-t:#050C1E;--crete-loin:#1A2C4A;--crete-mi:#12213A;--crete-pres:#0B1729;--pre:#0A1422;--nuage-op:.13}
:root[data-ciel=gris]{--ciel-h:#6E8AA8;--ciel-m:#A5B9CE;--ciel-b:#DCE5EE;--ciel-texte:#0A1B33;--ciel-texte-2:#1E3550;--crete-loin:#90A2B4;--crete-mi:#6C8390;--crete-pres:#4B6658;--pre:#6B8353;--nuage-op:1}

*{box-sizing:border-box}
[hidden]{display:none!important}
@view-transition{navigation:auto}
::view-transition-old(root){animation:.18s ease-in both vt-out}
::view-transition-new(root){animation:.28s var(--ease) both vt-in}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in{from{opacity:0;transform:translateY(8px)}}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px}
body{margin:0;background:var(--fond);color:var(--texte);font:400 clamp(16px,1.05vw + 12px,18px)/1.62 var(--corps);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;height:auto;display:block}
a{color:var(--lien);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--or);outline-offset:3px;border-radius:4px}
h1,h2,h3,h4{font-family:var(--display);line-height:1.04;margin:0;text-wrap:balance}
h2{font-size:clamp(34px,5.4vw,76px);font-weight:800;font-stretch:112%;letter-spacing:-.022em}
h3{font-size:clamp(23px,2.3vw,32px);font-weight:750;font-stretch:108%;letter-spacing:-.012em}
p{margin:0}
.lead{font-size:clamp(19px,1.7vw,25px);line-height:1.46;color:var(--texte-2)}
.texte{max-width:64ch}
.texte p+p{margin-top:1em}
.sur{font:600 clamp(12px,.9vw,13px)/1.3 var(--data);letter-spacing:.09em;text-transform:uppercase;color:var(--azur);display:block}
.cadre{max-width:var(--max);margin-inline:auto;padding-left:max(var(--gouttiere),env(safe-area-inset-left,0px));padding-right:max(var(--gouttiere),env(safe-area-inset-right,0px))}
.section{padding-block:var(--section)}
.pile{display:grid;gap:clamp(14px,1.6vw,22px)}
.pile-l{display:grid;gap:clamp(28px,3.4vw,52px)}
.vide-acces{position:absolute;left:-999px;top:8px;z-index:100;background:var(--surface);padding:12px 18px;border-radius:8px}
.vide-acces:focus{left:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* En-tête */
.entete{position:fixed;inset:0 0 auto;z-index:50;padding-top:env(safe-area-inset-top,0px);transition:background .25s,box-shadow .25s,transform .3s var(--ease)}
.entete[data-etat=plein]{background:color-mix(in srgb,var(--fond) 86%,transparent);backdrop-filter:blur(14px) saturate(1.5);-webkit-backdrop-filter:blur(14px) saturate(1.5);box-shadow:0 1px 0 var(--trait)}
.entete[data-etat=cache]{transform:translateY(-110%)}
.entete-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px;max-width:1500px;margin-inline:auto;padding-left:max(var(--gouttiere),env(safe-area-inset-left,0px));padding-right:max(var(--gouttiere),env(safe-area-inset-right,0px))}
.marque{display:block;flex:none;line-height:0}
.marque img{height:60px;width:auto;filter:drop-shadow(0 1px 3px rgba(255,255,255,.55))}
.nav{display:flex;gap:clamp(2px,.8vw,12px);align-items:center;margin:0;padding:0;list-style:none}
.nav a{display:block;padding:10px 12px;border-radius:999px;color:var(--c-nav,var(--texte));text-decoration:none;font-weight:600;font-size:15.5px;white-space:nowrap;transition:background .18s,color .18s}
.nav a:hover{background:color-mix(in srgb,var(--c-nav,var(--texte)) 12%,transparent)}
.nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--rouge);border-radius:0}
.nav a.nav-direct{background:var(--bord);color:var(--bord-texte);display:inline-flex;align-items:center;gap:9px;padding-inline:16px}
.nav a.nav-direct:hover{background:var(--azur-fort);color:#fff}
:root:has(.ciel) .entete:not([data-etat=plein]){--c-nav:var(--ciel-texte)}
:root:has(.page-sombre) .entete:not([data-etat=plein]){--c-nav:#EDF4FC}
.entete[data-etat=plein]{--c-nav:var(--texte)}
.point{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 color-mix(in srgb,var(--ok) 60%,transparent);animation:pouls 2.2s infinite}
@keyframes pouls{70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}
.burger{display:none;width:48px;height:48px;border:0;border-radius:50%;background:var(--bord);color:var(--bord-texte);cursor:pointer;place-items:center}
.burger svg{width:22px;height:22px}
@media (max-width:1020px){
  body.menu-ouvert .entete{backdrop-filter:none;-webkit-backdrop-filter:none;transform:none;background:none;box-shadow:none}
  .burger{display:grid}
  .nav-boite{position:fixed;inset:0;background:var(--bord);padding:calc(96px + env(safe-area-inset-top,0px)) max(var(--gouttiere),env(safe-area-inset-right,0px)) 40px max(var(--gouttiere),env(safe-area-inset-left,0px));opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .22s,transform .28s var(--ease),visibility .22s;overflow:auto;z-index:-1}
  .nav-boite[data-ouvert=true]{opacity:1;visibility:visible;transform:none}
  .nav{flex-direction:column;align-items:stretch;gap:4px}
  .nav a,.entete[data-etat=plein] .nav a{color:var(--bord-texte);font:750 clamp(30px,9vw,44px)/1.1 var(--display);font-stretch:110%;padding:10px 0;white-space:normal;letter-spacing:-.015em}
  .nav a:hover{background:none;color:var(--or)}
  .nav a[aria-current=page]{box-shadow:none;color:var(--or)}
  .nav a.nav-direct{background:none;padding-inline:0;gap:14px}
  .marque img{height:48px}
}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 24px;border-radius:999px;border:1.5px solid transparent;background:var(--texte);color:var(--fond);text-decoration:none;font-weight:600;cursor:pointer;font-family:var(--corps);font-size:16.5px;transition:transform .16s var(--ease),background .18s,color .18s,border-color .18s;touch-action:manipulation}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:scale(.97)}
.btn-ligne{background:transparent;color:inherit;border-color:currentColor}
.btn-azur{background:var(--azur);color:var(--sur-accent)}
.btn svg{width:18px;height:18px;flex:none}
.rangee-btn{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* Haut de page : le ciel */
.ciel{position:relative;isolation:isolate;overflow:clip;color:var(--ciel-texte);background:linear-gradient(180deg,var(--ciel-h) 0%,var(--ciel-m) 46%,var(--ciel-b) 74%);min-height:max(720px,100svh);display:flex;flex-direction:column;--c-nav:var(--ciel-texte);transition:background .6s}
.ciel::after{content:"";position:absolute;inset:auto 0 0;height:6%;background:linear-gradient(180deg,transparent,var(--fond));z-index:3;pointer-events:none}
.nuages{position:absolute;inset:0;z-index:0;opacity:var(--nuage-op);pointer-events:none;overflow:hidden}
.nuages i{position:absolute;display:block;width:150%;left:-25%;height:60%;background-size:100% 100%;background-repeat:no-repeat;will-change:transform}
.nuages .n1{top:2%;background-image:url(img/nuages-a.webp);animation:derive 120s linear infinite alternate}
.nuages .n2{top:26%;background-image:url(img/nuages-b.webp);animation:derive 180s linear infinite alternate-reverse;opacity:.86}
@keyframes derive{from{transform:translate3d(-5%,0,0)}to{transform:translate3d(5%,0,0)}}
.etoiles{position:absolute;inset:0 0 40%;z-index:0;opacity:0;background-image:radial-gradient(1.2px 1.2px at 12% 22%,#fff,transparent),radial-gradient(1px 1px at 28% 62%,#fff,transparent),radial-gradient(1.4px 1.4px at 44% 14%,#fff,transparent),radial-gradient(1px 1px at 61% 40%,#fff,transparent),radial-gradient(1.3px 1.3px at 76% 18%,#fff,transparent),radial-gradient(1px 1px at 88% 58%,#fff,transparent),radial-gradient(1px 1px at 36% 36%,#fff,transparent),radial-gradient(1.2px 1.2px at 92% 30%,#fff,transparent),radial-gradient(1px 1px at 6% 52%,#fff,transparent),radial-gradient(1px 1px at 54% 70%,#fff,transparent)}
[data-ciel=nuit] .etoiles{opacity:.85}
.cretes{position:absolute;left:0;right:0;bottom:0;width:100%;height:40%;z-index:2;pointer-events:none}
.cretes .loin{fill:var(--crete-loin)}.cretes .mi{fill:var(--crete-mi)}.cretes .pres{fill:var(--crete-pres)}.cretes .pre{fill:var(--pre)}
.ciel-corps{position:relative;z-index:5;flex:1;display:grid;grid-template-rows:1fr auto;gap:28px;padding-top:calc(112px + env(safe-area-inset-top,0px));padding-bottom:clamp(24px,4vh,48px);width:100%}
.ciel h1{font:600 clamp(12.5px,1vw,14.5px)/1.4 var(--data);letter-spacing:.07em;text-transform:uppercase;color:var(--ciel-texte-2);max-width:44ch}
.ciel-titre{font:italic 850 clamp(50px,8.5vw,150px)/.93 var(--display);font-stretch:118%;letter-spacing:-.035em;margin-block:clamp(14px,2vw,24px) clamp(18px,2.4vw,30px);max-width:11ch;text-wrap:balance}
.ciel-intro{font-size:clamp(18px,1.5vw,22px);line-height:1.42;max-width:35ch;color:var(--ciel-texte);margin-bottom:26px}
.ciel .btn{background:var(--ciel-btn);color:var(--ciel-btn-t)}
.ciel .btn-ligne{background:transparent;color:var(--ciel-texte);border-color:var(--ciel-texte)}
.flotte{position:absolute;inset:0;z-index:4;pointer-events:none}
.avion{position:absolute;will-change:transform;filter:drop-shadow(0 24px 22px rgba(7,27,58,.22))}
.avion>span{display:block;animation:plane 7s ease-in-out infinite alternate}
.avion img{width:100%}
@keyframes plane{from{transform:translate3d(0,-7px,0) rotate(-.7deg)}to{transform:translate3d(0,9px,0) rotate(.9deg)}}
.a-ultimate{width:clamp(420px,47vw,880px);right:-9vw;top:9%}
.a-ultimate img{transform:rotate(-9deg)}
.a-heli{width:clamp(200px,24vw,430px);right:13vw;bottom:24%}
.a-heli>span{animation-duration:5s}
.a-dago{width:clamp(120px,12vw,220px);right:34vw;top:10%}
.a-dago>span{animation-duration:9s}
[data-ciel=nuit] .avion img{filter:brightness(.72) saturate(.8)}
@media (max-width:820px){
  .ciel{min-height:0}
  .ciel-corps{padding-top:calc(104px + env(safe-area-inset-top,0px));gap:clamp(270px,76vw,430px)}
  .ciel-titre{font-size:clamp(50px,15.4vw,104px)}
  .a-ultimate{width:94vw;right:-12vw;top:auto;bottom:230px}
  .a-heli{width:44vw;right:auto;left:3vw;bottom:140px}
  .a-dago{width:26vw;right:5vw;top:auto;bottom:430px}
  .cretes{height:36%}
  .nuages i{height:440px;background-size:1500px 440px;background-position:center}
  .nuages .n2{top:32%}
  .ciel .rangee-btn{flex-wrap:nowrap;gap:8px}
  .ciel .btn{padding-inline:16px;font-size:15px;white-space:nowrap}
  .ciel-intro{margin-bottom:20px}
}
@media (min-width:821px) and (max-width:1180px){.a-ultimate{top:22%;width:50vw}.a-dago{display:none}.a-heli{right:7vw;bottom:24%}}

/* Bandeau direct */
.direct{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(14px,2vw,30px);padding:12px 12px 12px 22px;border-radius:22px;background:color-mix(in srgb,var(--bord) 90%,transparent);color:var(--bord-texte);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);text-decoration:none;transition:transform .2s var(--ease);font-size:15px}
.direct:hover{transform:translateY(-2px)}
.direct-etat{display:flex;align-items:center;gap:10px;font-weight:600;white-space:nowrap}
.direct-mesures{display:flex;flex-wrap:wrap;gap:4px 26px;font:500 14.5px/1.5 var(--data);color:var(--bord-texte-2);min-width:0}
.direct-mesures b{color:var(--bord-texte);font-weight:600}
.direct-cta{display:inline-flex;gap:8px;align-items:center;background:var(--or);color:#2A1C00;border-radius:12px;padding:12px 16px;font-weight:600;white-space:nowrap}
.direct-cta svg{width:16px;height:16px}
@media (max-width:820px){.direct{grid-template-columns:1fr;gap:10px;padding:16px}.direct-cta{justify-content:center}}

/* États de vol */
.etat{display:inline-flex;align-items:center;gap:8px;font-weight:600}
.pastille{width:13px;height:13px;flex:none;display:inline-block;background:var(--c,var(--off));border-radius:50%}
[data-niv="0"]{--c:var(--ok)}[data-niv="1"]{--c:var(--att)}[data-niv="2"]{--c:var(--non)}[data-niv="off"]{--c:var(--off)}
.pastille[data-niv="1"]{border-radius:3px;transform:rotate(45deg)}
.pastille[data-niv="2"]{border-radius:2px;clip-path:polygon(20% 0,50% 30%,80% 0,100% 20%,70% 50%,100% 80%,80% 100%,50% 70%,20% 100%,0 80%,30% 50%,0 20%)}

/* Boucle : le vol au défilement */
.boucle{position:relative;overflow:clip}
.boucle-svg{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.fumee{fill:none;stroke:var(--rouge);stroke-width:5;stroke-linecap:round;opacity:.72}
@media (max-width:820px){.fumee,.fumee-fond,[data-appareil]{opacity:.28}}
.fumee-fond{fill:none;stroke:var(--trait);stroke-width:1.5;stroke-dasharray:2 9;stroke-linecap:round}
.boucle .cadre{position:relative;z-index:1}
.manifeste{font:800 clamp(32px,5vw,74px)/1.06 var(--display);font-stretch:112%;letter-spacing:-.024em;max-width:17ch;text-wrap:balance}
.manifeste em{font-style:italic;color:var(--azur)}
.chiffres{display:grid;grid-template-columns:1fr 1fr 1.45fr .8fr;gap:clamp(20px,3vw,48px);margin:clamp(48px,7vw,104px) 0 0;padding:0;list-style:none}
.chiffres b{display:block;font:800 clamp(31px,4.5vw,70px)/1 var(--display);font-stretch:108%;white-space:nowrap;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.chiffres small{display:block;font:500 12px/1.2 var(--data);letter-spacing:.06em;text-transform:uppercase;color:var(--azur);margin-bottom:10px}
.chiffres span{display:block;color:var(--texte-2);margin-top:10px;font-size:16px;line-height:1.4}
@media (max-width:760px){.chiffres{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Tête de section */
.tete{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(18px,4vw,70px);align-items:end;margin-bottom:clamp(36px,5vw,76px)}
.tete h2{margin-top:14px}
@media (max-width:820px){.tete{grid-template-columns:minmax(0,1fr)}}

/* Panneau d'instruments */
.tableau{background:var(--bord);color:var(--bord-texte);--texte-2:var(--bord-texte-2)}
.tableau .sur{color:var(--or)}
.tableau a{color:#9CCBFF}
.tableau .btn{background:var(--bord-texte);color:var(--bord)}
.tableau .btn-ligne{background:transparent;color:var(--bord-texte);border-color:var(--bord-trait)}
.tableau .btn-ligne:hover{border-color:var(--bord-texte)}
.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,64px);align-items:start}
@media (max-width:900px){.duo{grid-template-columns:minmax(0,1fr)}}
.verdict{font:italic 850 clamp(40px,5.8vw,84px)/.98 var(--display);font-stretch:112%;letter-spacing:-.03em;margin-block:14px 16px;display:flex;flex-wrap:wrap;gap:0 .3em;align-items:baseline}
.verdict[data-niv]{color:color-mix(in srgb,var(--c) 84%,#fff)}
.verdict[data-niv=off]{color:var(--bord-texte)}
.verdict-phrase{color:var(--bord-texte-2);font-size:clamp(17px,1.4vw,20px);max-width:48ch;line-height:1.45}
.raisons{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.raisons li{font:500 13.5px/1.2 var(--data);padding:8px 11px;border:1px solid var(--bord-trait);border-radius:999px;color:var(--bord-texte)}
.puces{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}
.puces legend{font:600 12.5px/1.3 var(--data);letter-spacing:.07em;text-transform:uppercase;color:var(--bord-texte-2);margin-bottom:10px;padding:0}
.puce{position:relative;display:inline-flex}
.puce input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.puce span{display:block;padding:10px 15px;min-height:44px;border-radius:999px;border:1px solid var(--bord-trait);font-size:15px;font-weight:600;line-height:1.5;transition:background .16s,color .16s,border-color .16s}
.puce:hover span{border-color:var(--bord-texte)}
.puce input:checked+span{background:var(--or);border-color:var(--or);color:#241700}
.puce input:focus-visible+span{outline:3px solid var(--or);outline-offset:3px}
.boussole{width:100%;max-width:400px;margin-inline:auto;display:block;overflow:visible}
.b-trait{stroke:var(--bord-trait);fill:none}
.b-txt{font:600 14px var(--data);fill:var(--bord-texte-2);text-anchor:middle;dominant-baseline:central}
.b-piste{fill:var(--bord-2);stroke:var(--bord-trait)}
.b-piste-txt{font:600 11px var(--data);fill:var(--bord-texte-2);text-anchor:middle;dominant-baseline:central}
.b-fleche{fill:var(--or);transition:transform .7s var(--ease)}
.b-val{font:800 54px var(--display);font-stretch:112%;fill:var(--bord-texte);text-anchor:middle}
.b-unite{font:500 13px var(--data);fill:var(--bord-texte-2);text-anchor:middle}
.lectures{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--bord-trait);border:1px solid var(--bord-trait);border-radius:18px;overflow:hidden;margin-top:clamp(32px,4vw,56px)}
.lecture{background:var(--bord);padding:18px 18px 16px;min-width:0}
.lecture dt{font:500 12px/1.3 var(--data);letter-spacing:.05em;text-transform:uppercase;color:var(--bord-texte-2)}
.lecture dd{margin:9px 0 0;font:750 clamp(25px,2.3vw,33px)/1.05 var(--display);font-variant-numeric:tabular-nums;font-stretch:106%}
.lecture dd small{font:500 13px var(--data);color:var(--bord-texte-2);margin-left:3px}
.lecture p{font-size:13.5px;line-height:1.35;color:var(--bord-texte-2);margin-top:6px}
dl.lectures{margin-bottom:0}
.lectures.l2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){.lectures{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Grille 7 jours, créneaux réels */
.grille-zone{margin-top:clamp(40px,5vw,72px)}
.grille-tete{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;align-items:end;margin-bottom:18px}
.legende{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:var(--bord-texte-2);margin:0;padding:0;list-style:none}
.legende li{display:flex;align-items:center;gap:8px}
.grille{--cols:7;display:grid;grid-template-columns:minmax(64px,92px) repeat(var(--cols),minmax(0,1fr));gap:4px;font-family:var(--data)}
.g-h{text-align:center;font-size:12.5px;color:var(--bord-texte-2);padding-bottom:5px}
.g-j{font:600 13.5px/1.2 var(--corps);padding-right:6px;display:flex;flex-direction:column;justify-content:center}
.g-j small{font:400 12px var(--data);color:var(--bord-texte-2)}
.g-c{position:relative;border:0;border-radius:9px;min-height:56px;padding:6px 2px;background:color-mix(in srgb,var(--c) 26%,var(--bord-2));color:var(--bord-texte);cursor:pointer;display:grid;justify-items:center;align-content:center;gap:2px;font:600 15px/1 var(--data);font-variant-numeric:tabular-nums;transition:transform .14s var(--ease),background .18s;touch-action:manipulation;box-shadow:inset 0 -3px 0 var(--c)}
.g-c:hover{transform:scale(1.05);z-index:1}
.g-c[aria-pressed=true]{outline:2px solid var(--bord-texte);outline-offset:1px}
.g-c svg{width:12px;height:12px;fill:currentColor;opacity:.85}
.g-c[data-niv="1"]{background-image:repeating-linear-gradient(135deg,transparent 0 6px,color-mix(in srgb,var(--c) 16%,transparent) 6px 9px)}
.g-c[data-niv="2"]{color:color-mix(in srgb,var(--c) 40%,#fff);text-decoration:line-through}
.g-c[disabled]{background:transparent;box-shadow:none;cursor:default;color:var(--bord-trait)}
.g-c[disabled]:hover{transform:none}
.note-m{font-size:14px;line-height:1.5;color:var(--bord-texte-2);max-width:82ch;margin-top:18px}
@media (max-width:520px){.grille{grid-template-columns:44px repeat(var(--cols),minmax(0,1fr));gap:3px}.g-j{font-size:12px}.g-j small{font-size:10.5px}.g-c{font-size:13px;min-height:50px;border-radius:7px}.g-h{font-size:10.5px}.g-c svg{width:10px;height:10px}}

/* Thermiques */
.barres{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;align-items:end;height:150px;margin-top:20px;border-bottom:1px solid var(--bord-trait)}
.barre{background:linear-gradient(180deg,var(--or),color-mix(in srgb,var(--or) 25%,transparent));border-radius:6px 6px 0 0;position:relative;min-height:3px}
.barre b{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font:500 11.5px var(--data);padding-bottom:3px;color:var(--bord-texte)}
.barres-x{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;font:500 12px var(--data);color:var(--bord-texte-2);text-align:center;margin-top:7px}

/* Caméra */
.cam{position:relative;border-radius:22px;overflow:hidden;background:var(--bord-2);aspect-ratio:4/3;border:1px solid var(--bord-trait);width:100%;display:block;padding:0;cursor:zoom-in;color:var(--bord-texte)}
.cam img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:opacity .5s}
.cam-badge{position:absolute;left:12px;top:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;background:rgba(5,14,28,.76);color:#fff;padding:7px 12px;border-radius:999px;font:600 12.5px var(--data);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.cam-msg{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:24px;font-size:15px;color:var(--bord-texte-2)}
.cam-info{font-size:14.5px;line-height:1.45;color:var(--bord-texte-2);margin-top:12px}
.cam-info b{color:var(--bord-texte);font-family:var(--data);font-weight:500}
dialog{border:0;padding:0;background:transparent;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;color:#fff}
dialog::backdrop{background:rgba(3,9,20,.92)}
.visio{display:grid;grid-template-rows:auto 1fr auto;height:100%;padding:max(10px,env(safe-area-inset-top,0px)) 12px max(14px,env(safe-area-inset-bottom,0px))}
.visio-haut{display:flex;justify-content:flex-end;gap:8px}
.visio-img{min-height:0;display:grid;place-items:center}
.visio-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px}
.visio-bas{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:12px;font-size:15px;max-width:1100px;margin-inline:auto;width:100%}
.rond{width:48px;height:48px;flex:none;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .16s}
.rond:hover{background:rgba(255,255,255,.24)}
.rond svg{width:20px;height:20px}

/* Ligne de vol (disciplines) */
.ligne{display:flex;gap:10px;height:clamp(460px,62vh,700px);padding-inline:max(var(--gouttiere),env(safe-area-inset-left,0px));max-width:1720px;margin-inline:auto}
.vol{position:relative;flex:1 1 0;min-width:0;border-radius:20px;overflow:hidden;color:#fff;text-decoration:none;display:flex;align-items:flex-end;transition:flex-grow .55s var(--ease);background:var(--bord)}
.vol img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.vol::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(4,14,30,.86))}
.vol-txt{position:relative;z-index:1;padding:clamp(14px,1.5vw,24px);width:100%;min-width:0}
.vol h3{font-size:clamp(19px,1.65vw,28px);overflow-wrap:anywhere;hyphens:auto}
.vol p{font-size:15.5px;line-height:1.4;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s var(--ease),opacity .3s,margin .4s;margin:0;max-width:44ch;color:#E4EDF8}
@media (hover:hover) and (min-width:901px){
  .vol:hover,.vol:focus-visible{flex-grow:3.3}
  .vol:hover img{transform:scale(1.04)}
  .vol:hover p,.vol:focus-visible p{max-height:130px;opacity:1;margin-top:9px}
}
@media (max-width:900px){
  .ligne{height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .vol{aspect-ratio:4/5}
  .vol:first-child,.vol:last-child{grid-column:span 2;aspect-ratio:16/10}
}

/* Mot du président */
.mot{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,6vw,110px);align-items:center}
.mot-photo{position:relative;max-width:440px;width:100%}
.mot-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 16%;border-radius:clamp(120px,16vw,220px) clamp(120px,16vw,220px) 18px 18px}
.mot-photo::before{content:"";position:absolute;inset:-14px -14px 14px 14px;border:2px solid var(--or);border-radius:clamp(120px,16vw,220px) clamp(120px,16vw,220px) 18px 18px;z-index:-1}
.mot-photo{isolation:isolate}
blockquote{margin:0}
.citation{font:500 clamp(22px,2.5vw,36px)/1.28 var(--display);font-stretch:102%;letter-spacing:-.012em}
.citation p+p{margin-top:.75em}
.signature{margin-top:28px;display:grid;gap:3px}
.signature b{font:750 20px var(--display);font-stretch:108%}
.signature span{color:var(--texte-2)}
.a-valider{display:inline-block;margin-top:16px;font:500 12.5px/1.35 var(--data);color:var(--texte-2);background:color-mix(in srgb,var(--or) 22%,transparent);padding:7px 11px;border-radius:7px}
@media (max-width:820px){.mot{grid-template-columns:minmax(0,1fr)}.mot-photo{max-width:310px;margin-left:14px}}

/* Fête du club */
.fete{background:linear-gradient(165deg,var(--azur-fort),#0A2B6F 70%);color:#fff;--texte-2:#D6E5F8;overflow:clip}
:root[data-theme=dark] .fete{background:linear-gradient(165deg,#102F66,#081A3C 70%)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .fete{background:linear-gradient(165deg,#102F66,#081A3C 70%)}}
.fete .sur{color:var(--or)}
.fete a:not(.btn){color:#fff}
.fete .btn{background:#fff;color:#0A2B6F}
.fete-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(36px,6vw,100px);align-items:center}
.affiche{display:block;padding:0;border:0;background:none;cursor:zoom-in;transform:rotate(2.2deg);transition:transform .4s var(--ease);max-width:470px;justify-self:center;width:100%}
.affiche:hover{transform:rotate(0) scale(1.015)}
.affiche img{border-radius:8px;box-shadow:0 34px 70px rgba(0,8,30,.5);width:100%}
.infos{list-style:none;padding:0;margin:28px 0;display:grid;gap:12px}
.infos li{display:grid;grid-template-columns:96px 1fr;gap:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.22)}
.infos b{font:500 12.5px/1.6 var(--data);letter-spacing:.05em;text-transform:uppercase;color:var(--or)}
@media (max-width:860px){.fete-in{grid-template-columns:minmax(0,1fr)}}

/* Galerie */
.galerie{columns:3 300px;column-gap:12px}
.galerie button{display:block;width:100%;margin:0 0 12px;padding:0;border:0;background:none;cursor:zoom-in;border-radius:14px;overflow:hidden;break-inside:avoid;position:relative;color:#fff;text-align:left}
.galerie img{width:100%;transition:transform .7s var(--ease)}
.galerie button:hover img{transform:scale(1.035)}
.galerie span{position:absolute;inset:auto 0 0;padding:32px 14px 12px;font-size:14.5px;line-height:1.3;background:linear-gradient(180deg,transparent,rgba(4,14,30,.82));opacity:0;transition:opacity .22s}
.galerie button:hover span,.galerie button:focus-visible span{opacity:1}
@media (hover:none){.galerie span{opacity:1}}

/* Accès, appel */
.appel{position:relative;overflow:clip;color:#fff;min-height:min(84vh,780px);display:flex;align-items:flex-end;background:var(--bord)}
.appel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.appel::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,14,30,.88),rgba(4,14,30,.1) 76%)}
.appel .cadre{position:relative;z-index:1;width:100%;padding-block:clamp(44px,6vw,86px)}
.appel h2{max-width:14ch;font-style:italic}
.appel p{max-width:48ch;margin-block:18px 26px;color:#E7EFF9;font-size:clamp(18px,1.5vw,22px);line-height:1.42}
.appel .btn{background:#fff;color:#04172F}
.appel .btn-ligne{background:transparent;color:#fff;border-color:#fff}

/* Tête des pages intérieures */
.page-tete{position:relative;isolation:isolate;overflow:clip;padding-top:calc(134px + env(safe-area-inset-top,0px));padding-bottom:clamp(56px,8vw,112px);background:linear-gradient(180deg,#BBDAFA,var(--fond));color:#0A1B33}
:root[data-theme=dark] .page-tete{background:linear-gradient(180deg,#123059,var(--fond));color:var(--texte)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .page-tete{background:linear-gradient(180deg,#123059,var(--fond));color:var(--texte)}}
.page-tete h1{font:italic 850 clamp(46px,8.6vw,132px)/.95 var(--display);font-stretch:116%;letter-spacing:-.034em;margin-block:14px 22px;max-width:14ch}
.page-tete .lead{max-width:46ch;color:inherit;opacity:.82}
.page-tete .sur{color:inherit;opacity:.78}
.fil{font-size:14.5px;margin:0 0 20px;padding:0;list-style:none;display:flex;gap:8px;flex-wrap:wrap;opacity:.82}
.fil li+li::before{content:"/";margin-right:8px;opacity:.6}
.fil a{color:inherit}
.tete-avion{position:absolute;z-index:-1;right:-3%;bottom:6%;width:clamp(240px,42vw,720px);opacity:.98;filter:drop-shadow(0 22px 22px rgba(7,27,58,.2))}
@media (max-width:900px){.tete-avion{position:relative;right:auto;bottom:auto;margin:22px -6% -8px auto;width:82%}}
.page-sombre{background:linear-gradient(180deg,#143261,var(--bord));color:var(--bord-texte)}
:root .page-sombre.page-tete{background:linear-gradient(180deg,#143261,var(--bord));color:var(--bord-texte)}

/* Activités */
.disc{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(26px,5vw,84px);align-items:center;padding-block:clamp(52px,7vw,104px)}
.disc+.disc{border-top:1px solid var(--trait)}
.disc:nth-of-type(even) .disc-img{order:2}
.disc-img{position:relative}
.disc-img>img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:20px}
.disc-txt h2{font-size:clamp(32px,4vw,58px);margin-block:10px 20px}
.pilotes{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:0}
.pilotes li{padding:11px 0;border-top:1px solid var(--trait);line-height:1.38}
.pilotes b{display:block;font-weight:600}
.pilotes span{color:var(--texte-2);font-size:15.5px}
.vignettes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
.vignettes button{padding:0;border:0;background:none;border-radius:11px;overflow:hidden;cursor:zoom-in;aspect-ratio:4/3}
.vignettes img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.vignettes button:hover img{transform:scale(1.05)}
.sommaire{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 0;padding:0;list-style:none;max-width:min(100%,640px);position:relative;z-index:1}
.sommaire a{display:block;padding:10px 15px;min-height:44px;border-radius:999px;border:1px solid currentColor;text-decoration:none;font-weight:600;font-size:15px;color:inherit;transition:background .16s,color .16s}
.sommaire a:hover{background:var(--texte);color:var(--fond)}
@media (max-width:860px){.disc{grid-template-columns:minmax(0,1fr)}.disc:nth-of-type(even) .disc-img{order:0}}

/* Club */
.bureau{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:clamp(16px,2vw,28px);margin:0;padding:0;list-style:none}
.bureau img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 15%;border-radius:90px 90px 14px 14px;background:var(--fond-2)}
.bureau b{display:block;font:750 clamp(18px,1.5vw,21px)/1.15 var(--display);font-stretch:106%;margin-top:14px}
.bureau span{display:block;color:var(--azur);font:500 12.5px/1.3 var(--data);letter-spacing:.04em;text-transform:uppercase;margin-top:7px}
.colonnes-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,48px)}
.colonnes-3>*{min-width:0;border-top:2px solid var(--texte);padding-top:18px}
.colonnes-3 h3{margin-bottom:12px}
.colonnes-3 p{color:var(--texte-2)}
@media (max-width:820px){.colonnes-3{grid-template-columns:minmax(0,1fr)}}
.fiche{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 clamp(24px,5vw,64px);margin:0}
.fiche div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--trait);padding:11px 0}
.fiche dt{color:var(--texte-2);font-size:15.5px}
.fiche dd{margin:0;font:500 14.5px var(--data);text-align:right;overflow-wrap:anywhere}
.partenaires{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0;padding:0;list-style:none}
.partenaires a{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--trait);border-radius:16px;padding:14px 16px;min-height:88px;text-decoration:none;color:var(--texte);font-weight:600;line-height:1.25;transition:transform .16s var(--ease),border-color .16s;height:100%}
.partenaires a:hover{transform:translateY(-3px);border-color:var(--azur)}
.partenaires img{width:56px;height:56px;object-fit:contain;background:#fff;border-radius:9px;padding:3px;flex:none}
.partenaires small{display:block;font-weight:400;color:var(--texte-2);font-size:14px}
.mosaique{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.mosaique button{padding:0;border:0;background:none;border-radius:16px;overflow:hidden;cursor:zoom-in;position:relative;min-height:0;color:#fff;text-align:left}
.mosaique img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .6s var(--ease)}
.mosaique button:hover img{transform:scale(1.03)}
.mosaique .g6{grid-column:span 6}.mosaique .g4{grid-column:span 4}.mosaique .g8{grid-column:span 8}
.mosaique figcaption,.mosaique span{position:absolute;inset:auto 0 0;padding:34px 14px 12px;background:linear-gradient(180deg,transparent,rgba(4,14,30,.82));font-size:14.5px;line-height:1.3}
@media (max-width:720px){.mosaique .g4,.mosaique .g6,.mosaique .g8{grid-column:span 12}}

/* Règlement */
.consignes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.consigne{background:var(--surface);border:1px solid var(--trait);border-radius:22px;padding:clamp(20px,2.6vw,36px);min-width:0;display:flex;flex-direction:column;gap:14px}
.consigne-num{font:500 12.5px var(--data);letter-spacing:.06em;text-transform:uppercase;color:var(--azur)}
.consigne p{color:var(--texte-2)}
.consigne.large{grid-column:1/-1}
.zone-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(20px,4vw,52px);align-items:center}
@media (max-width:820px){.consignes,.zone-duo{grid-template-columns:minmax(0,1fr)}}
.schema{width:100%;height:auto;display:block}
.schema text{font-family:var(--data);fill:var(--texte)}
.heures{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:2px;margin-top:6px}
.heures i{height:44px;background:var(--fond-2);border-radius:5px;display:block}
.heures i.on{background:var(--azur)}
.heures i.ete{background:repeating-linear-gradient(135deg,var(--azur) 0 5px,color-mix(in srgb,var(--azur) 45%,transparent) 5px 10px)}
.heures-x{display:flex;justify-content:space-between;font:500 12px var(--data);color:var(--texte-2)}
.jauge{height:44px;border-radius:999px;background:linear-gradient(90deg,var(--ok),var(--or) 72%,var(--rouge) 92%);position:relative;margin-top:30px}
.jauge i{position:absolute;left:92%;top:-9px;bottom:-9px;width:3px;background:var(--texte)}
.jauge b{position:absolute;left:92%;top:-32px;transform:translateX(-92%);font:600 14px var(--data);white-space:nowrap}
.chercher{display:grid;gap:7px;max-width:480px;margin-bottom:22px}
.chercher label{font-weight:600}
.chercher input{min-height:52px;border:1.5px solid var(--trait);background:var(--surface);color:var(--texte);border-radius:14px;padding:10px 16px;font:inherit;font-size:17px;width:100%}
.chercher input:focus{border-color:var(--azur);outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--azur) 24%,transparent)}
.articles{display:grid;gap:clamp(26px,3vw,44px)}
.groupe h3{margin-bottom:12px}
details.art{border-top:1px solid var(--trait)}
details.art:last-child{border-bottom:1px solid var(--trait)}
details.art summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:48px 1fr 22px;gap:10px;align-items:center;padding:15px 0;font-weight:600;line-height:1.3;min-height:52px}
details.art summary::-webkit-details-marker{display:none}
details.art summary>span:first-child{font:500 13px var(--data);color:var(--azur)}
details.art summary svg{width:18px;height:18px;transition:transform .22s var(--ease)}
details.art[open] summary svg{transform:rotate(45deg)}
.art-corps{padding:0 0 22px 58px;color:var(--texte-2);max-width:74ch}
.art-corps p+p,.art-corps ul+p,.art-corps p+ul{margin-top:.75em}
.art-corps ul{padding-left:1.1em;margin-block:.5em}
.art-corps strong{color:var(--texte)}
@media (max-width:540px){.art-corps{padding-left:0}}
.etapes{counter-reset:e;display:grid;gap:0;list-style:none;margin:0;padding:0}
.etapes li{counter-increment:e;display:grid;grid-template-columns:56px 1fr;gap:12px;padding:15px 0;border-top:1px solid var(--trait)}
.etapes li::before{content:counter(e);font:800 30px/1 var(--display);color:var(--azur)}
.cote{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:clamp(28px,5vw,80px);align-items:start}
.cote>:first-child{position:sticky;top:104px}
@media (max-width:900px){.cote{grid-template-columns:minmax(0,1fr)}.cote>:first-child{position:static}}
.tag{display:inline-block;padding:2px 8px;border-radius:6px;background:color-mix(in srgb,var(--rouge) 14%,transparent);color:var(--rouge);font:600 12.5px var(--data)}

/* Accès */
.routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.route{background:var(--surface);border:1px solid var(--trait);border-radius:22px;padding:clamp(20px,2.6vw,36px);min-width:0}
.route ol{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:0}
.route li{padding:10px 0 10px 26px;position:relative;border-top:1px solid var(--trait);color:var(--texte-2);line-height:1.42}
.route li::before{content:"";position:absolute;left:3px;top:17px;width:9px;height:9px;border-radius:50%;background:var(--azur)}
.route li:last-child::before{background:var(--rouge)}
.route strong{color:var(--texte)}
@media (max-width:820px){.routes{grid-template-columns:minmax(0,1fr)}}
.carte-boite{position:relative;aspect-ratio:16/8;min-height:320px;border-radius:22px;overflow:hidden;background:var(--bord);color:#fff;width:100%}
.carte-boite>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62}
.carte-boite iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.carte-appel{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;gap:12px;padding:20px}
.carte-appel .btn{background:#fff;color:#04172F}
.carte-appel small{font-size:13.5px;color:#E2EBF6;max-width:46ch}
.contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(14px,2vw,28px);margin:0;padding:0;list-style:none}
.contacts li{border-top:2px solid var(--texte);padding-top:14px;min-width:0}
.contacts a{font:750 clamp(19px,1.7vw,25px)/1.2 var(--display);text-decoration:none;color:var(--texte);overflow-wrap:anywhere}
.contacts a:hover{text-decoration:underline}
.contacts small{display:block;color:var(--azur);font:500 12.5px var(--data);letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}
.alerte{display:grid;grid-template-columns:30px 1fr;gap:14px;background:color-mix(in srgb,var(--or) 16%,var(--surface));border-radius:16px;padding:18px 20px;line-height:1.46}
.alerte svg{width:26px;height:26px;color:var(--texte)}

/* Liens météo */
.outils{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--bord-trait);border:1px solid var(--bord-trait);border-radius:18px;overflow:hidden;margin:0;padding:0;list-style:none}
.outils a{display:block;background:var(--bord);padding:20px;text-decoration:none;color:var(--bord-texte);height:100%;transition:background .16s}
.outils a:hover{background:var(--bord-2)}
.outils b{display:block;font:750 20px var(--display);font-stretch:106%;margin-bottom:6px}
.outils span{color:var(--bord-texte-2);font-size:15px;line-height:1.4;display:block}

/* Pied */
.pied{background:var(--bord);color:var(--bord-texte-2);padding-block:clamp(52px,6vw,88px) 28px;font-size:15.5px}
.pied a{color:var(--bord-texte);text-decoration:none}
.pied a:hover{text-decoration:underline}
.pied-grille{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:clamp(26px,4vw,64px)}
.pied-logo{width:min(290px,100%)}
.pied h2{font:500 12.5px var(--data);letter-spacing:.07em;text-transform:uppercase;color:var(--or);margin-bottom:13px}
.pied ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.pied-bas{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 22px;border-top:1px solid var(--bord-trait);margin-top:clamp(36px,5vw,60px);padding-top:20px;font-size:14px}
@media (max-width:860px){.pied-grille{grid-template-columns:repeat(2,minmax(0,1fr))}.pied-grille>:first-child{grid-column:1/-1}}

/* Apparitions douces au défilement, sans jamais masquer le contenu si le navigateur ne suit pas. */
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .apparait{animation:monte linear both;animation-timeline:view();animation-range:entry 0% entry 42%}
    @keyframes monte{from{opacity:.25;transform:translateY(26px)}to{opacity:1;transform:none}}
  }
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  @view-transition{navigation:none}
}
@media print{.entete,.nuages,.flotte,.pied,.btn{display:none}.ciel,.tableau{background:#fff;color:#000}}
