/* ============================================================
   RESTRICTED - North & South America Tour 2026
   Aesthetic: blood-red Didone + condensed grotesque on near-black,
   grain, sharp poster-style date rows.
   ============================================================ */

:root{
  --ink:#0b0a09;
  --ink-2:#131110;
  --panel:#15110f;
  --red:#d4202a;
  --red-deep:#a4151d;
  --red-glow:rgba(212,32,42,.35);
  --bone:#efe7da;
  --ash:#9b9189;
  --line:rgba(212,32,42,.28);
  --serif:"Tinos", "Times New Roman", Times, serif;
  --sans:"Oswald", "Arial Narrow", system-ui, sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--ink);
  color:var(--bone);
  font-family:var(--sans);
  font-weight:300;
  line-height:1.55;
  letter-spacing:.01em;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
a{color:inherit}
img{max-width:100%;display:block}

/* Blurred poster backdrop */
body::before{
  content:"";position:fixed;inset:-6%;z-index:0;
  background:url("/assets/images/poster-bg.webp") center top/cover no-repeat;
  filter:blur(14px) saturate(1.15) brightness(.6);
  transform:scale(1.08);
}
main,header,footer{position:relative;z-index:2}

/* Scrim + grain over the backdrop */
.grain{
  position:fixed;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg, rgba(6,9,12,.62), rgba(6,9,12,.34) 30%, rgba(6,9,12,.74) 100%),
    radial-gradient(120% 80% at 50% 6%, transparent 48%, rgba(6,9,12,.78) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");
}

/* Topbar */
.topbar{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 22px;
  font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.42em;
  color:var(--red);text-transform:uppercase;
}
.topbar__mark--right{color:var(--ash)}

