/* Design B « salle de marché » : chargé en dernier sur toutes les pages. */
html,body{overflow-x:clip}
:root{--night:#0B0A14;--go:#2BD48F}
html:not(:lang(ar)):not(:lang(ja)) h1,html:not(:lang(ar)):not(:lang(ja)) h2,html:not(:lang(ar)):not(:lang(ja)) h3{font-family:"IBM Plex Sans",system-ui,sans-serif}
h1{font-weight:700;letter-spacing:-.035em;line-height:1.06}
h2{font-weight:700;letter-spacing:-.025em}
:lang(ar) h1,:lang(ar) h2,:lang(ar) h3,:lang(ja) h1,:lang(ja) h2,:lang(ja) h3{letter-spacing:0;line-height:1.3}

/* Barre du haut, toujours sombre */
.topbar{--ink:#EDEBF7;--ink-soft:#C9C5E0;--muted:#C9C5E0;--surface:#1A1730;--surface-2:#1A1730;--border:#2A2548;background:var(--night);border-bottom:1px solid #2A2548;color:#EDEBF7;backdrop-filter:none}
.topbar .brand,.topbar .brand:hover{color:#EDEBF7}
.topbar .tfzlogo .ll,.topbar .logo .ll{display:none}
.topbar .tfzlogo .ld,.topbar .logo .ld{display:block}
.topbar .cta{background:var(--go);color:#04140B;border-color:var(--go);white-space:nowrap}
@media (max-width:640px){.topbar .cta{display:none}}

/* Scène sombre en haut de page */
.stage{--bg:#0B0A14;--surface:#131120;--surface-2:#1A1730;--border:#2A2548;--ink:#EDEBF7;--ink-soft:#C9C5E0;--muted:#A9A5C4;--accent:#2BD48F;--accent-ink:#2BD48F;--on-accent:#04140B;--brand:#A78BFA;--coupon:#2BD48F;--coupon-bg:transparent;--coupon-border:rgba(43,212,143,.45);
  position:relative;display:flex;flex-direction:column;overflow:hidden;margin-inline:calc(50% - 50vw);background:#0B0A14 url(/assets/heat.svg) right center/cover no-repeat;color:var(--ink)}
.stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(11,10,20,.95) 10%,rgba(11,10,20,.62) 55%,rgba(11,10,20,.18)),linear-gradient(0deg,rgba(11,10,20,.85),transparent 30%)}
[dir="rtl"] .stage{background-position:left center}
[dir="rtl"] .stage::after{background:linear-gradient(270deg,rgba(11,10,20,.95) 10%,rgba(11,10,20,.62) 55%,rgba(11,10,20,.18)),linear-gradient(0deg,rgba(11,10,20,.85),transparent 30%)}
.stage-in{position:relative;z-index:1;flex:1;width:100%;max-width:1120px;margin-inline:auto;padding:clamp(34px,6vw,84px) 24px clamp(32px,5vw,64px)}
.stage-tall{min-height:min(84vh,780px)}
.stage-tall .stage-in{display:flex;flex-direction:column;justify-content:center}
.stage a:not(.btn):not(.hb):not(.go):not(.cta){color:inherit}
.stage h1{color:#EDEBF7;font-size:clamp(2.1rem,1.3rem + 3.2vw,3.9rem);margin:0 0 16px;max-width:20ch}
.stage h1 .hl{color:var(--go)!important}
.stage .eyebrow,.stage .crumbs{color:#C9C5E0!important}
.stage .eyebrow{margin-bottom:14px}
.stage .standfirst,.stage .lede{color:#D9D5EC;font-size:clamp(1.05rem,1rem + .4vw,1.25rem);line-height:1.55;max-width:44em;margin-bottom:22px}
.stage .date{color:#A9A5C4}

/* Le code en géant */
.giant,.stage .coupon .code,.stage .cc-code .mono{display:block;font:700 clamp(3.2rem,17.5vw,14.5rem)/.95 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:-.06em;color:var(--go);direction:ltr;text-align:start;background:none;border:0;padding:0;margin-inline-start:-.03em}
[dir="rtl"] .giant,[dir="rtl"] .stage .coupon .code,[dir="rtl"] .stage .cc-code .mono{text-align:right}
.h1-l{display:block;font-size:clamp(1.15rem,1rem + 1vw,1.7rem);font-weight:500;letter-spacing:-.01em;color:#D9D5EC;margin-bottom:8px}
.stage h1:has(.giant){max-width:none;margin-bottom:14px}
.t-save{font-size:clamp(1.15rem,1rem + .8vw,1.6rem);font-weight:600;color:#A78BFA;margin:0 0 12px}
.stage .answer{color:#D9D5EC;background:none;border:0;padding:0;margin:0 0 24px;max-width:40em;font-size:clamp(1.02rem,1rem + .3vw,1.18rem);line-height:1.6}
.stage .answer strong{color:#EDEBF7}
.act{display:flex;gap:12px;flex-wrap:wrap}
.hb{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 30px;border-radius:12px;font:600 1.02rem/1.2 inherit;font-family:inherit;text-decoration:none;cursor:pointer;border:1.5px solid var(--go);text-align:center}
.hb-f{background:var(--go);color:#04140B}
.hb-f:hover{background:#5BE3AA;border-color:#5BE3AA;color:#04140B}
.hb-o{background:transparent;color:var(--go)}
.hb-o:hover{background:rgba(43,212,143,.12);color:var(--go)}
.hb.done{background:rgba(43,212,143,.22);color:var(--go)}

/* Bloc coupon et carte de code dans la scène */
.stage .coupon{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;background:none;border:0;box-shadow:none;padding:0;margin:6px 0 22px}
.stage .coupon>div:first-child{flex:1 1 100%}
.stage .coupon .code{flex:0 1 100%}
.stage .copybtn,.stage .copy{background:var(--go);color:#04140B;border:1.5px solid var(--go);border-radius:12px;min-height:56px;padding:0 30px;font-weight:600;font-size:1rem}
.stage .copybtn:hover,.stage .copy:hover{background:#5BE3AA}
.stage .btn-primary{background:var(--go);color:#04140B;border-color:var(--go);box-shadow:none;min-height:56px;padding-inline:30px}
.stage .btn-ghost{background:transparent;color:var(--go);border:1.5px solid var(--go);min-height:56px;padding-inline:30px}
.stage .go{background:var(--go);color:#04140B}
.stage .hero{display:block;padding:0}
.stage .hero h1{max-width:none}
.stage .codecard{background:none;border:0;box-shadow:none;padding:0;margin-top:clamp(20px,3vw,34px);max-width:none}
.stage .cc-top{justify-content:flex-start}
.stage .cc-label{color:#A78BFA!important;font-size:.9rem;letter-spacing:.04em;text-transform:none}
.stage .cc-code{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;background:none;border:0;padding:0;margin:0 0 16px}
.stage .cc-code .mono{flex:0 1 auto}
.stage .cc-links{display:flex;flex-wrap:wrap;gap:6px 26px;margin:0 0 14px;padding:0;list-style:none}
.stage .cc-links li{border:0;padding:0}
.stage .cc-links a{color:#D9D5EC;display:inline;font-weight:500}
.stage .cc-links small{color:#A9A5C4;margin-inline-start:6px}
.stage .codecard>.btn{width:auto!important}
.stage .chips li{background:rgba(255,255,255,.05);border-color:#2A2548;color:#C9C5E0}
.stage .chips li::before{color:var(--go)!important}

/* Bandeau de codes (décoratif, hors texte de la page) */
.tape{position:relative;z-index:1;overflow:hidden;white-space:nowrap;direction:ltr;border-top:1px solid rgba(237,235,247,.16);background:rgba(11,10,20,.7);color:#C9C5E0;font:500 .92rem "IBM Plex Mono",ui-monospace,monospace}
.tape::before{content:"DeepCharts START10   /   DeepDom START10   /   DeepGamma START10   /   Phidias BEFUNDED   /   MyFundedFutures BEFUNDED   /   FundedNext BEFUNDED   /   Earn2Trade BEFUNDED   /   DeepCharts START10   /   DeepDom START10   /   DeepGamma START10   /   Phidias BEFUNDED   /   MyFundedFutures BEFUNDED   /   FundedNext BEFUNDED   /   Earn2Trade BEFUNDED   /   DeepCharts START10   /   DeepDom START10   /   DeepGamma START10   /   Phidias BEFUNDED   /   MyFundedFutures BEFUNDED   /   FundedNext BEFUNDED   /   Earn2Trade BEFUNDED   /   DeepCharts START10   /   DeepDom START10   /   DeepGamma START10   /   Phidias BEFUNDED   /   MyFundedFutures BEFUNDED   /   FundedNext BEFUNDED   /   Earn2Trade BEFUNDED   /   ";display:inline-block;white-space:pre;padding-block:14px;animation:tape 60s linear infinite}
@keyframes tape{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tape::before{animation:none}}

/* Accueil et hubs : tuiles franches */
.block>h2{font-size:clamp(1.9rem,1.4rem + 2vw,3rem)}
.grid .card{border-radius:22px;padding:clamp(20px,2.2vw,30px);box-shadow:none;transition:transform .2s}
.grid .card:hover{transform:translateY(-3px)}
.grid .card h3{font-size:clamp(1.45rem,1.2rem + .9vw,2rem);font-weight:700;letter-spacing:-.03em}
.grid .card h3 a{color:inherit}
.grid .card:nth-child(4n+1){--ink:#fff;--ink-soft:#EFE9FF;--muted:#E4DBFF;--brand:#fff;background:#7C3AED;border-color:#7C3AED;color:#fff}
.grid .card:nth-child(4n+2){--ink:#EDEBF7;--ink-soft:#C9C5E0;--muted:#A9A5C4;--brand:#A78BFA;--surface:#1A1730;--border:#2A2548;background:#0B0A14;border-color:#0B0A14;color:#EDEBF7}
.grid .card:nth-child(4n+1) .pill,.grid .card:nth-child(4n+2) .pill{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28);color:#fff}
.grid .card:nth-child(4n+1) .copy,.grid .card:nth-child(4n+2) .copy{background:transparent;border-color:var(--go);color:var(--go)}
.grid .card:nth-child(4n+1) .copy{border-color:#fff;color:#fff}
.grid .card:nth-child(4n+1) .btn-primary,.grid .card:nth-child(4n+2) .btn-primary{background:var(--go);color:#04140B}

/* Tableaux en cartes sur mobile */
@media (max-width:640px){
  .tbl-scroll{overflow:visible;border:0;background:none}
  .tbl,.tbl tbody,.tbl tr,.tbl td{display:block;width:100%}
  table.tbl{background:none;border:0;min-width:0}
  .tbl tr:first-child:has(th){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .tbl tr{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin-bottom:12px}
  .tbl td{border:0!important;padding:4px 0!important;white-space:normal}
  .tbl td:first-child{font-size:1.08rem;padding-bottom:6px!important}
  .tbl td[data-l]{display:flex;justify-content:space-between;gap:16px;text-align:end}
  .tbl td[data-l]::before{content:attr(data-l);color:var(--muted);font:400 .88rem "IBM Plex Sans",system-ui,sans-serif;text-align:start;flex:0 0 42%}
  .tbl td[data-l]:has(.copy){flex-wrap:wrap}
  .mainnav{flex-wrap:wrap}
  .tbl td[colspan]{display:block;text-align:start}
  .stage-in{padding-inline:16px}
  .stage .act .hb,.stage .cta-row .btn,.stage .copybtn,.stage .cc-code .copy{flex:1 1 100%;width:100%}
  .stage-tall{min-height:0}
}
