/* Travelling menu + motion layer (see pub-wow.js). Colours come from the premium palette variables. */
html,body{overflow-x:clip!important}

/* the menu travels: it floats as a glass pill when you scroll */
header.top{top:0;margin:0 auto;width:100%;border-radius:0;transition:margin .55s cubic-bezier(.2,.8,.2,1),width .55s cubic-bezier(.2,.8,.2,1),border-radius .55s cubic-bezier(.2,.8,.2,1),box-shadow .5s,background .4s,top .5s cubic-bezier(.2,.8,.2,1)}
header.top.is-float{top:10px;width:min(1180px,calc(100% - 20px));border-radius:999px;border:1px solid var(--glass-bd)!important;box-shadow:0 26px 70px -26px rgba(10,20,80,.55),0 0 0 1px rgba(255,255,255,.04) inset!important}
header.top.is-float .wrap{padding-top:6px;padding-bottom:6px}
header.top .wrap{transition:padding .5s cubic-bezier(.2,.8,.2,1)}
header.top .brand{transition:transform .5s cubic-bezier(.2,.8,.2,1)}header.top.is-float .brand{transform:scale(.92)}
.nav{position:relative}
.nav a:not(.pill){position:relative;z-index:1;transition:color .25s}
.nav a.on{color:var(--fg)!important}
.nav a[data-dup]{display:none!important}
.wow-ind{position:absolute;z-index:0;left:0;top:50%;height:calc(100% - 8px);margin-top:calc((100% - 8px) / -2);width:0;border-radius:999px;pointer-events:none;opacity:0;
  background:linear-gradient(135deg,color-mix(in srgb,var(--ac) 22%,transparent),color-mix(in srgb,var(--vio) 16%,transparent));box-shadow:0 8px 24px -10px color-mix(in srgb,var(--ac) 80%,transparent),0 0 0 1px color-mix(in srgb,var(--ac) 38%,transparent) inset;
  transition:transform .55s cubic-bezier(.34,1.45,.64,1),width .55s cubic-bezier(.34,1.45,.64,1),opacity .3s,filter .3s}
.wow-ind.hov{filter:brightness(1.12) saturate(1.2)}
.wow-ind.jump{animation:wowJump .7s cubic-bezier(.2,.8,.2,1)}
@keyframes wowJump{40%{filter:brightness(1.5);box-shadow:0 0 0 6px color-mix(in srgb,var(--ac) 25%,transparent),0 8px 30px color-mix(in srgb,var(--ac) 90%,transparent)}}
.wow-prog{position:absolute;left:18px;right:18px;bottom:-1px;height:2px;border-radius:2px;pointer-events:none;background:linear-gradient(90deg,var(--cy),var(--ac),var(--vio));transform-origin:left;transform:scaleX(var(--p,0));opacity:.95;box-shadow:0 0 12px color-mix(in srgb,var(--ac) 70%,transparent)}
header.top:not(.is-float) .wow-prog{left:0;right:0;bottom:0}

/* a jump: a scan line crosses the screen, the section arrives */
.wow-scan{position:fixed;left:0;right:0;top:-6%;height:120px;z-index:80;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--ac) 28%,transparent) 48%,color-mix(in srgb,var(--cy) 55%,transparent) 50%,color-mix(in srgb,var(--vio) 28%,transparent) 52%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.wow-scan.go{animation:wowScan .85s cubic-bezier(.5,.1,.2,1)}
@keyframes wowScan{0%{opacity:0;top:-8%}12%{opacity:1}88%{opacity:1}100%{opacity:0;top:104%}}
section.wow-arrive>.wrap,section.wow-arrive>.narrow{animation:wowArrive 1s cubic-bezier(.2,.8,.2,1)}
@keyframes wowArrive{0%{opacity:.35;transform:translateY(38px) scale(.975);filter:blur(10px)}60%{filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
section.wow-arrive .kicker{animation:wowPop .9s cubic-bezier(.34,1.56,.64,1)}
@keyframes wowPop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}

/* headlines rise word by word */
.wow-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.wow-w>span{display:inline-block;transform:translateY(112%) rotate(3deg);opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1) calc(var(--i,0)*60ms),opacity .7s ease calc(var(--i,0)*60ms)}
.pubx-s.ds-in .wow-w>span{transform:none;opacity:1}
.wow-w em{display:inline-block}

/* depth: tilt, lean-in, a soft light that follows the cursor */
.tilting{transition:transform .12s linear!important;will-change:transform}
.btn.leaning{transition:translate .15s ease-out}
.wow-orb{position:fixed;left:0;top:0;width:380px;height:380px;z-index:-1;pointer-events:none;border-radius:50%;opacity:0;transition:opacity .5s;background:radial-gradient(circle,color-mix(in srgb,var(--ac) 30%,transparent),color-mix(in srgb,var(--vio) 12%,transparent) 45%,transparent 70%);filter:blur(24px);will-change:transform}
.wow-orb.on{opacity:.9}
body:before{transform:translate3d(0,calc(var(--sy,0) * -.03px),0)}

