/* ============================================================
   PLATINIUM LTD — Édition "Paper" (style éditorial clair)
   Fond ivoire grainé · grotesque black · halftone
   ============================================================ */

:root{
  --paper:#f2f0ea;
  --paper-2:#eae7df;
  --card:#f7f5f0;
  --ink:#0b0b0c;
  --ink-soft:#34343a;
  --muted:#7d7c77;
  --faint:#a8a6a0;
  --line:rgba(11,11,12,0.13);
  --line-strong:rgba(11,11,12,0.28);
  --accent:#0b0b0c;

  --display:'Archivo',sans-serif;
  --body:'Inter',sans-serif;

  --t-hero:clamp(3rem,1.6rem + 7vw,7rem);
  --t-h2:clamp(2.2rem,1.4rem + 3.4vw,4rem);
  --t-h3:clamp(1.2rem,1rem + 0.9vw,1.6rem);
  --t-lead:clamp(1.05rem,0.98rem + 0.4vw,1.3rem);
  --t-body:clamp(0.98rem,0.94rem + 0.2vw,1.08rem);
  --t-sm:0.9rem;
  --t-xs:0.76rem;

  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s6:24px;--s8:32px;
  --s12:48px;--s16:64px;--s20:80px;--s24:96px;--s32:128px;--s40:160px;

  --ease:cubic-bezier(0.16,1,0.3,1);
  --ease-soft:cubic-bezier(0.4,0,0.2,1);
  color-scheme:light;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--paper);color:var(--ink);
  font-family:var(--body);font-size:var(--t-body);line-height:1.7;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
::selection{background:var(--ink);color:var(--paper)}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
:focus:not(:focus-visible){outline:none}

/* Grain + halftone de fond */
.grain{
  position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0.5;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");
}
.halftone{
  position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0.55;
  background-image:radial-gradient(circle at center,rgba(11,11,12,0.5) 0.6px,transparent 1.4px);
  background-size:5px 5px;
  -webkit-mask-image:radial-gradient(130% 90% at 50% 8%,rgba(0,0,0,0.5),transparent 60%);
  mask-image:radial-gradient(130% 90% at 50% 8%,rgba(0,0,0,0.5),transparent 60%);
}

.wrap{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding-inline:var(--s6)}
@media(min-width:768px){.wrap{padding-inline:var(--s8)}}

