/* Axxess V2 layout repair / 2026-10-14.
   Designed to be loaded LAST in each mockup. Keeps 3 independent art directions. */
:root{--axx-gold:#fbb227;--axx-midnight:#16120e}
html{scrollbar-gutter:stable}
body{overflow-x:clip}
:is(main,section,article,aside,header,nav,footer)>*{min-width:0}
img{max-width:100%}
h1,h2,h3,h4{overflow-wrap:break-word}
:focus-visible{outline-offset:3px}

/* The rail has TWO exactly equal sequences. -50% always lands precisely
   on the beginning of the second sequence, giving zero seam or blank space. */
.stage-ticker,.pulse-ticker{position:relative;display:block;width:100%;max-width:100%;padding:0!important;overflow:hidden!important;white-space:nowrap;isolation:isolate}
.stage-ticker{background:#1b1127;color:#fbb227}
.pulse-ticker{background:#fbb227;color:#17120d}
.stage-ticker .axxess-marquee-track,.pulse-ticker .axxess-marquee-track{
 display:flex!important;align-items:center;gap:0!important;max-width:none!important;width:max-content!important;
 min-width:max-content;white-space:nowrap;transform:translate3d(0,0,0);
 animation:axxess-seamless 76s linear infinite!important;will-change:transform
}
.stage-ticker .axxess-marquee-unit,.pulse-ticker .axxess-marquee-unit{
 display:flex!important;flex:0 0 auto!important;align-items:center;gap:0!important;width:max-content!important;
 min-width:max-content;white-space:nowrap;animation:none!important;transform:none!important
}
.axxess-marquee-item{display:inline-flex;align-items:center;gap:16px;white-space:nowrap;
 flex:0 0 auto!important;padding:14px 24px 14px 0;font:900 clamp(12px,1.15vw,16px)/1.5 Arial,Helvetica,sans-serif!important;
 letter-spacing:.09em;text-transform:uppercase
}
.axxess-marquee-star{font-size:18px;color:inherit;line-height:1}
@keyframes axxess-seamless{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.stage-ticker:hover .axxess-marquee-track,.pulse-ticker:hover .axxess-marquee-track{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){
 .stage-ticker .axxess-marquee-track,.pulse-ticker .axxess-marquee-track{
  animation:none!important;transform:none!important
 }
}

/* Text and art must occupy their own visual zones instead of colliding. */
body.direction-01-ticket-city :is(.market-inner,.market-inner-visual,.market-section,.market-hero){min-width:0}
body.direction-01-ticket-city .market-header{gap:16px}
body.direction-01-ticket-city .market-header .market-logo{flex:0 0 auto}
body.direction-01-ticket-city :is(.market-section,.market-card-copy,.market-feature-venue)>*{min-width:0}
body.direction-01-ticket-city .market-section :is(h1,h2,h3){line-height:1.08}
body.direction-01-ticket-city :is(.market-feature-venue,.market-partner-row){align-items:center;gap:22px}
body.direction-01-ticket-city .market-card-copy{overflow:visible}
body.direction-01-ticket-city .market-grid>*{min-width:0}
body.direction-01-ticket-city .market-partner-row p{max-width:580px}
body.direction-02-neon-playground .stage-hero-inner{gap:clamp(18px,2vw,34px);min-width:0}
body.direction-02-neon-playground .stage-hero-left{padding-right:0;min-width:0;isolation:isolate}
body.direction-02-neon-playground .stage-hero h1{
 white-space:normal!important;font-size:clamp(47px,5.25vw,82px)!important;line-height:1.02!important;
 max-width:100%;margin-bottom:25px;overflow-wrap:normal;position:relative;z-index:2
}
body.direction-02-neon-playground .stage-hero-right{min-width:0;isolation:isolate}
body.direction-02-neon-playground .stage-scribble{display:none!important}
body.direction-02-neon-playground .stage-sticker-aqua{left:5%!important;top:6px!important;z-index:8}
body.direction-02-neon-playground .stage-round-sticker{right:9px!important;bottom:14px!important;z-index:8}
body.direction-02-neon-playground .stage-section-heading h2{
 font-size:clamp(31px,4.8vw,70px)!important;line-height:1.05!important;overflow-wrap:normal
}
body.direction-02-neon-playground .stage-inner-hero .inner-content h1{
 font-size:clamp(43px,6.3vw,90px)!important;line-height:1.03!important;max-width:100%;white-space:normal!important
}
body.direction-02-neon-playground .stage-section{min-width:0}
body.direction-02-neon-playground :is(.stage-event-grid,.stage-genre-grid,.stage-member-grid,.venue-feature-grid)>*{min-width:0}
body.direction-02-neon-playground .venue-feature-text{min-width:0}
body.direction-03-axxess-select .pulse-hero h1{font-size:clamp(59px,8vw,116px)!important;
 white-space:normal!important;line-height:1.03!important;overflow-wrap:normal;max-width:100%}
body.direction-03-axxess-select .pulse-hero-copy{max-width:min(650px,62vw)!important}
body.direction-03-axxess-select .pulse-hero-copy>p{max-width:510px}
body.direction-03-axxess-select .pulse-interior-hero h1{font-size:clamp(48px,7vw,100px)!important;
 line-height:1.03!important;white-space:normal!important}
body.direction-03-axxess-select .pulse-feature-venue>*,body.direction-03-axxess-select .pulse-venue-feature>*{min-width:0}
body.direction-03-axxess-select :is(.pulse-lineup-section,.pulse-partner-section) h2{line-height:1.09!important}
body.direction-03-axxess-select .pulse-glass-pass{pointer-events:none}

/* The public-site modules are intentionally independent of the existing
   oversized headings and decorative negative-margin rules. */
body .site-proof{overflow:visible;max-width:1220px}
body .site-proof :is(.site-platform-grid,.site-events-grid,.site-contact-grid)>*{min-width:0}
body .site-proof .site-proof-heading h2{line-height:1.14!important;overflow-wrap:normal!important}
body .site-proof .site-platform-copy h3{line-height:1.2!important}
body .site-proof .site-contact-method{overflow-wrap:break-word}

/* Complete semantic footer; social is a compact icon set, not a horizontal text strip. */
body .axxess-footer,body .axxess-footer *{box-sizing:border-box}
body .axxess-footer{display:block!important;position:relative;isolation:isolate;width:100%;
 margin:0!important;padding:0!important;background:#13110f!important;color:#f6f1e8!important;
 background-image:none!important;overflow:visible!important;font-family:Arial,Helvetica,sans-serif!important;line-height:1.5}
body .axxess-footer:before{content:"";display:block;width:100%;height:4px;background:#fbb227}
body .axxess-footer-inner{width:min(100% - 56px,1240px);margin:auto;padding:63px 0 26px}
body .axxess-footer-top{display:grid;grid-template-columns:minmax(240px,1.3fr) minmax(265px,1fr) minmax(220px,.95fr);
 align-items:start;gap:clamp(22px,3vw,52px)}
body .axxess-footer-identity,body .axxess-footer-navigation,body .axxess-footer-contact{min-width:0}
body .axxess-footer-logo{display:inline-block;width:184px;max-width:100%;margin-bottom:20px}
body .axxess-footer-logo-img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;
 object-fit:contain!important;object-position:left center!important;filter:none!important;transform:none!important}
body .axxess-footer-headline{font:900 clamp(27px,2.8vw,40px)/1.13 Arial,Helvetica,sans-serif!important;
 color:#f6f1e8!important;max-width:340px;margin:0 0 14px!important;letter-spacing:-.055em!important;text-transform:none!important;
 overflow-wrap:normal;word-break:normal;transform:none!important;text-shadow:none!important}
body .axxess-footer-blurb{font:400 13px/1.75 Arial,Helvetica,sans-serif!important;color:#c7bfb1!important;
 letter-spacing:0!important;margin:0!important;max-width:345px}
body .axxess-footer-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}
body .axxess-footer-nav-col{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
body .axxess-footer-nav-col h3,body .axxess-footer-contact h3{
 font:900 11px/1.5 Arial,Helvetica,sans-serif!important;color:#fbb227!important;
 text-transform:uppercase!important;letter-spacing:.16em!important;margin:0 0 10px!important;
 transform:none!important}
body .axxess-footer a:not(.axxess-social-icon){transition:color .15s}
body .axxess-footer-nav-col a,body .axxess-footer-contact-link{
 color:#e5ded3!important;text-decoration:none!important;
 font:500 13px/1.5 Arial,Helvetica,sans-serif!important;letter-spacing:0!important;
 display:block!important;white-space:normal!important}
body .axxess-footer-nav-col a:hover,body .axxess-footer-contact-link:hover{color:#fbb227!important}
body .axxess-footer-contact p{font:400 13px/1.7 Arial,sans-serif!important;
 color:#c7bfb1!important;margin:0 0 16px!important}
body .axxess-footer-contact-link{margin:0 0 10px!important;overflow-wrap:anywhere}
body .axxess-footer-socials{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:24px 0 0}
body .axxess-footer .axxess-social-icon{width:42px;height:42px;min-width:42px;display:inline-grid!important;place-items:center!important;
 border:1px solid #6d5938;border-radius:50%;background:#26211a!important;color:#fff!important;
 text-decoration:none!important;transition:background .2s,border-color .2s,transform .2s}
body .axxess-footer .axxess-social-icon img{
 display:block!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
 object-fit:contain!important;filter:none!important;transform:none!important;margin:0!important;border:0!important;
 background:none!important;box-shadow:none!important;padding:0!important}
body .axxess-footer .axxess-social-icon:hover{background:#8e610e!important;border-color:#fbb227;transform:translateY(-2px)}
body .axxess-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;
 border-top:1px solid #42392d;margin-top:55px;padding:20px 0 0;flex-wrap:wrap}
body .axxess-footer-bottom span{font:800 11px/1.5 Arial,sans-serif;color:#aaa091;letter-spacing:.07em}
body .axxess-footer-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
body .axxess-footer-meta a,body .axxess-footer-meta button{
 font:600 11px/1.5 Arial,sans-serif!important;color:#d7cbbc!important;text-decoration:none!important;
 border:0!important;box-shadow:none!important;padding:0!important;background:none!important;cursor:pointer}
body .axxess-footer-meta a:hover,body .axxess-footer-meta button:hover{color:#fbb227!important}
body .axxess-footer-disclaimer{font:400 10px/1.7 Arial,sans-serif!important;
 letter-spacing:0!important;color:#8d8477!important;margin:19px 0 0!important}
body.direction-01-ticket-city .axxess-footer{background:#101010!important}
body.direction-01-ticket-city .axxess-footer .axxess-social-icon{border-radius:11px}
body.direction-02-neon-playground .axxess-footer{background:#1b1027!important}
body.direction-02-neon-playground .axxess-footer:before{
 height:6px;background:linear-gradient(90deg,#ff4db6 0 34%,#fbb227 34% 66%,#2ae1e6 66% 100%)}
body.direction-02-neon-playground .axxess-footer-nav-col h3,
body.direction-02-neon-playground .axxess-footer-contact h3{color:#ffabd8!important}
body.direction-02-neon-playground .axxess-footer .axxess-social-icon{border-radius:14px;border-color:#73567f}
body.direction-02-neon-playground .axxess-footer .axxess-social-icon:hover{background:#9e2972!important}
body.direction-03-axxess-select .axxess-footer{background:#181511!important}
body.direction-03-axxess-select .axxess-footer:before{height:2px}
body.direction-03-axxess-select .axxess-footer-headline{font-weight:800!important;letter-spacing:-.035em!important}
body.direction-03-axxess-select .axxess-footer .axxess-social-icon{background:#31271a!important}

/* Smaller screens: avoid grids collapsing underneath fixed art, preserve readable copy. */
@media(max-width:1100px){
 body .axxess-footer-top{grid-template-columns:minmax(180px,1fr) minmax(260px,1.15fr);gap:38px}
 body .axxess-footer-contact{grid-column:2}
 body .axxess-footer-identity{grid-row:span 2}
 body.direction-02-neon-playground .stage-hero h1{font-size:clamp(41px,5vw,65px)!important}
 body.direction-03-axxess-select .pulse-hero-copy{max-width:65vw!important}
}
@media(max-width:760px){
 html{scrollbar-gutter:auto}
 body .axxess-footer-inner{width:min(100% - 36px,650px);padding:45px 0 25px}
 body .axxess-footer-top{grid-template-columns:1fr;gap:35px}
 body .axxess-footer-identity{grid-row:auto}
 body .axxess-footer-contact{grid-column:auto}
 body .axxess-footer-navigation{gap:17px}
 body .axxess-footer-logo{width:154px;margin-bottom:15px}
 body .axxess-footer-headline{font-size:32px!important;max-width:500px}
 body .axxess-footer-socials{margin-top:18px;gap:10px}
 body .axxess-footer-bottom{margin-top:35px;align-items:flex-start}
 body .axxess-footer-nav-col{gap:9px}
 body.direction-01-ticket-city :is(.market-feature-venue,.market-partner-row){flex-direction:column;align-items:stretch}
 body.direction-02-neon-playground .stage-hero-inner{display:flex!important;flex-direction:column!important;
   align-items:stretch!important;width:calc(100% - 36px)!important;gap:18px!important;padding-top:22px}
 body.direction-02-neon-playground .stage-hero-left{width:100%;padding:25px 0 0!important}
 body.direction-02-neon-playground .stage-hero h1{font-size:clamp(36px,9.3vw,59px)!important;line-height:1.03!important;
    white-space:normal!important;max-width:100%;overflow-wrap:normal}
 body.direction-02-neon-playground .stage-hero-right{width:100%;min-height:260px;height:auto!important;margin:0!important}
 body.direction-02-neon-playground .stage-concert-frame{max-width:100%;margin:auto}
 body.direction-02-neon-playground .stage-sticker-aqua{font-size:13px!important;top:7px!important;left:9px!important;
 padding:8px 10px!important}
 body.direction-02-neon-playground .stage-round-sticker{width:104px!important;height:104px!important;
 right:5px!important;bottom:5px!important;font-size:12px!important;padding:6px!important}
 body.direction-02-neon-playground .stage-inner-hero .inner-content h1{font-size:clamp(35px,9vw,65px)!important}
 body.direction-02-neon-playground .stage-section-heading h2{font-size:clamp(31px,8vw,48px)!important}
 body.direction-03-axxess-select .pulse-hero-copy{max-width:calc(100vw - 40px)!important;left:20px!important}
 body.direction-03-axxess-select .pulse-hero h1{font-size:clamp(46px,11vw,68px)!important;line-height:1.01!important}
 body.direction-03-axxess-select .pulse-interior-hero h1{font-size:clamp(38px,9vw,68px)!important}
 body.direction-03-axxess-select .pulse-hero-facts{flex-wrap:wrap;gap:8px 16px}
 body.direction-03-axxess-select .pulse-glass-pass{opacity:.87}
 body .site-proof{width:calc(100% - 36px)!important;margin:35px auto 45px!important}
 body .site-proof .site-proof-heading h2{font-size:clamp(26px,7.8vw,42px)!important}
}
@media(max-width:420px){
 body .axxess-footer-socials{gap:7px}
 body .axxess-footer .axxess-social-icon{width:39px;height:39px;min-width:39px}
 body.direction-02-neon-playground .stage-hero h1{font-size:clamp(34px,9vw,44px)!important}
 body.direction-03-axxess-select .pulse-hero h1{font-size:clamp(42px,10.5vw,54px)!important}
 body.direction-03-axxess-select .pulse-hero-copy>p{font-size:14px!important;line-height:1.55!important}
 .axxess-marquee-item{font-size:12px!important;padding:13px 20px 13px 0;gap:12px}
}
/* Mobile QA corrections discovered by live geometry checks */
@media(max-width:650px){
 body.direction-01-ticket-city .market-search{
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  width:calc(100% - 26px)!important;max-width:calc(100% - 26px)!important;
  margin-left:13px!important;margin-right:13px!important
 }
 body.direction-01-ticket-city .market-search .search-item{min-width:0!important;
  padding:12px 10px!important;overflow:hidden}
 body.direction-01-ticket-city .market-search :is(select,input){display:block;width:100%!important;
  min-width:0!important;max-width:100%!important;text-overflow:ellipsis;
  white-space:nowrap!important;font-size:12px!important}
 body.direction-01-ticket-city .market-search .search-go{
  display:flex!important;justify-content:center;align-items:center;
  min-width:0!important;width:100%!important;max-width:100%!important;
  grid-column:1/-1!important;padding:17px 12px!important;font-size:12px!important;
  white-space:normal;text-align:center
 }
 body.direction-02-neon-playground .stage-upcoming-heading{
  display:flex!important;flex-wrap:wrap!important;align-items:center!important;
  min-width:0!important;width:100%!important;gap:14px!important
 }
 body.direction-02-neon-playground .stage-upcoming-heading h2{
  font-size:clamp(27px,7vw,38px)!important;
  letter-spacing:-.055em!important;
  line-height:1.12!important;max-width:100%!important;
  white-space:normal!important;overflow-wrap:normal
 }
 body.direction-02-neon-playground .stage-upcoming-heading .pink-asterisk{
  display:inline-block!important;font-size:.65em!important;margin-left:6px!important;vertical-align:baseline
 }
}

/* Ticket City: opening offer and event-search are consecutive sections.
   The search bar formerly used a -37px pull-up over the promotional text.
   Preserve the offer in its own readable row and place search BELOW it. */
body.direction-01-ticket-city .brief-opening-promo{
 display:grid!important;
 grid-template-columns:max-content max-content minmax(0,1fr) max-content!important;
 align-items:center!important;
 column-gap:clamp(14px,1.8vw,26px)!important;
 row-gap:10px!important;
 min-height:79px!important;
 width:100%!important;
 padding:18px clamp(22px,3vw,60px)!important;
 box-sizing:border-box!important;
 text-decoration:none!important;
 z-index:1!important;
}
body.direction-01-ticket-city .brief-opening-promo .brief-promo-kicker{
 white-space:nowrap!important;font-size:11px!important;
 letter-spacing:.095em!important;
}
body.direction-01-ticket-city .brief-opening-promo strong{
 display:block!important;
 color:#fff!important;
 font-size:clamp(18px,1.35vw,26px)!important;
 line-height:1.25!important;
 white-space:nowrap!important;
}
body.direction-01-ticket-city .brief-opening-promo .brief-promo-details{
 display:block!important;
 min-width:0!important;
 font-size:clamp(11px,.8vw,13px)!important;
 line-height:1.55!important;
 color:#e9dcc7!important;
}
body.direction-01-ticket-city .brief-opening-promo .brief-promo-arrow{
 display:inline-flex!important;
 justify-content:center!important;
 align-items:center!important;
 min-height:36px!important;
 white-space:nowrap!important;
}
body.direction-01-ticket-city .brief-opening-promo + #main > .market-search{
 position:relative!important;
 margin:22px auto 0!important;
 width:min(1250px,calc(100% - 48px))!important;
 max-width:1250px!important;
 z-index:2!important;
 box-sizing:border-box!important;
}
@media(max-width:1180px){
 body.direction-01-ticket-city .brief-opening-promo{
  grid-template-columns:minmax(0,1fr) auto!important;
  padding:18px 25px!important;
 }
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-kicker{
  grid-column:1/-1!important;
 }
 body.direction-01-ticket-city .brief-opening-promo strong{grid-column:1!important}
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-details{
  grid-column:1!important;
 }
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-arrow{
  grid-column:2!important;grid-row:2/span 2!important;align-self:center!important;
 }
}
@media(max-width:650px){
 body.direction-01-ticket-city .brief-opening-promo{
  grid-template-columns:minmax(0,1fr)!important;
  padding:20px 19px!important;
  row-gap:10px!important;
 }
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-kicker,
 body.direction-01-ticket-city .brief-opening-promo strong,
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-details,
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-arrow{
  grid-column:1!important;grid-row:auto!important;
  white-space:normal!important;
 }
 body.direction-01-ticket-city .brief-opening-promo strong{
  font-size:clamp(19px,5.25vw,24px)!important;
 }
 body.direction-01-ticket-city .brief-opening-promo .brief-promo-arrow{
  width:max-content!important;max-width:100%!important;
  white-space:nowrap!important;
 }
 body.direction-01-ticket-city .brief-opening-promo + #main > .market-search{
  width:calc(100% - 26px)!important;
  max-width:calc(100% - 26px)!important;
  margin:18px auto 0!important;
 }
}