/* ---------- HERO ---------- */
.hero{
  display:flex;flex-direction:column;align-items:center;
  padding:6px 20px 0;
}
.hero__art{
  width:100%;max-width:600px;
  filter:drop-shadow(0 40px 70px rgba(0,0,0,.85)) drop-shadow(0 10px 22px rgba(0,0,0,.6));
  -webkit-mask-image:linear-gradient(to bottom,#000 86%,transparent 100%);
          mask-image:linear-gradient(to bottom,#000 86%,transparent 100%);
}
.hero__art img{width:100%;height:auto}
.hero__head{text-align:center;margin:-6px 0 0;animation:rise .7s ease both}
.wordmark{
  font-family:var(--serif);font-weight:700;font-style:normal;
  color:var(--red);
  font-size:clamp(2rem,8.5vw,3.4rem);
  letter-spacing:.04em;line-height:.9;margin:0;text-transform:uppercase;
}
.hero__sub{
  font-family:var(--sans);font-weight:600;text-transform:uppercase;
  color:var(--red);font-size:clamp(.72rem,2.6vw,1rem);letter-spacing:.22em;
  margin:.5rem 0 0;
}
.hero__sub .spark{color:var(--bone);font-size:.8em;vertical-align:middle;margin:0 .3em}
.hero__year{
  font-family:var(--sans);font-weight:300;text-transform:uppercase;
  color:var(--ash);font-size:11px;letter-spacing:.4em;margin:.6rem 0 0;
}

/* ---------- PANEL ---------- */
.panel{padding:42px 20px 8px;display:flex;justify-content:center}
.panel__inner{
  width:100%;max-width:560px;text-align:center;
  background:linear-gradient(180deg,var(--panel),var(--ink-2));
  border:1px solid var(--line);
  border-radius:4px;
  padding:34px 26px 32px;
  box-shadow:0 0 0 1px rgba(0,0,0,.4) inset, 0 40px 80px -20px rgba(0,0,0,.82), 0 12px 28px -10px rgba(0,0,0,.6);
  animation:rise .7s .05s ease both;
}
.eyebrow{
  display:flex;align-items:center;justify-content:center;gap:14px;
  font-family:var(--sans);font-weight:600;text-transform:uppercase;
  font-size:11px;letter-spacing:.34em;color:var(--red);margin:0 0 16px;
}
.eyebrow span{flex:0 0 30px;height:1px;background:var(--red)}
.panel__title{
  font-family:var(--serif);font-weight:700;color:var(--bone);
  font-size:clamp(1.9rem,7vw,3rem);line-height:1.02;letter-spacing:.01em;
  margin:0 0 14px;text-wrap:balance;
}
.panel__title em{color:var(--red);font-style:italic}
.panel__lede{
  font-family:var(--sans);font-weight:300;color:var(--ash);
  font-size:16px;line-height:1.6;margin:0 auto 22px;max-width:42ch;
}
.panel__lede strong{color:var(--bone);font-weight:500}
.inline-code{
  font-family:var(--sans);font-weight:700;color:var(--red);
  letter-spacing:.16em;background:rgba(212,32,42,.1);
  border:1px solid var(--line);border-radius:3px;padding:1px 8px;
}

/* CRM widget container */
.widget-wrap{margin:6px 0 4px;text-align:left}
#furiosa-page-widget{min-height:60px}

/* Presale code reveal */
.code-reveal{
  margin-top:22px;padding:22px 18px;
  border:1px solid var(--red);border-radius:4px;
  background:radial-gradient(120% 140% at 50% 0%,rgba(212,32,42,.16),transparent 70%);
  animation:reveal .5s ease both;
}
.code-reveal__label{
  font-family:var(--sans);font-weight:600;text-transform:uppercase;
  font-size:11px;letter-spacing:.3em;color:var(--ash);margin:0 0 8px;
}
.code-reveal__code{
  font-family:var(--serif);font-weight:700;color:var(--red);
  font-size:clamp(1.6rem,6vw,2.3rem);letter-spacing:.1em;margin:0;
  text-shadow:0 0 24px var(--red-glow);
}
.code-reveal__hint{
  font-family:var(--sans);font-weight:300;color:var(--ash);
  font-size:13px;margin:10px 0 0;
}

/* City picker */
.citypick{margin-top:26px;border-top:1px solid rgba(255,255,255,.06);padding-top:24px}
.citypick__label{
  display:block;font-family:var(--sans);font-weight:600;text-transform:uppercase;
  font-size:11px;letter-spacing:.3em;color:var(--ash);margin-bottom:10px;
}
.citypick__select{
  width:100%;appearance:none;-webkit-appearance:none;
  background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='%23d4202a'%3E%3Cpath d='M7 10L2 4h10z'/%3E%3C/svg%3E") no-repeat right 16px center;
  color:var(--bone);
  font-family:var(--sans);font-weight:400;font-size:16px;letter-spacing:.04em;
  text-transform:uppercase;
  border:1px solid var(--line);border-radius:3px;
  padding:14px 44px 14px 16px;cursor:pointer;
}
.citypick__select:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-glow)}
.citypick__result{
  margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:3px;
  background:var(--ink);animation:reveal .35s ease both;
}
.citypick__result .cr-meta{
  font-family:var(--sans);font-weight:500;text-transform:uppercase;
  letter-spacing:.06em;color:var(--bone);font-size:15px;margin:0 0 4px;
}
.citypick__result .cr-meta b{color:var(--red)}
.citypick__result .cr-venue{font-weight:300;color:var(--ash);font-size:13px;margin:0 0 14px;text-transform:uppercase;letter-spacing:.08em}

/* Buttons */
.btn-ticket,.tbtn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--sans);font-weight:600;text-transform:uppercase;
  letter-spacing:.14em;font-size:13px;text-decoration:none;cursor:pointer;
  background:var(--red);color:#fff;border:1px solid var(--red);
  padding:12px 22px;border-radius:3px;
  transition:background .18s ease,color .18s ease,transform .12s ease;
}
.btn-ticket{width:100%;padding:15px;font-size:15px}
.btn-ticket:hover,.tbtn:hover{background:transparent;color:var(--red)}
.btn-ticket:active,.tbtn:active{transform:translateY(1px)}
.tbtn--soon{
  background:transparent;color:var(--ash);border-color:rgba(255,255,255,.14);
  cursor:default;pointer-events:none;font-weight:400;
}