/* page in / out */
body.wow-in #main{animation:wowPage .8s cubic-bezier(.2,.8,.2,1) both}
@keyframes wowPage{from{opacity:0;filter:blur(8px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}

@media (max-width:900px){header.top.is-float{top:8px;width:calc(100% - 16px)}.wow-orb{display:none}}
@media (prefers-reduced-motion:reduce){header.top,header.top .wrap,.wow-ind,.wow-w>span{transition:none!important}.wow-scan,section.wow-arrive>.wrap,section.wow-arrive .kicker,body.wow-in #main{animation:none!important}.wow-w>span{transform:none;opacity:1}}


/* the whole menu on one line from 1001px up (the original switched to a drawer below 1320px because eleven links did not fit) */
@media (min-width:1001px){
  .menu-btn{display:none!important}
  .nav{position:static!important;inset:auto!important;flex-direction:row!important;align-items:center!important;gap:2px!important;padding:0!important;background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:0!important;transform:none!important;opacity:1!important;pointer-events:auto!important}
  .nav a,.nav .wow-dd>button{padding:8px 12px!important;font-size:.88rem!important}
  .nav .pill{margin:0 0 0 8px!important}
}
@media (max-width:1000px){
  .menu-btn{display:block!important}
  .nav{background:var(--hdr)!important;-webkit-backdrop-filter:blur(20px) saturate(1.5)!important;backdrop-filter:blur(20px) saturate(1.5)!important;border:1px solid var(--glass-bd)!important;border-radius:22px!important;margin:0 10px}
  .wow-dd{display:contents}.wow-dd>button{display:none}.wow-dd-m{display:contents}
  .wow-ind{display:none}
}
.nav a:not(.pill),.nav .wow-dd>button{color:var(--fg-2)}
.nav a:not(.pill):hover,.nav .wow-dd>button:hover,.nav a[aria-current="page"]{color:var(--fg)!important;background:transparent!important}
.nav .pill{background:var(--g-up)!important;color:var(--btn-mint-tx)!important;border:0!important;box-shadow:0 12px 28px -14px color-mix(in srgb,var(--mint) 90%,transparent),0 1px 0 rgba(255,255,255,.4) inset;position:relative;overflow:hidden}
.nav .pill .dot{background:var(--btn-mint-tx)!important}
.wow-dd{position:relative}
.wow-dd>button{display:inline-flex;align-items:center;gap:6px;background:none;border:0;font:inherit;font-weight:500;border-radius:999px;cursor:pointer;position:relative;z-index:1;transition:color .25s}
.wow-dd>button svg{width:13px;height:13px;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.wow-dd:hover>button svg,.wow-dd.open>button svg{transform:rotate(180deg)}
.wow-dd-m{position:absolute;top:calc(100% + 12px);left:50%;min-width:190px;padding:8px;border-radius:20px;display:grid;gap:2px;background:var(--hdr);-webkit-backdrop-filter:blur(22px) saturate(1.6);backdrop-filter:blur(22px) saturate(1.6);border:1px solid var(--glass-bd);box-shadow:0 30px 70px -24px rgba(10,20,80,.6);opacity:0;transform:translate(-50%,10px) scale(.94);transform-origin:top center;pointer-events:none;transition:opacity .25s,transform .4s cubic-bezier(.34,1.56,.64,1)}
.wow-dd:hover .wow-dd-m,.wow-dd:focus-within .wow-dd-m,.wow-dd.open .wow-dd-m{opacity:1;transform:translate(-50%,0) scale(1);pointer-events:auto}
.wow-dd:before{content:"";position:absolute;left:-10px;right:-10px;top:100%;height:16px}
.wow-dd-m a{display:block;padding:10px 14px!important;border-radius:14px!important;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .4s cubic-bezier(.2,.8,.2,1),background .2s}
.wow-dd:hover .wow-dd-m a,.wow-dd.open .wow-dd-m a{opacity:1;transform:none;transition-delay:calc(var(--i,0)*45ms)}
.wow-dd-m a:hover{background:color-mix(in srgb,var(--ac) 14%,transparent)!important}

/* every tile that opens details */
.ds-clk{cursor:pointer;transition:transform .25s cubic-bezier(.2,.7,.1,1),box-shadow .3s,border-color .25s}
.ds-clk:hover{transform:translateY(-3px);box-shadow:0 20px 44px -22px color-mix(in srgb,var(--ac) 70%,transparent)}
.ds-clk:focus-visible{outline:2px solid var(--ac);outline-offset:3px}
.wow-ind{background:linear-gradient(135deg,color-mix(in srgb,var(--ac) 30%,transparent),color-mix(in srgb,var(--vio) 24%,transparent))!important;box-shadow:0 8px 24px -10px color-mix(in srgb,var(--ac) 90%,transparent),0 0 0 1px color-mix(in srgb,var(--ac) 48%,transparent) inset!important}


/* command palette */
.wow-kb{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;border:1px solid var(--glass-bd);background:var(--glass);color:var(--muted);font:600 .8rem var(--sans);cursor:pointer;transition:border-color .25s,color .25s,transform .25s}
.wow-kb:hover{color:var(--fg);border-color:color-mix(in srgb,var(--ac) 60%,transparent);transform:translateY(-1px)}
.wow-kb svg{width:15px;height:15px}.wow-kb kbd,.wow-k kbd{font:600 10px var(--mono);padding:2px 6px;border-radius:6px;border:1px solid var(--line-2);background:var(--panel-2);color:var(--muted)}
@media (max-width:1100px){.wow-kb span,.wow-kb kbd{display:none}.wow-kb{padding:8px 10px}}
.wow-k{position:fixed;inset:0;z-index:9500;display:grid;place-items:start center;padding:12vh 14px 0}
.wow-k[hidden]{display:none}
.wow-k-bk{position:absolute;inset:0;background:color-mix(in srgb,var(--ink) 55%,transparent);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:backdrop-filter .35s,-webkit-backdrop-filter .35s,opacity .3s;opacity:0}
.wow-k.in .wow-k-bk{opacity:1;-webkit-backdrop-filter:blur(12px) saturate(1.3);backdrop-filter:blur(12px) saturate(1.3)}
.wow-k-p{position:relative;width:min(640px,100%);border-radius:26px;background:var(--hdr);-webkit-backdrop-filter:blur(26px) saturate(1.6);backdrop-filter:blur(26px) saturate(1.6);border:1px solid var(--glass-bd);box-shadow:0 60px 120px -30px rgba(10,20,90,.7),0 0 0 1px rgba(255,255,255,.05) inset;overflow:hidden;opacity:0;transform:translateY(-18px) scale(.94);filter:blur(8px);transition:opacity .3s,transform .5s cubic-bezier(.34,1.45,.64,1),filter .4s}
.wow-k.in .wow-k-p{opacity:1;transform:none;filter:none}
.wow-k-p:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:var(--edge);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.wow-k-in{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line-2)}.wow-k-in svg{width:20px;height:20px;color:var(--ac);flex:none}
.wow-k-in input{flex:1;min-width:0;background:none!important;border:0!important;box-shadow:none!important;outline:none;color:var(--fg)!important;font:500 1.1rem var(--sans);padding:4px 0}
.wow-k-l{list-style:none;margin:0;padding:8px;max-height:52vh;overflow:auto}
.wow-k-l li{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:11px 14px;border-radius:16px;cursor:pointer;opacity:0;transform:translateY(8px);animation:wowKi .45s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i,0)*28ms + 60ms)}
@keyframes wowKi{to{opacity:1;transform:none}}
.wow-k-l li .k{grid-row:1/3;font:700 9.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--ac) 14%,transparent);color:var(--ac);min-width:62px;text-align:center}
.wow-k-l li b{font-size:.98rem;color:var(--fg)}.wow-k-l li em{grid-column:2;font-style:normal;font-size:.8rem;color:var(--muted)}.wow-k-l li i{grid-row:1/3;grid-column:3;font-style:normal;color:var(--faint);opacity:0;transition:opacity .2s,transform .2s}
.wow-k-l li.on{background:linear-gradient(135deg,color-mix(in srgb,var(--ac) 20%,transparent),color-mix(in srgb,var(--vio) 14%,transparent));box-shadow:0 0 0 1px color-mix(in srgb,var(--ac) 40%,transparent) inset}.wow-k-l li.on i{opacity:1;transform:translateX(3px);color:var(--ac)}
.wow-k-l li.none{display:block;cursor:default;color:var(--muted);animation:none;opacity:1;transform:none}
.wow-k-f{display:flex;gap:18px;padding:11px 18px;border-top:1px solid var(--line-2);font-size:.74rem;color:var(--muted)}.wow-k-f span{display:inline-flex;align-items:center;gap:5px}
body.wow-kopen{overflow:hidden}
@media (prefers-reduced-motion:reduce){.wow-k-p,.wow-k-bk,.wow-k-l li{transition:none!important;animation:none!important;opacity:1;transform:none;filter:none}}


