/* All Music Events V4.2 — final responsive polish
   Loaded after v3/luxury/commercial. Header/footer structure is untouched. */

:root{
  --ame-final-gold:#d4aa45;
  --ame-final-gold-hi:#f0cf78;
  --ame-final-green:#215159;
  --ame-final-ease:cubic-bezier(.22,.72,.18,1);
}

html{overflow-x:hidden;scroll-padding-top:110px}
body{overflow-x:hidden}
main,section,article,div{min-width:0}
img,video,iframe{max-width:100%}
.v3-page{overflow:hidden}
.v3-title,.v3-inner-hero h1,.v3-featured-body h2,.v3-event-card h3,.v3-next h2,.v3-story-copy h2{
  text-wrap:balance;
  overflow-wrap:break-word;
}
.v3-button,.v3-button-ghost,.v3-soldout{white-space:normal;text-align:center}

/* ----------------------------------------------------------
   Newsletter — pill controls that match the premium AME UI
   ---------------------------------------------------------- */
.v3-newsletter{
  padding:58px 0!important;
  background:
    radial-gradient(circle at 12% 110%,rgba(33,81,89,.24),transparent 38%),
    radial-gradient(circle at 88% -10%,rgba(212,170,69,.08),transparent 30%),
    linear-gradient(115deg,#061113,#020303 72%)!important;
}
.v3-newsletter-inner{
  grid-template-columns:minmax(0,1fr) minmax(480px,.86fr)!important;
  gap:54px!important;
  align-items:center!important;
}
.v3-newsletter h2{margin-bottom:11px!important}
.v3-newsletter-form{
  display:grid!important;
  grid-template-columns:minmax(120px,.9fr) minmax(190px,1.25fr) auto!important;
  gap:10px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.v3-newsletter-form input{
  height:56px!important;
  padding:0 20px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.28)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.015)!important;
  transition:border-color .3s ease,box-shadow .3s ease,background .3s ease,transform .3s var(--ame-final-ease)!important;
}
.v3-newsletter-form input::placeholder{color:rgba(255,255,255,.43)}
.v3-newsletter-form input:hover{
  border-color:rgba(212,170,69,.48)!important;
  background:rgba(8,12,12,.58)!important;
}
.v3-newsletter-form input:focus{
  outline:none!important;
  border-color:var(--ame-final-gold)!important;
  background:rgba(4,7,7,.72)!important;
  box-shadow:0 0 0 3px rgba(212,170,69,.09),0 10px 30px rgba(0,0,0,.18)!important;
  transform:translateY(-1px);
}
.v3-newsletter-form button{
  min-width:148px;
  height:56px!important;
  padding:0 22px!important;
  border:1px solid rgba(212,170,69,.58)!important;
  border-radius:999px!important;
  background:rgba(212,170,69,.055)!important;
  color:var(--ame-final-gold-hi)!important;
  box-shadow:none!important;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
  transition:color .3s ease,background .3s ease,border-color .3s ease,box-shadow .35s ease,transform .3s var(--ame-final-ease)!important;
}
.v3-newsletter-form button:hover{
  transform:translateY(-2px)!important;
  color:#050505!important;
  background:linear-gradient(135deg,var(--ame-final-gold-hi),var(--ame-final-gold) 62%,#b98527)!important;
  border-color:var(--ame-final-gold-hi)!important;
  box-shadow:0 16px 42px rgba(212,170,69,.24)!important;
}
.v3-newsletter-form button:active{transform:translateY(0)!important}
.v3-form-message{padding-left:14px}

/* ----------------------------------------------------------
   Next-page handoff — safe typography at every width
   ---------------------------------------------------------- */
.v3-next{
  min-height:360px!important;
  isolation:isolate;
}
.v3-next::before,.v3-next::after{z-index:-2}
.v3-next::after{z-index:-1}
.v3-next-inner{
  width:min(1180px,calc(100% - 40px));
  max-width:none!important;
  padding:72px 0!important;
}
.v3-next-inner>p,.v3-next-inner>h2,.v3-next-inner>a{position:relative;z-index:2}
.v3-next h2{
  max-width:820px!important;
  font-size:clamp(38px,6.3vw,78px)!important;
  line-height:.94!important;
  letter-spacing:-.058em!important;
  margin-bottom:17px!important;
}
.v3-next p{max-width:610px!important;margin-bottom:26px!important}

/* Homepage scroll cue: never sit on top of mobile copy */
@media(max-width:980px){
  .luxury-scroll-cue span{display:none!important}
  .luxury-scroll-cue{bottom:14px!important}
  .luxury-scroll-cue i{height:30px!important}
}
@media(max-width:700px){
  .luxury-scroll-cue{display:none!important}
}

/* ----------------------------------------------------------
   About — restore the richer original story, keep it refined
   ---------------------------------------------------------- */
.about-rich{
  display:grid;
  grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);
  gap:64px;
  align-items:start;
}
.about-rich-media{
  position:sticky;
  top:126px;
  min-height:690px;
  border:1px solid rgba(212,170,69,.20);
  border-radius:28px;
  background-image:var(--v3-desktop);
  background-position:var(--v3-focus,center);
  background-size:cover;
  overflow:hidden;
  box-shadow:0 38px 110px rgba(0,0,0,.52);
}
.about-rich-media::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),transparent 56%,rgba(0,0,0,.46)),linear-gradient(135deg,transparent 48%,rgba(212,170,69,.07));pointer-events:none}
.about-rich-media::after{content:"";position:absolute;inset:13px;border:1px solid rgba(255,255,255,.075);border-radius:19px;pointer-events:none}
.about-rich-copy{display:grid;gap:36px}
.about-copy-block{padding-bottom:34px;border-bottom:1px solid rgba(212,170,69,.16)}
.about-copy-block:last-child{padding-bottom:0;border-bottom:0}
.about-copy-block h2{margin:0 0 19px;font-size:clamp(36px,5vw,62px);line-height:.94;letter-spacing:-.05em;text-transform:uppercase;font-weight:620}
.about-copy-block h3{margin:0 0 15px;font-size:clamp(24px,3.2vw,36px);line-height:1;letter-spacing:-.035em;text-transform:uppercase;font-weight:600}
.about-copy-block p{margin:0 0 14px;color:rgba(255,255,255,.69);font-size:14px;line-height:1.88;font-weight:300}
.about-copy-block p:last-child{margin-bottom:0}
.about-list{list-style:none;margin:19px 0 0;padding:0;display:grid;gap:11px}
.about-list li{position:relative;padding-left:21px;color:rgba(255,255,255,.78);font-size:13px;line-height:1.6}
.about-list li::before{content:"";position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--ame-final-gold);box-shadow:0 0 18px rgba(212,170,69,.30)}
.about-values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}
.about-value-card{padding:17px 15px;border:1px solid rgba(212,170,69,.14);border-radius:14px;background:linear-gradient(160deg,rgba(212,170,69,.045),rgba(255,255,255,.015));min-width:0}
.about-value-card strong{display:block;margin-bottom:7px;color:var(--ame-final-gold-hi);font-size:9px;letter-spacing:.15em;text-transform:uppercase}
.about-value-card span{display:block;color:rgba(255,255,255,.58);font-size:10px;line-height:1.6}