/* ---------- HEADER ---------- */
.topbar{position:fixed;top:0;left:0;right:0;z-index:50;transition:background 0.4s var(--ease),border-color 0.4s var(--ease);border-bottom:1px solid transparent}
.topbar.scrolled{background:color-mix(in srgb,var(--paper) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--line)}
.topbar-inner{max-width:1180px;margin:0 auto;padding:var(--s4) var(--s6);display:flex;align-items:center;justify-content:space-between;gap:var(--s6)}
@media(min-width:768px){.topbar-inner{padding-inline:var(--s8)}}
.brand-full{font-family:var(--display);font-weight:800;font-size:1.15rem;letter-spacing:-0.02em;color:var(--ink);display:inline-flex;align-items:baseline;gap:0.4em}
.brand-full .ltd{font-family:var(--body);font-size:0.6rem;font-weight:600;letter-spacing:0.26em;text-transform:uppercase;color:var(--muted);transform:translateY(-0.18em)}
.brand-full .reg{font-size:0.7em;vertical-align:super;color:var(--muted)}
.topnav{display:flex;align-items:center;gap:var(--s6)}
.topnav .nav-link{font-family:var(--body);font-size:var(--t-sm);font-weight:500;color:var(--ink-soft);position:relative;padding:var(--s2) 0;transition:color 0.25s var(--ease)}
.topnav .nav-link::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1.5px;background:var(--ink);transition:width 0.35s var(--ease)}
.topnav .nav-link:hover{color:var(--ink)}.topnav .nav-link:hover::after,.topnav .nav-link[aria-current="page"]::after{width:100%}
.topnav .nav-link[aria-current="page"]{color:var(--ink)}
@media(max-width:820px){.topnav .nav-link{display:none}}
.lang{display:flex;align-items:center;gap:var(--s2);font-family:var(--body);font-size:var(--t-xs);font-weight:600;letter-spacing:0.08em}
.lang button{display:inline-flex;align-items:center;justify-content:center;color:var(--faint);padding:6px 8px;min-width:38px;min-height:36px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.02);transition:color 0.25s var(--ease),border-color 0.25s var(--ease),background 0.25s var(--ease)}
.lang button:hover{color:var(--ink-soft);border-color:var(--line-strong)}.lang button.active{color:var(--ink);border-color:var(--line-strong);background:rgba(255,255,255,.05)}
.lang .flag,.mobile-nav .mn-lang .flag{display:inline-block;width:18px;height:12px;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.lang .flag-fr,.mobile-nav .mn-lang .flag-fr{background:linear-gradient(90deg,#1f4aa8 0 33.33%,#f4f1e8 33.33% 66.66%,#d64045 66.66% 100%)}
.lang .flag-gb,.mobile-nav .mn-lang .flag-gb{
  background-color:#012169;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3Crect width='60' height='30' fill='%23012169'/%3E%3Cpath d='M0 0 L60 30 M60 0 L0 30' stroke='%23fff' stroke-width='6'/%3E%3Cpath d='M0 0 L60 30 M60 0 L0 30' stroke='%23C8102E' stroke-width='3'/%3E%3Cpath d='M30 0 V30 M0 15 H60' stroke='%23fff' stroke-width='10'/%3E%3Cpath d='M30 0 V30 M0 15 H60' stroke='%23C8102E' stroke-width='6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}
.lang .flag{line-height:1}
.lang .sep{display:none}

/* ---------- TYPO ---------- */
h1,h2,h3{font-family:var(--display);letter-spacing:-0.03em;line-height:0.98;font-weight:800}
h1{font-size:var(--t-hero)}
h2{font-size:var(--t-h2)}
h3{font-size:var(--t-h3);letter-spacing:-0.02em;font-weight:700}
.eyebrow{font-family:var(--body);font-size:var(--t-xs);font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:var(--s3)}
.eyebrow::before{content:'';width:30px;height:1.5px;background:var(--line-strong)}
.lead{font-size:var(--t-lead);color:var(--ink-soft);line-height:1.55;max-width:54ch}
.muted{color:var(--muted)}.dim{color:var(--faint)}
.num{font-variant-numeric:tabular-nums;letter-spacing:-0.01em}

/* ---------- BOUTONS (pill) ---------- */
.btn{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--body);font-size:var(--t-sm);font-weight:600;min-height:54px;padding:0 var(--s8);border-radius:100px;transition:all 0.3s var(--ease);position:relative;overflow:hidden}
.btn .arr{transition:transform 0.3s var(--ease)}
.btn:hover .arr{transform:translate(3px,-3px)}
.btn-primary{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(11,11,12,0.22)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}
.btn-ghost:hover{border-color:var(--ink);background:rgba(11,11,12,0.04)}
.link-arrow{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--body);font-size:var(--t-sm);font-weight:600;color:var(--ink);border-bottom:1.5px solid var(--line-strong);padding-bottom:3px;transition:border-color 0.3s var(--ease),gap 0.3s var(--ease)}
.link-arrow:hover{border-color:var(--ink);gap:var(--s3)}

/* ---------- SECTIONS ---------- */
main{position:relative;z-index:1}
section{padding-block:var(--s24)}
@media(min-width:900px){section{padding-block:var(--s32)}}
.sec-head{margin-bottom:var(--s16);max-width:720px}
.sec-head .eyebrow{margin-bottom:var(--s6)}
.sec-head h2{margin-bottom:var(--s6)}
.sec-head p{color:var(--ink-soft);font-size:var(--t-lead)}
.sec-index{font-family:var(--display);font-weight:700;font-size:var(--t-sm);color:var(--faint);margin-bottom:var(--s4)}

/* ---------- REVEALS ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
.stagger>*{opacity:0;transform:translateY(24px);transition:opacity 0.9s var(--ease),transform 0.9s var(--ease)}
.stagger.in>*{opacity:1;transform:none}
.stagger.in>*:nth-child(1){transition-delay:0ms}.stagger.in>*:nth-child(2){transition-delay:110ms}
.stagger.in>*:nth-child(3){transition-delay:220ms}.stagger.in>*:nth-child(4){transition-delay:330ms}
.hero-seq{opacity:0;transform:translateY(26px)}
body.loaded .hero-seq{opacity:1;transform:none;transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
body.loaded .hero-seq[data-seq="1"]{transition-delay:0.1s}body.loaded .hero-seq[data-seq="2"]{transition-delay:0.24s}
body.loaded .hero-seq[data-seq="3"]{transition-delay:0.42s}body.loaded .hero-seq[data-seq="4"]{transition-delay:0.58s}
body.loaded .hero-seq[data-seq="5"]{transition-delay:0.74s}

/* ---------- HERO centré ---------- */
.hero-center{min-height:100dvh;display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:150px;position:relative;justify-content:center}
.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero-bg .hands{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(1500px,135%);max-width:none;aspect-ratio:1200/257;background-size:cover;background-repeat:no-repeat;background-position:center 35%;mix-blend-mode:multiply;opacity:0.95;-webkit-mask-image:radial-gradient(120% 115% at 50% 78%,#000 38%,transparent 76%);mask-image:radial-gradient(120% 115% at 50% 78%,#000 38%,transparent 76%)}
.hero-center .hero-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.hero-center .eyebrow{margin-bottom:var(--s8);justify-content:center}
.hero-center h1{max-width:15ch;margin-bottom:var(--s6);text-transform:none}
.hero-center .lead{margin:0 auto var(--s8);text-align:center;max-width:42ch;color:var(--ink-soft)}
.hero-center .hero-actions{display:flex;gap:var(--s4);justify-content:center;flex-wrap:wrap}

/* Tablette */
@media(max-width:820px){
  .hero-center{padding-top:130px}
  .hero-bg .hands{width:min(1100px,170%);background-position:center 40%}
}
/* Mobile */
@media(max-width:560px){
  .hero-center{min-height:92dvh;padding-top:120px;justify-content:flex-start}
  .hero-center .hero-inner{margin-top:var(--s8)}
  .hero-center h1{max-width:12ch}
  .hero-center .lead{max-width:34ch}
  .hero-center .hero-actions{flex-direction:column;width:100%;max-width:300px}
  .hero-center .hero-actions .btn{width:100%}
  .hero-bg .hands{width:230%;background-position:center 45%;opacity:0.85;-webkit-mask-image:radial-gradient(150% 100% at 50% 82%,#000 30%,transparent 72%);mask-image:radial-gradient(150% 100% at 50% 82%,#000 30%,transparent 72%)}
}

/* ---------- TRUST STRIP ---------- */
.trust{text-align:center;padding-block:var(--s16)}
.trust .tl{font-size:var(--t-xs);font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s8)}
.trust-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--s8) var(--s16)}
.trust-row span{font-family:var(--display);font-weight:700;font-size:1rem;color:var(--ink-soft);letter-spacing:-0.01em;opacity:0.75}

/* ---------- ABOUT ---------- */
.about-grid{display:grid;gap:var(--s16);grid-template-columns:1fr}
@media(min-width:900px){.about-grid{grid-template-columns:1.25fr 1fr}}
.about-lede{font-family:var(--display);font-weight:700;font-size:var(--t-h3);line-height:1.3;color:var(--ink);margin-bottom:var(--s8);letter-spacing:-0.02em}
.about-text p{color:var(--ink-soft);margin-bottom:var(--s6)}
.about-text p:last-child{margin-bottom:0}
.about-text strong{color:var(--ink);font-weight:600}
.principles{display:flex;flex-direction:column;gap:var(--s6)}
.principle{padding-bottom:var(--s6);border-bottom:1px solid var(--line)}
.principle:last-child{border-bottom:none;padding-bottom:0}
.principle .pn{font-family:var(--display);font-weight:700;font-size:0.9rem;color:var(--faint);margin-bottom:var(--s2)}
.principle h3{font-size:1.2rem;margin-bottom:var(--s2)}
.principle p{color:var(--ink-soft);font-size:var(--t-sm)}

/* ---------- PORTFOLIO ---------- */
.portfolio{display:flex;flex-direction:column;gap:var(--s6)}
.product{display:grid;grid-template-columns:1fr;gap:var(--s8);padding:var(--s12);border:1px solid var(--line);border-radius:6px;background:var(--card);transition:border-color 0.4s var(--ease),transform 0.4s var(--ease),box-shadow 0.4s var(--ease)}
.product:hover{border-color:var(--line-strong);transform:translateY(-3px);box-shadow:0 18px 50px rgba(11,11,12,0.08)}
@media(min-width:820px){.product{grid-template-columns:1.4fr 1fr;gap:var(--s16);align-items:center}}
.product-main h3{font-size:clamp(1.8rem,1.4rem + 2vw,2.8rem);margin-block:var(--s4);font-weight:800}
.product-main h3 .dim{color:var(--faint)}
.product-tag{font-family:var(--body);font-size:var(--t-xs);font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted)}
.product-main p{color:var(--ink-soft);margin-bottom:var(--s8);max-width:48ch}
.product-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--s8) var(--s6);padding:var(--s8) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:var(--s8)}
.pstat .pv{font-family:var(--display);font-weight:800;font-size:clamp(1.7rem,1.3rem + 1.6vw,2.4rem);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.pstat .pv .u{font-size:0.5em;color:var(--muted)}
.pstat .pk{font-size:var(--t-xs);font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-top:var(--s2)}
.product-aside{display:flex;flex-direction:column;gap:var(--s6)}
.product-cert{border:1px solid var(--line);border-radius:5px;padding:var(--s6);background:var(--paper)}
.product-cert .cl{font-size:var(--t-xs);font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s3)}
.product-cert__logo{display:block;max-width:112px;width:100%;height:auto;object-fit:contain;margin:0 0 var(--s4)}
.product-cert .cv{font-family:var(--display);font-weight:700;font-size:1.05rem;color:var(--ink);line-height:1.35}
.product-next{display:flex;align-items:center;justify-content:space-between;gap:var(--s8);flex-wrap:wrap;padding:var(--s12);border:1px dashed var(--line-strong);border-radius:6px;background:var(--card);transition:border-color 0.4s var(--ease)}
.product-next:hover{border-color:var(--ink-soft)}
.product-next .pn-left{display:flex;align-items:baseline;gap:var(--s6);flex-wrap:wrap}
.product-next .pn-num{font-family:var(--display);font-weight:700;font-size:2rem;color:var(--faint)}
.product-next h3{font-size:1.5rem;color:var(--ink-soft)}
.product-next p{color:var(--muted);font-size:var(--t-sm);max-width:40ch}
.status{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--body);font-size:var(--t-xs);font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-soft)}
.status .dot{width:7px;height:7px;border-radius:50%;background:#3fa66a;box-shadow:0 0 0 0 rgba(63,166,106,0.5);animation:breathe 2.4s var(--ease-soft) infinite}
@keyframes breathe{0%,100%{box-shadow:0 0 0 0 rgba(63,166,106,0.45)}50%{box-shadow:0 0 0 6px transparent}}

/* ---------- APPROACH ---------- */
.approach-grid{display:grid;gap:var(--s12);grid-template-columns:1fr}
@media(min-width:760px){.approach-grid{grid-template-columns:repeat(3,1fr)}}
.approach-item{border-top:2px solid var(--ink);padding-top:var(--s6)}
.approach-item .ai{font-family:var(--display);font-weight:800;font-size:1.6rem;color:var(--ink);margin-bottom:var(--s4)}
.approach-item h3{margin-bottom:var(--s3)}
.approach-item p{color:var(--ink-soft);font-size:var(--t-sm)}

/* ---------- CTA ---------- */
.cta{text-align:center;padding-block:var(--s32)}
.cta h2{margin-bottom:var(--s6)}
.cta p{color:var(--ink-soft);font-size:var(--t-lead);max-width:42ch;margin:0 auto var(--s10,40px)}

/* ---------- TABLE LÉGALE ---------- */
.legal-table{border:1px solid var(--line);border-radius:5px;background:var(--card);overflow:hidden}
.legal-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s6);padding:var(--s4) var(--s6);border-bottom:1px solid var(--line);font-size:var(--t-sm)}
.legal-row:last-child{border-bottom:none}.legal-row .lk{color:var(--muted);flex-shrink:0;padding-top:2px}.legal-row .lv{text-align:right;color:var(--ink);font-weight:500}