/* ================= How it works: living pipeline + host robot ================= */
.wow-pipe{position:relative;margin:0 0 30px;padding-top:150px}
.wow-nodes{display:grid;grid-template-columns:repeat(4,1fr);align-items:start}
.wow-node{position:relative;display:grid;justify-items:center;cursor:pointer}
.wow-orb2{position:relative;width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:var(--glass);border:1px solid var(--glass-bd);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 50px -28px rgba(20,40,120,.8);transition:transform .45s cubic-bezier(.34,1.5,.64,1),box-shadow .4s}
.wow-orb2 i{position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 0deg,var(--cy),var(--ac),var(--vio),var(--cy));-webkit-mask:radial-gradient(circle,transparent 63%,#000 65%);mask:radial-gradient(circle,transparent 63%,#000 65%);opacity:.35;animation:wowSpin 7s linear infinite;transition:opacity .4s}
.wow-orb2 span{display:grid;place-items:center}.wow-orb2 svg{width:50px;height:50px;overflow:visible}
.wow-node.on .wow-orb2{transform:scale(1.14);box-shadow:0 0 0 7px color-mix(in srgb,var(--ac) 14%,transparent),0 30px 60px -22px color-mix(in srgb,var(--ac) 80%,transparent)}
.wow-node.on .wow-orb2 i{opacity:1;animation-duration:2.2s}.wow-node.done .wow-orb2 i{opacity:.7}
.wow-wire{position:absolute;top:43px;left:calc(50% + 54px);width:calc(100% - 108px);height:2px;border-radius:2px;background:linear-gradient(90deg,var(--line-2),var(--line-2))}
.wow-wire i{position:absolute;top:-3px;left:0;width:8px;height:8px;border-radius:50%;background:var(--g-ac);box-shadow:0 0 12px var(--ac);opacity:0;animation:wowPacket 2.4s linear infinite}
.wow-wire i:nth-child(2){animation-delay:.8s}.wow-wire i:nth-child(3){animation-delay:1.6s}
.wow-pipe.live .wow-wire i{opacity:1}
.wow-node.done .wow-wire{background:var(--g-ac)}
@keyframes wowPacket{0%{left:0;opacity:0;transform:scale(.5)}12%{opacity:1;transform:scale(1)}88%{opacity:1}100%{left:calc(100% - 8px);opacity:0;transform:scale(.5)}}
@keyframes wowSpin{to{transform:rotate(360deg)}}
.ic-draw{stroke-dasharray:64;stroke-dashoffset:64;animation:wowDraw 3.2s ease-in-out infinite}@keyframes wowDraw{0%{stroke-dashoffset:64}55%,100%{stroke-dashoffset:0}}
.ic-ring{transform-origin:24px 24px;animation:wowSpin 9s linear infinite}.ic-plus{transform-origin:24px 24px;animation:wowBeat 1.7s ease-in-out infinite}@keyframes wowBeat{50%{transform:scale(1.25)}}
.ic-bar{transform-box:fill-box;transform-origin:center;animation:wowBar 1.1s ease-in-out infinite}.ic-bar.b2{animation-delay:.12s}.ic-bar.b3{animation-delay:.24s}.ic-bar.b4{animation-delay:.36s}.ic-bar.b5{animation-delay:.48s}@keyframes wowBar{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1.15)}}
.ic-rip{transform-origin:24px 24px;animation:wowRip 2.4s ease-out infinite}.ic-rip.r2{animation-delay:1.2s}@keyframes wowRip{0%{transform:scale(.55);opacity:.9}100%{transform:scale(1.55);opacity:0}}
.wow-robot{position:absolute;z-index:3;left:calc(62.5% - 110px);top:-6px;width:220px;height:230px;pointer-events:none}
.wow-rb-glow{position:absolute;left:50%;bottom:18px;width:210px;height:90px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--vio) 55%,transparent),transparent 70%);filter:blur(14px);animation:wowGlow 3.4s ease-in-out infinite}
@keyframes wowGlow{50%{opacity:.55;transform:translateX(-50%) scale(1.12)}}
.wow-rb-frame{position:absolute;inset:0;animation:wowFloat 5s ease-in-out infinite}@keyframes wowFloat{50%{transform:translateY(-8px)}}
.wow-rb-frame iframe{width:100%;height:100%;border:0;background:transparent;pointer-events:none}.wow-rb-frame img{width:120px;margin:50px auto 0;display:block;border-radius:28px}
.wow-rb-bub{position:absolute;left:calc(100% - 12px);top:34px;min-width:190px;padding:11px 15px;border-radius:18px 18px 18px 4px;background:var(--hdr);border:1px solid var(--glass-bd);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 40px -20px rgba(20,40,120,.6);opacity:0;transform:translateX(-10px) scale(.92);transition:opacity .35s,transform .5s cubic-bezier(.34,1.5,.64,1);font-size:.84rem;line-height:1.35}
.wow-rb-bub b{display:block;color:var(--fg)}.wow-rb-bub span{color:var(--muted)}
.wow-pipe.talk .wow-rb-bub{opacity:1;transform:none}
.step.pipe-on{border-color:color-mix(in srgb,var(--ac) 60%,transparent)!important;box-shadow:0 30px 60px -30px color-mix(in srgb,var(--ac) 80%,transparent)!important}
@media (max-width:760px){.wow-pipe{padding-top:120px}.wow-orb2{width:58px;height:58px}.wow-orb2 svg{width:34px;height:34px}.wow-wire{top:29px;left:calc(50% + 36px);width:calc(100% - 72px)}.wow-robot{width:150px;height:170px;left:calc(62.5% - 75px)}.wow-rb-bub{display:none}}

