/* Queens webstore layout — 2026-09-06. Rollback: apply untouched Preset 1. */
@import url("https://queens.laserbounce.com/wp-content/uploads/sites/12/elementor/google-fonts/css/outfit.css?ver=1755696234");
:root { --lbq-blue:#234787; --lbq-navy:#0c1026; --lbq-red:#ea2028; --lbq-ink:#18243b; }
body, .dynamic-content { background:#234787 !important; color:#18243b; font-family:"Outfit",Arial,sans-serif !important; }
h1,h2,h3,h4,h5,h6,.btn,.widget-menu a,.footer-item-label { font-family:"Outfit",Arial,sans-serif !important; }
h1,h2,h3 { color:#18243b; font-weight:700; line-height:1.2; }
h1 { font-size:32px; }
p, label, input, select, textarea { line-height:1.5; }
.top-menu .navbar { background:#0c1026 !important; border:0 !important; border-radius:0 !important; min-height:42px; margin:0 !important; }
.top-menu .navbar-nav>li>a { color:#fff !important; font-family:"Outfit",Arial,sans-serif; }
.top-menu .navbar-nav>li>a:hover,.top-menu .navbar-nav>li>a:focus { color:#fff !important; background:#234787 !important; }
.top-menu .navbar-nav>li>a .icon { color:inherit !important; }
.site-actions { background:#234787 !important; padding:12px 24px !important; }
.site-actions .container { padding:0 !important; }
a.site-logo { display:block !important; width:240px !important; height:70px !important; padding:12px 18px !important; border-radius:0 36px 36px 0; background:#fff url("https://queens.laserbounce.com/wp-content/uploads/sites/12/2025/06/laser-bounce-logo-1-no-shadow.webp") center/200px auto no-repeat !important; }
a.site-logo img { display:none !important; }
#widgets-collapse { background:#234787 !important; border:0 !important; box-shadow:none !important; }
#widgets-collapse .main-nav { padding:0 !important; margin:0 !important; background:none !important; }
#widgets-collapse .main-nav:before,#widgets-collapse .main-nav:after { content:none !important; }
#widgets-collapse .main-nav>li>a { color:#fff !important; background:transparent; font-size:16px !important; line-height:24px !important; font-weight:600; text-transform:none !important; padding:14px 17px !important; border-radius:12px; }
#widgets-collapse .main-nav>li>a:hover,#widgets-collapse .main-nav>li>a:focus,#widgets-collapse .main-nav>li.active>a { background:#172f5d !important; color:#fff !important; }
#widgets-collapse .dropdown-menu { background:#fff; border-radius:12px; padding:8px; }
#widgets-collapse .dropdown-menu a { color:#18243b !important; font-size:16px !important; line-height:24px; padding:12px !important; border-radius:8px; }
#widgets-collapse .dropdown-menu a:hover { background:#edf2fb !important; }
.dynamic-content>.container { width:calc(100% - 48px); max-width:1240px; margin:24px auto 0 !important; padding:24px !important; background:#fff !important; border-radius:24px; }
[data-templatearea="ContentTop"] { margin-bottom:16px !important; }
[data-templatearea="ContentTop"] p { margin:0 !important; padding:12px 16px; border-radius:12px; background:#f2f5fb; color:#46536b !important; font-family:"Outfit",Arial,sans-serif; font-size:14px; line-height:1.45; text-align:left !important; }
[data-templatearea="ContentTop"] em { font-style:normal; }
[data-templatearea="ContentBottom"] { padding:16px 0 0; }
[data-templatearea="ContentBottom"] p,[data-templatearea="ContentBottom"] span { color:#46536b !important; font-size:14px; line-height:1.5; }
.btn { min-height:44px; padding:11px 20px; border-radius:14px !important; font-size:16px; line-height:20px; font-weight:600; text-transform:none !important; white-space:normal; }
.btn-primary { background:#ea2028 !important; border-color:#ea2028 !important; color:#fff !important; }
.btn-primary:hover,.btn-primary:focus { background:#c61620 !important; border-color:#c61620 !important; color:#fff !important; }
.btn-default { color:#234787; border-color:#bac6db; background:#fff; }
.form-control { min-height:46px; border-radius:10px !important; border-color:#a7b3c7; font-size:16px; color:#18243b; }
.form-control:focus { border-color:#234787; box-shadow:0 0 0 3px rgba(35,71,135,.18); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible { outline:3px solid #f3a020; outline-offset:3px; }
.foot { margin-top:28px; background:#0c1026 !important; color:#fff; }
.foot>div { background:transparent !important; }
.foot .footer-item-label { color:#fff !important; font-weight:600; font-size:18px; }
.foot a { color:#fff !important; }
.foot .powered-by { background:#080b19 !important; }
.foot .links a { display:inline-block; padding-top:10px; padding-bottom:10px; }
@media(min-width:768px) {
  .top-menu,.top-menu .navbar-header { height:auto !important; }
  .top-menu .navbar-header { min-height:0 !important; }
  .top-menu .navbar-nav>li>a { padding-top:11px; padding-bottom:11px; }
  #widgets-collapse { padding-bottom:12px; }
}
@media(max-width:767px) {
  .top-menu,.top-menu .navbar { height:auto !important; min-height:84px !important; }
  .top-menu .navbar>.container { width:100% !important; padding:0 !important; }
  .top-menu .navbar-header { height:84px !important; min-height:84px !important; display:flex !important; align-items:center !important; justify-content:space-between !important; flex-direction:row !important; padding:12px !important; margin:0 !important; background:#234787 !important; }
  .top-menu .navbar-header:before,.top-menu .navbar-header:after { content:none !important; }
  .top-menu a.navbar-brand { flex:0 1 190px; display:block !important; width:190px !important; max-width:calc(100% - 132px); height:56px !important; margin:0 !important; padding:8px !important; border-radius:12px; background:#fff url("https://queens.laserbounce.com/wp-content/uploads/sites/12/2025/06/laser-bounce-logo-1-no-shadow.webp") center/90% auto no-repeat !important; }
  .top-menu a.navbar-brand img,.top-menu .navbar-brand-helper { display:none !important; }
  .top-menu .navbar-custom-wrap { position:static !important; width:132px !important; min-width:132px; padding:0 !important; margin:0 !important; }
  .top-menu .navbar-custom-actions { display:flex !important; align-items:center; margin:0 !important; width:132px; float:none !important; }
  .top-menu .navbar-custom-actions>li { width:44px; float:none !important; }
  .top-menu .navbar-custom-actions>li>a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:6px 3px !important; }
  .top-menu .navbar-custom-actions .navbar-toggle { width:44px; height:44px; padding:11px; margin:0 !important; border:0 !important; }
  .top-menu .navbar-toggle .icon-bar { background:#fff !important; }
  #widgets-collapse { margin:0 !important; padding:0 12px !important; }
  #widgets-collapse .container { padding:0 15px !important; }
  #widgets-collapse .main-nav>li>a { min-height:48px; margin:3px 0; border-radius:10px; }
  #widgets-collapse .widget-menu-auth a { color:#fff !important; font-family:"Outfit",Arial,sans-serif; font-size:15px; padding:12px !important; }
  .dynamic-content>.container { width:calc(100% - 24px); margin-top:12px !important; padding:16px !important; border-radius:18px; }
  #main-content-container { padding-left:15px; padding-right:15px; }
  [data-templatearea="ContentTop"] { margin-bottom:12px !important; }
  [data-templatearea="ContentTop"] p { padding:10px 12px; font-size:13px; line-height:1.4; }
  h1 { font-size:26px; }
  h2 { font-size:24px; }
  .foot { margin-top:20px; }
}
@media(prefers-reduced-motion:reduce) { .btn,.form-control { transition:none !important; } }

/* Card layout and legacy-theme spacing overrides. */
.site-actions { height:auto !important; min-height:0 !important; }
#widgets-collapse { margin-bottom:0 !important; }
.dynamic-content>.container { width:calc(100% - 48px) !important; min-width:0 !important; max-width:1240px !important; }
.widget-list-container { margin:12px 0 0 !important; padding:0 !important; }
.widget-list-container .widget-list { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0 !important; padding:0 !important; }
.widget-list-container .widget-list:before,.widget-list-container .widget-list:after { content:none !important; }
.widget-list-container .widget-item { width:auto !important; float:none !important; margin:0 !important; padding:0 !important; border:1px solid #dce3ef; border-radius:18px; overflow:hidden; background:#fff; }
.widget-list-container .widget-item .col-content { display:flex; flex-direction:column; height:100%; margin:0 !important; padding:0 !important; }
.widget-list-container .item-image-link { margin:0 !important; border-radius:0 !important; }
.widget-list-container .item-image-link img { display:block; width:100%; height:160px; object-fit:cover; }
.widget-list-container .item-image-controls,.widget-list-container .item-image-link-overlay { display:none !important; }
.widget-list-container .col-content-flex { display:block !important; padding:16px 18px 0 !important; flex:1; }
.widget-list-container .item-title { font-family:"Outfit",Arial,sans-serif !important; color:#18243b !important; background:none !important; font-size:20px !important; font-weight:700; line-height:1.25; padding:0 !important; margin:0 !important; }
.widget-list-container .item-description:empty { display:none; }
.widget-list-container .col-content>.text-right { display:block !important; padding:14px 18px 18px !important; }
.widget-list-container .btn { width:100%; }
@media(min-width:768px) and (max-width:1100px) { .widget-list-container .widget-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
  .dynamic-content>.container { width:calc(100% - 24px) !important; }
  .widget-list-container .widget-list { grid-template-columns:1fr; gap:14px; }
  .widget-list-container .item-image-link img { height:130px; }
  .widget-list-container .item-title { font-size:19px !important; }
  .top-menu .navbar-custom-wrap:has(a[title="Admin Options"]) { width:176px !important; min-width:176px; }
  .top-menu .navbar-custom-wrap:has(a[title="Admin Options"]) .navbar-custom-actions { width:176px; }
  .top-menu .navbar-header:has(a[title="Admin Options"]) a.navbar-brand { max-width:calc(100% - 176px); }
}

/* Match the website's compact desktop logo/navigation and readable catalogs. */
@media(min-width:1100px) {
  .site-actions { height:94px !important; padding:12px 0 !important; }
  .site-actions>.container { width:calc(100% - 48px) !important; min-width:0 !important; max-width:1240px !important; margin:0 auto !important; }
  #widgets-collapse { margin-top:-94px !important; min-height:94px; display:flex !important; align-items:center; padding:0 !important; }
  #widgets-collapse>.container { width:calc(100% - 48px) !important; min-width:0 !important; max-width:1240px !important; padding-left:280px !important; padding-right:0 !important; }
}
.item-title,.item-title a,.item-inset-list,.page-header h1,.mobile-nav a { font-family:"Outfit",Arial,sans-serif !important; }
.item-title { background:transparent !important; color:#18243b !important; font-size:22px !important; font-weight:700; line-height:1.25; }
.item-title a { color:#234787 !important; }
.event-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:0 !important; }
.event-grid:before,.event-grid:after { content:none !important; }
.event-grid>.item { width:auto !important; float:none !important; margin:0 !important; padding:0 !important; border:1px solid #dce3ef; border-radius:18px; overflow:hidden; }
.event-grid>.item>.col-content { padding:18px !important; margin:0 !important; }
.event-grid .item-image-link { margin:0 0 16px !important; }
.event-grid .item-image-link img { max-width:100%; width:100%; height:160px; object-fit:contain; }
.event-grid .item-inset-list { color:#18243b; font-size:16px; line-height:1.5; margin:14px 0; }
.event-grid .row-mobile-controls .btn { width:100%; }
@media(max-width:991px) {
  .mobile-nav { background:#234787 !important; color:#fff; padding:4px 0 8px !important; }
  .mobile-nav>.container { width:100% !important; min-width:0 !important; padding:0 20px !important; }
  .mobile-nav .page-header { padding:0 !important; margin:8px 0 !important; border:0 !important; }
  .mobile-nav h1 { color:#fff !important; font-size:26px !important; line-height:1.2; margin:0 !important; }
  .mobile-nav .page-header+.row>div:only-child .mobile-nav-item.no-sub-menu:has(li.active:only-child) { display:none; }
  .mobile-nav:has(h1:empty) { display:none !important; }
}
@media(max-width:767px) {
  .event-grid { grid-template-columns:1fr; gap:16px; }
  .event-grid>.item>.col-content { padding:16px !important; }
  .event-grid .item-image-link img { height:130px; }
}

/* Preserve native date selection while making touch controls easier to use. */
.datepicker-inline { width:100% !important; max-width:336px; margin:0 auto; }
.datepicker-inline table { width:100%; table-layout:fixed; }
.datepicker-inline td.day { width:auto !important; height:44px !important; border-radius:8px; font-family:"Outfit",Arial,sans-serif; font-size:16px; }
.datepicker-inline th.prev,.datepicker-inline th.next { height:44px; }
@media(max-width:991px) {
 .mobile-nav:not(:has(.mobile-nav-item:not(.no-sub-menu))) .page-header+.row { display:flex; flex-wrap:nowrap; overflow-x:auto; margin:0; padding:4px 0; }
 .mobile-nav:not(:has(.mobile-nav-item:not(.no-sub-menu))) .page-header+.row>div { width:auto !important; flex:0 0 auto; padding:0 4px 0 0; }
 .mobile-nav:not(:has(.mobile-nav-item:not(.no-sub-menu))) .mobile-nav-item { margin:0 !important; padding:0 !important; }
 .mobile-nav:not(:has(.mobile-nav-item:not(.no-sub-menu))) .mobile-nav-item a { display:block; min-height:44px; padding:12px !important; font-size:14px; line-height:20px; color:#fff !important; border-radius:10px; background:#172f5d; white-space:nowrap; }
 .mobile-nav:not(:has(.mobile-nav-item:not(.no-sub-menu))) .mobile-nav-item li.active>a { background:#fff; color:#234787 !important; font-weight:700; }
 .mobile-nav:not(:has(.mobile-nav-item:not(.no-sub-menu))) .mobile-nav-item a.disabled { opacity:.6; }
}

/* Keep the logo above the shared desktop navigation background. */
a.site-logo { z-index:2; }
@media(min-width:1100px) { .site-actions { box-sizing:border-box !important; } }
.event-date-picker { margin-left:-16px; margin-right:-16px; }

/* Make the guest form's title and first field easier to reach. */
.customer-info-form { margin-top:18px !important; }
.customer-info-form .form-title h1 { font-size:26px !important; line-height:1.2; color:#18243b; }
@media(max-width:991px) { body:has(.customer-info-form) .mobile-nav { display:none !important; } }

/* Keep the existing checkout offer readable without dominating the form. */
[data-templatearea="CartTop"] { margin:8px 0 12px !important; padding:10px 12px; background:#fff6e6; border-radius:10px; }
[data-templatearea="CartTop"] p { margin:0 !important; font-size:14px !important; line-height:1.4; text-align:left !important; color:#46536b; }

/* Booking layout fixes — 2026-09-06. Restore the saved pre-fix CSS to revert. */
.item-event-content.item-event-first-step:has(.event-date-picker) { height:auto !important; min-height:0 !important; max-height:none !important; }
.datepicker-legend { display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:12px; font-size:14px; line-height:1.4; }
.datepicker-legend>div { display:flex; align-items:center; gap:8px; margin:0; }
.datepicker-legend .label { flex:0 0 18px; width:18px; height:20px; padding:0; margin:0; }
@media(max-width:767px) {
  .modifier.choice .modifier-title { font-family:"Outfit",Arial,sans-serif !important; font-size:20px !important; font-weight:700; line-height:1.25; word-break:normal !important; overflow-wrap:break-word; white-space:normal; padding-right:0 !important; min-width:0; flex:1; }
  .modifier.choice .modifier-header { margin-left:0 !important; margin-right:0 !important; }
  .modifier.choice .modifier-col-main { align-items:flex-start; gap:10px; }
  .modifier.choice .modifier-col-main>.icon { flex:0 0 20px; width:20px; font-size:24px; padding:0; }
  .modifier .modifier-item { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:12px; }
  .modifier .modifier-item:before,.modifier .modifier-item:after { content:none; }
  .modifier .modifier-item-data,.modifier .modifier-item-price { float:none; width:auto; min-width:0; padding-left:0 !important; padding-right:0 !important; }
  .modifier .modifier-item .radio label { display:flex !important; width:100%; align-items:flex-start; gap:10px; min-height:44px; font-size:16px; line-height:24px; }
  .modifier .modifier-item .iradio_custom { flex:0 0 18px; margin:3px 0 0 !important; }
  .modifier .modifier-item .radio label>span { min-width:0; flex:1 1 0; width:auto !important; display:block !important; white-space:normal; word-break:normal; overflow-wrap:break-word; }
  .modifier .modifier-item-price { align-self:start; padding-top:12px; white-space:nowrap; font-size:16px; line-height:24px; }
}
@media(max-width:380px) {
  .modifier.choice .modifier-title { font-size:18px !important; }
  .modifier .modifier-item { grid-template-columns:minmax(0,1fr); }
  .modifier .modifier-item-price { text-align:left; padding:0 0 12px 28px !important; }
}


/* Queens retail products: compact artwork and earlier mobile purchase controls. */
.single-item:has(> .inventory-item-id) .single-item-thumbs:has(> .single-item-thumb:only-child) {
  display: none;
}
.single-item:has(> .inventory-item-id) .single-item-image .single-image-link {
  display: block;
  width: 100%;
  max-width: 280px;
  margin: 0 auto;
}
.single-item:has(> .inventory-item-id) .single-item-image .single-image-link > img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 280px;
  object-fit: contain;
}
@media (max-width: 767px) {
  form:has(.single-item > .inventory-item-id) .wizard-top-header {
    font-size: 20px;
    line-height: 1.25;
  }
  .single-item:has(> .inventory-item-id) .single-item-image {
    margin: 0 0 12px;
  }
  .single-item:has(> .inventory-item-id) .single-item-image .single-image-link {
    max-width: 160px;
  }
  .single-item:has(> .inventory-item-id) .single-item-image .single-image-link > img {
    max-height: 160px;
  }
  .single-item:has(> .inventory-item-id) > div:has(> .single-item-controls) {
    display: flex;
    flex-direction: column;
  }
  .single-item:has(> .inventory-item-id) .item-title {
    order: -1;
  }
  .single-item:has(> .inventory-item-id) .single-item-price {
    order: 0;
  }
  .single-item:has(> .inventory-item-id) .single-item-controls {
    order: 1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding-top: 0;
    margin: 12px 0 16px;
  }
  .single-item:has(> .inventory-item-id) .single-item-controls .input-group-quantity {
    order: 0;
    float: none;
    flex: 0 0 112px;
    max-width: 112px;
  }
  .single-item:has(> .inventory-item-id) .single-item-controls::before,
  .single-item:has(> .inventory-item-id) .single-item-controls::after {
    display: none;
  }
  .single-item:has(> .inventory-item-id) .single-item-controls .btn-next {
    order: 1;
    float: none;
    flex: 1 1 124px;
    min-height: 48px;
    margin: 0;
  }
  .single-item:has(> .inventory-item-id) .single-item-controls .input-group-quantity .btn,
  .single-item:has(> .inventory-item-id) .single-item-controls .input-group-quantity input {
    min-height: 48px;
  }
  .single-item:has(> .inventory-item-id) .single-item-description {
    order: 2;
    font-size: 16px;
    line-height: 1.5;
    padding: 0;
    margin: 0 0 16px;
  }
}


/* Queens booking times: clear available, selected and unavailable states — 2026-09-07.
   Shared presentation only. CenterEdge retains all availability and booking logic.
   `time-selected` is CenterEdge's click-handler class; `.selected` is its chosen state. */

.daytime-buttons > .time-interval-option {
  padding: 10px 8px 12px !important;
  border: 2px solid #1857ad !important;
  border-radius: 12px !important;
  background: #1857ad !important;
  color: #fff !important;
  box-shadow: 0 3px 0 rgba(16, 47, 95, .14);
}
.daytime-buttons > .time-interval-option .time,
.daytime-buttons > .time-interval-option .time .icon,
.daytime-buttons > .time-interval-option .text {
  color: inherit !important;
}
.daytime-buttons > .time-interval-option .text {
  font-weight: 700 !important;
}
.daytime-buttons > .time-interval-option:not(.disabled):not(.inactive):not([disabled]):not([aria-disabled="true"]):hover {
  background: #103f82 !important;
  border-color: #103f82 !important;
}
.daytime-buttons > .time-interval-option.active:not(.disabled):not(.inactive):not([disabled]):not([aria-disabled="true"]) {
  background: #c91528 !important;
  border-color: #c91528 !important;
  box-shadow: 0 0 0 3px #fbe2e5 !important;
}
.daytime-buttons > .time-interval-option.active:not(.disabled):not(.inactive):not([disabled]):not([aria-disabled="true"]) .text::before {
  content: "\2713\00a0";
}
.daytime-buttons > .time-interval-option:is(.disabled, .inactive, [disabled], [aria-disabled="true"]) {
  background: #eef1f5 !important;
  border-color: #d9dfe7 !important;
  color: #7b8492 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
}

/* Native time tickets are shared by event, admission and class selectors. */
.item .item-ticket {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  min-width: 92px !important;
  max-width: 100% !important;
  padding: 10px 6px !important;
  margin: 5px 6px 7px 0 !important;
  border: 2px solid #1857ad !important;
  border-radius: 10px !important;
  background: #1857ad !important;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 3px 0 rgba(16, 47, 95, .14);
}
.item .item-ticket > svg {
  display: none !important;
}
.item .item-ticket .item-ticket-title {
  position: static !important;
  padding: 0 !important;
  color: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}
.item .item-ticket:not(.disabled):not(.inactive):not([disabled]):not([aria-disabled="true"]):hover {
  background: #103f82 !important;
  border-color: #103f82 !important;
}
.item .item-ticket.selected:not(.disabled):not(.inactive):not([disabled]):not([aria-disabled="true"]) {
  background: #c91528 !important;
  border-color: #c91528 !important;
  box-shadow: 0 0 0 3px #fbe2e5 !important;
}
.item .item-ticket.selected:not(.disabled):not(.inactive):not([disabled]):not([aria-disabled="true"]) .item-ticket-title::before {
  content: "\2713\00a0";
}
.item .item-ticket:is(.disabled, .inactive, [disabled], [aria-disabled="true"]) {
  background: #eef1f5 !important;
  border-color: #d9dfe7 !important;
  color: #7b8492 !important;
  opacity: 1 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
}
.item .item-ticket:focus-visible,
.daytime-buttons > .time-interval-option:focus-visible {
  outline: 3px solid #102f5f !important;
  outline-offset: 3px !important;
}

/* Booking calendars use the same state colors, including their native legend. */
.event-date-picker .datepicker-inline table td.day:not(.disabled) {
  background: #e8f1ff !important;
  color: #134786 !important;
  font-weight: 700 !important;
  box-shadow: inset 0 0 0 2px #fff;
}
.event-date-picker .datepicker-inline table td.day:not(.disabled):hover {
  background: #1857ad !important;
  color: #fff !important;
}
.event-date-picker .datepicker-inline table td.day.disabled,
.event-date-picker .datepicker-inline table td.day.disabled:hover {
  background: #eef1f5 !important;
  color: #7b8492 !important;
  box-shadow: inset 0 0 0 2px #fff;
  cursor: not-allowed !important;
}
.event-date-picker .datepicker-inline table td.day.today,
.event-date-picker .datepicker-inline table td.day.today:hover,
.event-date-picker .datepicker-inline table td.day.today.disabled,
.event-date-picker .datepicker-inline table td.day.today.disabled:hover {
  background: #fff0be !important;
  color: #18243b !important;
  box-shadow: inset 0 0 0 2px #dba520 !important;
}
.event-date-picker .datepicker-inline table td.day.active:not(.disabled),
.event-date-picker .datepicker-inline table td.day.active:not(.disabled):hover {
  background: #c91528 !important;
  color: #fff !important;
  box-shadow: inset 0 0 0 2px #fff !important;
}
.event-date-picker + .datepicker-legend .label.legend-unavailable {
  background: #eef1f5 !important;
  border: 1px solid #d9dfe7 !important;
}
.event-date-picker + .datepicker-legend .label.legend-today {
  background: #fff0be !important;
  border: 2px solid #dba520 !important;
}
.event-date-picker + .datepicker-legend .label.legend-selected {
  background: #c91528 !important;
  border-color: #c91528 !important;
}


/* Queens website finish — 2026-09-07.
   Match the approved website cards, navy outlines and yellow accents.
   Presentation only; preserve all native content, links and booking states. */
:root { --lbq-site-ink:#182b50; --lbq-site-blue:#2453a4; --lbq-site-gold:#ffdf70; }
body, .dynamic-content { color:var(--lbq-site-ink); }
.dynamic-content > .container { box-shadow:0 10px 32px #0c102618; }
.page-header h1, .wizard-top-header { color:var(--lbq-site-ink) !important; font-weight:800 !important; letter-spacing:-.7px; }
.page-header h1 { font-size:clamp(28px,3vw,38px) !important; line-height:1.15; }
.mobile-nav .page-header h1 { color:#fff !important; font-size:26px !important; }
.page-header { border-bottom-color:#e0e7f1; }
.item-description { color:#3c4d69; line-height:1.6; }
[data-templatearea="GroupDescriptionTop"] .data-templatearea-content > div {
  padding:12px 16px; background:#fff3cc; color:#182b50; border:1px solid #e9c866;
  border-left:4px solid #dba520; border-radius:12px; font-size:14px; font-weight:600; line-height:1.5; text-align:left !important;
}

/* Match the website's prominent ticket action and white logo tab. */
#widgets-collapse .main-nav > li > a { font-weight:650; }
#widgets-collapse .main-nav > li > a[href="https://queens.laserbounce.com/pricing/open-sessions/"] {
  background:#c32c36 !important; color:#fff !important; border:2px solid #c32c36;
  box-shadow:0 3px 0 #102f5f55; border-radius:13px !important;
}
#widgets-collapse .main-nav > li > a[href="https://queens.laserbounce.com/pricing/open-sessions/"]:hover {
  background:#a8202a !important; border-color:#a8202a;
}
@media(min-width:1100px) {
  a.site-logo { border-radius:0 45px 45px 0; box-shadow:0 4px 0 #102f5f24; }
  #widgets-collapse .main-nav > li > a { padding:12px 13px !important; }
}

/* Elfsight announcement bar only: use the website's yellow offer ribbon.
   Stable semantic class prefixes avoid depending on generated hash suffixes. */
.es-widget-background-wrapper:has([class*="bar-elements__ElementsWrapper"]) .es-background-base {
  background:#ffdf70 !important;
}
.es-widget-background-wrapper:has([class*="bar-elements__ElementsWrapper"]) :is([class*="message__TextHTML"], [class*="badge__StyledBadge"]) {
  color:#182b50 !important;
}
.es-widget-background-wrapper:has([class*="bar-elements__ElementsWrapper"]) [class*="message__TextHTML"] { font-weight:650 !important; }
.es-widget-background-wrapper:has([class*="bar-elements__ElementsWrapper"]) [class*="badge__StyledBadge"] { border-color:#182b5055 !important; }
.es-widget-background-wrapper:has([class*="bar-elements__ElementsWrapper"]) .es-button-base-container {
  background:#182b50 !important; color:#fff !important; border-color:#182b50 !important; border-radius:8px !important;
}
.es-widget-background-wrapper:has([class*="bar-elements__ElementsWrapper"]) [class*="close-button__StyledCloseIcon"] { fill:#182b50 !important; }

/* Catalog cards echo the outlined ticket cards on the website. */
.widget-list-container .widget-item, .event-grid > .item {
  --store-accent:#2453a4; --store-tint:#eef4ff;
  border:2px solid #182b50 !important; border-top:6px solid var(--store-accent) !important;
  border-radius:20px !important; box-shadow:0 6px 0 #182b501c;
  background:#fff !important;
}
.widget-list-container .widget-item:has(a[href="/waivers"]) { --store-accent:#00786f; --store-tint:#eaf8f3; }
.widget-list-container .widget-item:has(a[href="/webgroups/517ec629-f950-48a6-a67d-b4f74f3d60f6"]) { --store-accent:#7239aa; --store-tint:#f5effc; }
.widget-list-container .widget-item:has(a[href="/webgroups/61ad64db-e9e8-4a75-99ba-85019539f307"]) { --store-accent:#c32c36; --store-tint:#fff2ed; }
.widget-list-container .widget-item:has(a[href="/retail/items"]) { --store-accent:#00786f; --store-tint:#eaf8f3; }
.event-grid > .item:has(a[href$="c8977def-e2b6-45ab-af81-519ff79290e1"]) { --store-accent:#00786f; --store-tint:#eaf8f3; }
.event-grid > .item:has(a[href$="b02df883-f92f-4415-967a-7cbad8263b8e"]) { --store-accent:#7239aa; --store-tint:#f5effc; }
.event-grid > .item:has(a[href$="6e496102-ad03-4201-8253-6c9e657e24b4"]) { --store-accent:#c32c36; --store-tint:#fff2ed; }
.event-grid > .item:has(a[href="/retail/item/1186"]) { --store-accent:#00786f; --store-tint:#eaf8f3; }
.event-grid > .item:has(a[href="/retail/item/1188"]) { --store-accent:#7239aa; --store-tint:#f5effc; }
.event-grid > .item:has(a[href="/retail/item/1190"]) { --store-accent:#c32c36; --store-tint:#fff2ed; }
.widget-list-container .col-content-flex { background:var(--store-tint); padding-bottom:12px !important; }
.widget-list-container .widget-item .col-content { background:var(--store-tint); }
.widget-list-container .col-content > .text-right { background:var(--store-tint); padding-top:0 !important; }
.widget-list-container .item-title { color:#182b50 !important; font-size:22px !important; letter-spacing:-.5px; }
.widget-list-container .item-image-link img { border-radius:0 !important; }
.event-grid > .item > .col-content { padding:0 !important; display:flex; flex-direction:column; height:100%; }
.event-grid .item-image-link {
  margin:0 !important; padding:18px; background:var(--store-tint); border-bottom:2px dashed #182b5033;
}
.event-grid .item-image-link img { height:144px !important; }
.event-grid .col-content-flex { padding:18px 20px 0 !important; }
.event-grid .col-content-flex + .col-content-flex { padding-top:0 !important; }
.event-grid .item-title, .event-grid .item-title a { color:var(--store-accent) !important; font-weight:800; font-size:24px !important; line-height:1.2; letter-spacing:-.5px; }
.event-grid .item-description { margin:12px 0 0; font-size:15px; }
.event-grid .item-inset-list { margin:12px 0 18px; color:#3c4d69; }
.event-grid .item-inset-list ul { padding:0; margin:0; list-style:none; }
.event-grid .item-inset-list li { padding:6px 0 6px 23px; position:relative; font-size:15px; line-height:1.45; color:#3c4d69 !important; }
.event-grid .item-inset-list li::before { content:"\2713"; position:absolute; left:0; color:var(--store-accent); font-weight:800; }
.event-grid .item-inset-list .highlighted strong { color:inherit !important; }
.event-grid .item-inset-list .item-event-info-basic { margin-bottom:8px; padding:12px 14px; border-radius:12px; background:var(--store-tint); color:#182b50 !important; }
.event-grid .item-inset-list .item-event-info-basic::before { content:none; }
.event-grid .item-event-info-basic > strong:first-child { display:block; font-size:30px; line-height:1.2; letter-spacing:-.8px; color:#182b50; margin-bottom:4px; }
.event-grid .row-mobile-controls { margin:0 !important; padding:0 20px 20px; margin-top:auto !important; }
.event-grid .row-mobile-controls > div { padding:0 !important; }
.widget-list-container .widget-item .btn, .event-grid .row-mobile-controls a.btn[href] {
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  min-height:50px; background:var(--store-accent) !important; border:2px solid var(--store-accent) !important;
  border-radius:11px !important; color:#fff !important; font-weight:750; font-size:16px;
  box-shadow:0 3px 0 #182b5024; text-align:left;
}
.widget-list-container .widget-item .btn .icon, .event-grid .row-mobile-controls a.btn[href] .icon { display:none; }
.widget-list-container .widget-item .btn::after, .event-grid .row-mobile-controls a.btn[href]::after { content:"\2192"; font-size:25px; font-weight:400; line-height:1; }
.widget-list-container .widget-item .btn:hover, .event-grid .row-mobile-controls a.btn[href]:hover { filter:brightness(.91); }

/* Retail cards retain their quantity and cart controls, with space to wrap. */
.event-grid .row-mobile-controls form > .col-xs-12,
.event-grid .row-mobile-controls form .container-fluid { padding:0; }
.event-grid .row-mobile-controls form .container-fluid > .row {
  display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:0; padding-top:16px; border-top:2px dashed #182b5033;
}
.event-grid .row-mobile-controls form .container-fluid > .row > div { float:none; width:auto; padding:0; }
.event-grid .row-mobile-controls form .item-price { color:var(--store-accent); font-size:28px; font-weight:800; letter-spacing:-.7px; }
.event-grid .row-mobile-controls form .input-group-quantity { max-width:184px; width:184px; float:none; }
.event-grid .row-mobile-controls form .input-group-quantity .btn { min-width:44px; min-height:48px; padding:10px 6px; }
.event-grid .row-mobile-controls form .input-group-quantity input { min-height:48px; font-size:16px; }
.event-grid .row-mobile-controls .add-to-cart { background:var(--store-accent) !important; border-color:var(--store-accent) !important; }

/* Clear page hierarchy through the native booking and checkout steps. */
.left-column-wrap .nav > li > a { border-radius:11px; min-height:44px; padding:12px 14px; margin-bottom:6px; font-weight:600; color:#2453a4; }
.left-column-wrap .nav > li > a:not(.disabled):not(.disabled-link) { background:#eef4ff; }
.left-column-wrap .nav > li.active > a { background:#2453a4 !important; color:#fff !important; }
.left-column-wrap .nav > li > a.disabled, .left-column-wrap .nav > li > a.disabled-link { color:#758196 !important; background:#f3f5f8 !important; }
.wizard .wizard-text { font-weight:600; color:#52627c; }
.wizard .wizard-item.current .wizard-text { color:#2453a4; font-weight:800; }
.item-event-wrap .item-image-link { padding:14px; border:1px solid #d6dfec; border-radius:18px; background:#eef4ff; }
.item-event-wrap .item-image-link img { max-height:220px; width:auto; max-width:100%; object-fit:contain; margin:auto; }
.item-event-wrap .item-price-list {
  padding:18px 20px; margin:18px 0 22px; background:#2453a4; color:#fff;
  border:2px solid #182b50; border-radius:16px; box-shadow:0 4px 0 #182b501c;
}
.item-event-wrap .item-price-list > div, .item-event-wrap .item-price-list strong { color:#fff !important; }
.item-event-wrap .item-price-list .big-price { color:#ffdf70 !important; font-size:32px !important; font-weight:800 !important; letter-spacing:-.8px; }
.item-event-wrap .item-price-list > div + div { padding-top:7px; }
.item-attenders-title { color:#182b50; font-size:20px; font-weight:750; line-height:1.3; }
.item-attenders-controls { padding:14px 0; margin-top:12px; background:#f3f7fc; border:1px solid #d6dfec; border-radius:14px; }
.btn-primary:not(.disabled):not([disabled]), .btn-checkout:not(.disabled):not([disabled]) { box-shadow:0 3px 0 #182b5024; font-weight:700; }
.form-control { border-color:#acbad0; }
.summary:not(.hidden):not(:empty) { padding:16px; background:#f3f7fc; border:1px solid #d6dfec; border-radius:16px; }
.summary .summary-title { color:#182b50; font-size:18px; font-weight:750; }
.summary .summary-item { border-color:#d6dfec; }
.summary .summary-item-title { color:#52627c !important; }
.summary .summary-item-value, .summary .summary-item-value > a { color:#182b50 !important; }
.foot { border-top:5px solid #ffdf70; }

@media(max-width:767px) {
  .page-header h1 { letter-spacing:-.5px; }
  .wizard-top-header { font-size:22px !important; line-height:1.2; }
  .widget-list-container .widget-list, .event-grid { gap:20px; }
  .widget-list-container .widget-item, .event-grid > .item { border-radius:18px !important; }
  .event-grid .item-image-link { padding:14px; }
  .event-grid .item-image-link img { height:112px !important; }
  .event-grid .col-content-flex { padding:16px 16px 0 !important; }
  .event-grid .row-mobile-controls { padding:0 16px 18px; }
  .event-grid .item-title, .event-grid .item-title a { font-size:23px !important; }
  .item-event-wrap .item-image-link { max-width:200px; margin:0 auto 18px; }
  .item-event-wrap .item-image-link img { max-height:150px; }
  .item-event-wrap .item-price-list { padding:16px; }
  #main-content-container > .row:has(#eventDescription) { margin:0 !important; }
  #main-content-container > .row:has(#eventDescription) > div { padding-left:0; padding-right:0; }
  .item-event-wrap > .row.item-event { margin:0 !important; }
  .item-event-wrap > .row.item-event > div { padding:0 0 18px !important; }
  .item-attenders-controls.row { margin:12px 0 !important; padding:16px; }
  .item-attenders-controls > div { width:100% !important; padding:0 !important; }
  .item-attenders-controls .input-group-quantity { width:160px; max-width:160px !important; }
  .item-attenders-controls .input-group-quantity .btn { min-width:44px; min-height:48px; padding:10px 6px; }
  .item-attenders-controls .input-group-quantity input { min-height:48px; }
  .item-attenders-controls > .text-right { margin-top:8px; }
  .item-attenders-controls > .text-right > label { display:none; }
  .item-attenders-controls > .text-right > .btn { width:100%; min-height:48px; }
}
@media(prefers-reduced-motion:reduce) {
  .widget-list-container .widget-item .btn, .event-grid .row-mobile-controls a.btn[href] { transition:none; }
}

/* Timed-ticket calendar overlap fix — 2026-09-10. */
.area-ticket-select .item-event-content.item-event-first-step {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}
