/* BiletConcert quality UI v4 — final, additive stylesheet after premium and v3. */
:root{--bg:#f6f5f2;--surface:#fff;--ink:#202c32;--muted:#5d6a70;--accent:#835e38;--line:#e6e3dd}
html{scroll-behavior:smooth}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;letter-spacing:normal!important;-webkit-font-smoothing:antialiased}
body h1,body h2,body h3,body h4,body h5,body h6,
body .hero h1,body .hero-tile h2,body .listing-head h1,
body .event-main h1,body .entity-hero h1,body .section-title h2,
body .journal-article h1,body .event-text h2{
 font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;
 font-weight:750!important;letter-spacing:-.025em!important;line-height:1.16!important;
}
body .hero,body .listing-head,body .content-hero,body .event-shell,body .entity-hero{box-shadow:0 12px 36px rgba(30,40,45,.055)!important}
/* Homepage: the right column is an image mosaic, not a dark content panel. */
body .hero{grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr)!important;gap:clamp(24px,3.4vw,44px)!important;align-items:stretch!important;padding:clamp(26px,3.2vw,45px)!important;overflow:hidden!important}
body .hero-copy{min-width:0!important;align-self:center!important}
body .hero h1{font-size:clamp(40px,4.2vw,62px)!important;line-height:1.07!important;letter-spacing:-.035em!important;text-wrap:balance}
body .hero-copy>p{font-size:clamp(15px,1.15vw,18px)!important;line-height:1.5!important;max-width:47ch}
body .hero-panel{min-width:0!important;min-height:0!important;background:transparent!important;color:var(--ink)!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;display:flex!important;justify-content:stretch!important;align-self:stretch!important}
body .hero-featured{width:100%!important;min-width:0!important;max-width:100%!important}
body .hero-featured-title{color:#26363d!important}
body .hero-featured-title span{color:#3b5057!important;letter-spacing:.06em!important;font-size:11px!important}
body .hero-featured-title small{color:#68777e!important;line-height:1.3}
body .hero-featured-title a{color:#7c5937!important}
body .hero-mosaic-v17{min-width:0!important;width:100%!important;max-width:100%!important;min-height:390px!important;grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(0,.7fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body .hero-mosaic-v17 .hero-tile-main{grid-column:1!important;grid-row:1/3!important}
body .hero-tile{min-width:0!important;isolation:isolate;background:#23333c!important;border-radius:14px!important;box-shadow:none!important}
body .hero-tile-copy{z-index:3!important}
body .hero-tile .hero-tile-copy h2,body .hero-tile .hero-tile-copy span,body .hero-tile .hero-tile-copy b{color:#fff!important;text-shadow:0 1px 7px rgba(0,0,0,.23)}
body .hero-tile .hero-tile-copy p{color:#f0f0ee!important;line-height:1.35!important}
body .hero-tile:not(.hero-tile-main) .hero-tile-copy h2{font-size:clamp(13px,1.3vw,18px)!important;line-height:1.17!important;letter-spacing:-.012em!important}
body .hero-tile-main .hero-tile-copy h2{font-size:clamp(24px,2.4vw,34px)!important;line-height:1.12!important;letter-spacing:-.025em!important}
body .hero-search{min-width:0;max-width:100%!important;border-radius:12px!important;box-shadow:0 5px 18px rgba(20,34,44,.045)!important}
body .hero-search input{min-width:0!important}
body .hero-facts{min-width:0;flex-wrap:wrap}
/* Unified title proportions and comfortable text columns. */
body .section-title h2{font-size:clamp(24px,2.7vw,34px)!important}
body .event-main h1{font-size:clamp(32px,3.35vw,50px)!important;line-height:1.14!important;max-width:25ch!important;overflow-wrap:break-word}
body .event-meta b{overflow-wrap:break-word}
body .event-hero{gap:clamp(20px,3vw,38px)!important;padding:clamp(22px,3vw,38px)!important}
body .event-cover{border-radius:15px!important;box-shadow:0 8px 26px rgba(23,36,45,.10)!important}
body .event-ticket-bar{border-radius:14px!important;gap:14px!important}
body .event-primary-actions{min-width:0;flex-wrap:wrap}
body .event-primary-actions .btn{min-width:0;white-space:normal!important;text-align:center}
/* Genuine seller redirect. A restrained pulse tells the user the CTA is actionable. */
body .event-buy-primary{position:relative;isolation:isolate;overflow:hidden;border-radius:12px!important;min-height:52px!important;box-shadow:0 5px 16px rgba(31,53,65,.16)!important;animation:bc-cta-entrance .7s both,bc-cta-breathe 3.7s ease-in-out .8s infinite}
body .event-buy-primary:hover{transform:translateY(-2px)!important;box-shadow:0 10px 23px rgba(31,53,65,.22)!important}
body .event-buy-primary:active{transform:translateY(0)!important}
body .event-buy-primary span{display:inline-block;transition:transform .2s}
body .event-buy-primary:hover span{transform:translateX(3px)}
@keyframes bc-cta-entrance{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@keyframes bc-cta-breathe{0%,100%{box-shadow:0 5px 16px rgba(31,53,65,.16)}50%{box-shadow:0 7px 22px rgba(42,69,85,.28)}}
/* Series/show hero: correct media/text gutter and outer padding. */
body .entity-hero.series-hero{display:grid!important;grid-template-columns:clamp(175px,20vw,250px) minmax(0,1fr)!important;align-items:center!important;gap:clamp(28px,3.8vw,50px)!important;padding:clamp(28px,3.2vw,43px)!important;border-radius:20px!important;overflow:hidden!important}
body .entity-hero.series-hero>div:first-child{width:100%!important;min-width:0!important;height:auto!important;aspect-ratio:1/1!important;border-radius:15px!important;overflow:hidden!important}
body .entity-hero.series-hero>div:first-child img{width:100%;height:100%;object-fit:cover}
body .entity-hero.series-hero>div:last-child{min-width:0!important;max-width:100%!important;align-self:center!important;padding-right:clamp(5px,1.2vw,22px)!important}
body .entity-hero.series-hero h1{font-size:clamp(30px,3.4vw,49px)!important;line-height:1.13!important;overflow-wrap:break-word}
body .entity-hero.series-hero p{line-height:1.58!important}
/* Dark on dark regression guards. */
body .site-footer,body .social-hub{color:#f5f6f6!important}
body .site-footer h1,body .site-footer h2,body .site-footer h3,body .social-hub h2,body .social-hub h3{color:#fff!important}
body .event-shell,body .entity-hero,body .event-seo-copy,body .event-text,body .buy-section{color:#25323a!important}
body .offer .btn.primary{color:#fff!important}
@media(max-width:1100px){
 body .hero{grid-template-columns:1fr!important}
 body .hero-copy{align-self:start!important}
 body .hero-mosaic-v17{min-height:370px!important}
}
@media(max-width:820px){
 body .event-hero{gap:14px!important;padding:18px!important}
 body .event-main h1{font-size:clamp(28px,4vw,39px)!important;line-height:1.16!important}
 body .entity-hero.series-hero{grid-template-columns:180px minmax(0,1fr)!important;gap:22px!important;padding:24px!important}
 body .entity-hero.series-hero h1{font-size:clamp(28px,4.5vw,38px)!important}
 body .hero-mosaic-v17{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto!important;min-height:0!important}
 body .hero-mosaic-v17 .hero-tile-main{grid-column:1/-1!important;grid-row:auto!important;min-height:260px!important}
 body .hero-mosaic-v17 .hero-tile:not(.hero-tile-main){min-height:135px!important}
}
@media(max-width:620px){
 body .hero{padding:20px 16px!important;gap:22px!important}
 body .hero h1{font-size:clamp(34px,8vw,45px)!important;line-height:1.08!important}
 body .hero-mosaic-v17{grid-template-columns:1fr!important;gap:9px!important}
 body .hero-mosaic-v17 .hero-tile-main{grid-column:1!important;min-height:215px!important}
 body .hero-mosaic-v17 .hero-tile:not(.hero-tile-main){grid-column:1!important;min-height:125px!important}
 body .hero-tile-main .hero-tile-copy h2{font-size:25px!important}
 body .event-hero{display:block!important;padding:12px!important}
 body .event-main h1{font-size:clamp(27px,6vw,34px)!important;line-height:1.13!important}
 body .event-primary-actions .btn{width:100%!important}
 body .entity-hero.series-hero{grid-template-columns:1fr!important;gap:19px!important;padding:20px!important}
 body .entity-hero.series-hero>div:first-child{aspect-ratio:16/10!important;max-height:280px!important}
 body .entity-hero.series-hero>div:last-child{padding-right:0!important}
 body .entity-hero.series-hero h1{font-size:clamp(29px,7vw,39px)!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body .event-buy-primary{animation:none!important;transition:none!important}body .event-buy-primary:hover{transform:none!important}}
