/* Mr DXB — Glasshouse v2 (tri-color journey system) */
:root{
  --ground:#fafbfc;
  --panel:#f1f5f6;
  --card:#ffffff;
  --ink:#0c1b22;
  --ink-2:#3d4f57;
  --muted:#68797f;
  --line:rgba(12,27,34,.12);
  --line-soft:rgba(12,27,34,.07);
  /* the journey */
  --visit:#d97706;   --visit-deep:#92400e;  --visit-soft:rgba(217,119,6,.09);
  --move:#0f766e;    --move-deep:#0b5a54;   --move-soft:rgba(15,118,110,.09);
  --invest:#4f46e5;  --invest-deep:#3730a3; --invest-soft:rgba(79,70,229,.09);
  --journey:linear-gradient(90deg,#d97706,#0f766e,#4f46e5);
  --verify:#0e9f6e;
  --maxw:1160px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--ground);color:var(--ink);font-family:'Geist',-apple-system,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}
::selection{background:var(--ink);color:#fff}
.mono{font-family:'Geist Mono',monospace}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
a{color:inherit;text-decoration:none}
img,svg{display:block}

.btn{display:inline-flex;align-items:center;gap:9px;font-size:14.5px;font-weight:600;padding:13px 24px;border-radius:12px;cursor:pointer;transition:.18s;border:1px solid transparent}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 24px -12px rgba(12,27,34,.5)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink)}
.btn:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--move);outline-offset:3px;border-radius:8px}

/* NAV */
nav{position:sticky;top:0;z-index:60;background:rgba(250,251,252,.85);backdrop-filter:blur(16px) saturate(150%);border-bottom:1px solid var(--line-soft)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:70px}
.logo{font-weight:700;font-size:19px;letter-spacing:-.03em;display:flex;align-items:center;gap:9px}
.logo .mark{width:26px;height:26px;border-radius:8px;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:'Geist Mono',monospace;font-size:11px;font-weight:500;position:relative;overflow:hidden}
.logo .mark::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--journey)}
.nav-links{display:flex;align-items:center;gap:26px}
.nav-links a{font-size:14px;color:var(--ink-2);font-weight:500;transition:.2s;position:relative}
.nav-links a:hover{color:var(--ink)}
.nav-links a.on-visit{color:var(--visit-deep)}
.nav-links a.on-move{color:var(--move-deep)}
.nav-links a.on-invest{color:var(--invest-deep)}
.nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:currentColor}
.nav .btn{padding:9px 16px;border-radius:10px}

/* HERO (home) */
.hero{padding:100px 0 64px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(520px 320px at 12% -4%,var(--visit-soft),transparent 60%),
  radial-gradient(560px 340px at 55% -10%,var(--move-soft),transparent 62%),
  radial-gradient(620px 380px at 94% 0%,var(--invest-soft),transparent 62%)}
.hero-in{position:relative;max-width:900px}
.kicker{display:inline-flex;align-items:center;gap:14px;font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2);margin-bottom:30px}
.kicker .k{display:inline-flex;align-items:center;gap:7px}
.kicker .k i{width:8px;height:8px;border-radius:50%;display:block}
.kicker .k.v i{background:var(--visit)} .kicker .k.v{color:var(--visit-deep)}
.kicker .k.m i{background:var(--move)} .kicker .k.m{color:var(--move-deep)}
.kicker .k.i i{background:var(--invest)} .kicker .k.i{color:var(--invest-deep)}
.hero h1{font-size:clamp(46px,7.4vw,96px);font-weight:600;letter-spacing:-.045em;line-height:.98}
.uline{position:relative;white-space:nowrap}
.uline::after{content:"";position:absolute;left:0;bottom:.04em;height:4px;border-radius:2px;width:100%;background:var(--journey);transform:scaleX(0);transform-origin:left;animation:draw .9s .4s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes draw{to{transform:scaleX(1)}}
.hero .sub{font-size:clamp(17px,2vw,21px);color:var(--ink-2);max-width:620px;margin-top:30px;line-height:1.55}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:38px}
.trustrow{display:flex;gap:26px;flex-wrap:wrap;margin-top:42px}
.trustrow .t{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--ink-2);font-weight:500}