/* ---------- FORM ---------- */
.field{display:flex;flex-direction:column;gap:var(--s2);margin-bottom:var(--s6)}
.field label{font-family:var(--body);font-size:var(--t-xs);font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted)}
.field input,.field textarea,.field select{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line-strong);border-radius:4px;padding:14px var(--s4);min-height:52px;transition:border-color 0.25s var(--ease),box-shadow 0.25s var(--ease)}
.field textarea{min-height:144px;resize:vertical;line-height:1.6}
.field input::placeholder,.field textarea::placeholder{color:var(--faint)}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(11,11,12,0.08)}
.field .hint{font-size:var(--t-xs);color:var(--muted)}
.field.error input,.field.error textarea{border-color:#c0392b}
.field .error-msg{font-size:var(--t-xs);color:#c0392b;display:none}.field.error .error-msg{display:block}
.form-status{font-size:var(--t-sm);padding:var(--s4) var(--s6);border:1px solid var(--line-strong);border-radius:4px;display:none;margin-top:var(--s4)}
.form-status.show{display:block}.form-status.success{color:#2f7d4f;border-color:rgba(47,125,79,0.4)}

/* ---------- FOOTER ---------- */
footer{border-top:1px solid var(--line);margin-top:var(--s20);position:relative;z-index:1;background:var(--paper-2)}
.foot-main{max-width:1180px;margin:0 auto;padding:var(--s20) var(--s6) var(--s12);display:grid;gap:var(--s12);grid-template-columns:1fr}
@media(min-width:760px){.foot-main{grid-template-columns:1.5fr 1fr 1fr 1.2fr;padding-inline:var(--s8)}}
.foot-brand .brand-full{margin-bottom:var(--s4)}
.foot-brand p{color:var(--muted);font-size:var(--t-sm);max-width:32ch}
.foot-col h4{font-family:var(--body);font-size:var(--t-xs);font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s6)}
.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:var(--s3)}
.foot-col a{color:var(--ink-soft);font-size:var(--t-sm);transition:color 0.25s var(--ease)}.foot-col a:hover{color:var(--ink)}
.foot-col .static{color:var(--ink-soft);font-size:var(--t-sm)}
.foot-legal{border-top:1px solid var(--line)}
.foot-legal-inner{max-width:1180px;margin:0 auto;padding:var(--s6);display:flex;flex-wrap:wrap;gap:var(--s3) var(--s8);justify-content:space-between;align-items:center;font-size:var(--t-xs);color:var(--muted)}
@media(min-width:760px){.foot-legal-inner{padding-inline:var(--s8)}}
.foot-legal-inner a{color:var(--muted)}.foot-legal-inner a:hover{color:var(--ink)}

/* ---------- LANGUE ---------- */
[data-en]{display:none}
body.lang-en [data-fr]{display:none}
body.lang-en [data-en]{display:revert}

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

/* ============================================================
   BURGER MENU MOBILE
   ============================================================ */
.burger{display:none;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px;z-index:60;position:relative}
.burger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform 0.35s var(--ease),opacity 0.25s var(--ease)}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-nav{
  position:fixed;inset:0;z-index:55;
  background:var(--paper);
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  gap:var(--s2);padding:var(--s16) var(--s8);
  transform:translateX(100%);transition:transform 0.45s var(--ease);
  visibility:hidden;
}
.mobile-nav.open{transform:translateX(0);visibility:visible}
.mobile-nav a{
  font-family:var(--display);font-weight:800;font-size:clamp(2rem,1.4rem + 5vw,3rem);
  color:var(--ink);letter-spacing:-0.03em;padding:var(--s2) 0;
  opacity:0;transform:translateY(20px);transition:opacity 0.5s var(--ease),transform 0.5s var(--ease);
}
.mobile-nav.open a{opacity:1;transform:none}
.mobile-nav.open a:nth-child(1){transition-delay:0.1s}
.mobile-nav.open a:nth-child(2){transition-delay:0.16s}
.mobile-nav.open a:nth-child(3){transition-delay:0.22s}
.mobile-nav.open a:nth-child(4){transition-delay:0.28s}
.mobile-nav .mn-foot{margin-top:var(--s12);font-family:var(--body);font-size:var(--t-sm);color:var(--muted);opacity:0;transition:opacity 0.5s var(--ease) 0.36s}
.mobile-nav.open .mn-foot{opacity:1}
.mobile-nav .mn-lang{display:flex;gap:var(--s3);margin-top:var(--s4);font-family:var(--body);font-weight:600;font-size:0.9rem}
.mobile-nav .mn-lang button{display:inline-flex;align-items:center;justify-content:center;color:var(--faint);padding:8px 12px;min-width:54px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.02)}
.mobile-nav .mn-lang button.active{color:var(--ink);border-color:var(--line-strong);background:rgba(255,255,255,.05)}

