@charset "UTF-8";
:root { --bg-1: #15102b; --c-main: #a879ff; --glow: #64e9ff; --paper: #f8f5ff; --dim: rgba(7, 8, 18, .58); --corner: 36px; color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
html { overflow-x: hidden; min-width: 320px; scroll-behavior: smooth; background: var(--bg-1); }
body { margin: 0; color: #fff; min-width: 320px; background: var(--bg-1); overflow-x: hidden; }
button, summary { font: inherit; }
button { border: 0; cursor: pointer; }
.nimb-shell { background: var(--bg-1); min-height: 100vh; }
.nimb-scene { position: relative; background-image: linear-gradient(125deg, rgba(5, 7, 18, .75), rgba(5, 7, 18, .1) 55%, rgba(5, 7, 18, .7)), url("../images/hitnspin-background.webp"); min-height: 100vh; transition: filter .35s ease, transform .35s ease; display: grid; background-position: center; background-size: cover; background-attachment: fixed; isolation: isolate; grid-template-rows: auto 1fr auto; }
.nimb-scene::before { inset: 0; z-index: -1; pointer-events: none; mix-blend-mode: screen; content: ""; position: absolute; opacity: .08; background: #a879ff; }
.nimb-scene::after { content: ""; position: absolute; width: 42vw; height: 42vw; max-width: 520px; max-height: 520px; right: -12vw; top: 12vh; border: 1px solid color-mix(in srgb, var(--glow) 55%, transparent); border-radius: 50%; box-shadow: 0 0 90px color-mix(in srgb, var(--c-main) 36%, transparent); opacity: .65; pointer-events: none; }
.nimb-topbar { justify-content: space-between; padding: 18px clamp(18px, 4vw, 64px); position: relative; align-items: center; gap: 16px; background: linear-gradient(180deg, rgba(5, 6, 14, .86), rgba(5, 6, 14, .25)); z-index: 2; display: flex; }
.nimb-brandmark { font-weight: 800; align-items: center; letter-spacing: .08em; text-transform: uppercase; gap: 12px; display: inline-flex; color: #fff; }
.nimb-brandmark img { object-fit: contain; padding: 5px; background: rgba(255,255,255,.9); width: 42px; border-radius: 13px; height: 42px; }
.nimb-brandmark span { font-size: clamp(15px, 2vw, 21px); }
.nimb-account { border: 1px solid color-mix(in srgb, var(--c-main) 70%, white); border-radius: 999px; background: rgba(8, 10, 24, .7); color: #fff; padding: 11px 16px; font-weight: 750; }
.nimb-hero { z-index: 1; display: grid; position: relative; padding: clamp(34px, 8vh, 100px) clamp(18px, 7vw, 110px) clamp(28px, 6vh, 74px); place-items: center; }
.nimb-pitch { width: min(700px, 100%); margin-right: auto; padding: clamp(24px, 4vw, 54px); border: 1px solid rgba(255,255,255,.2); border-radius: var(--corner); background: linear-gradient(135deg, rgba(5, 7, 20, .79), rgba(5, 7, 20, .3)); backdrop-filter: blur(12px); box-shadow: 0 24px 80px rgba(0,0,0,.32); }
.nimb-eyebrow { letter-spacing: .16em; color: var(--glow); font-size: .78rem; text-transform: uppercase; font-weight: 800; margin: 0 0 13px; }
.nimb-pitch p { margin: 22px 0 0; font-size: clamp(1rem, 1.8vw, 1.22rem); line-height: 1.55; max-width: 52ch; color: rgba(255,255,255,.82); }
.nimb-actions { margin-top: 28px; gap: 12px; display: flex; align-items: center; flex-wrap: wrap; }
.nimb-cta { color: var(--bg-1); box-shadow: 0 12px 30px color-mix(in srgb, var(--glow) 26%, transparent); transition: transform .2s ease, box-shadow .2s ease; border-radius: 12px; padding: 12px 21px; min-height: 50px; font-weight: 850; background: var(--glow); }
.nimb-cta:hover, .nimb-cta:focus-visible { box-shadow: 0 16px 38px color-mix(in srgb, var(--glow) 44%, transparent); transform: translateY(-2px); }
.nimb-ghost { min-height: 50px; padding: 12px 18px; border: 1px solid rgba(255,255,255,.32); border-radius: 12px; color: #fff; background: rgba(255,255,255,.08); font-weight: 750; }
.nimb-proof { font-size: .88rem; gap: 16px; justify-content: space-between; color: rgba(255,255,255,.77); display: flex; background: rgba(3, 4, 12, .58); position: relative; flex-wrap: wrap; z-index: 1; padding: 20px clamp(18px, 4vw, 64px) 24px; }
.nimb-proof strong { display: block; color: #fff; font-size: 1.1rem; }
.nimb-locked .nimb-scene { filter: blur(11px) brightness(.46); transform: scale(1.025); }
.nimb-gate { padding: 22px; display: grid; position: fixed; place-items: center; background: rgba(5, 7, 18, .48); inset: 0; z-index: 20; }
.nimb-gate[hidden] { display: none; }
.nimb-gatecard { width: min(500px, 100%); padding: clamp(24px, 5vw, 46px); border: 1px solid rgba(255,255,255,.22); border-radius: 26px; background: linear-gradient(150deg, rgba(20, 13, 35, .97), rgba(7, 12, 28, .96)); box-shadow: 0 28px 100px rgba(0,0,0,.58); }
.nimb-gatecard::before { font-weight: 950; width: 58px; background: var(--glow); display: inline-grid; color: var(--bg-1); margin-bottom: 20px; border-radius: 18px; height: 58px; place-items: center; content: "18+"; }
.nimb-gatecard p { line-height: 1.55; margin: 0 0 16px; }
.nimb-gatecard p:first-of-type { font-size: clamp(1.25rem, 4vw, 1.75rem); font-weight: 850; color: #fff; }
.nimb-gatecard p:last-of-type { color: rgba(255,255,255,.72); }
.nimb-gateactions { display: grid; gap: 11px; margin-top: 26px; grid-template-columns: 1fr 1fr; }
.nimb-gateactions button { font-weight: 800; border-radius: 12px; min-height: 48px; }
.nimb-allow { background: var(--glow); color: var(--bg-1); }
.nimb-deny { border: 1px solid rgba(255,255,255,.28); color: #fff; background: rgba(255,255,255,.07); }
.nimb-content { color: #20202b; position: relative; background: var(--paper); padding: clamp(28px, 6vw, 82px) clamp(18px, 9vw, 150px); z-index: 3; }
.nimb-content article { margin: 0 auto; max-width: 920px; }
.nimb-content h1 { line-height: 1.02; font-size: clamp(2rem, 5vw, 4.2rem); letter-spacing: -.05em; color: var(--bg-1); margin-top: 0; }
.nimb-content h2 { margin-top: 2.2em; color: var(--bg-1); font-size: clamp(1.35rem, 3vw, 2.2rem); }
.nimb-content h3 { color: var(--bg-1); }
.nimb-content p, .nimb-content li { line-height: 1.72; color: #444654; }
.nimb-content a { color: var(--c-main); }
.nimb-details { color: #20202b; position: relative; padding: 26px clamp(18px, 9vw, 150px) 70px; background: var(--paper); z-index: 3; }
.nimb-details summary { max-width: 920px; margin: 0 auto; padding: 15px 21px; border: 1px solid rgba(20, 15, 40, .14); border-radius: 14px; color: var(--bg-1); background: rgba(255,255,255,.66); cursor: pointer; font-weight: 850; list-style-position: inside; }
.nimb-details article { max-width: 920px; margin: 25px auto 0; }
.nimb-details article h1 { font-size: clamp(2rem, 5vw, 4.2rem); color: var(--bg-1); line-height: 1.02; letter-spacing: -.05em; }
.nimb-details article h2 { color: var(--bg-1); margin-top: 2.2em; }
.nimb-details article p, .nimb-details article li { line-height: 1.72; color: #444654; }
.nimb-route-surface { cursor: pointer; }
.nimb-statline-s7 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 24px 0 0; }
.nimb-statline-s7 span { border-top: 1px solid rgba(255,255,255,.24); text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; color: rgba(255,255,255,.67); padding: 10px 11px; }
.nimb-statline-s7 b { color: var(--glow); font-size: 1rem; letter-spacing: 0; display: block; }
.nimb-pitch .nimb-headline { color: #fff; letter-spacing: -.065em; text-wrap: balance; font-size: clamp(2.25rem, 6vw, 5.8rem); margin: 0; max-width: 13ch; font-weight: 800; line-height: .96; }
.nimb-legal { color: #444654; padding: 28px clamp(18px, 9vw, 150px) 40px; position: relative; z-index: 3; font-size: .88rem; border-top: 1px solid rgba(20, 15, 40, .1); background: var(--paper); }
.nimb-legal nav { display: flex; margin: 0 auto 14px; flex-wrap: wrap; gap: 8px 18px; max-width: 920px; }
.nimb-legal a { text-decoration: underline; text-underline-offset: 3px; color: var(--bg-1); }
.nimb-legal a[aria-current] { font-weight: 800; text-decoration: none; }
.nimb-legal p { max-width: 920px; margin: 0 auto; }
@media (max-width: 720px) {
  .nimb-scene { background-attachment: scroll; }
  .nimb-topbar { padding: 14px 17px; }
  .nimb-brandmark span { font-size: 13px; }
  .nimb-brandmark img { width: 35px; height: 35px; }
  .nimb-account { font-size: .82rem; padding: 9px 12px; }
  .nimb-hero { padding: 35px 16px 27px; align-items: end; min-height: 72vh; }
  .nimb-pitch { padding: 23px 19px; }
  .nimb-pitch .nimb-headline { font-size: clamp(2.4rem, 14vw, 4rem); }
  .nimb-actions { display: grid; grid-template-columns: 1fr; }
  .nimb-cta, .nimb-ghost { width: 100%; }
  .nimb-proof { display: grid; grid-template-columns: 1fr 1fr; padding: 16px 17px 21px; }
  .nimb-gateactions { grid-template-columns: 1fr; }
  .nimb-orbit-s7 { right: -35px; transform: scale(.7) rotate(-12deg); top: 21%; }
  .nimb-statline-s7 { gap: 4px; }
  .nimb-content, .nimb-details { padding-left: 16px; padding-right: 16px; }
}