/* PAGE HERO (desk pages) */
.phero{padding:88px 0 60px;position:relative;overflow:hidden}
.phero .crumb{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:24px;display:inline-flex;align-items:center;gap:9px}
.phero .crumb i{width:8px;height:8px;border-radius:50%;display:block}
.phero h1{font-size:clamp(44px,6.8vw,84px);font-weight:600;letter-spacing:-.045em;line-height:1}
.phero .sub{font-size:clamp(17px,2vw,20px);color:var(--ink-2);max-width:600px;margin-top:26px}
.phero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.phero.v{background:linear-gradient(180deg,rgba(217,119,6,.07),transparent 70%)}
.phero.m{background:linear-gradient(180deg,rgba(15,118,110,.07),transparent 70%)}
.phero.i{background:linear-gradient(180deg,rgba(79,70,229,.07),transparent 70%)}
.phero.v .crumb{color:var(--visit-deep)} .phero.v .crumb i{background:var(--visit)}
.phero.m .crumb{color:var(--move-deep)} .phero.m .crumb i{background:var(--move)}
.phero.i .crumb{color:var(--invest-deep)} .phero.i .crumb i{background:var(--invest)}
.phero h1 em{font-style:normal}
.phero.v h1 em{color:var(--visit)}
.phero.m h1 em{color:var(--move)}
.phero.i h1 em{color:var(--invest)}

/* SECTIONS */
section{padding:88px 0;border-top:1px solid var(--line-soft)}
.overline{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;color:var(--move)}
.ov-v{color:var(--visit-deep)} .ov-m{color:var(--move-deep)} .ov-i{color:var(--invest-deep)}
h2{font-size:clamp(30px,4.4vw,52px);font-weight:600;letter-spacing:-.035em;line-height:1.04}
.sec-head{max-width:660px;margin-bottom:48px}
.sec-head p{color:var(--ink-2);font-size:17px;margin-top:18px}

/* LEDGER — collapsed fold */
.ledger-fold{border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:hidden;box-shadow:0 20px 44px -36px rgba(12,27,34,.3)}
.ledger-fold summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;padding:22px 26px;transition:background .15s;position:relative}
.ledger-fold summary::-webkit-details-marker{display:none}
.ledger-fold summary:hover{background:#fbfdfd}
.ledger-fold summary::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--journey)}
.ledger-fold summary .ttl{font-weight:600;font-size:17px;letter-spacing:-.01em}
.ledger-fold summary .hint{font-size:14px;color:var(--muted);margin-left:auto;display:flex;align-items:center;gap:10px}
.ledger-fold summary .chev{width:26px;height:26px;border-radius:8px;border:1px solid var(--line);display:grid;place-items:center;transition:transform .25s;color:var(--ink-2);font-size:13px}
.ledger-fold[open] summary .chev{transform:rotate(45deg)}
.ledger-fold[open] summary{border-bottom:1px solid var(--line-soft)}
.lrow{display:grid;grid-template-columns:56px 1.1fr 1.6fr auto;gap:22px;padding:24px 26px;border-bottom:1px solid var(--line-soft);align-items:start}
.lrow:last-of-type{border-bottom:none}
.lrow .no{font-family:'Geist Mono',monospace;font-size:13px;color:var(--muted);padding-top:2px;display:flex;align-items:center;gap:8px}
.lrow .no i{width:8px;height:8px;border-radius:50%;display:block}
.lrow.v .no i{background:var(--visit)} .lrow.m .no i{background:var(--move)}
.lrow.iv .no i{background:var(--invest)} .lrow.x .no i{background:#c2ccce}
.lrow .desk{font-weight:600;font-size:16px}
.lrow .desk small{display:block;font-weight:400;font-size:13px;color:var(--muted);margin-top:3px}
.lrow .how{font-size:15px;color:var(--ink-2);line-height:1.55}
.lrow .how b{color:var(--ink);font-weight:600}
.pill{font-family:'Geist Mono',monospace;font-size:11px;font-weight:500;padding:6px 11px;border-radius:999px;white-space:nowrap;align-self:start}
.pill.v{background:var(--visit-soft);color:var(--visit-deep);border:1px solid rgba(217,119,6,.3)}
.pill.m{background:var(--move-soft);color:var(--move-deep);border:1px solid rgba(15,118,110,.3)}
.pill.iv{background:var(--invest-soft);color:var(--invest-deep);border:1px solid rgba(79,70,229,.3)}
.pill.no{background:rgba(12,27,34,.04);color:var(--muted);border:1px dashed rgba(12,27,34,.3)}
.ledger-foot{padding:14px 26px;font-family:'Geist Mono',monospace;font-size:11.5px;color:var(--muted);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--panel)}

