:root{--yellow:#ffc400;--blue:#0647c9;--navy:#10213a;--ink:#121826;--muted-premium:#5f6877;--paper:#fff;--line:#e2e7ee}
html{scroll-behavior:smooth}
body{background:#f6f8fb;color:var(--ink)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.32;background-image:linear-gradient(90deg,transparent 49.8%,rgba(16,33,58,.035) 50%,transparent 50.2%),radial-gradient(circle at 20% 20%,rgba(6,71,201,.06),transparent 25%)}
.event-hero{min-height:100svh;background:#fff;color:var(--ink);overflow:hidden}
.event-hero:before{background:linear-gradient(105deg,rgba(255,255,255,.98),rgba(255,255,255,.92) 48%,rgba(6,71,201,.05));animation:none}
.topbar{display:flex;flex-wrap:wrap;background:rgba(255,255,255,.88);border:1px solid rgba(16,33,58,.08);box-shadow:0 10px 34px rgba(16,33,58,.08);backdrop-filter:blur(14px)}
.topbar>.btn,.topbar .access-nav,.topbar .access-nav .btn{display:flex!important}.topbar .access-nav{gap:8px}
.topbar .btn-outline{color:var(--navy);border-color:#cbd3df;background:#fff}
.topbar .btn-outline:hover,.topbar .btn-outline:focus-visible{border-color:var(--blue);color:var(--blue)}
.event-grid.premium-event-grid{grid-template-columns:minmax(0,.92fr) minmax(340px,.72fr);gap:clamp(28px,5vw,72px);align-items:center;padding-block:clamp(28px,5vw,76px)}
.premium-event-grid .event-copy{position:relative;z-index:2}
.premium-event-grid .event-copy:before{content:"";display:block;width:88px;height:8px;margin-bottom:20px;border-radius:99px;background:repeating-linear-gradient(90deg,var(--yellow) 0 8px,var(--navy) 8px 10px)}
.premium-event-grid .status{display:inline-flex;color:var(--navy);background:#fff7cc;border:1px solid #f1d34b;box-shadow:none}
.premium-event-grid .event-title-logo{display:none!important}
.premium-event-grid .tagline{color:var(--blue);font-size:clamp(1rem,1.8vw,1.25rem);font-weight:800}
.premium-event-grid .lead{color:#3e4858;font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.55}
.premium-event-grid>.hero-poster{position:relative;display:flex;justify-content:center;align-items:center;min-width:0;isolation:isolate}
.premium-event-grid>.hero-poster:before{content:"";position:absolute;z-index:-1;width:112%;height:92%;border-radius:50%;background:radial-gradient(circle at 30% 32%,rgba(255,196,0,.16),transparent 34%),radial-gradient(circle at 72% 58%,rgba(6,71,201,.18),transparent 46%);filter:blur(24px)}
.premium-event-grid>.hero-poster:after{content:"";position:absolute;z-index:2;inset:-2px;pointer-events:none;box-shadow:inset 0 0 34px 22px #fff}
.premium-event-grid>.hero-poster img{position:relative;z-index:1;display:block;width:min(108%,520px)!important;height:auto!important;max-height:78svh;object-fit:contain;border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 22px 32px rgba(6,71,201,.11));animation:posterPremiumFloat 6.5s ease-in-out infinite}
@keyframes posterPremiumFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.premium-event-grid .btn,.section .btn,.sticky-buy .btn{background:var(--yellow);color:#111827;border-color:#dba900;box-shadow:none;font-weight:900}
.premium-event-grid .btn:hover,.section .btn:hover,.sticky-buy .btn:hover{background:#ffd333;transform:translateY(-1px)}
.scroll-cue{color:#667085}
main .section{background:#fff;color:var(--ink)}
main .section:nth-child(even){background:#f6f8fb}
.section-title,.section-title span{color:var(--navy)}
.lead,.story-text,.quote{color:var(--muted-premium)}
.eyebrow{color:var(--blue)}
.video-section{padding-top:clamp(56px,8vw,96px)}
.campaign-gallery{position:relative;width:min(100%,760px);aspect-ratio:4/5;margin:28px auto 22px;border-radius:18px;background:#eef2f7;overflow:hidden;border:1px solid var(--line);box-shadow:0 18px 48px rgba(16,33,58,.12);touch-action:pan-y}
.campaign-gallery .gallery-slide{position:absolute;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s ease;background:#f8fafc}
.campaign-gallery .gallery-slide.is-active{opacity:1;visibility:visible}
.campaign-gallery .gallery-slide img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-arrow{position:absolute;z-index:4;top:50%;width:44px;height:44px;padding:0;border:1px solid rgba(16,33,58,.16);border-radius:50%;background:rgba(255,255,255,.9);color:var(--navy);font-size:1.45rem;line-height:1;box-shadow:0 8px 24px rgba(16,33,58,.14);transform:translateY(-50%);cursor:pointer}
.gallery-arrow:hover,.gallery-arrow:focus-visible{background:var(--yellow);outline:3px solid rgba(6,71,201,.22)}
.gallery-arrow.prev{left:14px}.gallery-arrow.next{right:14px}
.gallery-dots{position:absolute;z-index:4;left:50%;bottom:14px;display:flex;gap:8px;transform:translateX(-50%);padding:8px 10px;border-radius:99px;background:rgba(16,33,58,.7)}
.gallery-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#fff;opacity:.5;cursor:pointer}
.gallery-dots button.is-active{width:26px;border-radius:99px;background:var(--yellow);opacity:1}
.promo-carousel{width:min(100%,570px)!important;margin:20px 0!important}
.promo-limited{color:var(--navy)}
.promo-track{min-height:300px!important}
.promo-slide{padding:26px!important;border:1px solid var(--line)!important;border-radius:16px!important;background:#fff!important;color:var(--ink)!important;box-shadow:0 14px 34px rgba(16,33,58,.1)!important}
.promo-slide h2{color:var(--navy)!important;font-size:clamp(1.15rem,2vw,1.35rem)!important}
.promo-slide p{color:var(--muted-premium)!important;font-size:.95rem!important;line-height:1.55!important}
.promo-price{color:var(--blue)!important;font-size:clamp(2rem,4vw,2.5rem)!important}
.promo-slide .btn{background:var(--yellow)!important;color:#111827!important;border-color:#dba900!important}
.promo-dots button{background:#bcc5d2!important}.promo-dots button.is-active{background:var(--blue)!important}
.tickets,.ticket-grid,.ticket-card{color:var(--ink)}
.ticket-card{padding:26px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:0 12px 32px rgba(16,33,58,.08)!important}
.ticket-card h3{color:var(--navy);font-size:1.3rem}.ticket-price{color:var(--blue);font-size:clamp(2rem,4vw,2.5rem)}
.info-item{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important;box-shadow:0 8px 24px rgba(16,33,58,.06)!important}
.info-item b{color:var(--navy)}
.pedreiro-story-call{background:linear-gradient(110deg,#fff,#eef4ff)!important}
.social-section{background:var(--navy)!important;color:#fff!important}
.social-section .section-title,.social-section .lead{color:#fff}
.modal{color:#fff}
@media(max-width:820px){.event-hero{min-height:auto}.event-grid.premium-event-grid{display:grid;grid-template-columns:1fr;padding:20px 0 110px;text-align:center}.premium-event-grid .event-copy:before{margin:0 auto 16px}.premium-event-grid>.hero-poster{order:-1}.premium-event-grid>.hero-poster:after{box-shadow:inset 0 0 25px 15px #fff}.premium-event-grid>.hero-poster img{width:min(96vw,470px)!important;max-height:none;animation-duration:7s}.promo-carousel{margin:18px auto!important;text-align:left}.promo-track{min-height:318px!important}.campaign-gallery{width:min(92vw,600px);aspect-ratio:4/5}.gallery-arrow{width:40px;height:40px}.ticket-card{padding:24px!important}}
@media(max-width:520px){.topbar{padding:9px 10px;gap:6px}.topbar .brand{flex:1 1 120px}.topbar .official-logo{max-width:112px}.topbar .access-nav{order:3;width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:6px}.topbar>.btn{min-height:36px;padding-inline:10px;font-size:.7rem}.topbar .access-nav .btn{justify-content:center;min-height:36px;padding-inline:8px;font-size:.7rem}.premium-event-grid>.hero-poster img{width:min(92vw,390px)!important;border-radius:14px}.promo-slide{padding:22px!important}.campaign-gallery{width:100%;border-radius:14px}.gallery-arrow{top:auto;bottom:12px;transform:none}.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}.gallery-dots{bottom:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.campaign-gallery .gallery-slide{transition:none}.promo-slide,.promo-family-art,.premium-event-grid>.hero-poster img{transition:none!important;animation:none!important}}

/* Final premium hero: one integrated composition, no stacked poster cards. */
.event-grid.premium-event-grid{grid-template-columns:minmax(420px,.9fr) minmax(480px,1.1fr);gap:clamp(18px,3vw,48px);padding-block:clamp(30px,4vw,58px)}
.premium-event-grid .event-title-logo{display:block!important;width:min(100%,500px)!important;height:auto!important;margin:12px 0 4px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:drop-shadow(0 12px 24px rgba(6,71,201,.12))}
.premium-event-grid>.hero-poster{min-height:clamp(520px,72svh,760px);align-self:end;overflow:visible}
.premium-event-grid>.hero-poster:before{width:104%;height:82%;background:radial-gradient(circle at 50% 52%,rgba(6,71,201,.16),transparent 55%),radial-gradient(circle at 48% 68%,rgba(255,196,0,.12),transparent 46%);filter:blur(28px)}
.premium-event-grid>.hero-poster:after{display:none}
.premium-event-grid>.hero-poster img{width:min(116%,720px)!important;max-width:none!important;max-height:82svh!important;object-fit:contain!important;object-position:center bottom;filter:drop-shadow(0 24px 30px rgba(16,33,58,.14)) drop-shadow(0 0 22px rgba(6,71,201,.08));animation:posterPremiumFloat 7s ease-in-out infinite}
.premium-event-grid .tagline{margin-top:2px}
.premium-event-grid .promo-carousel{width:min(100%,520px)!important;margin:14px 0 12px!important}
.premium-event-grid .promo-limited{margin-bottom:7px}
.premium-event-grid .promo-limited strong{font-size:1rem!important;letter-spacing:.015em}
.premium-event-grid .promo-track{min-height:248px!important}
.premium-event-grid .promo-slide{padding:20px!important;border-radius:16px!important;box-shadow:0 12px 30px rgba(16,33,58,.09)!important}
.premium-event-grid .promo-slide h2{margin:9px 0 2px!important}
.premium-event-grid .promo-slide p{min-height:0!important;margin:4px 0 12px!important;overflow-wrap:anywhere}
.premium-event-grid .promo-price{font-size:2.15rem!important}
.premium-event-grid .promo-family-art{width:34%;max-height:82%;right:12px;bottom:12px;border-radius:12px;animation-duration:3.8s;filter:drop-shadow(0 8px 14px rgba(16,33,58,.16))}
.premium-event-grid .promo-slide:has(.promo-family-art){padding-right:39%!important}

@media(max-width:980px) and (min-width:821px){
  .event-grid.premium-event-grid{grid-template-columns:minmax(360px,.9fr) minmax(390px,1fr)}
  .premium-event-grid>.hero-poster img{width:min(112%,620px)!important}
}

@media(max-width:820px){
  body{padding-bottom:92px}
  .topbar{height:auto;min-height:68px}
  .event-grid.premium-event-grid{grid-template-columns:1fr;padding:24px 0 72px;gap:12px;text-align:center}
  .premium-event-grid>.hero-poster{order:1!important;min-height:0;width:100%;margin:0 auto;overflow:visible}
  .premium-event-grid .event-copy{order:2}
  .premium-event-grid>.hero-poster img{width:min(104vw,650px)!important;max-height:none!important;margin:0 auto}
  .premium-event-grid .event-title-logo{width:min(92vw,500px)!important;margin:8px auto 4px!important}
  .premium-event-grid .tagline{margin-inline:auto}
  .premium-event-grid .promo-carousel{width:min(100%,540px)!important;margin:16px auto 10px!important;text-align:left}
  .premium-event-grid .promo-track{min-height:252px!important}
  .premium-event-grid .lead{margin:12px auto}
  .premium-event-grid .event-copy>.btn{width:min(100%,420px)}
  .gallery-arrow{top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
  .gallery-dots{bottom:12px!important}
}

@media(max-width:520px){
  .topbar{padding-block:8px 10px}
  .topbar .access-nav{margin-top:2px}
  .event-grid.premium-event-grid{padding-top:18px;gap:8px}
  .premium-event-grid .event-copy:before{width:68px;height:6px;margin-bottom:12px}
  .premium-event-grid .event-title-logo{width:min(94vw,430px)!important}
  .premium-event-grid .promo-track{min-height:270px!important}
  .premium-event-grid .promo-slide{padding:18px!important}
  .premium-event-grid .promo-slide:has(.promo-family-art){padding-right:18px!important}
  .premium-event-grid .promo-family-art{top:12px;right:12px;bottom:auto;width:76px;height:76px;max-height:none;border-radius:50%;object-fit:cover;opacity:.96}
  .premium-event-grid .promo-slide:has(.promo-family-art) h2,.premium-event-grid .promo-slide:has(.promo-family-art) .promo-price,.premium-event-grid .promo-slide:has(.promo-family-art) p{max-width:calc(100% - 86px)}
  .premium-event-grid>.hero-poster img{width:min(112vw,560px)!important}
  .sticky-buy{bottom:8px;left:8px;right:8px;gap:8px;padding-left:13px}
  .sticky-buy b{font-size:1rem}.sticky-buy .btn{flex:0 0 auto}
}

@media(prefers-reduced-motion:reduce){.premium-event-grid>.hero-poster img,.premium-event-grid .promo-family-art{animation:none!important}}

/* Official poster hierarchy: date above, people centered, blue title below. */
.premium-event-grid .event-title-logo{display:none!important}
.premium-event-grid>.hero-poster{position:relative;display:flex;align-items:center;justify-content:center;min-height:780px}
.premium-event-grid>.hero-poster .hero-people-composition{position:relative!important;z-index:2;width:min(116%,720px)!important;max-width:none!important;max-height:76svh!important;margin-top:34px;object-fit:contain!important;animation:posterPremiumFloat 7s ease-in-out infinite!important}
.premium-event-grid>.hero-poster .hero-date-lockup{position:absolute!important;z-index:4;top:0;left:50%;width:min(58%,390px)!important;height:auto!important;max-height:none!important;object-fit:contain;transform:translateX(-50%);filter:drop-shadow(0 8px 18px rgba(255,196,0,.16));animation:none!important}
.premium-event-grid>.hero-poster .hero-show-tagline{position:absolute;z-index:6;left:50%;bottom:214px;width:max-content;max-width:92%;margin:0;transform:translateX(-50%);color:#111;font:900 clamp(.82rem,1.3vw,1.05rem)/1.1 var(--display);letter-spacing:.24em;text-align:center;white-space:nowrap;text-transform:uppercase;text-shadow:0 2px 12px rgba(255,255,255,.9)}
.premium-event-grid>.hero-poster .hero-title-lockup{position:absolute!important;z-index:5;left:50%;bottom:-4px;width:min(94%,660px)!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain;transform:translateX(-50%);filter:drop-shadow(0 14px 22px rgba(6,71,201,.18));animation:none!important}

@media(max-width:820px){
  .premium-event-grid>.hero-poster{min-height:650px;margin-top:8px}
  .premium-event-grid>.hero-poster .hero-date-lockup{top:0;width:min(58vw,320px)!important}
  .premium-event-grid>.hero-poster .hero-people-composition{width:min(112vw,610px)!important;max-height:none!important;margin-top:22px}
  .premium-event-grid>.hero-poster .hero-show-tagline{bottom:174px;font-size:clamp(.72rem,2.4vw,.92rem);letter-spacing:.2em}
  .premium-event-grid>.hero-poster .hero-title-lockup{bottom:0;width:min(94vw,520px)!important}
}

@media(max-width:520px){
  .premium-event-grid>.hero-poster{min-height:540px;margin-top:4px}
  .premium-event-grid>.hero-poster .hero-date-lockup{width:min(64vw,250px)!important}
  .premium-event-grid>.hero-poster .hero-people-composition{width:min(118vw,520px)!important;margin-top:18px}
  .premium-event-grid>.hero-poster .hero-show-tagline{bottom:132px;max-width:94%;font-size:clamp(.62rem,2.65vw,.78rem);letter-spacing:.14em;white-space:normal}
  .premium-event-grid>.hero-poster .hero-title-lockup{bottom:4px;width:min(96vw,390px)!important}
}

@media(prefers-reduced-motion:reduce){.premium-event-grid>.hero-poster .hero-people-composition{animation:none!important}}

/* Compact access menu: keeps Ingressos, Gestora and Cliente organized behind one control. */
.topbar>.btn{display:none!important}.topbar .access-menu-toggle{display:grid!important;place-items:center;width:46px;height:42px;margin-left:auto;padding:0;border:1px solid #cbd3df;border-radius:12px;background:#fff;color:var(--navy);font:900 1.15rem/1 var(--body);letter-spacing:.12em;cursor:pointer;box-shadow:0 8px 22px rgba(16,33,58,.09)}
.topbar .access-menu-toggle:hover,.topbar .access-menu-toggle:focus-visible{border-color:var(--blue);color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(6,71,201,.12)}
.topbar .access-nav{position:absolute;z-index:40;top:calc(100% + 8px);right:0;display:none!important;width:min(260px,calc(100vw - 28px));padding:10px;border:1px solid rgba(16,33,58,.12);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 18px 48px rgba(16,33,58,.18);backdrop-filter:blur(16px)}
.topbar.access-menu-open .access-nav{display:grid!important;grid-template-columns:1fr;gap:7px}
.topbar .access-nav .btn{display:flex!important;width:100%;min-height:42px;justify-content:flex-start;padding:0 15px;color:var(--navy);border-color:#d8dee8;background:#fff;font-size:.78rem;box-shadow:none}
@media(max-width:520px){.topbar{flex-wrap:nowrap}.topbar .access-menu-toggle{flex:0 0 42px;width:42px;height:38px}.topbar .access-nav{top:calc(100% + 6px);right:0;width:min(250px,calc(100vw - 20px));margin:0}.topbar.access-menu-open .access-nav{display:grid!important}.topbar .access-nav .btn{min-height:42px;font-size:.76rem}}
