
:root{
  --noir:#020203; --noir-2:#0F0E0C; --noir-3:#1C1A16; --noir-4:#2A2721;
  --or-s:#AD8137; --or:#C9A154; --or-c:#EBC77A; --or-grad:linear-gradient(135deg,#AD8137 0%,#C9A154 45%,#EBC77A 100%);
  --blanc:#F5F4F4; --gris:#B8B3A9; --gris-2:#7F7A70;
  --clair:#F5F4F4; --clair-2:#ECEAE6; --clair-line:#D6D2CA; --encre:#0F0E0C; --encre-2:#4A4740; --or-clair-txt:#8F6A2A;
  --wa:#25D366;
  --font-d:"Bricolage Grotesque","Source Sans 3",Arial,sans-serif;
  --font-l:"Montserrat","Source Sans 3",Arial,sans-serif;
  --font-b:"Source Sans 3","Segoe UI",Helvetica,Arial,sans-serif;
  --gutter:clamp(16px,5vw,72px);
  color-scheme: dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--noir);color:var(--blanc);font-family:var(--font-b);font-size:17px;line-height:1.55;padding-inline:0;padding-block:0;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font-d);margin:0;line-height:1.05;text-wrap:balance;letter-spacing:-.02em}
h1{font-size:clamp(38px,6.4vw,84px);font-weight:700}
h2{font-size:clamp(30px,4.4vw,56px);font-weight:700}
h3{font-size:clamp(20px,2vw,26px);font-weight:600;letter-spacing:-.01em}
p{margin:0}
.lbl{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.2em;font-size:11.5px;font-weight:600;color:var(--or)}
.wrap{max-width:1320px;margin:0 auto;padding-inline:var(--gutter)}
section{padding-block:clamp(72px,9vw,128px)}
.light{background:var(--clair);color:var(--encre)}
.light .lbl{color:var(--or-clair-txt)}
.sub{color:var(--gris);font-size:clamp(17px,1.4vw,20px);max-width:58ch}
.light .sub{color:var(--encre-2)}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-l);font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:0 26px;height:52px;border-radius:2px;text-decoration:none;border:1px solid transparent;transition:transform .25s,background .25s,color .25s,border-color .25s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--or-c);outline-offset:3px}
.btn-or{background:var(--or-grad);color:var(--noir)}
.btn-line{border-color:var(--or);color:var(--or)}
.btn-line:hover{background:rgba(201,161,84,.1)}
.btn-ghost{border-color:var(--noir-4);color:var(--blanc)}
.light .btn-ghost{border-color:var(--clair-line);color:var(--encre)}
.light .btn-line{border-color:var(--or-s);color:var(--or-clair-txt)}
.btn-wa{border-color:var(--wa);color:var(--wa)}
.btn .ar{transition:transform .25s}.btn:hover .ar{transform:translateX(4px)}
/* pixel motif */
.px{display:inline-grid;grid-template-columns:repeat(4,5px);gap:3px;vertical-align:middle;margin-inline-end:12px}
.px i{width:5px;height:5px;background:var(--or)}
.px i:nth-child(2),.px i:nth-child(7),.px i:nth-child(12){opacity:.45}.px i:nth-child(4),.px i:nth-child(9),.px i:nth-child(14){opacity:.2}.px i:nth-child(6),.px i:nth-child(11){opacity:.7}
/* header */
header{position:sticky;top:0;z-index:50;background:rgba(2,2,3,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--noir-3);transition:height .3s}
.hd{display:flex;align-items:center;justify-content:space-between;gap:24px;height:78px}
.hd .logo{flex:none;display:block}.hd .logo img{height:44px;width:auto;max-width:none}
.hd .right{flex:none}
nav.main{display:flex;gap:2px;align-items:center}
nav.main>div{position:relative}
nav.main a.top,nav.main button.top{font-family:var(--font-l);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--blanc);text-decoration:none;padding:10px 13px;background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px;position:relative}
nav.main a.top::after,nav.main button.top::after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:1px;background:var(--or);transform:scaleX(0);transform-origin:left;transition:transform .3s}
nav.main a.top:hover::after,nav.main button.top:hover::after,nav.main div:focus-within button.top::after{transform:scaleX(1)}
.mega{position:absolute;top:100%;left:0;background:var(--noir-2);border:1px solid var(--noir-3);padding:22px 26px;display:none;gap:36px;min-width:560px;box-shadow:0 30px 60px rgba(0,0,0,.6)}
nav.main div:hover .mega,nav.main div:focus-within .mega{display:grid}
.mega{grid-template-columns:repeat(4,1fr)}
.mega.two{grid-template-columns:1fr 1fr;min-width:520px}
.mega h4{font-family:var(--font-l);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--or);margin:0 0 10px;font-weight:600}
.mega a{display:block;font-size:14.5px;color:var(--gris);text-decoration:none;padding:3px 0}
.mega a:hover{color:var(--blanc)}
.hd .right{display:flex;align-items:center;gap:18px}
.lang{display:flex;gap:2px;font-family:var(--font-l);font-size:11px;letter-spacing:.12em}
.lang a{text-decoration:none;color:var(--gris-2);padding:4px 5px}
.lang a[aria-current]{color:var(--or)}
.client{white-space:nowrap;font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris);text-decoration:none}
.client:hover{color:var(--blanc)}
.hd .btn{height:42px;padding-inline:20px;font-size:11.5px}
.burger{display:none;background:none;border:1px solid var(--noir-4);color:var(--blanc);width:46px;height:46px;border-radius:2px;cursor:pointer;font-family:var(--font-l);font-size:11px;letter-spacing:.1em}
@media (max-width:1180px){nav.main,.client{display:none}.hd .lang{display:none}.burger{display:inline-flex;align-items:center;justify-content:center}}
@media (max-width:560px){.hd .btn{display:none}}
.mobile{position:fixed;inset:0;background:var(--noir);z-index:60;padding:24px var(--gutter);display:none;flex-direction:column;gap:12px;overflow:auto}
.mobile[data-open]{display:flex}
.mobile .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.mobile a.m{font-family:var(--font-d);font-size:32px;font-weight:600;text-decoration:none;color:var(--blanc);padding:8px 0;border-bottom:1px solid var(--noir-3)}
.mobile .m2{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-family:var(--font-l);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris)}
.mobile .btns{display:flex;flex-direction:column;gap:10px;margin-top:20px}
/* hero */
.hero{position:relative;min-height:min(88vh,860px);display:grid;align-items:end;padding-block:120px 0;overflow:hidden;isolation:isolate}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.hero .bgv{position:absolute;inset:0;z-index:-2;background:
  radial-gradient(60% 50% at 78% 40%,rgba(201,161,84,.13),transparent 70%),
  radial-gradient(40% 40% at 20% 80%,rgba(201,161,84,.06),transparent 70%),
  linear-gradient(180deg,#050506 0%,#020203 100%)}
.hero .vph{position:absolute;inset-inline-end:var(--gutter);top:100px;z-index:0;font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);border:1px dashed var(--noir-4);padding:6px 10px;max-width:calc(100% - 2*var(--gutter))}
.hero .in{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;max-width:980px;min-width:0}
.hero .tag{line-height:2}
@media (max-width:560px){.hero .tag{letter-spacing:.14em;font-size:11px}.hero .vph{top:86px;inset-inline:var(--gutter) auto}}
.hero h1 span{display:block}
.hero h1 .g{background:var(--or-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .tag{font-family:var(--font-l);letter-spacing:.24em;text-transform:uppercase;font-size:clamp(11px,1.1vw,14px);color:var(--or);font-weight:600}
.hero .tag b{color:var(--blanc);font-weight:600;margin-inline:.55em}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.hero .geo{font-family:var(--font-l);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gris-2)}
.chain{margin-top:64px;border-top:1px solid var(--noir-3);border-bottom:1px solid var(--noir-3);overflow:hidden;background:rgba(2,2,3,.6)}
.chain .track{display:flex;gap:0;width:max-content;animation:slide 48s linear infinite}
.chain span{font-family:var(--font-l);font-size:12px;letter-spacing:.26em;text-transform:uppercase;padding:16px 28px;color:var(--gris);display:flex;align-items:center;gap:28px;white-space:nowrap}
.chain span::after{content:"→";color:var(--or)}
@keyframes slide{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.chain .track{animation:none;flex-wrap:wrap;width:auto}}
/* proof band */
.proof{padding-block:44px;border-bottom:1px solid var(--noir-3)}
.proof .in{display:grid;grid-template-columns:auto 1fr;gap:24px 64px;align-items:center}
.proof .q{font-family:var(--font-d);font-size:clamp(18px,1.6vw,22px);font-weight:500;max-width:22ch;line-height:1.25}
.proof ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:14px 40px;align-items:center}
.proof li{font-family:var(--font-l);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gris);font-weight:600}
.proof li small{display:block;font-family:var(--font-b);text-transform:none;letter-spacing:0;font-size:12px;color:var(--gris-2);font-weight:400;margin-top:2px}
@media (max-width:820px){.proof .in{grid-template-columns:1fr}}
/* manifeste */
.mani .in{display:grid;grid-template-columns:1fr 1.4fr;gap:48px 96px;align-items:start}
.mani .sticky{position:sticky;top:110px;display:grid;gap:22px}
.mani ol{list-style:none;margin:0;padding:0;display:grid;gap:0}
.mani li{border-top:1px solid var(--clair-line);padding:34px 0;display:grid;gap:8px}
.mani li:last-child{border-bottom:1px solid var(--clair-line)}
.mani .no{font-family:var(--font-d);font-size:clamp(22px,2.4vw,32px);font-weight:300;color:var(--encre-2);text-decoration:line-through;text-decoration-color:var(--or-s);text-decoration-thickness:1px}
.mani .yes{font-family:var(--font-d);font-size:clamp(28px,3.4vw,46px);font-weight:700;letter-spacing:-.02em;line-height:1.05}
.mani .yes em{font-style:normal;color:var(--or-clair-txt)}
.mani .concl{margin-top:36px;display:grid;gap:18px}
.mani .concl p{font-size:clamp(19px,1.7vw,24px);font-family:var(--font-d);font-weight:500;max-width:30ch}
@media (max-width:900px){.mani .in{grid-template-columns:1fr}.mani .sticky{position:static}}
/* piliers */
.pil{position:relative}
.pil .head{display:grid;gap:18px;max-width:760px;margin-bottom:56px}
.pil .sys{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--noir-3)}
.pil .sys::before{content:"";position:absolute;left:0;right:0;top:92px;height:1px;background:linear-gradient(90deg,transparent,var(--or) 12%,var(--or) 88%,transparent);opacity:.6}
.pil .p{background:var(--noir);padding:34px 28px 38px;border-inline-end:1px solid var(--noir-3);display:grid;gap:18px;align-content:start;position:relative;transition:background .3s}
.pil .p:last-child{border-inline-end:0}
.pil .p:hover{background:var(--noir-2)}
.pil .p .k{font-family:var(--font-l);font-size:10.5px;letter-spacing:.16em;color:var(--gris-2);display:flex;justify-content:space-between;gap:10px;white-space:nowrap;overflow:hidden}
.pil .p h3{font-size:clamp(24px,2.2vw,32px);font-weight:700;display:flex;align-items:center;gap:14px;min-height:52px;background:inherit}
.pil .p h3 span{background:inherit;padding-inline-end:12px}
.pil .p h3::before{content:"";width:12px;height:12px;background:var(--or);box-shadow:0 0 0 6px var(--noir),0 0 0 7px var(--noir-4);flex:none;transition:transform .3s}
.pil .p:hover h3::before{transform:rotate(45deg)}
.pil .p .d{color:var(--gris);font-size:15.5px;min-height:72px}
.pil .p ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:14.5px;color:var(--gris)}
.pil .p li::before{content:"";display:inline-block;width:4px;height:4px;background:var(--or);margin-inline-end:10px;vertical-align:middle;opacity:.8}
.pil .p a{font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--or);text-decoration:none;margin-top:8px}
@media (max-width:1000px){.pil .sys{grid-template-columns:1fr 1fr}.pil .sys::before{display:none}.pil .p:nth-child(2){border-inline-end:0}.pil .p:nth-child(-n+2){border-bottom:1px solid var(--noir-3)}}
@media (max-width:560px){.pil .sys{grid-template-columns:1fr}.pil .p{border-inline-end:0;border-bottom:1px solid var(--noir-3)}.pil .p:last-child{border-bottom:0}}
/* méthode 360 */
.m360 .head{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:44px}
.m360 .steps{display:grid;grid-template-columns:repeat(8,1fr);gap:0;border-top:1px solid var(--clair-line);border-bottom:1px solid var(--clair-line)}
.m360 button{background:none;border:0;border-inline-end:1px solid var(--clair-line);padding:22px 12px 18px;font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--encre-2);cursor:pointer;display:grid;gap:12px;justify-items:start;text-align:left;position:relative;transition:color .2s}
.m360 button:last-child{border-inline-end:0}
.m360 button i{font-style:normal;font-family:var(--font-d);font-size:13px;color:var(--or-clair-txt);font-weight:500}
.m360 button::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--or-s);transform:scaleX(0);transition:transform .3s}
.m360 button[aria-selected="true"]{color:var(--encre);font-weight:700}
.m360 button[aria-selected="true"]::after{transform:scaleX(1)}
.m360 .panel{display:none;grid-template-columns:1.1fr 1fr;gap:40px 80px;padding-top:44px}
.m360 .panel[data-active]{display:grid}
.m360 .panel h3{font-size:clamp(28px,3.2vw,44px);font-weight:700;margin-bottom:14px}
.m360 .panel p{color:var(--encre-2);max-width:50ch;font-size:17.5px}
.m360 .panel ul{margin:0;padding:0;list-style:none;display:grid;gap:10px;font-size:16px;border-inline-start:1px solid var(--clair-line);padding-inline-start:24px}
.m360 .panel li b{font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--or-clair-txt);display:block;font-weight:600}
.m360 .foot{margin-top:40px;display:flex;flex-wrap:wrap;gap:18px 40px;align-items:center;justify-content:space-between;border-top:1px solid var(--clair-line);padding-top:26px}
.m360 .foot p{max-width:60ch;color:var(--encre-2)}
@media (max-width:1000px){.m360 .steps{grid-template-columns:repeat(4,1fr)}.m360 button:nth-child(4){border-inline-end:0}.m360 button:nth-child(-n+4){border-bottom:1px solid var(--clair-line)}.m360 .panel{grid-template-columns:1fr}.m360 .head{grid-template-columns:1fr}}
@media (max-width:520px){.m360 .steps{grid-template-columns:repeat(2,1fr)}.m360 button:nth-child(even){border-inline-end:0}.m360 button:nth-child(odd){border-inline-end:1px solid var(--clair-line)}.m360 button:nth-child(-n+6){border-bottom:1px solid var(--clair-line)}}
/* labo */
.labo .head{display:grid;grid-template-columns:1fr 1fr;gap:24px 80px;align-items:end;margin-bottom:48px}
.labo .cases{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:auto auto;gap:14px}
.labo .c{position:relative;border:1px solid var(--noir-3);background:var(--noir-2);display:grid;grid-template-rows:auto 1fr;text-decoration:none;color:inherit;overflow:hidden;transition:border-color .3s}
.labo .c:hover{border-color:var(--or-s)}
.labo .c:first-child{grid-row:span 2}
.labo .vis{aspect-ratio:16/10;background:linear-gradient(160deg,#1a1712,#0a0908 60%,#141210);position:relative;overflow:hidden}
.labo .c:first-child .vis{aspect-ratio:auto;min-height:320px;height:100%}
.labo .vis::before{content:attr(data-ph);position:absolute;inset:auto 14px 14px auto;font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);border:1px dashed var(--noir-4);padding:5px 9px}
.labo .vis::after{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 70% 30%,rgba(201,161,84,.16),transparent 70%);transition:opacity .4s;opacity:.7}
.labo .c:hover .vis::after{opacity:1}
.labo .tx{padding:22px 24px 26px;display:grid;gap:10px;align-content:start}
.labo .tx .k{display:flex;justify-content:space-between;gap:12px;font-family:var(--font-l);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris-2)}
.labo .tx h3{font-size:clamp(20px,1.8vw,26px)}
.labo .tx p{color:var(--gris);font-size:15px;max-width:44ch}
.labo .tx .more{font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--or);margin-top:6px}
.labo .c:first-child{grid-template-rows:1fr auto}
@media (max-width:1000px){.labo .cases{grid-template-columns:1fr 1fr}.labo .c:first-child{grid-column:span 2;grid-row:auto}.labo .c:first-child .vis{min-height:240px}.labo .head{grid-template-columns:1fr}}
@media (max-width:600px){.labo .cases{grid-template-columns:1fr}.labo .c:first-child{grid-column:auto}}
/* réalisations */
.real .head{display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:end;margin-bottom:34px}
.filters{display:flex;flex-wrap:wrap;gap:6px}
.filters button{font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;background:none;border:1px solid var(--clair-line);color:var(--encre-2);padding:9px 14px;border-radius:2px;cursor:pointer;transition:all .2s}
.filters button:hover{border-color:var(--or-s);color:var(--encre)}
.filters button[aria-pressed="true"]{background:var(--encre);color:var(--clair);border-color:var(--encre)}
.mos{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;grid-auto-flow:dense;gap:12px}
.mos a{position:relative;display:block;text-decoration:none;color:var(--clair);background:#151310;overflow:hidden;border-radius:2px}
.mos a.t{grid-row:span 2}.mos a.w{grid-column:span 2}
.mos a[hidden]{display:none}
.mos .ph{position:absolute;inset:0;background:linear-gradient(150deg,#221e17,#0f0e0c 55%,#1a1712)}
.mos .ph::after{content:attr(data-ph);position:absolute;top:12px;left:12px;font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);border:1px dashed var(--noir-4);padding:4px 8px}
.mos .cap{position:absolute;inset:auto 0 0 0;padding:16px;display:grid;gap:4px;background:linear-gradient(transparent,rgba(2,2,3,.85));transform:translateY(8px);opacity:0;transition:all .3s}
.mos a:hover .cap,.mos a:focus-visible .cap{opacity:1;transform:none}
.mos .cap b{font-family:var(--font-d);font-size:18px;font-weight:600}
.mos .cap span{font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
@media (max-width:900px){.mos{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}}
@media (max-width:480px){.mos{grid-template-columns:1fr;grid-auto-rows:200px}.mos a.t,.mos a.w{grid-row:auto;grid-column:auto}}
/* process */
.proc .head{max-width:760px;display:grid;gap:18px;margin-bottom:56px}
.proc ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:0;border-top:1px solid var(--noir-3)}
.proc li{padding:26px 18px 30px 0;border-inline-end:1px solid var(--noir-3);margin-inline-end:18px;display:grid;gap:12px;align-content:start;position:relative}
.proc li:last-child{border-inline-end:0;margin:0}
.proc li::before{content:"";position:absolute;top:-1px;left:0;width:36px;height:1px;background:var(--or)}
.proc .n{font-family:var(--font-d);font-size:13px;color:var(--or);font-weight:500;letter-spacing:.1em}
.proc h3{font-family:var(--font-l);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}
.proc p{color:var(--gris);font-size:14.5px}
@media (max-width:1100px){.proc ol{grid-template-columns:repeat(4,1fr)}.proc li:nth-child(4){border-inline-end:0}}
@media (max-width:700px){.proc ol{grid-template-columns:1fr 1fr}.proc li:nth-child(even){border-inline-end:0}.proc li:nth-child(4){border-inline-end:1px solid var(--noir-3)}}
@media (max-width:420px){.proc ol{grid-template-columns:1fr}.proc li{border-inline-end:0;margin:0}}
/* audit */
.audit{padding-block:0}
.audit .box{border:1px solid var(--or-s);padding:clamp(36px,5vw,72px);display:grid;grid-template-columns:1.3fr 1fr;gap:36px 80px;align-items:center;position:relative;background:linear-gradient(120deg,rgba(201,161,84,.08),transparent 60%)}
.audit .box::before{content:"";position:absolute;inset:6px;border:1px solid rgba(201,161,84,.25);pointer-events:none}
.audit h2{font-size:clamp(28px,3.6vw,48px)}
.audit ul{list-style:none;margin:0;padding:0;display:grid;gap:14px;font-size:16px}
.audit li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;color:var(--gris)}
.audit li b{color:var(--blanc);font-weight:600}
.audit li::before{content:"";width:8px;height:8px;background:var(--or);margin-top:8px}
.audit .side{display:grid;gap:18px}
.audit .side p{color:var(--gris);font-size:15px}
@media (max-width:900px){.audit .box{grid-template-columns:1fr}}
/* témoignages */
.temo .head{display:grid;gap:16px;max-width:720px;margin-bottom:40px}
.temo .empty{border:1px dashed var(--clair-line);padding:34px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;max-width:900px}
.temo .empty .g{width:56px;height:56px;border:1px solid var(--or-s);display:grid;place-items:center;font-family:var(--font-d);font-size:26px;color:var(--or-clair-txt)}
.temo .empty h3{font-size:22px;margin-bottom:8px}
.temo .empty p{color:var(--encre-2);max-width:60ch}
.temo .empty small{display:block;margin-top:12px;font-family:var(--font-l);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--or-clair-txt)}
@media (max-width:560px){.temo .empty{grid-template-columns:1fr}}
/* insights */
.ins .head{display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:end;margin-bottom:40px}
.ins .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--noir-3)}
.ins article{padding:28px 28px 32px 0;margin-inline-end:28px;border-inline-end:1px solid var(--noir-3);display:grid;gap:12px;align-content:start}
.ins article:last-child{border-inline-end:0;margin:0}
.ins .cat{font-family:var(--font-l);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--or)}
.ins h3{font-size:clamp(20px,1.8vw,25px);line-height:1.2}
.ins p{color:var(--gris);font-size:15px}
.ins .soon{font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);border:1px dashed var(--noir-4);padding:4px 8px;justify-self:start}
@media (max-width:860px){.ins .grid{grid-template-columns:1fr}.ins article{border-inline-end:0;margin:0;border-bottom:1px solid var(--noir-3)}.ins article:last-child{border-bottom:0}}
/* final */
.final{position:relative;overflow:hidden}
.final .in{display:grid;grid-template-columns:1.4fr 1fr;gap:48px 96px;align-items:center}
.final h2{font-size:clamp(36px,5.6vw,76px);line-height:.98}
.final h2 .g{background:var(--or-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.final .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.nl{border:1px solid var(--noir-3);padding:30px;background:var(--noir-2);display:grid;gap:16px}
.nl h3{font-size:22px}
.nl p{color:var(--gris);font-size:15px}
.nl form{display:grid;gap:10px}
.nl input{background:var(--noir);border:1px solid var(--noir-4);color:var(--blanc);font:inherit;padding:13px 14px;border-radius:2px;width:100%}
.nl input:focus{outline:2px solid var(--or);outline-offset:1px;border-color:var(--or)}
.nl label{font-family:var(--font-l);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);display:grid;gap:6px}
.nl .consent{font-size:12.5px;color:var(--gris-2);display:flex;gap:10px;align-items:start;font-family:var(--font-b);text-transform:none;letter-spacing:0}
.nl .consent input{width:auto;margin-top:3px}
.nl button{height:50px}
@media (max-width:900px){.final .in{grid-template-columns:1fr}}
/* footer */
footer{border-top:1px solid var(--noir-3);padding-block:64px 32px;background:var(--noir)}
.ft{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:40px}
.ft .brand{display:grid;gap:18px;align-content:start}
.ft .brand img{width:220px}
.ft .base{font-family:var(--font-l);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--or);line-height:1.8}
.ft .base b{display:block;color:var(--blanc);font-weight:500;letter-spacing:.16em}
.ft .addr{font-size:14.5px;color:var(--gris);line-height:1.7}
.ft h4{font-family:var(--font-l);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--blanc);margin:0 0 14px;font-weight:600}
.ft ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14.5px}
.ft a{color:var(--gris);text-decoration:none}
.ft a:hover{color:var(--or-c)}
.ft .soc{display:flex;gap:14px;flex-wrap:wrap}
.legal{margin-top:56px;padding-top:22px;border-top:1px solid var(--noir-3);display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;font-size:13px;color:var(--gris-2)}
.legal ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px}
.legal a{color:var(--gris-2);text-decoration:none}.legal a:hover{color:var(--gris)}
@media (max-width:1000px){.ft{grid-template-columns:1fr 1fr}.ft .brand{grid-column:span 2}}
@media (max-width:520px){.ft{grid-template-columns:1fr}.ft .brand{grid-column:auto}}
/* floating */
.float{position:fixed;right:18px;bottom:18px;z-index:40;display:grid;gap:10px;justify-items:end}
.wa{display:flex;align-items:center;gap:10px;background:var(--wa);color:#04210f;text-decoration:none;font-family:var(--font-l);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;padding:0 18px 0 14px;height:52px;border-radius:26px;box-shadow:0 10px 30px rgba(0,0,0,.5);transition:transform .25s}
.wa:hover{transform:translateY(-2px)}
.wa svg{width:22px;height:22px}
.bot{background:var(--noir-2);border:1px solid var(--or-s);color:var(--or);font-family:var(--font-l);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;height:40px;padding:0 14px;border-radius:20px;cursor:pointer}
@media (max-width:560px){.wa span{display:none}.wa{padding:0;width:52px;justify-content:center}}
/* reveal */
.rv{opacity:1;transform:none}
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}.btn:hover{transform:none}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ========== Inner pages ========== */
[dir=rtl]{--font-d:"IBM Plex Sans Arabic","Bricolage Grotesque",sans-serif;--font-l:"IBM Plex Sans Arabic","Montserrat",sans-serif;--font-b:"IBM Plex Sans Arabic","Source Sans 3",sans-serif}
[dir=rtl] body{line-height:1.75}
[dir=rtl] .lbl,[dir=rtl] .btn,[dir=rtl] nav.main a.top,[dir=rtl] nav.main button.top,[dir=rtl] .hero .tag,[dir=rtl] .chain span,[dir=rtl] .proof li,[dir=rtl] .mega h4,[dir=rtl] .ft h4,[dir=rtl] .ft .base,[dir=rtl] .filters button,[dir=rtl] .proc h3,[dir=rtl] .m360 button,[dir=rtl] .client,[dir=rtl] .cat,[dir=rtl] .crumbs{letter-spacing:0;text-transform:none;font-weight:600}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{letter-spacing:0;line-height:1.25}
[dir=rtl] .btn .ar{transform:scaleX(-1)}
[dir=rtl] .btn:hover .ar{transform:scaleX(-1) translateX(4px)}
[dir=rtl] .chain .track{animation-direction:reverse}
[dir=rtl] .chain span::after{content:"←"}
[dir=rtl] input[type=email],[dir=rtl] input[type=tel],[dir=rtl] input[type=url]{direction:ltr;text-align:end}
.phero{padding-block:56px 64px;border-bottom:1px solid var(--noir-3);position:relative;overflow:hidden}
.phero::after{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 85% 20%,rgba(201,161,84,.12),transparent 70%);pointer-events:none}
.phero .wrap{position:relative;z-index:1;display:grid;gap:22px}
.phero h1{font-size:clamp(34px,5vw,64px)}
.phero .lead{color:var(--gris);font-size:clamp(17px,1.5vw,21px);max-width:60ch}
.phero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.phero .meta{display:flex;flex-wrap:wrap;gap:8px 24px;font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2)}
.phero.split .wrap{grid-template-columns:1.2fr 1fr;align-items:end}
.phero .vis{aspect-ratio:4/3;background:linear-gradient(160deg,#1a1712,#0a0908 60%,#141210);border:1px solid var(--noir-3);position:relative}
.phero .vis::before{content:attr(data-ph);position:absolute;inset:auto 14px 14px auto;font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);border:1px dashed var(--noir-4);padding:5px 9px}
@media (max-width:900px){.phero.split .wrap{grid-template-columns:1fr}.phero .vis{aspect-ratio:16/9}}
.crumbs{font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris-2);display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none;margin:0;padding:0}
.crumbs a{color:var(--gris-2);text-decoration:none}.crumbs a:hover{color:var(--or)}
.crumbs li+li::before{content:"/";margin-inline-end:10px;color:var(--noir-4)}
.light .crumbs,.light .crumbs a{color:var(--encre-2)}
.sec{padding-block:clamp(56px,7vw,96px)}
.sec .head{display:grid;gap:14px;max-width:760px;margin-bottom:40px}
.split2{display:grid;grid-template-columns:1fr 1fr;gap:40px 80px;align-items:start}
.split2.sticky>:first-child{position:sticky;top:110px}
@media (max-width:900px){.split2{grid-template-columns:1fr}.split2.sticky>:first-child{position:static}}
.prose{max-width:68ch;font-size:17.5px}
.prose h2{font-size:clamp(26px,3vw,36px);margin:1.6em 0 .6em}
.prose h3{font-size:clamp(20px,2vw,24px);margin:1.4em 0 .5em}
.prose p{margin:.8em 0}
.prose ul,.prose ol{padding-inline-start:1.3em;margin:.8em 0}
.prose li{margin:.35em 0}
.prose li::marker{color:var(--or-s)}
.prose blockquote{border-inline-start:2px solid var(--or);padding-inline-start:20px;margin:1.4em 0;font-family:var(--font-d);font-size:1.25em;font-weight:500}
.prose a{color:var(--or-clair-txt)}
.light .prose{color:var(--encre)}
.light .prose p,.light .prose li{color:var(--encre-2)}
.prose img{border:1px solid var(--clair-line)}
.callout{border:1px solid var(--or-s);padding:18px 22px;margin:1.6em 0;background:rgba(201,161,84,.06)}
.callout p{margin:.3em 0}
.plist{list-style:none;margin:0;padding:0;display:grid;gap:0}
.plist li{border-top:1px solid var(--noir-3);padding:22px 0;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}
.plist li:last-child{border-bottom:1px solid var(--noir-3)}
.plist li::before{content:"";width:8px;height:8px;background:var(--or);margin-top:9px}
.plist b{display:block;font-family:var(--font-d);font-size:20px;font-weight:600;margin-bottom:4px}
.plist span{color:var(--gris);font-size:16px}
.light .plist li{border-color:var(--clair-line)}.light .plist span{color:var(--encre-2)}
.msteps{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;gap:0}
.msteps li{counter-increment:s;display:grid;grid-template-columns:64px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--clair-line)}
.msteps li::before{content:"0" counter(s);font-family:var(--font-d);font-size:28px;font-weight:300;color:var(--or-clair-txt);line-height:1}
.msteps li:nth-child(n+10)::before{content:counter(s)}
.msteps b{display:block;font-family:var(--font-d);font-size:20px;font-weight:600;margin-bottom:4px}
.msteps span{color:var(--encre-2)}
.deliv{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;list-style:none;margin:0;padding:0}
.deliv li{border:1px solid var(--noir-3);padding:16px 18px;font-size:15.5px;color:var(--gris);background:var(--noir-2)}
.deliv li::before{content:"";display:inline-block;width:6px;height:6px;background:var(--or);margin-inline-end:10px;vertical-align:middle}
.light .deliv li{border-color:var(--clair-line);background:#fff;color:var(--encre-2)}
.faq{max-width:80ch;display:grid;gap:0;border-top:1px solid var(--clair-line)}
.faq details{border-bottom:1px solid var(--clair-line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font-family:var(--font-d);font-size:19px;font-weight:600;display:flex;justify-content:space-between;gap:20px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:300;font-size:28px;color:var(--or-clair-txt);flex:none;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .a{padding:0 0 22px;color:var(--encre-2);max-width:66ch}
.dark .faq{border-color:var(--noir-3)}.dark .faq details{border-color:var(--noir-3)}.dark .faq .a{color:var(--gris)}
.hublist{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0;border-top:1px solid var(--noir-3);border-inline-start:1px solid var(--noir-3)}
.hublist a{display:grid;gap:10px;align-content:start;padding:26px 24px 30px;border-inline-end:1px solid var(--noir-3);border-bottom:1px solid var(--noir-3);text-decoration:none;color:inherit;transition:background .25s;min-height:180px}
.hublist a:hover{background:var(--noir-2)}
.hublist .k{font-family:var(--font-l);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--or)}
.hublist h3{font-size:22px}
.hublist p{color:var(--gris);font-size:15px}
.hublist .go{font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);margin-top:auto;padding-top:8px}
.hublist a:hover .go{color:var(--or)}
.light .hublist,.light .hublist a{border-color:var(--clair-line)}.light .hublist a:hover{background:#fff}.light .hublist p{color:var(--encre-2)}.light .hublist .k{color:var(--or-clair-txt)}
.pillar-head{display:flex;align-items:center;gap:14px;margin:56px 0 20px}
.pillar-head:first-child{margin-top:0}
.pillar-head i{width:12px;height:12px;background:var(--or);flex:none}
.pillar-head h2{font-size:clamp(26px,3vw,40px)}
.pillar-head span{font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris-2)}
.rowlinks{display:flex;flex-wrap:wrap;gap:8px}
.rowlinks a{font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--noir-4);padding:9px 14px;text-decoration:none;color:var(--gris);border-radius:2px;transition:all .2s}
.rowlinks a:hover{border-color:var(--or);color:var(--or)}
.light .rowlinks a{border-color:var(--clair-line);color:var(--encre-2)}.light .rowlinks a:hover{border-color:var(--or-s);color:var(--encre)}
.related3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--noir-3)}
.related3>*{padding:24px 24px 26px 0;margin-inline-end:24px;border-inline-end:1px solid var(--noir-3);text-decoration:none;color:inherit;display:grid;gap:8px;align-content:start}
.related3>*:last-child{border-inline-end:0;margin:0}
.related3 .k{font-family:var(--font-l);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--or)}
.related3 h3{font-size:20px}.related3 p{color:var(--gris);font-size:15px}
.light .related3,.light .related3>*{border-color:var(--clair-line)}.light .related3 p{color:var(--encre-2)}.light .related3 .k{color:var(--or-clair-txt)}
@media (max-width:860px){.related3{grid-template-columns:1fr}.related3>*{border-inline-end:0;margin:0;border-bottom:1px solid var(--noir-3)}.related3>*:last-child{border-bottom:0}}
.where{border:1px solid var(--noir-3);padding:24px 28px;display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:var(--noir-2)}
.where b{font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--or)}
.where p{color:var(--gris);font-size:15.5px}
@media (max-width:600px){.where{grid-template-columns:1fr}}
/* team */
.team{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px}
.team article{display:grid;gap:10px}
.team .ph{aspect-ratio:4/5;background:linear-gradient(160deg,#1a1712,#0a0908 60%,#141210);border:1px solid var(--noir-3);position:relative;overflow:hidden}
.team .ph img{width:100%;height:100%;object-fit:cover;filter:grayscale(20%)}
.team .ph::before{content:attr(data-ph);position:absolute;inset:auto 12px 12px auto;font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);border:1px dashed var(--noir-4);padding:4px 8px}
.team .ph img+::before{display:none}
.team h3{font-size:22px}.team .role{font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.team p{color:var(--gris);font-size:15px}
.team a.li{font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris-2);text-decoration:none}.team a.li:hover{color:var(--or)}
.trades{display:flex;flex-wrap:wrap;gap:8px 28px;font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris-2)}
.trades span::before{content:"";display:inline-block;width:6px;height:6px;background:var(--or);margin-inline-end:10px;vertical-align:middle}
/* case study */
.cs .nav{position:sticky;top:96px;display:grid;gap:2px;list-style:none;margin:0;padding:0;font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.cs .nav a{color:var(--gris-2);text-decoration:none;padding:7px 0 7px 14px;border-inline-start:1px solid var(--noir-3);display:block}
.cs .nav a:hover,.cs .nav a.on{color:var(--or);border-color:var(--or)}
.cs section{padding:0 0 48px;scroll-margin-top:110px}
.cs section h2{font-size:clamp(24px,2.6vw,34px);margin-bottom:14px;display:flex;align-items:baseline;gap:14px}
.cs section h2 small{font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--or);font-weight:600}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:8px 0 12px}
.kpis div{border:1px solid var(--or-s);padding:20px;display:grid;gap:4px;background:rgba(201,161,84,.05)}
.kpis b{font-family:var(--font-d);font-size:40px;font-weight:300;color:var(--or-c);line-height:1;font-variant-numeric:tabular-nums}
.kpis span{font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.kpis small{color:var(--gris-2);font-size:12.5px}
.ba{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--noir-3);background:#111;user-select:none}
.ba img,.ba .ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba .after{clip-path:inset(0 0 0 50%)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.ba .bar{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--or);pointer-events:none}
.ba .bar::after{content:"◂ ▸";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--or);color:var(--noir);font-size:12px;padding:6px 8px;border-radius:2px;font-family:var(--font-l)}
.ba .tag{position:absolute;bottom:12px;font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:rgba(2,2,3,.7);color:var(--blanc);padding:5px 9px}
.ba .tag.b{left:12px}.ba .tag.a{right:12px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gal .ph,.gal img{aspect-ratio:4/3;background:linear-gradient(160deg,#1a1712,#0a0908 60%,#141210);border:1px solid var(--noir-3);object-fit:cover;width:100%;display:block}
@media (max-width:700px){.gal{grid-template-columns:1fr 1fr}}
.quote{border-inline-start:2px solid var(--or);padding:8px 0 8px 28px;display:grid;gap:14px;max-width:70ch}
.quote p{font-family:var(--font-d);font-size:clamp(20px,2vw,26px);font-weight:500;line-height:1.3}
.quote footer{display:flex;gap:14px;align-items:center;border:0;padding:0;font-size:14.5px;color:var(--gris)}
.quote footer b{color:var(--blanc);display:block;font-weight:600}
.stars{color:var(--or);letter-spacing:2px}
.tstm{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.tstm article{border:1px solid var(--clair-line);padding:24px;display:grid;gap:12px;background:#fff}
.tstm p{color:var(--encre-2)}
.tstm .who{display:flex;gap:12px;align-items:center;font-size:14px}
.tstm .who img{width:44px;height:44px;object-fit:cover;border-radius:50%}
.tstm .who b{display:block;color:var(--encre)}
.tstm .src{font-family:var(--font-l);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--or-clair-txt)}
/* article */
.art{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}
.art .toc{position:sticky;top:100px;border-inline-start:1px solid var(--clair-line);padding-inline-start:18px;font-size:14px}
.art .toc b{display:block;font-family:var(--font-l);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--or-clair-txt);margin-bottom:10px}
.art .toc a{display:block;color:var(--encre-2);text-decoration:none;padding:4px 0}.art .toc a.l3{padding-inline-start:14px;font-size:13px}
.art .toc a:hover{color:var(--encre)}
@media (max-width:900px){.art{grid-template-columns:1fr}.art .toc{position:static;border:0;padding:0;border-top:1px solid var(--clair-line);padding-top:14px}}
.artmeta{display:flex;flex-wrap:wrap;gap:8px 20px;font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris-2)}
.artcta{border:1px solid var(--or-s);padding:28px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin:48px 0;background:rgba(201,161,84,.06)}
.artcta h3{font-size:22px}.artcta p{color:var(--encre-2);font-size:15px}
@media (max-width:640px){.artcta{grid-template-columns:1fr}}
.artlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0;border-top:1px solid var(--noir-3)}
.artlist article{padding:26px 24px 28px 0;margin-inline-end:24px;border-bottom:1px solid var(--noir-3);display:grid;gap:10px;align-content:start}
.artlist h3{font-size:21px;line-height:1.2}.artlist h3 a{text-decoration:none}.artlist h3 a:hover{color:var(--or-c)}
.artlist p{color:var(--gris);font-size:15px}
.catnav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:36px}
.catnav a{font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--noir-4);padding:8px 13px;text-decoration:none;color:var(--gris);border-radius:2px}
.catnav a:hover,.catnav a[aria-current]{border-color:var(--or);color:var(--or)}
/* forms */
.form{display:grid;gap:16px}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:600px){.form .row{grid-template-columns:1fr}}
.form label{display:grid;gap:6px;font-family:var(--font-l);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2)}
.form label em{font-style:normal;color:var(--gris-2);text-transform:none;letter-spacing:0;font-family:var(--font-b);font-size:12px}
.form input,.form select,.form textarea{background:var(--noir);border:1px solid var(--noir-4);color:var(--blanc);font:inherit;font-size:16px;padding:13px 14px;border-radius:2px;width:100%;min-height:50px}
.form textarea{min-height:130px;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--or);outline-offset:1px;border-color:var(--or)}
.form .consent{font-size:13px;color:var(--gris-2);display:flex;gap:10px;align-items:start;font-family:var(--font-b);text-transform:none;letter-spacing:0}
.form .consent input{width:auto;min-height:0;margin-top:3px}
.form fieldset{border:0;padding:0;margin:0;display:grid;gap:14px}
.form legend{font-family:var(--font-d);font-size:22px;font-weight:600;margin-bottom:8px;color:var(--blanc)}
.form .err{color:#E89B5E;font-size:13px}
.form .ok{border:1px solid var(--or-s);padding:20px;color:var(--blanc)}
.light .form input,.light .form select,.light .form textarea{background:#fff;border-color:var(--clair-line);color:var(--encre)}
.light .form legend{color:var(--encre)}.light .form label{color:var(--encre-2)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--noir-4);padding:12px 16px;border-radius:2px;cursor:pointer;font-family:var(--font-b);font-size:15.5px;text-transform:none;letter-spacing:0;color:var(--blanc);min-height:48px;transition:all .2s}
.chips label:has(input:checked){border-color:var(--or);background:rgba(201,161,84,.12)}
.chips input{width:auto;min-height:0;accent-color:#C9A154}
.light .chips label{border-color:var(--clair-line);color:var(--encre)}
.wiz{display:grid;gap:22px}
.wiz .bar{display:flex;gap:4px}
.wiz .bar i{flex:1;height:3px;background:var(--noir-4)}
.wiz .bar i.on{background:var(--or)}
.wiz .step{display:none;gap:16px}
.wiz .step[data-on]{display:grid}
.wiz .q{font-family:var(--font-d);font-size:clamp(24px,3vw,36px);font-weight:700}
.wiz .stepno{font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.wiz .nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}
.contact3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.contact3 a,.contact3 div{border:1px solid var(--noir-3);padding:26px;display:grid;gap:10px;align-content:start;text-decoration:none;color:inherit;background:var(--noir-2);transition:border-color .25s}
.contact3 a:hover{border-color:var(--or-s)}
.contact3 .k{font-family:var(--font-l);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--or)}
.contact3 h3{font-size:22px}.contact3 p{color:var(--gris);font-size:15px}
.contact3 .lnk{color:var(--blanc);text-decoration:none;display:block;margin-top:4px}
@media (max-width:860px){.contact3{grid-template-columns:1fr}}
.map{aspect-ratio:16/8;border:1px solid var(--noir-3);background:var(--noir-2);display:grid;place-items:center;position:relative}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.evts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.evts a{border:1px solid var(--noir-3);padding:22px;text-decoration:none;color:inherit;display:grid;gap:6px;background:var(--noir-2)}
.evts a:hover{border-color:var(--or-s)}
.evts b{font-family:var(--font-d);font-size:20px;font-weight:600}.evts span{color:var(--gris);font-size:14px}
@media (max-width:700px){.evts{grid-template-columns:1fr}}
.cal{border:1px solid var(--noir-3);min-height:520px;background:var(--noir-2);display:grid;place-items:center;color:var(--gris-2);font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:24px}
.cal iframe{width:100%;height:100%;min-height:520px;border:0}
/* landing */
.lp header .hd{height:68px}
.lp .hero{min-height:auto;padding-block:72px 64px}
.lp .benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--clair-line);border-bottom:1px solid var(--clair-line)}
.lp .benefits div{padding:28px 24px 28px 0;margin-inline-end:24px;border-inline-end:1px solid var(--clair-line)}
.lp .benefits div:last-child{border:0;margin:0}
.lp .benefits b{display:block;font-family:var(--font-d);font-size:20px;font-weight:600;margin-bottom:6px}
.lp .benefits span{color:var(--encre-2);font-size:15.5px}
@media (max-width:800px){.lp .benefits{grid-template-columns:1fr}.lp .benefits div{border-inline-end:0;margin:0;border-bottom:1px solid var(--clair-line)}}
.share{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris-2)}
.share a{color:var(--gris);text-decoration:none;border:1px solid var(--noir-4);padding:7px 11px}
.share a:hover{color:var(--or);border-color:var(--or)}
.legalp{max-width:76ch}
.skip{position:absolute;inset-inline-start:-9999px;top:8px;background:var(--or);color:var(--noir);padding:10px 14px;z-index:100;font-family:var(--font-l);font-size:12px}
.skip:focus{inset-inline-start:16px}
.bot-panel{position:fixed;right:18px;bottom:130px;width:min(360px,calc(100vw - 36px));background:var(--noir-2);border:1px solid var(--or-s);z-index:45;display:none;flex-direction:column;box-shadow:0 30px 60px rgba(0,0,0,.6)}
.bot-panel[data-open]{display:flex}
.bot-panel .h{padding:14px 16px;border-bottom:1px solid var(--noir-3);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-l);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--or)}
.bot-panel .h button{background:none;border:0;color:var(--gris);cursor:pointer;font-size:18px}
.bot-panel .m{padding:16px;display:grid;gap:12px;font-size:15px;max-height:340px;overflow:auto}
.bot-panel .m .b{background:var(--noir);border:1px solid var(--noir-3);padding:12px 14px;border-radius:2px}
.bot-panel .m .u{background:rgba(201,161,84,.12);border:1px solid var(--or-s);padding:12px 14px;border-radius:2px;justify-self:end}
.bot-panel .m small{color:var(--gris-2);font-size:12.5px}
.bot-panel form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--noir-3)}
.bot-panel input{flex:1;background:var(--noir);border:1px solid var(--noir-4);color:var(--blanc);font:inherit;padding:10px 12px;border-radius:2px}
.bot-panel .opts{display:flex;flex-wrap:wrap;gap:6px}
.bot-panel .opts button{background:none;border:1px solid var(--noir-4);color:var(--gris);font:inherit;font-size:13px;padding:7px 10px;cursor:pointer;border-radius:2px}
.bot-panel .opts button:hover{border-color:var(--or);color:var(--or)}
[dir=rtl] .float,[dir=rtl] .bot-panel{right:auto;left:18px}
.cookie{position:fixed;left:18px;bottom:18px;z-index:46;max-width:420px;background:var(--noir-2);border:1px solid var(--noir-3);padding:18px 20px;display:none;gap:12px;font-size:14px;color:var(--gris);box-shadow:0 20px 50px rgba(0,0,0,.5)}
.cookie[data-show]{display:grid}
.cookie .b{display:flex;gap:8px;flex-wrap:wrap}
.cookie button{font-family:var(--font-l);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:10px 14px;border-radius:2px;cursor:pointer;border:1px solid var(--noir-4);background:none;color:var(--blanc)}
.cookie button.y{background:var(--or-grad);color:var(--noir);border-color:transparent}
[dir=rtl] .cookie{left:auto;right:18px}

.phero .wrap>.crumbs{grid-column:1/-1}
