
:root{
  --page:#f3f2ee;
  --page-deep:#edeae5;
  --surface:rgba(255,255,255,.56);
  --surface-solid:#fbfaf7;
  --surface-strong:#ffffff;
  --ink:#142c52;
  --text:#1e2630;
  --muted:#5f6975;
  --navy:#093a74;
  --blue:#114e96;
  --blue-soft:#dfe9f4;
  --crimson:#b12943;
  --crimson-soft:#f2dfe3;
  --line:rgba(20,44,82,.11);
  --glass:rgba(250,249,246,.68);
  --shadow:0 22px 62px rgba(18,33,56,.065);
  --shadow-high:0 30px 84px rgba(18,33,56,.10);
  --radius:30px;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; color:var(--text); background:var(--page);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Avenir Next","Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased; line-height:1.5;
}
body:before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(circle at 16% 8%, rgba(17,78,150,.06), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(177,41,67,.045), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.24), transparent 45%);
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
p{margin:0 0 22px;color:var(--muted);font-size:1.03rem;line-height:1.67}
h1,h2,h3{margin:0;color:var(--ink);letter-spacing:-.055em;line-height:1.04;font-weight:610;text-wrap:balance}
h1{font-size:clamp(3.25rem,6.2vw,5.85rem)}
h2{font-size:clamp(2.25rem,4.15vw,3.85rem)}
h3{font-size:clamp(1.18rem,1.9vw,1.54rem)}
strong{font-weight:620;color:var(--ink)}
.container{width:min(var(--max),calc(100% - 52px));margin:0 auto}
.narrow{width:min(936px,calc(100% - 52px));margin:0 auto}
.eyebrow{
  margin:0 0 22px!important;font-size:.7rem!important;font-weight:670;letter-spacing:.25em;
  text-transform:uppercase;color:var(--blue)!important
}
.lead{font-size:clamp(1.12rem,1.7vw,1.28rem);max-width:720px;color:#586472;line-height:1.65}
.header{
  position:sticky; top:0; z-index:100; background:var(--glass);
  -webkit-backdrop-filter:blur(24px) saturate(150%);
  backdrop-filter:blur(24px) saturate(150%);
  border-bottom:1px solid rgba(20,44,82,.07)
}
.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.logo{display:flex;align-items:center;gap:17px;min-width:270px}
.logo-mark{
  width:70px;height:52px;object-fit:contain;object-position:center;
  padding:0;display:block
}
.brand-name{display:block;color:var(--ink);font-weight:630;letter-spacing:.28em;font-size:1.08rem;line-height:1}
.brand-caption{
  display:block;color:#6c7783;font-size:.56rem;text-transform:uppercase;letter-spacing:.18em;
  line-height:1.3;margin-top:8px;white-space:nowrap
}
.nav-group{display:flex;align-items:center;gap:25px}
.nav-links{display:flex;align-items:center;gap:25px;font-size:.87rem;color:#3d4957}
.nav-links>a:not(.btn){position:relative;transition:color .2s ease}
.nav-links>a:not(.btn):after{
  content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--blue);
  transition:right .2s ease
}
.nav-links>a:not(.btn):hover{color:var(--blue)}
.nav-links>a:not(.btn):hover:after{right:0}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;
  border-radius:999px;padding:0 27px;border:1px solid transparent;font-size:.91rem;
  font-weight:570;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
  white-space:nowrap
}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{background:var(--navy);transform:translateY(-1px);box-shadow:0 12px 28px rgba(9,58,116,.16)}
.btn-secondary{border-color:rgba(20,44,82,.15);background:rgba(255,255,255,.5);color:var(--ink)}
.btn-secondary:hover{background:rgba(255,255,255,.86)}
.mobile-menu{display:none}
.lang-switch{
  position:relative;display:flex;align-items:center;gap:8px;padding:7px 9px;
  border-radius:999px;border:1px solid rgba(20,44,82,.12);background:rgba(255,255,255,.48);
}
.lang-switch label{font-size:0}
.flag-option{position:relative;display:block;cursor:pointer}
.flag-option input{position:absolute;opacity:0;pointer-events:none}
.flag-option span{
  height:31px;width:37px;border-radius:999px;display:grid;place-items:center;font-size:1.05rem;
  border:1px solid transparent;transition:.2s;background:transparent
}
.flag-option input:checked + span{background:#fff;border-color:rgba(20,44,82,.12);box-shadow:0 6px 14px rgba(20,44,82,.08)}
.flag-option:hover span{background:#fff}
.hero{padding:62px 0 82px;position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(535px,1.06fr) minmax(382px,.77fr);gap:76px;align-items:center;min-height:calc(100vh - 156px)}
.hero h1{max-width:820px;margin-bottom:30px}
.hero-line{display:block}
.hero-line.accent{color:var(--blue)}
.hero .lead{margin-bottom:40px;max-width:690px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.trust-line{display:flex;gap:29px;flex-wrap:wrap;margin-top:55px;color:#5c6672;font-size:.88rem}
.trust-line span:before{
  content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--crimson);
  margin:0 12px 3px 0
}
.hero-panel{
  border-radius:34px;min-height:705px;overflow:hidden;position:relative;
  background:rgba(255,255,255,.40);border:1px solid rgba(255,255,255,.7);
  box-shadow:var(--shadow-high);display:flex;align-items:flex-end;justify-content:center
}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.hero-panel:after{
  content:"";position:absolute;inset:51% 0 0;background:linear-gradient(0deg,rgba(11,29,53,.34),transparent)
}
.portrait-card{
  position:relative;z-index:2;margin:0 22px 22px;width:calc(100% - 44px);
  background:rgba(250,249,246,.76);border:1px solid rgba(255,255,255,.7);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  border-radius:22px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px
}
.portrait-card strong{display:block;font-size:1rem}
.portrait-card small{color:#606c78;font-size:.82rem}
.logo-showcase{
  padding:70px 0 48px
}
.logo-frame{
  max-width:920px;margin:0 auto;background:rgba(255,255,255,.32);border-radius:34px;
  border:1px solid rgba(255,255,255,.72);padding:30px 50px 24px;
  display:flex;justify-content:center;align-items:center
}
.logo-integral{width:min(100%,680px);height:auto;object-fit:contain}
.manifesto{text-align:center;padding:92px 0 102px}
.manifesto h2{max-width:920px;margin:0 auto 27px}
.manifesto .lead{margin:0 auto}
.section{padding:106px 0}
.section-soft{background:rgba(255,255,255,.35)}
.section-header{max-width:860px;margin-bottom:59px}
.section-header.center{text-align:center;margin-left:auto;margin-right:auto}
.section-header.center p{margin-left:auto;margin-right:auto}
.outcomes{padding:0 0 92px}
.outcomes-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  background:rgba(255,255,255,.3);border:1px solid rgba(255,255,255,.75);
  border-radius:30px;overflow:hidden
}
.outcome{padding:40px 37px 43px;border-right:1px solid var(--line);min-height:220px}
.outcome:last-child{border-right:0}
.outcome .index{font-size:.72rem;color:var(--blue);text-transform:uppercase;letter-spacing:.2em;font-weight:640;margin-bottom:54px}
.outcome h3{font-size:1.37rem;margin-bottom:15px}
.outcome p:last-child{font-size:.94rem;margin:0}
.topics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.topic{
  min-height:300px;background:rgba(255,255,255,.51);border:1px solid rgba(255,255,255,.9);
  border-radius:27px;padding:35px 29px;display:flex;flex-direction:column;transition:transform .22s, box-shadow .22s
}
.topic:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.topic .icon{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blue);font-weight:650;margin-bottom:auto;padding-bottom:55px}
.topic h3{font-size:1.38rem;margin-bottom:14px}
.topic p{font-size:.93rem;line-height:1.58;flex:1}
.text-link{color:var(--blue);font-size:.93rem;font-weight:570}
.text-link:hover{color:var(--navy)}
.expertise-band{
  margin:26px auto;background:rgba(13,37,70,.96);color:#fff;padding:94px 0;
  border-radius:42px;width:min(calc(100% - 48px),1320px);overflow:hidden
}
.expertise-grid{display:grid;grid-template-columns:.9fr 1fr;gap:72px;align-items:start}
.expertise-band h2,.expertise-band h3,.expertise-band strong{color:#fff}
.expertise-band p{color:rgba(236,240,246,.78)}
.expertise-band .eyebrow{color:#9dc1ea!important}
.expertise-band .text-link{color:#dbeafb}
.expertise-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.expertise-item{
  border-radius:21px;padding:25px 23px;background:rgba(255,255,255,.065);
  border:1px solid rgba(255,255,255,.10);min-height:153px
}
.expertise-item h3{font-size:1.06rem;margin-bottom:11px;letter-spacing:-.025em}
.expertise-item p{font-size:.88rem;line-height:1.5;margin:0}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{
  min-height:237px;padding:34px 26px;background:rgba(255,255,255,.52);
  border:1px solid rgba(255,255,255,.9);border-radius:27px
}
.step-num{color:var(--blue);font-size:.7rem;font-weight:650;letter-spacing:.2em;text-transform:uppercase;margin-bottom:58px}
.step h3{font-size:1.26rem;margin-bottom:12px}
.step p{font-size:.93rem;margin:0}
.founder-copy{max-width:780px;margin:0 auto;text-align:center}
.founder-copy h2{margin-bottom:25px}
.signature-line{
  margin:42px auto 0;width:min(530px,100%);height:1px;
  background:linear-gradient(90deg,transparent,var(--crimson),var(--blue),transparent)
}
.compliance{
  background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.9);
  border-radius:28px;padding:38px 34px
}
.compliance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.badge{
  min-height:99px;background:rgba(255,255,255,.61);border-radius:17px;
  padding:18px 16px;color:#5b6673;font-size:.88rem
}
.badge strong{display:block;font-size:.69rem;text-transform:uppercase;letter-spacing:.18em;color:var(--blue);margin-bottom:7px}
.page-cards,.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mini-card,.article-card{
  min-height:260px;background:rgba(255,255,255,.49);border:1px solid rgba(255,255,255,.85);
  border-radius:26px;padding:34px 29px;display:flex;flex-direction:column
}
.mini-card span,.article-tag{
  color:var(--blue);font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;font-weight:650;
  padding-bottom:39px;margin-bottom:auto
}
.mini-card h3,.article-card h3{font-size:1.34rem;margin-bottom:14px}
.mini-card p,.article-card p{font-size:.93rem}
.article-meta{font-size:.8rem;color:#74808b;margin-top:auto;padding-top:17px;border-top:1px solid var(--line)}
.cta{
  display:flex;align-items:center;justify-content:space-between;gap:46px;
  padding:64px;border-radius:36px;background:rgba(255,255,255,.44);
  border:1px solid rgba(255,255,255,.8)
}
.cta h2{margin-bottom:18px}
.cta p{max-width:675px;margin:0}
.page-hero{padding:93px 0 74px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(2.8rem,5vw,4.7rem);max-width:930px;margin-bottom:29px}
.breadcrumb{font-size:.83rem;color:#73808c;margin-bottom:35px}
.content-layout{display:grid;grid-template-columns:254px 1fr;gap:74px;padding:74px 0 108px}
.sidebar{position:sticky;top:112px;align-self:start}
.sidebar a:not(.btn){
  display:block;color:#64707c;padding:12px 0;border-bottom:1px solid var(--line);font-size:.91rem
}
.sidebar a:not(.btn):hover{color:var(--blue)}
.sidebar .btn{width:100%;margin-top:28px}
.richtext{max-width:790px}
.richtext section{padding-bottom:48px;margin-bottom:49px;border-bottom:1px solid var(--line)}
.richtext h2{font-size:clamp(2.03rem,3.2vw,2.75rem);margin-bottom:27px}
.richtext ul{list-style:none;margin:0;padding:0}
.richtext li{position:relative;padding:14px 0 14px 27px;color:var(--muted);border-bottom:1px solid rgba(20,44,82,.07);font-size:1.01rem}
.richtext li:before{
  content:"";position:absolute;left:0;top:24px;width:6px;height:6px;border-radius:50%;background:var(--crimson)
}
.callout{
  background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.86);
  border-radius:22px;padding:27px 28px;margin:34px 0;color:var(--muted)
}
.contact-grid{display:grid;grid-template-columns:.76fr 1fr;gap:42px}
.contact-panel{
  background:rgba(13,37,70,.96);border-radius:30px;padding:45px 38px;color:#fff;
  box-shadow:var(--shadow)
}
.contact-panel h2,.contact-panel strong{color:#fff}
.contact-panel p{color:#d5dce5}
.contact-panel .eyebrow{color:#9dc1ea!important}
.contact-list{display:grid;gap:22px;margin-top:41px}
.contact-list div{padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.14)}
.contact-list label{display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#b8c5d4;margin-bottom:9px}
.contact-list a,.contact-list span{font-size:1rem;color:#fff}
.form-card,.booking-preview{
  background:rgba(255,255,255,.46);border:1px solid rgba(255,255,255,.86);
  border-radius:29px;padding:42px 38px
}
.form-card h2{font-size:2.26rem;margin-bottom:17px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full{grid-column:1/-1}
.field label{font-size:.83rem;color:#596572}
.field input,.field textarea,.field select{
  background:rgba(255,255,255,.73);border:1px solid rgba(20,44,82,.11);border-radius:13px;
  padding:15px 14px;font:inherit;color:var(--text)
}
.field textarea{min-height:128px;resize:vertical}
.disclaimer{font-size:.79rem!important;margin:21px 0 25px!important}
.booking-preview{padding:0;overflow:hidden}
.booking-head{background:rgba(13,37,70,.96);padding:36px 34px}
.booking-head h3{color:#fff;font-size:1.3rem;margin-bottom:8px}
.booking-head p{color:#cad4df;font-size:.91rem;margin:0}
.booking-body{padding:37px 34px}
.slot-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:25px 0 31px}
.slot{
  padding:15px 10px;border-radius:13px;text-align:center;background:rgba(255,255,255,.7);
  border:1px solid rgba(20,44,82,.10);font-size:.91rem;color:var(--ink)
}
.rdv-types{display:grid;gap:12px;margin:32px 0}
.rdv-type{
  display:flex;justify-content:space-between;gap:18px;padding:21px;
  background:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.82);border-radius:18px
}
.rdv-type strong{display:block;font-size:1rem;margin-bottom:4px}
.rdv-type small{color:#61707d}
.rdv-type span{color:var(--blue);font-size:.9rem;white-space:nowrap}
.tariff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tariff-card{
  min-height:405px;padding:37px 30px;border-radius:27px;background:rgba(255,255,255,.48);
  border:1px solid rgba(255,255,255,.9);display:flex;flex-direction:column
}
.tariff-card.featured{background:rgba(13,37,70,.96);border-color:transparent}
.tariff-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--blue);font-weight:650;margin-bottom:36px}
.tariff-card.featured .tariff-label{color:#9dc1ea}
.tariff-card.featured h3,.tariff-card.featured .price{color:#fff}
.tariff-card.featured p,.tariff-card.featured li{color:#d2dae5}
.tariff-card h3{font-size:1.45rem;margin-bottom:19px}
.price{font-size:2rem;color:var(--ink);margin-bottom:25px}
.tariff-card ul{list-style:none;padding:0;margin:0 0 31px;flex:1;color:var(--muted)}
.tariff-card li{padding:11px 0;border-bottom:1px solid rgba(20,44,82,.09);font-size:.92rem}
.tariff-card.featured li{border-bottom-color:rgba(255,255,255,.14)}
.notice{margin-top:37px;background:rgba(255,255,255,.46);border:1px solid rgba(255,255,255,.84);border-radius:21px;padding:26px 29px}
.faq-section{margin-top:76px}
.faq{display:grid;gap:12px}
.faq details{background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.85);border-radius:17px;padding:23px 24px}
.faq summary{font-size:1rem;color:var(--ink);font-weight:570;cursor:pointer}
.faq p{font-size:.94rem;margin:16px 0 0}
.footer{background:rgba(233,231,226,.82);border-top:1px solid rgba(20,44,82,.07);padding:70px 0 27px}
.footer-grid{display:grid;grid-template-columns:1.16fr .7fr .9fr;gap:56px}
.footer .logo-mark{width:88px;height:62px}
.footer h3{font-size:.91rem;letter-spacing:.03em;margin-bottom:22px;color:var(--ink)}
.footer p,.footer a{font-size:.88rem;color:#66727e;line-height:1.7}
.footer a:hover{color:var(--blue)}
.footer-links{display:grid;gap:9px}
.legal-strip{
  margin-top:52px;padding-top:23px;border-top:1px solid rgba(20,44,82,.1);
  color:#707c88;font-size:.74rem;line-height:1.7
}
@media(max-width:1120px){
  .nav-links{display:none}.mobile-menu{display:inline-flex}.nav-group{gap:12px}
  .hero-grid,.expertise-grid,.contact-grid,.content-layout{grid-template-columns:1fr}
  .hero-grid{min-height:0;gap:50px}.hero-panel{min-height:660px;max-width:530px;width:100%}
  .sidebar{position:relative;top:0}.topics-grid,.page-cards,.resource-grid,.tariff-grid{grid-template-columns:repeat(2,1fr)}
  .process{grid-template-columns:repeat(2,1fr)}.compliance-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .container,.narrow{width:min(100% - 30px,var(--max))}
  .nav{height:74px;gap:8px}.logo{gap:9px;min-width:0}.logo-mark{width:53px;height:39px}
  .brand-name{font-size:.91rem;letter-spacing:.19em}.brand-caption{display:none}
  .lang-switch{gap:2px;padding:4px}.flag-option span{height:29px;width:29px;font-size:.95rem}
  .mobile-menu{padding:0 15px;min-height:43px;font-size:.84rem}
  .hero{padding:53px 0 61px}.hero h1{font-size:clamp(2.7rem,13vw,3.6rem)}
  .hero-panel{min-height:505px}.portrait-card{margin:0 14px 14px;width:calc(100% - 28px);padding:14px 16px}
  .logo-showcase{padding:32px 0 22px}.logo-frame{padding:16px 10px;border-radius:24px}
  .manifesto,.section{padding:72px 0}.outcomes{padding-bottom:65px}
  .outcomes-grid,.topics-grid,.expertise-list,.process,.compliance-grid,.page-cards,.resource-grid,.tariff-grid,.form-grid,.slot-grid,.footer-grid{grid-template-columns:1fr}
  .outcome{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:31px 26px}
  .outcome:last-child{border-bottom:0}.outcome .index{margin-bottom:28px}
  .expertise-band{margin:0 15px;width:calc(100% - 30px);padding:66px 0;border-radius:28px}
  .cta{display:block;padding:38px 25px}.cta .btn{margin-top:27px}
  .page-hero{padding:57px 0 47px}.content-layout{padding:47px 0 72px;gap:39px}
  .contact-panel,.form-card{padding:34px 26px}.footer{padding:53px 0 22px}
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lang-switch a{height:31px;width:37px;border-radius:999px;display:grid;place-items:center;font-size:1.05rem;border:1px solid transparent;transition:.2s;background:transparent}
.lang-switch a.active{background:#fff;border-color:rgba(20,44,82,.12);box-shadow:0 6px 14px rgba(20,44,82,.08)}
.lang-switch a:hover{background:#fff}
.logo-frame{background:#f3f2ee;border-color:rgba(20,44,82,.04)}
.logo-integral{mix-blend-mode:multiply}
.hero-panel{background:#f3f2ee}
.hero-photo{background:#f3f2ee}
.price{line-height:1.2;font-size:clamp(1.4rem,2.1vw,2rem);text-wrap:balance}
@media(max-width:700px){.lang-switch a{height:29px;width:29px;font-size:.95rem}}

/* VERSION 6 — logo intégral en transparence native */
.logo-mark{
  object-fit:contain;
  background:transparent !important;
}
.logo-showcase{
  padding:74px 0 40px;
  background:transparent;
}
.logo-frame{
  max-width:980px;
  margin:0 auto;
  padding:14px 34px;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0;
}
.logo-integral{
  width:min(100%,760px);
  max-height:550px;
  margin:0 auto;
  object-fit:contain;
  background:transparent !important;
  mix-blend-mode:normal !important;
  opacity:.96;
}
.footer .logo-mark,
.header .logo-mark{
  background:transparent !important;
}
@media(max-width:700px){
  .logo-showcase{padding:44px 0 22px}
  .logo-frame{padding:0 8px}
  .logo-integral{width:100%}
}

/* VERSION 7 — formulaire de prise de contact qualifié */
.contact-form-section{padding:72px 0 110px}
.contact-form-layout{display:grid;grid-template-columns:.78fr 1.16fr;gap:38px;align-items:start}
.contact-intro{
  position:sticky;top:116px;background:rgba(13,37,70,.96);color:#fff;
  border-radius:30px;padding:44px 37px;box-shadow:var(--shadow)
}
.contact-intro h2,.contact-intro strong{color:#fff}
.contact-intro p{color:#d5dce5}
.contact-intro .eyebrow{color:#9dc1ea!important}
.offer-price{
  display:flex;align-items:baseline;gap:10px;padding:29px 0 27px;
  border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);
  margin:31px 0
}
.offer-price strong{font-size:2.8rem;letter-spacing:-.055em}
.offer-price small{font-size:.96rem;color:#d5dce5}
.contact-promise{display:grid;gap:16px;margin-top:30px}
.contact-promise div{display:flex;gap:13px;color:#d5dce5;font-size:.92rem;line-height:1.5}
.contact-promise div:before{content:"";flex:0 0 6px;width:6px;height:6px;border-radius:50%;margin-top:8px;background:#9dc1ea}
.qualification-card{
  border-radius:30px;padding:45px 40px;background:rgba(255,255,255,.48);
  border:1px solid rgba(255,255,255,.88)
}
.qualification-card h2{font-size:clamp(2.05rem,3vw,2.65rem);margin-bottom:15px}
.form-note{font-size:.91rem!important;margin-bottom:34px!important}
.qualified-form{display:grid;gap:28px}
.form-section-title{
  font-size:.69rem;font-weight:680;letter-spacing:.22em;text-transform:uppercase;
  color:var(--blue);padding-bottom:13px;border-bottom:1px solid var(--line)
}
.inputs-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.inputs-grid .full{grid-column:1 / -1}
.field-radio,.field-check{
  padding:18px 17px;border-radius:16px;background:rgba(255,255,255,.49);
  border:1px solid rgba(20,44,82,.09)
}
.question-label{display:block;color:var(--ink);font-size:.96rem;font-weight:560;margin-bottom:13px}
.choice-row{display:flex;flex-wrap:wrap;gap:10px}
.choice-row label{
  display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;
  border:1px solid rgba(20,44,82,.10);background:rgba(255,255,255,.69);font-size:.88rem;color:#596572;cursor:pointer
}
.choice-row input{accent-color:var(--blue)}
.hours-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.consent{
  display:flex;align-items:flex-start;gap:12px;color:#68737e;font-size:.82rem;line-height:1.55
}
.consent input{margin-top:4px;accent-color:var(--blue)}
.submit-line{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.submit-line small{color:#71808d;max-width:390px;font-size:.79rem}
.confirmation{
  display:none;border-radius:21px;padding:26px;background:rgba(223,233,244,.46);
  border:1px solid rgba(17,78,150,.16);color:var(--muted)
}
.confirmation strong{display:block;margin-bottom:8px}
@media(max-width:1020px){.contact-form-layout{grid-template-columns:1fr}.contact-intro{position:static}}
@media(max-width:700px){.contact-form-section{padding:45px 0 72px}.qualification-card,.contact-intro{padding:31px 23px}.inputs-grid,.hours-row{grid-template-columns:1fr}}

/* VERSION 8 — Mode sombre, identité professionnelle renforcée, contact discret */
:root{
  --transition-theme: .28s ease;
}
html,body,.header,.hero-panel,.topic,.step,.cta,.qualification-card,.contact-intro,
.compliance,.badge,.article-card,.tariff-card,.booking-preview,.form-card,.logo-frame,
.outcomes-grid,.outcome,.expertise-band,.footer,.page-hero,.callout,.notice,
.field input,.field textarea,.field select,.field-radio,.slot,.rdv-type{
  transition:background-color var(--transition-theme), color var(--transition-theme),
  border-color var(--transition-theme), box-shadow var(--transition-theme);
}
.theme-toggle{
  width:46px;height:46px;border-radius:999px;border:1px solid rgba(20,44,82,.12);
  background:rgba(255,255,255,.48);display:grid;place-items:center;cursor:pointer;
  color:var(--ink);transition:.2s ease;position:relative
}
.theme-toggle:hover{background:rgba(255,255,255,.9);transform:translateY(-1px)}
.theme-toggle svg{width:19px;height:19px;display:block}
.theme-toggle .moon{display:block}
.theme-toggle .sun{display:none}
.portrait-card{
  display:block;padding:20px 21px 19px;
}
.portrait-card .identity-row{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding-bottom:14px;margin-bottom:13px;border-bottom:1px solid rgba(20,44,82,.09)
}
.portrait-card .credentials{
  font-size:.75rem;line-height:1.62;color:#586572;letter-spacing:.01em
}
.portrait-card .credentials strong{
  display:inline;font-size:.75rem;color:var(--ink)
}
.credential-separator{color:var(--crimson);padding:0 6px}
.contact-form-section .price-wording{margin-top:-7px;font-size:.81rem;color:#d5dce5}
.footer-phone-removed p{margin-bottom:10px}
.direct-contact-note{
  font-size:.88rem;color:#d5dce5;padding-top:20px;margin-top:23px;
  border-top:1px solid rgba(255,255,255,.14)
}
/* dark mode */
html[data-theme="dark"]{
  --page:#0d1119;
  --page-deep:#0a0e15;
  --surface:rgba(255,255,255,.045);
  --surface-solid:#141a25;
  --surface-strong:#182130;
  --ink:#f4f5f6;
  --text:#eef1f5;
  --muted:#afb7c3;
  --navy:#d8e7f8;
  --blue:#82afe4;
  --blue-soft:#182538;
  --crimson:#d16174;
  --crimson-soft:#2b1c24;
  --line:rgba(226,232,240,.115);
  --glass:rgba(13,17,25,.72);
  --shadow:0 26px 72px rgba(0,0,0,.27);
  --shadow-high:0 34px 88px rgba(0,0,0,.34);
}
html[data-theme="dark"] body:before{
  background:
    radial-gradient(circle at 16% 8%, rgba(63,119,184,.13), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(177,41,67,.07), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.018), transparent 45%);
}
html[data-theme="dark"] .header{border-bottom-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .brand-caption,
html[data-theme="dark"] .trust-line,
html[data-theme="dark"] .portrait-card small,
html[data-theme="dark"] .portrait-card .credentials,
html[data-theme="dark"] .field label,
html[data-theme="dark"] .choice-row label,
html[data-theme="dark"] .consent,
html[data-theme="dark"] .submit-line small,
html[data-theme="dark"] .article-meta,
html[data-theme="dark"] .footer p,
html[data-theme="dark"] .footer a,
html[data-theme="dark"] .legal-strip{color:var(--muted)}
html[data-theme="dark"] .lang-switch,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .btn-secondary{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.13)}
html[data-theme="dark"] .theme-toggle .moon{display:none}
html[data-theme="dark"] .theme-toggle .sun{display:block}
html[data-theme="dark"] .btn-primary{background:#f3f5f8;color:#101824}
html[data-theme="dark"] .btn-primary:hover{background:#fff}
html[data-theme="dark"] .hero-panel,
html[data-theme="dark"] .logo-frame,
html[data-theme="dark"] .hero-photo{background:transparent}
html[data-theme="dark"] .logo-integral,
html[data-theme="dark"] .logo-mark{filter:brightness(1.18) saturate(1.04)}
html[data-theme="dark"] .portrait-card{
  background:rgba(16,21,30,.72);border-color:rgba(255,255,255,.1)
}
html[data-theme="dark"] .portrait-card .identity-row{border-bottom-color:rgba(255,255,255,.10)}
html[data-theme="dark"] .outcomes-grid,
html[data-theme="dark"] .outcome,
html[data-theme="dark"] .topic,
html[data-theme="dark"] .step,
html[data-theme="dark"] .cta,
html[data-theme="dark"] .qualification-card,
html[data-theme="dark"] .article-card,
html[data-theme="dark"] .tariff-card,
html[data-theme="dark"] .compliance,
html[data-theme="dark"] .badge,
html[data-theme="dark"] .notice,
html[data-theme="dark"] .callout,
html[data-theme="dark"] .form-card{
  background:rgba(255,255,255,.038);border-color:rgba(255,255,255,.075)
}
html[data-theme="dark"] .section-soft{background:rgba(255,255,255,.018)}
html[data-theme="dark"] .expertise-band,
html[data-theme="dark"] .contact-intro{background:#111c2d}
html[data-theme="dark"] .expertise-item{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.09)}
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field textarea,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .field-radio,
html[data-theme="dark"] .choice-row label{
  background:rgba(255,255,255,.045);color:var(--text);border-color:rgba(255,255,255,.11)
}
html[data-theme="dark"] .field input::placeholder,
html[data-theme="dark"] .field textarea::placeholder{color:#8e98a7}
html[data-theme="dark"] .footer{background:#090e16;border-top-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .sidebar a:not(.btn){color:var(--muted);border-bottom-color:rgba(255,255,255,.09)}
html[data-theme="dark"] .richtext li{color:var(--muted);border-bottom-color:rgba(255,255,255,.07)}
html[data-theme="dark"] .lang-switch a.active,
html[data-theme="dark"] .lang-switch a:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.13)}
@media(max-width:700px){
  .theme-toggle{width:40px;height:40px}
  .portrait-card .identity-row{display:block}
  .portrait-card .identity-row small{display:block;margin-top:5px}
  .portrait-card .credentials{font-size:.72rem}
}

/* VERSION 9 — Portrait dégagé et présentation professionnelle sobre */
.hero-panel{
  align-items:stretch;
}
.hero-panel:after{
  content:"";
  inset:auto 0 0;
  height:22%;
  background:linear-gradient(0deg,rgba(11,29,53,.09),transparent);
}
.portrait-card{
  position:absolute;
  z-index:2;
  left:24px;
  right:auto;
  bottom:24px;
  width:auto;
  min-width:220px;
  max-width:290px;
  margin:0;
  padding:13px 16px 12px;
  border-radius:16px;
  background:rgba(250,249,246,.70);
  -webkit-backdrop-filter:blur(15px);
  backdrop-filter:blur(15px);
}
.portrait-card .identity-row{
  display:block;
  border:0;
  padding:0;
  margin:0;
}
.portrait-card .identity-row strong{
  display:block;
  font-size:.96rem;
  letter-spacing:-.02em;
}
.portrait-card .identity-row small{
  display:block;
  font-size:.73rem;
  line-height:1.45;
  margin-top:4px;
}
.portrait-card .credentials{display:none}
.professional-profile{
  padding:0 0 92px;
}
.profile-panel{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:56px;
  align-items:start;
  padding:54px 58px;
  border-radius:31px;
  background:rgba(255,255,255,.38);
  border:1px solid rgba(255,255,255,.86);
}
.profile-panel h2{margin-bottom:19px}
.profile-panel .profile-lead{
  margin:0;
  font-size:1.12rem;
  max-width:480px;
}
.profile-details{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.profile-detail{
  padding:22px 21px;
  border-radius:19px;
  background:rgba(255,255,255,.50);
  border:1px solid rgba(255,255,255,.9);
}
.profile-detail.full{grid-column:1/-1}
.profile-detail span{
  display:block;
  color:var(--blue);
  font-size:.68rem;
  font-weight:670;
  letter-spacing:.21em;
  text-transform:uppercase;
  margin-bottom:11px;
}
.profile-detail p{
  color:var(--ink);
  font-size:.91rem;
  line-height:1.58;
  margin:0;
}
.resource-grid .article-card{
  min-height:302px;
}
.resource-grid .article-card p{
  flex:1;
  line-height:1.63;
}
html[data-theme="dark"] .profile-panel,
html[data-theme="dark"] .profile-detail{
  background:rgba(255,255,255,.038);
  border-color:rgba(255,255,255,.075);
}
html[data-theme="dark"] .portrait-card{
  background:rgba(16,21,30,.58);
}
@media(max-width:1020px){
  .profile-panel{grid-template-columns:1fr;gap:36px}
}
@media(max-width:700px){
  .portrait-card{left:14px;bottom:14px;max-width:235px;padding:11px 13px}
  .professional-profile{padding:0 0 58px}
  .profile-panel{padding:33px 23px;border-radius:24px}
  .profile-details{grid-template-columns:1fr}
}

/* VERSION 10 — Cartouche portrait rééquilibré */
.portrait-card{
  max-width:335px;
  padding:14px 17px 14px;
}
.portrait-card .portrait-function{
  display:block;
  margin:0 0 8px;
  padding-bottom:8px;
  border-bottom:1px solid rgba(20,44,82,.10);
  color:var(--ink);
  font-size:.72rem;
  font-weight:575;
  line-height:1.42;
  letter-spacing:.01em;
}
.portrait-card .identity-row strong{
  margin-bottom:5px;
}
.portrait-card .identity-row small{
  font-size:.69rem;
  line-height:1.42;
}
html[data-theme="dark"] .portrait-card .portrait-function{
  border-bottom-color:rgba(255,255,255,.12);
  color:var(--text);
}
@media(max-width:700px){
  .portrait-card{
    max-width:268px;
    padding:11px 13px;
  }
  .portrait-card .portrait-function{
    font-size:.64rem;
    margin-bottom:6px;
    padding-bottom:6px;
  }
  .portrait-card .identity-row strong{font-size:.88rem}
  .portrait-card .identity-row small{font-size:.62rem}
}

/* VERSION 11 — Ordre final des qualités professionnelles sur le portrait */
.portrait-card{
  max-width:358px;
  padding:14px 17px 14px;
}
.portrait-card .portrait-function{
  margin:8px 0 0;
  padding:9px 0 0;
  border-top:1px solid rgba(20,44,82,.10);
  border-bottom:0;
  color:inherit;
}
.portrait-card .portrait-function small{
  display:block;
  color:#596572;
  font-size:.69rem;
  line-height:1.48;
  margin-top:3px;
}
.portrait-card .identity-row small{
  color:var(--blue);
  font-weight:590;
  letter-spacing:.01em;
}
html[data-theme="dark"] .portrait-card .portrait-function{
  border-top-color:rgba(255,255,255,.12);
}
html[data-theme="dark"] .portrait-card .portrait-function small{
  color:var(--muted);
}
html[data-theme="dark"] .portrait-card .identity-row small{
  color:var(--blue);
}
@media(max-width:700px){
  .portrait-card{max-width:285px}
  .portrait-card .portrait-function small{font-size:.62rem}
}

/* VERSION 12 — Habilitations, signature AETERNAM et pédagogie visuelle */
.professional-profile{padding:10px 0 106px}
.profile-panel{grid-template-columns:.64fr 1.36fr;gap:52px;padding:56px 55px;align-items:start}
.profile-panel .profile-lead{max-width:390px;font-size:1.03rem}
.credentials-heading{margin:0 0 18px;color:var(--ink);font-size:clamp(1.78rem,2.8vw,2.45rem);letter-spacing:-.055em;line-height:1.1}
.regulatory-panel{display:grid;gap:14px}
.regulatory-group-label{color:var(--blue);font-size:.68rem;text-transform:uppercase;letter-spacing:.22em;font-weight:670;margin:0 0 5px}
.regulatory-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.reg-card{background:rgba(255,255,255,.54);border:1px solid rgba(255,255,255,.92);border-radius:18px;padding:17px 12px 16px;min-height:188px}
.reg-symbol{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(17,78,150,.08);color:var(--blue);font-size:1.02rem;margin-bottom:14px}
.reg-card h3{font-family:inherit;letter-spacing:-.025em;font-size:.87rem;line-height:1.28;margin:0 0 7px}
.reg-card p{font-size:.72rem;line-height:1.52;margin:0}
.reg-card p strong{display:block;font-size:.74rem;margin-bottom:5px}
.education-row{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:17px}
.education-card{background:rgba(17,78,150,.045);border:1px solid rgba(17,78,150,.10);border-radius:18px;padding:19px 20px}
.education-card span{display:block;color:var(--blue);font-size:.68rem;font-weight:670;letter-spacing:.21em;text-transform:uppercase;margin-bottom:9px}
.education-card strong{display:block;font-size:.9rem;line-height:1.48}
.manifesto{padding:103px 0 84px}
.manifesto .aeternam-signature{font-size:clamp(1.75rem,3vw,2.45rem)!important;line-height:1;letter-spacing:.44em;margin-right:-.44em!important;color:var(--ink)!important;margin-bottom:38px!important;font-weight:620}
.manifesto h2{max-width:960px;margin:0 auto 29px}
.manifesto-authorisations{margin:49px auto 0;max-width:950px;display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.manifesto-pill{display:flex;align-items:center;gap:11px;border-radius:999px;padding:14px 19px;background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.89);color:#556371;font-size:.86rem}
.manifesto-pill strong{font-size:.86rem;color:var(--blue)}
.visual-map{padding:28px 0 103px}
.visual-map-card{border-radius:35px;background:rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.86);padding:55px 45px 51px}
.visual-map-intro{text-align:center;max-width:720px;margin:0 auto 48px}
.visual-map-intro h2{margin-bottom:20px}
.visual-map-intro p{margin:0 auto}
.patrimony-map{display:grid;grid-template-columns:1fr 244px 1fr;grid-template-rows:repeat(3,auto);gap:15px 22px;max-width:1010px;margin:0 auto;align-items:center}
.map-center{grid-column:2;grid-row:1 / span 3;justify-self:center;width:220px;height:220px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:var(--ink);color:#fff;box-shadow:0 24px 52px rgba(20,44,82,.15)}
.map-center strong{color:#fff;font-size:1.25rem;letter-spacing:.13em;margin-right:-.13em}
.map-center small{margin-top:10px;color:rgba(255,255,255,.72);font-size:.68rem;text-transform:uppercase;letter-spacing:.18em}
.map-node{min-height:102px;display:flex;align-items:center;gap:15px;background:rgba(255,255,255,.52);border:1px solid rgba(255,255,255,.9);border-radius:21px;padding:17px 18px}
.map-node.left{justify-content:flex-end;text-align:right}
.map-icon{flex:0 0 45px;width:45px;height:45px;border-radius:14px;display:grid;place-items:center;color:var(--blue);background:rgba(17,78,150,.08);font-size:1.08rem;font-weight:600}
.map-node strong{display:block;font-size:.96rem;line-height:1.3;margin-bottom:4px}
.map-node small{display:block;color:var(--muted);font-size:.76rem;letter-spacing:.03em}
.topic-diagram{display:flex;align-items:center;gap:8px;margin:4px 0 22px}
.topic-diagram i{display:block;width:34px;height:1px;background:rgba(17,78,150,.18)}
.topic-diagram b{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(17,78,150,.08);color:var(--blue);font-style:normal;font-size:.95rem;font-weight:620}
.resource-grid .article-card{min-height:322px}
.resource-grid .article-card p{flex:1;line-height:1.64}
html[data-theme="dark"] .reg-card,html[data-theme="dark"] .education-card,html[data-theme="dark"] .visual-map-card,html[data-theme="dark"] .map-node,html[data-theme="dark"] .manifesto-pill{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .reg-symbol,html[data-theme="dark"] .map-icon,html[data-theme="dark"] .topic-diagram b{background:rgba(130,175,228,.12)}
html[data-theme="dark"] .map-center{background:#f4f5f6;color:#101824}
html[data-theme="dark"] .map-center strong{color:#101824}
html[data-theme="dark"] .map-center small{color:rgba(16,24,36,.65)}
@media(max-width:1130px){.profile-panel{grid-template-columns:1fr}.regulatory-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:790px){.professional-profile{padding:0 0 68px}.profile-panel{padding:33px 22px;gap:33px}.regulatory-grid,.education-row{grid-template-columns:1fr}.reg-card{min-height:auto}.manifesto{padding:73px 0 63px}.manifesto .aeternam-signature{letter-spacing:.27em;margin-right:-.27em!important}.visual-map{padding:8px 0 69px}.visual-map-card{padding:37px 18px}.patrimony-map{display:flex;flex-direction:column}.map-center{order:-1;width:174px;height:174px;margin-bottom:18px}.map-node.left{justify-content:flex-start;text-align:left}}

/* VERSION 13 — iconographie vectorielle premium et centrage rigoureux */
.professional-profile .profile-panel{display:block;max-width:1180px;margin:0 auto;padding:58px 54px 52px}
.credentials-header{text-align:center;max-width:760px;margin:0 auto 47px}
.credentials-header .eyebrow{text-align:center}
.credentials-header .credentials-heading{margin:0 auto 18px}
.credentials-header .profile-lead{max-width:650px!important;margin:0 auto!important}
.regulatory-group-label{text-align:center;margin-bottom:19px}
.regulatory-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;align-items:stretch;margin-bottom:42px}
.reg-card{min-height:238px;display:flex;flex-direction:column;text-align:left;padding:23px 18px 20px}
.reg-symbol{width:52px;height:52px;border-radius:16px;margin:0 0 24px}
.reg-symbol svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}
.reg-card h3{font-size:.96rem;margin-bottom:10px}
.reg-card p{font-size:.79rem;line-height:1.57}
.reg-card p strong{font-size:.8rem;line-height:1.35;margin-bottom:8px}
.education-row{max-width:790px;grid-template-columns:1fr 1.32fr;margin:0 auto;gap:13px}
.education-card{padding:24px 25px;min-height:104px}
.manifesto{text-align:center}
.manifesto .aeternam-signature{display:block;width:max-content;margin-left:auto!important;margin-right:auto!important;padding-left:.44em;text-align:center}
.manifesto-authorisations{align-items:stretch}
.manifesto-pill{min-width:360px;justify-content:flex-start;padding:16px 22px;text-align:left}
.manifesto-pill .pill-icon{flex:0 0 44px;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(17,78,150,.08);color:var(--blue)}
.manifesto-pill .pill-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}
.manifesto-pill .pill-copy strong{display:block;margin-bottom:3px}
.patrimony-map{grid-template-columns:1fr 252px 1fr;gap:17px 27px}
.map-center{width:232px;height:232px}
.map-center strong{font-size:1.32rem;padding-left:.13em}
.map-node{min-height:116px;padding:19px 20px;gap:18px}
.map-icon{width:57px;height:57px;flex-basis:57px;border-radius:17px}
.map-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}
.map-node strong{font-size:1.06rem}
.map-node small{font-size:.8rem}
.resource-grid .topic-diagram b:first-child{width:43px;height:43px;border-radius:14px}
.resource-grid .topic-diagram b:first-child svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.resource-grid .topic-diagram b:last-child{width:auto;height:auto;border-radius:0;background:transparent;font-size:1rem}
html[data-theme="dark"] .manifesto-pill .pill-icon{background:rgba(130,175,228,.12)}
@media(max-width:1130px){.regulatory-grid{grid-template-columns:repeat(2,1fr)}.reg-card{min-height:196px}}
@media(max-width:790px){.professional-profile .profile-panel{padding:37px 19px}.credentials-header{margin-bottom:34px}.regulatory-grid{grid-template-columns:1fr;gap:11px;margin-bottom:34px}.education-row{grid-template-columns:1fr}.manifesto .aeternam-signature{padding-left:.27em}.manifesto-pill{min-width:0;width:100%;padding:14px 16px}.patrimony-map{display:flex}.map-center{width:184px;height:184px}.map-node{width:100%;min-height:86px}}

/* VERSION 16 — matière velours, relief premium et accents carmin AETERNAM */
:root{
  --velvet-page:#f3f2ee;
  --velvet-thread:rgba(112,88,74,.032);
  --velvet-light:rgba(255,255,255,.30);
  --velvet-shadow:rgba(39,36,31,.035);
  --brand-red:#b12943;
  --brand-red-deep:#8d2137;
  --brand-red-soft:rgba(177,41,67,.09);
  --shadow-soft:0 10px 28px rgba(18,33,56,.045), 0 1px 2px rgba(18,33,56,.05);
  --shadow-card:0 20px 48px rgba(18,33,56,.075), 0 2px 7px rgba(18,33,56,.045);
  --shadow-lifted:0 31px 76px rgba(18,33,56,.105), 0 6px 17px rgba(18,33,56,.055);
}
body{
  position:relative;
  background-color:var(--velvet-page);
}
body:before{
  background:
    radial-gradient(circle at 15% 8%, rgba(17,78,150,.065), transparent 31%),
    radial-gradient(circle at 85% 20%, rgba(177,41,67,.075), transparent 30%),
    radial-gradient(circle at 50% 56%, rgba(255,255,255,.19), transparent 48%),
    linear-gradient(135deg, rgba(255,255,255,.25), transparent 48%);
}
body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.82;
  background-image:
    radial-gradient(ellipse at center, var(--velvet-light) 0 .7px, transparent .85px),
    radial-gradient(ellipse at center, var(--velvet-shadow) 0 .65px, transparent .82px),
    repeating-linear-gradient(108deg, transparent 0 3px, var(--velvet-thread) 3.3px, transparent 4.1px),
    repeating-linear-gradient(72deg, transparent 0 3.3px, rgba(255,255,255,.035) 3.5px, transparent 4.3px);
  background-size:4px 4px, 5px 5px, 9px 9px, 10px 10px;
  background-position:0 0, 2px 2px, 0 0, 1px 0;
  mix-blend-mode:multiply;
}
.header{
  box-shadow:0 8px 28px rgba(20,44,82,.035);
}
.hero-panel{
  box-shadow:var(--shadow-lifted);
  border-color:rgba(255,255,255,.85);
}
.portrait-card{
  box-shadow:0 17px 38px rgba(18,33,56,.115), inset 0 1px 0 rgba(255,255,255,.45);
}
.logo-integral{
  filter:drop-shadow(0 9px 20px rgba(20,44,82,.06));
}
.profile-panel,
.visual-map-card,
.outcomes-grid,
.cta,
.compliance,
.qualification-card,
.form-card,
.booking-preview{
  box-shadow:var(--shadow-card);
}
.topic,
.step,
.article-card,
.tariff-card,
.reg-card,
.education-card,
.map-node,
.badge,
.faq details,
.rdv-type,
.callout,
.notice{
  box-shadow:var(--shadow-soft);
}
.topic:hover,
.article-card:hover,
.reg-card:hover,
.education-card:hover,
.map-node:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-card);
}
.topic,
.article-card,
.reg-card,
.education-card,
.map-node{
  transition:transform .24s ease, box-shadow .24s ease, background-color var(--transition-theme), border-color var(--transition-theme);
}
.eyebrow{
  color:var(--brand-red)!important;
}
.hero-line.accent,
.text-link,
.regulatory-group-label,
.education-card span,
.article-tag,
.tariff-label{
  color:var(--blue);
}
.signature-line{
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(177,41,67,.75), rgba(17,78,150,.78), transparent);
}
.btn-primary{
  box-shadow:0 14px 30px rgba(20,44,82,.13);
}
.btn-primary:hover{
  box-shadow:0 18px 38px rgba(20,44,82,.18), 0 3px 8px rgba(177,41,67,.07);
}
.btn-secondary:hover{
  border-color:rgba(177,41,67,.19);
}
.manifesto .aeternam-signature{
  position:relative;
}
.manifesto .aeternam-signature:after{
  content:"";
  display:block;
  width:62px;
  height:2px;
  margin:27px auto 0;
  transform:translateX(-.22em);
  background:linear-gradient(90deg,var(--brand-red),var(--blue));
  border-radius:999px;
}
.manifesto-pill{
  box-shadow:0 13px 30px rgba(18,33,56,.055), inset 0 1px 0 rgba(255,255,255,.34);
}
.manifesto-pill:first-child{
  border-bottom:2px solid rgba(17,78,150,.22);
}
.manifesto-pill:last-child{
  border-bottom:2px solid rgba(177,41,67,.28);
}
.manifesto-pill:last-child .pill-icon,
.reg-card:nth-child(2) .reg-symbol{
  color:var(--brand-red);
  background:var(--brand-red-soft);
}
.reg-card:nth-child(2){
  border-color:rgba(177,41,67,.11);
}
.map-center{
  background:
    radial-gradient(circle at 33% 24%, rgba(255,255,255,.11), transparent 33%),
    linear-gradient(145deg, #192f51, #10233d);
  box-shadow:0 31px 68px rgba(20,44,82,.18), 0 0 0 7px rgba(177,41,67,.038);
}
.map-node:nth-of-type(4) .map-icon,
.map-node:nth-of-type(6) .map-icon{
  color:var(--brand-red);
  background:var(--brand-red-soft);
}
.map-node.left:nth-of-type(1),
.map-node:nth-of-type(4),
.map-node.left:nth-of-type(5),
.map-node:nth-of-type(7){
  border-color:rgba(177,41,67,.08);
}
.map-icon,
.reg-symbol,
.topic-diagram b:first-child{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}
.resource-grid .article-card:nth-child(3) .topic-diagram b:first-child,
.resource-grid .article-card:nth-child(5) .topic-diagram b:first-child{
  color:var(--brand-red);
  background:var(--brand-red-soft);
}
.footer{
  position:relative;
}
.footer:before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:min(1240px,calc(100% - 52px));
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(177,41,67,.19),rgba(17,78,150,.19),transparent);
}
/* Velours et relief en mode sombre : texture plus discrète, rouge profond conservé */
html[data-theme="dark"]{
  --velvet-page:#0d1119;
  --velvet-thread:rgba(233,223,208,.027);
  --velvet-light:rgba(255,255,255,.04);
  --velvet-shadow:rgba(0,0,0,.15);
  --brand-red:#d05d73;
  --brand-red-deep:#b7435d;
  --brand-red-soft:rgba(208,93,115,.12);
  --shadow-soft:0 13px 31px rgba(0,0,0,.19), 0 1px 2px rgba(0,0,0,.16);
  --shadow-card:0 24px 58px rgba(0,0,0,.27), 0 3px 9px rgba(0,0,0,.18);
  --shadow-lifted:0 35px 86px rgba(0,0,0,.34), 0 8px 18px rgba(0,0,0,.19);
}
html[data-theme="dark"] body:after{
  opacity:.55;
  mix-blend-mode:screen;
}
html[data-theme="dark"] .map-center{
  background:
    radial-gradient(circle at 32% 22%, rgba(255,255,255,.8), transparent 35%),
    linear-gradient(145deg,#f8f8f7,#e3e4e7);
  box-shadow:0 31px 72px rgba(0,0,0,.31), 0 0 0 7px rgba(208,93,115,.06);
}
html[data-theme="dark"] .manifesto-pill:last-child .pill-icon,
html[data-theme="dark"] .reg-card:nth-child(2) .reg-symbol,
html[data-theme="dark"] .map-node:nth-of-type(4) .map-icon,
html[data-theme="dark"] .map-node:nth-of-type(6) .map-icon{
  background:rgba(208,93,115,.12);
}
@media(max-width:790px){
  body:after{opacity:.54}
  .hero-panel{box-shadow:var(--shadow-card)}
}

.section-header.center:after,
.visual-map-intro:after,
.credentials-header:after{
  content:"";
  display:block;
  width:54px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--brand-red),var(--blue));
  margin:27px auto 0;
}
/* =========================================================
   CORRECTIF FINAL MODE CLAIR / MODE SOMBRE AETERNAM
   À coller tout en bas du fichier styles.css
   ========================================================= */

/* Sécurise le mode clair */
html[data-theme="light"],
html[data-theme="light"] body {
  color-scheme: light !important;
}

html[data-theme="light"] body {
  background-color: #f3f2ee !important;
  color: #1e2630 !important;
}

html[data-theme="light"] body::before {
  background:
    radial-gradient(circle at 16% 8%, rgba(17,78,150,.06), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(177,41,67,.045), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.24), transparent 45%) !important;
}

html[data-theme="light"] body::after {
  opacity: 1 !important;
  mix-blend-mode: multiply !important;
}

/* Header clair */
html[data-theme="light"] .header {
  background: rgba(243,242,238,.86) !important;
  border-bottom-color: rgba(20,44,82,.07) !important;
}

html[data-theme="light"] .nav,
html[data-theme="light"] .brand-name,
html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3,
html[data-theme="light"] strong {
  color: #142c52 !important;
}

html[data-theme="light"] p,
html[data-theme="light"] li,
html[data-theme="light"] .lead,
html[data-theme="light"] .breadcrumb,
html[data-theme="light"] .brand-caption,
html[data-theme="light"] .nav-links {
  color: #5f6975 !important;
}

/* Bouton thème clair */
html[data-theme="light"] .theme-toggle {
  background: rgba(255,255,255,.58) !important;
  border-color: rgba(20,44,82,.12) !important;
  color: #142c52 !important;
}

html[data-theme="light"] .theme-toggle .moon {
  display: block !important;
}

html[data-theme="light"] .theme-toggle .sun {
  display: none !important;
}

/* Cartes / panneaux en mode clair */
html[data-theme="light"] .topic,
html[data-theme="light"] .step,
html[data-theme="light"] .article-card,
html[data-theme="light"] .tariff-card,
html[data-theme="light"] .reg-card,
html[data-theme="light"] .education-card,
html[data-theme="light"] .map-node,
html[data-theme="light"] .profile-panel,
html[data-theme="light"] .visual-map-card,
html[data-theme="light"] .qualification-card,
html[data-theme="light"] .form-card,
html[data-theme="light"] .booking-preview,
html[data-theme="light"] .cta,
html[data-theme="light"] .compliance,
html[data-theme="light"] .badge,
html[data-theme="light"] .faq details,
html[data-theme="light"] .rdv-type,
html[data-theme="light"] .callout,
html[data-theme="light"] .notice {
  background: rgba(255,255,255,.48) !important;
  border-color: rgba(255,255,255,.86) !important;
  color: #1e2630 !important;
}

/* Sécurise le mode sombre */
html[data-theme="dark"],
html[data-theme="dark"] body {
  color-scheme: dark !important;
}

html[data-theme="dark"] body {
  background-color: #0d1119 !important;
  color: #eef1f5 !important;
}

html[data-theme="dark"] body::before {
  background:
    radial-gradient(circle at 16% 8%, rgba(63,119,184,.13), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(177,41,67,.07), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.018), transparent 45%) !important;
}

html[data-theme="dark"] body::after {
  opacity: .72 !important;
  mix-blend-mode: screen !important;
}

/* Header sombre */
html[data-theme="dark"] .header {
  background: rgba(13,17,25,.88) !important;
  border-bottom-color: rgba(255,255,255,.08) !important;
}

html[data-theme="dark"] .nav,
html[data-theme="dark"] .brand-name,
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] strong {
  color: #f4f5f6 !important;
}

html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] .lead,
html[data-theme="dark"] .breadcrumb,
html[data-theme="dark"] .brand-caption,
html[data-theme="dark"] .nav-links {
  color: rgba(238,241,245,.70) !important;
}

/* Bouton thème sombre */
html[data-theme="dark"] .theme-toggle {
  background: rgba(255,255,255,.08) !important;
  border-color: rgba(255,255,255,.13) !important;
  color: #f4f5f6 !important;
}

html[data-theme="dark"] .theme-toggle .moon {
  display: none !important;
}

html[data-theme="dark"] .theme-toggle .sun {
  display: block !important;
}

/* Cartes / panneaux en mode sombre */
html[data-theme="dark"] .topic,
html[data-theme="dark"] .step,
html[data-theme="dark"] .article-card,
html[data-theme="dark"] .tariff-card,
html[data-theme="dark"] .reg-card,
html[data-theme="dark"] .education-card,
html[data-theme="dark"] .map-node,
html[data-theme="dark"] .profile-panel,
html[data-theme="dark"] .visual-map-card,
html[data-theme="dark"] .qualification-card,
html[data-theme="dark"] .form-card,
html[data-theme="dark"] .booking-preview,
html[data-theme="dark"] .cta,
html[data-theme="dark"] .compliance,
html[data-theme="dark"] .badge,
html[data-theme="dark"] .faq details,
html[data-theme="dark"] .rdv-type,
html[data-theme="dark"] .callout,
html[data-theme="dark"] .notice {
  background: rgba(255,255,255,.045) !important;
  border-color: rgba(255,255,255,.085) !important;
  color: #eef1f5 !important;
}

/* Champs formulaire */
html[data-theme="light"] input,
html[data-theme="light"] textarea,
html[data-theme="light"] select {
  background: rgba(255,255,255,.78) !important;
  color: #1e2630 !important;
  border-color: rgba(20,44,82,.12) !important;
}

html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
  background: rgba(255,255,255,.06) !important;
  color: #eef1f5 !important;
  border-color: rgba(255,255,255,.13) !important;
}

/* Empêche Safari de laisser un voile gris lors du changement */
body.theme-changing *,
html.theme-switching * {
  transition: none !important;
}

/* Force le repaint visuel Safari */
body.theme-changing {
  transform: translateZ(0);
}
/* =========================================================
   CORRECTIF LISIBILITÉ MODE JOUR — AETERNAM
   À coller tout en bas de styles.css
   ========================================================= */

/* Le logo doit rester visible en mode jour */
html[data-theme="light"] .logo-mark {
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

html[data-theme="light"] .brand-name {
  color: #142c52 !important;
}

html[data-theme="light"] .brand-caption {
  color: #5f6975 !important;
}

/* Les grands blocs bleu nuit doivent garder un texte clair */
html[data-theme="light"] .expertise-band,
html[data-theme="light"] .contact-panel,
html[data-theme="light"] .contact-intro,
html[data-theme="light"] .tariff-card.featured,
html[data-theme="light"] .booking-head {
  background: #142c52 !important;
  color: #ffffff !important;
}

html[data-theme="light"] .expertise-band h1,
html[data-theme="light"] .expertise-band h2,
html[data-theme="light"] .expertise-band h3,
html[data-theme="light"] .expertise-band strong,
html[data-theme="light"] .contact-panel h1,
html[data-theme="light"] .contact-panel h2,
html[data-theme="light"] .contact-panel h3,
html[data-theme="light"] .contact-panel strong,
html[data-theme="light"] .contact-intro h1,
html[data-theme="light"] .contact-intro h2,
html[data-theme="light"] .contact-intro h3,
html[data-theme="light"] .contact-intro strong,
html[data-theme="light"] .tariff-card.featured h1,
html[data-theme="light"] .tariff-card.featured h2,
html[data-theme="light"] .tariff-card.featured h3,
html[data-theme="light"] .tariff-card.featured strong,
html[data-theme="light"] .tariff-card.featured .price,
html[data-theme="light"] .booking-head h1,
html[data-theme="light"] .booking-head h2,
html[data-theme="light"] .booking-head h3,
html[data-theme="light"] .booking-head strong {
  color: #ffffff !important;
}

html[data-theme="light"] .expertise-band p,
html[data-theme="light"] .expertise-band li,
html[data-theme="light"] .contact-panel p,
html[data-theme="light"] .contact-panel li,
html[data-theme="light"] .contact-intro p,
html[data-theme="light"] .contact-intro li,
html[data-theme="light"] .tariff-card.featured p,
html[data-theme="light"] .tariff-card.featured li,
html[data-theme="light"] .booking-head p {
  color: rgba(255,255,255,.76) !important;
}

html[data-theme="light"] .expertise-band .eyebrow,
html[data-theme="light"] .contact-panel .eyebrow,
html[data-theme="light"] .contact-intro .eyebrow,
html[data-theme="light"] .tariff-card.featured .tariff-label {
  color: #9dc1ea !important;
}

html[data-theme="light"] .expertise-band .text-link,
html[data-theme="light"] .contact-panel a,
html[data-theme="light"] .contact-intro a {
  color: #ffffff !important;
}

/* Les petites cartes à l’intérieur des blocs bleu nuit restent lisibles */
html[data-theme="light"] .expertise-item {
  background: rgba(255,255,255,.075) !important;
  border-color: rgba(255,255,255,.16) !important;
}

html[data-theme="light"] .expertise-item h3,
html[data-theme="light"] .expertise-item strong {
  color: #ffffff !important;
}

html[data-theme="light"] .expertise-item p {
  color: rgba(255,255,255,.70) !important;
}

/* Le rond central du schéma doit garder un contraste fort */
html[data-theme="light"] .map-center {
  background: #142c52 !important;
  color: #ffffff !important;
}

html[data-theme="light"] .map-center strong {
  color: #ffffff !important;
}

html[data-theme="light"] .map-center small {
  color: rgba(255,255,255,.72) !important;
}

/* Les pictogrammes du schéma ne doivent pas devenir invisibles */
html[data-theme="light"] .map-icon,
html[data-theme="light"] .reg-symbol,
html[data-theme="light"] .topic-diagram b:first-child {
  color: #114e96 !important;
  background: rgba(17,78,150,.08) !important;
}

/* AMF Finance Durable reste vert, mais lisible */
html[data-theme="light"] .reg-card:nth-child(2) .reg-symbol,
html[data-theme="light"] .manifesto-pill.is-sustainable .pill-icon {
  color: #2f765c !important;
  background: rgba(47,118,92,.11) !important;
}

/* Les badges AMF doivent rester lisibles en mode clair */
html[data-theme="light"] .manifesto-pill {
  background: rgba(255,255,255,.62) !important;
  color: #5f6975 !important;
}

html[data-theme="light"] .manifesto-pill strong {
  color: #142c52 !important;
}

/* Corrige les zones qui pouvaient être grisées en mode jour */
html[data-theme="light"] .section,
html[data-theme="light"] .section-soft,
html[data-theme="light"] .visual-map,
html[data-theme="light"] .manifesto,
html[data-theme="light"] .professional-profile,
html[data-theme="light"] .logo-showcase {
  background: transparent !important;
}

/* Les cartes principales restent lumineuses */
html[data-theme="light"] .topic,
html[data-theme="light"] .article-card,
html[data-theme="light"] .reg-card,
html[data-theme="light"] .education-card,
html[data-theme="light"] .map-node,
html[data-theme="light"] .profile-panel,
html[data-theme="light"] .visual-map-card,
html[data-theme="light"] .qualification-card,
html[data-theme="light"] .form-card,
html[data-theme="light"] .booking-preview,
html[data-theme="light"] .cta,
html[data-theme="light"] .compliance,
html[data-theme="light"] .badge,
html[data-theme="light"] .faq details,
html[data-theme="light"] .rdv-type,
html[data-theme="light"] .callout,
html[data-theme="light"] .notice {
  background: rgba(255,255,255,.52) !important;
  border-color: rgba(255,255,255,.88) !important;
}

/* Mais jamais sur les blocs volontairement bleu nuit */
html[data-theme="light"] .expertise-band *,
html[data-theme="light"] .contact-panel *,
html[data-theme="light"] .contact-intro *,
html[data-theme="light"] .tariff-card.featured *,
html[data-theme="light"] .booking-head * {
  text-shadow: none !important;
}
/* =========================================================
   MOBILE — LANGUES EN BOUTON FLOTTANT + LIQUID GLASS APPLE
   À coller tout en bas de styles.css
   ========================================================= */

/* Effet liquid glass général plus premium */
.header,
.lang-switch,
.theme-toggle,
.btn-secondary,
.portrait-card,
.topic,
.article-card,
.reg-card,
.education-card,
.map-node,
.profile-panel,
.visual-map-card,
.qualification-card,
.form-card,
.booking-preview,
.cta,
.compliance,
.badge,
.faq details,
.rdv-type,
.callout,
.notice {
  -webkit-backdrop-filter: blur(24px) saturate(165%) !important;
  backdrop-filter: blur(24px) saturate(165%) !important;
}

/* Brillance douce sur les cartes */
.topic,
.article-card,
.reg-card,
.education-card,
.map-node,
.profile-panel,
.visual-map-card,
.qualification-card,
.form-card,
.booking-preview,
.cta {
  position: relative;
  overflow: hidden;
}

.topic::before,
.article-card::before,
.reg-card::before,
.education-card::before,
.map-node::before,
.profile-panel::before,
.visual-map-card::before,
.qualification-card::before,
.form-card::before,
.booking-preview::before,
.cta::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background:
    linear-gradient(135deg, rgba(255,255,255,.42), transparent 38%),
    radial-gradient(circle at 18% 8%, rgba(255,255,255,.30), transparent 28%);
  opacity: .58;
  z-index: 0;
}

.topic > *,
.article-card > *,
.reg-card > *,
.education-card > *,
.map-node > *,
.profile-panel > *,
.visual-map-card > *,
.qualification-card > *,
.form-card > *,
.booking-preview > *,
.cta > * {
  position: relative;
  z-index: 1;
}

/* Version sombre du liquid glass */
html[data-theme="dark"] .topic::before,
html[data-theme="dark"] .article-card::before,
html[data-theme="dark"] .reg-card::before,
html[data-theme="dark"] .education-card::before,
html[data-theme="dark"] .map-node::before,
html[data-theme="dark"] .profile-panel::before,
html[data-theme="dark"] .visual-map-card::before,
html[data-theme="dark"] .qualification-card::before,
html[data-theme="dark"] .form-card::before,
html[data-theme="dark"] .booking-preview::before,
html[data-theme="dark"] .cta::before {
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), transparent 38%),
    radial-gradient(circle at 18% 8%, rgba(255,255,255,.08), transparent 28%);
  opacity: .70;
}

/* Mobile : on retire les drapeaux du header */
.mobile-lang-float {
  display: none;
}

@media (max-width: 700px) {
  .nav {
    position: relative;
  }

  .nav-group {
    gap: 8px;
  }

  /* Les drapeaux ne prennent plus la place des menus dans le header */
  .nav-group > .lang-switch {
    display: none !important;
  }

  /* Le bouton RDV mobile reste propre */
  .mobile-menu {
    display: inline-flex !important;
    min-height: 40px;
    padding: 0 15px;
    font-size: .78rem;
  }

  .theme-toggle {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px;
  }

  /* Bouton flottant langue façon liquid glass */
  .mobile-lang-float {
    position: fixed;
    right: 16px;
    bottom: 18px;
    z-index: 9999;
    display: block;
  }

  .mobile-lang-button {
    width: 54px;
    height: 54px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.60);
    background:
      linear-gradient(145deg, rgba(255,255,255,.66), rgba(255,255,255,.24));
    color: #142c52;
    display: grid;
    place-items: center;
    font-size: 1.25rem;
    box-shadow:
      0 18px 42px rgba(20,44,82,.18),
      inset 0 1px 0 rgba(255,255,255,.78);
    -webkit-backdrop-filter: blur(28px) saturate(180%);
    backdrop-filter: blur(28px) saturate(180%);
    cursor: pointer;
  }

  .mobile-lang-panel {
    position: absolute;
    right: 0;
    bottom: 64px;
    display: grid;
    gap: 8px;
    padding: 10px;
    border-radius: 22px;
    background:
      linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.30));
    border: 1px solid rgba(255,255,255,.62);
    box-shadow:
      0 22px 54px rgba(20,44,82,.18),
      inset 0 1px 0 rgba(255,255,255,.75);
    -webkit-backdrop-filter: blur(30px) saturate(180%);
    backdrop-filter: blur(30px) saturate(180%);
    opacity: 0;
    transform: translateY(10px) scale(.96);
    pointer-events: none;
    transition: opacity .22s ease, transform .22s ease;
  }

  .mobile-lang-float:hover .mobile-lang-panel,
  .mobile-lang-float:focus-within .mobile-lang-panel {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
  }

  .mobile-lang-panel a {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    font-size: 1.18rem;
    background: rgba(255,255,255,.42);
    border: 1px solid rgba(255,255,255,.54);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
    transition: transform .18s ease, background .18s ease;
  }

  .mobile-lang-panel a:hover,
  .mobile-lang-panel a.active {
    transform: scale(1.08);
    background: rgba(255,255,255,.86);
  }

  html[data-theme="dark"] .mobile-lang-button {
    background:
      linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.045));
    border-color: rgba(255,255,255,.16);
    color: #f4f5f6;
    box-shadow:
      0 18px 48px rgba(0,0,0,.42),
      inset 0 1px 0 rgba(255,255,255,.14);
  }

  html[data-theme="dark"] .mobile-lang-panel {
    background:
      linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.045));
    border-color: rgba(255,255,255,.14);
    box-shadow:
      0 22px 58px rgba(0,0,0,.46),
      inset 0 1px 0 rgba(255,255,255,.12);
  }

  html[data-theme="dark"] .mobile-lang-panel a {
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.13);
  }

  html[data-theme="dark"] .mobile-lang-panel a:hover,
  html[data-theme="dark"] .mobile-lang-panel a.active {
    background: rgba(255,255,255,.18);
  }
}