/* Shared site chrome (President's Club tab, social bar, footer).
 Generated from the homepage by _tools/site_chrome.py. Do not edit by hand: edit index.html and rerun the script. */
.pc, .social-col, .site-footer{
--ink:#0a0a0a; --paper:#eeeeee; --pink:#f51153; --lime:#b6fd29; --lavender:#b697fc; --magenta:#bd6ec9;
--line:rgba(0,0,0,0.1); --mono:'Arian LT Light', sans-serif; --display-heavy:'Arian LT Heavy', sans-serif;
--display-demi:'Arian LT Demi', sans-serif; --heavy:'Mont Heavy', sans-serif; --body:'Mont Light', sans-serif;
}
.pc *, .social-col *, .site-footer *{ box-sizing:border-box; }
.pc .kicker{ display:flex; align-items:center; gap:8px; font-family:var(--mono); font-size:12px; letter-spacing:.12em; color:var(--pink); text-transform:uppercase; }
.pc .emph-word{ font-family:'Hyperwave One', sans-serif; text-transform:none; color:var(--pink); display:inline-block; font-size:2em !important; line-height:.8; }
.pc p, .pc h3{ margin:0; -webkit-text-stroke:0; } .pc-panel{ font-family:var(--body); font-weight:300; text-align:left; }
.side-tab{ font-family:inherit; }
.site-footer{ font-family:var(--body); font-weight:300; text-align:left; font-size:16px; line-height:normal; }
.site-footer a{ color:inherit; margin:0; text-decoration:none; }
.site-footer .footer-col a{ color:#d8d5cd; } .site-footer .footer-col a:hover{ color:var(--pink); }
.site-footer .footer-h{ margin:0 0 16px; font-weight:400; line-height:normal; }
.site-footer p{ -webkit-text-stroke:0; }
@media (max-width:700px){ .site-footer{ padding-bottom:90px !important; } }
.cursor-dot, .cursor-ring{ --pink:#f51153; }
.side-tab{ position:fixed; left:0; top:38%; z-index:140; background:#fff; border:1px solid var(--line); border-left:none; padding:18px 10px; display:flex; flex-direction:column; align-items:center; gap:10px; border-radius:0 10px 10px 0; box-shadow:2px 0 10px rgba(0,0,0,0.06); }
.side-tab img{ width:16px; opacity:.9; }
.side-tab span{ writing-mode:vertical-rl; transform:rotate(180deg); font-family:var(--mono); font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:#333; }
@media (max-width:700px){ .side-tab{ padding:10px 6px; top:auto; bottom:80px; } .side-tab span{ display:none; } }

.social-col{ position:fixed; right:22px; top:32%; z-index:140; display:flex; flex-direction:column; gap:14px; }
.social-col a{ width:34px; height:34px; border-radius:50%; background:#fff; border:1px solid var(--line); display:flex; align-items:center; justify-content:center; transition:background .2s ease, transform .2s ease; }
.social-col a:hover{ background:var(--pink); transform:translateY(-2px); }
.social-col a:hover svg{ fill:#fff; }
.social-col svg{ width:15px; height:15px; fill:#333; transition:fill .2s ease; }
@media (max-width:700px){
  .social-col{ right:auto; left:0; top:auto; bottom:0; flex-direction:row; width:100%; justify-content:center; background:#fff; padding:10px; border-top:1px solid var(--line); gap:20px; }
}

/* ===== President's Club slide-out ===== */
.pc{ --pcw:380px; position:fixed; left:0; top:30%; z-index:150; display:flex; align-items:flex-start;
  transform:translateX(calc(-1 * var(--pcw))); transition:transform .65s cubic-bezier(.22,1,.36,1); }
.pc.open{ transform:none; }
.pc .side-tab{ position:static; cursor:pointer; font:inherit; margin-top:34px; transition:background-color .4s ease, box-shadow .4s ease; }
.pc.open .side-tab{ box-shadow:6px 0 18px rgba(0,0,0,.12); }
.pc .side-tab:focus-visible{ outline:2px solid var(--pink); outline-offset:2px; }
.pc-panel{ position:relative; width:var(--pcw); box-sizing:border-box; background:#fff; color:var(--ink); padding:30px 30px 32px 34px;
  border-radius:0 0 16px 0; border:1px solid var(--line); border-left:none; box-shadow:14px 18px 50px rgba(0,0,0,.22);
  visibility:hidden; transition:visibility 0s linear .65s; }
.pc.open .pc-panel{ visibility:visible; transition-delay:0s; }
.pc-panel .kicker{ margin-bottom:12px; justify-content:flex-start; }
.pc-title .emph-word{ margin-left:3px; }
.pc-title{ font-family:var(--display-heavy); font-weight:800; font-size:27px; line-height:1.12; text-transform:uppercase; margin:0 0 16px; }
.pc-title .pc-x{ color:var(--pink); }
.pc-title .emph-word{ font-size:calc(1em + 6px); }
.pc-lead{ font-family:var(--heavy); font-weight:800; font-size:16px; color:var(--pink); margin:0 0 10px; }
.pc-panel p{ font-size:14.5px; line-height:1.7; margin:0; }
.pc-close{ position:absolute; top:12px; right:14px; width:32px; height:32px; border-radius:50%; border:none; background:transparent; font-size:24px; line-height:1; cursor:pointer; color:#555; transition:background-color .3s ease, color .3s ease; }
.pc-close:hover{ background:var(--pink); color:#fff; }
@media (max-width:700px){
  .pc{ --pcw:min(330px, calc(100vw - 44px)); top:auto; bottom:80px; align-items:flex-end; }
  .pc .side-tab{ margin-top:0; margin-bottom:0; }
  .pc-panel{ border-radius:0 16px 0 0; padding:24px 22px 26px 22px; }
  .pc-title{ font-size:22px; }
}
@media (prefers-reduced-motion: reduce){ .pc{ transition:none; } }

footer.site-footer{ background:var(--ink); color:#fff; padding:70px 6vw 30px; }
.site-footer .footer-grid{ display:grid; grid-template-columns:2fr 1fr 1.3fr 1fr 1.4fr; gap:36px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.12); }
.site-footer .footer-logo-img{ width:150px; height:auto; display:block; margin-bottom:16px; filter:brightness(0) invert(1); }
.site-footer .footer-grid p{ font-size:14px; color:#b5b1a7; line-height:1.6; max-width:280px; }
.site-footer .footer-col .footer-h{ font-family:var(--mono); font-size:11px; letter-spacing:.08em; color:var(--lime); margin-bottom:16px; text-transform:uppercase; line-height:normal; max-width:none; }
.site-footer .footer-col a{ display:block; font-size:14px; color:#d8d5cd; margin-bottom:10px; }
.site-footer .footer-col a:hover{ color:var(--pink); }
.site-footer .footer-bottom{ display:flex; justify-content:space-between; padding-top:22px; font-family:var(--mono); font-size:11px; color:#8a877e; flex-wrap:wrap; gap:10px; }
@media (max-width:900px){ .site-footer .footer-grid{ grid-template-columns:1fr 1fr; text-align:center; } .site-footer .footer-logo-img, .site-footer .footer-grid p{ margin-left:auto; margin-right:auto; } }
@media (max-width:480px){ .site-footer .footer-grid{ grid-template-columns:1fr; } .site-footer .footer-bottom{ flex-direction:column; align-items:center; text-align:center; } }
.site-footer .footer-grid p{ font-size:15px; color:#d0ccc2; }
/* ---------- Custom cursor (desktop mouse/trackpad only) ---------- */
.cursor-dot, .cursor-ring{ position:fixed; top:0; left:0; pointer-events:none; z-index:2147483647; opacity:0; will-change:transform; contain:layout style; }
.cursor-dot{ width:8px; height:8px; margin:-4px 0 0 -4px; border-radius:50%; background:var(--cur, var(--pink)); transition:opacity .2s ease, width .2s ease, height .2s ease, margin .2s ease, background-color .25s ease; }
.cursor-ring{ width:36px; height:36px; margin:-18px 0 0 -18px; border-radius:50%; border:1.5px solid var(--cur, var(--pink)); transition:opacity .25s ease, width .3s cubic-bezier(.16,1,.3,1), height .3s cubic-bezier(.16,1,.3,1), margin .3s cubic-bezier(.16,1,.3,1), background-color .3s ease, border-color .3s ease; }
html.cursor-visible .cursor-dot, html.cursor-visible .cursor-ring{ opacity:1; }
html.cursor-hover .cursor-ring{ width:64px; height:64px; margin:-32px 0 0 -32px; background:#fff; border-color:#fff; mix-blend-mode:difference; }
html.cursor-hover .cursor-dot{ width:0; height:0; margin:0; }
html.cursor-down .cursor-ring{ width:28px; height:28px; margin:-14px 0 0 -14px; }
html.cursor-text .cursor-dot, html.cursor-text .cursor-ring{ opacity:0; }
@media (hover:hover) and (pointer:fine){
  html.has-custom-cursor, html.has-custom-cursor *{ cursor:none !important; }
  html.has-custom-cursor input, html.has-custom-cursor textarea, html.has-custom-cursor select{ cursor:text !important; }
}
@media (hover:none), (pointer:coarse){ .cursor-dot, .cursor-ring{ display:none !important; } }

.site-cta{ --ink:#0a0a0a; --pink:#f51153; --lime:#b6fd29; --lavender:#b697fc; --magenta:#bd6ec9; --mono:'Arian LT Light', sans-serif;
  --display-heavy:'Arian LT Heavy', sans-serif; --btn:'Arian LT Demi', sans-serif; --heavy:'Mont Heavy', sans-serif; --body:'Mont Light', sans-serif;
  background:var(--cta-bg, var(--hbg, var(--lime))); padding:110px 6vw; text-align:center; scroll-margin-top:70px; font-family:var(--body); font-weight:300; }
.site-cta *{ box-sizing:border-box; } .site-cta h2, .site-cta h4, .site-cta p{ -webkit-text-stroke:0; }
.site-cta a{ text-decoration:none; } .site-cta button{ border:none; cursor:pointer; }
@media (max-width:700px){ .site-cta{ padding:70px 5vw; } .site-cta .cta-card{ padding:40px 22px; } }
.site-cta .kicker{ display:flex; align-items:center; gap:8px; font-family:var(--mono); font-size:12px; letter-spacing:.12em; color:var(--pink); text-transform:uppercase; margin-bottom:16px; }
.site-cta .section-title{ font-family:var(--display-heavy); font-weight:800; font-size:clamp(28px,4.6vw,52px); line-height:1.12; text-transform:uppercase; max-width:780px; }
.site-cta .btn-solid{ font-family:var(--btn); font-size:13px; letter-spacing:.02em; text-transform:uppercase; background:var(--pink); color:#fff; padding:15px 28px; border-radius:30px; transition:transform .2s ease, background .2s ease; display:inline-block; border:none; cursor:pointer; }
.site-cta .btn-solid:hover{ background:var(--ink); transform:translateY(-2px); }
.site-cta .btn-lime{ font-family:var(--btn); font-size:12px; letter-spacing:.02em; text-transform:uppercase; background:var(--lime); color:#1a1a1a; padding:12px 22px; border-radius:30px; display:inline-block; transition:transform .2s ease; }
.site-cta .btn-lime:hover{ transform:translateY(-2px); }
.site-cta .cta-form{ max-width:560px; margin:0 auto; display:flex; flex-direction:column; gap:14px; text-align:left; }
.site-cta .cta-form-row{ display:flex; gap:14px; flex-wrap:wrap; }
.site-cta .cta-form-row input{ flex:1; min-width:200px; }
.site-cta .cta-form input, .site-cta .cta-form textarea{ width:100%; border:1px solid #2a2a2a; border-radius:12px; padding:16px 18px; font-family:var(--body); font-size:15px; background:#141414; color:#fff; resize:vertical; }
.site-cta .cta-form input::placeholder, .site-cta .cta-form textarea::placeholder{ color:#8a8a8a; }
.site-cta .cta-form input:focus, .site-cta .cta-form textarea:focus{ outline:2px solid var(--lime); outline-offset:1px; }
.site-cta .cta-form button{ align-self:center; margin-top:4px; }
.site-cta .cta-card{ max-width:640px; margin:0 auto; background:#0a0a0a; border-radius:26px; padding:52px 44px; text-align:center; }
.site-cta .cta-card .section-title{ color:#fff; margin:0 auto 30px; }
.site-cta .cta-card .kicker{ justify-content:center; color:var(--lime); }
.site-cta .section-title{ font-size:clamp(24px,7vw,36px); text-align:center; margin-left:auto; margin-right:auto; }
.site-cta .kicker{ justify-content:center; }
.site-cta .cta-captcha{ display:flex; flex-direction:column; align-items:center; gap:10px; }
.site-cta .cta-human{ display:inline-flex; align-items:center; gap:12px; padding:12px 18px; border:1px solid #2a2a2a; border-radius:12px; background:#141414; color:#e9e6de; font-size:15px; cursor:pointer; user-select:none; transition:border-color .25s ease; }
.site-cta .cta-human:hover{ border-color:var(--lime); }
.site-cta .cta-human input{ position:absolute; opacity:0; width:1px; height:1px; }
.site-cta .cta-box{ width:24px; height:24px; flex:none; border-radius:7px; border:2px solid #8a8a8a; display:flex; align-items:center; justify-content:center; transition:background-color .25s ease, border-color .25s ease, transform .25s cubic-bezier(.34,1.56,.64,1); }
.site-cta .cta-box svg{ width:16px; height:16px; fill:none; stroke:#0a0a0a; stroke-width:3.2; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:24; stroke-dashoffset:24; transition:stroke-dashoffset .35s ease .05s; }
.site-cta .cta-human input:checked + .cta-box{ background:var(--lime); border-color:var(--lime); transform:scale(1.08); }
.site-cta .cta-human input:checked + .cta-box svg{ stroke-dashoffset:0; }
.site-cta .cta-human input:focus-visible + .cta-box{ outline:2px solid var(--lime); outline-offset:3px; }
.site-cta .cta-form-error{ color:var(--pink); font-size:14px; text-align:center; margin:0; }
.site-cta .cta-success{ max-width:520px; margin:0 auto; padding:40px 30px; border-radius:20px; background:linear-gradient(135deg, rgba(245,17,83,.16), rgba(182,151,252,.12)); border:1px solid rgba(255,255,255,.12); color:#fff; text-align:center; animation:ctaPop .6s cubic-bezier(.16,1,.3,1) both; }
.site-cta .cta-success[hidden]{ display:none; }
.site-cta .cta-success-icon{ width:64px; height:64px; margin:0 auto 18px; border-radius:50%; background:var(--lime); display:flex; align-items:center; justify-content:center; box-shadow:0 0 0 8px rgba(182,253,41,.15); }
.site-cta .cta-success-icon svg{ width:32px; height:32px; fill:none; stroke:#0a0a0a; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:24; stroke-dashoffset:24; animation:ctaCheck .5s ease .35s forwards; }
.site-cta .cta-success h4{ font-family:var(--display-heavy); font-weight:800; font-size:clamp(20px,3vw,26px); text-transform:uppercase; margin:0 0 12px; color:#fff; }
.site-cta .cta-success p{ font-size:16px; line-height:1.65; color:#e9e6de; margin:0 0 24px; }
.site-cta .cta-success a{ color:var(--lime); text-decoration:underline; }
.site-cta .cta-success .btn-lime{ border:none; cursor:pointer; font-size:13px; padding:14px 28px; }
.site-cta .btn-solid{ background:#e6104e; }
@keyframes ctaPop{ from{ opacity:0; transform:translateY(16px) scale(.97); } to{ opacity:1; transform:none; } }
@keyframes ctaCheck{ to{ stroke-dashoffset:0; } }
