/* V6 content preserved; shared contemporary presentation. */
:root{--paper:#faf9f6;--paper-2:#f0f2ed;--paper-3:#e5e9e1;--ink:#192c25;--ink-2:#30483e;--ink-3:#53625a;--ink-4:#647168;--green:#244e3e;--green-deep:#16392c;--amber:#886522;--amber-light:#dec28b;--prose:'DM Sans',Arial,sans-serif;--mono:'DM Sans',Arial,sans-serif;--pad:clamp(20px,4.5vw,64px)}
body{font-size:16px;line-height:1.65}section[id]{scroll-margin-top:100px}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b58a3e;outline-offset:5px}a,button{touch-action:manipulation}.strip{background:var(--green-deep)}.strip-track{width:auto;flex-wrap:wrap;justify-content:center;row-gap:4px;white-space:normal;text-align:center;font-size:11px;letter-spacing:.06em;padding:8px 24px;gap:40px}.nav{background:rgba(250,249,246,.97);border-bottom:1px solid #dce2db}.nav-inner{height:84px;gap:22px}.logo-img{box-shadow:none;width:44px;height:44px}.logo-name{font-size:23px}.logo-name sup{display:block;font-size:9px;letter-spacing:.13em;margin:0}.nav nav.links{gap:22px}.nav nav.links a{font-size:12px;letter-spacing:.02em;text-transform:none;min-height:44px;display:flex;align-items:center}.btn-cta,.btn-outline,.nav-back{font-size:12px;letter-spacing:.025em;text-transform:none;min-height:44px;padding:12px 20px;border-radius:6px;justify-content:center;font-weight:600;transition:background .2s,color .2s}.btn-outline{outline:0;border:1px solid #bdc8bf}.btn-cta:hover{transform:none}.home-page .hero{min-height:0}.home-page .hero-main{max-width:var(--max);width:100%;margin:auto;grid-template-columns:1.05fr 1fr;gap:48px;padding-top:48px;padding-bottom:48px}.home-page .hero-title-col{align-items:flex-start;text-align:left;gap:28px}.home-page .hero-logo{width:54px;height:54px;box-shadow:none}.home-page h1.hero-title{font-size:clamp(64px,6.3vw,94px);line-height:.96;letter-spacing:-.035em}.home-page .hero-actions{justify-content:flex-start}.home-page .hero-right-col{border-radius:10px;min-height:580px;padding:36px;align-items:flex-start;justify-content:flex-end;text-align:left;gap:24px;background:linear-gradient(180deg,rgba(13,34,24,.08),rgba(13,34,24,.95)),url('images/atelier-baxter.jpg') center/cover;color:#fff}.home-page .hero-kicker{font-size:10px;letter-spacing:.12em;color:#fff;justify-content:flex-start}.home-page .hero-right-tagline{font-family:var(--prose);font-size:18px;line-height:1.6;color:#f3f5f0;max-width:38ch}.home-page .hero-right-tagline em,.home-page .hero-right-tagline strong{color:#fff}.home-page .hero-stats-row{gap:22px}.home-page .hero-stat-n,.home-page .hero-stat-n sup{color:#e5cd9e}.home-page .hero-stat-l,.home-page .hero-note{color:#edf1ea;font-size:11px;letter-spacing:.05em}.home-page .hero-sep{background:#ffffff40}.home-page .hero-right-col .btn-cta{background:#f6f6ef;color:#244535}.home-page .hero-right-col .btn-outline{color:#fff;border-color:#ffffff80}.hero-foot{max-width:calc(var(--max) - 2 * var(--pad));width:calc(100% - 2 * var(--pad));margin:auto;padding-inline:0;padding-block:22px}.hero-foot-item{font-size:11px;letter-spacing:.07em}.brand-tape-track{justify-content:center;width:100%;padding:20px var(--pad);font-size:24px;font-style:normal}.brand-tape-track>span{gap:8px 32px;flex-wrap:wrap;justify-content:center}.identite,.catalogue,.raisons,.confreres{padding-block:80px}.identite-grid{grid-template-columns:240px 1fr;gap:80px}.identite-logo{width:150px;height:150px;box-shadow:none}.prose-body{font-size:16px;line-height:1.85;max-width:70ch}.identite-right h2{line-height:1.1}.identite-sign-sub{letter-spacing:.06em;font-size:11px}.catalogue-header{border-bottom:1px solid #c3cdc2;padding-bottom:24px}.catalogue-header-left,.catalogue-header-right{font-size:11px;letter-spacing:.08em}.brand-entry{grid-template-columns:150px 1fr auto;gap:32px;padding:32px 0;align-items:center}.brand-visual{width:150px;height:174px;object-fit:contain;padding:18px;background:#fff;border-radius:8px;mix-blend-mode:multiply}.brand-entry-main{min-width:0}.brand-entry .brand-entry-name{font-size:clamp(34px,3.6vw,52px);line-height:1.04}.brand-entry-desc{font-size:15px;max-width:65ch}.brand-entry-ref{font-size:10px;letter-spacing:.08em}.ctag{border-radius:4px;font-size:10px;letter-spacing:.035em;padding:5px 9px}.ctag[href]{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px}.brand-entry-year{font-size:36px}.brand-entry-origin{font-size:11px;letter-spacing:.05em}.metier-body,.metier-list li{font-size:16px;color:#e1e8e1}.metier-ref,.metiers-head-note{color:#c4d0c7}.metiers-head h2 em{color:#bed0bf}.famille-desc,.raison-desc,.pro-left-body{font-size:16px;line-height:1.75}.confrere-card,.form-card{border-radius:10px;overflow:hidden;box-shadow:none}.confrere-soul{font-size:15px}.form-card{background:#fff;border:1px solid #dce3da}.form-card input,.form-card select,.form-card textarea{font-size:16px;min-height:48px;border-radius:5px}.form-note{font-size:12px;letter-spacing:0}.foot-col li,.foot-col a,.foot-address{font-size:14px}.foot-bottom{font-size:11px;letter-spacing:.03em}.brand-page .hero{min-height:540px;background:var(--green-deep)}.brand-page .hero-content{width:100%;padding:80px var(--pad);max-width:1320px;margin:auto}.brand-page h1.hero-title{font-size:clamp(56px,7vw,100px);max-width:14ch;line-height:1;color:#fff}.brand-page .hero-tagline{font-size:18px;color:#fff}.brand-page .hero-overline{color:#e2e9e0;font-size:12px;letter-spacing:.12em}.brand-page .hero .btn-outline{color:white;border-color:#ffffff80}.brand-page .hero-bg{background-image:linear-gradient(100deg,#143728ee,#14372877),url('images/atelier-baxter.jpg')}.brand-page .hero-bg::after{background:none}.brand-page .story-body{font-size:16px;line-height:1.8}.product-grid{gap:24px}.product-card{border:1px solid #e2e7df;border-radius:8px;background:#fff;box-shadow:none}.product-img-wrap{background:#fff;box-shadow:none;padding:30px}.product-name{font-family:var(--prose);font-size:18px;font-weight:600}.product-desc{font-size:15px;line-height:1.7}.product-composition-text{font-size:13px;line-height:1.6}.product-ref,.product-size{font-size:11px;letter-spacing:.04em}.section-label{font-size:12px;letter-spacing:.08em;border-top:1px solid #bfcbbf}.menu-toggle{min-width:44px;min-height:44px}
@media(max-width:1050px){.nav-inner{grid-template-columns:1fr auto;height:76px}.nav nav.links{display:none}.nav nav.links.is-open{display:flex;position:absolute;top:100%;left:0;right:0;padding:20px var(--pad);background:var(--paper);box-shadow:0 14px 20px #17342510;flex-direction:column;gap:4px;border-bottom:1px solid #dce2db}.nav nav.links a{font-size:16px}.menu-toggle{display:inline-flex;align-items:center}.nav-cta>.btn-outline:not(.menu-toggle){display:none}.home-page .hero-main{gap:28px}.home-page .hero-right-col{padding:28px;min-height:540px}.home-page h1.hero-title{font-size:clamp(56px,7vw,80px)}.brand-entry{grid-template-columns:120px 1fr}.brand-entry-right{display:none}.brand-visual{width:120px;height:150px}.identite-grid{gap:40px;grid-template-columns:190px 1fr}}
@media(max-width:700px){.nav-inner{gap:10px}.logo-name{font-size:18px}.logo-img{width:34px;height:34px}.logo-wrap{gap:8px}.nav-cta{gap:8px}.nav-cta>.btn-cta{display:none}.strip-track{font-size:10px}.home-page .hero-main{grid-template-columns:1fr;padding-top:30px;padding-bottom:28px;gap:32px}.home-page .hero-title-col{gap:22px}.home-page h1.hero-title{font-size:clamp(54px,12vw,78px)}.home-page .hero-logo{width:44px;height:44px}.home-page .hero-right-col{min-height:460px;padding:26px;gap:22px}.home-page .hero-right-tagline{font-size:17px}.hero-foot{gap:12px}.brand-tape-track{font-size:22px}.identite,.catalogue,.raisons,.confreres{padding-block:52px}.identite-grid{grid-template-columns:1fr;gap:32px}.identite-left{flex-direction:row;align-items:center;gap:20px}.identite-logo{width:78px;height:78px}.identite-sign-name{font-size:22px}.identite-sign-sub{font-size:10px}.brand-entry{grid-template-columns:84px 1fr;gap:18px;align-items:start;padding:28px 0}.brand-visual{width:84px;height:108px;padding:10px}.brand-entry:nth-child(n) .brand-entry-name{font-size:34px}.brand-entry-desc{font-size:14px}.brand-entry-ref{font-size:10px;letter-spacing:0}.brand-entry-ref::before{display:none}.brand-entry-tags{gap:5px}.ctag{font-size:9px}.brand-entry-tags .ctag-link{margin-left:0}.metiers-cols,.pro-grid,.confrere-grid,.product-grid{grid-template-columns:1fr}.product-img-wrap{aspect-ratio:1.2}.brand-page .hero{min-height:440px}.brand-page .hero-content{padding:64px var(--pad)}.brand-page h1.hero-title{font-size:56px;overflow-wrap:normal}.brand-page .hero-tagline{font-size:17px}.form-row{grid-template-columns:1fr}.familles-grid{grid-template-columns:1fr 1fr}.hero-note{text-align:left}.foot-bottom{line-height:1.8}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.menu-toggle.btn-outline{padding:0;flex-shrink:0}.menu-toggle svg{width:18px;height:14px;flex-shrink:0}
@media(max-width:1050px){.nav nav.links.is-open{width:100%;justify-self:stretch}}
/* Bandeau du haut : statique, sans doublon, réduit sur petits écrans */
@media(max-width:1400px){.strip-track>span:nth-child(3){display:none}}
@media(max-width:1050px){.strip-track>span:nth-child(1),.strip-track .strip-dot{display:none}}
@media(max-width:700px){.brand-tape-track .tape-dot{display:none}}
/* Accessibilité */
.skip-link{position:absolute;left:16px;top:-200px;z-index:200;padding:12px 18px;border-radius:6px;background:var(--green-deep);color:#fff;font:600 14px/1.2 var(--prose)}.skip-link:focus{top:16px}
.form-card [type=submit]{align-self:flex-start}.foot-col .btn-cta{font-size:12px}
.form-note a,.foot-bottom a{text-decoration:underline;text-underline-offset:3px}
/* Pages légales */
.legal{padding:clamp(48px,7vw,96px) 0}.legal .wrap{max-width:860px}.legal h1{font-family:var(--serif);font-weight:500;font-size:clamp(40px,5vw,64px);line-height:1.05;letter-spacing:-.02em;color:var(--ink);margin-bottom:12px}.legal h2{font-family:var(--prose);font-size:20px;font-weight:600;color:var(--ink);margin:44px 0 12px}.legal p,.legal li{font-size:16px;line-height:1.75;color:var(--ink-2)}.legal p+p{margin-top:10px}.legal ul{padding-left:22px;margin-top:8px}.legal a{text-decoration:underline;text-underline-offset:3px}.a-completer{background:#f5efdf;border-left:3px solid var(--amber);padding:1px 6px;color:var(--ink)}

/* ══════════════════════════════════════════════
   V3 — Alignements
══════════════════════════════════════════════ */
/* Étiquettes : texte centré verticalement, même hauteur que le bouton voisin */
.brand-entry-tags{align-items:center}
.ctag{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;line-height:1.2}
.ctag[href]{min-height:40px;padding:0 16px}
.product-ref,.product-size{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;line-height:1;border-radius:4px}
/* En-têtes : la note s'aligne sur la dernière ligne du titre */
.metiers-head,.raisons-header,.catalogue-header{align-items:flex-end;align-items:last baseline}
/* Raisons : l'index ne se coupe plus en deux lignes */
.raison-idx{white-space:nowrap}
@media(min-width:769px) and (max-width:1060px){.raison-row{grid-template-columns:64px 170px 1fr}}
@media(max-width:768px){.raison-row{grid-template-columns:1fr;row-gap:6px}.raison-name,.raison-desc{grid-column:1}.raison-idx{padding-top:0}.raison-desc{margin-top:6px}}
/* Fiches produit : références et composition alignées en bas de chaque carte */
.product-card{display:flex;flex-direction:column}
.product-body{flex:1}
.product-tags{margin-top:auto;padding-top:4px}
/* Catégories du catalogue marque : un seul filet, pastille ambre */
.brand-page .catalogue-header{margin-bottom:clamp(36px,5vw,64px)}
.section-label{display:flex;align-items:center;gap:12px;border-top:0;padding:0 0 14px;margin-bottom:clamp(24px,3vw,36px);font-weight:600;letter-spacing:.14em;color:var(--green-deep)}
.section-label::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--amber);flex-shrink:0}
/* Chiffres du hero sur mobile : trois colonnes nettes, libellé sous le chiffre */
@media(max-width:700px){
  .home-page .hero-stats-row{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;column-gap:30px}
  .home-page .hero-sep{display:none}
  .home-page .hero-stat{flex-direction:column;align-items:flex-start;gap:6px}
}
/* Familles sur petit écran : une colonne, numéro à gauche */
@media(max-width:560px){
  .familles-grid{grid-template-columns:1fr}
  .famille-item,.famille-item:nth-child(2){border-right:0}
  .famille-item,.famille-item:nth-child(1),.famille-item:nth-child(2){display:grid;grid-template-columns:64px 1fr;column-gap:14px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line-2)}
  .famille-item:last-child{border-bottom:0}
  .famille-num{grid-row:span 2;margin:0;font-size:48px;line-height:.9}
}

/* ══════════════════════════════════════════════
   V3 — Formulaire
══════════════════════════════════════════════ */
.form-card{gap:18px}
.form-row{align-items:end;gap:16px}
.form-card .fld{gap:8px}
.form-card .fld label{font-family:var(--prose);font-size:12px;font-weight:600;letter-spacing:.06em;line-height:1.3;color:var(--ink-2)}
.form-card .fld input,.form-card .fld select,.form-card .fld textarea{width:100%;min-height:50px;padding:13px 14px;border:1px solid #cdd6cc;border-radius:8px;background-color:#fbfbf8;color:var(--ink);font:400 16px/1.4 var(--prose);transition:border-color .2s,box-shadow .2s,background-color .2s}
.form-card .fld select{padding-right:42px;background-position:right 16px center}
.form-card .fld textarea{min-height:120px}
.form-card .fld input:hover,.form-card .fld select:hover,.form-card .fld textarea:hover{border-color:#a9b8aa}
.form-card .fld input:focus,.form-card .fld select:focus,.form-card .fld textarea:focus{outline:none;border-color:var(--green);background-color:#fff;box-shadow:0 0 0 4px rgba(36,78,62,.14)}
.form-card .fld input:user-invalid,.form-card .fld select:user-invalid{border-color:#b3412e;box-shadow:0 0 0 4px rgba(179,65,46,.1)}
.fld-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-status{margin:0;padding:12px 14px;border-radius:8px;font-size:14px;line-height:1.5}
.form-status[hidden]{display:none}
.form-status.is-error{background:#fbecea;border:1px solid #f0c9c2;color:#8a2e1f}
.form-status a{text-decoration:underline}
.btn-cta.is-loading{pointer-events:none;opacity:.85}
.btn-cta.is-loading::before{content:"";width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
.form-card.is-sent>:not(.form-success){display:none}
.form-success{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:8px 0}
.form-success:focus{outline:none}
.form-success h3{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3vw,36px);line-height:1.05;color:var(--ink)}
.form-success p{font-size:16px;line-height:1.7;color:var(--ink-3);max-width:44ch}
.form-success svg{width:56px;height:56px}
.form-success circle{stroke:var(--green);stroke-dasharray:166;stroke-dashoffset:166;animation:draw .7s cubic-bezier(.65,0,.45,1) forwards}
.form-success path{stroke:var(--green);stroke-dasharray:48;stroke-dashoffset:48;animation:draw .4s .6s cubic-bezier(.65,0,.45,1) forwards}

/* ══════════════════════════════════════════════
   V3 — Effets
══════════════════════════════════════════════ */
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes fadeUp{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}
@keyframes riseIn{from{opacity:0;transform:translate3d(0,.42em,0)}to{opacity:1;transform:none}}
@keyframes cardIn{from{opacity:0;transform:translate3d(0,26px,0) scale(.985)}to{opacity:1;transform:none}}
@keyframes heroBg{from{opacity:0;transform:scale(1.07)}to{opacity:1;transform:none}}
@keyframes revealIn{from{opacity:0;translate:0 28px}to{opacity:1;translate:0 0}}
@keyframes lineIn{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes menuIn{from{opacity:0;transform:translate3d(0,-8px,0)}to{opacity:1;transform:none}}

/* Ouverture des pages (CSS seul : aucun clignotement, même sans JavaScript) */
.home-page .hero-logo{animation:fadeUp .8s cubic-bezier(.2,.7,.2,1) both}
.home-page h1.hero-title .break{animation:riseIn 1s cubic-bezier(.2,.7,.2,1) both}
.home-page h1.hero-title .break:nth-child(1){animation-delay:.08s}
.home-page h1.hero-title .break:nth-child(2){animation-delay:.18s}
.home-page h1.hero-title .break:nth-child(3){animation-delay:.28s}
.home-page h1.hero-title .break:nth-child(4){animation-delay:.38s}
.home-page .hero-title-col .hero-actions{animation:fadeUp .8s .55s cubic-bezier(.2,.7,.2,1) both}
.home-page .hero-right-col{animation:cardIn 1.1s .2s cubic-bezier(.2,.7,.2,1) both;background-position:center calc(50% + var(--hero-shift,0px))}
.hero-foot{animation:fadeUp .8s .75s cubic-bezier(.2,.7,.2,1) both}
.brand-page .hero-bg{animation:heroBg 1.6s cubic-bezier(.2,.7,.2,1) both}
.brand-page .hero-overline{animation:fadeUp .8s .15s cubic-bezier(.2,.7,.2,1) both}
.brand-page h1.hero-title{animation:riseIn 1s .25s cubic-bezier(.2,.7,.2,1) both}
.brand-page .hero-tagline{animation:fadeUp .8s .45s cubic-bezier(.2,.7,.2,1) both}
.brand-page .hero-cta{animation:fadeUp .8s .6s cubic-bezier(.2,.7,.2,1) both}

/* Apparitions au défilement (attribut posé par effets.js) */
[data-reveal]{opacity:0;translate:0 28px}
[data-reveal].is-visible{opacity:1;translate:none;animation:revealIn .9s var(--delay,0s) cubic-bezier(.2,.7,.2,1) backwards}
[data-reveal]:is(.identite-overline,.confreres-label,.mission-label,.pro-left-label,.familles-label,.story-overline,.catalogue-overline)::before{transform:scaleX(0);transform-origin:0 50%}
[data-reveal].is-visible:is(.identite-overline,.confreres-label,.mission-label,.pro-left-label,.familles-label,.story-overline,.catalogue-overline)::before{transform:none;animation:lineIn .8s calc(var(--delay,0s) + .3s) cubic-bezier(.2,.7,.2,1) backwards}
img[data-fade]{opacity:0}
img[data-fade].is-loaded{opacity:1;animation:fadeIn .7s ease backwards}

/* Navigation : ombre et barre de progression au défilement */
.nav{transition:box-shadow .35s,background-color .35s}
.nav.is-scrolled{box-shadow:0 12px 30px -20px rgba(23,52,37,.45)}
.nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--green),var(--amber));transform:scaleX(var(--progress,0));transform-origin:0 50%;pointer-events:none}
.nav nav.links a.is-active{color:var(--green)}
.nav nav.links a.is-active::after{width:100%}
@media(max-width:1050px){
  .nav nav.links.is-open{animation:menuIn .28s cubic-bezier(.2,.7,.2,1)}
  .nav nav.links.is-open a{animation:menuIn .4s cubic-bezier(.2,.7,.2,1) both}
  .nav nav.links.is-open a:nth-child(2){animation-delay:.04s}
  .nav nav.links.is-open a:nth-child(3){animation-delay:.08s}
  .nav nav.links.is-open a:nth-child(4){animation-delay:.12s}
  .nav nav.links.is-open a:nth-child(5){animation-delay:.16s}
}

/* Boutons : reflet au survol, léger enfoncement au clic */
.btn-cta,.btn-mission{position:relative;overflow:hidden;isolation:isolate}
.btn-cta::after,.btn-mission::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.24) 50%,transparent 70%);transform:translateX(-120%);transition:transform .75s cubic-bezier(.2,.7,.2,1)}
.btn-cta:hover::after,.btn-mission:hover::after{transform:translateX(120%)}
.btn-cta,.btn-outline,.btn-mission{transition:background-color .25s,color .25s,border-color .25s,transform .15s}
.btn-cta:active,.btn-outline:active,.btn-mission:active{transform:scale(.98)}

/* Cartes et listes : survols doux */
.product-card{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .45s}
.product-card:hover{transform:translateY(-5px);border-color:#d3dccf;box-shadow:0 24px 44px -28px rgba(23,52,37,.4)}
.product-img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.product-card:hover .product-img{transform:scale(1.05)}
.confrere-card{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.confrere-card:hover{transform:translateY(-5px);box-shadow:0 24px 44px -28px rgba(23,52,37,.4)}
.confrere-photo{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.confrere-card:hover .confrere-photo{transform:scale(1.04)}
.brand-visual{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.brand-entry:hover .brand-visual{transform:scale(1.06) rotate(-2deg)}
.brand-entry-name{transition:color .3s}
.brand-entry:hover .brand-entry-name{color:var(--green)}
.ctag[href]{transition:background-color .25s,gap .25s}
.ctag[href]:hover{background:var(--green-deep)}
.metier-col{transition:background-color .4s}
.metier-col:hover{background-color:rgba(255,255,255,.035)}
.raison-row{transition:background-color .3s}
.raison-row:hover{background:rgba(255,255,255,.5)}
.famille-num{transition:opacity .4s,transform .5s cubic-bezier(.2,.7,.2,1)}
.famille-item:hover .famille-num{opacity:.75;transform:translateY(-3px)}
/* Mission : halo lumineux qui suit la souris */
.mission::before{left:var(--mx,85%);top:var(--my,85%);right:auto;bottom:auto;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 62%);transition:left .5s ease-out,top .5s ease-out}

@media(prefers-reduced-motion:reduce){
  [data-reveal],img[data-fade]{opacity:1;translate:none}
  [data-reveal]::before{transform:none}
}
@media print{
  [data-reveal],img[data-fade]{opacity:1!important;translate:none!important}
  .nav::after{display:none}
}
