#chocolat-cast-experience{
  --ink: #f7fbff;
  --muted: rgba(231, 251, 255, .78);
  --quiet: rgba(168, 232, 248, .7);
  --night: #043f73;
  --panel: #06477f;
  --panel-soft: #07588f;
  --line: rgba(53, 214, 255, .38);
  --gold: #f4d36d;
  --gold-bright: #fff0a4;
  --cyan: #35d6ff;
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  font-family: "Hiragino Sans", "Yu Gothic", "Noto Sans JP", system-ui, sans-serif;
}
#chocolat-cast-experience *{ box-sizing: border-box; }
#chocolat-cast-experience{
  background: var(--night);
  color: var(--ink);
  scroll-behavior: smooth;
}
#chocolat-cast-experience{
  min-width: 0;
  margin: 0;
  overflow-x: clip;
  background:
    radial-gradient(circle at 82% 9%, rgba(255, 240, 164, .08), transparent 28rem),
    radial-gradient(circle at 15% 5%, rgba(53, 214, 255, .14), transparent 31rem),
    linear-gradient(135deg, #07588f 0%, #0c9fbd 34%, #0879b5 68%, #043f73 100%);
}
#chocolat-cast-experience button,
#chocolat-cast-experience a{ -webkit-tap-highlight-color: transparent; }
#chocolat-cast-experience button{ font: inherit; }
#chocolat-cast-experience button:focus-visible,
#chocolat-cast-experience a:focus-visible{
  outline: 3px solid var(--cyan);
  outline-offset: 3px;
}
#chocolat-cast-experience [hidden]{ display: none !important; }
#chocolat-cast-experience .ambient{
  position: fixed;
  z-index: -1;
  border-radius: 999px;
  filter: blur(80px);
  opacity: .38;
  pointer-events: none;
}
#chocolat-cast-experience .ambient-a{ width: 12rem; height: 12rem; top: 24vh; left: -7rem; background: #35d6ff; opacity: .08; }
#chocolat-cast-experience .ambient-b{ width: 15rem; height: 15rem; right: -9rem; bottom: 8vh; background: #f4d36d; opacity: .06; }
#chocolat-cast-experience .app-shell{
  width: min(100%, 86rem);
  margin: 0 auto;
  padding: max(14px, var(--safe-top)) 12px calc(48px + var(--safe-bottom));
}
#chocolat-cast-experience .site-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 6px 2px 20px;
}
#chocolat-cast-experience .brand-lockup{ display: flex; align-items: center; min-width: 0; gap: 10px; }
#chocolat-cast-experience .brand-lockup p,
#chocolat-cast-experience .brand-lockup h1{ margin: 0; }
#chocolat-cast-experience .brand-lockup p{ color: var(--gold); font: 700 8px/1.2 system-ui, sans-serif; letter-spacing: .17em; }
#chocolat-cast-experience .brand-lockup h1{ margin-top: 3px; font: 650 17px/1 Georgia, serif; letter-spacing: .08em; }
#chocolat-cast-experience .brand-emblem{
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(255, 241, 163, .5);
  border-radius: 50%;
  color: var(--gold-bright);
  font: italic 22px/1 Georgia, serif;
  box-shadow: inset 0 0 0 4px rgba(217, 173, 67, .05);
}
#chocolat-cast-experience .demo-chip{
  flex: 0 0 auto;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font-size: 9px;
}
#chocolat-cast-experience .intro{ padding: 18px 2px 20px; }
#chocolat-cast-experience .intro .eyebrow,
#chocolat-cast-experience .section-eyebrow{
  margin: 0 0 8px;
  color: var(--gold);
  font: 750 9px/1 system-ui, sans-serif;
  letter-spacing: .24em;
}
#chocolat-cast-experience .intro h2{
  max-width: 15em;
  margin: 0;
  font: 500 clamp(26px, 8vw, 44px)/1.2 Georgia, "Yu Mincho", serif;
  letter-spacing: -.02em;
}
#chocolat-cast-experience .intro > p:not(.eyebrow){
  max-width: 34em;
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.8;
}
#chocolat-cast-experience .gesture-note{
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 14px;
  color: var(--gold-bright);
  font-size: 10px;
}
#chocolat-cast-experience .gesture-note span{ font-size: 18px; }
#chocolat-cast-experience .cast-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
#chocolat-cast-experience .cast-card{
  position: relative;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #06477f;
  color: #fff;
  text-align: left;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .24);
  cursor: pointer;
  transform: translateY(8px);
  opacity: 0;
  transition: opacity .3s ease, transform .3s ease, border-color .2s ease;
}
#chocolat-cast-experience .cast-card.is-seen{ transform: none; opacity: 1; }
#chocolat-cast-experience .cast-card:active{ transform: scale(.985); }
#chocolat-cast-experience .cast-card:hover{ border-color: rgba(255, 241, 163, .5); }
#chocolat-cast-experience .cast-card-media{
  position: relative;
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #06477f;
}
#chocolat-cast-experience .cast-card-media::after{
  content: "";
  position: absolute;
  inset: 35% 0 0;
  background: linear-gradient(180deg, transparent, rgba(2, 8, 23, .95));
}
#chocolat-cast-experience .cast-card-media img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  transform: scale(1.01);
}
#chocolat-cast-experience .cast-card-media img + img{ opacity: 0; }
#chocolat-cast-experience .cast-card-copy{
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 22px 10px 10px;
}
#chocolat-cast-experience .cast-card-copy strong{ display: block; font: 650 16px/1.35 "Yu Mincho", serif; }
#chocolat-cast-experience .cast-card-copy span{ display: block; margin-top: 3px; color: rgba(255,255,255,.7); font-size: 9px; line-height: 1.4; }
#chocolat-cast-experience .cast-card-badge{
  position: absolute;
  z-index: 3;
  top: 8px;
  left: 8px;
  padding: 5px 7px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  background: rgba(2,8,23,.6);
  backdrop-filter: blur(8px);
  color: var(--gold-bright);
  font-size: 8px;
  letter-spacing: .08em;
}
#chocolat-cast-experience .demo-footer{ padding: 48px 4px 12px; color: var(--quiet); text-align: center; }
#chocolat-cast-experience .demo-footer p{ margin: 0; color: var(--gold); font: 600 11px/1.4 Georgia, serif; letter-spacing: .12em; }
#chocolat-cast-experience .demo-footer small{ display: block; margin-top: 5px; font-size: 9px; }
#chocolat-cast-experience .cast-viewer,
#chocolat-cast-experience .media-lightbox{
  position: fixed;
  z-index: 50;
  inset: 0;
  background: rgba(2, 8, 23, .92);
  overscroll-behavior: contain;
}
#chocolat-cast-experience .viewer-shell{
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  width: 100%;
  height: 100dvh;
  overflow: hidden;
  background: #06477f;
}
#chocolat-cast-experience .viewer-head{
  z-index: 5;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  align-items: center;
  min-height: calc(56px + var(--safe-top));
  padding: var(--safe-top) 8px 0;
  border-bottom: 1px solid var(--line);
  background: rgba(4, 63, 115, .97);
}
#chocolat-cast-experience .icon-button{
  display: grid;
  width: 48px;
  height: 48px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
}
#chocolat-cast-experience .icon-button:active{ background: rgba(255,255,255,.08); transform: scale(.94); }
#chocolat-cast-experience .icon-button svg{ width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; }
#chocolat-cast-experience .viewer-identity{ min-width: 0; text-align: center; }
#chocolat-cast-experience .viewer-kicker{ display: block; color: var(--gold); font-size: 7px; font-weight: 800; letter-spacing: .2em; }
#chocolat-cast-experience .viewer-identity h2{ overflow: hidden; margin: 0; font: 600 28px/1.2 "Yu Mincho", serif; text-overflow: ellipsis; white-space: nowrap; }
#chocolat-cast-experience .cast-glance{
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  min-height: 0;
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(110deg, #07588f, #06477f);
}
#chocolat-cast-experience .cast-glance img{
  width: 72px;
  height: 72px;
  border-radius: 13px;
  object-fit: cover;
  object-position: top center;
}
#chocolat-cast-experience .cast-glance-copy{ min-width: 0; align-self: center; }
#chocolat-cast-experience .cast-glance-copy p{ display: -webkit-box; overflow: hidden; margin: 0; color: var(--ink); font: 500 16px/1.6 "Yu Mincho", serif; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
#chocolat-cast-experience .cast-glance-meta{ display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
#chocolat-cast-experience .cast-glance-meta span{ padding: 4px 7px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); font-size: 8px; }
#chocolat-cast-experience .viewer-tabs{
  z-index: 4;
  display: flex;
  min-height: 48px;
  gap: 3px;
  overflow-x: auto;
  padding: 5px 8px;
  border-bottom: 1px solid var(--line);
  background: rgba(4,63,115,.98);
  scrollbar-width: none;
  scroll-snap-type: x proximity;
}
#chocolat-cast-experience .viewer-tabs::-webkit-scrollbar{ display: none; }
#chocolat-cast-experience .viewer-tab{
  flex: 0 0 auto;
  min-width: 72px;
  min-height: 48px;
  padding: 0 13px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  font-size: 16px;
  font-weight: 750;
  letter-spacing: .05em;
  scroll-snap-align: center;
  cursor: pointer;
}
#chocolat-cast-experience .viewer-tab[aria-selected="true"]{ background: var(--ink); color: #020817; box-shadow: inset 0 -2px var(--cyan); }
#chocolat-cast-experience .viewer-tab:active{ transform: scale(.96); }
#chocolat-cast-experience .viewer-tab-short{ display: none; }
#chocolat-cast-experience .viewer-content{
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scroll-behavior: smooth;
  scrollbar-color: rgba(217,173,67,.45) transparent;
}
#chocolat-cast-experience .viewer-panel{ min-height: 100%; padding: 13px 12px 34px; }
#chocolat-cast-experience .panel-head{ display: flex; align-items: end; justify-content: space-between; gap: 10px; margin: 4px 1px 12px; }
#chocolat-cast-experience .panel-head h3{ margin: 0; font: 550 22px/1.2 "Yu Mincho", serif; }
#chocolat-cast-experience .panel-head span{ color: var(--gold); font-size: 10px; }
#chocolat-cast-experience .panel-lead{ margin: -4px 1px 14px; color: var(--muted); font-size: 10px; line-height: 1.7; }
#chocolat-cast-experience .photo-strip{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(84%, 25rem);
  gap: 9px;
  overflow-x: auto;
  padding: 0 1px 10px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
