/* Assets and Brazilian registration options supplied by the event organizer. */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.82;pointer-events:none}
.hero-video-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,4,.94) 0%,rgba(7,9,5,.82) 42%,rgba(7,9,5,.52) 100%),linear-gradient(0deg,rgba(6,8,4,.7),transparent 35%);pointer-events:none}
.hero h1{font-size:clamp(39px,4.25vw,68px);white-space:normal;max-width:760px}
.header-brand img,.footer-brand img{flex:none;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}
.header-brand img{width:48px;height:48px}
.footer-brand img{width:56px;height:56px}
.logo-halo{inset:20%;overflow:visible;background:radial-gradient(circle,rgba(43,49,30,.72),rgba(13,14,11,.14) 67%,transparent 75%);box-shadow:none}
.logo-halo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 35px rgba(0,0,0,.5))}
.instructor-photo img{height:auto;object-fit:contain;transition:none}
.instructor-photo:hover img{transform:none}
.ticket-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;width:min(100%,900px);margin:45px auto 34px;text-align:left}
.ticket-card{display:flex;flex-direction:column;align-items:flex-start;min-height:285px;padding:34px;border:1px solid rgba(194,188,144,.42);border-radius:15px;background:linear-gradient(145deg,rgba(54,65,37,.68),rgba(22,26,17,.9));box-shadow:0 18px 55px rgba(0,0,0,.14);transition:transform .25s,border-color .25s,box-shadow .25s}
.ticket-card:hover{transform:translateY(-5px);border-color:#b7ad78;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.ticket-kicker{color:#c7c398;font-size:10px;font-weight:800;letter-spacing:.19em}
.ticket-card h3{font-size:clamp(26px,3vw,39px);letter-spacing:-.06em;line-height:1.1;margin:19px 0 10px}
.ticket-card p{color:#c0c0ae;font-size:13px;line-height:1.6;margin:0 0 26px}
.ticket-card .button{margin-top:auto;background:#dfd2b8;border-color:#dfd2b8;color:#171a12}
.ticket-card .button:hover{background:#efe5d0}
.ticket-card .button b{background:#303c25;color:#f4f0e6}
.venue-showcase{margin-top:110px}
.venue-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:28px}
.venue-heading .eyebrow{max-width:170px;line-height:1.7}
.venue-heading h3{font-size:clamp(36px,4.8vw,68px);letter-spacing:-.07em;line-height:1.08;margin:0;max-width:810px}
.venue-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.venue-photo{position:relative;margin:0;overflow:hidden;aspect-ratio:16/10;background:#25291f;border:1px solid rgba(222,213,173,.25)}
.venue-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.venue-photo:hover img{transform:scale(1.035)}
.venue-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.64));pointer-events:none}
.venue-photo figcaption{position:absolute;left:25px;bottom:23px;z-index:1;color:#fff;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.venue-description{display:grid;grid-template-columns:27% 1fr;column-gap:45px;row-gap:20px;border-top:1px solid var(--line);margin-top:35px;padding-top:34px}
.venue-intro{color:#c7c398;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin:4px 0 0!important}
.venue-description>p:nth-child(2){max-width:870px;color:#d4d0c1;font-size:clamp(18px,2vw,25px);line-height:1.6;margin:0}
.venue-photo-note{grid-column:2;color:#a8aa9b!important;font-size:11px!important;line-height:1.7!important;margin:0!important}
.venue-photo-note a{text-decoration:underline;text-underline-offset:3px}
.venue-photo-note a:hover{color:#e4d4ad}
@media(max-width:720px){.header-brand img{width:38px;height:38px}.header-brand{gap:6px;font-size:19px}.header-brand span{padding-left:6px}.ticket-grid{grid-template-columns:1fr;margin-top:35px}.ticket-card{min-height:245px;padding:26px}.logo-halo{inset:18%}}
@media(max-width:720px){.venue-showcase{margin-top:75px}.venue-heading{display:block}.venue-heading h3{margin-top:15px}.venue-gallery{grid-template-columns:1fr;gap:14px}.venue-photo{aspect-ratio:16/10}.venue-description{grid-template-columns:1fr;gap:14px}.venue-photo-note{grid-column:1}}
@media(max-width:720px){.hero-video-shade{background:linear-gradient(180deg,rgba(5,7,4,.87),rgba(5,7,4,.76) 54%,rgba(5,7,4,.88))}.hero h1{font-size:clamp(37px,9vw,55px)}}
@media(max-width:420px){.hero h1{font-size:clamp(30px,8vw,34px)}.hero-meta{flex-wrap:wrap;justify-content:flex-start;column-gap:24px}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}}
