html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased}
body{margin:0;background:#05070a}
a{color:#ffb627;text-decoration:none}a:hover{color:#ffd27a}
@keyframes a-scan{0%{transform:translateY(-420px)}100%{transform:translateY(1900px)}}
@keyframes a-spin{to{transform:rotate(360deg)}}
@keyframes a-spinr{to{transform:rotate(-360deg)}}
@keyframes a-breathe{0%,100%{opacity:.78;transform:scale(.95)}50%{opacity:1;transform:scale(1.04)}}
@keyframes a-cellpulse{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes a-run{0%{background-position:-320px 0}100%{background-position:1650px 0}}
@keyframes a-blink{0%,55%{opacity:1}56%,100%{opacity:.18}}
@keyframes a-sweep{0%{background-position:-400px 0}60%,100%{background-position:700px 0}}
.a-fabric{position:absolute;left:0;top:0;width:100%;height:1150px;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 75% 70% at 68% 34%,#000 10%,transparent 78%);mask-image:radial-gradient(ellipse 75% 70% at 68% 34%,#000 10%,transparent 78%)}
.a-scan{position:absolute;left:0;right:0;top:0;height:420px;background:linear-gradient(180deg,rgba(61,232,255,0),rgba(61,232,255,.055) 50%,rgba(61,232,255,0));animation:a-scan 12s linear infinite;pointer-events:none}
.a-ring{transform-box:view-box;transform-origin:300px 300px;animation:a-spin 70s linear infinite}
.a-ring.r2{animation:a-spinr 42s linear infinite}
.a-ring.r3{animation:a-spin 24s linear infinite}
.a-core{transform-box:view-box;transform-origin:300px 300px;animation:a-breathe 3.4s ease-in-out infinite}
.a-cove{background:linear-gradient(90deg,rgba(255,182,39,0) 0%,rgba(255,182,39,.9) 18%,#fff0c2 50%,rgba(255,182,39,.9) 82%,rgba(255,182,39,0) 100%);box-shadow:0 0 14px 1px rgba(255,182,39,.75),0 0 46px 8px rgba(255,182,39,.22)}
.a-sweep{background:linear-gradient(100deg,transparent 0,rgba(255,255,255,.75) 50%,transparent 100%) no-repeat;background-size:180px 100%;animation:a-sweep 4.8s ease-in-out infinite;mix-blend-mode:overlay;pointer-events:none}
.a-ret{transform-box:view-box;transform-origin:300px 300px;animation:a-spin 16s linear infinite}
.a-ret.rr{animation:a-spinr 30s linear infinite}
.a-hc{animation:a-cellpulse 1.8s ease-in-out infinite}
.a-hc.q1{animation-delay:-.6s}.a-hc.q2{animation-delay:-1.2s}
.a-run{background:linear-gradient(90deg,rgba(255,240,194,0) 0%,#fff0c2 50%,rgba(255,240,194,0) 100%) no-repeat;background-size:320px 100%;filter:drop-shadow(0 0 6px #ffb627) drop-shadow(0 0 14px rgba(255,182,39,.6));animation:a-run 7s cubic-bezier(.45,0,.55,1) infinite}
.a-blink{animation:a-blink 1.6s steps(1) infinite}
.a-key{transition:border-color .25s,box-shadow .25s,color .25s}
.a-key:hover{border-color:#3de8ff !important;color:#ffffff !important;box-shadow:0 0 0 1px rgba(61,232,255,.35),0 0 26px rgba(61,232,255,.28),inset 0 0 18px rgba(61,232,255,.12) !important}
.a-key:hover .a-kled{background:#3de8ff !important;box-shadow:0 0 10px #3de8ff !important}
.a-cta{transition:box-shadow .25s,transform .25s}
.a-cta:hover{box-shadow:0 0 0 1px #ffe08a,0 0 34px rgba(255,182,39,.7),0 0 90px rgba(255,182,39,.3) !important;transform:translateY(-2px)}
.a-ghost{transition:box-shadow .25s,border-color .25s}
.a-ghost:hover{border-color:#3de8ff !important;box-shadow:0 0 24px rgba(61,232,255,.3) !important}
.a-screen{transition:border-color .3s,box-shadow .3s,transform .3s}
.a-screen:hover{border-color:rgba(255,182,39,.8) !important;box-shadow:0 0 0 1px rgba(255,182,39,.35),0 0 50px rgba(255,182,39,.18),0 30px 60px rgba(0,0,0,.5) !important;transform:translateY(-4px)}
.hm-logo{transition:background .35s,box-shadow .35s}
.hm-logo:hover,.hm-logo:focus-visible{background:rgba(255,182,39,.07);box-shadow:inset 0 0 0 1px rgba(255,182,39,.4),0 0 28px rgba(255,182,39,.14)}
.hm-logo:active{transform:scale(.98)}
.hm-logo-svg{transition:filter .35s}
.hm-logo:hover .hm-logo-svg,.hm-logo:focus-visible .hm-logo-svg{filter:drop-shadow(0 0 6px #ffb627) drop-shadow(0 0 18px rgba(255,182,39,.85)) !important}
.hm-logo-outer,.hm-logo-inner,.hm-logo-wave{transform-box:fill-box;transform-origin:center}
.hm-logo-outer{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.hm-logo:hover .hm-logo-outer,.hm-logo:focus-visible .hm-logo-outer{transform:rotate(120deg)}
.hm-logo-inner{transition:transform .45s cubic-bezier(.2,.8,.2,1),fill .3s}
.hm-logo:hover .hm-logo-inner,.hm-logo:focus-visible .hm-logo-inner{transform:scale(1.3);fill:#fff3cf}
.hm-logo-wave{opacity:0}
.hm-logo:hover .hm-logo-wave,.hm-logo:focus-visible .hm-logo-wave{animation:hm-logo-wave 1.5s ease-out infinite}
@keyframes hm-logo-wave{0%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(2.1)}}
.hm-logo-word{transition:color .3s,text-shadow .3s,transform .35s cubic-bezier(.2,.8,.2,1)}
.hm-logo:hover .hm-logo-word,.hm-logo:focus-visible .hm-logo-word{transform:translateY(-7px);color:#fff3cf;text-shadow:0 0 12px rgba(255,182,39,.75),0 0 30px rgba(255,182,39,.35)}
.hm-logo-hint{position:absolute;left:0;top:calc(100% - 4px);display:flex;align-items:center;gap:6px;font-family:'Chakra Petch',sans-serif;font-size:10px;font-weight:600;letter-spacing:.2em;color:#ffcf6e;white-space:nowrap;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .35s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.hm-logo:hover .hm-logo-hint,.hm-logo:focus-visible .hm-logo-hint{opacity:1;transform:none}
.is-hidden{display:none !important}
:focus-visible{outline:2px solid #3de8ff;outline-offset:3px}
.hm-in{height:56px;box-sizing:border-box;padding:0 18px;border-radius:12px;border:1px solid #2a3441;background:#06080c;color:#e8ecf1;font-family:'Chakra Petch',sans-serif;font-size:16px}
textarea.hm-in{height:150px;padding:14px 18px;resize:vertical;line-height:1.5}
select.hm-in{appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#8d99a8 50%),linear-gradient(135deg,#8d99a8 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.hm-in::placeholder{color:#7c8797}
.hm-in:focus{outline:none;border-color:#3de8ff;box-shadow:0 0 0 3px rgba(61,232,255,.2)}
.hm-range{width:100%;accent-color:#ffb627;cursor:pointer}
.hm-chip{cursor:pointer;transition:border-color .2s,color .2s,box-shadow .2s}
.hm-chip:hover{border-color:#3de8ff !important;color:#fff !important}
.hm-chip.is-active{border-color:#ffb627 !important;color:#fff !important;box-shadow:0 0 18px rgba(255,182,39,.18)}
.hm-chip.is-active .hm-led{background:#ffb627 !important;box-shadow:0 0 8px #ffb627}
.hm-card{cursor:pointer;text-align:left;font:inherit}
.hm-modal{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:24px}
.hm-modal.is-open{display:flex}
.hm-backdrop{position:absolute;inset:0;background:rgba(3,5,8,.8);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer}
.hm-dialog{position:relative;animation:hm-pop .35s cubic-bezier(.2,.8,.2,1)}
@keyframes hm-pop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.hm-acc-body{display:none !important}
.hm-acc.is-open .hm-acc-body{display:grid !important}
.hm-chev{transition:transform .25s}
.hm-acc.is-open .hm-chev{transform:rotate(180deg)}
.hm-acc{transition:border-color .25s}
.hm-acc.is-open,.hm-acc:hover{border-color:rgba(255,182,39,.55) !important}
.hm-add{transition:border-color .2s,color .2s,background .2s,box-shadow .2s}
.hm-add:hover{box-shadow:0 0 18px rgba(255,182,39,.3)}
.hm-add .hm-on{display:none}
.hm-add.is-added .hm-on{display:inline}
.hm-add.is-added .hm-off{display:none}
.hm-add.is-added{border-color:#3de8ff !important;color:#3de8ff !important;background:rgba(61,232,255,.08) !important}
.hm-switch{cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.hm-switch:hover{border-color:#3de8ff !important}
.hm-knob{transition:transform .2s,background .2s,box-shadow .2s}
.hm-switch.is-on{border-color:#ffb627 !important;background:rgba(255,182,39,.08) !important;color:#fff !important}
.hm-switch.is-on .hm-track{border-color:#ffb627 !important}
.hm-switch.is-on .hm-knob{transform:translateX(18px);background:#ffb627 !important;box-shadow:0 0 10px #ffb627}
.hm-seg{cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}
.hm-seg.is-active{background:linear-gradient(180deg,#ffd064 0%,#ff9f0a 100%) !important;color:#1a1000 !important;box-shadow:0 0 18px rgba(255,182,39,.4)}
[data-license-scope] .p-com{display:none}
[data-license-scope].lic-commercial .p-com{display:inline}
[data-license-scope].lic-commercial .p-per{display:none}
.hm-form .hm-sent{display:none !important}
.hm-form.is-sent .hm-sent{display:flex !important}
.hm-form.is-sent .hm-fields{display:none !important}
.hm-tile{transition:border-color .3s,box-shadow .3s,transform .3s}
.hm-tile:hover{border-color:rgba(255,182,39,.8) !important;box-shadow:0 0 0 1px rgba(255,182,39,.3),0 0 50px rgba(255,182,39,.16),0 30px 60px rgba(0,0,0,.5) !important;transform:translateY(-4px)}
.hm-tile:hover .hm-go{color:#ffcf6e !important}
.hm-tile:hover .hm-num{color:rgba(255,182,39,.55) !important}
.hm-row{transition:border-color .25s,transform .25s}
.hm-row:hover{border-color:#3a4a5c !important;transform:translateX(4px)}
.hm-ext{transition:border-color .3s,box-shadow .3s}
.hm-ext:hover{border-color:#3de8ff !important;box-shadow:0 0 30px rgba(61,232,255,.18) !important}
@keyframes hm-spin{to{transform:rotate(360deg)}}
.hm-spin{animation:hm-spin 40s linear infinite}
.hm-spin.rev{animation-direction:reverse;animation-duration:26s}
@keyframes a-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@keyframes a-nudge-d{0%,100%{transform:rotate(90deg) translateX(0)}50%{transform:rotate(90deg) translateX(6px)}}
.a-navarrow{animation:a-nudge 1.8s ease-in-out infinite}
/* header: logo + SHOP + START A MISSION on top, the deck tabs in their own row below */
.a-bar{flex-wrap:wrap;row-gap:12px;padding:14px 14px 14px 22px !important}
.a-nav{order:3;width:100%;gap:6px !important}
.a-nav a{flex:1 0 auto;justify-content:center}
@media (max-width:1280px){
.a-nav a{padding:0 12px !important;letter-spacing:.12em !important}
.a-logo-text{font-size:15px !important;letter-spacing:.18em !important}
}
@media (max-width:1180px){
.a-bar{flex-wrap:wrap;row-gap:12px;padding:12px 12px 12px 18px !important}
.a-nav{order:3;width:100%;gap:6px !important;overflow-x:auto;scrollbar-width:none}
.a-nav a{flex:1 0 auto;justify-content:center}
.hm-grid4{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width:980px){
.a-hdr{padding:16px 16px 0 !important}
.a-hero{grid-template-columns:minmax(0,1fr) !important;padding:40px 20px 0 !important;min-height:0 !important;gap:36px !important}
.a-reactorbox{justify-self:center !important}
.a-navarrow{animation-name:a-nudge-d !important}
.a-div{margin:48px 20px 0 !important}
.hm-sec{padding-left:20px !important;padding-right:20px !important}
.hm-split{grid-template-columns:minmax(0,1fr) !important;gap:28px !important}
.a-grid3{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.hm-footgrid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.hm-modalgrid{grid-template-columns:minmax(0,1fr) !important}
.hm-modalimg{min-height:260px !important;border-right:0 !important;border-bottom:1px solid #1c242e}
.hm-acchead{grid-template-columns:64px minmax(0,1fr) 28px !important}
.hm-accmeta{display:none !important}
.hm-acc-body{grid-template-columns:minmax(0,1fr) !important;padding:4px 20px 22px !important}
.hm-labrow{grid-template-columns:140px minmax(0,1fr) !important}
.hm-labstatus{grid-column:1 / -1}
.hm-toggles{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.hm-logo-hint{display:none !important}
}
@media (max-width:640px){
.a-h1{font-size:clamp(24px,7.4vw,36px) !important}
.a-h1.hm-h1{font-size:clamp(36px,11.5vw,54px) !important}
.a-h1.hm-ph1{font-size:clamp(30px,9vw,44px) !important}
.a-h2{font-size:22px !important}
.a-label{font-size:12px !important;letter-spacing:.14em !important}
.a-label > span:first-child{display:none !important}
.a-logo-text{font-size:13px !important;letter-spacing:.12em !important}
.a-right .a-ghost{padding:0 10px !important;font-size:11px !important;letter-spacing:.1em !important}
.a-nav .a-kled{display:none !important}
.a-nav{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible !important}
.a-nav a{padding:0 6px !important;font-size:12px !important}
.a-ctas{flex-wrap:wrap}
.a-grid3,.hm-grid4{grid-template-columns:minmax(0,1fr) !important}
.a-workhead{flex-wrap:wrap;gap:16px;align-items:flex-start !important}
.a-formrow{flex-direction:column}
.hm-footgrid{grid-template-columns:minmax(0,1fr) !important}
.hm-footbar{flex-direction:column;align-items:flex-start !important}
.hm-specs{grid-template-columns:minmax(0,1fr) !important}
.hm-labrow{grid-template-columns:minmax(0,1fr) !important}
.hm-toggles{grid-template-columns:minmax(0,1fr) !important}
.hm-fieldrow{grid-template-columns:minmax(0,1fr) !important}
.hm-modal{padding:10px}
.hm-logo{margin-left:0 !important;padding:6px 8px 6px 4px !important}
.hm-long{display:none}
}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

.pr-ring g{transform-origin:220px 220px}
.pr-ring{pointer-events:none}
@keyframes pr-turn{to{transform:rotate(360deg)}}
@keyframes pr-pulse{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes pr-run{to{stroke-dashoffset:-1000}}
.pr-slow{animation:pr-turn 200s linear infinite}
.pr-med{animation:pr-turn 110s linear infinite}
.pr-rev-slow{animation:pr-turn 150s linear infinite reverse}
.pr-rev-med{animation:pr-turn 84s linear infinite reverse}
.pr-pulse{animation:pr-pulse 5.5s ease-in-out infinite}
.pr-run{animation:pr-run 16s linear infinite}
/* the portrait itself: a circle now, not a hexagon, with the deck's glow around it */
.pr-photo{position:relative;width:68%;height:68%;border-radius:50%;overflow:hidden;
  background:linear-gradient(180deg,#1a2330 0%,#0a0d12 100%);
  box-shadow:0 0 0 1px rgba(61,232,255,.35),0 0 46px rgba(61,232,255,.14),
             inset 0 0 60px rgba(4,8,12,.55)}
@media (prefers-reduced-motion:reduce){
  .pr-ring g,.pr-ring circle{animation:none !important}
}

.hx-back{pointer-events:none;position:absolute;inset:-2.5%;border-radius:50%;background:radial-gradient(closest-side,rgba(7,10,14,.92) 0%,rgba(7,10,14,.75) 80%,rgba(7,10,14,0) 100%)}
.hx-glow{position:absolute;left:38.5%;top:38.5%;width:23%;height:23%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,243,207,.95) 0%,rgba(255,197,74,.75) 22%,rgba(255,138,0,.18) 55%,rgba(255,138,0,0) 100%);animation:hx-breathe 3.6s ease-in-out infinite;cursor:pointer}
.hx-lyr{position:absolute;pointer-events:none;animation-name:hx-boot,hx-spin;animation-duration:1.4s,calc(var(--hx-base,60s) / var(--hx-speed,1));animation-timing-function:cubic-bezier(.2,.8,.2,1),linear;animation-iteration-count:1,infinite;animation-fill-mode:both,none;animation-delay:var(--hx-d,0s),0s;animation-direction:normal,var(--hx-dir,normal)}
.hx-core.is-paused .hx-lyr,.hx-core.is-paused .hx-dot,.hx-core.is-paused .hx-glow{animation-play-state:paused}
.hx-dot{position:absolute;display:block;border-radius:50%;background:#3de8ff;box-shadow:0 0 6px rgba(61,232,255,.7);opacity:.22;animation:hx-led 2.6s linear infinite}
/* ---- honeycomb heart ---- */
.hx-hive{position:absolute;z-index:1}
.hx-hivedisc{fill:#ffb627;fill-opacity:.05;stroke:#ffb627;stroke-opacity:.85;stroke-width:1.4;vector-effect:non-scaling-stroke;pointer-events:visiblePainted;cursor:pointer}
.hx-cell{fill:#fff1c4;fill-opacity:0;stroke:#2a1a00;stroke-opacity:.55;stroke-width:1.1;vector-effect:non-scaling-stroke;stroke-linejoin:round;pointer-events:visiblePainted;cursor:pointer;animation:hx-cell var(--hc-d,7s) linear infinite var(--hc-o,0s)}
@keyframes hx-cell{0%,86%,100%{fill-opacity:0}90%{fill-opacity:.9}94%{fill-opacity:.35}}
.hx-core.is-ignite .hx-cell{animation-duration:.6s}
.hx-core.is-unstable .hx-cell{animation-duration:.25s}
.hx-core.is-paused .hx-cell{animation-play-state:paused}
.hx-bextra{fill:none;stroke:#ffb627;stroke-opacity:.9;stroke-width:1.4;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;transition:stroke .25s,stroke-width .25s}
.hx-bexglow{fill:none;stroke:#ffb627;stroke-opacity:.16;stroke-width:6;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;transition:stroke-opacity .25s,stroke .3s}
.hx-lyr.is-hot .hx-bextra,.hx-lyr.is-scan .hx-bextra{stroke:var(--hx-lit,#ffd98a);stroke-opacity:1;stroke-width:2}
.hx-lyr.is-hot .hx-bexglow,.hx-lyr.is-scan .hx-bexglow{stroke:var(--hx-lit-soft,#ffb627);stroke-opacity:.5}
.hx-core.is-ignite .hx-bextra{stroke:#ffe3a3}
/* core labels, sized to the core */
.hx-label{font-size:14px;letter-spacing:.3em;color:#8d99a8;white-space:nowrap}
.hx-status{font-size:14px !important;gap:10px !important;white-space:nowrap}
/* the core keeps the middle band; the labels keep the edges */
/* the labels live in a band the same height as the corner brackets (38px), so each one
   centres on its bracket: equal distance top and bottom, tucked inside the corner. */
.hx-strip{width:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 15px;height:38px}
.hx-strip-t{margin-bottom:14px}
.hx-strip-b{margin-top:14px}
.hx-stage{width:94%;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center}
@media (max-width:640px){.hx-label,.hx-status{font-size:11px !important;letter-spacing:.24em !important}
.hx-strip{padding:0 13px;gap:8px}.hx-strip-t{margin-bottom:18px}.hx-strip-b{margin-top:18px}
.hx-status{padding:4px 6px !important}}
.hx-planet{fill:#3de8ff;fill-opacity:.85;stroke:#3de8ff;stroke-width:1;vector-effect:non-scaling-stroke}
/* ---- interactive bands ---- */
.hx-band{pointer-events:visiblePainted;cursor:pointer;transition:fill-opacity .25s,stroke .3s,stroke-width .25s}
.hx-bglow{pointer-events:visibleStroke;cursor:pointer;transition:stroke-opacity .25s,stroke .3s}
.hx-lyr.is-hot{animation-play-state:running,paused}
.hx-lyr.is-hot .hx-band{fill-opacity:.17;stroke:var(--hx-lit,#ffd98a);stroke-opacity:1;stroke-width:2}
.hx-lyr.is-hot .hx-bglow{stroke:var(--hx-lit-soft,#ffb627);stroke-opacity:.5}
.hx-lyr.is-scan .hx-band{fill-opacity:.13;stroke:var(--hx-lit,#ffd98a);stroke-opacity:1;stroke-width:2}
.hx-lyr.is-scan .hx-bglow{stroke:var(--hx-lit-soft,#ffb627);stroke-opacity:.55}
.hx-hud{position:absolute;inset:0;pointer-events:none;z-index:3}
.hx-lead{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;opacity:0;transition:opacity .12s}
.hx-lead-line{fill:none;stroke:#ffb627;stroke-width:1.5;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(255,182,39,.85));transition:stroke-dashoffset .26s cubic-bezier(.3,.7,.2,1)}
.hx-lead-dot{position:absolute;left:0;top:0;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#ffe3a3;box-shadow:0 0 10px #ffb627;opacity:0;transition:opacity .12s}
.hx-lead-dot::after{content:"";position:absolute;inset:-6px;border:1px solid #ffb627;border-radius:50%;opacity:0}
.hx-hud.is-on .hx-lead,.hx-hud.is-on .hx-lead-dot{opacity:1}
.hx-hud.is-on .hx-lead-dot::after{animation:hx-ping 1.4s ease-out infinite}
.hx-tip{position:absolute;left:0;top:0;width:236px;box-sizing:border-box;padding:12px 14px 11px;background:rgba(7,11,16,.94);border:1px solid rgba(255,182,39,.38);border-bottom:2px solid #ffb627;box-shadow:0 0 28px rgba(255,182,39,.14);visibility:hidden;opacity:0;transition:opacity .12s,visibility 0s .12s;text-align:left}
.hx-tip.is-down{border-bottom:1px solid rgba(255,182,39,.38);border-top:2px solid #ffb627}
.hx-tip-in{display:flex;flex-direction:column;gap:6px}
.hx-tip-eb{font-size:10px;letter-spacing:.28em;color:#3de8ff}
.hx-tip-t{font-family:'Michroma',sans-serif;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:#f3f5f8}
.hx-tip-d{font-size:13px;line-height:1.45;color:#a6b1bf}
.hx-tip-go{font-size:10.5px;font-weight:600;letter-spacing:.24em;color:#ffb627;text-decoration:none}
.hx-tap{display:none}
@media (hover:none){.hx-click{display:none}.hx-tap{display:inline}}
.hx-tip.is-on{visibility:visible;opacity:1;transition:none;animation:hx-open .44s .24s cubic-bezier(.3,.7,.2,1) both}
.hx-tip.is-on.is-left{animation-name:hx-open-l}
.hx-tip.is-on.is-down{animation-name:hx-open-d}
.hx-tip.is-on.is-left.is-down{animation-name:hx-open-ld}
.hx-tip.is-on .hx-tip-in>*{animation:hx-txt .32s both}
.hx-tip.is-on .hx-tip-in>:nth-child(1){animation-delay:.5s}
.hx-tip.is-on .hx-tip-in>:nth-child(2){animation-delay:.56s}
.hx-tip.is-on .hx-tip-in>:nth-child(3){animation-delay:.62s}
.hx-tip.is-on .hx-tip-in>:nth-child(4){animation-delay:.7s}
@keyframes hx-open{0%{clip-path:inset(calc(100% - 2px) 100% 0 0)}45%{clip-path:inset(calc(100% - 2px) 0 0 0)}100%{clip-path:inset(0 0 0 0)}}
@keyframes hx-open-l{0%{clip-path:inset(calc(100% - 2px) 0 0 100%)}45%{clip-path:inset(calc(100% - 2px) 0 0 0)}100%{clip-path:inset(0 0 0 0)}}
@keyframes hx-open-d{0%{clip-path:inset(0 100% calc(100% - 2px) 0)}45%{clip-path:inset(0 0 calc(100% - 2px) 0)}100%{clip-path:inset(0 0 0 0)}}
@keyframes hx-open-ld{0%{clip-path:inset(0 0 calc(100% - 2px) 100%)}45%{clip-path:inset(0 0 calc(100% - 2px) 0)}100%{clip-path:inset(0 0 0 0)}}
@keyframes hx-txt{0%{opacity:0}30%{opacity:.7}45%{opacity:.15}100%{opacity:1}}
@keyframes hx-ping{0%{opacity:.9;transform:scale(.6)}100%{opacity:0;transform:scale(2.2)}}
/* ---- ignite ---- */
.hx-flare{position:absolute;left:30%;top:30%;width:40%;height:40%;border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(closest-side,rgba(255,250,235,.95) 0%,rgba(255,197,74,.6) 35%,rgba(255,138,0,0) 100%)}
.hx-core.is-ignite .hx-flare{animation:hx-flare 1.8s ease-out both}
.hx-core.is-ignite .hx-band{stroke:#ffe3a3;fill-opacity:.1}
.hx-core.is-ignite .hx-dot{animation-duration:.7s}
.hx-core.is-ignite .hx-lyr.is-hot{animation-play-state:running,running}
/* ---- overload: three ignites in a row ---- */
.hx-core{transition:filter .9s ease-out}
.hx-core.is-unstable{filter:sepia(1) saturate(5) hue-rotate(-42deg) brightness(1.05);transition:none;animation:hx-shake .09s linear infinite}
.hx-core.is-cooling{filter:saturate(.3) brightness(.75);transition:filter .5s}
.hx-core.is-unstable .hx-glow{animation-duration:.28s}
.hx-core.is-unstable .hx-dot{animation-duration:.4s}
.hx-core.is-locked .hx-band,.hx-core.is-locked .hx-bglow,.hx-core.is-locked .hx-glow{cursor:not-allowed}
@keyframes hx-shake{0%{translate:0 0}25%{translate:2px -1px}50%{translate:-2px 1px}75%{translate:1px 2px}100%{translate:0 0}}
.hx-status{transition:color .3s,border-color .3s,box-shadow .3s}
.hx-status.is-unstable{animation:hx-alarm .34s linear infinite}
.hx-status.is-unstable .a-blink{background:#ff2d55 !important;box-shadow:0 0 10px #ff2d55 !important;animation-duration:.34s !important}
.hx-status.is-cooling{color:#3de8ff !important;border-color:rgba(61,232,255,.55) !important;box-shadow:0 0 14px rgba(61,232,255,.22)}
.hx-status.is-cooling .a-blink{background:#3de8ff !important;box-shadow:0 0 10px #3de8ff !important}
@keyframes hx-alarm{0%,49%{color:#fff;border-color:#ff2d55;box-shadow:0 0 16px rgba(255,45,85,.6),inset 0 0 10px rgba(255,45,85,.35)}50%,100%{color:rgba(255,255,255,.2);border-color:#b04dff;box-shadow:0 0 16px rgba(176,77,255,.6),inset 0 0 10px rgba(176,77,255,.3)}}
@keyframes hx-flare{0%{opacity:0;transform:scale(.5)}15%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(2.4)}}
@keyframes hx-spin{from{rotate:0deg}to{rotate:360deg}}
@keyframes hx-boot{from{opacity:0;scale:.86;transform:rotate(-25deg)}to{opacity:1;scale:1;transform:none}}
@keyframes hx-led{0%,100%{opacity:.22}14%{opacity:1}40%{opacity:.35}}
@keyframes hx-breathe{0%,100%{opacity:.7;transform:scale(.94)}50%{opacity:1;transform:scale(1.05)}}
.hx-dot:nth-of-type(1){animation-delay:0.00s}.hx-dot:nth-of-type(2){animation-delay:0.14s}.hx-dot:nth-of-type(3){animation-delay:0.28s}.hx-dot:nth-of-type(4){animation-delay:0.42s}.hx-dot:nth-of-type(5){animation-delay:0.56s}.hx-dot:nth-of-type(6){animation-delay:0.70s}.hx-dot:nth-of-type(7){animation-delay:0.84s}.hx-dot:nth-of-type(8){animation-delay:0.98s}.hx-dot:nth-of-type(9){animation-delay:1.12s}.hx-dot:nth-of-type(10){animation-delay:1.26s}.hx-dot:nth-of-type(11){animation-delay:1.40s}.hx-dot:nth-of-type(12){animation-delay:1.54s}
.hx-r0{--hx-base:147.78s;--hx-dir:normal}.hx-r1{--hx-base:123.15s;--hx-dir:reverse}.hx-r2{--hx-base:103.45s;--hx-dir:normal}.hx-r3{--hx-base:86.70s;--hx-dir:reverse}.hx-r4{--hx-base:70.94s;--hx-dir:normal}.hx-r5{--hx-base:57.14s;--hx-dir:reverse}.hx-r6{--hx-base:45.32s;--hx-dir:normal}.hx-r7{--hx-base:35.47s;--hx-dir:reverse}
.hx-a0{--hx-base:182.27s;--hx-dir:reverse}.hx-a1{--hx-base:147.78s;--hx-dir:normal}.hx-a2{--hx-base:120.20s;--hx-dir:reverse}.hx-a3{--hx-base:96.55s;--hx-dir:normal}.hx-a4{--hx-base:78.82s;--hx-dir:reverse}.hx-a5{--hx-base:63.05s;--hx-dir:normal}.hx-a6{--hx-base:49.26s;--hx-dir:reverse}.hx-a7{--hx-base:39.41s;--hx-dir:normal}

.hm-shopgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.hm-prod{display:flex;flex-direction:column;gap:12px;padding:10px 10px 16px;border-radius:16px;border:1px solid #222b36;background:linear-gradient(180deg,#10151c 0%,#0a0d12 100%);box-shadow:0 24px 50px rgba(0,0,0,.4);color:#e8ecf1;text-decoration:none}
.hm-prodimg{position:relative;display:block;aspect-ratio:1/1;border-radius:10px;overflow:hidden;border:1px solid #1a212b;background:#0b0f14}
.hm-prodimg img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.hm-prodtxt{display:flex;flex-direction:column;gap:6px;padding:0 6px}
.hm-prodrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding:0 6px}
.hm-prodph{position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(255,182,39,.16) 0%,rgba(255,182,39,0) 55%),repeating-linear-gradient(60deg,rgba(61,232,255,.06) 0 1px,transparent 1px 22px),repeating-linear-gradient(-60deg,rgba(61,232,255,.06) 0 1px,transparent 1px 22px),#0b0f14}
.hm-prodimg img{transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.hm-prod:hover .hm-prodimg img{transform:scale(1.04)}
.hm-prodscan{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.hm-tag{position:absolute;top:10px;left:10px;padding:4px 9px;border-radius:6px;font-size:10.5px;letter-spacing:.16em;white-space:nowrap}
.hm-tag-studio{color:#ffcf6e;background:rgba(20,14,2,.86);box-shadow:inset 0 0 0 1px rgba(255,182,39,.35)}
.hm-tag-order{color:#3de8ff;background:rgba(2,14,20,.86);box-shadow:inset 0 0 0 1px rgba(61,232,255,.3)}
.hm-sold{display:none;position:absolute;top:10px;right:10px;padding:4px 9px;border-radius:6px;font-size:10.5px;letter-spacing:.16em;color:#f3f5f8;background:rgba(40,8,8,.88);box-shadow:inset 0 0 0 1px rgba(255,90,90,.45)}
.hm-sold.is-on{display:block}
.hm-prodname{font-size:18px;font-weight:600;line-height:1.25;color:#f3f5f8}
.hm-prodmeta{font-size:11px;letter-spacing:.18em;color:#8d99a8}
.hm-prodprice{font-family:'Chakra Petch',sans-serif;font-weight:700;letter-spacing:.06em;font-size:17px;color:#f3f5f8}
.hm-prodgo{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.18em;color:#8d99a8;white-space:nowrap;transition:color .25s}
.hm-prod:hover .hm-prodgo{color:#ffcf6e}
.hm-shopsec:not(:has(.hm-prod:not(.is-hidden))){display:none !important}
.hm-shopstat{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.2em;color:#7f8b9a}
@media (max-width:1180px){.hm-shopgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:980px){.hm-shopgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.hm-shopgrid{gap:12px}.hm-prod{padding:8px 8px 12px;gap:10px}.hm-prodtxt,.hm-prodrow{padding:0 4px}.hm-prodname{font-size:15px}.hm-prodmeta{font-size:10px;letter-spacing:.12em}.hm-prodprice{font-size:15px}.hm-prodgo{font-size:0;gap:0}.hm-tag,.hm-sold{font-size:9.5px;padding:3px 7px;top:8px}.hm-tag{left:8px}.hm-sold{right:8px}}

.hm-gh{display:grid;grid-template-columns:220px minmax(0,1fr) auto 112px;gap:24px;align-items:center;padding:16px 24px 16px 16px;border-radius:16px;border:1px solid #222b36;background:linear-gradient(180deg,#10151c 0%,#0a0d12 100%);color:#e8ecf1;text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .25s}
.hm-gh-art{position:relative;display:block;height:140px;border-radius:10px;overflow:hidden;border:1px solid #1a212b;background:#06090d}
.hm-gh-art svg{display:block;width:100%;height:100%}
.hm-gh-shot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hm-gh-shot:not([src]){display:none}
.hm-gh-meta{display:flex;flex-direction:column;align-items:flex-end;gap:9px;min-width:0}
.hm-gh:hover{border-color:rgba(255,182,39,.7);box-shadow:0 0 0 1px rgba(255,182,39,.25),0 0 40px rgba(255,182,39,.12);transform:translateX(4px)}
.hm-gh-code{font-family:'Michroma',sans-serif;font-size:13px;color:#ffb627;white-space:nowrap}
.hm-gh-main{display:flex;flex-direction:column;gap:7px;min-width:0}
.hm-gh-name{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:19px;font-weight:600;color:#f3f5f8}
.hm-gh-desc{font-size:14px;line-height:1.55;color:#a6b1bf}
.hm-gh-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.hm-gh-date{font-size:11px;letter-spacing:.2em;color:#7f8b9a;white-space:nowrap;text-align:right}
.hm-gh-go{display:flex;align-items:center;justify-content:flex-end;gap:6px;font-size:11px;font-weight:600;letter-spacing:.2em;color:#8d99a8;white-space:nowrap;transition:color .25s}
.hm-gh:hover .hm-gh-go{color:#ffcf6e}
.hm-gh-new{padding:3px 8px;border-radius:6px;font-size:10px;font-weight:600;letter-spacing:.18em;color:#1a1000;background:#ffb627;box-shadow:0 0 12px rgba(255,182,39,.5)}
.hm-ghstats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.hm-ghstat{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:12px;border:1px solid #222b36;background:rgba(10,13,18,.8)}
.hm-ghstat b{font-family:'Michroma',sans-serif;font-weight:400;font-size:22px;color:#f3f5f8}
.hm-ghstat span{font-size:10.5px;letter-spacing:.2em;color:#7f8b9a}
.hm-ghmini{transition:border-color .25s}.hm-ghmini:hover{border-color:rgba(255,182,39,.55) !important}
.sd-specs{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.sd-spec{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-top:1px solid #1c242e}
.sd-spec dt{font-size:11px;letter-spacing:.22em;color:#6f7b8b}
.sd-spec dd{margin:0;font-size:15px;color:#d6dde6}
.sd-spin{animation:sd-spin 240s linear infinite}
@keyframes sd-spin{to{transform:rotate(360deg)}}
@media (max-width:980px){.sd-stage{border-right:0 !important;border-bottom:1px solid #1c242e}}
@media (max-width:1180px){.hm-gh{grid-template-columns:160px minmax(0,1fr) 108px;gap:20px}.hm-gh-meta{display:none}.hm-gh-art{height:118px}}
@media (max-width:640px){.hm-gh{grid-template-columns:minmax(0,1fr);gap:14px;padding:26px 18px 28px}.hm-gh-art{height:150px}.hm-gh-go{justify-content:flex-start}.hm-gh-name{font-size:17px}.hm-gh:hover{transform:none}.hm-ghstat b{font-size:18px}.hm-ghstat{padding:12px}}

.sd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sd-card{display:flex;flex-direction:column;gap:14px;padding:10px 10px 16px;border-radius:16px;border:1px solid #222b36;background:linear-gradient(180deg,#10151c 0%,#0a0d12 100%);box-shadow:0 24px 50px rgba(0,0,0,.4);color:#e8ecf1;text-decoration:none}
.sd-sigil{position:relative;display:block;height:210px;border-radius:10px;overflow:hidden;border:1px solid #1a212b;background:radial-gradient(ellipse at 50% 40%,#101a24 0%,#06090d 75%)}
.sd-code{position:absolute;left:10px;top:9px;padding:4px 9px;border-radius:6px;border:1px solid rgba(255,182,39,.28);background:rgba(4,7,11,.82);font-family:'Michroma',sans-serif;font-size:12px;color:#ffb627;text-shadow:0 0 12px rgba(255,182,39,.5)}
.sd-body{display:flex;flex-direction:column;gap:8px;padding:0 6px}
.sd-name{font-size:19px;font-weight:600;line-height:1.25;color:#f3f5f8}
.sd-desc{font-size:14px;line-height:1.55;color:#a6b1bf}
.sd-tags{display:flex;flex-wrap:wrap;gap:6px}
.sd-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding:0 6px}
.sd-shot{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;padding:6px;box-sizing:border-box}
/* the star map keeps its place on the card, just small, tucked beside the date */
.sd-mark{flex-shrink:0;display:block;width:74px;height:24px;border-radius:5px;overflow:hidden;border:1px solid #1b2430;background:#06090d;opacity:.85;transition:opacity .25s}
.sd-card:hover .sd-mark{opacity:1}
.sd-date{margin-right:auto}
.sd-date{font-size:11px;letter-spacing:.2em;color:#7f8b9a}
.sd-card:hover .hm-gh-go{color:#ffcf6e}
@media (max-width:1180px){.sd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.sd-grid{grid-template-columns:minmax(0,1fr)}}

.hm-galgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hm-loggrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.hm-log{display:flex;flex-direction:column;gap:12px;padding:10px 10px 15px;border-radius:14px;border:1px solid #222b36;background:linear-gradient(180deg,#10151c 0%,#0a0d12 100%);color:#e8ecf1;text-align:left}
.hm-logname{font-size:16px;font-weight:600;line-height:1.3;color:#f3f5f8}
.hm-lognote{font-size:13px;line-height:1.5;color:#8d99a8}
.hm-logyear{font-size:11px;letter-spacing:.2em;color:#7f8b9a}
.hm-galsec:not(:has([data-cat]:not(.is-hidden))){display:none !important}
.hm-modalphoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hm-modalphoto:not([src]){display:none}
@media (max-width:1180px){.hm-galgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-loggrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){.hm-loggrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.hm-galgrid{grid-template-columns:minmax(0,1fr)}.hm-loggrid{gap:12px}.hm-log{padding:8px 8px 12px}.hm-logname{font-size:14px}}

/* ---- cockpit buttons: a control-desk key drawn as SVG ---- */
a[data-hmbtn],button[data-hmbtn]{position:relative;border:0 !important;background:none !important;box-shadow:none !important;border-radius:0 !important;overflow:visible}
[data-hmbtn]>svg.hb{position:absolute;left:0;overflow:visible;pointer-events:none;z-index:0}
[data-hmbtn]>.hb-in{position:relative;z-index:1;display:flex;align-items:center;gap:inherit;white-space:nowrap}
[data-hmbtn] .a-kled{display:none !important}
.hb-body{fill:url(#hbFill);stroke:#2a3441;stroke-width:1;transition:stroke .25s,fill .3s}
.hb-seams{fill:none;stroke:#222b36;stroke-width:1;transition:stroke .25s}
.hb-lead{fill:none;stroke:#2a3441;stroke-width:1;stroke-linecap:round;transition:stroke .25s}
.hb-lamp{fill:#2b3542;stroke:#3a4757;stroke-width:.8;transition:fill .3s,stroke .3s,filter .3s}
.hb-seg{fill:none;stroke:var(--hb-hue,#3de8ff);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;filter:drop-shadow(0 0 5px var(--hb-hue-soft,rgba(61,232,255,.75)));transition:stroke-dashoffset .52s cubic-bezier(.45,.1,.25,1),opacity .1s linear}
a[data-hmbtn]:hover .hb-seg,a[data-hmbtn]:focus-visible .hb-seg,button[data-hmbtn]:hover .hb-seg,button[data-hmbtn]:focus-visible .hb-seg{stroke-dashoffset:0;opacity:1}
a[data-hmbtn]:hover .hb-lamp,a[data-hmbtn]:focus-visible .hb-lamp{fill:color-mix(in srgb,var(--hb-hue,#3de8ff) 34%,#0a1016);stroke:var(--hb-hue,#3de8ff)}
a[data-hmbtn]:hover .hb-lead,a[data-hmbtn]:focus-visible .hb-lead{stroke:color-mix(in srgb,var(--hb-hue,#3de8ff) 55%,#2a3441)}
a[data-hmbtn]:hover,a[data-hmbtn]:focus-visible,button[data-hmbtn]:hover,button[data-hmbtn]:focus-visible{box-shadow:none !important;border-color:transparent !important;outline:0}
a[data-hmbtn][aria-current] .hb-body,a[data-hmbtn][data-hmbtn=main] .hb-body{fill:url(#hbFillOn);stroke:#6b5217}
a[data-hmbtn][aria-current] .hb-seams,a[data-hmbtn][data-hmbtn=main] .hb-seams{stroke:#4a3a12}
a[data-hmbtn][aria-current] .hb-lead,a[data-hmbtn][data-hmbtn=main] .hb-lead{stroke:#6b5217}
a[data-hmbtn][aria-current] .hb-lamp,a[data-hmbtn][data-hmbtn=main] .hb-lamp{fill:color-mix(in srgb,#ffb627 calc(var(--on,0)*100%),#2b3542);stroke:color-mix(in srgb,#ffb627 calc(var(--on,0)*100%),#3a4757);filter:drop-shadow(0 0 calc(var(--on,0)*5px) rgba(255,182,39,.9))}
a[data-hmbtn][aria-current],a[data-hmbtn][data-hmbtn=main]{color:#ffffff}
/* mission switches: the label keeps its own box, and the grid drops to two columns
   before a long word like COLLABORATION can shove its switch past the border */
.hm-swtxt{min-width:0;flex:1 1 auto;overflow-wrap:anywhere;line-height:1.25}
@media (max-width:1280px){.hm-toggles{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.hm-switch{padding:0 14px !important;letter-spacing:.12em !important}}

/* The nav strip scrolls sideways on narrow screens, and a scroll box clips both axes —
   which cut the plates clean off the keys. Padding gives them room inside it; the
   negative margin keeps the row exactly as tall as before. */
.a-nav{padding:9px 0 !important;margin:-9px 0 !important}
/* the cove's bloom was centred on the line and washed up over the lamps — push it down */
.a-cove{box-shadow:0 5px 13px 1px rgba(255,182,39,.62),0 11px 42px 7px rgba(255,182,39,.17) !important}
/* a little more headroom in the bar so a main button's band never crowds the edge */
.a-bar{padding-top:16px !important}
@media (max-width:980px){.a-bar{padding-top:15px !important}}
/* deploying: the key gives under the press, then the plate forges up hot before it cools */
.hb-press{transform:translateY(1px) scaleY(.965)}
[data-hmbtn]{transition:transform .11s ease-out}
.hb-forge .hb-body{stroke:#ffcf6e;filter:drop-shadow(0 0 9px rgba(255,182,39,.85))}
.hb-forge .hb-in{color:#fff}
@media(prefers-reduced-motion:reduce){.hb-seg{transition:none}.hb-press{transform:none}.hb-forge .hb-body{filter:none}}

/* ---- cockpit windows ---- */
.is-hw{position:relative;border:0 !important;border-radius:0 !important}
.is-hw>svg.hw{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}
.hw-out{fill:none;stroke:#2a3441;stroke-width:1.6;stroke-linejoin:round}
.hw-seam{fill:none;stroke:#222b36;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}
.hw-out,.hw-seam{transition:stroke .25s}
a.is-hw:hover .hw-out{stroke:#3de8ff}
a.is-hw:hover .hw-seam{stroke:rgba(61,232,255,.35)}
.is-hw{box-shadow:none !important}
/* the step eats into the corners, so every window keeps a little more room where the
   cut lands — top-left and bottom-right */
.sd-card.is-hw{padding:22px 10px 30px !important}
.sd-card.is-hw .sd-foot{padding:0 10px}
.hm-tile.is-hw{padding:34px 24px 32px !important}
.hm-tile.is-hw .hm-num{top:20px !important}
.hm-prod.is-hw{padding-top:12px;padding-bottom:26px}
.hm-prod.is-hw .hm-tag{top:20px !important}
.hm-gh.is-hw{padding:26px 24px 28px 16px !important}
@media (max-width:640px){.hm-gh.is-hw{padding:26px 18px 30px !important}}
.hm-labrow.is-hw{padding-top:22px !important;padding-bottom:24px !important}
.hm-table-module.is-hw{padding-top:24px !important;padding-bottom:26px !important}
/* the frame answers hover on every window, not just the archive cards */
a.is-hw:hover .hw-out,.is-hw:hover .hw-out{stroke:#3a4a5c}
a.is-hw:hover .hw-out{stroke:#3de8ff}

/* ---- touch ----
   Tapping anything on a phone paints the browser's own highlight over the element's
   bounding BOX — a hard grey rectangle, even across a curved band or a notched key.
   Every control here lights itself on touch, so that highlight only ever gets in the
   way. The core also refuses the text-selection flash and the long-press callout,
   since it is a graphic instrument, not copy. */
html{-webkit-tap-highlight-color:transparent;-webkit-tap-highlight-color:rgba(0,0,0,0)}
.hx-core{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.hx-core .hx-band,.hx-core .hx-bglow,.hx-core .hx-hivedisc,.hx-core .hx-cell{outline:none}

/* ---- Stardust shelf picker ----
   Three windows stand in for a very long page, so they have to read as doors from
   across the room: the FORMAT is the headline, in its own hue, lit. The frame already
   carries that hue at rest — an unlit window looks like decoration, a lit one looks
   like a control. Opening a shelf drops it in below; the 0fr -> 1fr grid row animates
   to the panel's own height, which max-height cannot do without guessing a number. */
.sd-pickhead{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 2px 18px}
.sd-pickhead-l{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;letter-spacing:.22em;color:#ffb627}
.sd-pickhead-r{font-size:13px;color:#7f8b9a}
.sd-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sd-pick{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:28px 30px 26px;min-height:222px;border:0;color:#e8ecf1;font-family:'Chakra Petch',sans-serif;text-align:left;cursor:pointer;background:radial-gradient(130% 88% at 50% 126%,color-mix(in srgb,var(--hw-hue,#3de8ff) 26%,transparent) 0%,rgba(10,14,20,0) 72%),linear-gradient(180deg,#141b25 0%,#0a0e14 100%);transition:transform .28s cubic-bezier(.25,.85,.25,1)}
.sd-pick:hover,.sd-pick.is-on{transform:translateY(-3px)}
.sd-pick-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;font-weight:600;letter-spacing:.2em;color:#7f8b9a}
.sd-pick-n{color:var(--hw-hue,#3de8ff)}
/* the format block is pushed to the foot of the window, so three cards of different
   name lengths still line their headlines up with each other */
.sd-pick-fmt{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 12px;margin-top:auto}
.sd-pick-fmt b{font-family:'Michroma',sans-serif;font-weight:400;font-size:clamp(25px,2.45vw,38px);line-height:1.1;color:var(--hw-hue,#3de8ff);text-shadow:0 0 20px var(--hw-hue-soft,rgba(61,232,255,.55));transition:text-shadow .25s}
.sd-pick-fmt i{font-style:normal;font-size:19px;color:var(--hw-hue-soft,#3de8ff);opacity:.5}
.sd-pick:hover .sd-pick-fmt b,.sd-pick.is-on .sd-pick-fmt b{text-shadow:0 0 30px var(--hw-hue,#3de8ff)}
.sd-pick-title{font-size:13px;font-weight:600;letter-spacing:.2em;color:#cdd6e0}
.sd-pick-go{display:flex;align-items:center;gap:10px;margin-top:4px;padding-top:15px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--hw-hue,#3de8ff)}
.sd-pick-go i{font-style:normal}
.sd-pick-led{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--hw-hue,#3de8ff);box-shadow:0 0 9px var(--hw-hue-soft,rgba(61,232,255,.8));animation:sd-pulse 2.8s ease-in-out infinite}
.sd-pick:hover .sd-pick-led,.sd-pick.is-on .sd-pick-led{box-shadow:0 0 15px var(--hw-hue,#3de8ff);animation:none}
@keyframes sd-pulse{0%,100%{opacity:.5}50%{opacity:1}}
.sd-pick-chev{flex-shrink:0;margin-left:auto;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.sd-pick.is-on .sd-pick-chev{transform:rotate(180deg)}
.sd-go-open{display:none}
.sd-pick.is-on .sd-go-shut{display:none}
.sd-pick.is-on .sd-go-open{display:inline}
.sd-pick .hw-out{stroke:color-mix(in srgb,var(--hw-hue,#3de8ff) 60%,#2a3441);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--hw-hue,#3de8ff) 34%,transparent));transition:stroke .25s,filter .25s}
.sd-pick .hw-seam{stroke:color-mix(in srgb,var(--hw-hue,#3de8ff) 28%,#222b36)}
.sd-pick:hover .hw-out,.sd-pick:focus-visible .hw-out,.sd-pick.is-on .hw-out{stroke:var(--hw-hue,#3de8ff);filter:drop-shadow(0 0 11px var(--hw-hue-soft,rgba(61,232,255,.85)))}
.sd-pick:hover .hw-seam,.sd-pick.is-on .hw-seam{stroke:var(--hw-hue-soft,#3de8ff);stroke-opacity:.5}
.sd-pick:focus-visible{outline:0}
.sd-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s cubic-bezier(.25,.85,.25,1),opacity .3s ease}
.sd-panel.is-open{grid-template-rows:1fr;opacity:1}
.sd-panel-in{overflow:hidden;min-height:0}
@media (prefers-reduced-motion:reduce){.sd-panel{transition:none}.sd-pick{transition:none}.sd-pick:hover,.sd-pick.is-on{transform:none}.sd-pick-led{animation:none}}
@media (max-width:980px){.sd-picks{grid-template-columns:minmax(0,1fr);gap:16px}
.sd-pickhead{flex-direction:column;gap:6px;align-items:flex-start}
.sd-pick{padding:24px;min-height:0;gap:16px}
.sd-pick-fmt{font-size:inherit;margin-top:0}
.sd-pick-fmt b{font-size:34px}}

/* ---- the deck keys, wrapped ----
   Below 640 the six keys fall into two rows of three, and a key is taller than its own
   box: the plates stand about 7px proud above and below it. A 6px row gap let the lower
   plate of one row sit straight on the upper plate of the next. The rows need clearance
   for the plates, not just for the boxes. */
@media (max-width:640px){.a-nav{row-gap:22px !important;column-gap:6px !important}}

/* ---- legal pages ----
   Long-form text, so it gets a measure that is actually readable — around 70 characters
   — and a definition list that puts the label and the value in two columns on a wide
   screen and stacks them on a phone. Both languages live in the page; the switch shows
   one at a time. */
.lg-sec{position:relative;z-index:2;padding:44px 56px 0;display:flex;flex-direction:column;gap:22px}
.lg-switch{display:flex;gap:8px;align-self:flex-start}
.lg-switch button{padding:9px 16px;border-radius:9px;border:1px solid #242e3a;background:linear-gradient(180deg,#141b25 0%,#0a0e14 100%);color:#8d99a8;font-family:'Chakra Petch',sans-serif;font-size:11px;font-weight:700;letter-spacing:.2em;cursor:pointer;transition:color .25s,border-color .25s,box-shadow .25s}
.lg-switch button:hover{color:#cdd6e0;border-color:#3a4a5c}
.lg-switch button.is-on{color:#ffcf6e;border-color:rgba(255,182,39,.6);box-shadow:0 0 0 1px rgba(255,182,39,.2),0 0 22px rgba(255,182,39,.12)}
.lg-body{display:flex;flex-direction:column;gap:20px}
.lg-body[hidden]{display:none}
.lg-panel{position:relative;padding:34px 38px}
.lg-head{margin:0 0 22px;font-family:'Michroma',sans-serif;font-weight:400;font-size:17px;letter-spacing:.05em;color:#f3f5f8}
.lg-note{margin:0 0 20px;padding:11px 15px;border-radius:9px;border:1px dashed rgba(61,232,255,.35);font-size:13px;line-height:1.55;color:#8d99a8}
.lg-dl{margin:0}
.lg-row{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:10px 28px;padding:15px 0;border-top:1px solid #1c242e}
.lg-row:first-child{border-top:0;padding-top:0}
.lg-row dt{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#7f8b9a;line-height:1.5}
.lg-row dd{margin:0;font-size:15.5px;line-height:1.65;color:#d6dde6}
.lg-block{padding:20px 0;border-top:1px solid #1c242e}
.lg-block:first-child{border-top:0;padding-top:0}
.lg-block h2{margin:0 0 10px;font-size:15px;font-weight:600;letter-spacing:.06em;color:#f3f5f8}
.lg-block p{margin:0;max-width:72ch;font-size:15.5px;line-height:1.7;color:#a6b1bf}
.lg-panel a{color:#3de8ff;text-decoration:none;border-bottom:1px solid rgba(61,232,255,.32)}
.lg-panel a:hover{border-bottom-color:#3de8ff}
.lg-panel strong{color:#e8ecf1;font-weight:600}
.lg-stamp{margin:2px 0 0;font-size:11px;letter-spacing:.2em;color:#6f7b8b}
@media (max-width:980px){.lg-sec{padding-left:20px !important;padding-right:20px !important}
.lg-panel{padding:26px 22px}
.lg-row{grid-template-columns:minmax(0,1fr);gap:5px;padding:14px 0}
.lg-row dd{font-size:15px}}

/* the one social link in the footer: a key, not a text link */
.hm-social{transition:color .25s,border-color .25s,box-shadow .25s}
.hm-social:hover{color:#f3f5f8;border-color:rgba(61,232,255,.55);box-shadow:0 0 0 1px rgba(61,232,255,.18),0 0 22px rgba(61,232,255,.12)}