/* ================= Brokers ================= */
.wow-why{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 22px}
@media (max-width:820px){.wow-why{grid-template-columns:1fr}}
.wow-why-i{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;text-align:left;padding:16px 18px;border-radius:20px;border:1px solid var(--glass-bd);background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font:inherit;color:inherit;cursor:pointer}
.wow-why-i .wi{grid-row:1/3;width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--ac) 10%,transparent);border:1px solid color-mix(in srgb,var(--ac) 25%,transparent)}.wow-why-i .wi svg{width:36px;height:36px;overflow:visible}
.wow-why-i b{color:var(--fg);font-size:1rem}.wow-why-i em{font-style:normal;color:var(--muted);font-size:.82rem;line-height:1.4}
.bk-pulse{stroke-dasharray:96;stroke-dashoffset:96;animation:wowEcg 2.6s linear infinite}@keyframes wowEcg{0%{stroke-dashoffset:96}60%,100%{stroke-dashoffset:0}}
.bk-hand{transform-origin:24px 24px;animation:wowSpin 6s linear infinite}.bk-hand2{transform-origin:24px 24px;animation:wowSpin 40s linear infinite}
.bk-coin{transform-origin:24px 24px;animation:wowCoin 3.2s ease-in-out infinite}@keyframes wowCoin{0%,100%{transform:scaleX(1)}45%{transform:scaleX(.08)}55%{transform:scaleX(.08)}}
.wow-bks{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width:980px){.wow-bks{grid-template-columns:1fr}}
.wow-b{display:flex;flex-direction:column;gap:14px;padding:24px;border-radius:26px}
.wow-b header{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:center}
.wb-logo{grid-row:1/3;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--panel-2);border:1px solid var(--glass-bd);box-shadow:0 10px 24px -12px rgba(20,40,120,.5)}.wb-logo img{width:100%;height:100%;object-fit:cover}
.wow-b h3{margin:0;font-size:1.35rem;letter-spacing:-.02em}.wow-b header small{color:var(--muted);font-size:.82rem}
.wb-role{grid-column:2;justify-self:start;padding:4px 11px;border-radius:999px;background:color-mix(in srgb,var(--ac) 12%,transparent);color:var(--ac);font:700 .7rem var(--mono);letter-spacing:.05em;text-transform:uppercase}
.wb-cost{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:6px 12px;align-items:center;padding:12px 14px;border-radius:16px;background:var(--glass);border:1px solid var(--glass-bd)}
.wb-cost small{grid-column:1/-1;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-family:var(--mono)}
.wb-bar{height:8px;border-radius:999px;background:var(--gl4,rgba(120,140,200,.15));overflow:hidden}.wb-bar i{display:block;height:100%;width:0;border-radius:999px;background:var(--g-ac);transition:width 1.4s cubic-bezier(.2,.8,.2,1) .3s}
.pubx-s.ds-in .wb-bar i{width:var(--w)}.wb-cost b{font-size:1.25rem;letter-spacing:-.02em}
.wb-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}@media (max-width:560px){.wb-facts{grid-template-columns:1fr}}
.wb-facts>div{padding:10px 12px;border-radius:14px;background:var(--glass);border:1px solid var(--glass-bd)}.wb-facts dt{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-family:var(--mono)}.wb-facts dd{margin:3px 0 0;font-weight:600;font-size:.9rem;color:var(--fg)}
.wow-b h4{margin:6px 0 0;font-size:.95rem}
.wb-why{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.wb-why li{position:relative;padding-left:26px;font-size:.88rem;line-height:1.45;color:var(--fg-2)}
.wb-why li:before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:var(--g-up);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><circle cx='8' cy='8' r='8'/></svg>");mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><circle cx='8' cy='8' r='8'/></svg>")}
.wb-why li:after{content:"";position:absolute;left:5px;top:7px;width:6px;height:3px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.wb-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:4px}
.wow-bk-note{margin:16px 4px 0;font-size:.8rem;color:var(--muted)}
.gs-h4{margin:16px 0 6px;font-size:.9rem}.gs-ul{margin:0 0 10px;padding-left:18px;color:var(--fg-2);font-size:.88rem;line-height:1.5}
@media (prefers-reduced-motion:reduce){.wow-orb2 i,.wow-wire i,.ic-draw,.ic-ring,.ic-plus,.ic-bar,.ic-rip,.wow-rb-glow,.wow-rb-frame,.bk-pulse,.bk-hand,.bk-hand2,.bk-coin{animation:none!important}.ic-draw,.bk-pulse{stroke-dashoffset:0}.wb-bar i{transition:none;width:var(--w)}}
.pipe>.wow-pipe{grid-column:1/-1;width:100%;min-width:0}
.wow-nodes{width:100%}