/* ---------- DATES ---------- */
.dates{max-width:1040px;margin:30px auto 0;padding:24px 20px 20px}
.dates__h2{
  font-family:var(--serif);font-weight:700;color:var(--red);
  text-align:center;font-size:clamp(1.7rem,5.5vw,2.4rem);letter-spacing:.02em;
  margin:0 0 28px;text-transform:uppercase;
}
.datelist{list-style:none;margin:0;padding:4px;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.daterow{
  display:flex;flex-direction:column;gap:6px;padding:24px 22px;
  background:linear-gradient(180deg, rgba(28,12,12,.60), rgba(9,6,6,.74));
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
  border:1px solid rgba(212,32,42,.22);border-radius:9px;
  box-shadow:0 24px 50px -18px rgba(0,0,0,.85);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.daterow:hover,.daterow.is-target{transform:translateY(-5px);border-color:var(--red);
  box-shadow:0 36px 66px -18px rgba(0,0,0,.9), 0 0 0 1px rgba(212,32,42,.45)}
.daterow__date{font-family:var(--sans);font-weight:600;color:var(--red);
  font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.daterow__city{font-family:var(--serif);font-weight:700;color:var(--bone);
  font-size:clamp(1.5rem,4vw,1.95rem);line-height:1;letter-spacing:.01em;text-transform:uppercase;margin:2px 0}
.daterow__venue{font-family:var(--sans);font-weight:300;color:var(--ash);
  font-size:12.5px;letter-spacing:.1em;text-transform:uppercase}
.daterow__cta{margin-top:16px}
.daterow__cta .tbtn{width:100%}

/* ---------- FOOTER ---------- */
.foot{text-align:center;padding:46px 20px 40px;margin-top:24px;border-top:1px solid rgba(255,255,255,.06)}
.foot__line{font-family:var(--sans);font-weight:600;text-transform:uppercase;letter-spacing:.4em;color:var(--red);font-size:12px;margin:0}
.foot__promoters{font-family:var(--sans);font-weight:300;color:var(--ash);font-size:13px;margin:12px 0 0;letter-spacing:.04em}
.foot__legal{margin:10px 0 0;font-size:12px}
.foot__legal a{color:var(--ash);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:1px}
.foot__legal a:hover{color:var(--red)}

/* ---------- Animations ---------- */
@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes reveal{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important}}

/* ---------- SIGNUP SPLIT (art left / form right) ---------- */
.split{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 20px 0}
.split__art{width:100%;max-width:540px;filter:drop-shadow(0 40px 70px rgba(0,0,0,.85)) drop-shadow(0 10px 22px rgba(0,0,0,.6));
  -webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);}
.split__art img{width:100%;height:auto}
.split__panel{width:100%;max-width:560px;display:flex;justify-content:center}
.split__panel .panel__inner{width:100%;text-align:left;animation:rise .7s .05s ease both;margin-top:14px}
.split__panel .eyebrow{justify-content:flex-start}
.split__panel .panel__lede{margin-left:0;margin-right:0}

/* ---------- FORM ---------- */
.form{margin-top:20px}
.form__row{margin-bottom:16px}
.form__label{display:block;font-family:var(--sans);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.22em;color:var(--ash);margin-bottom:8px}
.form__hint{font-weight:300;text-transform:none;letter-spacing:.02em;color:var(--ash);font-style:normal;font-size:12px}
.form__input{
  width:100%;background:var(--ink);color:var(--bone);
  font-family:var(--sans);font-weight:300;font-size:16px;letter-spacing:.02em;
  border:1px solid var(--line);border-radius:3px;padding:13px 14px;
}
.form__input::placeholder{color:#6f6660}
.form__input:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-glow)}
.form__input[aria-invalid="true"]{border-color:var(--red)}
.form__err{color:#ff8a8a;font-family:var(--sans);font-weight:300;font-size:13px;margin:8px 0 0}

/* intl-tel-input */
.iti{width:100%}
.iti--separate-dial-code .iti__selected-flag{background:rgba(255,255,255,.04)}
.iti input.form__input,.iti input[type=tel].form__input{padding-left:calc(52px + .6rem)}
.iti--separate-dial-code input.form__input{padding-left:calc(88px + .4rem)}
.iti__country-list{background:var(--ink-2);border:1px solid var(--line);color:var(--bone)}
.iti__country.iti__highlight{background:rgba(212,32,42,.18)}
.iti__dial-code{color:var(--ash)}

/* Date dropdown multi-select */
.msel{position:relative}
.msel__toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:var(--ink);color:var(--bone);
  font-family:var(--sans);font-weight:400;font-size:16px;letter-spacing:.03em;text-transform:uppercase;
  border:1px solid var(--line);border-radius:3px;padding:13px 14px;cursor:pointer;text-align:left;
}
.msel__toggle:focus-visible{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-glow)}
.msel.is-open .msel__toggle{border-color:var(--red)}
.msel__summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msel__summary.is-placeholder{color:#6f6660}
.msel__arrow{flex:0 0 auto;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--red);transition:transform .18s ease}
.msel.is-open .msel__arrow{transform:rotate(180deg)}
.msel__menu{
  position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;
  max-height:280px;overflow-y:auto;
  background:var(--ink-2);border:1px solid var(--red);border-radius:3px;
  box-shadow:0 18px 40px rgba(0,0,0,.6);padding:6px;
}
.msel__opt{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:3px;cursor:pointer}
.msel__opt:hover{background:rgba(212,32,42,.12)}
.msel__opt input{width:17px;height:17px;flex:0 0 17px;accent-color:var(--red);margin:0}
.msel__opt-face{font-family:var(--sans);font-weight:400;text-transform:uppercase;letter-spacing:.04em;color:var(--bone);font-size:14px}
.msel__opt-face b{color:var(--red);font-weight:600;font-size:12px;letter-spacing:.08em;margin-right:8px}