#chocolat-cast-experience .photo-strip::-webkit-scrollbar{ display: none; }
#chocolat-cast-experience .photo-feature{
  position: relative;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 20px;
  background: #06477f;
  color: white;
  cursor: zoom-in;
  scroll-snap-align: center;
}
#chocolat-cast-experience .photo-feature img{ display: block; width: 100%; height: min(63dvh, 34rem); object-fit: cover; object-position: top center; }
#chocolat-cast-experience .photo-feature span{
  position: absolute;
  right: 10px;
  bottom: 10px;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(2,8,23,.65);
  backdrop-filter: blur(8px);
  font-size: 9px;
}
#chocolat-cast-experience .category-rail{
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 3px -12px 12px;
  padding: 2px 12px 7px;
  scrollbar-width: none;
  scroll-snap-type: x proximity;
}
#chocolat-cast-experience .category-rail::-webkit-scrollbar{ display: none; }
#chocolat-cast-experience .category-chip{
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  font-size: 9px;
  scroll-snap-align: center;
  cursor: pointer;
}
#chocolat-cast-experience .category-chip.is-active{ border-color: var(--cyan); background: rgba(53,214,255,.08); color: var(--cyan); }
#chocolat-cast-experience .photo-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}
#chocolat-cast-experience .photo-tile{
  position: relative;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 13px;
  background: #06477f;
  cursor: zoom-in;
}
#chocolat-cast-experience .photo-tile img{ display: block; width: 100%; aspect-ratio: 3/4; object-fit: cover; object-position: top center; }
#chocolat-cast-experience .photo-tile:active img{ transform: scale(.985); }
#chocolat-cast-experience .load-more{
  display: flex;
  width: 100%;
  min-height: 48px;
  margin-top: 12px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(217,173,67,.45);
  border-radius: 999px;
  background: rgba(217,173,67,.08);
  color: var(--gold-bright);
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
#chocolat-cast-experience .load-more:active{ transform: scale(.985); }
#chocolat-cast-experience .movie-rail{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(82%, 22rem);
  gap: 10px;
  overflow-x: auto;
  padding: 0 1px 12px;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