/* brokers: compact */
.wow-b{padding:20px;gap:12px;border-radius:24px}
.wow-b header{grid-template-columns:auto 1fr;gap:4px 14px}
.wow-b header .bk-logo{grid-row:1/3;width:132px;height:62px;padding:8px 14px}
.wow-b header .bk-logo img{max-height:38px}
.wb-cost{padding:9px 12px}.wb-facts{gap:6px}.wb-facts>div{padding:8px 11px}.wb-facts dd{font-size:.86rem}
.wb-why li{font-size:.84rem}.wb-why{gap:6px}.wow-b h4{margin:2px 0 0;font-size:.9rem}
.wb-foot .btn{padding:10px 16px;font-size:.88rem}

.wb-logo{display:contents}
.wow-b header .bk-logo{display:grid;place-items:center;border-radius:16px;overflow:hidden}
.wow-b header .bk-logo img{width:auto;height:auto;max-width:100%;max-height:40px;object-fit:contain}

/* round broker logos, as on the original cards */
.wow-b header .bk-logo{width:68px;height:68px;padding:0;border-radius:50%;box-shadow:0 12px 28px -12px rgba(20,40,120,.55),0 0 0 3px color-mix(in srgb,var(--panel) 80%,transparent)}
.wow-b header .bk-logo img{max-width:46px;max-height:46px;width:auto;height:auto}
.wow-b header .bk-logo.fu img{max-width:50px;max-height:50px}
.wow-b header .bk-logo.dk img{max-width:54px}

