/* Chainlink public site - shared design kit (tokens, chrome, keys,
   surfaces). Ported from the "Chainlink Venue Web" design; page-specific
   styles live in their own stylesheet next to this one. */

@font-face{font-family:'Momo Trust Display';src:url('/_site/app/fonts/MomoTrustDisplay-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:'Permanent Marker';src:url('/_site/app/fonts/PermanentMarker-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:'Share Tech Mono';src:url('/_site/app/fonts/ShareTechMono-Regular.ttf') format('truetype');font-display:swap}

:root{
  --ink:#14121F;--line:#15111F;--muted:#A9A3C4;--deep:#2E2A45;
  --paper:#F4F1EA;--paper-top:#FBF9F2;--paper-bottom:#F1EDE1;--paper-ink:#1A1726;--paper-rule:#CFC9BA;--paper-muted:#6B6455;
  --cyan:#00BFD4;--cyan-hover:#8DFBFF;--neon-cyan:#00F5D4;--neon-magenta:#FF00FF;--magenta:#CC00CC;
  --violet:#B13AF2;--teal:#14B8A6;--teal-ink:#8DF5E6;--error:#FF7A7A;--error-pink:#FF7AD9;
  --faceplate:linear-gradient(180deg,#4A4370 0%,#3B3559 32%,#2A2440 72%,#211C33 100%);
  --brand-line:linear-gradient(90deg,#FF00FF,#00BFD4);
  --max:1328px;--gutter:56px;
  --font-display:'Momo Trust Display',Manrope,system-ui,sans-serif;
  --font-marker:'Permanent Marker',cursive;
  --font-mono:'Share Tech Mono',ui-monospace,monospace;
  --font-body:Manrope,system-ui,-apple-system,'Segoe UI',sans-serif;
  --engrave:0 -1px 0 rgba(0,0,0,.5);
  --neon-cyan-text:0 0 3px #fff,0 0 10px #00F5D4,0 0 26px #00BFD4,0 0 54px #00BFD4;
  --neon-magenta-text:0 0 3px #fff,0 0 10px #FF00FF,0 0 24px #FF00FF,0 0 48px #CC00CC,0 0 90px #B13AF2;
}
@media (max-width:899px){:root{--gutter:20px}}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:#fff;font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{max-width:100%}
img{height:auto}
a{color:var(--cyan);text-decoration:none}
a:hover{color:var(--cyan-hover)}
h1,h2,h3,h4,p{margin:0}
button{font:inherit}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,.4)}
.cl-paper input::placeholder,.cl-paper textarea::placeholder{color:rgba(26,23,38,.35)}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
[hidden]{display:none!important}

/* Skip link + screen-reader-only text (for form labels and icon buttons). */
.cl-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cl-skip{position:absolute;left:12px;top:-60px;z-index:200;padding:10px 16px;border-radius:10px;background:var(--ink);color:#fff;font:700 14px var(--font-body)}
.cl-skip:focus{top:12px}

/* Type */
.cl-display{font-family:var(--font-display);font-weight:400}
.cl-marker{font-family:var(--font-marker);font-weight:400}
.cl-mono{font-family:var(--font-mono);font-weight:400}
.cl-neon-cyan{color:#E6FFFD;text-shadow:var(--neon-cyan-text)}
.cl-neon-magenta{color:#FFE6FF;text-shadow:var(--neon-magenta-text)}
.cl-engrave{text-shadow:var(--engrave)}

/* Layout */
.cl-content{width:100%;max-width:var(--max);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.cl-groove{height:2px;background:linear-gradient(180deg,rgba(0,0,0,.55) 50%,rgba(255,255,255,.14) 50%)}
.cl-dashed{height:2px;background:repeating-linear-gradient(90deg,var(--paper-rule) 0 6px,transparent 6px 10px)}

/* Surfaces */
.cl-faceplate{background:var(--faceplate);border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 3px 3px rgba(255,255,255,.2),inset 0 -14px 22px rgba(0,0,0,.45),0 18px 40px rgba(0,0,0,.5)}
.cl-recess{border-radius:14px;background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.2));box-shadow:inset 0 3px 6px rgba(0,0,0,.78),0 1px 0 rgba(255,255,255,.12)}
.cl-paper{color:var(--paper-ink);background:linear-gradient(180deg,var(--paper-top),var(--paper-bottom));box-shadow:0 18px 40px rgba(0,0,0,.5)}
.cl-tape{position:absolute;width:110px;height:28px;background:rgba(255,255,255,.55);box-shadow:0 1px 2px rgba(0,0,0,.2);backdrop-filter:blur(1px)}

/* Keys: a raised plate on a plinth that sinks when pressed.
   .cl-key--magenta / --teal / --violet recolour the ramp. */
.cl-key{--k-top:#565080;--k-mid:#3B3559;--k-bottom:#241F36;--k-stop:48%;--k-border:#15111F;--k-base:#1B1728;--k-hard:#0D0B15;--k-glow:rgba(0,0,0,.45);--k-text:#fff;--k-shade:0 -1px 0 rgba(0,0,0,.5);
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;white-space:nowrap;
  padding:11px 22px;border-radius:12px;font:700 14px var(--font-body);color:var(--k-text);text-shadow:var(--k-shade);text-decoration:none;
  background:linear-gradient(180deg,var(--k-top) 0%,var(--k-mid) var(--k-stop),var(--k-bottom) 100%);border:1px solid var(--k-border);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.3),inset 0 -2px 0 rgba(0,0,0,.6),0 5px 0 var(--k-base),0 6px 1px var(--k-hard),0 10px 16px var(--k-glow);
  margin-bottom:5px;transition:transform .06s ease,box-shadow .06s ease,filter .15s ease;-webkit-tap-highlight-color:transparent}
.cl-key:hover{color:var(--k-text);filter:brightness(1.08)}
.cl-key:active,.cl-key.is-pressed{transform:translateY(5px);box-shadow:inset 0 2px 0 rgba(0,0,0,.6),inset 0 -2px 0 rgba(255,255,255,.3)}
.cl-key[disabled],.cl-key.is-busy{cursor:default;filter:saturate(.7) brightness(.9)}
.cl-key--magenta{--k-top:#E655E6;--k-mid:#CC00CC;--k-bottom:#8E008E;--k-stop:46%;--k-border:#6B0068;--k-base:#5C0058;--k-hard:#3D003A;--k-glow:rgba(204,0,204,.35);--k-shade:0 -1px 0 rgba(92,0,88,.7),0 1px 1px rgba(255,255,255,.28);font-weight:800;letter-spacing:.84px}
.cl-key--teal{--k-top:#3FE8D6;--k-mid:#14B8A6;--k-bottom:#0B7A6E;--k-border:#06564D;--k-base:#06544B;--k-hard:#033831;--k-glow:rgba(20,184,166,.3);--k-text:#06382F;--k-shade:0 1px 0 rgba(255,255,255,.3)}
.cl-key--violet{--k-top:#9A93E8;--k-mid:#6F68D6;--k-bottom:#443CA0;--k-stop:44%;--k-border:#2F2878;--k-base:#332C86;--k-hard:#1E1A55;--k-glow:rgba(111,104,214,.35);--k-shade:0 -1px 0 rgba(30,26,85,.7)}
.cl-key--block{display:flex;width:100%}
.cl-key--icon{padding:10px}
.cl-key .cl-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:cl-spin .8s linear infinite}
@keyframes cl-spin{to{transform:rotate(360deg)}}

/* ------------------------------------------------------------------ */
/* Header */
.cl-header{position:sticky;top:0;z-index:50;background:var(--faceplate);border-bottom:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 3px 3px rgba(255,255,255,.2),inset 0 -14px 22px rgba(0,0,0,.45),0 10px 24px rgba(0,0,0,.5)}
.cl-header__line{height:3px;background:var(--brand-line)}
.cl-header__bar{display:flex;align-items:center;gap:36px;padding-top:14px;padding-bottom:14px}
.cl-header__logo{display:block;flex:none;line-height:0}
.cl-header__logo img{height:42px;width:auto;filter:drop-shadow(0 -1px 0 rgba(0,0,0,.5))}
.cl-header__spacer{flex:1}
.cl-header__keys{display:flex;align-items:center;gap:14px}
.cl-nav{display:flex;align-items:center;gap:4px;padding:5px;border-radius:14px;background:linear-gradient(180deg,rgba(0,0,0,.3),rgba(0,0,0,.1));box-shadow:inset 0 2px 0 rgba(0,0,0,.6),inset 0 -1px 0 rgba(255,255,255,.22)}
.cl-nav__tab{display:flex;align-items:center;gap:6px;white-space:nowrap;padding:9px 16px;border-radius:10px;border:1px solid transparent;font:700 12.5px var(--font-body);letter-spacing:.75px;color:var(--muted);text-shadow:var(--engrave);background:none;cursor:pointer}
.cl-nav__tab:hover{color:#fff}
.cl-nav__tab[aria-current="page"]{color:#fff;background:linear-gradient(180deg,#565080 0%,#3B3559 48%,#241F36 100%);border-color:var(--line);box-shadow:inset 0 2px 0 rgba(255,255,255,.3),inset 0 -2px 0 rgba(0,0,0,.6),0 3px 0 #1B1728}
.cl-nav__caret{font-size:9px}
.cl-menu{position:relative}
.cl-menu__panel{position:absolute;top:100%;left:0;padding-top:10px;z-index:60;display:none}
.cl-menu:hover .cl-menu__panel,.cl-menu:focus-within .cl-menu__panel,.cl-menu.is-open .cl-menu__panel{display:block}
.cl-menu__list{width:220px;padding:8px;border-radius:14px;display:flex;flex-direction:column;gap:4px;background:var(--faceplate);border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 18px 40px rgba(0,0,0,.6)}
.cl-menu__item{padding:12px 14px;border-radius:10px;font:600 14px var(--font-body);color:#fff;text-shadow:var(--engrave)}
.cl-menu__item:hover{background:rgba(0,0,0,.25);color:var(--cyan)}
.cl-menu__item--violet:hover{color:var(--violet)}
.cl-header__burger{display:none}
@media (max-width:899px){
  .cl-header__bar{gap:16px}
  .cl-header .cl-nav,.cl-header .cl-header__keys{display:none}
  .cl-header__burger{display:inline-flex}
}

/* Phone menu sheet */
.cl-sheet{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-end;background:rgba(10,8,18,.55)}
.cl-sheet[hidden]{display:none}
.cl-sheet__panel{width:100%;padding:18px 16px 28px;border-radius:24px 24px 0 0;display:flex;flex-direction:column;gap:2px}
.cl-sheet__item{display:block;padding:14px 16px;border-radius:12px;font:600 16px var(--font-body);color:#fff;text-shadow:var(--engrave)}
.cl-sheet__item:hover{background:rgba(0,0,0,.25);color:var(--cyan)}
.cl-sheet__item--sub{padding-left:32px}
.cl-sheet__item--violet:hover{color:var(--violet)}
.cl-sheet .cl-groove{margin:14px 0}
.cl-sheet__keys{display:flex;flex-direction:column;gap:10px}

/* Breadcrumbs - a small engraved trail under the header. */
.cl-crumbs{padding-top:22px}
.cl-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;font:700 11.5px var(--font-body);letter-spacing:.9px;text-transform:uppercase;color:var(--muted);text-shadow:var(--engrave)}
.cl-crumbs li{display:flex;align-items:center;gap:6px}
.cl-crumbs li+li::before{content:'\203A';font-size:14px;color:rgba(169,163,196,.6)}
.cl-crumbs a{color:var(--muted)}
.cl-crumbs a:hover{color:#fff}
.cl-crumbs [aria-current="page"]{color:#fff}

/* ------------------------------------------------------------------ */
/* Footer */
.cl-footer{background:var(--ink)}
.cl-footer__inner{padding-top:40px;padding-bottom:34px}
.cl-footer__links{display:flex;flex-wrap:wrap;gap:12px 30px;margin:0;padding:0;list-style:none}
.cl-footer__links a{white-space:nowrap;font:600 13.5px var(--font-body);color:var(--muted);text-shadow:var(--engrave)}
.cl-footer__links a:hover{color:#fff}
.cl-footer .cl-groove{margin:28px 0 22px}
.cl-footer__row{display:flex;align-items:center;flex-wrap:wrap;gap:14px 18px}
.cl-footer__logo{height:28px;width:auto;opacity:.9}
.cl-footer__socials{display:flex;gap:10px;padding-bottom:3px}
.cl-social{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(180deg,#565080,#3B3559 48%,#241F36);border:1px solid var(--line);box-shadow:inset 0 2px 0 rgba(255,255,255,.3),0 3px 0 #1B1728}
.cl-social img{width:18px;height:18px;border-radius:5px;display:block}
a.cl-social{cursor:pointer;transition:transform .12s ease,filter .12s ease}
a.cl-social:hover{filter:brightness(1.15)}
a.cl-social:active{transform:translateY(2px);box-shadow:inset 0 2px 0 rgba(255,255,255,.3),0 1px 0 #1B1728}
a.cl-social:focus-visible{outline:2px solid var(--line);outline-offset:3px}
.cl-footer__ph{display:block;line-height:0}
.cl-footer__ph img{width:200px;height:43px;display:block}
.cl-footer__copy{font:400 12px var(--font-body);color:rgba(255,255,255,.55)}

/* ------------------------------------------------------------------ */
/* Fields (contact form, waitlist) */
.cl-field{display:flex;flex-direction:column;gap:8px}
.cl-field__label{font:500 14px var(--font-body);color:rgba(255,255,255,.85)}
.cl-field__well{display:flex;align-items:center;gap:12px;padding:0 16px}
.cl-field__well img{width:18px;height:18px;opacity:.7}
.cl-input{flex:1;min-width:0;width:100%;padding:15px 0;border:0;outline:0;background:transparent;color:#fff;font:500 15px var(--font-body)}
.cl-field__error{font:500 13px var(--font-body);color:var(--error)}

/* Toast */
.cl-toast{position:fixed;right:24px;bottom:24px;z-index:150;max-width:360px;padding:16px 18px;border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 20px 40px rgba(0,0,0,.6)}
.cl-toast__title{font:400 15px var(--font-display);color:var(--teal-ink)}
.cl-toast--error .cl-toast__title{color:var(--error-pink)}
.cl-toast__body{margin-top:4px;font:400 14px/1.45 var(--font-body);color:rgba(255,255,255,.82)}
@media (max-width:899px){.cl-toast{left:24px}}

/* Coming-soon switch: [data-live] shows only when venue sign-up is open,
   [data-soon] only while it is closed. The server-rendered default is
   "soon" (html has class cl-soon) until cl.js reads the live flag. */
html.cl-soon [data-live]{display:none!important}
html:not(.cl-soon) [data-soon]{display:none!important}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
