/* Vegas Sidekick savings system */
.vs-deal-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px}.vs-regular-price{color:#8b8295;text-decoration:line-through;font:700 .78rem/1.2 Inter,sans-serif}.vs-save-badge{display:inline-flex;align-items:center;border-radius:999px;background:#fff1b8;color:#4c3200;border:1px solid rgba(255,176,0,.5);font:800 .72rem/1 'Plus Jakarta Sans',sans-serif;padding:6px 9px}.vs-deal-note{display:none!important}.mobile-cta .vs-mobile-save,.mobile-bar .vs-mobile-save,.sticky-cta .vs-mobile-save{display:block;color:#ffcf5a;font:800 .67rem/1.15 'Plus Jakarta Sans',sans-serif;margin-top:2px}
@media(max-width:800px){
  /* Approved mobile purchase hierarchy: value first, savings second, CTA third. */
  .buybox,
  .price-row{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    width:100%!important;
    padding:0!important;
    margin-top:22px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    outline:0!important;
  }
  .buybox>div:first-child{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:5px!important;
    width:100%!important;
  }
  .buybox>.price,
  .buybox>div:first-child>.price,
  .price-row>.price{
    display:block!important;
    width:100%!important;
    margin:0!important;
    position:relative!important;
    transform:none!important;
  }
  .buybox>.vs-deal-line,
  .buybox>div:first-child>.vs-deal-line,
  .price-row>.vs-deal-line{
    display:flex!important;
    width:100%!important;
    margin:0!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    position:relative!important;
    transform:none!important;
  }
  .buybox .save{display:none!important}
  .buybox>.cta,
  .buybox>.hero-cta,
  .buybox>a.vs-ticket-primary,
  .price-row>.ticket,
  .price-row>a.vs-ticket-primary{
    display:flex!important;
    width:100%!important;
    min-height:56px!important;
    margin:5px 0 0!important;
    padding:15px 22px!important;
    border-radius:999px!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    position:relative!important;
    transform:none!important;
  }
  .vs-regular-price{font-size:.76rem!important}
  .vs-save-badge{font-size:.68rem;padding:5px 8px}
}

/* Verified savings pilot: two shows. Shared, reusable purchase treatment. */
body.vs-savings-pilot .buybox{display:flex;flex-direction:column;align-items:stretch;gap:11px}
body.vs-savings-pilot .buybox>div:first-child{width:100%}
body.vs-savings-pilot .buybox .vs-deal-line{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:10px;width:100%;min-height:64px;margin:9px 0 0;padding:13px 16px;background:linear-gradient(105deg,#a9e94b,#ddffab);color:#214b1f;border:1px solid #94d33e;border-radius:14px;box-shadow:0 3px 12px rgba(38,80,15,.1)}
body.vs-savings-pilot .buybox .vs-deal-line:before{content:"✓";display:grid;place-items:center;flex:none;width:26px;height:26px;color:#1c5a25;border:2px solid #31742f;border-radius:50%;font:800 16px/1 Inter,sans-serif}
body.vs-savings-pilot .buybox .vs-save-badge{display:inline;background:none;border:0;color:#184e25;font:800 .95rem/1.3 'Plus Jakarta Sans',sans-serif;padding:0;border-radius:0;white-space:normal}
body.vs-savings-pilot .buybox .vs-regular-price{color:#36652e;text-decoration:line-through;font:600 .76rem/1.4 Inter,sans-serif;white-space:nowrap}
body.vs-savings-pilot .buybox>a.vs-ticket-primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:1px 0 0}
@media(max-width:800px){
body.vs-savings-pilot .buybox .vs-deal-line{min-height:60px;padding:12px;gap:8px}
body.vs-savings-pilot .buybox .vs-deal-line:before{width:23px;height:23px;font-size:14px}
body.vs-savings-pilot .buybox .vs-save-badge{font-size:.84rem}
body.vs-savings-pilot .mobile-bar .mobile-inner{gap:10px}
body.vs-savings-pilot .mobile-bar .mobile-price{display:grid;grid-template-columns:max-content max-content;column-gap:7px;align-items:center;white-space:nowrap}
body.vs-savings-pilot .mobile-bar .mobile-price small{grid-column:1/-1;line-height:1.1}
body.vs-savings-pilot .mobile-bar .vs-mobile-price-amount{grid-column:1;line-height:1.1}
body.vs-savings-pilot .mobile-bar .vs-mobile-save{grid-column:2;display:inline-block;align-self:center;margin:0;padding:4px 6px;background:#c7f37b;border-radius:999px;color:#194e25;font:800 .61rem/1.1 'Plus Jakarta Sans',sans-serif;white-space:nowrap}
body.vs-savings-pilot .mobile-bar a.cta{min-width:0}
}
@media(max-width:355px){body.vs-savings-pilot .mobile-bar .mobile-price{font-size:1.6rem;column-gap:5px}body.vs-savings-pilot .mobile-bar .vs-mobile-save{font-size:.55rem;padding:3px 5px}}

/* Large savings reinforcement at the final purchase decision.
   Only renders on show pages that opt into this module. */
.vs-final-savings-section .vs-final-savings{
  display:flex;align-items:center;justify-content:center;gap:14px;
  width:min(100%,640px);min-height:88px;margin:20px auto 16px;padding:16px 22px;
  border:1px solid #9bd24e;border-radius:17px;
  background:linear-gradient(105deg,#a9e94b,#ddffab);color:#214e25;
  box-shadow:0 4px 16px rgba(38,80,15,.10);
  text-align:center;
}
.vs-final-savings-section .vs-final-savings-icon{
  flex:none;display:grid;place-items:center;
  width:42px;height:42px;border:2px solid #367a39;border-radius:50%;
  font:800 23px/1 Inter,sans-serif;color:#205d2b;
}
.vs-final-savings-section .vs-final-savings-copy{display:flex;flex-direction:column;gap:4px;align-items:center;min-width:0}
.vs-final-savings-section .vs-final-savings-copy strong{
  font:800 clamp(1.1rem,2.2vw,1.65rem)/1.2 'Plus Jakarta Sans',sans-serif;letter-spacing:-.025em;
}
.vs-final-savings-section .vs-final-savings-copy span{
  font:600 .82rem/1.4 Inter,sans-serif;color:#36652e;
}
.vs-final-savings-section a.cta.vs-ticket-primary{
  display:flex;align-items:center;justify-content:center;
  width:min(100%,640px);min-height:54px;margin:0 auto;border-radius:15px;
}
@media(max-width:520px){
  .vs-final-savings-section .vs-final-savings{
    min-height:80px;gap:10px;padding:14px 10px;margin:18px auto 14px;
  }
  .vs-final-savings-section .vs-final-savings-icon{width:36px;height:36px;font-size:20px}
  .vs-final-savings-section .vs-final-savings-copy strong{font-size:1.25rem}
  .vs-final-savings-section .vs-final-savings-copy span{font-size:.71rem}
}

/* Ticketing-unavailable treatment: keep the show guide accessible without sending
   guests to an unavailable checkout. No extra mobile sticky booking surface. */
body.vs-booking-unavailable .buybox.vs-booking-unavailable-panel{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  gap:5px;padding:17px 20px;margin-top:20px;border:1px solid rgba(255,255,255,.45);
  border-radius:16px;background:rgba(255,255,255,.12);box-shadow:none;
}
.vs-booking-unavailable-panel strong{color:#fff;font:800 1.05rem/1.35 'Plus Jakarta Sans',sans-serif}
.vs-booking-unavailable-panel span{color:#eee3f3;font:500 .87rem/1.45 Inter,sans-serif}
body.vs-booking-unavailable .facts .vs-unavailable-fact strong{font-size:clamp(.86rem,2.6vw,1.5rem);overflow-wrap:anywhere}
.vs-booking-unavailable-section p{max-width:760px;margin:0 0 18px}
.vs-alternative-show-link{display:inline-flex;align-items:center;justify-content:center;
  font:800 .92rem/1.4 'Plus Jakarta Sans',sans-serif;color:#52258c;
  background:#fff;border:1px solid #a48cbd;border-radius:999px;padding:12px 20px;
  text-decoration:none;max-width:100%;text-align:center;
}
.vs-alternative-show-link:hover,.vs-alternative-show-link:focus-visible{background:#f2eafa;border-color:#6d28d9}
@media(max-width:800px){
  body.vs-booking-unavailable{padding-bottom:0!important}
  body.vs-booking-unavailable .buybox.vs-booking-unavailable-panel{margin-top:20px;padding:15px 17px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.45)!important}
}