/* ----------------------------------------------------------
   Event / video cover safety
   ---------------------------------------------------------- */
.v3-event-image picture{display:block;width:100%;height:100%}
.v3-event-image picture img{display:block;width:100%;height:100%;object-fit:cover}
.v3-past-event-card .v3-event-image img{object-position:center}

/* FAQ answers must never be clipped by content length */
.v3-faq-item.open .v3-faq-a{max-height:1200px!important}

/* ----------------------------------------------------------
   Intermediate laptops/tablets
   ---------------------------------------------------------- */
@media(max-width:1100px){
  .v3-container{width:min(100% - 36px,1040px)}
  .v3-newsletter-inner{grid-template-columns:1fr!important;gap:26px!important}
  .v3-newsletter-form{grid-template-columns:1fr 1.35fr auto!important;max-width:760px}
  .about-rich{grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr);gap:38px}
  .about-rich-media{min-height:610px}
}

@media(max-width:820px){
  .v3-section{padding:68px 0!important}
  .v3-section-head{align-items:flex-start!important}
  .v3-section-head p{max-width:380px}
  .v3-newsletter{padding:50px 0!important}
  .v3-newsletter-form{grid-template-columns:1fr 1fr!important}
  .v3-newsletter-form button{grid-column:1/-1;width:100%}
  .v3-form-message{grid-column:1/-1}
  .about-rich{grid-template-columns:1fr;gap:32px}
  .about-rich-media{position:relative;top:auto;min-height:0;aspect-ratio:16/10;background-image:var(--v3-mobile)}
  .about-values-grid{grid-template-columns:1fr 1fr 1fr}
  .v3-next{min-height:0!important}
  .v3-next-inner{padding:62px 0!important}
  .v3-next h2{font-size:clamp(34px,8.5vw,60px)!important;max-width:650px!important}
}

/* ----------------------------------------------------------
   Phones — 320px through large modern phones
   ---------------------------------------------------------- */
