@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&display=swap');
/* One Anime-Fest editorial system; data, routes, form contracts and timing are unchanged. */
:root{--af-display:'Barlow Condensed','Arial Narrow',sans-serif;--af-paper:#f3eee9;--af-pink:#dfa7c0;--af-violet:#b4a3d8;--af-rule:#41495f;--text:var(--af-paper);--yellow:var(--af-pink)}
body{background:var(--bg)}
h1,h2,h3,.wordmark{font-family:var(--af-display);text-transform:uppercase;letter-spacing:.005em;font-weight:700}
h2{font-size:clamp(40px,4.5vw,62px);line-height:1.02}
.eyebrow{font-size:11px;letter-spacing:.17em;color:var(--af-violet)}
.button{border-radius:3px;font-size:12px;letter-spacing:.015em;min-height:48px}
.button:not(.button-unavailable):hover{transform:translateY(-2px);border-color:#d1c3de}
/* Keep the sticky header independent of artwork repainting beneath it. */
.oc-navigation{border-bottom:1px solid #62607880;background:#151719;backdrop-filter:none;-webkit-backdrop-filter:none}
.oc-navigation .oc-nav-brand>span{color:var(--af-pink);font-family:var(--af-display);font-size:29px;letter-spacing:.015em;text-transform:uppercase;font-weight:700}
.oc-navigation .oc-nav-brand small{font-family:var(--font);font-size:11px;text-transform:none;letter-spacing:.04em}
.oc-navigation .oc-nav-brand img.anime-nav-art{border-radius:2px 13px 2px 2px;border-color:#a99dba}
.oc-navigation .oc-nav-tickets{border-radius:3px}
/* A poster composition, paired with an information-led event column. */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,.96fr);gap:65px;align-items:center;padding-top:42px;padding-bottom:58px;min-height:0}
.hero-copy{padding-bottom:0;min-width:0}.hero .eyebrow{margin-bottom:20px}
.hero h1{font-family:var(--af-display);font-size:clamp(76px,7.5vw,108px);letter-spacing:-.018em;line-height:.88;font-weight:800;margin-bottom:24px;text-transform:uppercase}
.hero h1>span{font-size:.8em;font-weight:700;color:var(--af-paper);letter-spacing:.005em;margin-bottom:5px}
.hero h1 em{font-family:var(--af-display);font-weight:800;color:var(--af-pink);line-height:.94;letter-spacing:-.018em}
.title-period{display:none}.hero-subtitle{font-size:16px;margin-bottom:22px}.hero-details{margin-bottom:22px}.hero-details p{font-size:13px;line-height:1.6}
.hero-actions{display:grid;grid-template-columns:1fr 1.25fr .9fr;gap:9px;max-width:610px}
.hero-actions .button{min-height:54px;width:100%;padding:11px 10px;font-size:11px;gap:10px;border-radius:3px}
.hero-actions .button:nth-child(2){background:#b2a4d0;color:#242038;border-color:#b2a4d0}
.hero-actions .button-unavailable:nth-child(2){background:#968da9;color:#202031;border-color:#968da9}
.hero-actions .button:nth-child(3){background:transparent;border-color:#697188;color:#eeeaf5}
.hero-copy>.countdown{display:grid;grid-template-columns:95px 1fr;align-items:center;gap:20px;margin:25px 0 0;padding:18px 0 14px;max-width:610px;background:transparent;border:0;border-top:1px solid #626379;border-bottom:1px solid #40495f;border-radius:0;box-shadow:none;backdrop-filter:none}
.hero-copy>.countdown .countdown-heading{display:flex;flex-wrap:wrap;align-content:center;font-size:10px;line-height:1.5;gap:6px;letter-spacing:.1em}
.hero-copy>.countdown .countdown-heading>span[data-countdown-label]{max-width:70px}
.hero-copy>.countdown .countdown-zone{flex-basis:100%;margin:0 0 0 13px;font-size:10px;color:#b9aed1}
.hero-copy>.countdown .countdown-numbers{margin:0;gap:14px}
.hero-copy>.countdown .countdown-numbers strong{font-family:var(--af-display);font-size:43px;font-weight:700;letter-spacing:0}
.hero-copy>.countdown .countdown-numbers span{font-size:9px;letter-spacing:.09em}
.hero-copy>.countdown .countdown-numbers>div:not(:last-child):after{font-size:27px;right:-10px;top:3px}
.hero-visual{padding:0 10px 10px 0;position:relative}
.hero-visual:after{content:'';position:absolute;inset:12px 0 0 12px;border:1px solid #a698bc;z-index:-1}
.hero-photo-frame{position:relative}.hero-art{aspect-ratio:1.02;min-height:460px;border-radius:3px 42px 3px 3px;border:1px solid #9592ab;border-bottom:7px solid var(--af-pink);box-shadow:none;background:#202426}
.hero-art:after{background:linear-gradient(180deg,#11192acc,transparent 28%,transparent)}
.hero-image{filter:saturate(.4);object-position:center 22%}
.anime-poster-title{position:absolute;left:27px;top:22px;z-index:2;color:var(--af-paper);font-family:var(--af-display);text-transform:uppercase;line-height:.95;text-shadow:0 2px 20px #111925}
.anime-poster-title>span{display:block;font-size:24px;letter-spacing:.12em;font-weight:500}
.anime-poster-title>strong{display:block;font-size:49px;letter-spacing:.01em;margin-top:4px;font-weight:700}
.anime-hero-artwork{inset:29% 0 0;z-index:1;border:0;border-radius:0;box-shadow:none;background:#26304a}
.anime-hero-artwork img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.art-caption{inset:auto 18px 17px;z-index:3;font-size:9px;letter-spacing:.15em;text-shadow:0 2px 6px #111}
.art-caption>span{background:#10182be8;padding:8px 10px}.art-caption svg{display:none}
.quick-info{border-color:#454d64;padding-block:22px}.quick-info strong{font-size:12px}
/* Compact magazine-style introduction: open narrative and a framed index. */
.show-page #experience{padding-block:78px}
.show-page .intro-composition{padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.show-page .intro-composition.has-interests{grid-template-columns:1.1fr .9fr;gap:66px;align-items:center}
.show-page .intro-narrative h2{font-family:var(--af-display);font-size:clamp(38px,4vw,54px);letter-spacing:0;line-height:1.02;max-width:600px}
.show-page .intro-narrative .intro-body{font-size:15px;line-height:1.85;max-width:62ch}
.show-page .intro-community-row{margin-top:23px;padding-top:20px;border-color:#53566d}
.show-page .intro-community{font-size:14px}.show-page .intro-mailing-cta{font-size:12px;border-radius:3px;padding:11px 15px}
.show-page .intro-interests.interests-panel{border:1px solid #535970;border-left:4px solid var(--af-violet);padding:29px;background:linear-gradient(145deg,#24272b,#181b1d);border-radius:2px 23px 2px 2px}
.show-page .intro-interests h3{font-family:var(--af-display);font-size:28px;line-height:1.15;letter-spacing:.01em;margin-bottom:15px}
.show-page .intro-interests>p{font-size:12px;line-height:1.8;margin-bottom:18px}
.show-page .intro-interests ul{grid-template-columns:1fr 1fr;gap:0 18px}.show-page .intro-interests li{font-size:13px;line-height:1.55;padding:10px 0;border-color:#414b64}
.show-page .intro-interests li:before{width:4px;height:9px;border-radius:0;background:var(--af-pink)}
/* Five recognisable activities: one lead story and four coordinated side stories. */
#attractions{border-block:1px solid #343d54;background:#101213;padding-top:72px;padding-bottom:78px}
.attraction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;counter-reset:activity}
.show-page .attraction-card{display:grid;grid-template-columns:36% 1fr;min-height:224px;border:1px solid #53576e;border-radius:3px;background:#1b1e21;counter-increment:activity;box-shadow:none;position:relative}
.show-page .attraction-card:hover{transform:translateY(-3px);border-color:#a694be}
.show-page .attraction-card:first-child{grid-row:span 2;display:flex;flex-direction:column;border-radius:3px 28px 3px 3px}
.show-page .attraction-card .attraction-image{height:100%;min-height:220px;aspect-ratio:auto;border:0;background:#28324d}
.show-page .attraction-card .attraction-image img{width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center 18%;filter:saturate(.65)}
.show-page .attraction-card:first-child .attraction-image{height:300px;min-height:300px;flex:1}
.show-page .attraction-card:first-child .attraction-image img{object-position:center 12%}
.show-page .attraction-card .attraction-copy{padding:27px 25px;border:0;position:relative;display:flex;flex-direction:column;justify-content:center}
.show-page .attraction-copy:before{content:'0' counter(activity);font-family:var(--af-display);font-size:14px;letter-spacing:.12em;color:#b9a8cf;margin-bottom:12px}
.show-page .attraction-copy .card-icon{display:none}
.show-page .attraction-copy h3{font-family:var(--af-display);font-size:30px;line-height:1.05;letter-spacing:.005em;margin-bottom:13px}
.show-page .attraction-card:first-child .attraction-copy h3{font-size:37px}
.show-page .attraction-copy p{font-size:14px;line-height:1.75;margin-bottom:0}.activity-rules{font-size:13px;margin-top:18px}
.show-page .activity-image-empty{display:grid;place-items:center;background:repeating-linear-gradient(45deg,#28334d,#28334d 1px,#212b42 1px,#212b42 14px)}
.show-page .activity-image-empty>svg{width:56px;height:56px;color:#c1b1d8}
/* Separate passes replace the shared pricing strip; every amount and rule is unchanged. */
.show-page .ticket-component>.tickets-panel{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:0;margin:0 0 35px;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--text)}
.show-page .tickets-panel h2{font-family:var(--af-display);font-size:clamp(40px,4.5vw,62px);letter-spacing:0;color:var(--text);line-height:1.02;margin-bottom:0}
.show-page .tickets-panel h2 em{color:var(--af-pink)}.show-page .tickets-panel .eyebrow{color:var(--af-violet);margin-bottom:18px}
.show-page .tickets-panel .ticket-action .button{background:var(--af-pink);border-color:var(--af-pink);color:#282036;min-width:175px}
.show-page .tickets-panel .admission{color:var(--muted);font-size:14px}
.show-page .ticket-price-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;border:0;border-radius:0;overflow:visible;background:transparent}
.show-page .ticket-price-tab{position:relative;min-height:252px;padding:26px 25px;border:1px solid #656078;border-top:5px solid #b5a4d7;border-radius:3px;background:#1b1e21;box-shadow:none;display:flex;flex-direction:column}
.show-page .ticket-price-tab:nth-child(2){border-top-color:var(--af-pink)}
.show-page .ticket-price-tab[data-ticket-role="vip"]{background:#27242d;border-top-color:#baa3d6;box-shadow:none}
.show-page .ticket-price-tab[data-ticket-role="platinum"]{background:#24282e;border-top-color:#c3ccdd;box-shadow:none}
.show-page .ticket-price-tab:before,.show-page .ticket-price-tab:after{content:'';position:absolute;top:86px;width:14px;height:14px;border:1px solid #656078;border-radius:50%;background:var(--bg)}
.show-page .ticket-price-tab:before{left:-8px}.show-page .ticket-price-tab:after{right:-8px}
.show-page .ticket-tab-label{gap:10px;padding-bottom:24px;border-bottom:1px dashed #666276;min-height:64px;align-items:flex-start}
.show-page .ticket-tab-label h3{font-family:var(--af-display);font-size:24px;line-height:1.1;letter-spacing:.015em}
.show-page .ticket-tab-label>span{font-size:11px;flex-basis:100%;margin:0 0 0 30px;line-height:1.5}
.show-page .ticket-tab-price{font-family:var(--af-display);font-size:47px;line-height:1;font-weight:700;color:var(--af-paper);margin:27px 0 0;letter-spacing:0}
.show-page .ticket-tab-detail{font-size:12px;line-height:1.6;margin-top:15px;color:#ccc5d8}
.show-page .ticket-component>.ticket-child-condition{margin:24px 0 0;padding:19px 0 0;border-top:1px solid #4a5167;color:var(--muted);font-size:13px;line-height:1.8;font-weight:400}
/* Four intentionally designed opportunities, rather than two cards and two strips. */
#involved .involved-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;counter-reset:opportunity}
#involved .involved-card{display:flex;flex-direction:column;align-items:flex-start;gap:14px;grid-column:auto;min-height:290px;padding:26px 28px;position:relative;counter-increment:opportunity;border:1px solid #575a70;border-radius:3px 26px 3px 3px;background:#1b1e21}
#involved .involved-card:after{content:'0' counter(opportunity);position:absolute;right:29px;top:24px;color:#b8a4ce;font-family:var(--af-display);font-size:43px;line-height:1;font-weight:500}
#involved .involved-card>.card-icon{margin:0;width:40px;height:40px;border:0;border-radius:0;background:transparent;color:#c8b9df}
#involved .involved-card>div:not(.participation-actions){display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0}
#involved .involved-card h3{font-family:var(--af-display);font-size:33px;line-height:1.03;letter-spacing:0;margin:0 0 13px}
#involved .involved-card p{font-size:14px;line-height:1.8;max-width:48ch;margin-bottom:18px}
#involved .involved-card .button{margin-top:auto;min-height:46px;font-size:12px;padding:12px 18px}
#involved .involved-card:first-child{background:#d6b4c8;color:#242034;border-color:#d6b4c8}
#involved .involved-card:first-child h3,#involved .involved-card:first-child>.card-icon,#involved .involved-card:first-child:after{color:#33243d}
#involved .involved-card:first-child p{color:#4b3a50}
#involved .involved-card:first-child .button{background:#2b263e;border-color:#2b263e;color:#eee8f3}
#involved .involved-card:nth-child(3){border-top:4px solid #b3a1cd;background:#25262b}
#involved .involved-card:nth-child(4){border-top:4px solid #b899b8;background:#202426}
#involved .participation-guest-card .participation-actions{margin:0;display:flex;flex-wrap:wrap;gap:10px;flex:none}
#involved .sponsorship-card>.button{margin-left:0}
/* Guest portraits use the same poster framing, not the previous horizontal card vocabulary. */
.show-page .guest-section .guest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1010px;margin-inline:auto}
.show-page .guest-section .guest-card{border-radius:3px 30px 3px 3px;border:1px solid #797087;border-top:5px solid #b3a1ce;background:#172139;box-shadow:none}
.show-page .guest-section .guest-image{height:390px;background:#24304a}
.show-page .guest-section .guest-image img{object-position:center top;filter:saturate(.85)}
.show-page .guest-section .guest-copy{position:relative;margin:-28px 19px 0;padding:25px 24px 30px;border-left:3px solid var(--af-pink);background:#172139;z-index:1}
.show-page .guest-section .guest-copy h3{font-family:var(--af-display);font-size:37px;line-height:1;text-transform:uppercase;letter-spacing:.005em;margin-bottom:11px}
.show-page .guest-section .guest-title{font-size:13px;color:#bcaed6;letter-spacing:.035em;margin-bottom:17px}
.show-page .guest-section .guest-appearances{gap:7px}
.show-page .guest-section .guest-appearances li{font-size:12px;border-radius:3px;border-color:#5c5a73;background:#242c43;padding:6px 9px}
.show-page .guest-section .is-cancelled .guest-portrait{filter:grayscale(1);opacity:.48}
/* Consistent finishing components: sponsorship, photograph/address, discovery and accordion. */
.sponsor-feature{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;padding:34px 38px;border-block:1px solid #74657c;border-left:5px solid var(--af-pink);background:linear-gradient(105deg,#2b2840,#172137);border-radius:2px}
.sponsor-feature .eyebrow{margin-bottom:12px}.sponsor-feature h3{font-family:var(--af-display);font-size:38px;line-height:1;margin-bottom:15px}
.sponsor-feature p{font-size:14px;max-width:570px;margin-bottom:0}.sponsor-feature>.button{font-size:13px}
.upcoming-shows .upcoming-show-card{border-radius:3px 20px 3px 3px;border-top:3px solid #b3a1cd;background:#1b1e21}
.upcoming-shows .upcoming-show-image{aspect-ratio:1.5}.upcoming-shows .upcoming-show-copy h3{font-family:var(--af-display);font-size:29px;text-transform:uppercase;letter-spacing:.015em}
.show-page .questions-grid .faq-list{max-width:900px;margin-top:32px;border-bottom:1px solid #6a6378}
.questions-grid .faq-list details{background:transparent;border:0;border-top:1px solid #6a6378;border-radius:0;margin:0}
.questions-grid .faq-list summary{font-size:16px;line-height:1.55;padding:22px 9px;letter-spacing:0}
.questions-grid .faq-list summary svg{color:var(--af-pink);width:21px;height:21px}
.questions-grid .faq-list details[open]{background:#202426}
.questions-grid .faq-list details>div{font-size:14px;line-height:1.9;padding:0 27px 25px;max-width:none;color:#c8c8d9}
.site-footer{border-top:3px solid #81728f;padding-top:45px}.wordmark{font-family:var(--af-display);font-size:38px;font-style:normal;letter-spacing:.015em}
.wordmark span{font-family:var(--font);font-size:9px;letter-spacing:.15em}.footer-links{font-size:14px}.footer-bottom{font-size:12px}
@media(max-width:1100px){
.hero{gap:35px}.hero h1{font-size:94px}.hero-art{min-height:450px;aspect-ratio:.88}.anime-poster-title>strong{font-size:41px}.hero-copy>.countdown{grid-template-columns:80px 1fr;gap:13px}.hero-actions{grid-template-columns:1fr 1.2fr .9fr}.hero-actions .button{font-size:10px}
.show-page .intro-composition.has-interests{gap:38px}.show-page .attraction-card{grid-template-columns:34% 1fr}.show-page .attraction-card .attraction-copy{padding:24px 20px}.show-page .attraction-copy h3{font-size:28px}.show-page .attraction-copy p{font-size:13px}.show-page .ticket-price-tab{padding:23px 19px}.show-page .ticket-tab-price{font-size:42px}
}
@media(max-width:800px){
.hero{grid-template-columns:1fr;gap:36px;padding-top:30px}.hero h1{font-size:98px}.hero h1>span{font-size:.8em}.hero-copy>.countdown{max-width:none;grid-template-columns:105px 1fr}.hero-actions{max-width:none;grid-template-columns:1fr 1fr 1fr}.hero-actions .button{font-size:12px}.hero-visual{width:100%;max-width:640px;justify-self:center}.hero-art{aspect-ratio:1.2;min-height:0}.anime-poster-title>strong{font-size:48px}.anime-hero-artwork{inset:27% 0 0}
.show-page .intro-composition.has-interests{grid-template-columns:1fr;gap:30px}.show-page .intro-interests.interests-panel{padding:26px;border-left:4px solid var(--af-violet)}
.attraction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.show-page .attraction-card{display:flex;flex-direction:column;min-height:0}.show-page .attraction-card:first-child{grid-row:auto;grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.show-page .attraction-card .attraction-image{height:190px;min-height:190px;flex:none}.show-page .attraction-card:first-child .attraction-image{height:100%;min-height:270px}.show-page .attraction-card .attraction-copy{padding:23px;flex:1}.show-page .attraction-card:first-child .attraction-copy h3{font-size:32px}
.show-page .ticket-price-tabs{grid-template-columns:1fr 1fr;gap:19px}.show-page .ticket-price-tab{min-height:245px;border:1px solid #656078;border-top:5px solid #b5a4d7}.show-page .ticket-price-tab:nth-child(n){border-bottom:1px solid #656078;border-right:1px solid #656078}.show-page .ticket-tab-price{font-size:47px}
#involved .involved-card{padding:24px;min-height:300px}#involved .involved-card h3{font-size:30px}#involved .involved-card p{font-size:13px}#involved .participation-guest-card .participation-actions{margin:0}#involved .involved-card>.card-icon{width:34px;height:34px}
.show-page .guest-section .guest-image{height:310px}.show-page .guest-section .guest-copy{margin:-22px 13px 0;padding:23px 19px 28px}.show-page .guest-section .guest-copy h3{font-size:33px}
.sponsor-feature{padding:30px;grid-template-columns:1fr;gap:22px}.sponsor-feature>.button{justify-self:start}
}
@media(max-width:600px){
.hero{padding-top:26px;padding-bottom:42px;gap:30px}.hero .eyebrow{font-size:10px}.hero h1{font-size:clamp(72px,18vw,88px);line-height:.9;margin-bottom:21px}.hero h1>span{font-size:.83em}.hero-subtitle{font-size:15px;margin-bottom:22px}.hero-details p,.show-page .hero-details p{font-size:13px;line-height:1.6}.hero-details{margin-bottom:24px}.hero-actions{grid-template-columns:1fr 1fr;gap:9px}.hero-actions .button{min-height:51px;font-size:11px;padding:11px}.hero-actions .button:nth-child(3){grid-column:1/-1;min-height:43px}
.hero-copy>.countdown{grid-template-columns:76px 1fr;gap:13px;margin-top:22px;padding-block:17px}.hero-copy>.countdown .countdown-heading{font-size:9px;letter-spacing:.04em}.hero-copy>.countdown .countdown-numbers{gap:9px}.hero-copy>.countdown .countdown-numbers strong{font-size:36px}.hero-copy>.countdown .countdown-numbers span{font-size:8px;letter-spacing:.01em}.hero-copy>.countdown .countdown-numbers>div:not(:last-child):after{right:-7px;font-size:24px}
.hero-visual{padding-right:7px;padding-bottom:7px}.hero-visual:after{inset:9px 0 0 9px}.hero-art{aspect-ratio:.98;border-radius:3px 28px 3px 3px;min-height:0}.anime-poster-title{left:19px;top:16px}.anime-poster-title>span{font-size:19px}.anime-poster-title>strong{font-size:34px}.anime-hero-artwork{inset:29% 0 0}.art-caption{inset:auto 13px 13px;font-size:7px;letter-spacing:.08em}.art-caption>span{padding:6px 8px}
.quick-info{padding-block:20px}.quick-info strong{font-size:12px}
.show-page #experience{padding-block:52px}.show-page .intro-narrative h2{font-size:38px;line-height:1.04}.show-page .intro-narrative .intro-body{font-size:14px;line-height:1.8}.show-page .intro-community{font-size:13px}.show-page .intro-community-row{gap:18px}.show-page .intro-interests.interests-panel{padding:24px 22px}.show-page .intro-interests h3{font-size:27px}.show-page .intro-interests li{font-size:13px;line-height:1.5;padding:9px 0}.show-page .intro-interests ul{gap:0 13px}
h2{font-size:39px}.section-heading{margin-bottom:29px}.section-heading .eyebrow{font-size:10px}
#attractions{padding-block:52px}.attraction-grid{grid-template-columns:1fr;gap:18px}.show-page .attraction-card,.show-page .attraction-card:first-child{grid-column:auto;grid-row:auto;display:grid;grid-template-columns:34% 1fr;border-radius:3px;min-height:216px}.show-page .attraction-card:first-child{display:flex;flex-direction:column;border-radius:3px 25px 3px 3px}.show-page .attraction-card .attraction-image{height:100%;min-height:215px}.show-page .attraction-card:first-child .attraction-image{height:230px;min-height:230px}.show-page .attraction-card .attraction-copy{padding:22px 20px}.show-page .attraction-copy h3{font-size:28px}.show-page .attraction-card:first-child .attraction-copy h3{font-size:33px}.show-page .attraction-copy p{font-size:13px;line-height:1.75}.show-page .attraction-copy:before{font-size:12px;margin-bottom:10px}.show-page .activity-image-empty>svg{width:42px;height:42px}
.show-page .ticket-component>.tickets-panel{display:block;padding:0;margin-bottom:27px}.show-page .tickets-panel h2{font-size:39px}.show-page .tickets-panel .ticket-action{margin-top:25px;display:block}.show-page .tickets-panel .ticket-action .button{width:100%}.show-page .ticket-price-tabs{gap:16px}.show-page .ticket-price-tab{padding:21px 17px;min-height:245px}.show-page .ticket-tab-label{min-height:70px;gap:8px;padding-bottom:22px}.show-page .ticket-tab-label h3{font-size:23px}.show-page .ticket-tab-label>span{font-size:11px;padding:0;margin-left:0;line-height:1.4}.show-page .ticket-tab-label svg{width:17px;height:17px}.show-page .ticket-tab-price{font-size:38px;margin-top:25px}.show-page .ticket-tab-detail{font-size:11px;margin-top:13px}.show-page .ticket-component>.ticket-child-condition{font-size:12px;line-height:1.8}
#involved .involved-grid{grid-template-columns:1fr;gap:18px}#involved .involved-card{padding:24px 22px;min-height:275px;border-radius:3px 24px 3px 3px;gap:14px}#involved .involved-card:after{right:25px;top:24px;font-size:39px}#involved .involved-card h3{font-size:32px;margin-bottom:13px}#involved .involved-card p{font-size:14px;line-height:1.8;margin-bottom:18px}#involved .involved-card .button{font-size:12px;width:100%;margin:0}#involved .involved-card>div:not(.participation-actions){width:100%}#involved .participation-guest-card .participation-actions{width:100%;display:grid;margin:0;gap:10px}#involved .sponsorship-card>.button{margin:0}
.show-page .guest-section .guest-grid{grid-template-columns:1fr;gap:25px}.show-page .guest-section .guest-image{height:325px}.show-page .guest-section .guest-copy{margin:-24px 15px 0;padding:25px 21px 27px}.show-page .guest-section .guest-copy h3{font-size:35px}.show-page .guest-section .guest-title{font-size:13px}.show-page .guest-section .guest-appearances li{font-size:11px}
.sponsor-feature{padding:29px 24px;border-left-width:3px;gap:24px}.sponsor-feature h3{font-size:35px}.sponsor-feature p{font-size:14px;line-height:1.8}.sponsor-feature>.button{width:100%}
.questions-grid .faq-list summary{font-size:15px;padding:21px 6px;gap:15px}.questions-grid .faq-list details>div{font-size:14px;padding:0 19px 22px}.show-page .questions-grid .faq-list{margin-top:30px}.wordmark{font-size:34px}.footer-links{font-size:13px}.footer-bottom{font-size:11px}
}
@media(max-width:360px){.hero-actions .button{font-size:10px}.hero-copy>.countdown{grid-template-columns:66px 1fr;gap:9px}.hero-copy>.countdown .countdown-numbers strong{font-size:32px}.show-page .attraction-card{grid-template-columns:30% 1fr}.show-page .attraction-card .attraction-copy{padding:21px 17px}.show-page .ticket-price-tab{padding-inline:14px}.show-page .ticket-tab-price{font-size:34px}}
@media(prefers-reduced-motion:reduce){.attraction-card,.button{transition:none!important;transform:none!important}}
/* Keep artwork intrinsic dimensions out of the editorial grid's row sizing. */
.show-page .attraction-card .attraction-image{position:relative;overflow:hidden}
.show-page .attraction-card .attraction-image img{position:absolute;inset:0}
#involved .involved-card:first-child .button.primary{color:#f3edf7!important;opacity:1}
@media(min-width:1101px){.hero-actions .button{font-size:12px}}
@media(min-width:601px){.show-page .ticket-tab-label{min-height:82px}.show-page .ticket-price-tab:before,.show-page .ticket-price-tab:after{top:105px}}
/* Crop the original baked-in promo captions beneath the live guest nameplate. */
.show-page .guest-section .guest-image img{height:118%;object-position:center top}
@media(max-width:600px){.hero-actions .button:first-child{grid-column:auto}}

/* Approved PokeKon venue component, shared geometry and presentation. */
#venue{--text:#f5f4ed;--muted:#adb4b5;--line:#343a3b;--yellow:#f4d84b;--mint:#83d9c0;--font:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-family:var(--font)}
#venue h2,#venue h3{font-family:var(--font);text-transform:none;font-weight:750}
#venue h2{letter-spacing:-.045em}#venue h2 em{font-style:normal;color:var(--yellow)}
#venue .eyebrow{color:var(--yellow);font-size:10px;letter-spacing:.17em;font-weight:750}
#venue .button{border-radius:8px;letter-spacing:0;font-size:12px;font-weight:750;background:transparent;color:var(--text);border-color:#4b5253}
.show-page #venue{padding-block:64px;background:transparent}
.show-page .venue-component{display:grid;grid-template-columns:1fr 1.04fr;border:0;border-radius:0;overflow:visible;background:transparent}
.show-page .venue-component:not(.has-auto-map){grid-template-columns:1fr}
.show-page .venue-info{padding:30px 34px}
.show-page .venue-info>.eyebrow{margin-bottom:13px}
.show-page .venue-info h2{font-size:clamp(30px,3vw,42px);line-height:1.15;margin-bottom:24px}
.show-page .venue-address{display:flex;align-items:flex-start;gap:16px;margin-bottom:22px}
.show-page .venue-address .venue-pin{width:42px;height:42px;flex-shrink:0;margin:2px 0 0}
.show-page .venue-address h3{font-size:26px;line-height:1.2;margin-bottom:10px;letter-spacing:-.025em}
.show-page .venue-address address{font-size:15px;line-height:1.65;color:#d4ddd4;font-style:normal}
.show-page .venue-info>.venue-parking{margin:0 0 18px}
.show-page .venue-info>.button{min-height:44px;padding:12px 18px}
.show-page .venue-component .venue-map{grid-column:auto;position:relative;min-height:300px;border:1px solid #3b443e;border-radius:16px;overflow:hidden;margin:0;background:#202724}
.show-page .venue-component .venue-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:1000px){
.show-page .venue-info{padding:28px}
}
@media(max-width:800px){
.show-page .venue-component{grid-template-columns:1fr 1fr}
.show-page .venue-info{padding:25px}
.show-page .venue-address{gap:12px}
.show-page .venue-address .venue-pin{display:none}
.show-page .venue-address h3{font-size:24px}
.show-page .venue-address address{font-size:14px}
}
@media(max-width:600px){
.show-page #venue{padding-block:44px}
.show-page .venue-component{grid-template-columns:1fr}
.show-page .venue-info{padding:25px 23px}
.show-page .venue-info h2{font-size:32px;margin-bottom:22px}
.show-page .venue-address .venue-pin{display:grid}
.show-page .venue-component .venue-map{min-height:220px;border:1px solid #3b443e}
}

/* Shared city photograph with the Series' authentic city logo below its edge. */
.hero-visual{padding:0 0 50px}.hero-visual:after{display:none}
.hero-photo-frame{position:relative;overflow:visible}
.hero-art{min-height:0;aspect-ratio:1.02;border:1px solid #9592ab;border-bottom-width:1px;border-radius:3px 42px 3px 3px;overflow:hidden}
.hero-image{filter:saturate(.85);object-position:center}
.hero-art:after{background:linear-gradient(180deg,transparent 45%,#11192a66)}
.anime-city-logo{position:absolute;z-index:3;width:min(60%,280px);aspect-ratio:1;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);pointer-events:none;display:grid;place-items:center}
.anime-city-logo img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(.75px 0 0 #f3eee9b3) drop-shadow(-.75px 0 0 #f3eee9b3) drop-shadow(0 .75px 0 #f3eee9b3) drop-shadow(0 -.75px 0 #f3eee9b3) drop-shadow(0 3px 4px #10121380)}
@media(max-width:800px){.hero-visual{padding:0 0 44px}.hero-art{aspect-ratio:1.2}}
@media(max-width:600px){.hero-visual{padding:0 0 34px}.hero-art{aspect-ratio:.98}}
/* Preserve the reference component's own type and controls across brand tokens. */
#venue{color:#f5f4ed}
#venue h2{font-weight:780;letter-spacing:-.05em}
#venue h2 em{font-weight:780}
#venue h3{font-weight:700}
#venue .eyebrow{color:#f5f4ed;letter-spacing:.15em}
#venue .button{font-size:11px;line-height:1.35;background:#1a1e1f;color:#f2f2ea}
#venue .venue-pin{background:#29382c}

/* City-specific transparent logo, retaining the existing header footprint. */
.oc-navigation .oc-nav-brand img.anime-city-nav-logo{object-fit:contain;border:0;border-radius:0;background:transparent}
#sponsorship{scroll-margin-top:24px}

/* Confirmed guest and separate-admission concert share one full-width guest row. */
.show-page .guest-section .guest-concert-unit{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;min-width:0}
.guest-concert-unit>.guest-card{position:relative;z-index:1}
.guest-concert-unit .anime-concert{min-width:0}
.anime-concert-panel{padding:28px 30px;border:1px solid #74617e;border-left:0;border-radius:0 26px 3px 0;background:linear-gradient(110deg,#30243f,#19243b)}
.anime-concert-panel h3{font-family:var(--af-display);font-size:clamp(30px,3vw,42px);line-height:1.05;margin:0 0 18px}
.anime-concert-panel p{font-size:14px;line-height:1.8}.anime-concert-panel .eyebrow{font-size:11px}
.anime-concert-panel .anime-concert-time{font-size:22px;color:var(--af-paper);font-weight:700;margin-bottom:16px}.anime-concert-time span{color:var(--af-violet);font-size:13px;font-weight:400;margin-left:8px}
.anime-concert-panel .anime-concert-hours{margin-bottom:0;color:var(--af-violet)}.anime-concert-panel>.button{margin-top:20px}
@media(max-width:600px){.show-page .guest-section .guest-concert-unit{grid-template-columns:1fr}.show-page .guest-section .guest-concert-unit>.guest-card{border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.anime-concert-panel{padding:26px 22px;border-left:1px solid #797087;border-color:#797087;border-top:0;border-radius:0 0 3px 3px}.anime-concert-panel>.button{width:100%}.anime-concert-panel .anime-concert-time{font-size:20px}}

/* Shared transparent activity artwork: the existing card and image-area geometry stays intact. */
.show-page #attractions .attraction-card .attraction-image{background:linear-gradient(rgba(180,163,216,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(180,163,216,.055) 1px,transparent 1px),radial-gradient(ellipse at 78% 20%,rgba(223,167,192,.075),transparent 65%),linear-gradient(140deg,#25232b,#171a1c 85%);background-size:28px 28px,28px 28px,auto,auto}
.show-page #attractions .attraction-card .attraction-image img{object-fit:contain;object-position:center;filter:none;padding:18px;box-sizing:border-box}
.show-page #attractions .attraction-card:first-child .attraction-image img{padding:12px}

/* Directory-only atmospheric city photos; content and card geometry stay untouched. */
.brand-directory .directory-event.has-city-photo{position:relative;isolation:isolate}
.brand-directory .directory-event-background{position:absolute;inset:0;z-index:0;pointer-events:none}
.brand-directory .directory-event-background-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.3}
.brand-directory .directory-event-background:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,18,19,.12),rgba(16,18,19,.38))}
.brand-directory .directory-event.has-city-photo>.directory-event-image,.brand-directory .directory-event.has-city-photo>.directory-event-copy{position:relative;z-index:1;background:transparent}

.brand-directory .directory-event h2 .directory-city-name{color:var(--af-pink)}

/* Reduce only the hero city text; cap long names to the existing column width. */
.show-page .hero h1 em{font-size:.8em}
@media(min-width:801px) and (max-width:1000px){.show-page .hero h1 em{font-size:min(.8em,calc((100vw - 131px)/12))}}
@media(max-width:600px){.show-page .hero h1 em{font-size:min(.8em,calc((100vw - 40px)/6.1))}}
