/* The gallery keeps native scrolling; its progress follows actual, unpaused time. */
#highlight-dots button {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#69696e;
  transition:width .4s cubic-bezier(.22,1,.36,1),background .25s ease;
}
#highlight-dots button[aria-current="true"] {
  width:42px;
  background:#5e594d;
}
.carousel-progress {
  display:block;
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:var(--gold-light,#fcf6ba);
  transform:scaleX(var(--slide-progress,0));
  transform-origin:left center;
  opacity:0;
}
#highlight-dots button[aria-current="true"] .carousel-progress { opacity:1; }
.highlight-card > img { transform-origin:center center; }
.highlight-card.is-highlight-active > img { will-change:transform; }
.highlight-copy { backface-visibility:hidden; }
#highlight-play.is-replay { font-size:22px; }

/* Native dialogs retain focus trapping and keyboard dismissal during motion. */
.experience-dialog,.explore-dialog { transform-origin:center center; }
.experience-dialog[data-motion-state="opening"],
.experience-dialog[data-motion-state="closing"],
.explore-dialog[data-motion-state="opening"],
.explore-dialog[data-motion-state="closing"] { will-change:transform,opacity; }
.experience-dialog[data-motion-state="closing"] > *,
.explore-dialog[data-motion-state="closing"] > * { pointer-events:none; }
.experience-dialog[data-motion-state="opening"]::backdrop,
.explore-dialog[data-motion-state="opening"]::backdrop { animation:showcase-backdrop-in .4s both; }
.experience-dialog[data-motion-state="closing"]::backdrop,
.explore-dialog[data-motion-state="closing"]::backdrop { animation:showcase-backdrop-out .3s both; }
@keyframes showcase-backdrop-in { from { opacity:0; } to { opacity:1; } }
@keyframes showcase-backdrop-out { from { opacity:1; } to { opacity:0; } }

.local-inner > .explore-toggle {
  display:none;
  align-items:center;
  justify-content:center;
  gap:9px;
  flex-shrink:0;
  min-height:34px;
  margin-left:auto;
  padding:7px 12px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#d6d6db;
  font-size:12px;
  font-weight:500;
  line-height:1.4;
  transition:background .2s ease,color .2s ease;
}
.local-inner > .explore-toggle:hover { background:#ffffff0c; color:var(--gold-light,#fcf6ba); }
.explore-chevron { position:relative; top:-2px; font-size:18px; line-height:1; }
.explore-toggle[aria-expanded="true"] .explore-chevron { transform:rotate(180deg); top:2px; }
body.nav-floating .local-inner > .explore-toggle { display:inline-flex; }
@media(min-width:761px) {
  body.nav-floating .local-inner .site-nav > a:not(.button) { display:none; }
  body.nav-floating .local-inner { gap:16px; }
  body.nav-floating .local-inner .site-nav { margin-left:0; }
}

.explore-dialog {
  position:fixed;
  inset:10px 0 auto;
  width:min(1044px,calc(100% - 40px));
  max-width:none;
  max-height:calc(100dvh - 20px);
  margin:0 auto;
  padding:27px 32px 32px;
  overflow:auto;
  overscroll-behavior:contain;
  border:1px solid rgba(255,255,255,.13);
  border-radius:30px;
  background:#181819;
  color:var(--paper,#f5f5f7);
  box-shadow:0 24px 90px #0008,0 1px 0 #ffffff08 inset;
}
.explore-dialog::backdrop {
  background:rgba(0,0,0,.56);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.explore-header { display:flex; align-items:center; gap:22px; }
.explore-header h2 {
  flex:1;
  font-size:26px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.035em;
}
.explore-cta { flex-shrink:0; }
.explore-close {
  display:grid;
  place-items:center;
  flex-shrink:0;
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#ffffff10;
  color:#d6d6db;
  font-size:24px;
  line-height:1;
  transition:background .2s,color .2s;
}
.explore-close:hover { color:white; background:#ffffff20; }
.explore-overline {
  margin:38px 0 19px;
  color:#919197;
  font-size:13px;
  font-weight:500;
  letter-spacing:-.01em;
}
.explore-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.explore-experience { display:block; min-width:0; border-radius:18px; }
.explore-experience img {
  width:100%;
  aspect-ratio:1.37;
  height:auto;
  object-fit:cover;
  border-radius:17px;
  transition:filter .3s ease,transform .45s cubic-bezier(.22,1,.36,1);
}
.explore-experience h3 {
  margin-top:14px;
  color:#f5f5f7;
  font-size:16px;
  font-weight:600;
  line-height:1.3;
  letter-spacing:-.025em;
  transition:color .2s;
}
.explore-experience p { margin-top:5px; color:#929298; font-size:11px; line-height:1.4; }
.explore-experience:hover img { transform:translateY(-3px); filter:brightness(1.08); }
.explore-experience:hover h3 { color:var(--gold-light,#fcf6ba); }
.explore-sections {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid #ffffff12;
}
.explore-section {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:37px;
  padding:9px 16px;
  border:1px solid #ffffff12;
  border-radius:999px;
  background:#ffffff05;
  color:#c8c8ce;
  font-size:12px;
  font-weight:500;
  line-height:1.4;
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.explore-section:hover { border-color:var(--gold-line,rgba(191,149,63,.3)); background:#bf953f0d; color:var(--gold-light,#fcf6ba); }

@media(max-width:760px) {
  .local-inner > .explore-toggle { display:inline-flex; order:1; gap:6px; margin-left:0; padding-inline:5px; font-size:11px; }
  .local-inner > .menu-toggle { order:2; }
  .local-inner > .site-nav { order:3; }
  .explore-dialog { width:calc(100% - 20px); padding:23px 22px 25px; border-radius:26px; }
  .explore-header { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:17px; }
  .explore-header h2 { font-size:24px; }
  .explore-close { grid-column:2; grid-row:1; }
  .explore-cta { grid-column:1 / -1; grid-row:2; justify-self:start; }
  .explore-overline { margin-top:25px; font-size:12px; }
  .explore-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px 14px; }
  .explore-experience img { aspect-ratio:1.4; border-radius:14px; }
  .explore-experience h3 { margin-top:10px; font-size:14px; }
  .explore-experience p { font-size:10px; }
  .explore-sections { gap:8px; margin-top:25px; padding-top:22px; }
  .explore-section { min-height:35px; padding:8px 12px; font-size:11px; }
}
@media(max-width:380px) {
  .local-inner > .explore-toggle { font-size:10px; }
  .explore-header h2 { font-size:22px; }
  .explore-dialog { padding-inline:18px; }
}
@media(prefers-reduced-motion:reduce) {
  #highlight-dots button,.explore-toggle,.explore-experience img,.explore-experience h3,.explore-section { transition:none; }
  .experience-dialog::backdrop,.explore-dialog::backdrop { animation:none !important; }
  .highlight-card.is-highlight-active > img { will-change:auto; }
}