/* DESK CARDS (home) */
.desks{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.desk{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:0 0 26px;transition:.22s;overflow:hidden;display:flex;flex-direction:column}
.desk .bar{height:4px;width:100%}
.desk .inner{padding:26px 26px 0;flex:1}
.desk.v .bar{background:var(--visit)} .desk.m .bar{background:var(--move)} .desk.i .bar{background:var(--invest)}
.desk:hover{transform:translateY(-3px)}
.desk.v:hover{border-color:rgba(217,119,6,.5);box-shadow:0 26px 50px -36px rgba(217,119,6,.45)}
.desk.m:hover{border-color:rgba(15,118,110,.5);box-shadow:0 26px 50px -36px rgba(15,118,110,.45)}
.desk.i:hover{border-color:rgba(79,70,229,.5);box-shadow:0 26px 50px -36px rgba(79,70,229,.45)}
.desk .tag{font-family:'Geist Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.desk.v .tag{color:var(--visit-deep)} .desk.m .tag{color:var(--move-deep)} .desk.i .tag{color:var(--invest-deep)}
.desk h3{font-size:26px;font-weight:600;letter-spacing:-.03em;margin:13px 0 6px}
.desk .k{font-size:14px;font-weight:500;margin-bottom:13px}
.desk.v .k{color:var(--visit-deep)} .desk.m .k{color:var(--move-deep)} .desk.i .k{color:var(--invest-deep)}
.desk p{color:var(--ink-2);font-size:15px}
.desk ul{list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:9px}
.desk li{font-size:14px;color:var(--ink-2);display:flex;gap:10px;align-items:flex-start}
.desk li::before{content:"✓";font-size:12px;font-weight:700;margin-top:1px}
.desk.v li::before{color:var(--visit)} .desk.m li::before{color:var(--move)} .desk.i li::before{color:var(--invest)}
.desk .go{margin:20px 26px 0;font-size:14.5px;font-weight:600;display:inline-flex;align-items:center;gap:7px;transition:gap .2s}
.desk .go:hover{gap:11px}
.desk.v .go{color:var(--visit-deep)} .desk.m .go{color:var(--move-deep)} .desk.i .go{color:var(--invest-deep)}

/* SERVICE GRID (desk pages) */
.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.s{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 24px;transition:.2s}
.s:hover{transform:translateY(-2px)}
.s .n{font-family:'Geist Mono',monospace;font-size:11px;letter-spacing:.12em;margin-bottom:12px}
.s h4{font-size:17.5px;font-weight:600;letter-spacing:-.02em;margin-bottom:8px}
.s p{color:var(--ink-2);font-size:14.5px}
.svc.v .s .n{color:var(--visit-deep)} .svc.v .s:hover{border-color:rgba(217,119,6,.45)}
.svc.m .s .n{color:var(--move-deep)} .svc.m .s:hover{border-color:rgba(15,118,110,.45)}
.svc.i .s .n{color:var(--invest-deep)} .svc.i .s:hover{border-color:rgba(79,70,229,.45)}

/* PRICING STRIP (desk pages) */
.paystrip{border-radius:18px;padding:34px 32px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
.paystrip.v{background:var(--visit-soft);border:1px solid rgba(217,119,6,.25)}
.paystrip.m{background:var(--move-soft);border:1px solid rgba(15,118,110,.25)}
.paystrip.i{background:var(--invest-soft);border:1px solid rgba(79,70,229,.25)}
.paystrip .lbl{font-family:'Geist Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.paystrip.v .lbl{color:var(--visit-deep)} .paystrip.m .lbl{color:var(--move-deep)} .paystrip.i .lbl{color:var(--invest-deep)}
.paystrip .txt{font-size:16.5px;line-height:1.55;color:var(--ink)}
.paystrip .txt b{font-weight:600}
.paystrip a{font-size:14px;font-weight:600;white-space:nowrap}
.paystrip.v a{color:var(--visit-deep)} .paystrip.m a{color:var(--move-deep)} .paystrip.i a{color:var(--invest-deep)}

/* GUARD LIST (what we protect you from) */
.guard{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.g{border-top:2px solid var(--ink);padding-top:20px}
.g h4{font-size:16.5px;font-weight:600;margin-bottom:8px;letter-spacing:-.01em}
.g p{color:var(--ink-2);font-size:14.5px}
.g .src{display:inline-flex;margin-top:10px;font-family:'Geist Mono',monospace;font-size:10.5px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 9px}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{border-top:2px solid var(--ink);padding-top:20px}
.step .n{font-family:'Geist Mono',monospace;font-size:12px}
.step h4{font-size:18px;font-weight:600;letter-spacing:-.02em;margin:11px 0 7px}
.step p{color:var(--ink-2);font-size:15px}

/* EVIDENCE (home) */
.evidence{background:var(--ink);color:#eef4f4;border-radius:24px;padding:54px 46px}
.evidence h2{color:#fff}
.ev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:42px}
.ev .n{font-size:clamp(34px,4vw,52px);font-weight:600;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.ev.v .n{color:#fbbf24} .ev.m .n{color:#5eead4} .ev.i .n{color:#a5b4fc}
.ev .l{font-size:14.5px;color:#9fb5b2;margin-top:6px}
.ev .src{display:inline-flex;align-items:center;gap:6px;font-family:'Geist Mono',monospace;font-size:11px;margin-top:12px;padding:4px 9px;border-radius:999px}
.ev.v .src{color:#fbbf24;border:1px solid rgba(251,191,36,.35)}
.ev.m .src{color:#5eead4;border:1px solid rgba(94,234,212,.35)}
.ev.i .src{color:#a5b4fc;border:1px solid rgba(165,180,252,.35)}

/* NEXT CHAPTER (cross-links) */
.next{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.nx{border:1px solid var(--line);border-radius:18px;padding:28px;background:var(--card);transition:.2s;display:block}
.nx:hover{transform:translateY(-2px)}
.nx .t{font-family:'Geist Mono',monospace;font-size:11px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:10px}
.nx h4{font-size:22px;font-weight:600;letter-spacing:-.025em;margin-bottom:6px}
.nx p{color:var(--ink-2);font-size:14.5px}
.nx.v:hover{border-color:rgba(217,119,6,.5)} .nx.v .t{color:var(--visit-deep)}
.nx.m:hover{border-color:rgba(15,118,110,.5)} .nx.m .t{color:var(--move-deep)}
.nx.i:hover{border-color:rgba(79,70,229,.5)} .nx.i .t{color:var(--invest-deep)}

/* DISPATCH */
.dispatch{border:1px solid var(--line);border-radius:24px;padding:56px 40px;text-align:center;position:relative;overflow:hidden;background:var(--card)}
.dispatch::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--journey)}
.dispatch h2{font-size:clamp(28px,4vw,44px)}
.dispatch p{color:var(--ink-2);font-size:17px;max-width:480px;margin:16px auto 30px}
.form{display:flex;gap:10px;max-width:460px;margin:0 auto}
.form input{flex:1;background:var(--ground);border:1px solid var(--line);border-radius:12px;padding:13px 18px;color:var(--ink);font-size:15px;font-family:inherit;outline:none;transition:.2s}
.form input:focus{border-color:var(--move)}
.form input::placeholder{color:var(--muted)}
.dispatch small{display:block;color:var(--muted);font-size:13px;margin-top:14px}

/* FOOTER */
footer{border-top:1px solid var(--line-soft);padding:54px 0 38px;margin-top:88px}
.foot-in{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
.foot-brand p{color:var(--muted);font-size:14px;max-width:240px;margin-top:10px}
.foot-cols{display:flex;gap:56px;flex-wrap:wrap}
.foot-col h5{font-family:'Geist Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.foot-col a{display:block;color:var(--ink-2);font-size:14px;margin-bottom:10px;transition:.2s}
.foot-col a:hover{color:var(--ink)}
.foot-bottom{margin-top:44px;padding-top:22px;border-top:1px solid var(--line-soft);display:flex;justify-content:space-between;color:var(--muted);font-size:13px;flex-wrap:wrap;gap:8px}

/* forms: honeypot + states */
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.form-done{font-size:16px;font-weight:600;color:var(--ink);padding:13px 0}
.shake{animation:shake .4s ease}
@keyframes shake{20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}

/* ---- TACTILE LAYER ---- */
nav{transition:box-shadow .25s ease,background .25s ease}
nav.scrolled{box-shadow:0 8px 30px -18px rgba(12,27,34,.25);background:rgba(250,251,252,.94)}

.rv{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}

.btn{will-change:transform}
.btn:active{transform:translateY(0) scale(.97)}
.btn-primary{position:relative;overflow:hidden}
.btn-primary::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.18),transparent);transform:skewX(-20deg);transition:left .45s ease}
.btn-primary:hover::after{left:120%}

.desk,.s,.nx{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s cubic-bezier(.2,.7,.2,1),border-color .3s ease}
.s:hover{box-shadow:0 18px 40px -30px rgba(12,27,34,.35)}
.desk .bar{transform-origin:left;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.desk:hover .bar{transform:scaleX(1.0);filter:saturate(1.3)}

.uline::after{background-size:200% 100%;animation:draw .9s .4s cubic-bezier(.2,.7,.2,1) forwards,shimmer 5s 1.6s linear infinite}
@keyframes shimmer{0%{background-position:0% 0}100%{background-position:200% 0}}

.ledger-fold summary .chev{transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color .2s}
.ledger-fold summary:hover .chev{border-color:var(--ink)}
.ledger-fold .lrow{animation:none}
.ledger-fold[open] .lrow{animation:foldin .45s cubic-bezier(.2,.7,.2,1) backwards}
.ledger-fold[open] .lrow:nth-of-type(2){animation-delay:.06s}
.ledger-fold[open] .lrow:nth-of-type(3){animation-delay:.12s}
.ledger-fold[open] .lrow:nth-of-type(4){animation-delay:.18s}
.ledger-fold[open] .lrow:nth-of-type(5){animation-delay:.24s}
@keyframes foldin{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

.form input{transition:border-color .2s ease,box-shadow .2s ease}
.form input:focus{box-shadow:0 0 0 4px rgba(15,118,110,.12)}
.pill{transition:transform .2s ease}
.lrow:hover .pill{transform:translateY(-1px)}
.go svg{transition:transform .2s}

/* ==================== DEPTH & COLOUR LAYER ==================== */
:root{
  --journey-soft:linear-gradient(90deg,rgba(217,119,6,.5),rgba(15,118,110,.5),rgba(79,70,229,.5));
}

/* film grain over everything, barely-there */
body::after{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.03;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}

/* hero: animated aurora mesh + floating orbs */
.hero::before{background:
  radial-gradient(560px 360px at 10% -6%,rgba(217,119,6,.18),transparent 58%),
  radial-gradient(620px 380px at 52% -12%,rgba(15,118,110,.16),transparent 60%),
  radial-gradient(680px 420px at 92% -2%,rgba(79,70,229,.2),transparent 60%);
  animation:aurora 16s ease-in-out infinite alternate}
@keyframes aurora{
  0%{transform:translate3d(0,0,0) scale(1)}
  100%{transform:translate3d(-2.5%,2%,0) scale(1.06)}
}
.orbs{position:absolute;inset:0;pointer-events:none;z-index:0}
.orb{position:absolute;border-radius:50%;filter:blur(64px);opacity:.4;will-change:transform}
.orb.o1{width:340px;height:340px;left:-90px;top:16%;background:radial-gradient(circle,rgba(217,119,6,.55),transparent 65%);animation:float1 18s ease-in-out infinite alternate}
.orb.o2{width:300px;height:300px;right:14%;top:-70px;background:radial-gradient(circle,rgba(15,118,110,.5),transparent 65%);animation:float2 14s ease-in-out infinite alternate}
.orb.o3{width:420px;height:420px;right:-140px;top:34%;background:radial-gradient(circle,rgba(79,70,229,.5),transparent 65%);animation:float3 21s ease-in-out infinite alternate}
@keyframes float1{to{transform:translate(46px,-30px) scale(1.12)}}
@keyframes float2{to{transform:translate(-34px,42px) scale(.92)}}
@keyframes float3{to{transform:translate(-52px,-38px) scale(1.08)}}

/* hero entrance */
.hero-in>*{animation:rise .7s cubic-bezier(.2,.7,.2,1) backwards}
.hero-in>*:nth-child(1){animation-delay:.05s}
.hero-in>*:nth-child(2){animation-delay:.14s}
.hero-in>*:nth-child(3){animation-delay:.24s}
.hero-in>*:nth-child(4){animation-delay:.34s}
.hero-in>*:nth-child(5){animation-delay:.44s}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

/* gradient text */
.gx{background:linear-gradient(100deg,#d97706 0%,#0f766e 50%,#4f46e5 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.phero.v h1 em{background:linear-gradient(120deg,#f59e0b,#b45309);-webkit-background-clip:text;background-clip:text;color:transparent}
.phero.m h1 em{background:linear-gradient(120deg,#14b8a6,#0b5a54);-webkit-background-clip:text;background-clip:text;color:transparent}
.phero.i h1 em{background:linear-gradient(120deg,#818cf8,#3730a3);-webkit-background-clip:text;background-clip:text;color:transparent}

/* desk-page hero meshes, deeper */
.phero.v{background:radial-gradient(620px 400px at 82% -10%,rgba(217,119,6,.2),transparent 60%),radial-gradient(460px 300px at 6% 10%,rgba(217,119,6,.08),transparent 55%),linear-gradient(180deg,rgba(217,119,6,.05),transparent 70%)}
.phero.m{background:radial-gradient(620px 400px at 82% -10%,rgba(15,118,110,.2),transparent 60%),radial-gradient(460px 300px at 6% 10%,rgba(15,118,110,.08),transparent 55%),linear-gradient(180deg,rgba(15,118,110,.05),transparent 70%)}
.phero.i{background:radial-gradient(620px 400px at 82% -10%,rgba(79,70,229,.2),transparent 60%),radial-gradient(460px 300px at 6% 10%,rgba(79,70,229,.08),transparent 55%),linear-gradient(180deg,rgba(79,70,229,.05),transparent 70%)}

/* primary button: ink→teal gradient with drift */
.btn-primary{background:linear-gradient(135deg,#0c1b22 0%,#11333a 55%,#0f766e 130%);background-size:160% 160%;transition:background-position .4s ease,transform .18s ease,box-shadow .3s ease}
.btn-primary:hover{background-position:85% 60%;box-shadow:0 14px 30px -14px rgba(15,118,110,.55)}

/* desk cards: tinted gradient interiors + colored depth */
.desk{border:1px solid rgba(12,27,34,.09)}
.desk.v{background:linear-gradient(180deg,rgba(217,119,6,.08),#ffffff 52%)}
.desk.m{background:linear-gradient(180deg,rgba(15,118,110,.08),#ffffff 52%)}
.desk.i{background:linear-gradient(180deg,rgba(79,70,229,.08),#ffffff 52%)}
.desk .bar{height:5px;background-size:200% 100%!important}
.desk.v .bar{background:linear-gradient(90deg,#f59e0b,#d97706,#92400e)}
.desk.m .bar{background:linear-gradient(90deg,#2dd4bf,#0f766e,#0b5a54)}
.desk.i .bar{background:linear-gradient(90deg,#818cf8,#4f46e5,#3730a3)}

/* service cards: static gradient depth, no hover lift (non-interactive) */
.s{transition:none;transform:none}
.s:hover{transform:none;box-shadow:none}
.svc.v .s{border-color:rgba(217,119,6,.2);background:linear-gradient(180deg,rgba(217,119,6,.05),#fff 46%)}
.svc.m .s{border-color:rgba(15,118,110,.2);background:linear-gradient(180deg,rgba(15,118,110,.05),#fff 46%)}
.svc.i .s{border-color:rgba(79,70,229,.2);background:linear-gradient(180deg,rgba(79,70,229,.05),#fff 46%)}
.svc.v .s:hover,.svc.m .s:hover,.svc.i .s:hover{border-color:inherit}

/* ledger: glass over a journey wash, gradient border */
#paid{background:
  radial-gradient(560px 320px at 14% 20%,rgba(217,119,6,.07),transparent 60%),
  radial-gradient(560px 320px at 50% 90%,rgba(15,118,110,.07),transparent 60%),
  radial-gradient(560px 320px at 88% 20%,rgba(79,70,229,.08),transparent 60%)}
.ledger-fold{border:1px solid transparent;background:
  linear-gradient(rgba(255,255,255,.86),rgba(255,255,255,.86)) padding-box,
  var(--journey-soft) border-box;
  backdrop-filter:blur(14px) saturate(150%);
  box-shadow:0 30px 70px -44px rgba(12,27,34,.45)}
.ledger-fold summary:hover{background:rgba(255,255,255,.6)}

/* evidence: deep gradient + glow orbs */
.evidence{position:relative;overflow:hidden;background:linear-gradient(135deg,#0c1b22 0%,#0e2b33 48%,#171d3f 100%);border:1px solid rgba(255,255,255,.06)}
.evidence::before{content:"";position:absolute;width:420px;height:420px;left:-130px;top:-160px;border-radius:50%;background:radial-gradient(circle,rgba(251,191,36,.22),transparent 65%);filter:blur(30px);animation:float2 16s ease-in-out infinite alternate}
.evidence::after{content:"";position:absolute;width:460px;height:460px;right:-150px;bottom:-190px;border-radius:50%;background:radial-gradient(circle,rgba(129,140,248,.24),transparent 65%);filter:blur(30px);animation:float1 19s ease-in-out infinite alternate}
.evidence>*{position:relative;z-index:1}

/* dispatch: gradient border + aurora interior */
.dispatch{border:1px solid transparent;background:
  linear-gradient(#ffffff,#ffffff) padding-box,
  var(--journey-soft) border-box}
.dispatch::before{display:none}
.dispatch{box-shadow:0 30px 70px -48px rgba(12,27,34,.4)}
#dispatch .dispatch{background:
  linear-gradient(#fff,#fff) padding-box,
  var(--journey-soft) border-box;
  position:relative;overflow:hidden}
.dispatch .aurora{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(420px 240px at 18% 0%,rgba(217,119,6,.08),transparent 60%),
  radial-gradient(420px 240px at 82% 0%,rgba(79,70,229,.09),transparent 60%),
  radial-gradient(420px 240px at 50% 110%,rgba(15,118,110,.08),transparent 60%)}
.dispatch>*{position:relative}

/* ticker */
.ticker{position:relative;overflow:hidden;margin-top:56px}
.ticker::before,.ticker::after{content:"";position:absolute;left:0;right:0;height:1px;background:var(--journey-soft)}
.ticker::before{top:0}.ticker::after{bottom:0}
.ticker .track{display:inline-flex;gap:52px;white-space:nowrap;padding:13px 0;font-family:'Geist Mono',monospace;font-size:12.5px;color:var(--muted);animation:marq 30s linear infinite}
.ticker:hover .track{animation-play-state:paused}
.ticker b{font-weight:500}
.ticker .tv{color:var(--visit-deep)}.ticker .tm{color:var(--move-deep)}.ticker .ti{color:var(--invest-deep)}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* pay strips: gradient edges */
.paystrip.v{background:linear-gradient(120deg,rgba(217,119,6,.14),rgba(217,119,6,.05) 60%)}
.paystrip.m{background:linear-gradient(120deg,rgba(15,118,110,.14),rgba(15,118,110,.05) 60%)}
.paystrip.i{background:linear-gradient(120deg,rgba(79,70,229,.14),rgba(79,70,229,.05) 60%)}

/* guards: colored tops on desk pages */
.svc.v~.guard .g{border-color:var(--visit)}
.phero.m~section .guard .g{border-top-color:var(--move)}
.phero.i~section .guard .g{border-top-color:var(--invest)}

@media (prefers-reduced-motion: reduce){
  .rv{opacity:1;transform:none;transition:none}
  .uline::after{animation:none;transform:scaleX(1)}
  .ledger-fold[open] .lrow{animation:none}
  .btn-primary::after{display:none}
  *{transition-duration:.01ms!important;animation-duration:.01ms!important}
}

@media(max-width:900px){
  .nav-links a:not(.btn){display:none}
  .desks,.steps,.ev-grid,.svc,.guard,.next{grid-template-columns:1fr}
  .hero{padding:68px 0 48px}
  .phero{padding:60px 0 44px}
  section{padding:60px 0}
  .lrow{grid-template-columns:1fr;gap:10px;padding:20px}
  .paystrip{grid-template-columns:1fr;gap:14px}
  .form{flex-direction:column}
  .form .btn{justify-content:center}
  .evidence{padding:38px 24px}
  .ledger-fold summary .hint span{display:none}
}

/* THE FRIDAY DXB — issues */
.issue-hero{padding:84px 0 40px;position:relative;overflow:hidden}
.issue-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(520px 300px at 8% -6%,var(--visit-soft),transparent 60%),
  radial-gradient(560px 320px at 50% -12%,var(--move-soft),transparent 62%),
  radial-gradient(600px 340px at 92% -2%,var(--invest-soft),transparent 62%)}
.issue-hero .wrap{position:relative}
.issue-meta{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2);display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.issue-meta .no{color:var(--invest-deep)}
.issue-hero h1{font-size:clamp(30px,4.6vw,46px);letter-spacing:-.03em;line-height:1.14;max-width:820px}
.issue-hero .standfirst{color:var(--ink-2);font-size:17.5px;max-width:680px;margin-top:16px}
.article{max-width:760px;margin:0 auto;padding:12px 32px 40px}
.article section{padding:36px 0;border-top:1px solid var(--line-soft)}
.article section:first-of-type{border-top:none}
.article .desk-label{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.13em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;margin-bottom:14px}
.article .desk-label i{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--ink)}
.article .desk-label.v{color:var(--visit-deep)}.article .desk-label.v i{background:var(--visit)}
.article .desk-label.m{color:var(--move-deep)}.article .desk-label.m i{background:var(--move)}
.article .desk-label.i{color:var(--invest-deep)}.article .desk-label.i i{background:var(--invest)}
.article h2{font-size:26px;letter-spacing:-.02em;line-height:1.25;margin-bottom:16px}
.article h3{font-size:17px;margin:26px 0 8px}
.article p{color:var(--ink-2);font-size:16px;margin-bottom:14px}
.article p strong{color:var(--ink)}
.article ul{margin:0 0 14px 20px;color:var(--ink-2)}
.article li{margin-bottom:8px}
.article a{color:var(--invest-deep);border-bottom:1px solid rgba(79,70,229,.3)}
.article a:hover{border-bottom-color:var(--invest-deep)}
.article sup{font-size:11px;line-height:0}
.article sup a{border-bottom:none;color:var(--muted);font-family:'Geist Mono',monospace}
.article sup a:hover{color:var(--invest-deep)}
.newsitem{padding:18px 0;border-bottom:1px dashed var(--line-soft)}
.newsitem:last-child{border-bottom:none}
.newsitem .wm{display:block;margin-top:8px;padding:10px 14px;background:var(--panel);border-radius:10px;font-size:14.5px;color:var(--ink-2)}
.newsitem .wm b{color:var(--ink);font-weight:600}
.sources{background:var(--panel);border-radius:16px;padding:26px 28px;margin-top:8px}
.sources h4{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-2);margin-bottom:12px}
.sources ol{margin-left:18px;font-size:13.5px;color:var(--muted)}
.sources li{margin-bottom:6px;overflow-wrap:anywhere}
.sources a{color:var(--ink-2);border-bottom:1px solid var(--line)}
.sources a:hover{color:var(--ink)}
.issue-cta{border:1px solid var(--line);border-radius:16px;padding:26px 28px;margin:26px 0;background:var(--card)}
.issue-cta p{margin-bottom:14px}
.issue-list{display:grid;gap:16px;max-width:760px;margin:0 auto;padding:0 32px 60px}
.issue-card{border:1px solid var(--line);border-radius:16px;padding:26px 28px;background:var(--card);transition:.18s;display:block}
.issue-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px -20px rgba(12,27,34,.35);border-color:var(--ink)}
.issue-card .no{font-family:'Geist Mono',monospace;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--invest-deep)}
.issue-card h3{font-size:20px;letter-spacing:-.02em;margin:8px 0 6px}
.issue-card p{color:var(--ink-2);font-size:15px}
.issue-card .date{font-family:'Geist Mono',monospace;font-size:12.5px;color:var(--muted);margin-top:12px;display:block}
@media(max-width:900px){.article{padding:12px 24px 32px}.issue-hero{padding:64px 0 32px}}
