:root{
  --sand:#e9f5f2;--shell:#dcefe8;--ink:#12353b;--deep:#0d5b63;--lagoon:#2b9aa0;
  --sea:#6bc2c5;--foam:#eff9f7;--coral:#d59b7a;--lime:#b6c77d;--white:#fff;
  --muted:#48686d;--line:rgba(16,45,58,.16);--max:1240px;--radius:30px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#edf8f5 0%,#e4f3ef 100%);color:var(--ink);line-height:1.52;overflow-x:hidden}
::selection{background:#a8d9e8;color:#082b3a}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:20px 32px;color:#fff;transition:.35s ease;background:linear-gradient(to bottom,rgba(4,27,40,.74),transparent)}
.site-header.scrolled{background:rgba(10,73,80,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1)}
.brand{font-weight:850;letter-spacing:.14em;color:inherit;text-decoration:none;font-size:.96rem}.nav{display:flex;gap:22px;align-items:center}.nav a{color:inherit;text-decoration:none;font-size:.9rem;opacity:.8;transition:.2s}.nav a:hover{opacity:1}.lang{border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:7px 11px;cursor:pointer}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:#1e7f84;isolation:isolate}
.hero-media{position:absolute;inset:0;background:
 radial-gradient(circle at 72% 22%,rgba(232,251,245,.28),transparent 25%),
 radial-gradient(circle at 23% 58%,rgba(83,182,178,.24),transparent 34%),
 linear-gradient(135deg,#0a4b53 0%,#126e75 34%,#2b9aa0 68%,#9ad9d3 100%)}
.hero-media:before{content:"";position:absolute;inset:-12%;background:repeating-radial-gradient(ellipse at 45% 70%,transparent 0 52px,rgba(255,255,255,.055) 53px 54px);transform:rotate(-9deg) scale(1.15);animation:drift 14s ease-in-out infinite alternate}
.hero-media:after{content:"";position:absolute;width:58vw;height:58vw;right:-11vw;top:8vh;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 46px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018),0 0 0 155px rgba(255,255,255,.012);animation:pulse 8s ease-in-out infinite}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,40,43,.9) 0%,rgba(8,63,68,.32) 46%,rgba(8,63,68,.06) 75%)}
.shell-orbit{position:absolute;right:6vw;bottom:14vh;width:min(34vw,430px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.18);opacity:.75;animation:float 9s ease-in-out infinite}
.shell-orbit:before,.shell-orbit:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14)}.shell-orbit:before{inset:15%}.shell-orbit:after{inset:31%}
.hero-content{position:relative;z-index:3;width:min(var(--max),calc(100% - 56px));margin:0 auto;padding:180px 0 72px;color:#fff}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.71rem;font-weight:800}.hero h1{font-size:clamp(5.4rem,15vw,12.5rem);line-height:.76;margin:.16em 0 .16em;letter-spacing:-.075em}.hero-lead{max-width:790px;font-size:clamp(1.3rem,2.5vw,2.4rem);line-height:1.18;margin:0 0 30px;color:#edf8fb}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;padding:13px 18px;border-radius:999px;text-decoration:none;font-weight:750;transition:.2s transform,.2s background}.btn:hover{transform:translateY(-2px)}.btn.primary{background:#fff;color:#102d3a}.btn.ghost{color:#fff;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.05)}
.scroll-mark{position:absolute;z-index:4;right:32px;bottom:34px;color:rgba(255,255,255,.7);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;writing-mode:vertical-rl}.scroll-mark:after{content:"";display:inline-block;width:1px;height:56px;background:rgba(255,255,255,.45);margin-top:12px;animation:scrollLine 2s ease-in-out infinite}
.section{padding:118px max(28px,calc((100vw - var(--max))/2))}.section h2{font-size:clamp(2.5rem,5.7vw,5.8rem);line-height:.94;letter-spacing:-.055em;margin:.16em 0}.section-head{max-width:980px;margin-bottom:58px}.intro{position:relative;overflow:hidden}.intro:after{content:"CLAM";position:absolute;right:-.05em;bottom:-.16em;font-weight:900;font-size:clamp(9rem,24vw,22rem);letter-spacing:-.08em;color:rgba(16,45,58,.035);pointer-events:none}.intro-grid{display:grid;grid-template-columns:.9fr 1.2fr;gap:80px;align-items:start}.large-copy{font-size:clamp(1.35rem,2vw,2rem);line-height:1.34;color:#2a6670;margin-top:28px}
.stakes{background:#f1faf7}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}.stat{position:relative;border-top:1px solid var(--line);padding:24px 18px 34px 0;min-height:210px;display:flex;flex-direction:column;gap:14px}.stat:after{content:"";position:absolute;right:18px;bottom:18px;width:54px;height:54px;border-radius:50%;border:1px solid rgba(11,38,39,.12)}.stat strong{font-size:clamp(2.9rem,5.6vw,5.5rem);letter-spacing:-.065em;line-height:.92}.stat span{color:#55757a;max-width:330px}.source-note{margin-top:38px;max-width:860px;font-size:1.25rem;color:#436a6f}
.dark{position:relative;background:var(--deep);color:#edf7fa;overflow:hidden}.dark:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 20%,rgba(89,169,199,.16),transparent 25%),radial-gradient(circle at 10% 80%,rgba(103,196,187,.10),transparent 23%);pointer-events:none}.dark .kicker{color:#9fd6e8}.cards.three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative}.card{position:relative;border:1px solid rgba(255,255,255,.13);border-radius:var(--radius);padding:30px;min-height:360px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));display:flex;flex-direction:column;overflow:hidden}.card:after{content:"";position:absolute;right:-48px;top:-48px;width:150px;height:150px;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 25px rgba(255,255,255,.018)}.card-index{font-variant-numeric:tabular-nums;opacity:.42}.card h3{font-size:2.25rem;margin:auto 0 10px}.card p{color:#bfd0d8;font-size:1.05rem;max-width:92%}
.process{background:#e7f7f3}.timeline{border-top:1px solid var(--line);counter-reset:steps}.step{position:relative;display:grid;grid-template-columns:88px 1fr;gap:28px;padding:34px 0;border-bottom:1px solid var(--line)}.step>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-size:.9rem;font-weight:800;background:rgba(255,255,255,.32)}.step h3{font-size:1.7rem;margin:0 0 8px;letter-spacing:-.02em}.step p{margin:0;color:#4f7075;max-width:760px}
.dates-section{background:#eef8f4}.dates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.date-card{position:relative;padding:24px 26px;border:1px solid var(--line);border-radius:20px;display:flex;justify-content:space-between;gap:20px;background:rgba(255,255,255,.5);overflow:hidden}.date-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}.date-card:hover:before{background:var(--sea)}.date-card strong{font-variant-numeric:tabular-nums}.date-card span{color:#4e7074;text-align:right}.date-card.accent{background:#d6f0ec}.date-card.accent:before{background:var(--coral)}
.people-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.person{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:center;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:rgba(255,255,255,.025)}.portrait{aspect-ratio:1;border-radius:18px;background:radial-gradient(circle at 38% 35%,#7ed1c8 0 8%,transparent 9%),linear-gradient(145deg,#166d72,#84cfc8);display:grid;place-items:center;font-size:2rem;font-weight:800;position:relative;overflow:hidden}.portrait:after{content:"";position:absolute;width:75%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.18)}.person h3{font-size:1.65rem;margin:0 0 7px}.person p{margin:0;color:#bfd0d8}
.partners{background:#dbf0eb}.partner-cloud{display:flex;flex-wrap:wrap;gap:10px}.partner-cloud span{border:1px solid rgba(16,45,58,.18);padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.34);backdrop-filter:blur(8px)}
.impact{position:relative;background:#146a72;color:#eefaf8;overflow:hidden}.impact:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;bottom:-220px;border:1px solid rgba(255,255,255,.09);box-shadow:0 0 0 58px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.015)}.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;position:relative;z-index:1}.impact .kicker{color:#b7efe8}.impact-copy{font-size:1.18rem;color:#c7dce5}.impact-copy p:first-child{font-size:1.48rem;color:#fff}
.eu-section{background:#eef8f5}.eu-box{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:48px 0;display:grid;grid-template-columns:1fr 300px;gap:46px;align-items:center}.eu-box p{max-width:770px;color:#4b7175}.logo-card{display:grid;place-items:center;background:white;border-radius:22px;padding:24px;min-height:160px;border:1px solid rgba(16,45,58,.1);box-shadow:0 18px 48px rgba(16,64,88,.09)}.logo-card img{max-width:100%;height:auto}.official-logos{margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.official-logos>p:first-child{font-weight:750}.official-logos img{display:block;max-width:100%;width:1024px;height:auto;margin:18px auto;background:white;border-radius:16px}.funding-note{font-size:.92rem;color:#638389!important;max-width:100%!important;text-align:center}.eu-mark{display:none}
.footer{padding:40px max(28px,calc((100vw - var(--max))/2));background:#0d5b63;color:#eefaf8;display:flex;justify-content:space-between;gap:40px;border-top:1px solid rgba(255,255,255,.08)}.footer>div:first-child{display:flex;flex-direction:column;gap:4px}.footer-note{opacity:.62;text-align:right}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}
@keyframes drift{from{transform:rotate(-9deg) scale(1.1) translate3d(-1%,0,0)}to{transform:rotate(-6deg) scale(1.18) translate3d(2%,-2%,0)}}@keyframes pulse{0%,100%{transform:scale(.96);opacity:.6}50%{transform:scale(1.04);opacity:1}}@keyframes float{0%,100%{transform:translateY(0) rotate(4deg)}50%{transform:translateY(-18px) rotate(-2deg)}}@keyframes scrollLine{0%,100%{transform:scaleY(.35);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}
@media(max-width:900px){.nav a{display:none}.site-header{padding:17px 19px}.hero-content{width:calc(100% - 36px);padding-bottom:58px}.shell-orbit{width:52vw;right:-12vw;bottom:26vh}.scroll-mark{display:none}.intro-grid,.cards.three,.people-grid,.impact-grid,.eu-box{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}.dates-grid{grid-template-columns:1fr}.section{padding:84px 20px}.person{grid-template-columns:96px 1fr}.footer{flex-direction:column}.footer-note{text-align:left}.date-card{flex-direction:column}.date-card span{text-align:left}.logo-card{max-width:300px}.stat{min-height:auto}.intro:after{font-size:38vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-media:before,.hero-media:after,.shell-orbit,.scroll-mark:after{animation:none}}

/* Documentary photo sections */
.field-section{position:relative;overflow:hidden}.field-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:end;margin-bottom:2.4rem}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.photo-grid.three{grid-template-columns:1.35fr 1fr 1fr}.photo-card{position:relative;overflow:hidden;border-radius:24px;min-height:320px;background:#d9f0eb;margin:0}.photo-card.large{grid-row:span 2;min-height:660px}.photo-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s ease}.photo-card:hover img{transform:scale(1.025)}.photo-caption{position:absolute;left:0;right:0;bottom:0;padding:2.2rem 1.2rem 1rem;color:white;background:linear-gradient(transparent,rgba(0,0,0,.72));font-size:.9rem}.documentary-note{margin-top:1rem;font-size:.78rem;opacity:.66}.venue-section{background:linear-gradient(180deg,#edf9f6 0%,#eef8f4 100%)}.venue-copy{max-width:900px}.field-section.dark .photo-card{background:#103f59}.field-section.dark .documentary-note{color:rgba(255,255,255,.66)}
@media(max-width:900px){.field-intro{grid-template-columns:1fr;gap:1rem}.photo-grid,.photo-grid.three{grid-template-columns:1fr}.photo-card,.photo-card.large{min-height:320px;grid-row:auto}}

/* V6 - News + appel à participation */
.news-section{background:linear-gradient(180deg,#eef9f6 0%,#f7fcfa 100%)}
.news-section .section-head{max-width:820px}
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px}
.news-card{background:rgba(255,255,255,.72);border:1px solid rgba(26,58,58,.13);border-radius:24px;overflow:hidden;box-shadow:0 18px 50px rgba(28,49,48,.08)}
.news-image{display:block;aspect-ratio:16/10;overflow:hidden;background:#d9e9ef}
.news-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.news-card:hover .news-image img{transform:scale(1.025)}
.news-image.flyer-crop img{object-position:center 23%}
.news-body{padding:26px 28px 30px}
.news-meta{display:flex;justify-content:space-between;gap:20px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;opacity:.62;margin-bottom:18px}
.news-body h3{font-size:clamp(1.45rem,2.1vw,2rem);margin:0 0 12px}
.news-body p{margin:0 0 20px;line-height:1.65;color:rgba(26,45,44,.82)}
.text-link{font-weight:650;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.news-cta{display:flex;justify-content:center;margin-top:28px}
.participate-section{background:#16737a;color:#f6fcfb;position:relative;overflow:hidden}
.participate-section:before{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-210px;top:-260px;box-shadow:0 0 0 80px rgba(255,255,255,.018),0 0 0 160px rgba(255,255,255,.012)}
.participate-grid{position:relative;display:block;max-width:980px;margin:0 auto}
.participate-copy .large-copy{color:rgba(248,243,232,.88)}
.participate-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:32px 0}
.participate-points>div{padding:18px 16px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.035)}
.participate-points strong,.participate-points span{display:block}
.participate-points strong{font-size:1.05rem;margin-bottom:6px}
.participate-points span{font-size:.86rem;line-height:1.4;opacity:.72}
.participate-actions{justify-content:flex-start}
.participate-section .btn.ghost{color:#fff;border-color:rgba(255,255,255,.34)}
@media(max-width:900px){.news-grid{grid-template-columns:1fr}.participate-points{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.participate-points{grid-template-columns:1fr}.news-body{padding:22px}.news-image{aspect-ratio:4/3}}


/* V7 - partenaires et maintenance modulaire */
.partners-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px}
.partner-card{display:flex;flex-direction:column;min-height:230px;padding:24px;border:1px solid rgba(17,54,57,.12);border-radius:22px;background:rgba(255,255,255,.68);text-decoration:none;color:inherit;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.partner-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(17,54,57,.10);border-color:rgba(17,54,57,.28)}
.partner-card h3{margin:12px 0 10px;font-size:1.18rem;line-height:1.2}
.partner-card p{margin:0;color:var(--muted);line-height:1.55}
.partner-category{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:700}
.partner-link{margin-top:auto;padding-top:20px;font-weight:700;font-size:.9rem;color:var(--teal)}
.partner-banner{margin-top:30px;padding:22px;border-radius:24px;background:#f9fffe;border:1px solid rgba(17,54,57,.10)}
.partner-banner img{display:block;width:100%;height:auto;object-fit:contain}
.text-logo{display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center;padding:28px!important;text-decoration:none;color:inherit}
.text-logo strong{font-size:1.8rem}.text-logo span{margin-top:8px;line-height:1.45;color:var(--muted)}
@media(max-width:1050px){.partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.partners-grid{grid-template-columns:1fr}.partner-card{min-height:0}}

/* V10: team portraits and single kick-off image */
.portrait img{width:100%;height:100%;object-fit:cover;display:block}.portrait:has(img):after{display:none}.photo-grid.single-photo{grid-template-columns:minmax(0,900px);justify-content:center}.photo-grid.single-photo .photo-card{min-height:480px}
@media(max-width:900px){.photo-grid.single-photo .photo-card{min-height:320px}}


/* V13 - RGAA-oriented accessibility and responsive navigation */
html{scroll-padding-top:110px}
body{overflow-x:auto}
section[id]{scroll-margin-top:110px}
.skip-link{position:fixed;z-index:9999;top:8px;left:8px;padding:12px 16px;background:#fff;color:#12353b;border:3px solid #12353b;border-radius:8px;transform:translateY(-160%);transition:none;font-weight:800}
.skip-link:focus{transform:none}
:where(a,button):focus-visible{outline:3px solid #000;outline-offset:4px;box-shadow:0 0 0 7px #fff}
a{text-underline-offset:.18em}
.text-link,.footer a,.legal-section a{text-decoration:underline;text-decoration-thickness:.08em}
.site-header{min-height:86px;padding:10px 24px;background:rgba(13,91,99,.97);gap:22px}
.site-header.scrolled{background:rgba(13,91,99,.98)}
.header-identities{display:flex;align-items:center;gap:16px;min-width:max-content}
.um-header-link{display:flex;align-items:center;background:#fff;border-radius:8px;padding:6px 9px;min-height:54px}
.um-header-link img{display:block;width:168px;height:auto}
.brand{font-size:.9rem;letter-spacing:.1em}
.nav{margin-left:auto}
.nav ul{display:flex;align-items:center;gap:18px;margin:0;padding:0;list-style:none}
.nav a{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:.25em}
.nav a:hover,.nav a:focus-visible{text-decoration-color:currentColor}
.lang{min-width:48px;min-height:44px;font-weight:800}
.menu-toggle{display:none;align-items:center;gap:9px;min-height:48px;padding:8px 12px;border:2px solid rgba(255,255,255,.8);border-radius:10px;background:#0b4d54;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.menu-icon{width:24px;display:grid;gap:4px}.menu-icon span{display:block;height:2px;background:currentColor;border-radius:2px}
.hero-media:before,.hero-media:after,.shell-orbit,.scroll-mark:after{animation:none!important}
.reveal{opacity:1!important;transform:none!important;transition:none!important}
.card p,.person p{color:#dceff0}
.impact-copy{color:#e2f3f3}
.partner-card p,.text-logo span{color:#48686d}
.photo-caption{background:linear-gradient(transparent,rgba(0,0,0,.88));font-weight:650}
.dates-grid{list-style:none;margin:0;padding:0}
.linked-logos{margin-top:38px;padding-top:34px;border-top:1px solid var(--line)}
.linked-logos h3{font-size:1.35rem;margin:0 0 22px}
.logo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0}
.logo-grid li{min-width:0}
.logo-link{display:flex;align-items:center;justify-content:center;min-height:128px;height:100%;padding:16px;background:#fff;border:2px solid rgba(18,53,59,.18);border-radius:16px;transition:none}
.logo-link:hover{border-color:#12353b}
.logo-link img{display:block;max-width:100%;max-height:92px;width:auto;height:auto;object-fit:contain}
.partart-about{max-width:900px;margin:34px auto 0;padding:28px;border:2px solid rgba(18,53,59,.15);border-radius:20px;background:#fff}
.partart-about h3{font-size:1.55rem;margin:0 0 14px}.partart-about p{color:#355a60;line-height:1.7}
.legal-section{background:#f7fcfa}
.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:28px}.legal-grid>div{padding:24px;background:#fff;border:1px solid rgba(18,53,59,.18);border-radius:18px}.legal-grid h3{margin-top:0}.legal-grid p{color:#355a60}
.footer{display:grid;grid-template-columns:1fr auto;align-items:start;background:#0d5b63;color:#fff}.footer-main{display:grid;gap:20px}.footer-links{display:flex;flex-wrap:wrap;gap:12px 22px}.footer-links a{color:#fff;min-height:44px;display:inline-flex;align-items:center}.footer-note{max-width:340px;color:#fff;opacity:.9}

@media(max-width:1180px){
  .site-header{padding-inline:16px}.um-header-link img{width:145px}.nav ul{gap:12px}.nav a{font-size:.84rem}
}
@media(max-width:1080px){
  .js .menu-toggle{display:flex;margin-left:auto}
  .js .nav{display:none;position:absolute;top:100%;left:12px;right:12px;margin:0;padding:12px;background:#0d5b63;border:2px solid rgba(255,255,255,.35);border-radius:14px;box-shadow:0 16px 36px rgba(0,0,0,.28)}
  .js .nav.is-open{display:block}
  .nav ul{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px}
  .nav a,.lang{width:100%;justify-content:flex-start;padding:8px 10px;font-size:1rem}
  .nav .lang{border-color:rgba(255,255,255,.7)}
  .logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
  .site-header{min-height:78px;gap:10px}.header-identities{gap:10px}.um-header-link img{width:118px}.brand{font-size:.78rem}
  .nav ul{grid-template-columns:1fr}
  .logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-grid{grid-template-columns:1fr}.footer{grid-template-columns:1fr;gap:24px}.footer-note{text-align:left;max-width:none}
}
@media(max-width:430px){
  .brand{display:none}.um-header-link img{width:128px}.menu-toggle>span:last-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.menu-toggle{padding:10px}
  .logo-grid{grid-template-columns:1fr}.logo-link{min-height:110px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* V13 accessibility contrast and legacy mobile overrides */
:root{--teal:#0d5b63}
.nav a{opacity:1}
.news-meta{opacity:1;color:#48686d}
.documentary-note{opacity:1;color:#355a60}
.field-section.dark .documentary-note{color:#fff}
.card-index{opacity:1;color:#b7efe8}
.participate-points span{opacity:1;color:#eaf7f7}
.participate-copy .large-copy{color:#f6fcfb}
.funding-note{color:#48686d!important}
@media(max-width:1080px){.nav a{display:flex!important}}


/* V18 - pre-audit RGAA hardening */
.news-section .btn.ghost{color:#12353b;border-color:#12353b;background:#fff}
.news-section .btn.ghost:hover{background:#edf8f5}
#main-content:focus{outline:3px solid #000;outline-offset:4px}
.accessibility-page{background:#edf8f5;color:#12353b}
.accessibility-page .simple-main{padding:140px max(24px,calc((100vw - 980px)/2)) 80px}
.accessibility-page .simple-main h1{font-size:clamp(2.7rem,7vw,5.4rem);line-height:.95;letter-spacing:-.04em;margin:.2em 0 .5em}
.accessibility-page .simple-main h2{font-size:clamp(1.6rem,3vw,2.4rem);margin:2em 0 .5em}
.accessibility-page .simple-main p,.accessibility-page .simple-main li{max-width:850px;line-height:1.7}
.accessibility-page .status-box{padding:22px;border:2px solid #12353b;border-radius:16px;background:#fff;margin:24px 0 38px}
.accessibility-page .status-box strong{font-size:1.2rem}
.accessibility-page .simple-main a{text-decoration:underline;text-underline-offset:.18em}

/* V22 - clickable team portraits and names */
.person-link{display:block;text-decoration:none;color:inherit}
.person-name-link{color:inherit;text-decoration:none}
.person-name-link:hover{text-decoration:underline;text-underline-offset:.18em}
.person-link:focus-visible,.person-name-link:focus-visible{outline:3px solid #fff;outline-offset:4px;border-radius:8px}
.person-link:hover img{transform:scale(1.025)}
.person-link img{transition:transform .3s ease}

/* V24 - CareShell / PALRNJ bilingual scientific project link */
.careshell-copy p{margin:0}
.careshell-copy p+p{margin-top:1.25rem}
.careshell-palrnj a{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
.careshell-palrnj a:hover{text-decoration-thickness:2px}

/* V25 - header simplifié : identité CLAM-EU seule */
.site-header .header-identities{min-width:0;gap:0}
.site-header .brand{display:inline-flex;align-items:center;white-space:nowrap;font-size:1.04rem;min-height:44px;letter-spacing:.10em}
@media(max-width:430px){.site-header .brand{display:inline-flex;font-size:1rem}}
