/* Three experiences, complete photographs, and a clear awards voting entry. */
.program-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.program-panel{grid-template-columns:.88fr 1.12fr;align-items:center;min-height:0}
.program-details{padding:30px;min-width:0}
.program-photo-full{position:relative;min-height:0;aspect-ratio:auto;height:auto;align-self:center;overflow:hidden;background:#071326b3;margin:0}
.program-photo-full>img{display:block;position:static;inset:auto;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;transform:none!important}
.program-photo-full figcaption{position:static;display:flex;flex-direction:column;gap:6px;padding:16px 18px;width:auto;background:#050d1be0;font-size:14px;line-height:1.7;border-top:1px solid #d7be8433;letter-spacing:.025em}
.program-photo-full figcaption>span:first-child{font-size:14px;letter-spacing:.1em;color:#e3cca0}
.program-photo-full figcaption>span:last-child{color:#acb9cb}
.wide-photo{aspect-ratio:auto;width:100%;max-width:1100px;margin-left:auto;margin-right:auto}
.wide-photo>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;transform:none!important}
.wide-photo>.photo-caption{position:static;margin:0;border:0;border-top:1px solid #d7be8433;border-radius:0;background:#071329ba;padding:20px 24px;backdrop-filter:none}
.highlight-card>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
.trophy-figure{width:100%;max-width:520px;justify-self:center;min-height:0;height:auto;aspect-ratio:auto;margin:0;border-radius:4px;backdrop-filter:none;background:#071022;box-shadow:0 22px 80px #00000024}
.trophy-figure::before,.trophy-figure::after{display:none;content:none}
.award-art.trophy-figure>img{display:block;position:static;inset:auto;width:100%;height:auto;object-fit:contain;object-position:center;max-height:none}
.trophy-figure>figcaption{position:static;display:flex;flex-direction:column;gap:7px;padding:19px 22px;background:#071326;font-size:14px;line-height:1.7;letter-spacing:.02em;color:#abb8ca;border-top:1px solid #d5b88338}
.trophy-figure>figcaption>span:first-child{font-size:14px;letter-spacing:.12em;color:#d7bd8b}
.award-info{scroll-margin-top:24px}
.award-info h3{font-size:25px;line-height:1.65;letter-spacing:.025em;margin:15px 0}
.vote-button{width:100%;min-height:65px;margin-top:24px;padding:18px 23px;font-size:16px;letter-spacing:.05em;box-shadow:0 10px 40px #d3aa4326}
.vote-button>span{font-size:25px}
.award-info .vote-status{font-size:14px;margin-top:13px;color:#b5c1d2}
.header-vote{color:#0b1423;background:linear-gradient(115deg,#ebd9ac,#cfb676);border-color:#eddbb4ad;font-weight:700}
.header-vote:hover{color:#0b1423;background:#f2dfb4}
.venue-lockup{margin-top:35px;border-radius:4px;overflow:hidden}
.venue-brand{padding:32px 29px 25px}
.venue-logo{display:block;width:100%;max-width:360px;height:auto;object-fit:contain;margin:0 0 25px}
.venue-brand>p{font-family:var(--jp);font-size:19px;line-height:1.8;letter-spacing:.055em;color:#f2eee5;margin:0}
.venue-brand>p>span{font-size:14px;color:#d7c69e;letter-spacing:.1em}
.venue-photo{margin:0;border-top:1px solid #d7be8433}
.venue-photo>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.venue-photo>figcaption{font-size:14px;color:#b5c1d2;padding:13px 18px;line-height:1.7;background:#061329b8}
.registration-button{gap:20px;white-space:nowrap}
.hero-admission{display:flex;flex-direction:column;gap:5px;line-height:1.8}
.hero-admission strong{font-weight:600;color:#eddbb5;font-size:14px;letter-spacing:.04em}
.hero-footnote>.hero-admission{max-width:none}
.award-attendance{border-left:1px solid #dbbd7975;padding-left:20px;margin:29px 0 0}
.attendance-labels{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;color:#e3cca0;font-size:14px;letter-spacing:.1em}
.attendance-labels>span{display:inline-flex;align-items:center;gap:7px}
.attendance-labels i{width:5px;height:5px;border-radius:50%;background:#dcbf7e;box-shadow:0 0 10px #e2bb6155}
.award-attendance p{font-family:var(--jp);font-size:14px;line-height:1.9;color:#f1ebdf;margin:12px 0 8px}
.award-attendance small{display:block;font-size:14px;line-height:1.9;color:#b7c4d7}
@media(max-width:1100px){.program-details{padding:23px 19px}.program-panel{grid-template-columns:.9fr 1.1fr}.program-details h3{font-size:23px}.venue-brand{padding:26px 22px}.venue-brand>p{font-size:17px}}
@media(max-width:760px){
  .program-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
  .program-tabs button{white-space:normal;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;padding:15px 4px;font-size:14px;letter-spacing:.015em;margin:0}
  .program-tabs button>span{margin:0;font-size:14px}
  .program-tabs button:nth-child(n){border:0;border-right:1px solid #d5b8783b}
  .program-tabs button:last-child{border-right:0}
  .program-panel{grid-template-columns:1fr;align-items:start;padding:9px}
  .program-photo-full{grid-row:1;width:100%;min-height:0;aspect-ratio:auto}
  .program-details{grid-row:2;padding:22px 16px 18px;gap:22px}
  .program-photo-full figcaption{padding:12px 13px;font-size:14px;gap:5px}
  .program-photo-full figcaption>span:first-child{font-size:14px}
  .program-en{font-size:29px;margin-bottom:18px}
  .program-details h3{font-size:23px}
  .wide-photo{aspect-ratio:auto;margin-top:12px}
  .wide-photo>.photo-caption{padding:15px 14px;gap:8px;font-size:14px}
  .highlight-card>img{aspect-ratio:auto;height:auto;object-fit:contain}
  .trophy-figure{height:auto;min-height:0;max-width:470px;margin:0}
  .trophy-figure>figcaption{padding:15px 16px;font-size:14px;gap:6px}
  .award-info h3{font-size:22px}
  .vote-button{font-size:14px;min-height:60px;margin-top:20px;padding:15px 18px}
  .award-info .vote-status{font-size:14px;line-height:1.7}
  .header-vote{display:flex;padding:10px 11px;font-size:14px;gap:10px}
  .venue-lockup{margin-top:27px}
  .venue-brand{padding:25px 20px 22px}
  .venue-logo{width:100%;max-width:360px;margin-bottom:20px}
  .venue-brand>p{font-size:17px}
  .venue-brand>p>span{font-size:14px}
  .venue-photo>figcaption{font-size:14px;padding:12px 14px}
  .hero-footnote{flex-wrap:wrap;gap:11px}
  .hero-admission{width:100%;font-size:14px;gap:3px;letter-spacing:0}
  .hero-admission strong{font-size:14px}
  .hero-footnote a{font-size:14px}
  .award-attendance{padding-left:17px}
  .award-attendance p{font-size:14px}
  .award-attendance small{font-size:14px}
}
@media(max-width:360px){.brand-logo{width:103px}.site-header{gap:8px;padding-left:12px;padding-right:11px}.header-vote{display:flex;font-size:14px;padding:9px 8px;gap:6px}.header-vote>span{font-size:15px}.menu-toggle{width:23px;flex-basis:23px;margin-left:0}.program-tabs button{font-size:14px}.program-details h3{font-size:21px}.award-info h3{font-size:20px}}
@media print{.program-photo-full,.trophy-figure,.venue-lockup{break-inside:avoid}.vote-button,.header-vote{display:none!important}}

/* Keep free registration and award voting visible together in the header. */
/* The exhibitor guide adds a footer link alongside the brand and back-to-top. */
.footer-top{flex-wrap:wrap;gap:24px}
.footer-top>.text-link{font-size:14px}
.desktop-nav{margin-left:auto}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}
.header-actions .header-cta{white-space:nowrap;min-height:46px;margin-left:0;gap:17px;font-size:14px;justify-content:space-between}
.header-actions .header-vote{color:#efdbaa;background:#08132788;border-color:#ddc48766}
.header-actions .header-vote:hover{background:#d9bc7321}
.header-registration{color:#0b1423;background:linear-gradient(115deg,#ebd9ac,#cfb676);border-color:#eddbb4ad;font-weight:700}
.header-registration:hover{background:#f2dfb4;color:#0b1423}
@media(max-width:1100px){
  .desktop-nav{display:none}
  .menu-toggle{background:none;display:flex;flex:0 0 28px;flex-direction:column;gap:6px;justify-content:center;width:28px;height:36px;padding:3px;margin-left:0}
  .menu-toggle span{width:100%;height:1px;background:#fff;transition:transform .2s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;top:calc(100% + 10px);left:0;right:0;background:#081327f5;backdrop-filter:blur(30px);padding:18px 24px;border:1px solid #dcc79140;border-radius:3px;box-shadow:0 30px 50px #00000050}
  .mobile-nav>a{padding:15px 0;border-bottom:1px solid #ffffff20;font-size:14px;display:flex;justify-content:space-between}
  .mobile-nav>a:last-child{border:0}
  .mobile-nav>a>span{font-family:var(--jp);font-size:14px;color:#c4cdd4}
}
@media(max-width:760px){
  html{scroll-padding-top:166px}
  .site-header{display:grid;grid-template-columns:1fr auto;height:auto;padding:10px 12px;gap:8px 12px}
  .site-header .brand{grid-column:1;grid-row:1;width:max-content}
  .site-header .brand-logo{width:108px}
  .site-header .menu-toggle{grid-column:2;grid-row:1;justify-self:end;width:28px;margin:0}
  .header-actions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1.65fr;width:100%;gap:8px;margin:0;min-width:0}
  .header-actions .header-cta{display:flex;min-width:0;min-height:42px;padding:9px 11px;font-size:14px;gap:6px;letter-spacing:0}
  .header-actions .header-cta>span{font-size:17px}
  .hero>.hero-content{padding-top:185px}
  .mobile-nav:not([hidden]){max-height:calc(100svh - 177px);overflow-y:auto}
}
@media(max-width:360px){
  .header-actions{grid-template-columns:1fr 1.7fr;gap:6px}
  .header-actions .header-cta{font-size:14px;padding:9px 8px;gap:4px}
  .header-actions .header-cta>span{font-size:15px}
}

/* Official archive link in the 2025 highlights. */
.highlights-video-link{width:max-content;max-width:100%;margin-top:26px;gap:28px}
@media(max-width:760px){.highlights-video-link{width:100%;font-size:14px;padding:16px 18px;gap:18px}}
/* Award information links in the existing voting panel. */
.award-guide-links{display:grid;gap:12px;margin:22px 0 26px}.award-guide-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;padding:17px 20px;border:1px solid #cbb78280;border-radius:3px;background:#0b1628;color:#f7f5ed;font-size:16px;font-weight:600;line-height:1.7;text-decoration:none;transition:background-color .2s,border-color .2s}.award-guide-links a>span{flex-shrink:0;color:#e7c98f;font-size:23px;line-height:1}.award-guide-links a:hover{background:#15253d;border-color:#e7c98f;text-decoration:underline;text-underline-offset:5px}.award-guide-links a:focus-visible{outline:3px solid #ffe1a6;outline-offset:4px;background:#15253d;border-color:#e7c98f}
@media(max-width:760px){.award-guide-links a{padding:16px;gap:12px}}