/* mobile header: the logo on the left, the three buttons together on the right, all the same size */
@media (max-width:1000px){
  header.top .wrap{justify-content:flex-start!important;gap:8px!important}
  header.top .brand{margin-right:auto}
  header.top .wow-kb,header.top .theme-btn,header.top .menu-btn{width:42px;height:42px;padding:0;display:inline-grid;place-items:center;border-radius:14px;flex:none;margin:0}
  header.top .wow-kb{background:var(--glass)!important;border:1px solid var(--glass-bd)!important}
  header.top .wow-kb svg{width:18px;height:18px}
  header.top .menu-btn span{margin:3.5px auto}
}

/* mobile header order: logo left, day / night in the middle, search and menu on the right */
@media (max-width:1000px){
  header.top .brand{order:1;margin-right:0}
  header.top .theme-btn{order:2;margin-left:auto;margin-right:auto}
  header.top .wow-kb{order:3}
  header.top .menu-btn{order:4}
  header.top .nav{order:5}
}


/* ---- menu motion and graphics ---- */
.nav a:not(.pill),.nav .wow-dd>button{position:relative;overflow:visible;transition:color .25s,transform .35s cubic-bezier(.34,1.56,.64,1)}
.nav a:not(.pill):hover,.nav .wow-dd>button:hover{transform:translateY(-2px)}
.nav a:not(.pill):before,.nav .wow-dd>button:before{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;border-radius:2px;background:var(--g-ac);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.8,.2,1);opacity:.95}
.nav a:not(.pill):hover:before,.nav .wow-dd>button:hover:before{transform:scaleX(1)}
.nav a.on:before,.nav .wow-dd>button.on:before{transform:scaleX(0)}
.nav-ic{display:none;width:18px;height:18px;margin-right:9px;flex:none}.nav-ic svg{width:18px;height:18px;display:block}
.nav-tip{position:absolute;left:50%;top:calc(100% + 14px);display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:8px 13px 8px 10px;border-radius:14px;background:var(--hdr);-webkit-backdrop-filter:blur(20px) saturate(1.6);backdrop-filter:blur(20px) saturate(1.6);border:1px solid var(--glass-bd);box-shadow:0 22px 44px -18px rgba(10,20,90,.6);font:600 .76rem var(--sans);color:var(--fg);pointer-events:none;opacity:0;transform:translate(-50%,-8px) scale(.82);transform-origin:top center;transition:opacity .22s,transform .45s cubic-bezier(.34,1.6,.64,1);z-index:6}
.nav-tip svg{width:16px;height:16px;color:var(--ac);flex:none}
.nav-tip:before{content:"";position:absolute;left:50%;top:-5px;width:9px;height:9px;margin-left:-4.5px;background:inherit;border-left:1px solid var(--glass-bd);border-top:1px solid var(--glass-bd);transform:rotate(45deg)}
.nav a:hover .nav-tip,.nav .wow-dd>button:hover .nav-tip,.nav a:focus-visible .nav-tip{opacity:1;transform:translate(-50%,0) scale(1)}
.wow-dd:hover .nav-tip{opacity:0}
.nav .pill{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.nav .pill:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 18px 36px -12px color-mix(in srgb,var(--mint) 90%,transparent)}
.nav .pill:after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-18deg);animation:prmShine 5s ease-in-out infinite}
.wow-ind{overflow:hidden}
.wow-ind:after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:wowIndShine 3.6s ease-in-out infinite}
@keyframes wowIndShine{0%,55%{left:-50%}100%{left:130%}}
.wow-ind:before{content:"";position:absolute;left:50%;bottom:-1px;width:36%;height:2px;margin-left:-18%;border-radius:2px;background:var(--g-ac);box-shadow:0 0 12px var(--ac)}
.nav a.pressed,.nav .wow-dd>button.pressed{animation:wowPress .5s cubic-bezier(.34,1.56,.64,1)}
@keyframes wowPress{0%{transform:scale(1)}30%{transform:scale(.9)}100%{transform:scale(1)}}
.nav-rip{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--ac) 55%,transparent),transparent 70%);animation:wowRipple .7s ease-out forwards;z-index:0}
@keyframes wowRipple{to{transform:scale(9);opacity:0}}
.nav-spk{position:absolute;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;pointer-events:none;background:var(--g-ac);box-shadow:0 0 8px var(--ac);animation:wowSpark .75s cubic-bezier(.2,.8,.2,1) forwards;z-index:3}
@keyframes wowSpark{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}