#chocolat-cast-experience .movie-rail::-webkit-scrollbar{ display: none; }
#chocolat-cast-experience .movie-card{
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--panel-soft);
  scroll-snap-align: center;
}
#chocolat-cast-experience .movie-frame{ position: relative; aspect-ratio: 3/4; background: #06477f; }
#chocolat-cast-experience .movie-frame.is-landscape{ aspect-ratio: 16/10; }
#chocolat-cast-experience .movie-frame img,
#chocolat-cast-experience .movie-frame video{ display: block; width: 100%; height: 100%; object-fit: cover; }
#chocolat-cast-experience .movie-frame video{ background: #000; }
#chocolat-cast-experience .movie-play{
  position: absolute;
  inset: 0;
  display: grid;
  width: 100%;
  place-items: center;
  border: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(2,8,23,.55));
  color: white;
  cursor: pointer;
}
#chocolat-cast-experience .movie-play span{ display: grid; width: 54px; height: 54px; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; background: rgba(2,8,23,.38); font-size: 19px; backdrop-filter: blur(7px); }
#chocolat-cast-experience .movie-copy{ padding: 12px; }
#chocolat-cast-experience .movie-copy strong{ display: block; font: 550 15px/1.4 "Yu Mincho", serif; }
#chocolat-cast-experience .movie-copy small{ display: block; margin-top: 4px; color: var(--muted); font-size: 9px; }
#chocolat-cast-experience .profile-grid,
#chocolat-cast-experience .schedule-list{ display: grid; gap: 8px; }
#chocolat-cast-experience .profile-card,
#chocolat-cast-experience .profile-copy,
#chocolat-cast-experience .question-card,
#chocolat-cast-experience .schedule-row{
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
}
#chocolat-cast-experience .profile-card{ display: grid; grid-template-columns: 1fr 1fr; padding: 6px 13px; }
#chocolat-cast-experience .profile-item{ min-width: 0; padding: 11px 2px; }
#chocolat-cast-experience .profile-item:nth-child(odd){ padding-right: 10px; border-right: 1px solid var(--line); }
#chocolat-cast-experience .profile-item:nth-child(even){ padding-left: 12px; }
#chocolat-cast-experience .profile-item span{ display: block; color: var(--quiet); font-size: 8px; }
#chocolat-cast-experience .profile-item strong{ display: block; margin-top: 4px; font-size: 12px; line-height: 1.45; }
#chocolat-cast-experience .profile-copy{ padding: 14px; }
#chocolat-cast-experience .profile-copy h4{ margin: 0 0 8px; color: var(--gold); font-size: 10px; letter-spacing: .12em; }
#chocolat-cast-experience .profile-copy p{ margin: 0 0 8px; color: var(--muted); font-size: 16px; line-height: 1.85; }
#chocolat-cast-experience .profile-copy p:last-child{ margin-bottom: 0; }
#chocolat-cast-experience .question-card{ padding: 13px 14px; }
#chocolat-cast-experience .question-card dt{ color: var(--gold); font-size: 9px; font-weight: 750; }
#chocolat-cast-experience .question-card dd{ margin: 5px 0 0; font-size: 11px; line-height: 1.7; }
#chocolat-cast-experience .social-row{ display: flex; flex-wrap: wrap; gap: 7px; }
#chocolat-cast-experience .social-link,
#chocolat-cast-experience .full-link{
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0 13px;
  border: 1px solid rgba(217,173,67,.4);
  border-radius: 999px;
  color: var(--gold-bright);
  font-size: 10px;
  text-decoration: none;
}
#chocolat-cast-experience .full-link{ width: 100%; margin-top: 14px; }
#chocolat-cast-experience .schedule-row{
  display: flex;
  min-height: 50px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 13px;
}
#chocolat-cast-experience .schedule-row span{ color: var(--muted); font-size: 11px; }
#chocolat-cast-experience .schedule-row strong{ font-size: 12px; }
#chocolat-cast-experience .schedule-row.is-off strong{ color: #b8c6cf; }
#chocolat-cast-experience .schedule-placeholder{ padding: 18px; border: 1px solid var(--line); border-radius: 16px; color: var(--muted); font-size: 11px; line-height: 1.8; text-align: center; }
#chocolat-cast-experience .viewer-bottom{
  z-index: 5;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  min-height: calc(62px + var(--safe-bottom));
  padding: 7px 8px calc(7px + var(--safe-bottom));
  border-top: 1px solid var(--line);
  background: rgba(4,63,115,.97);
}
#chocolat-cast-experience .viewer-bottom a{
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  font-size: 10px;
  font-weight: 750;
  text-align: center;
  text-decoration: none;
}
#chocolat-cast-experience .viewer-official-link{ border: 1px solid var(--line); color: var(--ink); }
#chocolat-cast-experience .reserve-link{ background: linear-gradient(135deg, #fff1a3, #d9ad43); color: #020817; }
#chocolat-cast-experience .media-lightbox{
  z-index: 80;
  display: block;
  width: 100vw;
  height: 100dvh;
  overflow: hidden;
  background: #020305;
  isolation: isolate;
}
#chocolat-cast-experience .lightbox-head{
  position: absolute;
  z-index: 4;
  top: 0;
  right: 0;
  left: 0;
  display: flex;
  min-height: calc(58px + var(--safe-top));
  align-items: center;
  justify-content: space-between;
  padding: var(--safe-top) 8px 0 14px;
  background: linear-gradient(180deg, rgba(2,3,5,.94), rgba(2,3,5,.62) 68%, transparent);
}
#chocolat-cast-experience .lightbox-head span{ color: var(--gold); font-size: 8px; font-weight: 800; letter-spacing: .18em; }
#chocolat-cast-experience .lightbox-head strong{ margin-left: 8px; font-size: 10px; }
#chocolat-cast-experience .lightbox-stage{
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100vw;
  height: 100dvh;
  overflow: hidden;
  background: #020305;
  touch-action: none;
  cursor: grab;
}
#chocolat-cast-experience .lightbox-stage.is-dragging{ cursor: grabbing; }
#chocolat-cast-experience .lightbox-stage::before,
#chocolat-cast-experience .lightbox-stage::after{
  content: "";
  position: absolute;
  pointer-events: none;
}
#chocolat-cast-experience .lightbox-stage::before{
  inset: -28px;
  background-image: linear-gradient(rgba(2,3,5,.42), rgba(2,3,5,.42)), var(--lightbox-bg-image, none);
  background-position: center;
  background-size: cover;
  filter: blur(22px) saturate(.78);
  opacity: .72;
  transform: scale(1.08);
}
#chocolat-cast-experience .lightbox-stage::after{
  inset: 0;
  background: rgba(2,3,5,.24);
}
#chocolat-cast-experience .lightbox-stage figure{ position: relative; z-index: 2; display: grid; width: 100%; height: 100%; margin: 0; place-items: center; }
#chocolat-cast-experience .lightbox-stage img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  user-select: none;
  -webkit-user-drag: none;
  transform: translate3d(var(--lightbox-drag-x, 0px), 0, 0);
  transition: transform .2s cubic-bezier(.22,.68,.22,1);
  will-change: transform;
}
#chocolat-cast-experience .lightbox-stage.is-dragging img,
#chocolat-cast-experience .lightbox-stage.is-entering img{ transition: none; }
#chocolat-cast-experience .lightbox-stage figcaption{
  position: absolute;
  z-index: 3;
  right: 16px;
  bottom: calc(42px + var(--safe-bottom));
  left: 16px;
  overflow: hidden;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(2,3,5,.58);
  color: rgba(255,255,255,.78);
  font-size: 9px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
}
#chocolat-cast-experience .lightbox-arrow{
  position: absolute;
  z-index: 3;
  top: 50%;
  display: none;
  width: 48px;
  height: 64px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 999px;
  background: rgba(2,8,23,.52);
  color: white;
  transform: translateY(-50%);
  cursor: pointer;
}
#chocolat-cast-experience .lightbox-arrow svg{ width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.5; }
#chocolat-cast-experience .lightbox-prev{ left: 12px; }
#chocolat-cast-experience .lightbox-next{ right: 12px; }
#chocolat-cast-experience .swipe-hint{
  position: absolute;
  z-index: 4;
  right: 0;
  bottom: calc(8px + var(--safe-bottom));
  left: 0;
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: 9px;
  text-align: center;
  pointer-events: none;
}
#chocolat-cast-experience .toast{
  position: fixed;
  z-index: 100;
  right: 18px;
  bottom: calc(18px + var(--safe-bottom));
  left: 18px;
  max-width: 28rem;
  margin: auto;
  padding: 12px 16px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(4,63,115,.96);
  color: var(--ink);
  font-size: 10px;
  text-align: center;
  box-shadow: 0 12px 34px rgba(0,0,0,.42);
}
@media (max-width: 719px){#chocolat-cast-experience .viewer-tabs{
    gap: 0;
    overflow-x: auto;
    padding-right: 4px;
    padding-left: 4px;
    scroll-padding-inline: 4px;
    scroll-snap-type: x proximity;
  }