/* Consent */
.form__consent{display:flex;gap:10px;align-items:flex-start;margin:6px 0 20px;cursor:pointer}
.form__consent input{margin-top:3px;width:18px;height:18px;flex:0 0 18px;accent-color:var(--red)}
.form__consent span{font-family:var(--sans);font-weight:300;color:var(--ash);font-size:13px;line-height:1.5}
.form__consent a{color:var(--red)}
.btn__face{display:inline-block}

/* Success state inside the form panel */
.panel__success .panel__title{margin-top:6px}

/* ---------- Responsive ---------- */
@media (min-width:920px){
  .split{flex-direction:row;align-items:center;justify-content:center;gap:56px;
    max-width:1120px;margin:0 auto;padding:24px 32px 0;min-height:calc(100vh - 110px)}
  .split__art{flex:1 1 50%;max-width:570px;display:flex;align-items:center}
  .split__panel{flex:0 1 460px;align-items:center}
  .split__panel .panel__inner{margin-top:0;padding:30px 28px}
}
@media (max-width:480px){
  .datelist{grid-template-columns:1fr}
}

/* Presale / gensale: clean header (no boxed card), let the date cards lead */
body[data-mode="presale"] .panel,
body[data-mode="gensale"] .panel{padding:34px 20px 4px}
body[data-mode="presale"] .panel__inner,
body[data-mode="gensale"] .panel__inner{
  background:none;border:none;box-shadow:none;backdrop-filter:none;
  padding:0;max-width:620px;animation:rise .6s ease both;
}