/* the drawer (phones and small tablets): items slide in one after the other, with icons */
@media (max-width:1000px){
  .nav .nav-tip{display:none}
  .nav a:not(.pill),.nav .wow-dd-m a{display:flex;align-items:center;opacity:0;transform:translateX(-18px);filter:blur(4px);transition:opacity .4s,transform .55s cubic-bezier(.2,.8,.2,1),filter .4s,background .25s}
  .nav.open a:not(.pill),.nav.open .wow-dd-m a{opacity:1;transform:none;filter:none;transition-delay:calc(var(--i,0)*45ms + 60ms)}
  .nav .nav-ic{display:grid;place-items:center;width:34px;height:34px;margin-right:12px;border-radius:11px;background:color-mix(in srgb,var(--ac) 12%,transparent);color:var(--ac);transition:transform .4s cubic-bezier(.34,1.6,.64,1),background .25s}
  .nav .nav-ic svg{width:18px;height:18px}
  .nav a:not(.pill):active .nav-ic,.nav a:not(.pill):hover .nav-ic{transform:scale(1.15) rotate(-8deg);background:color-mix(in srgb,var(--ac) 24%,transparent)}
  .nav a:not(.pill):hover,.nav a:not(.pill):active{background:linear-gradient(90deg,color-mix(in srgb,var(--ac) 14%,transparent),transparent)!important;transform:translateX(4px)}
  .nav a.on{background:linear-gradient(90deg,color-mix(in srgb,var(--ac) 18%,transparent),transparent)!important}
  .nav a.on:after{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;border-radius:3px;background:var(--g-ac)}
  .nav a:not(.pill):before{display:none}
  .nav .pill{opacity:0;transform:translateY(8px)}.nav.open .pill{opacity:1;transform:none;transition:opacity .4s .4s,transform .5s cubic-bezier(.34,1.56,.64,1) .4s}
}
@media (prefers-reduced-motion:reduce){.nav a,.nav-tip,.nav-ic,.wow-ind:after,.nav .pill:after{animation:none!important;transition:none!important}.nav a:not(.pill),.nav .wow-dd-m a{opacity:1!important;transform:none!important;filter:none!important}}

/* the drawer opens right under the floating menu pill */
@media (max-width:1000px){
  header.top .nav{position:absolute!important;top:calc(100% + 10px)!important;left:0!important;right:0!important;bottom:auto!important;width:auto!important;margin:0!important;max-height:calc(100vh - 120px);overflow:auto;padding:12px!important;transform:translateY(-10px) scale(.97);transform-origin:top center;transition:opacity .3s,transform .5s cubic-bezier(.34,1.45,.64,1)}
  header.top .nav.open{transform:none}
}