#chocolat-cast-experience .viewer-tab{
    flex: 0 0 72px;
    min-width: 72px;
    padding-right: 2px;
    padding-left: 2px;
    font-size: 16px;
    letter-spacing: .02em;
    scroll-snap-align: center;
  }
#chocolat-cast-experience .viewer-tab-long{ display: none; }
#chocolat-cast-experience .viewer-tab-short{ display: inline; }
}
@media (min-width: 720px){#chocolat-cast-experience .app-shell{ padding-right: 28px; padding-left: 28px; }
#chocolat-cast-experience .site-head{ padding-top: 12px; }
#chocolat-cast-experience .intro{ padding: 52px 4px 34px; }
#chocolat-cast-experience .cast-grid{ grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
#chocolat-cast-experience .cast-card{ border-radius: 24px; }
#chocolat-cast-experience .cast-card-copy{ padding: 48px 16px 16px; }
#chocolat-cast-experience .cast-card-copy strong{ font-size: 21px; }
#chocolat-cast-experience .cast-card-copy span{ font-size: 10px; }
#chocolat-cast-experience .cast-viewer{ display: grid; padding: 20px; place-items: center; }
#chocolat-cast-experience .viewer-shell{ width: min(1180px, 96vw); height: min(900px, 94dvh); border: 1px solid rgba(255,255,255,.14); border-radius: 26px; box-shadow: 0 30px 90px rgba(0,0,0,.6); }
#chocolat-cast-experience .cast-glance{ grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 10px 18px; }
#chocolat-cast-experience .cast-glance img{ width: 96px; height: 96px; }
#chocolat-cast-experience .cast-glance-copy p{ font-size: 16px; }
#chocolat-cast-experience .viewer-tabs{ justify-content: center; }
#chocolat-cast-experience .viewer-panel{ max-width: 1050px; margin: 0 auto; padding: 22px 24px 48px; }
#chocolat-cast-experience .photo-strip{ grid-auto-columns: min(42%, 25rem); }
#chocolat-cast-experience .photo-grid{ grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
#chocolat-cast-experience .movie-rail{ grid-auto-columns: min(36%, 22rem); }
#chocolat-cast-experience .profile-grid{ grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr); align-items: start; }
#chocolat-cast-experience .lightbox-arrow{ display: grid; }
#chocolat-cast-experience .media-lightbox{ padding: 0; }
#chocolat-cast-experience .swipe-hint{ visibility: hidden; }
}
@media (hover: hover) and (min-width: 720px) and (prefers-reduced-motion: no-preference){#chocolat-cast-experience .cast-card-media img{ transition: opacity .35s ease, transform .35s ease; }
#chocolat-cast-experience .cast-card:hover .cast-card-media img:first-child{ transform: scale(1.025); }
#chocolat-cast-experience .cast-card:hover .cast-card-media img + img{ opacity: 1; }
}
@media (max-width: 340px){#chocolat-cast-experience .app-shell{ padding-right: 8px; padding-left: 8px; }
#chocolat-cast-experience .cast-grid{ gap: 7px; }
#chocolat-cast-experience .cast-card{ border-radius: 15px; }
#chocolat-cast-experience .cast-card-copy{ padding-right: 8px; padding-left: 8px; }
#chocolat-cast-experience .cast-card-copy strong{ font-size: 14px; }
#chocolat-cast-experience .demo-chip{ max-width: 92px; line-height: 1.35; text-align: center; }
#chocolat-cast-experience .cast-glance{ grid-template-columns: minmax(0,1fr); gap: 9px; padding-right: 9px; padding-left: 9px; }
#chocolat-cast-experience .cast-glance img{ width: 62px; height: 72px; }
#chocolat-cast-experience .viewer-panel{ padding-right: 9px; padding-left: 9px; }
#chocolat-cast-experience .category-rail{ margin-right: -9px; margin-left: -9px; padding-right: 9px; padding-left: 9px; }
}
@media (prefers-reduced-motion: reduce){#chocolat-cast-experience *,
#chocolat-cast-experience *::before,
#chocolat-cast-experience *::after{ scroll-behavior: auto !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}
#chocolat-cast-experience .cast-card{background:#07365e}
#chocolat-cast-experience .cast-card-copy{position:static;background:transparent;padding:14px 10px 16px}
#chocolat-cast-experience .cast-card-copy strong{font-size:18px}
#chocolat-cast-experience .cast-card-copy .attendance-today,
#chocolat-cast-experience .cast-card-copy .attendance-next{font-size:14px;line-height:1.5;margin-top:7px;color:#fff2b3;font-weight:650}
#chocolat-cast-experience .cast-card-copy>span:last-child{font-size:16px;line-height:1.6}
#chocolat-cast-experience .cast-card-badge{display:none}
#chocolat-cast-experience .cast-card-media{aspect-ratio:3/4}
#chocolat-cast-experience .viewer-tabs{gap:0;padding:5px 6px}
#chocolat-cast-experience .viewer-tab{flex:1 1 0;min-width:0;min-height:44px;font-size:16px;letter-spacing:0;padding:6px 2px}
#chocolat-cast-experience .viewer-tab-short{white-space:nowrap}
#chocolat-cast-experience .viewer-bottom{grid-template-columns:1fr 2fr;min-height:100px}
#chocolat-cast-experience #reservation-context{grid-column:1/-1;margin:0;font-size:14px;color:#fff}
#chocolat-cast-experience .viewer-bottom a{min-height:44px;font-size:14px;padding:6px}
#chocolat-cast-experience .schedule-panel h3{font-size:22px;margin-top:2px}
#chocolat-cast-experience .schedule-panel p{font-size:16px;line-height:1.6}
#chocolat-cast-experience .clear-date{min-height:44px;border:1px solid #ffd977;background:#07345a;border-radius:8px;color:white;padding:9px 12px;font-size:14px;margin-bottom:14px}
#chocolat-cast-experience .clear-date[aria-pressed=true]{background:#fff0a8;color:#092241}
#chocolat-cast-experience .schedule-choice{display:flex;align-items:center;gap:8px;justify-content:space-between;width:100%;min-height:52px;border:1px solid #43647e;background:#0e3659;color:white;padding:10px;border-radius:8px;font-size:14px;text-align:left}
#chocolat-cast-experience .schedule-choice strong{font-size:15px;white-space:nowrap}
#chocolat-cast-experience .schedule-choice[aria-pressed=true]{background:#245273;border-color:#ffe592;box-shadow:inset 0 0 0 1px #ffe592}
#chocolat-cast-experience .is-unpublished{opacity:.74}
#chocolat-cast-experience .remaining-dates{margin:16px 0}
#chocolat-cast-experience .remaining-dates summary{padding:12px 0;min-height:44px;font-size:15px}
#chocolat-cast-experience .price-summary{padding:4px 0 14px;border-bottom:1px solid #7b8ea2;margin:0 0 16px}
#chocolat-cast-experience .price-summary h3{font-size:22px;margin:0 0 10px}
#chocolat-cast-experience .price-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:16px;margin:8px 0}
#chocolat-cast-experience .price-summary strong{font-size:21px;color:#ffe492;white-space:nowrap}
#chocolat-cast-experience .price-summary p{margin:10px 0 0;font-size:15px;line-height:1.5}
#chocolat-cast-experience .schedule-heading{margin:0 0 4px;font-size:19px}
#chocolat-cast-experience .schedule-intro{margin:0 0 12px}
#chocolat-cast-experience .viewer-panel .full-link{font-size:14px;min-height:44px}
@media(min-width:720px){#chocolat-cast-experience .cast-card-copy{padding:18px}
#chocolat-cast-experience .cast-card-copy strong{font-size:22px}
#chocolat-cast-experience .viewer-tab{flex:0 1 180px}
#chocolat-cast-experience .schedule-panel{max-width:740px}
#chocolat-cast-experience .schedule-panel .schedule-list{gap:10px}
}
@media(max-width:340px){#chocolat-cast-experience .cast-card-copy strong{font-size:16px}
#chocolat-cast-experience .cast-card-copy .attendance-today,
#chocolat-cast-experience .cast-card-copy .attendance-next{font-size:12px}
#chocolat-cast-experience .viewer-tab{font-size:16px}
#chocolat-cast-experience .price-summary strong{font-size:18px}
#chocolat-cast-experience .viewer-bottom a{font-size:13px}
}

body.is-locked{overflow:hidden!important}
#chocolat-cast-experience .cast-viewer{z-index:100000}
#chocolat-cast-experience .media-lightbox{z-index:100010}
#chocolat-cast-experience .toast{z-index:100020}
.chocolat-cast-list-context{display:block;margin-top:8px;font-size:14px;line-height:1.5;color:#ffe7a0}
.chocolat-cast-list-context>span{display:block}
#chocolat-cast-experience h2,#chocolat-cast-experience h3,#chocolat-cast-experience h4{color:var(--ink)}