@media(max-width:620px){
  html{scroll-padding-top:86px}
  .v3-container,.v3-next-inner{width:calc(100% - 28px)!important}
  .v3-section{padding:56px 0!important}
  .v3-section-head{display:block!important;margin-bottom:24px!important}
  .v3-section-head p{margin-top:10px!important;font-size:11px!important;line-height:1.7!important}
  .v3-newsletter{padding:44px 0!important}
  .v3-newsletter-inner{gap:22px!important}
  .v3-newsletter h2{font-size:clamp(28px,10vw,42px)!important;line-height:.98!important}
  .v3-newsletter-form{grid-template-columns:1fr!important;gap:9px!important;max-width:none!important}
  .v3-newsletter-form input,.v3-newsletter-form button{width:100%!important;height:54px!important}
  .v3-newsletter-form button{grid-column:auto!important}
  .v3-form-message{padding-left:12px}

  .v3-next{min-height:0!important;display:block!important}
  .v3-next-inner{padding:52px 0 58px!important}
  .v3-next-inner::before{width:72px!important;margin-bottom:19px!important}
  .v3-next .v3-kicker{margin-bottom:13px!important}
  .v3-next h2{
    max-width:100%!important;
    font-size:clamp(30px,10.5vw,44px)!important;
    line-height:.96!important;
    letter-spacing:-.045em!important;
    margin-bottom:15px!important;
  }
  .v3-next p{max-width:100%!important;font-size:11px!important;line-height:1.7!important;margin-bottom:22px!important}
  .v3-next .v3-button{width:100%!important;min-height:50px!important}
  .v3-next::before{background-image:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,.72)),var(--v3-mobile)!important;background-position:var(--v3-focus,center)!important}
  .v3-next::after{background:linear-gradient(180deg,rgba(33,81,89,.09),transparent 42%,rgba(0,0,0,.12))!important}

  .about-rich-media{aspect-ratio:4/3;border-radius:20px;background-image:var(--v3-mobile)}
  .about-rich-copy{gap:27px}
  .about-copy-block{padding-bottom:26px}
  .about-copy-block h2{font-size:clamp(34px,11vw,48px);margin-bottom:16px}
  .about-copy-block h3{font-size:clamp(23px,7.8vw,31px)}
  .about-copy-block p{font-size:13px;line-height:1.8}
  .about-list li{font-size:12px}
  .about-values-grid{grid-template-columns:1fr;gap:8px}
  .about-value-card{padding:15px 14px}

  .v3-event-card h3{overflow-wrap:anywhere}
  .v3-event-subtitle{overflow-wrap:anywhere}
  .v3-badges{gap:6px}
  .v3-badge{max-width:100%;white-space:normal;line-height:1.3;padding-top:6px;padding-bottom:6px}
  .v3-vip-ribbon{max-width:calc(100% - 32px);white-space:normal;line-height:1.25;text-align:center}
  .v3-card-actions{display:grid!important;grid-template-columns:1fr!important}
  .v3-card-actions>*{width:100%!important}
  .v3-modal-content iframe{width:100%!important}
}

@media(max-width:360px){
  .v3-container,.v3-next-inner{width:calc(100% - 22px)!important}
  .v3-inner-hero h1{font-size:clamp(44px,15vw,58px)!important}
  .v3-featured-body{padding-left:16px!important;padding-right:16px!important}
  .v3-featured-body h2{font-size:clamp(32px,11.5vw,42px)!important}
  .v3-event-card-body{padding-left:15px!important;padding-right:15px!important}
  .v3-newsletter-form input{padding-left:17px!important;padding-right:17px!important}
  .v3-next h2{font-size:clamp(28px,10vw,38px)!important}
}

/* Short-height landscape phones and compact laptops */
@media(max-height:620px) and (orientation:landscape){
  .luxury-home-hero,.luxury-home-hero-inner{min-height:100svh!important}
  .luxury-home-hero-inner{padding-top:108px!important;padding-bottom:42px!important}
  .luxury-hero-logo{width:min(330px,45vw)!important}
  .luxury-hero-line{margin:14px 0 20px!important}
  .luxury-hero-copy{margin:14px auto 18px!important;line-height:1.55!important}
  .luxury-scroll-cue{display:none!important}
  .v3-inner-hero{min-height:100svh!important}
  .v3-inner-hero-inner{padding:112px 0 42px!important}
}

@media(hover:none),(pointer:coarse){
  .v3-newsletter-form input:hover{border-color:rgba(255,255,255,.16)!important;background:rgba(0,0,0,.28)!important}
  .v3-newsletter-form button:hover{transform:none!important;color:var(--ame-final-gold-hi)!important;background:rgba(212,170,69,.055)!important;border-color:rgba(212,170,69,.58)!important;box-shadow:none!important}
}

@media(prefers-reduced-motion:reduce){
  .v3-newsletter-form input,.v3-newsletter-form button{transform:none!important}
}

/* Dedicated aftermovie covers: desktop 16:9, mobile 9:16 when a video exists */
.v3-past-event-card.has-aftermovie .v3-event-image{aspect-ratio:16/9}
@media(max-width:620px){
  .v3-past-event-card.has-aftermovie .v3-event-image{aspect-ratio:9/16}
}
