:root {
  --ink:#0a2745;
  --ink-2:#143754;
  --copper:#bd6d35;
  --copper-soft:#d7a77e;
  --paper:#fbfaf7;
  --paper-2:#f3efe8;
  --white:#ffffff;
  --sage:#6f8067;
  --text:#253647;
  --muted:#677382;
  --line:#dad7d0;
  --shadow:0 18px 46px rgba(10,39,69,.10);
  --radius:22px;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --ease:cubic-bezier(.2,.75,.25,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{color:inherit}
img{display:block;max-width:100%}
svg{display:block}

.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;padding:.7rem 1rem;background:var(--ink);color:white;border-radius:10px;transition:.2s}
.skip-link:focus{top:12px}
.progress{position:fixed;inset:0 0 auto;z-index:1100;height:3px;background:transparent}
.progress span{display:block;width:0;height:100%;background:var(--copper)}

.site-header{position:sticky;top:0;z-index:1000;background:rgba(251,250,247,.9);border-bottom:1px solid rgba(10,39,69,.10);backdrop-filter:blur(16px);transition:box-shadow .25s var(--ease)}
.site-header.scrolled{box-shadow:0 8px 28px rgba(10,39,69,.07)}
.header-inner{width:min(1220px,calc(100% - 32px));min-height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:relative}
.brand{width:145px;display:block;overflow:hidden}
.brand img{width:100%;mix-blend-mode:multiply}
.header-actions{display:flex;align-items:center;gap:.7rem}
.header-contact{display:none;background:var(--ink);color:#fff;padding:.72rem 1rem;border-radius:10px;font-weight:700;font-size:.86rem}
.menu-toggle{width:48px;height:48px;border:0;background:transparent;display:grid;place-content:center;gap:5px;border-radius:12px;cursor:pointer}
.menu-toggle span{width:27px;height:2px;background:var(--ink);transition:.25s var(--ease);transform-origin:center}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.main-nav{position:fixed;top:76px;left:0;right:0;max-height:calc(100dvh - 76px);overflow:auto;padding:1rem 20px calc(1.3rem + env(safe-area-inset-bottom));display:grid;background:rgba(251,250,247,.98);border-bottom:1px solid var(--line);transform:translateY(-120%);opacity:0;pointer-events:none;transition:.3s var(--ease);box-shadow:0 18px 38px rgba(10,39,69,.12)}
.main-nav.open{transform:none;opacity:1;pointer-events:auto}
.main-nav a{padding:1rem .35rem;border-bottom:1px solid var(--line);font-weight:650}
.main-nav .nav-cta{margin-top:.8rem;text-align:center;background:var(--ink);color:#fff;border:0;border-radius:12px}

.hero{position:relative;overflow:hidden;padding:56px 16px 44px;background:radial-gradient(circle at 82% 9%,rgba(189,109,53,.09),transparent 32%),linear-gradient(180deg,#fffdfa 0%,#f8f4ed 100%)}
.hero-inner{width:min(1220px,100%);margin:auto;display:grid;gap:34px;position:relative;z-index:2}
.eyebrow{margin:0 0 .85rem;color:var(--copper);text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:800}
h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:500;line-height:1.06;margin-top:0}
h1{font-size:clamp(3rem,14vw,5.4rem);letter-spacing:-.045em;margin-bottom:1.35rem;max-width:760px}
h1 em,h2 em{font-style:normal;color:var(--copper)}
.hero-text{font-size:1.04rem;line-height:1.75;margin:0;max-width:660px}
.hero-buttons{display:grid;gap:.75rem;margin:1.7rem 0 1rem}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:.85rem;padding:.78rem 1.1rem;border-radius:11px;font-weight:750;border:1px solid transparent;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease)}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--ink);color:white;box-shadow:0 12px 24px rgba(10,39,69,.18)}
.button-outline{border-color:var(--copper);color:#8e4d21;background:rgba(255,255,255,.55)}
.button-copper{background:var(--copper);color:#fff;box-shadow:0 12px 24px rgba(189,109,53,.18)}
.button-light{background:#fff;color:var(--ink)}
.button-ghost-light{border-color:rgba(255,255,255,.55);color:#fff}
.micro-line{display:flex;align-items:center;gap:.55rem;margin:1rem 0 0;color:var(--muted);font-size:.82rem;font-weight:650}
.micro-line span{width:30px;height:1px;background:var(--copper)}
.hero-visual{position:relative;min-height:350px;margin-inline:-4px}
.hero-image{position:absolute;inset:0;border-radius:55% 44% 18% 42%/42% 52% 23% 46%;background:linear-gradient(90deg,rgba(251,250,247,.1),transparent 22%),url("assets/hero-landscape.jpg") center/cover no-repeat;box-shadow:var(--shadow);overflow:hidden}
.hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(255,255,255,.46),transparent 40%,rgba(10,39,69,.12))}
.hero-lines{position:absolute;inset:-28px -14px -15px -25px;width:calc(100% + 50px);height:calc(100% + 45px);fill:none;pointer-events:none}
.hero-lines path{stroke:rgba(189,109,53,.65);stroke-width:1.2}
.hero-lines path:nth-child(2){stroke:rgba(10,39,69,.48)}
.hero-lines path:nth-child(3){stroke:rgba(111,128,103,.48)}
.hero-lines circle{fill:var(--ink);stroke:#fff;stroke-width:2}
.hero-lines circle:nth-of-type(2){fill:var(--copper)}
.hero-lines circle:nth-of-type(3){fill:var(--sage)}
.hero-seal{position:absolute;right:18px;bottom:14px;padding:.52rem .72rem;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border-radius:999px;color:var(--ink);font-family:var(--serif);font-size:.8rem;box-shadow:0 8px 24px rgba(10,39,69,.12)}
.hero-orbit{position:absolute;border:1px solid rgba(10,39,69,.10);border-radius:50%;pointer-events:none}
.orbit-one{width:460px;height:210px;right:-240px;top:80px;transform:rotate(-14deg)}
.orbit-two{width:420px;height:190px;left:-260px;bottom:20px;transform:rotate(14deg);border-color:rgba(189,109,53,.16)}
.hero-node{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--copper)}
.node-one{right:14%;top:11%}.node-two{left:8%;bottom:11%;background:var(--ink)}

.quick-links{width:min(1220px,calc(100% - 32px));margin:-4px auto 0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;position:relative;z-index:5}
.quick-card{position:relative;min-height:180px;padding:1.1rem;border-radius:16px;background:rgba(255,255,255,.88);border:1px solid rgba(10,39,69,.08);box-shadow:0 8px 22px rgba(10,39,69,.055);display:flex;flex-direction:column;transition:.25s var(--ease)}
.quick-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(10,39,69,.1)}
.quick-icon{width:42px;height:42px;margin-bottom:.85rem;color:var(--copper)}
.quick-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.quick-card strong{font-family:var(--serif);color:var(--ink);font-size:1.08rem;font-weight:500;line-height:1.15}
.quick-card small{font-size:.78rem;color:var(--muted);line-height:1.45;margin-top:.45rem}
.quick-arrow{position:absolute;right:13px;bottom:11px;color:var(--copper);font-size:1.35rem}

.section{padding:76px 16px;position:relative}
.section-heading{max-width:760px;margin-bottom:2.3rem}
h2{font-size:clamp(2.35rem,10vw,4.55rem);letter-spacing:-.035em;margin-bottom:1.1rem}
.section-heading>p:last-child,.works-head>p,.architecture-copy>p{max-width:680px;color:var(--text);font-size:1rem}
.section-method{background:#fff}
.method-grid{display:grid;gap:13px;width:min(1220px,100%);margin:auto}
.method-card{position:relative;padding:1.45rem;border:1px solid var(--line);background:var(--paper);border-radius:18px;min-height:290px;overflow:hidden}
.method-number{position:absolute;right:18px;top:13px;font-family:var(--serif);font-size:2.8rem;color:rgba(10,39,69,.08)}
.method-icon{width:68px;height:68px;border:1px solid rgba(189,109,53,.28);background:rgba(255,255,255,.7);border-radius:50%;display:grid;place-items:center;margin-bottom:1.15rem;color:var(--copper)}
.method-icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.method-card h3{font-size:1.7rem;margin-bottom:.65rem}
.method-card p{margin:0;color:var(--muted)}
.method-detail{width:min(1220px,100%);margin:14px auto 0;border-radius:16px;background:var(--ink);color:#fff;padding:1.2rem 1.25rem;display:grid;gap:1rem}
.method-detail strong{display:block;font-family:var(--serif);font-size:1.18rem;font-weight:500;margin-bottom:.2rem}
.method-detail span{color:rgba(255,255,255,.75);font-size:.86rem}
.text-link{font-weight:750;color:var(--copper-soft);display:inline-flex;align-items:center;gap:.6rem}

.section-works{background:linear-gradient(180deg,var(--paper-2),#f9f7f2)}
.works-head{width:min(1220px,100%);margin:auto 0 2rem;display:grid;gap:1rem}
.works-head h2{margin-bottom:0}
.work-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:84vw;gap:13px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;padding:.15rem 16px 1.2rem;margin-inline:-16px;scrollbar-width:none}
.work-scroller::-webkit-scrollbar{display:none}
.work-card{scroll-snap-align:start;border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(10,39,69,.10);box-shadow:0 8px 20px rgba(10,39,69,.04)}
.work-open{width:100%;height:100%;padding:0;border:0;background:#fff;text-align:left;cursor:pointer;position:relative}
.work-open>img{width:100%;height:190px;object-fit:cover}
.work-tag{position:absolute;left:12px;top:12px;background:rgba(10,39,69,.90);color:#fff;border-radius:7px;padding:.28rem .5rem;text-transform:uppercase;letter-spacing:.07em;font-size:.62rem;font-weight:800}
.work-body{display:block;position:relative;padding:1.15rem 2.8rem 1.25rem 1.1rem;min-height:156px}
.work-body strong{display:block;font-family:var(--serif);font-size:1.35rem;line-height:1.08;color:var(--ink);font-weight:500}
.work-body small{display:block;color:var(--muted);font-size:.84rem;line-height:1.48;margin-top:.65rem}
.work-body i{position:absolute;right:15px;bottom:15px;color:var(--copper);font-style:normal;font-size:1.35rem}
.scroll-hint{font-size:.78rem;color:var(--muted);margin:.2rem 0 0}

.publication-note{width:min(1220px,100%);margin:1.7rem auto 0;padding:1rem 1.05rem;border:1px solid rgba(10,39,69,.12);border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(248,244,237,.92));display:grid;gap:.85rem;box-shadow:0 12px 32px rgba(10,39,69,.05)}
.publication-note>div:first-child{display:grid;grid-template-columns:30px 1fr;gap:.75rem;align-items:start}
.publication-note-icon{width:28px;height:28px;border:1px solid rgba(189,109,53,.45);border-radius:50%;display:grid;place-items:center;color:var(--copper);font-family:var(--serif);font-weight:800}
.publication-note p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.55}
.publication-note strong{color:var(--ink)}
.publication-note-actions{display:flex;flex-wrap:wrap;gap:.55rem 1rem;padding-left:42px}
.publication-note-actions a,.publication-note-actions button{border:0;background:transparent;padding:0;color:var(--ink);font:inherit;font-size:.78rem;font-weight:760;text-decoration:underline;text-decoration-color:rgba(189,109,53,.58);text-underline-offset:4px;cursor:pointer}

.section-architecture{overflow:hidden;background:#fff}
.section-architecture::before{content:"";position:absolute;width:680px;height:260px;border:1px solid rgba(189,109,53,.16);border-radius:50%;left:-430px;top:30%;transform:rotate(15deg)}
.architecture-copy{position:relative;z-index:2;max-width:780px}
.architecture-path{display:grid;gap:12px;position:relative;z-index:2;margin-top:2.2rem}
.architecture-item{display:grid;grid-template-columns:74px 1fr;gap:1rem;align-items:center;padding:1.15rem;background:var(--paper);border:1px solid var(--line);border-radius:18px}
.architecture-icon{width:68px;height:68px;border-radius:50%;background:var(--ink);display:grid;place-items:center;color:#fff}
.architecture-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.architecture-item small{color:var(--copper);font-weight:800;letter-spacing:.12em}
.architecture-topline{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;margin-bottom:.12rem}
.architecture-role{display:inline-flex;align-items:center;min-height:24px;padding:.18rem .55rem;border:1px solid rgba(189,109,53,.28);border-radius:999px;background:#fff;color:#7b4b2e;font-size:.72rem;font-weight:750;letter-spacing:.025em;line-height:1.2}
.architecture-item-codex{border-color:rgba(189,109,53,.32);box-shadow:0 12px 28px rgba(33,53,69,.06)}
.architecture-item-codex .architecture-icon{background:linear-gradient(145deg,var(--ink),#2d5066)}
.architecture-item h3{font-size:1.55rem;margin:.12rem 0 .3rem}
.architecture-item p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}
.path-arrow{display:none}
.architecture-action{margin-top:1.1rem;background:var(--paper-2);border-radius:18px;padding:1.25rem;display:grid;gap:1rem;align-items:center}
.architecture-action p{margin:0}
.architecture-action strong{color:var(--ink)}

.section-interventions{background:var(--paper-2)}
.accordion{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:35px 1fr 30px;align-items:center;gap:.5rem;padding:1.15rem 0;color:var(--ink);font-family:var(--serif);font-size:1.18rem}
summary::-webkit-details-marker{display:none}
summary span{font-family:var(--sans);font-size:.7rem;font-weight:800;color:var(--copper);letter-spacing:.08em}
summary i{font-family:var(--sans);font-style:normal;font-size:1.5rem;text-align:right;transition:.2s}
details[open] summary i{transform:rotate(45deg)}
.details-body{padding:0 0 1.25rem 35px;max-width:800px;color:var(--muted)}
.details-body p{margin:0}

.audience-list{width:min(1220px,100%);margin:-.6rem auto 2rem;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.65rem}
.audience-list li{padding:.58rem .8rem;border:1px solid rgba(10,39,69,.13);border-radius:999px;background:rgba(255,255,255,.64);color:var(--ink);font-size:.8rem;font-weight:700}


/* Réseaux */
.section-socials{overflow:hidden;background:
  radial-gradient(circle at 92% 8%,rgba(189,109,53,.10),transparent 27%),
  linear-gradient(180deg,#fbfaf7 0%,#f3efe8 100%)}
.section-socials::before{content:"";position:absolute;right:-250px;top:30px;width:520px;height:190px;border:1px solid rgba(10,39,69,.09);border-radius:50%;transform:rotate(-12deg)}
.socials-wrap{width:min(1220px,100%);margin:auto;position:relative;z-index:2;display:grid;gap:2rem}
.socials-intro{max-width:760px}
.socials-intro>p:not(.eyebrow):not(.socials-rule){max-width:720px;margin-bottom:0;color:var(--muted);line-height:1.72}
.socials-rule{display:flex;align-items:center;gap:.7rem;margin:1.25rem 0 0;color:var(--ink);font-family:var(--serif);font-size:1.02rem}
.socials-rule span{width:35px;height:1px;background:var(--copper);flex:0 0 auto}
.socials-panel{display:grid;gap:10px;padding:10px;border:1px solid rgba(10,39,69,.09);border-radius:24px;background:rgba(255,255,255,.66);box-shadow:var(--shadow);backdrop-filter:blur(12px)}
.social-card{min-height:112px;display:grid;grid-template-columns:54px minmax(0,1fr) 30px;align-items:center;gap:.9rem;padding:1rem;border-radius:17px;border:1px solid rgba(10,39,69,.08);background:#fff;transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease)}
a.social-card:hover{transform:translateY(-3px);border-color:rgba(189,109,53,.34);box-shadow:0 14px 30px rgba(10,39,69,.10)}
a.social-card:focus-visible{outline:3px solid rgba(189,109,53,.24);outline-offset:3px}
.social-mark{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-family:var(--sans);font-size:1.55rem;font-weight:850;line-height:1}
.social-mark-facebook{background:#0a2745;color:#fff;font-family:Arial,sans-serif;font-size:2rem;padding-top:.3rem}
.social-mark-bluesky{background:linear-gradient(145deg,#e9f5ff,#d9ecfb);color:#1673b9}
.social-mark-bluesky svg{width:31px;height:31px;fill:currentColor}
.social-mark-linkedin{background:#edf1f4;color:#34536c;font-size:1rem;letter-spacing:-.04em}
.social-card-copy{min-width:0;display:block}
.social-card-copy small{display:block;margin-bottom:.15rem;color:var(--copper);font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em}
.social-card-copy strong{display:block;color:var(--ink);font-family:var(--serif);font-size:1.08rem;font-weight:500;line-height:1.2}
.social-card-copy em{display:block;margin-top:.3rem;color:var(--muted);font-style:normal;font-size:.76rem;line-height:1.42}
.social-card-arrow{font-size:1.25rem;color:var(--copper);text-align:center}
.social-card.is-coming{background:rgba(255,255,255,.48);border-style:dashed}
.social-card.is-coming .social-card-copy{opacity:.78}
.social-status{justify-self:end;padding:.28rem .5rem;border-radius:999px;background:rgba(10,39,69,.07);color:var(--ink);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em}

.section-faq{background:radial-gradient(circle at 88% 12%,rgba(189,109,53,.08),transparent 28%),#fff}
.faq-wrap{width:min(1220px,100%);margin:auto}
.faq-intro{max-width:820px;margin-bottom:2.2rem}
.faq-intro>p:last-child{max-width:720px}
.faq-grid{display:grid;gap:12px;align-items:start}
.faq-item{border:1px solid var(--line);border-radius:16px;background:var(--paper);overflow:hidden}
.faq-grid summary{grid-template-columns:1fr 28px;gap:1rem;padding:1rem 1.1rem;font-family:var(--sans);font-size:.97rem;font-weight:760;line-height:1.35}
.faq-grid summary i{color:var(--copper);font-size:1.35rem}
.faq-grid .details-body{padding:0 1.1rem 1.15rem;max-width:none;color:var(--muted)}
.faq-grid .details-body p{font-size:.9rem;line-height:1.58}

.section-about{background:#fff}
.about-panel{background:linear-gradient(135deg,#0a2745 0%,#133b5e 100%);color:#fff;border-radius:24px;padding:1.5rem;overflow:hidden;position:relative;box-shadow:var(--shadow)}
.about-panel::after{content:"";position:absolute;width:420px;height:180px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-260px;bottom:-30px;transform:rotate(-18deg)}
.about-symbol{width:70px;height:70px;margin-bottom:1.1rem;position:relative}
.about-symbol::before,.about-symbol::after{content:"";position:absolute;left:6px;top:31px;width:58px;height:1px;background:rgba(255,255,255,.55);transform-origin:center}
.about-symbol::before{transform:rotate(20deg)}.about-symbol::after{transform:rotate(-20deg)}
.about-symbol span{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--copper);left:30px;top:27px}
.about-panel h2{color:#fff;font-size:clamp(2.2rem,10vw,4rem)}
.about-panel p{color:rgba(255,255,255,.82)}
.about-panel .eyebrow{color:var(--copper-soft)}
.about-signature{font-family:var(--serif);font-size:1.25rem;color:#fff!important;margin-top:1.5rem!important}
.about-signature span{font-family:var(--sans);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.64)}
.about-signature small{display:block;margin-top:.35rem;font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:0;color:rgba(255,255,255,.58)}

.contact{padding:66px 16px;background:var(--ink);color:#fff;position:relative;overflow:hidden}
.contact::after{content:"";position:absolute;width:580px;height:220px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-300px;top:10%;transform:rotate(-14deg)}
.contact-inner{width:min(1220px,100%);margin:auto;position:relative;z-index:2;display:grid;gap:1.7rem}
.contact h2{color:#fff;font-size:clamp(2.3rem,10vw,4.5rem)}
.contact p{color:rgba(255,255,255,.78);margin-bottom:0}
.contact .eyebrow{color:var(--copper-soft)}
.contact-actions{display:grid;gap:.8rem}

.site-footer{padding:40px 16px calc(24px + env(safe-area-inset-bottom));background:#f7f4ee}
.footer-main{width:min(1220px,100%);margin:auto;display:grid;gap:1.25rem}
.footer-brand{width:170px;overflow:hidden}.footer-brand img{mix-blend-mode:multiply}
.footer-main>p{max-width:480px;color:var(--muted);margin:0}
.footer-main nav{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}
.footer-main nav a{font-weight:650;color:var(--ink)}
.footer-bottom{width:min(1220px,100%);margin:1.7rem auto 0;padding-top:1rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.7rem 1.25rem;font-size:.76rem;color:var(--muted)}
.footer-bottom button{border:0;background:transparent;padding:0;color:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px}.footer-bottom button:hover,.footer-bottom button:focus-visible{text-decoration-color:var(--copper)}

.work-dialog,.legal-dialog,.publication-dialog{width:min(680px,calc(100% - 28px));max-height:min(82dvh,780px);overflow:auto;overscroll-behavior:contain;border:0;border-radius:22px;padding:1.5rem;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28);color:var(--text)}
.work-dialog::backdrop,.legal-dialog::backdrop,.publication-dialog::backdrop{background:rgba(6,22,38,.68);backdrop-filter:blur(4px)}
.dialog-close{position:sticky;float:right;top:0;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:1.6rem;line-height:1;cursor:pointer;z-index:3}
.work-dialog h2,.legal-dialog h2,.publication-dialog h2{font-size:clamp(2rem,9vw,3.4rem);margin-bottom:1rem}
.legal-dialog,.publication-dialog{overflow:auto}
.dialog-section{padding:1rem 0;border-top:1px solid var(--line)}
.dialog-section:first-of-type{border-top:0}
.dialog-section h3,.publication-rule h3{margin:0 0 .35rem;color:var(--ink);font-family:var(--serif);font-size:1.18rem}
.dialog-section p{margin:0;color:var(--muted);line-height:1.65}
.dialog-lead{padding-top:0}
.publication-rules{display:grid;gap:.2rem;margin-top:.25rem}
.publication-rule{display:grid;grid-template-columns:34px 1fr;gap:.8rem;padding:1rem 0;border-top:1px solid var(--line)}
.publication-rule>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:.68rem;font-weight:800}
.publication-rule p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.58}
.publication-rule a{color:var(--copper-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.dialog-actions{padding-top:1.1rem;border-top:1px solid var(--line)}
.dialog-actions .button{width:100%;justify-content:center;text-align:center}
#dialog-body{margin-bottom:1.3rem}
#dialog-body p,#dialog-body li{color:var(--muted)}
#dialog-body ol{padding-left:1.2rem}

.reveal{opacity:1;transform:none}
.reveal.visible{opacity:1;transform:none}


/* Les Voix du Vivant */
.section-podcast{overflow:hidden;background:
  radial-gradient(circle at 92% 6%,rgba(189,109,53,.23),transparent 28%),
  radial-gradient(circle at 4% 96%,rgba(111,128,103,.18),transparent 30%),
  linear-gradient(145deg,#071e35 0%,#0a2745 52%,#123955 100%);color:#fff}
.section-podcast::before{content:"";position:absolute;inset:-160px -360px auto auto;width:720px;height:320px;border:1px solid rgba(255,255,255,.10);border-radius:50%;transform:rotate(-14deg)}
.section-podcast::after{content:"";position:absolute;left:-290px;bottom:-100px;width:620px;height:240px;border:1px solid rgba(215,167,126,.18);border-radius:50%;transform:rotate(17deg)}
.podcast-shell{width:min(1220px,100%);margin:auto;position:relative;z-index:2;display:grid;gap:2.2rem}
.podcast-intro{max-width:700px}
.podcast-intro .eyebrow{color:var(--copper-soft)}
.podcast-intro h2{color:#fff;margin-bottom:.65rem;font-size:clamp(3.15rem,13vw,5.7rem)}
.podcast-intro h2 em{color:var(--copper-soft)}
.podcast-intro>p:not(.eyebrow):not(.podcast-signature):not(.podcast-human-line){color:rgba(255,255,255,.78);font-size:1rem;line-height:1.75;margin:1.35rem 0 0}
.podcast-signature{margin:.2rem 0 0;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:820;color:rgba(255,255,255,.64)}
.podcast-human-line{display:inline-flex;align-items:center;gap:.65rem;margin:1.3rem 0 0;color:#fff;font-family:var(--serif);font-size:1.08rem}
.podcast-human-line::before{content:"";width:34px;height:1px;background:var(--copper-soft)}
.podcast-studio{background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.15);border-radius:25px;padding:1rem;box-shadow:0 30px 70px rgba(0,0,0,.20);backdrop-filter:blur(14px)}
.podcast-brandline{display:flex;align-items:center;gap:.7rem;padding:.2rem .15rem 1rem;color:rgba(255,255,255,.72)}
.podcast-brandline span{font-size:.64rem;letter-spacing:.16em;font-weight:850}
.podcast-brandline i{height:1px;flex:1;background:linear-gradient(90deg,rgba(215,167,126,.75),rgba(255,255,255,.08))}
.podcast-brandline small{font-size:.55rem;letter-spacing:.14em;color:var(--copper-soft)}
.podcast-player{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:.9rem;padding:1rem;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 16px 36px rgba(0,0,0,.16)}
.podcast-play{width:58px;height:58px;border:0;border-radius:50%;background:var(--copper);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 24px rgba(189,109,53,.30);transition:transform .2s var(--ease),background .2s var(--ease)}
.podcast-play:hover{transform:scale(1.04)}
.podcast-play:focus-visible{outline:3px solid rgba(189,109,53,.28);outline-offset:4px}
.play-symbol{width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid currentColor;margin-left:4px}
.podcast-player[data-player-state="playing"] .play-symbol{width:13px;height:16px;border:0;margin:0;background:linear-gradient(90deg,currentColor 0 4px,transparent 4px 9px,currentColor 9px 13px)}
.podcast-player-main{min-width:0}
.podcast-track-info{display:flex;justify-content:space-between;align-items:flex-start;gap:.7rem}
.podcast-track-info small{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.58rem;font-weight:850;color:var(--copper)}
.podcast-track-info strong{display:block;margin-top:.1rem;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.podcast-track-info time{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}
.podcast-wave{height:32px;display:flex;align-items:center;gap:2px;margin:.55rem 0 .35rem;overflow:hidden}
.podcast-wave span{display:block;flex:1;min-width:2px;max-width:5px;height:var(--h);border-radius:99px;background:linear-gradient(180deg,var(--copper),rgba(10,39,69,.42));transform-origin:center;opacity:.75}
.podcast-player[data-player-state="playing"] .podcast-wave span{animation:podcast-pulse .75s ease-in-out infinite alternate}
.podcast-player[data-player-state="playing"] .podcast-wave span:nth-child(3n){animation-delay:-.35s}.podcast-player[data-player-state="playing"] .podcast-wave span:nth-child(4n){animation-delay:-.55s}
@keyframes podcast-pulse{to{transform:scaleY(.55);opacity:1}}
.podcast-progress{height:3px;background:rgba(10,39,69,.11);border-radius:999px;overflow:hidden}
.podcast-progress span{display:block;width:0;height:100%;background:var(--copper);border-radius:inherit;transition:width .08s linear}
.podcast-formats{display:grid;gap:10px;margin-top:10px}
.podcast-formats article{display:grid;grid-template-columns:36px 1fr;gap:.75rem;padding:1rem;border:1px solid rgba(255,255,255,.13);background:rgba(3,17,30,.21);border-radius:16px}
.podcast-formats article>span{width:34px;height:34px;border:1px solid rgba(215,167,126,.44);border-radius:50%;display:grid;place-items:center;color:var(--copper-soft);font-size:.65rem;font-weight:850}
.podcast-formats h3{color:#fff;font-family:var(--sans);font-size:.94rem;font-weight:780;margin:0 0 .28rem}
.podcast-formats p{margin:0;color:rgba(255,255,255,.66);font-size:.79rem;line-height:1.5}
.podcast-upcoming{display:grid;gap:1rem;margin-top:10px;padding:1.05rem;border-radius:17px;background:linear-gradient(135deg,rgba(215,167,126,.14),rgba(255,255,255,.06));border:1px solid rgba(215,167,126,.23)}
.podcast-episode-number{display:flex;align-items:center;justify-content:space-between}
.podcast-episode-number span{padding:.27rem .48rem;border-radius:999px;background:rgba(215,167,126,.18);color:var(--copper-soft);font-size:.58rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850}
.podcast-episode-number strong{font-family:var(--serif);font-size:2.4rem;line-height:1;color:rgba(255,255,255,.14);font-weight:500}
.podcast-episode-copy small{text-transform:uppercase;letter-spacing:.11em;color:var(--copper-soft);font-size:.58rem;font-weight:850}
.podcast-episode-copy h3{color:#fff;font-size:1.42rem;margin:.25rem 0 .5rem}
.podcast-episode-copy p{margin:0;color:rgba(255,255,255,.68);font-size:.84rem;line-height:1.55}
.podcast-contact{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;border:1px solid rgba(255,255,255,.34);border-radius:10px;padding:.66rem .8rem;color:#fff;font-size:.78rem;font-weight:780}
.podcast-accessibility{margin:.85rem .1rem .1rem;color:rgba(255,255,255,.54);font-size:.7rem;line-height:1.45}

@media (min-width:700px){
  .socials-panel{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px}
  .social-card{grid-template-columns:1fr;align-content:start;min-height:220px;padding:1.15rem}
  .social-card-arrow,.social-status{justify-self:start;margin-top:auto}
  .social-card-copy strong{font-size:1.18rem}
  .podcast-shell{grid-template-columns:minmax(0,.78fr) minmax(440px,1.22fr);align-items:center}
  .podcast-studio{padding:1.35rem}
  .podcast-formats{grid-template-columns:repeat(2,1fr)}
  .podcast-upcoming{grid-template-columns:72px minmax(0,1fr) auto;align-items:center}
  .podcast-episode-number{display:grid;justify-items:center;gap:.4rem}
  .podcast-contact{white-space:nowrap}
  .header-contact{display:inline-flex}
  .hero{padding:80px 24px 62px}
  .hero-buttons{display:flex;flex-wrap:wrap}
  .button{width:auto;padding-inline:1.4rem}
  .hero-visual{min-height:470px}
  .quick-links{grid-template-columns:repeat(4,1fr);gap:12px}
  .quick-card{min-height:210px;padding:1.35rem}
  .section{padding:96px 24px}
  .method-grid{grid-template-columns:repeat(3,1fr)}
  .method-card{min-height:330px}
  .method-detail{grid-template-columns:1fr auto}
  .works-head{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:end}
  .work-scroller{grid-auto-columns:350px;padding-inline:24px;margin-inline:-24px}
  .architecture-action{grid-template-columns:1fr auto}
  .faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .publication-note{grid-template-columns:1fr auto;align-items:center;padding:1rem 1.2rem}
  .publication-note-actions{padding-left:0;justify-content:flex-end}

  .about-panel{padding:3rem;display:grid;grid-template-columns:110px 1fr;gap:1.5rem}
  .contact{padding:86px 24px}
  .contact-inner{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:center}
  .footer-main{grid-template-columns:220px 1fr 280px;align-items:start}
  .footer-main nav{grid-template-columns:repeat(2,1fr)}
}

@media (min-width:980px){
  .socials-wrap{grid-template-columns:minmax(0,.82fr) minmax(560px,1.18fr);align-items:center}
  .section-podcast{padding-top:105px;padding-bottom:105px}
  .podcast-shell{gap:4.4rem}
  .podcast-studio{transform:rotate(.35deg)}
  html{scroll-padding-top:96px}
  .site-header{position:sticky}
  .header-inner{min-height:88px;width:min(1220px,calc(100% - 48px))}
  .brand{width:172px}
  .menu-toggle{display:none}
  .header-actions{order:3}
  .main-nav{position:static;transform:none;opacity:1;pointer-events:auto;box-shadow:none;border:0;background:transparent;padding:0;display:flex;align-items:center;gap:1.7rem;margin-left:auto;margin-right:1rem}
  .main-nav a{padding:.3rem 0;border:0;font-size:.88rem;font-weight:650;position:relative}
  .main-nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--copper);transition:.25s}
  .main-nav a:hover::after{right:0}
  .main-nav .nav-cta{display:none}
  .header-contact{padding:.8rem 1.2rem}
  .hero{padding:92px 24px 88px}
  .hero-inner{grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);align-items:center}
  h1{font-size:clamp(4.2rem,6vw,6.6rem)}
  .hero-text{font-size:1.08rem}
  .hero-visual{min-height:530px;margin-left:-40px}
  .hero-image{border-radius:58% 24% 16% 50%/38% 54% 26% 52%}
  .quick-links{margin-top:-58px}
  .quick-card{min-height:210px}
  .section{padding:120px 24px}
  .section-heading{margin-bottom:3.3rem}
  .method-card{padding:2rem;min-height:355px}
  .work-scroller{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:initial;grid-auto-columns:auto;overflow:visible;padding:0;margin:2rem 0 0;gap:16px}
  .work-open>img{height:190px}
  .scroll-hint{display:none}
  .architecture-path{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:16px}
  .path-arrow{display:block;color:var(--ink);font-size:1.8rem}
  .architecture-item{grid-template-columns:84px 1fr;min-height:190px}
  .architecture-action{margin-top:1.5rem;padding:1.5rem 1.7rem}
  .section-about{padding-top:100px;padding-bottom:100px}
  .about-panel{grid-template-columns:120px minmax(0,820px);justify-content:center;padding:4rem}
  .contact-actions{justify-items:stretch}
  .site-footer{padding-inline:24px}
}

@media (min-width:1260px){
  .hero,.section,.contact,.site-footer{padding-left:max(24px,calc((100vw - 1220px)/2));padding-right:max(24px,calc((100vw - 1220px)/2))}
  .section>.section-heading,.section>.method-grid,.section>.method-detail,.section>.works-head,.section>.architecture-copy,.section>.architecture-path,.section>.architecture-action,.section>.audience-list,.section>.accordion,.section>.about-panel{margin-left:auto;margin-right:auto;width:min(1220px,100%)}
  .work-scroller{width:min(1220px,100%);margin-left:auto;margin-right:auto}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}


/* Ajustements éditoriaux et d’accessibilité — version 8 */
:root{--copper-text:#8f4e27}
.eyebrow,.work-state,.social-card-copy small,.podcast-track-info small{color:var(--copper-text)}
.section-works h2,.section-architecture h2,.section-interventions h2,.section-faq h2,.section-about h2{max-width:930px}

.work-body{min-height:190px}
.work-meta{display:grid;gap:.14rem;margin-top:.8rem;padding-top:.72rem;border-top:1px solid rgba(10,39,69,.09);font-size:.68rem;line-height:1.35;color:var(--muted)}
.work-state{font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.work-controls{display:grid;grid-template-columns:44px auto 1fr 44px;align-items:center;gap:.75rem;margin:.4rem 0 0}
.work-control{width:44px;height:44px;border-radius:50%;border:1px solid rgba(10,39,69,.16);background:#fff;color:var(--ink);font-size:1.15rem;cursor:pointer;box-shadow:0 6px 15px rgba(10,39,69,.06)}
.work-control:disabled{opacity:.35;cursor:default}
.work-position{font-size:.76rem;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.work-dots{display:flex;justify-content:center;gap:.38rem}
.work-dots span{width:6px;height:6px;border-radius:50%;background:rgba(10,39,69,.18);transition:.2s}
.work-dots span.is-active{width:20px;border-radius:99px;background:var(--copper)}

.dialog-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1rem}
.dialog-meta span{padding:.38rem .58rem;border-radius:999px;background:var(--paper-2);border:1px solid rgba(10,39,69,.08);font-size:.69rem;font-weight:740;color:var(--ink)}
.work-dialog-actions{display:grid;gap:.7rem;margin-top:1rem}
.button-document{background:var(--copper);color:#fff;border:0}
.button-document.is-unavailable{background:#ebe6de;color:#746e66;box-shadow:none;cursor:not-allowed;transform:none}

.episode-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.8rem}
.episode-actions span{padding:.3rem .5rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:.62rem;color:rgba(255,255,255,.72)}

.section-socials{padding-top:70px;padding-bottom:70px}
.socials-wrap{gap:1.25rem}
.socials-intro h2{margin-bottom:.75rem}
.socials-intro>p:not(.eyebrow):not(.socials-rule){line-height:1.58}
.socials-panel{box-shadow:0 12px 34px rgba(10,39,69,.07)}
.social-card{min-height:92px;padding:.82rem}
.social-mark{width:44px;height:44px;border-radius:13px}
.social-card-copy em{margin-top:.18rem}

.about-ground{display:grid;gap:.7rem;margin:1.3rem 0}
.about-ground article{padding:.85rem .95rem;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.055)}
.about-ground strong{display:block;color:#fff;font-family:var(--sans);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem}
.about-ground p{margin:0!important;font-size:.82rem;line-height:1.5}

.contact-email{display:grid;gap:.25rem;padding:1rem;border:1px solid rgba(255,255,255,.22);border-radius:13px;background:rgba(255,255,255,.06)}
.contact-email small{text-transform:uppercase;letter-spacing:.11em;color:var(--copper-soft);font-size:.62rem;font-weight:850}
.contact-email a{font-weight:780;color:#fff;overflow-wrap:anywhere}
.contact-email button{justify-self:start;border:0;background:transparent;color:rgba(255,255,255,.82);padding:.15rem 0;cursor:pointer;font-size:.76rem;text-decoration:underline;text-underline-offset:4px}
#copy-status{min-height:1em;color:var(--copper-soft);font-size:.7rem}

@media (min-width:700px){
  .work-controls{max-width:430px;margin-top:.7rem}
  .work-dialog-actions{grid-template-columns:1fr 1fr}
  .about-ground{grid-template-columns:repeat(3,1fr)}
  .social-card{min-height:185px}
}
@media (min-width:980px){
  .work-controls{display:none}
  .work-body{min-height:200px}
  .section-socials{padding-top:88px;padding-bottom:88px}
}


/* Agenda et bibliothèque des publications — version 9 */
.work-scope{position:absolute;right:12px;top:12px;padding:.28rem .5rem;border-radius:7px;background:rgba(255,255,255,.92);box-shadow:0 4px 12px rgba(10,39,69,.12);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:var(--ink)}
.scope-territorial{--scope:#6f8067}.scope-national{--scope:#0a2745}.scope-europe{--scope:#8f4e27}.scope-international{--scope:#5f5484}
.work-scope.scope-territorial,.scope-label.scope-territorial{color:#496044}.work-scope.scope-national,.scope-label.scope-national{color:#0a2745}.work-scope.scope-europe,.scope-label.scope-europe{color:#8f4e27}.work-scope.scope-international,.scope-label.scope-international{color:#5f5484}

.publication-explorer{width:min(1220px,100%);margin:2.4rem auto 1.4rem;padding:1.15rem;border:1px solid rgba(10,39,69,.10);border-radius:24px;background:rgba(255,255,255,.78);box-shadow:0 14px 36px rgba(10,39,69,.065)}
.publication-explorer-head{display:grid;gap:.65rem;margin-bottom:1.25rem}
.publication-explorer-head .eyebrow{margin-bottom:.35rem}.publication-explorer-head h3{font-size:clamp(1.8rem,7vw,2.65rem);margin:0}
.publication-explorer-head>p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.58;max-width:690px}
.publication-tools{display:grid;gap:.8rem}
.search-field,.type-field,.agenda-search{display:grid;gap:.4rem}.search-field>span:first-child,.type-field>span:first-child,.agenda-search>span:first-child{font-size:.64rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em;color:var(--copper-text)}
.search-box{min-height:50px;display:grid;grid-template-columns:22px 1fr;align-items:center;gap:.6rem;padding:0 .9rem;border:1px solid rgba(10,39,69,.16);border-radius:12px;background:#fff;transition:border-color .2s,box-shadow .2s}
.search-box:focus-within{border-color:var(--copper);box-shadow:0 0 0 4px rgba(189,109,53,.10)}.search-box svg{width:21px;height:21px;fill:none;stroke:var(--copper);stroke-width:1.7;stroke-linecap:round}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:.92rem}.search-box input::placeholder{color:#89929b}
.type-field select{min-height:50px;width:100%;padding:0 .9rem;border:1px solid rgba(10,39,69,.16);border-radius:12px;background:#fff;color:var(--ink);outline:0}.type-field select:focus{border-color:var(--copper);box-shadow:0 0 0 4px rgba(189,109,53,.10)}
.scope-filter,.agenda-filters{display:flex;gap:.48rem;overflow-x:auto;padding:.9rem 0 .35rem;scrollbar-width:none}.scope-filter::-webkit-scrollbar,.agenda-filters::-webkit-scrollbar{display:none}
.scope-chip,.agenda-chip{flex:0 0 auto;border:1px solid rgba(10,39,69,.14);background:#fff;color:var(--ink);border-radius:999px;padding:.54rem .75rem;font-size:.72rem;font-weight:760;cursor:pointer;transition:.2s}.scope-chip:hover,.agenda-chip:hover{border-color:rgba(189,109,53,.5)}.scope-chip.is-active,.agenda-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.publication-results-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:.8rem 0 .55rem;padding-top:.85rem;border-top:1px solid rgba(10,39,69,.08)}.publication-results-head p{margin:0;color:var(--muted);font-size:.75rem}.publication-results-head button{border:0;background:transparent;color:var(--copper-text);padding:.2rem 0;font-size:.72rem;font-weight:760;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.publication-list{display:grid;gap:7px}.publication-result{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:.65rem;padding:.88rem;border:1px solid rgba(10,39,69,.08);border-radius:13px;background:#fff;text-align:left;cursor:pointer;transition:.2s}.publication-result:hover{transform:translateY(-2px);border-color:rgba(189,109,53,.32);box-shadow:0 9px 20px rgba(10,39,69,.06)}.publication-result:focus-visible{outline:3px solid rgba(189,109,53,.18);outline-offset:2px}.publication-result[hidden]{display:none}
.publication-result-copy{min-width:0;display:block}.publication-result-copy small{display:block;color:var(--copper-text);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.publication-result-copy strong{display:block;margin:.15rem 0;color:var(--ink);font-family:var(--serif);font-size:1rem;font-weight:500;line-height:1.25}.publication-result-copy em{display:block;color:var(--muted);font-style:normal;font-size:.68rem}.scope-label{display:none;padding:.3rem .48rem;border-radius:999px;background:var(--paper-2);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.publication-result-arrow{color:var(--copper);font-size:1.1rem}.publication-empty{margin:.8rem 0 0;padding:1rem;border-radius:12px;background:var(--paper-2);color:var(--muted);font-size:.84rem}

.section-agenda{overflow:hidden;background:radial-gradient(circle at 92% 2%,rgba(189,109,53,.10),transparent 28%),linear-gradient(180deg,#fff 0%,#f5f1ea 100%)}
.section-agenda::before{content:"";position:absolute;left:-320px;top:180px;width:620px;height:230px;border:1px solid rgba(10,39,69,.08);border-radius:50%;transform:rotate(15deg)}
.agenda-shell{width:min(1220px,100%);margin:auto;position:relative;z-index:2}.agenda-head{display:grid;gap:1rem;margin-bottom:1.5rem}.agenda-head h2{margin-bottom:0}.agenda-head-copy>p:first-child{margin:0;color:var(--muted);line-height:1.65}.agenda-demo-note{display:flex;align-items:flex-start;gap:.55rem;margin:.8rem 0 0;color:var(--muted);font-size:.74rem}.agenda-demo-note span{flex:0 0 auto;padding:.2rem .42rem;border-radius:999px;background:rgba(189,109,53,.12);color:var(--copper-text);font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:.54rem}
.agenda-next{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);gap:.85rem;padding:1.1rem;border-radius:20px;background:linear-gradient(135deg,#0a2745,#143e60);color:#fff;box-shadow:var(--shadow);overflow:hidden}.agenda-next::after{content:"";position:absolute;right:-150px;top:-35px;width:310px;height:125px;border:1px solid rgba(255,255,255,.13);border-radius:50%;transform:rotate(-14deg)}.agenda-next-kicker{grid-column:1/-1;color:var(--copper-soft);font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.13em}.agenda-next-date{display:grid;align-content:center;justify-items:center;border-right:1px solid rgba(255,255,255,.16)}.agenda-next-date strong{font-family:var(--serif);font-size:2.8rem;line-height:.8;font-weight:500}.agenda-next-date span{margin-top:.42rem;text-align:center;font-size:.59rem;line-height:1.2;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.65)}.agenda-next-copy{min-width:0;position:relative;z-index:2}.agenda-next-copy small{display:block;color:var(--copper-soft);font-size:.61rem;font-weight:760}.agenda-next-copy h3{margin:.28rem 0 .42rem;color:#fff;font-size:1.35rem}.agenda-next-copy p{margin:0;color:rgba(255,255,255,.72);font-size:.78rem;line-height:1.5}.agenda-next-status{position:absolute;right:12px;top:12px;padding:.25rem .45rem;border-radius:999px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.76);font-size:.52rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.agenda-toolbar{margin:1.15rem 0 1.4rem;padding:1rem;border:1px solid rgba(10,39,69,.09);border-radius:18px;background:rgba(255,255,255,.74)}.agenda-search-box{background:#fff}.agenda-filters{padding-bottom:0}
.agenda-route{position:relative;display:grid;gap:.85rem}.agenda-route::before{content:"";position:absolute;left:53px;top:38px;bottom:38px;width:1px;background:linear-gradient(180deg,var(--copper),rgba(10,39,69,.18),var(--sage))}
.agenda-event{position:relative;display:grid;grid-template-columns:78px 12px minmax(0,1fr);gap:.55rem;align-items:start}.agenda-event[hidden]{display:none}.agenda-date{display:grid;justify-items:center;padding:.72rem .25rem;border-radius:14px;background:#fff;border:1px solid rgba(10,39,69,.10);box-shadow:0 7px 18px rgba(10,39,69,.055);font-style:normal}.agenda-date strong{font-family:var(--serif);color:var(--ink);font-size:1.9rem;line-height:.9;font-weight:500}.agenda-date span{margin-top:.32rem;color:var(--copper-text);font-size:.61rem;font-weight:850;letter-spacing:.1em}.agenda-date small{color:var(--muted);font-size:.56rem}.agenda-route-node{position:relative;z-index:2;width:10px;height:10px;margin-top:35px;border:2px solid #fff;border-radius:50%;background:var(--copper);box-shadow:0 0 0 1px var(--copper)}
.agenda-card{border:1px solid rgba(10,39,69,.10);border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 7px 18px rgba(10,39,69,.045)}.agenda-card summary{grid-template-columns:1fr 25px;padding:1rem;font-family:var(--sans)}.agenda-event-copy{min-width:0;display:block}.agenda-event-copy small{display:block;color:var(--copper-text);font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.agenda-event-copy strong{display:block;margin:.18rem 0;color:var(--ink);font-family:var(--serif);font-size:1.08rem;font-weight:500;line-height:1.24}.agenda-event-copy em{display:block;color:var(--muted);font-style:normal;font-size:.7rem}.agenda-card summary i{color:var(--copper)}.agenda-card-body{padding:0 1rem 1rem}.agenda-card-body p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.55}.agenda-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.agenda-tags span{padding:.28rem .46rem;border-radius:999px;background:var(--paper-2);color:var(--ink);font-size:.58rem;font-weight:760}.agenda-empty{padding:1rem;border:1px dashed rgba(10,39,69,.18);border-radius:14px;color:var(--muted);text-align:center}.agenda-foot{display:flex;align-items:center;gap:.7rem;margin-top:1.2rem;color:var(--muted)}.agenda-foot span{width:35px;height:1px;background:var(--copper);flex:0 0 auto}.agenda-foot p{margin:0;font-size:.76rem;line-height:1.5}

@media (min-width:700px){
  .publication-explorer{padding:1.45rem}.publication-explorer-head{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:end}.publication-tools{grid-template-columns:minmax(0,1fr) 240px}.scope-label{display:inline-flex}.publication-result{padding:1rem 1.1rem}.publication-result-copy strong{font-size:1.08rem}
  .agenda-head{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:end}.agenda-next{grid-template-columns:100px minmax(0,1fr) auto;align-items:center;padding:1.35rem}.agenda-next-kicker{grid-column:auto;position:absolute;left:123px;top:17px}.agenda-next-copy{padding-top:.85rem}.agenda-next-status{position:static;align-self:center}.agenda-toolbar{display:grid;grid-template-columns:minmax(320px,.75fr) 1fr;align-items:end;gap:1rem}.agenda-filters{justify-content:flex-end;padding-top:0}.agenda-event{grid-template-columns:92px 14px minmax(0,1fr);gap:.8rem}.agenda-route::before{left:61px}.agenda-card summary{padding:1.15rem}.agenda-event-copy strong{font-size:1.2rem}
}
@media (min-width:980px){
  .publication-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.publication-result{min-height:105px}
  .agenda-route{max-width:920px;margin-inline:auto}.agenda-event{grid-template-columns:105px 16px minmax(0,1fr)}.agenda-route::before{left:68px}.agenda-date{padding:.82rem}.agenda-card summary{padding:1.25rem}.agenda-event-copy strong{font-size:1.32rem}
  .main-nav{gap:1.15rem}
}
@media (min-width:980px) and (max-width:1160px){.main-nav{gap:.8rem;margin-right:.35rem}.main-nav a{font-size:.76rem}.header-contact{display:none}}

/* Ajustements pré-publication v10 */
.scope-multi{--scope:#4d6b73}
.work-scope.scope-multi,.scope-label.scope-multi{color:#4d6b73}
.agenda-next-date-pending strong{font-size:1.38rem;letter-spacing:.08em}
.agenda-date-pending strong{font-size:1.7rem;color:var(--copper-text)}
.structure-status{display:inline-flex;align-items:center;gap:.5rem;margin:1.15rem 0 .4rem;padding:.52rem .72rem;border-radius:999px;background:rgba(189,109,53,.09);border:1px solid rgba(189,109,53,.18);color:var(--copper-text);font-size:.72rem;font-weight:760;line-height:1.25}
.structure-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.7}
.legal-tech-note{margin-top:.7rem;padding:.72rem .85rem;border-left:2px solid rgba(189,109,53,.42);background:rgba(189,109,53,.06);color:var(--muted);font-size:.82rem}
.legal-pending{margin-top:.7rem!important;padding:.72rem .85rem;border-left:2px solid #9b5b32;background:#fff6ef;color:#6f4328!important;font-size:.82rem}
.social-card-bluesky:not(a){cursor:default;background:rgba(255,255,255,.58);border-style:dashed}
.social-card-bluesky:not(a) .social-card-copy{opacity:.82}
@media (max-width:720px){
  .section-socials{padding-top:58px;padding-bottom:58px}
  .structure-status{border-radius:14px;align-items:flex-start}
}

/* À propos — portrait fondateur v11 */
.about-portrait{
  width:106px;
  aspect-ratio:227/310;
  margin:0 0 1.15rem;
  border-radius:18px;
  overflow:hidden;
  position:relative;
  z-index:2;
  background:#102f4d;
  border:1px solid rgba(215,167,126,.48);
  box-shadow:0 12px 28px rgba(3,20,36,.22);
}
.about-portrait img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:center;
}
@media (min-width:700px){
  .about-panel{grid-template-columns:112px minmax(0,1fr);align-items:start}
  .about-portrait{width:112px;margin:0}
}
@media (min-width:980px){
  .about-panel{grid-template-columns:126px minmax(0,820px)}
  .about-portrait{width:126px;border-radius:20px}
}


/* V12 — publications consultables et partageables */
.dialog-summary-lead{font-family:var(--serif);font-size:1.18rem;line-height:1.5;color:var(--ink);margin:.2rem 0 .8rem}
#dialog-body>p:not(.dialog-summary-lead){color:var(--muted);line-height:1.72;margin:.65rem 0}
.dialog-share{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(10,39,69,.1)}
.dialog-share>p:first-child{margin:0 0 .65rem;font-size:.7rem;font-weight:820;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}
.share-row{display:flex;gap:.5rem;overflow-x:auto;padding:.1rem 0 .35rem;scrollbar-width:none}.share-row::-webkit-scrollbar{display:none}
.share-chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:.42rem;min-height:40px;padding:.48rem .66rem;border:1px solid rgba(10,39,69,.12);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:.68rem;text-decoration:none;cursor:pointer;transition:.18s}
.share-chip:hover{border-color:rgba(189,109,53,.35);transform:translateY(-1px);box-shadow:0 6px 14px rgba(10,39,69,.06)}
.share-chip span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--paper-2);color:var(--copper-text);font-size:.72rem;font-weight:850}.share-chip b{font-weight:740;white-space:nowrap}.share-native{background:var(--ink);color:#fff;border-color:var(--ink)}.share-native span{background:rgba(255,255,255,.12);color:#fff}
.share-status{min-height:1.05rem;margin:.35rem 0 0;color:var(--copper-text);font-size:.68rem}
.publication-load-more-wrap{display:flex;justify-content:center;margin:1rem 0 .15rem}.publication-load-more-wrap button{min-width:min(100%,320px);border:1px solid rgba(10,39,69,.16);background:var(--paper-2);color:var(--ink);padding:.82rem 1.15rem;border-radius:999px;font-size:.78rem;font-weight:800;cursor:pointer;transition:.2s var(--ease)}.publication-load-more-wrap button:hover{transform:translateY(-1px);border-color:rgba(189,109,53,.38);background:#fff;box-shadow:0 8px 20px rgba(10,39,69,.06)}.publication-load-more-wrap button:focus-visible{outline:3px solid rgba(189,109,53,.18);outline-offset:2px}.publication-load-more-wrap button[hidden]{display:none}
.publication-help{margin:1rem 0 0;padding:.8rem .9rem;border-radius:12px;background:rgba(10,39,69,.035);color:var(--muted);font-size:.74rem;line-height:1.55}
.publication-separator{grid-column:1/-1;display:flex;align-items:center;gap:.7rem;margin:.7rem 0 .05rem;color:var(--muted);font-size:.6rem;font-weight:820;text-transform:uppercase;letter-spacing:.09em}.publication-separator:before,.publication-separator:after{content:"";height:1px;flex:1;background:rgba(10,39,69,.09)}
.work-card img[src*="covers/"]{object-position:center top}
@media (min-width:720px){.share-row{flex-wrap:wrap;overflow:visible}.dialog-summary-lead{font-size:1.3rem}}


/* V17 — pré-publication : transparence, vie privée et conformité */
.footer-bottom button.privacy-open{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.footer-bottom button.privacy-open:hover{color:var(--copper-soft)}
.legal-dialog a{color:var(--copper-text);text-underline-offset:3px}
.publication-rule-transparency{background:linear-gradient(135deg,rgba(189,109,53,.055),rgba(10,39,69,.025));border-radius:14px;padding:.7rem .75rem}
@media (max-width:700px){.footer-bottom{row-gap:.55rem}.publication-rule-transparency{padding:.62rem}}


/* V18 — sécurisation responsive avant mise en ligne */
@media (max-width:420px){
  .header-inner{width:calc(100% - 24px)}
  .brand{width:132px}
  .hero{padding-top:44px}
  .hero-buttons .button{width:100%}
  .work-dialog,.legal-dialog,.publication-dialog{width:calc(100% - 18px);max-height:88dvh;padding:1.15rem;border-radius:18px}
  .share-chip{min-height:44px}
}
@media (max-height:620px) and (max-width:980px){
  .main-nav a{padding:.72rem .35rem}
  .main-nav .nav-cta{margin-top:.45rem}
}

/* Inscription aux rendez-vous — Netlify Forms */
.agenda-register-button{margin-top:.8rem;min-height:42px;padding:.55rem .8rem;font-size:.72rem;position:relative;z-index:3}
.agenda-card-register{margin-top:.85rem;min-height:44px;font-size:.75rem}
.registration-dialog{width:min(620px,calc(100% - 28px));max-height:min(88dvh,780px);overflow:auto;overscroll-behavior:contain;border:0;border-radius:22px;padding:1.5rem;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28);color:var(--text)}
.registration-dialog::backdrop{background:rgba(6,22,38,.68);backdrop-filter:blur(4px)}
.registration-dialog h2{font-size:clamp(2rem,9vw,3.2rem);margin:0 0 .8rem}
.registration-lead{color:var(--muted);line-height:1.65;margin:0 0 1rem}
.registration-fields{display:grid;gap:.85rem}
.registration-fields label{display:grid;gap:.38rem;color:var(--ink);font-size:.72rem;font-weight:780}
.registration-fields label>span small{color:var(--muted);font-weight:500}
.registration-fields input,.registration-fields textarea{width:100%;border:1px solid rgba(10,39,69,.16);border-radius:11px;background:#fff;padding:.78rem .82rem;color:var(--ink);font:inherit;outline:none;transition:border-color .2s,box-shadow .2s}
.registration-fields textarea{resize:vertical;min-height:90px}
.registration-fields input:focus,.registration-fields textarea:focus{border-color:var(--copper);box-shadow:0 0 0 3px rgba(189,109,53,.12)}
.registration-privacy{margin:.9rem 0;color:var(--muted);font-size:.7rem;line-height:1.55}
.privacy-inline-link{border:0;background:none;padding:0;color:var(--copper-text);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit}
.registration-submit{width:100%;margin-top:.15rem}
.registration-status{min-height:1.35em;margin:.7rem 0 0;color:var(--ink);font-size:.76rem;font-weight:700}
.registration-status.is-success{color:#285d49}
.registration-status.is-error{color:#8b342c}
.registration-fallback{margin:.55rem 0 0;color:var(--muted);font-size:.7rem}
.registration-fallback a{color:var(--copper-text)}
.form-honeypot{position:absolute!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;height:1px!important;width:1px!important;margin:-1px!important;padding:0!important;border:0!important}
@media (max-width:719px){.registration-dialog{width:calc(100% - 18px);max-height:90dvh;padding:1.15rem;border-radius:18px}.agenda-register-button{width:100%}}

/* V20.4 — lisibilité et adaptation responsive des boutons */
.button{
  max-width:100%;
  white-space:normal;
  text-align:center;
  line-height:1.3;
  word-break:normal;
  overflow-wrap:normal;
}
.button-copper,
.registration-submit{
  background:#bd6d35 !important;
  background-color:#bd6d35 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff;
  border-color:#bd6d35 !important;
}
.button-copper:hover,
.registration-submit:hover{
  background:#a95f2e !important;
  background-color:#a95f2e !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff;
}
.button-ghost-light.agenda-register-button{
  background:rgba(255,255,255,.08);
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff;
  border-color:rgba(255,255,255,.68);
}
.button-ghost-light.agenda-register-button:hover{
  background:rgba(255,255,255,.15);
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff;
}
@media (max-width:719px){
  .agenda-register-button,
  .registration-submit{
    width:100%;
    min-height:48px;
    padding:.78rem 1rem;
    font-size:.78rem;
    line-height:1.35;
    white-space:normal;
  }
}
@media (max-width:380px){
  .agenda-register-button,
  .registration-submit{
    padding:.72rem .75rem;
    font-size:.74rem;
  }
}


/* V20.5 — dossiers actuellement à l’étude */
.ongoing-work{
  width:min(1220px,100%);
  margin:2rem auto 0;
  padding:1.25rem;
  border:1px solid rgba(10,39,69,.11);
  border-radius:20px;
  background:rgba(255,255,255,.72);
  box-shadow:0 12px 32px rgba(10,39,69,.045);
}
.ongoing-work-head{display:grid;gap:.7rem;margin-bottom:1rem}
.ongoing-work-head .eyebrow{margin-bottom:.35rem}
.ongoing-work-head h3{margin:0;font-size:clamp(1.7rem,4vw,2.25rem)}
.ongoing-work-head>p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.6;max-width:720px}
.ongoing-work-grid{display:grid;gap:.8rem}
.ongoing-work-card{
  min-width:0;
  padding:1.05rem;
  border:1px solid rgba(10,39,69,.10);
  border-radius:16px;
  background:var(--paper);
}
.ongoing-work-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem;margin-bottom:.72rem;color:var(--muted);font-size:.61rem;font-weight:780;text-transform:uppercase;letter-spacing:.07em}
.ongoing-work-status{display:inline-flex;align-items:center;gap:.35rem;padding:.27rem .48rem;border-radius:999px;background:rgba(189,109,53,.11);color:var(--copper-text);border:1px solid rgba(189,109,53,.18)}
.ongoing-work-status::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--copper)}
.ongoing-work-card h4{margin:0 0 .55rem;color:var(--ink);font-family:var(--serif);font-size:1.18rem;font-weight:500;line-height:1.2}
.ongoing-work-card p{margin:0;color:var(--muted);font-size:.79rem;line-height:1.58}
.ongoing-work-disclaimer{margin:1rem 0 0;padding:.75rem .85rem;border-left:2px solid rgba(189,109,53,.52);background:rgba(189,109,53,.055);color:var(--muted);font-size:.74rem;line-height:1.55}
.ongoing-work-disclaimer strong{color:var(--ink)}
@media (min-width:700px){
  .ongoing-work{padding:1.4rem}
  .ongoing-work-head{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);align-items:end}
  .ongoing-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:980px){
  .ongoing-work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ongoing-work-card{padding:1.15rem}
}
@media (max-width:420px){
  .ongoing-work{padding:1rem;border-radius:16px}
  .ongoing-work-card{padding:.95rem}
  .ongoing-work-card h4{font-size:1.08rem}
}


/* V21 — contenu administrable */
.publication-result.has-cover{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;align-items:center;gap:14px}
.publication-result-thumb{width:72px;aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:#ece7dc;display:block}
.publication-result-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.dialog-admin-cover{width:100%;max-height:320px;object-fit:cover;border-radius:16px;margin:0 0 18px;aspect-ratio:16/8.5;background:#ece7dc}
.ongoing-v206__media{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;margin:2px 0 14px;background:#eee8dc}
.agenda-more{margin-top:18px}
.agenda-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.agenda-mini{border:1px solid rgba(10,46,75,.14);border-radius:18px;padding:18px;background:rgba(255,255,255,.7)}
.agenda-mini small{display:block;color:#6c7883;margin-bottom:6px}.agenda-mini h3{margin:0 0 8px;font-family:var(--font-display);color:var(--navy);font-size:1.2rem}.agenda-mini p{margin:0;color:#536473}.agenda-mini .agenda-mini-actions{margin-top:13px;display:flex;gap:8px;flex-wrap:wrap}
.section-actualites{background:#f3efe6}.actualites-shell{max-width:1240px;margin:0 auto;padding:0 24px}.actualites-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.actualite-card{background:#fff;border:1px solid rgba(10,46,75,.1);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(8,31,52,.06)}.actualite-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#eee8dc}.actualite-card-body{padding:18px}.actualite-card small{color:#b8642b;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.actualite-card h3{margin:8px 0 9px;color:#0c2f4f;font-family:var(--font-display);font-size:1.35rem}.actualite-card p{margin:0;color:#556775}.actualite-card a{display:inline-flex;margin-top:13px;color:#0c2f4f;font-weight:700;text-decoration:none}
.podcast-admin-episode{margin-top:18px;border-top:1px solid rgba(255,255,255,.16);padding-top:18px}.podcast-admin-episode img{width:120px;aspect-ratio:1/1;object-fit:cover;border-radius:14px;float:left;margin:0 16px 10px 0}.podcast-admin-episode audio{width:100%;margin-top:12px}.podcast-admin-episode::after{content:"";display:block;clear:both}
.admin-load-note{font-size:.86rem;color:#7a8791;margin-top:8px}
@media(max-width:900px){.actualites-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-more-grid{grid-template-columns:1fr}.publication-result.has-cover{grid-template-columns:64px minmax(0,1fr) auto}.publication-result.has-cover .publication-result-arrow{display:none}}
@media(max-width:640px){.actualites-shell{padding:0 20px}.actualites-grid{grid-template-columns:1fr}.publication-result.has-cover{grid-template-columns:58px minmax(0,1fr)}.publication-result.has-cover .scope-label{grid-column:2;justify-self:start}.publication-result-thumb{width:58px}.agenda-mini{padding:15px}.podcast-admin-episode img{width:88px}}


/* v21.4 — information temporaire, confirmation d’inscription et lettre de Diploval */
.closure-notice{
  border-bottom:1px solid rgba(184,118,73,.22);
  background:linear-gradient(90deg,rgba(249,246,239,.96),rgba(255,255,255,.98),rgba(249,246,239,.96));
  color:#26364a;
}
.closure-notice__inner{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  padding:.55rem 0;
  text-align:center;
}
.closure-notice__mark{
  width:7px;height:7px;border-radius:50%;
  background:#b87649;
  box-shadow:0 0 0 4px rgba(184,118,73,.12);
  flex:0 0 auto;
}
.closure-notice p{margin:0;font-size:.82rem;line-height:1.45;letter-spacing:.01em}
.closure-notice strong{font-weight:700;color:#17283d}

.registration-status.is-success{
  display:grid;
  gap:.55rem;
  margin-top:1rem;
  padding:1.05rem 1.1rem;
  border:1px solid rgba(184,118,73,.28);
  border-left:4px solid #b87649;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(249,246,239,.98),#fff);
  color:#24364b;
  line-height:1.55;
}
.registration-status.is-success strong{font-size:1.05rem;color:#17283d}
.registration-status.is-success span{display:block}
#registration-form.is-complete .registration-fields,
#registration-form.is-complete .registration-privacy,
#registration-form.is-complete .registration-submit,
#registration-form.is-complete .registration-fallback{display:none}

.newsletter-section{
  padding-top:clamp(2.7rem,6vw,5rem);
  padding-bottom:clamp(2.7rem,6vw,5rem);
  background:#f8f5ef;
  border-top:1px solid rgba(28,48,70,.08);
}
.newsletter-shell{
  width:min(1120px,calc(100% - 40px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  gap:clamp(2rem,5vw,4.5rem);
  align-items:center;
  padding:clamp(1.5rem,3vw,2.4rem);
  border:1px solid rgba(28,48,70,.12);
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 50px rgba(28,48,70,.06);
}
.newsletter-copy h2{margin:.25rem 0 .8rem;color:#17283d;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.08}
.newsletter-copy>p:not(.eyebrow){margin:.45rem 0;color:#536173;line-height:1.65}
.newsletter-note{font-size:.84rem}
.newsletter-form{
  display:grid;
  gap:.85rem;
  padding:1.25rem;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid rgba(28,48,70,.1);
}
.newsletter-email{display:grid;gap:.4rem}
.newsletter-email>span{font-size:.78rem;font-weight:700;color:#31465f}
.newsletter-email input{
  width:100%;
  min-height:48px;
  padding:.75rem .85rem;
  border:1px solid rgba(28,48,70,.22);
  border-radius:10px;
  background:#fff;
  color:#17283d;
  font:inherit;
}
.newsletter-email input:focus{outline:2px solid rgba(184,118,73,.3);border-color:#b87649;outline-offset:1px}
.newsletter-consent{
  display:grid;
  grid-template-columns:20px 1fr;
  gap:.7rem;
  align-items:start;
  color:#536173;
  font-size:.79rem;
  line-height:1.55;
}
.newsletter-consent input{width:18px;height:18px;margin-top:.15rem;accent-color:#b87649}
.newsletter-privacy{margin:0;color:#697587;font-size:.75rem;line-height:1.5}
.newsletter-submit{justify-self:start}
.newsletter-status{margin:0;font-size:.82rem;line-height:1.55}
.newsletter-status.is-success{
  display:grid;gap:.3rem;
  padding:.85rem 1rem;
  border-left:4px solid #b87649;
  border-radius:10px;
  background:#fff;
  color:#24364b;
}
.newsletter-status.is-success strong{color:#17283d}
.newsletter-status.is-success span{display:block}
.newsletter-status.is-error{color:#8b2734}
.newsletter-status.is-error a{color:inherit;text-decoration:underline}
#newsletter-form.is-complete .newsletter-email,
#newsletter-form.is-complete .newsletter-consent,
#newsletter-form.is-complete .newsletter-privacy,
#newsletter-form.is-complete .newsletter-submit{display:none}

@media (max-width:820px){
  .closure-notice__inner{width:min(100% - 28px,700px);align-items:flex-start;text-align:left}
  .closure-notice__mark{margin-top:.38rem}
  .newsletter-shell{grid-template-columns:1fr;width:min(100% - 28px,680px);gap:1.35rem;padding:1.15rem}
}
@media (max-width:520px){
  .closure-notice p{font-size:.76rem}
  .newsletter-section{padding-top:2rem;padding-bottom:2rem}
  .newsletter-shell{border-radius:16px}
  .newsletter-form{padding:1rem}
  .newsletter-submit{width:100%;white-space:normal;text-align:center;justify-content:center}
}
