:root{--navy:#141a4a;--navy2:#0b1033;--gold:#c8912e;--gold2:#e9b95a;--ink:#1d2140;--mut:#5d6380;--bg:#f7f5f0;--card:#fff;--r:22px;--navh:72px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:var(--navh);-webkit-text-size-adjust:100%}
body{font-family:Sora,system-ui,sans-serif;color:var(--ink);background:var(--bg);overflow-x:hidden;line-height:1.6}
body.lock{overflow:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
.ar{font-family:Cairo,sans-serif;font-weight:700;color:var(--gold)}
.wrap{width:min(1180px,92%);margin:auto}
em{font-style:normal;background:linear-gradient(90deg,var(--gold),var(--gold2));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---- RTL / arabe ---- */
html[lang=ar] body{font-family:Cairo,Sora,system-ui,sans-serif}
html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] .track{letter-spacing:0!important}
html[lang=ar] .ar-deco{display:none}
html[lang=ar] .kicker{letter-spacing:0}

.topbar{background:var(--navy2);color:#cfd3ea;font-size:.8rem}
.topbar-in{display:flex;justify-content:space-between;padding:.45rem 0;gap:1rem}
.tb-right{display:flex;gap:1.4rem}
.topbar a:hover{color:var(--gold2)}
.tb-right{align-items:center}
.tb-social{display:flex;gap:.45rem}
.soc{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;transition:transform .25s,background .25s}
.soc:hover{transform:translateY(-2px)}
.topbar .soc.fb:hover{background:#1877f2;color:#fff}
.topbar .soc.ig:hover{background:radial-gradient(circle at 30% 110%,#fdf497 0,#fd5949 45%,#d6249f 60%,#285aeb 90%);color:#fff}

.nav{position:sticky;top:0;z-index:50;transition:background .3s,box-shadow .3s}
.nav.scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 30px rgba(20,26,74,.08)}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:var(--navh)}
.brand{display:flex;align-items:center;gap:.6rem;font-weight:800;font-size:1.25rem;color:var(--navy);direction:ltr;flex-shrink:0}
.brand img{width:46px;height:46px;border-radius:50%;object-fit:contain;background:#fff;padding:3px}
.brand b{color:var(--gold);font-weight:800}
.brand.light,.nav:not(.scrolled) .brand{color:#fff}
.menu{display:flex;align-items:center;gap:1.6rem;font-weight:600;font-size:.92rem;margin-inline-start:auto}
.nav:not(.scrolled) .menu a:not(.btn){color:#e6e8f5}
.menu a:not(.btn){position:relative;white-space:nowrap}
.menu a:not(.btn)::after{content:"";position:absolute;inset-inline-start:0;bottom:-4px;height:2px;width:0;background:var(--gold);transition:.3s}
.menu a:not(.btn):hover::after{width:100%}
.nav-tools{display:flex;align-items:center;gap:.5rem}

/* sélecteur de langue */
.lang{position:relative}
.lang-btn{display:flex;align-items:center;gap:.35rem;padding:.5rem .8rem;border-radius:999px;border:1.5px solid rgba(233,185,90,.5);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;font-size:.82rem;min-height:40px}
.nav.scrolled .lang-btn{color:var(--navy);background:#fff}
.lang-list{list-style:none;position:absolute;top:calc(100% + 8px);inset-inline-end:0;background:#fff;border-radius:14px;box-shadow:0 20px 50px rgba(11,16,51,.25);padding:.4rem;min-width:150px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s;z-index:80}
.lang.open .lang-list{opacity:1;visibility:visible;transform:none}
.lang-list button{width:100%;text-align:start;background:none;border:0;padding:.65rem .9rem;border-radius:10px;cursor:pointer;color:var(--ink);font-weight:600}
.lang-list button[data-lang=ar]{font-family:Cairo,sans-serif}
.lang-list button:hover{background:#f5ecd9}
.lang-list button.active{background:var(--navy);color:#fff}

.burger{display:none;background:none;border:0;cursor:pointer;width:44px;height:44px;padding:9px;position:relative;z-index:70}
.burger i{display:block;width:26px;height:2px;background:var(--gold);margin:6px 0;transition:.3s}
.burger.open i:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger.open i:nth-child(2){opacity:0}
.burger.open i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.backdrop{position:fixed;inset:0;background:rgba(11,16,51,.55);opacity:0;visibility:hidden;transition:.3s;z-index:49}
.backdrop.show{opacity:1;visibility:visible}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.6rem;border-radius:999px;font-weight:700;border:0;cursor:pointer;font-family:inherit;font-size:.95rem;transition:transform .25s,box-shadow .25s;min-height:48px;text-align:center}
.btn:hover{transform:translateY(-3px)}
.btn.sm{padding:.6rem 1.1rem;font-size:.85rem;min-height:40px}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy2);box-shadow:0 10px 30px rgba(200,145,46,.35)}
.btn-ghost{border:1.5px solid rgba(255,255,255,.35);color:#fff}
.btn-navy{background:var(--navy);color:#fff}
.full{width:100%}

/* ---- hero ---- */
.hero{position:relative;background:radial-gradient(1200px 600px at 80% 20%,#26307a 0,transparent 60%),linear-gradient(160deg,var(--navy) 0,var(--navy2) 100%);color:#fff;margin-top:calc(-1 * var(--navh));padding-top:var(--navh);overflow:hidden}
#particles{position:absolute;inset:0;width:100%;height:100%}
.hero-in{position:relative;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:3rem;min-height:82vh;padding:4rem 0 6rem}
.pill{display:inline-block;padding:.4rem 1rem;border:1px solid rgba(233,185,90,.4);border-radius:999px;color:var(--gold2);font-size:.82rem;background:rgba(233,185,90,.08)}
.hero h1{font-size:clamp(2.3rem,6vw,4.8rem);line-height:1.08;font-weight:800;margin:1.2rem 0 .6rem;letter-spacing:-.03em}
.hero .ar{font-size:1.5rem}
.lead{color:#c9cde6;max-width:520px;margin:.8rem 0 1.8rem}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap}
.hero-tags{display:flex;gap:.6rem;list-style:none;margin-top:2rem;flex-wrap:wrap}
.hero-tags li{font-size:.8rem;padding:.3rem .8rem;border-radius:8px;background:rgba(255,255,255,.07)}

.hero-visual{position:relative;display:grid;place-items:center;aspect-ratio:1;width:100%}
.atom{position:relative;width:min(440px,78%);aspect-ratio:1}
.orbit{position:absolute;inset:0;border:1.5px solid rgba(233,185,90,.45);border-radius:50%;animation:spin 12s linear infinite}
.orbit span{position:absolute;top:-7px;left:50%;width:14px;height:14px;border-radius:50%;background:var(--gold2);box-shadow:0 0 20px 4px var(--gold)}
.o2{animation-name:spin2;border-color:rgba(160,170,255,.4)}
.o3{animation-name:spin3;animation-duration:16s}
.o2 span{background:#9fa9ff;box-shadow:0 0 20px 4px #6f7cff}
@keyframes spin{from{transform:rotate(0) scaleY(.35)}to{transform:rotate(360deg) scaleY(.35)}}
@keyframes spin2{from{transform:rotate(60deg) scaleY(.35) rotate(0)}to{transform:rotate(60deg) scaleY(.35) rotate(360deg)}}
@keyframes spin3{from{transform:rotate(-60deg) scaleY(.35) rotate(0)}to{transform:rotate(-60deg) scaleY(.35) rotate(-360deg)}}
.nucleus{position:absolute;inset:30%;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 0 0 12px rgba(255,255,255,.06),0 0 80px rgba(233,185,90,.45);animation:pulse 4s ease-in-out infinite}
.nucleus{overflow:hidden}
.nucleus img{width:78%;height:78%;object-fit:contain;display:block;margin:auto}
@keyframes pulse{50%{transform:scale(1.05)}}
.float-card{position:absolute;white-space:nowrap;background:rgba(255,255,255,.1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);padding:.7rem 1rem;border-radius:14px;font-size:.85rem;animation:float 6s ease-in-out infinite}
.float-card b{color:var(--gold2)}
.fc1{top:8%;inset-inline-start:0}
.fc2{bottom:10%;inset-inline-end:0;animation-delay:-3s}
@keyframes float{50%{transform:translateY(-14px)}}

.marquee{position:relative;background:var(--gold);color:var(--navy2);overflow:hidden;padding:.9rem 0;transform:rotate(-1.5deg) scale(1.03);margin-bottom:-10px}
.track{display:flex;gap:2.5rem;width:max-content;animation:scroll 30s linear infinite;font-weight:800;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
html[lang=ar] .track{font-family:Cairo,sans-serif}
.track span::after{content:"✦";margin-left:2.5rem}
@keyframes scroll{to{transform:translateX(-50%)}}

/* ---- sections ---- */
.section{padding:7rem 0}
.head{text-align:center;max-width:720px;margin:0 auto 3.5rem}
.kicker{display:inline-block;color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;margin-bottom:.6rem}
h2{font-size:clamp(1.8rem,4vw,3rem);line-height:1.15;letter-spacing:-.02em;color:var(--navy)}
.dark h2{color:#fff}

.grid.services{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.card{background:var(--card);border-radius:var(--r);padding:2rem;position:relative;overflow:hidden;border:1px solid #ece8de;transition:box-shadow .3s,transform .2s}
.card::before{content:"";position:absolute;inset:auto -40% -60% auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(var(--gold2),transparent 70%);opacity:0;transition:.4s}
.card:hover{box-shadow:0 25px 60px rgba(20,26,74,.12)}
.card:hover::before{opacity:.25}
.card.big{grid-row:span 2;background:linear-gradient(160deg,var(--navy),var(--navy2));color:#dfe2f3;border:0}
.card.big h3{color:#fff;font-size:1.8rem}
.ico{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;font-size:1.7rem;background:#f5ecd9;margin-bottom:1.2rem}
.big .ico{background:rgba(233,185,90,.15)}
.card h3{color:var(--navy);font-size:1.25rem;line-height:1.3;margin-bottom:.5rem}
.card .ar{font-size:1rem;margin:-.2rem 0 .7rem}
.card p{font-size:.93rem}
.card:not(.big) p:not(.ar){color:var(--mut)}
.chips{display:flex;gap:.5rem;list-style:none;margin-top:1.5rem;flex-wrap:wrap}
.chips li{padding:.35rem .9rem;border-radius:999px;border:1px solid rgba(233,185,90,.5);color:var(--gold2);font-size:.82rem}
.flags{margin-top:1rem;font-size:1.3rem;letter-spacing:.2rem}

.dark{background:var(--navy2);color:#c9cde6;position:relative;overflow:hidden}
.dark::before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;border:1px solid rgba(233,185,90,.15);left:-200px;top:-200px;box-shadow:0 0 0 80px rgba(233,185,90,.03),0 0 0 160px rgba(233,185,90,.02)}
.why{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:center;position:relative}
.why-text p{margin:1.2rem 0 2rem}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.why-item{padding:1.8rem;border-radius:var(--r);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);transition:background .3s,border-color .3s}
.why-item:hover{background:rgba(233,185,90,.08);border-color:rgba(233,185,90,.35)}
.why-item span{font-size:2.2rem;font-weight:800;color:transparent;-webkit-text-stroke:1px var(--gold2);font-family:Sora,sans-serif}
.why-item h4{color:#fff;margin:.4rem 0}
.why-item p{font-size:.88rem}
@media (min-width:961px){.why-item:nth-child(even){margin-top:2rem;margin-bottom:-2rem}}

.gallery{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.gallery figure{position:relative;border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:0 20px 50px rgba(20,26,74,.1)}
.gallery .wide{grid-column:span 2}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gallery figure:hover img{transform:scale(1.04)}
.gallery figcaption{position:absolute;inset-inline-start:1rem;bottom:1rem;background:rgba(11,16,51,.85);color:#fff;padding:.5rem 1rem;border-radius:999px;font-size:.85rem;backdrop-filter:blur(6px)}

.cta{background:linear-gradient(120deg,var(--gold),var(--gold2));padding:3.5rem 0}
.cta-in{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.cta h2{color:var(--navy2)}
.cta .ar{color:var(--navy);font-size:1.2rem}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.contact>*{min-width:0}
.c-list{list-style:none;margin:2rem 0;display:grid;gap:1rem}
.c-list li{display:grid;grid-template-columns:120px 1fr;gap:.5rem;padding-bottom:1rem;border-bottom:1px dashed #ddd6c6;overflow-wrap:anywhere}
.c-list b{color:var(--gold);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}
html[lang=ar] .c-list b{letter-spacing:0;font-size:.95rem}
.c-list a:hover{color:var(--gold)}
.map{border-radius:var(--r);overflow:hidden;height:260px;border:1px solid #ece8de}
.map iframe{width:100%;height:100%;border:0}
.form{background:#fff;border-radius:var(--r);padding:2.2rem;box-shadow:0 30px 70px rgba(20,26,74,.1);display:grid;gap:1rem;position:sticky;top:calc(var(--navh) + 20px)}
.form h3{color:var(--navy);font-size:1.4rem}
.form label{display:grid;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--mut)}
.form input,.form select,.form textarea{font:inherit;font-size:16px;width:100%;padding:.8rem 1rem;border-radius:12px;border:1.5px solid #e6e1d4;background:#fbfaf7;color:var(--ink);transition:.2s;min-height:48px}
.form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--gold);background:#fff}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form .row>*{min-width:0}
.form small{color:var(--mut);text-align:center}

.footer{background:var(--navy2);color:#aab0d0;padding:4rem 0 1.5rem}
.foot-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}
.footer p{margin-top:1rem;font-size:.9rem}
.footer h5{color:#fff;font-size:1rem;margin-bottom:.8rem}
.footer a:not(.brand){display:block;padding:.3rem 0;font-size:.9rem}
.footer a:hover{color:var(--gold2)}
.copy{text-align:center;border-top:1px solid rgba(255,255,255,.08);margin-top:3rem;padding-top:1.5rem;font-size:.8rem}

.wa{position:fixed;inset-inline-end:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:60px;height:60px;border-radius:50%;background:#25d366;display:grid;place-items:center;z-index:45;box-shadow:0 10px 30px rgba(37,211,102,.45);animation:float 4s ease-in-out infinite}

.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}

/* ---- tablette ---- */
@media (max-width:1100px){
  .menu{gap:1.1rem;font-size:.86rem}
  .menu .btn{display:none}
}
@media (max-width:960px){
  .hero-in,.why,.contact{grid-template-columns:1fr}
  .hero-in{min-height:auto;padding:3rem 0 5rem;gap:2rem;text-align:center}
  .hero-cta,.hero-tags{justify-content:center}
  .lead{margin-inline:auto}
  .hero-visual{max-width:420px;margin:auto}
  .grid.services{grid-template-columns:1fr 1fr}
  .card.big{grid-row:auto;grid-column:span 2}
  .why{gap:2.5rem}
  .form{position:static}
  .burger{display:block}
  .menu{position:fixed;top:0;bottom:0;inset-inline-end:0;width:min(320px,82%);flex-direction:column;align-items:stretch;gap:0;background:var(--navy2);padding:calc(var(--navh) + 1.5rem) 1.5rem 2rem;transform:translateX(100%);visibility:hidden;transition:transform .35s ease,visibility .35s;z-index:60;overflow-y:auto;font-size:1.05rem}
  html[dir=rtl] .menu{transform:translateX(-100%)}
  .menu.open,html[dir=rtl] .menu.open{transform:none;visibility:visible}
  html,body{overflow-x:clip}
  /* backdrop-filter crée un bloc conteneur qui piège le menu fixed */
  .nav.scrolled{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(255,255,255,.97)}
  .menu a:not(.btn){color:#fff!important;padding:1rem .25rem;border-bottom:1px solid rgba(255,255,255,.08)}
  .menu a:not(.btn)::after{display:none}
  .menu .btn{display:flex;margin-top:1.5rem}
  .nav:has(.menu.open) .brand{color:#fff}
}

/* ---- téléphone ---- */
@media (max-width:620px){
  :root{--navh:64px;--r:18px}
  .wrap{width:90%}
  .topbar-in{justify-content:center}
  .tb-loc,.tb-mail{display:none}
  .brand{font-size:1.05rem;gap:.45rem}
  .brand img{width:40px;height:40px}
  .lang-btn{padding:.45rem .65rem}
  .lang-btn span{display:none}

  .hero-in{padding:2.2rem 0 4.5rem}
  .hero h1{font-size:clamp(2.1rem,10vw,2.8rem)}
  .hero .ar{font-size:1.25rem}
  .lead{font-size:.95rem}
  .hero-cta{flex-direction:column}
  .hero-cta .btn{width:100%}
  .hero-tags{margin-top:1.4rem}
  .hero-visual{max-width:320px}
  .atom{width:74%}
  .float-card{font-size:.72rem;padding:.45rem .7rem;border-radius:10px}
  .fc1{top:2%}
  .fc2{bottom:4%}
  .marquee{padding:.65rem 0}
  .track{font-size:.8rem;gap:1.6rem}
  .track span::after{margin-left:1.6rem}

  .section{padding:4.5rem 0}
  .head{margin-bottom:2.2rem}
  .grid.services,.gallery,.why-grid,.form .row{grid-template-columns:1fr}
  .card.big,.gallery .wide{grid-column:auto}
  .card{padding:1.5rem}
  .card.big h3{font-size:1.5rem}
  .ico{width:50px;height:50px;font-size:1.5rem;margin-bottom:1rem}
  .why-item{padding:1.4rem}
  .gallery figcaption{font-size:.78rem;inset-inline-start:.7rem;bottom:.7rem}

  .cta{padding:2.8rem 0;text-align:center}
  .cta-in{flex-direction:column}
  .cta .btn{width:100%}

  .c-list{margin:1.5rem 0}
  .c-list li{grid-template-columns:1fr;gap:.15rem}
  .map{height:220px}
  .form{padding:1.4rem}

  .foot-in{grid-template-columns:1fr 1fr}
  .foot-in>div:first-child{grid-column:1/-1}
  .wa{width:54px;height:54px}
}
@media (max-width:360px){
  .brand span{display:none}
}
/* ---- extras créatifs ---- */
.progress{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold2),#9fa9ff);transform-origin:0 50%;transform:scaleX(0);z-index:100}
html[dir=rtl] .progress{transform-origin:100% 50%}
.flags{display:flex;gap:.45rem;flex-wrap:wrap;letter-spacing:0}
.flags .fi{width:1.6rem;height:1.2rem;border-radius:4px;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.lang-list .fi{width:1.3rem;height:.95rem;border-radius:3px;margin-inline-end:.6rem;vertical-align:-2px}
.sub{color:var(--mut);margin-top:.8rem}

.langs{position:relative;overflow:hidden;background:
  radial-gradient(circle at 1px 1px,rgba(20,26,74,.09) 1px,transparent 0) 0 0/22px 22px,
  linear-gradient(180deg,var(--bg),#efe9dc)}
.langs::before,.langs::after{content:"";position:absolute;border-radius:50%;filter:blur(70px);opacity:.35;pointer-events:none}
.langs::before{width:380px;height:380px;background:var(--gold2);top:-120px;inset-inline-start:-120px}
.langs::after{width:420px;height:420px;background:#8f9bff;bottom:-160px;inset-inline-end:-140px}
.lang-grid{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:1.3rem}
.lang-card{position:relative;flex:0 1 200px;background:rgba(255,255,255,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.9);border-radius:26px;padding:2.2rem 1rem 1.4rem;text-align:center;box-shadow:0 15px 40px rgba(20,26,74,.08);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s;animation:bob 6s ease-in-out infinite;animation-delay:calc(var(--i) * -.8s)}
.lang-card:hover{transform:translateY(-10px) rotate(-1.5deg);box-shadow:0 30px 60px rgba(20,26,74,.18);animation-play-state:paused}
@keyframes bob{50%{translate:0 -8px}}
.flag-orb{position:relative;width:92px;height:92px;margin:0 auto 1rem;border-radius:50%;padding:5px;background:conic-gradient(from calc(var(--i) * 50deg),var(--gold),var(--gold2),#9fa9ff,var(--gold));animation:spinOrb 8s linear infinite}
.flag-orb .fi{display:block;width:100%;height:100%;border-radius:50%;background-size:cover;border:3px solid #fff;animation:spinOrb 8s linear infinite reverse}
@keyframes spinOrb{to{transform:rotate(360deg)}}
.lang-card h3{color:var(--navy);font-size:1.1rem}
.lang-card p{color:var(--gold);font-weight:600;font-size:.85rem}
.hi{position:absolute;top:-14px;left:50%;translate:-50% 0;background:var(--navy);color:#fff;font-weight:700;font-size:.8rem;padding:.3rem .8rem;border-radius:999px;white-space:nowrap;opacity:0;scale:.6;transition:.35s cubic-bezier(.3,1.6,.5,1)}
.hi::after{content:"";position:absolute;left:50%;bottom:-5px;translate:-50% 0;border:6px solid transparent;border-bottom:0;border-top-color:var(--navy)}
.lang-card:hover .hi{opacity:1;scale:1}
@media (hover:none){.hi{opacity:1;scale:1}}
@media (max-width:620px){
  .lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem 1rem}
  .lang-card{padding:2rem .7rem 1.1rem}
  .lang-card:last-child{grid-column:1/-1;max-width:50%;justify-self:center;width:100%}
  .flag-orb{width:74px;height:74px}
}

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