@media(max-width:820px){
  .burger{display:flex}
  body.menu-open{overflow:hidden}
}

/* ============================================================
   BURGER MENU (mobile)
   ============================================================ */
.burger{display:none;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;z-index:60}
.burger span{display:block;width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform 0.35s var(--ease),opacity 0.25s var(--ease)}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-nav{
  position:fixed;inset:0;z-index:55;
  background:var(--paper);
  display:flex;flex-direction:column;justify-content:center;
  padding:var(--s12) var(--s8);
  transform:translateY(-100%);
  transition:transform 0.45s var(--ease);
  visibility:hidden;
}
.mobile-nav.open{transform:translateY(0);visibility:visible}
.mobile-nav a{
  font-family:var(--display);font-weight:800;font-size:clamp(2rem,1.4rem + 4vw,3rem);
  letter-spacing:-0.03em;color:var(--ink);padding:var(--s3) 0;
  border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;
  opacity:0;transform:translateY(16px);
}
.mobile-nav.open a{opacity:1;transform:none;transition:opacity 0.5s var(--ease),transform 0.5s var(--ease)}
.mobile-nav.open a:nth-child(1){transition-delay:0.08s}
.mobile-nav.open a:nth-child(2){transition-delay:0.14s}
.mobile-nav.open a:nth-child(3){transition-delay:0.20s}
.mobile-nav.open a:nth-child(4){transition-delay:0.26s}
.mobile-nav a .ar{font-family:var(--body);font-size:1rem;color:var(--muted)}
.mobile-nav .mn-foot{margin-top:var(--s12);padding-top:var(--s6);border-top:1px solid var(--line);opacity:0;transition:opacity 0.5s var(--ease) 0.3s}
.mobile-nav.open .mn-foot{opacity:1}
.mobile-nav .mn-lang{display:flex;gap:var(--s4);font-family:var(--body);font-weight:600;letter-spacing:0.08em}
.mobile-nav .mn-lang button{font-size:1rem;color:var(--faint);padding:var(--s2) var(--s3)}
.mobile-nav .mn-lang button.active{color:var(--ink)}
.mobile-nav .mn-lang .flag{line-height:1}
body.menu-open{overflow:hidden}

@media(max-width:820px){
  .burger{display:flex;margin-left:auto}
  .topbar .lang{display:none}
  .topnav{gap:0}
}
