@import"https://fonts.googleapis.com/css2?family=Anton&family=Nunito+Sans:opsz,wght@6..12,400;6..12,700;6..12,900;6..12,1000&family=Sora:wght@300;400;500;600;700&family=Manrope:wght@300;400;500;600;700&display=swap";:root{--slate-950: #0f172a;--slate-900: #111827;--slate-800: #1e293b;--slate-700: #334155;--slate-600: #475569;--slate-500: #64748b;--slate-200: #e2e8f0;--white: #ffffff;--off-white: #f7f7f7;--accent: #334155;--accent-strong: #1e293b;font-family:Nunito Sans,Manrope,system-ui,sans-serif;color:var(--white);background-color:var(--slate-800);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;scroll-padding-top:0}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:var(--off-white);overflow-x:hidden;overscroll-behavior-y:contain}a{color:inherit;text-decoration:none}button{font-family:inherit}#root{min-height:100vh}.logo{display:flex;align-items:center;gap:12px}.logo-mark{width:44px;height:44px;border-radius:50%;object-fit:cover}.logo-text{display:flex;flex-direction:column}.logo-title{font-family:Sora,sans-serif;font-weight:600;letter-spacing:.18em;font-size:.95rem}.logo-sub{color:var(--slate-500);font-size:12px}.button{border:none;border-radius:12px;padding:12px 18px;background:#3e457a;color:var(--white);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.button:hover{transform:translateY(-1px);box-shadow:0 8px 24px #0ea5e94d}.button.ghost{background:#0f172a99;color:var(--white);border:1px solid rgba(71,85,105,.6);box-shadow:none}.button.outline{background:transparent;color:var(--slate-600);border:1px solid rgba(71,85,105,.7);padding:8px 20px;box-shadow:none}.link{background:transparent;border:none;color:var(--slate-600);cursor:pointer;font-size:.9rem}.link:hover{color:var(--slate-500)}.link:disabled{cursor:not-allowed;opacity:.45;pointer-events:none}.form{display:flex;flex-direction:column;gap:20px}.form-head h2{font-family:Sora,sans-serif;font-size:1.6rem;margin-bottom:6px;color:var(--slate-700)}.form-head p{color:var(--slate-600)}.form-body{display:flex;flex-direction:column;gap:16px}.input{display:flex;flex-direction:column;gap:8px}.input-label{color:var(--slate-600);font-size:.9rem}.input-field{padding:12px 14px;border-radius:12px;border:1px solid rgba(71,85,105,.25);background:#fff;color:var(--slate-700);font-size:.95rem}.input-field::placeholder{color:#64748bb3}.input-field:focus{outline:none;border-color:var(--slate-700);box-shadow:0 0 0 3px #33415526}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.form-error{color:#f87171e6;font-size:.9rem}.pacman-loader{display:inline-flex;align-items:center;justify-content:center;line-height:0}.pacman-loader--block{width:100%;padding:16px 0;display:flex;justify-content:center}.pacman-loader img{display:block}.form-footer{display:flex;align-items:center;gap:8px;color:var(--slate-600);font-size:.9rem}.form-footer .button{margin-left:auto}.home.viva-landing{min-height:100vh;color:#142c52;background:#f6f1e7;overflow-x:hidden;scroll-behavior:smooth}.viva-hero,.viva-actions-section,.viva-about,.viva-program,.viva-tickets{scroll-margin-top:0}.viva-hero{min-height:100vh;display:grid;place-items:center;position:relative;isolation:isolate;overflow:hidden;padding:48px 24px;background:radial-gradient(circle at 50% 38%,rgba(20,44,82,.14),transparent 24rem),linear-gradient(180deg,#0d2447,#16335f)}.viva-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,#09162e2e,#09162e75),radial-gradient(circle at 50% 45%,rgba(9,22,46,.1),transparent 30rem)}.viva-hero-video{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.55);transform-origin:center}.viva-hero-brand{position:relative;z-index:1;display:grid;justify-items:center;gap:clamp(6px,1.2vw,10px);width:min(84vw,880px);color:#f6f1e7;text-align:center;transform:translateY(-9vh);filter:drop-shadow(0 24px 48px rgba(9,22,46,.5))}.viva-hero-logo{width:min(84vw,880px);min-width:320px;margin-bottom:clamp(-150px,-8vw,-42px);object-fit:contain}.viva-hero-rule{width:min(48vw,420px);height:.5px;margin-top:clamp(-8px,-.8vw,-4px);background:currentColor;border-radius:999px}.viva-hero-brand p{max-width:720px;margin:0;font-size:clamp(1.05rem,1.7vw,1.28rem);font-weight:400;line-height:1.75;text-wrap:balance}.viva-hero-date{margin-top:6px!important;font-weight:800!important;letter-spacing:.04em;text-transform:uppercase;font-size:.9rem!important;opacity:.86}.viva-scroll-cue{position:absolute;z-index:1;left:50%;bottom:clamp(24px,5vh,54px);width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(246,241,231,.68);border-radius:50%;background:#09162e57;color:#f6f1e7;box-shadow:0 14px 34px #09162e4d;transform:translate(-50%);opacity:1;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .35s ease,background .35s ease;animation:vivaCueFloat 2.4s ease-in-out infinite;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.viva-scroll-cue:hover,.viva-scroll-cue:focus-visible{border-color:#f6f1e7f2;background:#09162e7a;transform:translate(-50%) translateY(4px)}.viva-scroll-cue span{width:16px;height:16px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg)}@keyframes vivaCueFloat{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(7px)}}.viva-actions-section{min-height:78vh;display:grid;align-content:center;justify-items:center;padding:clamp(72px,12vw,142px) clamp(22px,6vw,72px);text-align:center;background:#f6f1e7}.viva-actions-section h1,.viva-about h2,.viva-program h2,.viva-tickets h2{font-family:Anton,Arial Narrow,sans-serif;font-weight:400;letter-spacing:.015em;text-transform:uppercase;line-height:.94}.viva-actions-section h1{margin:0 0 20px;font-size:clamp(4rem,14vw,10rem);color:#16335f}.viva-actions-section>p:not(.viva-kicker){max-width:720px;margin:0;font-size:clamp(1.05rem,1.7vw,1.28rem);line-height:1.75;opacity:.78}.viva-kicker{margin-bottom:16px;color:currentColor;font-size:.78rem;font-weight:950;letter-spacing:.28em;text-transform:uppercase;opacity:.72}.viva-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px}.viva-primary,.viva-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;border-radius:999px;padding:0 26px;font-weight:950;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.viva-primary{background:#16335f;color:#f6f1e7;box-shadow:0 16px 36px #09162e33}.viva-secondary{border:1px solid rgba(22,51,95,.32);color:#16335f}.viva-primary:hover,.viva-secondary:hover{transform:translateY(-2px)}.viva-about{display:grid;grid-template-columns:minmax(260px,.74fr) minmax(0,1fr);gap:clamp(32px,7vw,96px);align-items:center;max-width:1180px;margin:0 auto;padding:clamp(72px,10vw,132px) clamp(20px,5vw,36px);background:#f6f1e7}.viva-media-card{aspect-ratio:1;display:grid;place-items:center;overflow:hidden;border-radius:38px;background:#ece3d1;box-shadow:inset 0 0 0 1px #16335f24}.viva-media-card img{width:100%;height:100%;object-fit:cover}.viva-about h2,.viva-program h2{margin-bottom:22px;color:#142c52;font-size:clamp(2.6rem,6vw,5.4rem)}.viva-about-copy>p:not(.viva-kicker){max-width:680px;font-size:clamp(1.05rem,1.6vw,1.28rem);line-height:1.75;opacity:.82}.viva-about .viva-kicker,.viva-program .viva-kicker,.viva-tickets .viva-kicker{color:#16335f}.viva-feature-grid{display:flex;align-items:stretch;flex-wrap:wrap;gap:14px;margin-top:28px}.viva-feature-grid span{flex:1 1 220px;border:1px solid rgba(22,51,95,.18);border-radius:18px;background:#16335f0f;padding:18px;font-weight:950}.viva-program{padding:clamp(72px,10vw,124px) clamp(20px,5vw,72px);background:#eee6d6}.viva-section-head{max-width:760px;margin:0 auto 48px;text-align:center}.viva-program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1240px;margin:0 auto}.viva-program-card{min-height:286px;border:1px solid rgba(22,51,95,.14);border-radius:28px;background:#f9f5ea;padding:28px;transition:transform .2s ease,border-color .2s ease}.viva-program-card:hover{border-color:#16335f5c;transform:translateY(-4px)}.viva-program-card h3{margin-bottom:14px;font-family:Anton,Arial Narrow,sans-serif;font-size:2rem;font-weight:400;letter-spacing:.02em;text-transform:uppercase}.viva-program-card p{line-height:1.7;opacity:.72}.viva-schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1240px;margin:56px auto 0}.viva-schedule-day{border:1px solid rgba(22,51,95,.14);border-radius:28px;background:#f9f5ea;padding:clamp(20px,3vw,32px)}.viva-schedule-day-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(22,51,95,.16)}.viva-schedule-day-head h3{font-family:Anton,Arial Narrow,sans-serif;font-weight:400;font-size:1.8rem;letter-spacing:.02em;text-transform:uppercase;color:#16335f}.viva-schedule-day-head span{font-size:.82rem;font-weight:800;letter-spacing:.04em;opacity:.62}.viva-schedule-day-location{margin:-8px 0 18px;font-size:.85rem;font-weight:600;color:#16335f;opacity:.75}.viva-schedule-day-location a{color:inherit;text-decoration:underline;text-underline-offset:2px}.viva-schedule-list{display:flex;flex-direction:column;list-style:none}.viva-schedule-item{display:grid;grid-template-columns:68px 1fr;gap:16px;padding:12px 0;border-bottom:1px dashed rgba(22,51,95,.14)}.viva-schedule-item:last-child{border-bottom:none}.viva-schedule-time{display:flex;flex-direction:column;font-weight:950;font-size:.98rem;color:#16335f;line-height:1.3}.viva-schedule-time em{font-style:normal;font-size:.72rem;font-weight:700;opacity:.5}.viva-schedule-body{display:flex;flex-direction:column;gap:2px}.viva-schedule-type{font-size:.68rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:#16335f;opacity:.68}.viva-schedule-desc{font-weight:700;line-height:1.4}.viva-tickets{padding:clamp(72px,10vw,124px) clamp(20px,5vw,72px);background:#f6f1e7}.viva-tickets-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.5fr);gap:clamp(28px,6vw,72px);align-items:center;max-width:1080px;margin:0 auto;border:1px solid rgba(22,51,95,.16);border-radius:38px;background:#16335f;color:#f6f1e7;padding:clamp(32px,6vw,64px)}.viva-tickets-copy h2{margin-bottom:18px;font-size:clamp(2rem,4vw,3.2rem)}.viva-tickets-copy>p:not(.viva-kicker){max-width:480px;margin-bottom:26px;line-height:1.7;opacity:.86}.viva-tickets .viva-kicker{color:#f6f1e7;opacity:.7}.viva-tickets .viva-primary{background:#f6f1e7;color:#16335f}.viva-tickets-link{display:block;margin-top:16px;font-weight:800;font-size:.9rem;text-decoration:underline;text-underline-offset:3px;opacity:.82;word-break:break-word}.viva-tickets-qr{display:grid;justify-items:center;gap:12px;padding:20px;border-radius:24px;background:#f6f1e7}.viva-tickets-qr img{width:100%;max-width:220px;border-radius:12px}.viva-tickets-qr span{color:#16335f;font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;text-align:center}.viva-footer{display:grid;justify-items:center;gap:12px;border-top:1px solid rgba(22,51,95,.14);padding:34px 20px;text-align:center;color:#16335fad;font-weight:800;background:#f6f1e7}.viva-footer-logo{width:40px;height:40px;border-radius:50%;object-fit:cover}@media (max-width: 900px) and (orientation: portrait){.viva-hero-video{transform:translate(9vw,19vh) scale(3.26);transform-origin:center 59%}}@media (max-width: 900px){.viva-about,.viva-program-grid,.viva-schedule,.viva-tickets-card{grid-template-columns:1fr}.viva-media-card{max-width:420px;width:100%;margin:0 auto}.viva-tickets-qr{order:-1;max-width:260px;margin:0 auto}}@media (max-width: 1180px) and (min-width: 901px){.viva-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.viva-hero-brand{width:92vw;transform:translateY(-7vh)}.viva-hero-logo{width:min(92vw,500px);min-width:0;margin-bottom:clamp(-46px,-12vw,-28px)}.viva-hero-rule{width:min(58vw,240px)}.viva-hero-brand p{max-width:330px;font-size:.95rem}.viva-actions{width:100%}.viva-primary,.viva-secondary{width:100%;max-width:280px}.viva-schedule-item{grid-template-columns:56px 1fr}}
