/* BrainShock CMS v1.6.4-AL | Public Booking Page
   Uses the confirmed homepage header; booking handling and footer remain unchanged. */
@import url('homepage-v164ae.css?v=164ae');

body.bs-v164al-booking { background:#030303; color:#f6f6f6; }
body.bs-v164al-booking main { overflow: visible; }
.bs-v164al-page {
  --al-orange:#ff7a00;
  --al-line:rgba(255,255,255,.14);
  --al-muted:#aaa7a4;
  padding-top:74px;
  min-height:72vh;
  font-family:Montserrat,Arial,Helvetica,sans-serif;
  color:#f6f6f6;
}
.bs-v164al-page *, .bs-v164al-page *::before, .bs-v164al-page *::after { box-sizing:border-box; }

/* Short, image-free hero: a quieter continuation of the homepage booking banner. */
.bs-v164al-hero {
  position:relative; isolation:isolate; overflow:hidden;
  display:flex; align-items:center;
  min-height:clamp(250px,28vw,346px);
  border-bottom:1px solid rgba(255,122,0,.43);
  background:
    radial-gradient(ellipse at 86% 48%, rgba(255,122,0,.13), transparent 38%),
    linear-gradient(113deg,#050505 0%,#0b0b0d 58%,#160c07 100%);
}
.bs-v164al-hero::before {
  content:""; position:absolute; z-index:-1;
  top:-60px; right:clamp(14px,8vw,180px); width:min(36vw,460px); height:calc(100% + 120px);
  opacity:.35; transform:skewX(-19deg);
  background:repeating-linear-gradient(90deg,
    transparent 0,transparent 30px,
    rgba(255,122,0,.11) 31px,rgba(255,122,0,.11) 32px,
    transparent 33px,transparent 53px);
}
.bs-v164al-hero::after {
  content:""; position:absolute; z-index:-1;
  top:0; right:0; bottom:0; width:min(53%,670px);
  background:linear-gradient(90deg,transparent,rgba(255,122,0,.045)),
    repeating-linear-gradient(0deg,transparent 0,transparent 37px,rgba(255,255,255,.022) 38px,transparent 39px);
  pointer-events:none;
}
.bs-v164al-hero-inner { width:min(100% - 76px,1396px); margin:auto; padding:40px 0 43px; }
.bs-v164al-eyebrow,.bs-v164al-form-heading>p {
  display:flex; align-items:center; gap:12px;
  margin:0 0 15px; color:var(--al-orange);
  font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  font-size:.83rem; font-weight:800; letter-spacing:.16em;
}
.bs-v164al-eyebrow>span { width:28px; height:2px; background:var(--al-orange); box-shadow:0 0 12px rgba(255,122,0,.45); }
.bs-v164al-hero h1 { margin:0; color:#fff; font:400 clamp(2.8rem,5.7vw,5.45rem)/1.08 Anton,Impact,'Arial Narrow',sans-serif; letter-spacing:.025em; text-shadow:0 7px 28px #000; }
.bs-v164al-hero h1 span { color:var(--al-orange); }
.bs-v164al-hero-motto { margin:12px 0 0; color:var(--al-orange); font:800 clamp(.82rem,1.1vw,1.06rem)/1.4 Montserrat,Arial,sans-serif; letter-spacing:.16em; }
.bs-v164al-hero-lead { margin:8px 0 0; color:#c8c5c2; font-size:.84rem; line-height:1.65; }
.bs-v164al-hero-action {
  display:inline-flex; justify-content:center; align-items:center; gap:17px;
  min-height:40px; margin-top:21px; padding:10px 15px;
  border:1px solid var(--al-orange); border-radius:3px;
  background:rgba(255,122,0,.065); color:#f7f7f7;
  font:800 .83rem/1.1 'Barlow Condensed',Arial,sans-serif;
  letter-spacing:.09em; text-decoration:none;
  transition:background .2s ease,color .2s ease;
}
.bs-v164al-hero-action span { color:var(--al-orange); font-size:1.04rem; }
.bs-v164al-hero-action:hover,.bs-v164al-hero-action:focus-visible { background:var(--al-orange); color:#080808; }
.bs-v164al-hero-action:hover span,.bs-v164al-hero-action:focus-visible span { color:#080808; }

/* Two restrained panels, using all existing admin-managed information. */
.bs-v164al-layout {
  display:grid; grid-template-columns:minmax(290px,.76fr) minmax(0,1.32fr);
  gap:clamp(18px,2.4vw,32px); align-items:start;
  width:min(100% - 76px,1300px); margin:0 auto;
  padding:clamp(37px,4.7vw,65px) 0 clamp(68px,6vw,98px);
}
.bs-v164al-page .bs-v164al-info,
.bs-v164al-page .bs-v164al-form {
  width:100%; margin:0; min-width:0;
  border:1px solid var(--al-line); border-radius:4px;
  box-shadow:0 14px 32px rgba(0,0,0,.24);
  background:linear-gradient(135deg,#151415 0%,#0b0b0d 72%);
}
.bs-v164al-page .bs-v164al-info {
  padding:clamp(22px,3vw,37px);
  border-top:2px solid rgba(255,122,0,.74);
  overflow-wrap:anywhere;
}
.bs-v164al-info .eyebrow { margin:0 0 10px; color:var(--al-orange); font:800 .78rem/1.5 'Barlow Condensed',Arial,sans-serif; letter-spacing:.17em; }
.bs-v164al-info h2 { margin:0 0 20px; font:400 clamp(1.65rem,2.4vw,2.45rem)/1.15 Anton,Impact,'Arial Narrow',sans-serif; letter-spacing:.025em; overflow-wrap:anywhere; }
.bs-v164al-info p:not(.eyebrow) { margin:0 0 20px; color:#c6c2c0; font-size:.89rem; line-height:1.8; }
.bs-v164al-info .check-list { margin:8px 0 0; padding-left:20px; color:#dedbd8; font-size:.85rem; line-height:1.65; }
.bs-v164al-info .check-list li { padding-left:5px; margin-bottom:11px; }
.bs-v164al-info .check-list li::marker { color:var(--al-orange); }

.bs-v164al-page .bs-v164al-form {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:19px 16px; overflow:visible;
  padding:clamp(22px,3vw,37px); scroll-margin-top:100px;
}
.bs-v164al-form-heading { grid-column:1/-1; padding-bottom:18px; border-bottom:1px solid var(--al-line); }
.bs-v164al-form-heading>p { margin:0 0 7px; }
.bs-v164al-form-heading h2 { margin:0; font:400 clamp(1.8rem,2.8vw,2.65rem)/1.14 Anton,Impact,'Arial Narrow',sans-serif; letter-spacing:.035em; }
.bs-v164al-form-heading h2 span { color:var(--al-orange); }
.bs-v164al-form-heading small { display:block; margin-top:9px; color:#bcb8b5; font-size:.84rem; line-height:1.6; }
.bs-v164al-page .bs-v164al-form > label { min-width:0; gap:7px; color:#ede9e6; font:800 .77rem/1.4 'Barlow Condensed',Arial,sans-serif; letter-spacing:.07em; }
.bs-v164al-page .bs-v164al-form input:not([type="checkbox"]):not([type="hidden"]),
.bs-v164al-page .bs-v164al-form select,
.bs-v164al-page .bs-v164al-form textarea {
  display:block; width:100%; min-width:0; min-height:46px;
  padding:11px 12px; border:1px solid rgba(255,255,255,.18); border-radius:3px;
  background:rgba(0,0,0,.48); box-shadow:none; color:#fff;
  font:500 .86rem/1.45 Montserrat,Arial,sans-serif; letter-spacing:normal; text-transform:none;
  transition:border-color .18s ease,background .18s ease;
}
.bs-v164al-form input::placeholder,.bs-v164al-form textarea::placeholder { color:#888582; opacity:1; }
.bs-v164al-page .bs-v164al-form input:focus-visible,
.bs-v164al-page .bs-v164al-form textarea:focus-visible,
.bs-v164al-page .bs-v164al-form select:focus-visible { outline:2px solid rgba(255,122,0,.35); outline-offset:1px; border-color:var(--al-orange); background:#101012; }
.bs-v164al-page .bs-v164al-form select option { color:#fff; background:#171717; }
.bs-v164al-page .bs-v164al-form textarea { min-height:128px; resize:vertical; }
.bs-v164al-page .bs-v164al-form .bs-v164al-wide,
.bs-v164al-page .bs-v164al-form .bs-v164al-form-heading,
.bs-v164al-page .bs-v164al-form .booking-date-status,
.bs-v164al-page .bs-v164al-form .booking-custom-fields,
.bs-v164al-page .bs-v164al-form .security-code-box,
.bs-v164al-page .bs-v164al-form .privacy-check,
.bs-v164al-page .bs-v164al-form .alert,
.bs-v164al-page .bs-v164al-form button[type="submit"] { grid-column:1/-1; }
.bs-v164al-page .bs-v164al-form .booking-date-help { color:#b3afac; font:500 .72rem/1.5 Montserrat,Arial,sans-serif; text-transform:none; letter-spacing:normal; }
.bs-v164al-page .bs-v164al-form .booking-date-status { border-radius:3px; min-height:43px; font-size:.84rem; }
.bs-v164al-page .bs-v164al-form .booking-custom-fields { display:grid; gap:18px; padding-top:17px; border-top:1px solid var(--al-line); }
.bs-v164al-page .bs-v164al-form .booking-custom-fields > label { min-width:0; }
.bs-v164al-page .bs-v164al-form .booking-custom-fields .eyebrow { margin:0; }
.bs-v164al-page .bs-v164al-form .security-code-box {
  display:grid; justify-items:start; gap:10px; padding:17px;
  border:1px solid rgba(255,122,0,.34); border-radius:3px;
  background:rgba(255,122,0,.043);
}
.bs-v164al-form .security-code-box strong { margin:0; border-radius:3px; }
.bs-v164al-page .bs-v164al-form .security-code-box input { max-width:330px; }
.bs-v164al-page .bs-v164al-form .privacy-check,
.bs-v164al-page .bs-v164al-form .booking-custom-checkbox { display:grid; grid-template-columns:20px minmax(0,1fr); align-items:start; gap:11px; color:#bfbcb9!important; font:500 .82rem/1.6 Montserrat,Arial,sans-serif!important; letter-spacing:normal!important; text-transform:none!important; }
.bs-v164al-page .bs-v164al-form .privacy-check input[type="checkbox"],
.bs-v164al-page .bs-v164al-form .booking-custom-checkbox input[type="checkbox"] { width:19px; min-height:19px; height:19px; margin:3px 0 0; accent-color:var(--al-orange); }
.bs-v164al-page .bs-v164al-form .privacy-check a { color:var(--al-orange); }
.bs-v164al-page .bs-v164al-form button[type="submit"] {
  width:100%; min-height:49px; padding:12px 22px;
  border:1px solid var(--al-orange); border-radius:3px;
  background:var(--al-orange); box-shadow:0 8px 24px rgba(255,122,0,.16);
  color:#0a0a0a; font:800 .97rem/1.2 'Barlow Condensed',Arial,sans-serif;
  letter-spacing:.1em; text-transform:uppercase;
  cursor:pointer; transition:background .18s ease,box-shadow .18s ease;
}
.bs-v164al-page .bs-v164al-form button[type="submit"]:hover:not(:disabled) { background:#ff9b36; box-shadow:0 12px 30px rgba(255,122,0,.23); }
.bs-v164al-page .bs-v164al-form button[type="submit"]:disabled { opacity:.48; cursor:not-allowed; box-shadow:none; }
.bs-v164al-page .bs-v164al-form .alert { font-size:.86rem; }

@media(max-width:960px) {
  .bs-v164al-layout { grid-template-columns:1fr; max-width:750px; }
  .bs-v164al-page .bs-v164al-info { padding:25px; }
}
@media(max-width:760px) {
  .bs-v164al-page { padding-top:68px; }
  .bs-v164al-hero { min-height:250px; }
  .bs-v164al-hero-inner,.bs-v164al-layout { width:min(100% - 34px,1300px); }
  .bs-v164al-hero-inner { padding:40px 0; }
  .bs-v164al-hero h1 { font-size:clamp(2.65rem,9.6vw,4.25rem); }
  .bs-v164al-hero h1 span { display:block; }
  .bs-v164al-hero::before { width:45%; right:0; opacity:.22; }
  .bs-v164al-layout { padding-top:34px; }
  .bs-v164al-page .bs-v164al-form { padding:23px 19px; }
}
@media(max-width:590px) {
  .bs-v164al-page .bs-v164al-form { grid-template-columns:minmax(0,1fr); gap:17px; }
  .bs-v164al-hero-lead { max-width:310px; }
}
@media(prefers-reduced-motion:reduce) {
  .bs-v164al-page *, .bs-v164al-page *::before, .bs-v164al-page *::after { transition:none!important; scroll-behavior:auto!important; }
}


/* BrainShock CMS v1.6.4-AM */
.bs-v164al-hero {
  min-height: clamp(285px, 31vw, 380px);
  background: linear-gradient(113deg,#050505 0%,#0b0b0d 58%,#160c07 100%);
}
.bs-v164al-hero-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  opacity: .56;
  z-index: -2;
  filter: saturate(.92) contrast(1.04);
}
.bs-v164al-hero::before {
  top: 0;
  left: 0;
  right: 0;
  width: auto;
  height: 100%;
  opacity: 1;
  transform: none;
  background:
    linear-gradient(90deg, rgba(5,5,5,.96) 0%, rgba(5,5,5,.90) 32%, rgba(5,5,5,.62) 56%, rgba(5,5,5,.30) 100%),
    linear-gradient(0deg, rgba(5,5,5,.82) 0%, rgba(5,5,5,.24) 35%, rgba(5,5,5,.12) 100%);
}
.bs-v164al-hero::after {
  top: 0; right: 0; bottom: 0; width: min(55%, 760px);
  background:
    radial-gradient(circle at 78% 28%, rgba(255,122,0,.18), transparent 34%),
    repeating-linear-gradient(0deg, transparent 0, transparent 37px, rgba(255,255,255,.022) 38px, transparent 39px);
}
.bs-v164al-hero-inner { padding: 46px 0 49px; }
.bs-v164al-hero-lead { max-width: 610px; }
.bs-v164al-form-heading h2 { letter-spacing: .03em; }
@media(max-width:760px) {
  .bs-v164al-hero { min-height: 270px; }
  .bs-v164al-hero-art { object-position: 65% center; opacity: .34; }
}


/* BrainShock CMS v1.6.4-AO */
.bs-v164al-form-heading { padding-bottom: 14px; }
.bs-v164al-form-heading p { margin: 0; color: var(--al-orange); font: 800 .82rem/1.4 'Barlow Condensed', Arial, sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.bs-v164al-form-heading h2 { display:none; }
.bs-v164al-page .bs-v164al-form input:not([type="checkbox"]):not([type="hidden"]),
.bs-v164al-page .bs-v164al-form select { min-height: 48px; height: 48px; }
.bs-v164al-page .bs-v164al-form input[type="date"] { appearance:none; -webkit-appearance:none; }
.bs-v164al-page .bs-v164al-form > label { display:flex; flex-direction:column; align-self:start; }
.bs-v164al-page .bs-v164al-form .booking-date-help { display:block; min-height: 2.2em; }
.bs-v164al-page .bs-v164al-form .booking-date-status { margin-top: -3px; }
.bs-v164al-hero-art { object-position: center center; opacity: .48; filter: saturate(.9) contrast(1.05) blur(.2px); }
.bs-v164al-hero::before {
  background: linear-gradient(90deg, rgba(5,5,5,.97) 0%, rgba(5,5,5,.92) 35%, rgba(5,5,5,.66) 58%, rgba(5,5,5,.38) 100%), linear-gradient(0deg, rgba(5,5,5,.86) 0%, rgba(5,5,5,.26) 35%, rgba(5,5,5,.12) 100%);
}
@media(max-width:760px){
  .bs-v164al-page .bs-v164al-form .booking-date-help { min-height: 0; }
  .bs-v164al-hero-art { opacity: .34; }
}
