:root{
  color-scheme:light;--ink:#102741;--navy:#0b1b30;--blue:#143a57;
  --ice:#eef5f8;--muted:#4a6275;--mint:#a9e3ea;--line:#d2e1e9;
  --white:#f8fcfd;--wrap:1120px;
  font-family:"Avenir Next",Avenir,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-synthesis:none;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink)}
p,h1,h2,ul,dl,dd{margin:0}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
a:focus-visible{outline:3px solid #41a6bc;outline-offset:5px}
.wrap{width:min(var(--wrap),calc(100% - 80px));margin-inline:auto}
.symbols{position:absolute;width:0;height:0;overflow:hidden}
.icon{width:1.2em;height:1.2em;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.skip{position:fixed;inset:1rem auto auto 1rem;z-index:3;transform:translateY(-200%);padding:.8rem 1rem;background:white;color:var(--ink)}
.skip:focus{transform:translateY(0)}
.opening{background:radial-gradient(ellipse 65% 35% at 92% 9%,#1d5372 0%,transparent 100%),linear-gradient(120deg,#0a1729 15%,#112a43 68%,#0d233a 100%);color:var(--white)}
.site-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:22px 0;border-bottom:1px solid #ffffff29}
.brand-name{display:inline-flex;align-items:center;min-height:44px;font-size:1.02rem;font-weight:650;text-decoration:none}
.brand-name:hover{text-decoration:underline;text-underline-offset:4px}
.head-link{display:inline-flex;align-items:center;gap:11px;font-size:.82rem;font-weight:650;text-decoration:none;min-height:44px;white-space:nowrap}
.head-link:hover{text-decoration:underline;text-underline-offset:4px}
.hero{min-height:522px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:36px;padding-block:72px 84px}
.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.7rem;font-weight:750;line-height:1.5}
.hero-copy .eyebrow{display:flex;align-items:center;gap:10px;color:#d5eef3}
.status-dot{width:7px;height:7px;border-radius:50%;background:#b2eef2;box-shadow:0 0 18px #7ee1f0}
h1{margin-top:18px;letter-spacing:-.067em;font-size:clamp(3.6rem,6.25vw,6rem);font-weight:750;line-height:1.01}
h1 em{font-style:normal;color:var(--mint)}
.hero-deck{margin:23px 0 29px;max-width:35ch;color:#d8e8f0;font-size:clamp(.98rem,1.7vw,1.15rem);line-height:1.65}
.hero-deck time,.nowrap{white-space:nowrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 19px 14px 22px;min-height:51px;border:1px solid transparent;border-radius:100px;text-decoration:none;font-size:.92rem;font-weight:750;line-height:1.3;transition:background .18s ease, color .18s ease, transform .18s ease}
.button:hover{transform:translateY(-2px)}
.button:active{transform:translateY(0)}
.button-light{background:var(--white);color:var(--ink);box-shadow:0 10px 25px #07182755}
.button-light:hover{background:#d7f3f5}
.button-dark{background:var(--blue);color:white}
.button-dark:hover{background:#205375}
.button-outline{border-color:#badbe377;color:#fff}
.button-outline:hover{background:#e6f7fb;color:var(--ink)}
.offer-art{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:10px;min-height:326px;padding:47px 24px 49px;overflow:hidden;border:1px solid #b1d8ea41;border-radius:15px;background:radial-gradient(ellipse at 72% 44%,#46879f4f,transparent 67%),#112d456b;box-shadow:0 22px 68px #050f226b}
.art-grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#c4e8f31c 1px,transparent 1px),linear-gradient(#c4e8f31c 1px,transparent 1px);background-size:30px 30px;mask-image:radial-gradient(ellipse,black,transparent 79%)}
.art-caption,.art-date{position:absolute;inset:17px 20px auto;display:flex;justify-content:space-between;color:#d0e6ec;font-size:.59rem;font-weight:750;letter-spacing:.16em}
.art-date{inset:auto 20px 16px;justify-content:flex-start;align-items:center;gap:8px}
.art-date span{width:16px;height:1px;background:#a9e3ea}
.art-ticket{position:relative;display:flex;flex-direction:column;justify-content:space-between;flex:0 1 148px;aspect-ratio:148/181;min-width:0;padding:13px 16px;border:1px solid #bdeaf087;border-radius:11px;box-shadow:0 11px 24px #0a1a3160}
.art-ticket-first{background:linear-gradient(150deg,#29536c,#1a3952);transform:rotate(-8deg) translateY(2px)}
.art-ticket-second{color:#102741;background:linear-gradient(155deg,#e1fcf9,#9cd9e3 67%,#71b8cd);transform:rotate(8deg) translateY(1px)}
.ticket-label{font-size:clamp(.5rem,1vw,.65rem);font-weight:800;letter-spacing:.135em;white-space:nowrap}
.ticket-digit{font-size:clamp(2.65rem,5vw,4.9rem);font-weight:800;line-height:.88;letter-spacing:-.085em}
.ticket-rule{height:16px;border-bottom:1px solid #c0e4ed55}
.ticket-free{font-size:.68rem;font-weight:800;letter-spacing:.19em}
.art-plus{font-size:1.35rem;font-weight:650;z-index:1;display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:100%;background:#0d263b;border:1px solid #c7eef374;color:#cff4f4}
.offer-strip{background:#09182a;border-block:1px solid #98c2d12c}
.offer-strip ul{padding:0;display:grid;grid-template-columns:repeat(3,1fr);list-style:none}
.offer-strip li{display:flex;justify-content:center;align-items:center;gap:9px;padding:17px 5px;text-align:center;font-size:.8rem;font-weight:650;color:#e1f1f5}
.offer-strip li+li{border-left:1px solid #ffffff25}
.offer-strip .icon{color:#a9e3ea}
.details{background:var(--ice);color:var(--ink);text-align:center;scroll-margin-top:15px}
.details-inner{padding-block:76px 83px}
.section-kicker{color:#2e5b73;margin-bottom:12px}
h2{font-size:clamp(2rem,4vw,3rem);line-height:1.13;font-weight:750;letter-spacing:-.055em}
.section-deck{max-width:47ch;margin:14px auto 27px;color:var(--muted);line-height:1.6;font-size:1rem}
.facts{display:grid;grid-template-columns:repeat(3,1fr);max-width:650px;margin:0 auto 27px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 20px #24486308;overflow:hidden}
.facts div{padding:16px 9px}
.facts div+div{border-left:1px solid var(--line)}
.facts dt{color:var(--muted);text-transform:uppercase;letter-spacing:.105em;font-size:.61rem;font-weight:750}
.facts dd{margin-top:5px;font-weight:750;font-size:.9rem}
.newsletter{background:radial-gradient(ellipse at -3% 2%,#25597a,transparent 68%),#0b1d31}
.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:57px 62px}
.newsletter-kicker{display:flex;align-items:center;gap:9px;color:var(--mint);margin-bottom:12px}
.newsletter h2{font-size:clamp(1.8rem,3.6vw,2.8rem)}
.newsletter p:last-child{margin-top:8px;color:#d4e7f0;line-height:1.55}
.newsletter .button{flex:none}
.site-footer{color:var(--muted);background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px 28px;padding-block:17px;font-size:.74rem}
.footer-note,.site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:0 16px}
.footer-note span:first-child{color:var(--ink);font-weight:750}
.site-footer nav a{padding-block:8px;text-decoration:none;white-space:nowrap}
.site-footer nav a:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .wrap{width:calc(100% - 56px)}
  .hero{gap:20px;padding-block:65px 73px;min-height:0}
  .offer-art{min-height:270px;padding-inline:18px}
  .art-ticket{padding:11px 12px}
  .art-caption,.art-date{inset-inline:13px}
}
@media(max-width:740px){
  .wrap{width:calc(100% - 36px)}
  .site-head{padding-block:15px}
  .head-link{gap:4px;font-size:.74rem}
  .hero{grid-template-columns:1fr;gap:31px;padding-block:45px 31px}
  h1{font-size:clamp(3.1rem,11vw,4.8rem);margin-top:13px}
  .hero-deck{margin-block:16px 23px}
  .offer-art{min-height:196px;max-width:480px;width:100%;padding:33px 25px 36px}
  .art-ticket{max-width:105px;aspect-ratio:105/113}
  .art-caption,.art-date{font-size:.52rem}
  .art-caption{inset-block-start:11px}.art-date{inset-block-end:11px}
  .art-plus{width:28px;height:28px;font-size:1.1rem}
  .ticket-label{font-size:.54rem}
  .ticket-digit{font-size:2.8rem}
  .ticket-free{font-size:.55rem}
  .offer-strip .wrap{width:100%}
  .offer-strip li{gap:5px;padding-block:12px;font-size:.68rem}
  .details-inner{padding-block:54px 58px}
  .facts div{padding:13px 4px}
  .facts dt{font-size:.54rem}
  .facts dd{font-size:.71rem}
  .newsletter-inner{align-items:flex-start;flex-direction:column;gap:20px;padding-block:40px 44px}
  .footer-inner{align-items:flex-start;flex-direction:column;padding-block:20px 13px;gap:3px}
}
@media(max-width:340px){
  .wrap{width:calc(100% - 28px)}
  .offer-strip li{font-size:.61rem}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