@media (max-width:1000px){
  .nav .wow-dd{display:contents!important}
  .nav .wow-dd>button{display:none!important}
  .nav .wow-dd-m{position:static!important;display:contents!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
  .nav .wow-dd:before{display:none}
  .nav.open .wow-dd-m a{opacity:1!important;transform:none!important}
}
.nav a[href="my-account.html"] .nav-ic{display:none!important}
@media (max-width:1000px){.nav .wow-dd-m a{padding-left:14px!important}}


/* ---- one tooltip style everywhere: the box sits away from the point and a stem leads to the exact spot ---- */
.eq-tip{top:0;transform:translateX(-50%);background:var(--tipbg,var(--hdr,rgba(8,12,28,.9)))!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid color-mix(in srgb,var(--ac,#6C8CFF) 45%,transparent)!important;border-radius:14px!important;box-shadow:0 18px 38px -14px rgba(0,0,0,.6);z-index:5}
.eq-tip:after{content:"";position:absolute;left:calc(50% + var(--ax,0px));bottom:-6px;width:11px;height:11px;margin-left:-5.5px;background:inherit;border-right:1px solid color-mix(in srgb,var(--ac,#6C8CFF) 45%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ac,#6C8CFF) 45%,transparent);transform:rotate(45deg)}
.eq-tip.below:after{bottom:auto;top:-6px;transform:rotate(225deg)}
.eq-stem{position:absolute;width:2px;pointer-events:none;border-radius:2px;background:linear-gradient(var(--ac,#6C8CFF),color-mix(in srgb,var(--ac,#6C8CFF) 30%,transparent));opacity:0;transition:opacity .2s;z-index:4}
.eq-wrap.hover .eq-stem{opacity:1}
.eq .xd{fill:var(--ac,#6C8CFF)!important;stroke:var(--tipbg,#fff)!important;stroke-width:3!important;r:6;filter:drop-shadow(0 0 4px var(--ac,#6C8CFF))}
.eq .xh{stroke:none!important}
.mtip{transform:translate(-50%,0)!important;background:var(--tipbg,var(--hdr,rgba(8,12,28,.9)))!important;color:var(--fg)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid color-mix(in srgb,var(--ac,#6C8CFF) 45%,transparent);border-radius:12px!important;padding:8px 12px!important;box-shadow:0 18px 38px -14px rgba(0,0,0,.6)}
.mtip:after{content:"";position:absolute;left:calc(50% - 1px);top:100%;width:2px;height:34px;border-radius:2px;background:linear-gradient(var(--ac,#6C8CFF),color-mix(in srgb,var(--ac,#6C8CFF) 30%,transparent))}
.mtip:before{content:"";position:absolute;left:50%;top:calc(100% + 34px);width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ac,#6C8CFF);box-shadow:0 0 0 3px var(--tipbg,#fff),0 0 0 5px color-mix(in srgb,var(--ac,#6C8CFF) 60%,transparent)}

/* phone drawer: solid enough that the page text never shows through */
@media (max-width:1000px){header.top .nav{background:var(--panel,#fff)!important;-webkit-backdrop-filter:blur(26px) saturate(1.6);backdrop-filter:blur(26px) saturate(1.6)}}

/* laptop widths: the one-line menu is tightened so every item, and the Watch live button, fit */
@media (min-width:1001px) and (max-width:1400px){
  header.top .nav a:not(.pill),header.top .nav .wow-dd>button{padding:8px 8px!important;font-size:.855rem}
  header.top .nav .pill{padding-left:12px!important;padding-right:12px!important;font-size:.8rem}
  header.top .nav{gap:0!important}
}
@media (min-width:1001px) and (max-width:1180px){header.top .nav a[href$="contact.html"]{display:none!important}}

/* the old page-top scroll bar is replaced by the header line and candle */
div.progress{display:none!important}

/* back to top: just the arrows, in the site colour (they were gold) */
.totop{background:none!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--ac)!important;filter:drop-shadow(0 2px 6px color-mix(in srgb,var(--ac) 45%,transparent))!important}
.totop:hover{color:var(--vio)!important}


/* ---- floating buttons: no box, no border. Contact us = a plane that hovers and flies off on hover; Ask us = a chat bubble, waving dots, and the questions people ask ---- */
html body .fab{background:none!important;box-shadow:none!important;border:0!important;height:auto;padding:6px 4px 4px;gap:8px;color:var(--ac)!important;text-shadow:0 0 8px var(--ink,#fff),0 0 3px var(--ink,#fff);transition:transform .5s var(--ease,ease),opacity .4s}
html body .fab:hover{background:none!important;color:var(--vio)!important}
html body .fab span{padding-bottom:3px;border-bottom:1.5px dashed color-mix(in srgb,var(--ac) 55%,transparent)}
html body .fab svg{width:22px;height:22px;filter:drop-shadow(0 0 5px var(--ink,#fff));animation:fabHover 2.4s ease-in-out infinite}
@keyframes fabHover{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-4px) rotate(2deg)}}
html body .fab:hover svg{animation:fabGo .7s ease-in forwards}
@keyframes fabGo{to{transform:translate(40px,-24px) rotate(-18deg);opacity:0}}

html body .gc-fab{background:none!important;border:0!important;box-shadow:none!important;color:var(--fg)!important;height:auto;padding:6px 4px;gap:8px;text-shadow:0 0 8px var(--ink,#fff),0 0 3px var(--ink,#fff);font-weight:600}
html body .gc-fab:hover{transform:translateY(-2px)}
.gk-b{width:22px;height:22px;flex:none;color:var(--mint,#10B981);filter:drop-shadow(0 0 5px var(--ink,#fff));transform-origin:30% 90%;animation:gkPop 5.6s ease-in-out infinite}
@keyframes gkPop{0%,70%,100%{transform:scale(1)}78%{transform:scale(1.25) rotate(-6deg)}86%{transform:scale(.95)}92%{transform:scale(1.08)}}
.gk-w{position:relative;display:block;width:104px;height:20px;overflow:hidden;font-size:.92rem;line-height:20px}
.gk-w>*{position:absolute;left:0;top:0;opacity:0;white-space:nowrap;font-style:normal;animation:gkSlot 11.2s infinite;animation-delay:calc(var(--i)*1.4s)}
@keyframes gkSlot{0%{opacity:0;transform:translateY(9px)}2.5%{opacity:1;transform:none}10%{opacity:1;transform:none}12.5%{opacity:0;transform:translateY(-9px)}100%{opacity:0}}
.gk-d{display:inline-flex;gap:4px;align-items:center;height:20px}
.gk-d u{width:6px;height:6px;border-radius:50%;background:var(--mint,#10B981);animation:gkWave .9s ease-in-out infinite}
.gk-d u:nth-child(2){animation-delay:.12s}.gk-d u:nth-child(3){animation-delay:.24s}
@keyframes gkWave{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-5px);opacity:1}}
@media (max-width:600px){html body .gc-fab{padding:0}.gk-w{display:none}.gk-b{width:28px;height:28px}html body .gc-fab::after{display:none!important}html body .fab{padding:0}}
@media (prefers-reduced-motion:reduce){.gk-w>*{animation:none}.gk-w>*:first-child{opacity:1}.gk-w>*:not(:first-child){display:none}.gk-b,html body .fab svg{animation:none!important}}

/* both floating buttons share one column: same right edge, icons on one line, labels start together */
html body .fab,html body .gc-fab{right:20px!important;width:146px;box-sizing:border-box;justify-content:flex-start!important;padding:6px 4px!important}
html body .gc-fab{bottom:calc(max(var(--gcb,18px) - 24px,18px) + var(--lift,0px))!important}
html body .fab span,html body .gk-w{margin-left:0}
@media (max-width:600px){html body .fab,html body .gc-fab{right:14px!important;width:auto;padding:0!important}html body .gc-fab{bottom:calc(var(--gcb,14px) + var(--lift,0px))!important}}

/* phones: the two buttons become one small row in the corner, and step aside while the page is scrolling */
@media (max-width:600px){
  html body .fab,html body .gc-fab{bottom:calc(16px + env(safe-area-inset-bottom) + var(--lift,0px))!important;transition:opacity .3s,transform .3s}
  html body .fab{right:14px!important}
  html body .gc-fab{right:56px!important}
  html body .fab svg,.gk-b{width:24px;height:24px}
  html.is-scrolling body .fab,html.is-scrolling body .gc-fab{opacity:0!important;pointer-events:none;transform:translateY(10px)}
}
