/* Daylight / Afterglow chapter: reference motion, Austin 360 landing-page type. */
.a360-lscroll {
  --lscroll-progress: 1;
  --lscroll-opening: 1;
  --lscroll-inset: 0%;
  --lscroll-radius: 0px;
  --lscroll-scale: 1;
  --lscroll-night-media: 1;
  --lscroll-day-opacity: 0;
  --lscroll-day-shift: 0em;
  --lscroll-day-blur: 0px;
  --lscroll-night-opacity: 1;
  --lscroll-night-shift: 0em;
  --lscroll-night-blur: 0px;
  --lscroll-night-space: -.018em;
  --lscroll-caption: 1;
  --lscroll-gutter: clamp(24px, 4vw, 64px);
  position: relative;
  color: var(--a360-paper, #fbfaf6);
  background: var(--landing-paper, #fbfaf6);
  scroll-margin-top: 0 !important;
}
.a360-lscroll-frame {
  position: relative;
  height: 100svh;
  min-height: 560px;
  overflow: clip;
  isolation: isolate;
  background: var(--a360-navy, #071827);
}
.a360-lscroll[data-motion="scroll"] { height: 260svh; }
.a360-lscroll[data-motion="scroll"] .a360-lscroll-frame { position: sticky; top: 0; }
.a360-lscroll-picture, .a360-lscroll-media, .a360-lscroll-shade {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.a360-lscroll-picture {
  clip-path: inset(var(--lscroll-inset) round var(--lscroll-radius));
  background: var(--a360-navy, #071827);
}
.a360-lscroll-media {
  transform: scale(var(--lscroll-scale));
  transform-origin: center;
}
.a360-lscroll[data-motion="scroll"] .a360-lscroll-media { will-change: transform; }
.a360-landing .a360-lscroll-media > :is(img,video),
.a360-landing .a360-lscroll-media > picture,
.a360-landing .a360-lscroll-media > picture > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: var(--lscroll-object-position, 50% 50%);
}
.a360-lscroll-night { opacity: var(--lscroll-night-media); }
.a360-lscroll-media > video { opacity: 0; transition: opacity .45s ease; }
.a360-lscroll.is-scene-video-ready .a360-lscroll-media > video { opacity: 1; }
.a360-lscroll-shade {
  background: linear-gradient(180deg, #07182755, #07182716 35%, #07182755 74%, #071827a6), linear-gradient(90deg, #07182712, #07182712);
}
.a360-lscroll-topline, .a360-lscroll-bottom {
  position: absolute;
  inset-inline: var(--lscroll-gutter);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  z-index: 2;
}
.a360-lscroll-topline { top: clamp(34px, 5svh, 64px); }
.a360-lscroll-topline .a360-landing-kicker { margin: 0; color: #e8d29e; font-size: 10px; }
.a360-lscroll-topline > span { color: #ffffffc9; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.a360-lscroll-bottom { bottom: clamp(28px, 4svh, 48px); }
.a360-lscroll-bottom a { min-height: 44px; }

/* The film opens like a floating screen, then its surround slips away. */
.a360-video-landing #video-in-every-light .a360-lscroll-frame { background: var(--landing-stone, #eeeae2); }
.a360-video-landing #video-in-every-light .a360-lscroll-frame::before {
  content: '';
  position: absolute;
  inset: var(--lscroll-inset);
  border-radius: var(--lscroll-radius);
  box-shadow: 0 24px 65px -12px #11283965;
  opacity: calc(1 - var(--lscroll-opening));
  pointer-events: none;
}
.a360-video-landing #video-in-every-light :is(.a360-lscroll-topline,.a360-lscroll-bottom) { inset-inline: calc(var(--lscroll-gutter) + var(--lscroll-inset)); }
.a360-video-landing #video-in-every-light .a360-lscroll-topline { top: calc(clamp(34px, 5svh, 64px) + var(--lscroll-inset)); }
.a360-video-landing #video-in-every-light .a360-lscroll-bottom { bottom: calc(clamp(28px, 4svh, 48px) + var(--lscroll-inset)); }
.a360-lscroll-story {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 105px var(--lscroll-gutter) 115px;
  pointer-events: none;
}
.a360-lscroll-words {
  position: relative;
  width: 100%;
  height: 1.3em;
  color: #fbfaf6;
  font: 400 clamp(110px, 15.2vw, 230px)/1.05 var(--a360-serif);
  letter-spacing: -.045em;
  text-align: center;
  text-shadow: 0 2px 35px #07182726;
}
.a360-lscroll-words > span { position: absolute; inset: 0; display: block; white-space: nowrap; }
.a360-lscroll-day-word {
  opacity: var(--lscroll-day-opacity);
  transform: translate3d(0, var(--lscroll-day-shift), 0);
  filter: blur(var(--lscroll-day-blur));
}
.a360-lscroll-night-word {
  color: #e1c991;
  font-style: italic;
  letter-spacing: var(--lscroll-night-space);
  opacity: var(--lscroll-night-opacity);
  transform: translate3d(0, var(--lscroll-night-shift), 0);
  filter: blur(var(--lscroll-night-blur));
}
.a360-landing .a360-lscroll-caption {
  max-width: 650px;
  margin: 0;
  color: #ffffffe6;
  font: 400 14px/1.7 var(--a360-sans);
  text-align: center;
  opacity: var(--lscroll-caption);
  transform: translate3d(0, calc((1 - var(--lscroll-caption)) * 22px), 0);
}
.a360-lscroll-caption em { padding-left: 8px; font: italic 400 26px/1.5 var(--a360-serif); }
.a360-lscroll-progress { position: absolute; inset: auto 0 0; z-index: 3; height: 2px; background: #ffffff1a; }
.a360-lscroll-progress > span { display: block; height: 100%; background: #c8a96a; transform: scaleX(var(--lscroll-progress)); transform-origin: left; }
.a360-lscroll-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Unenhanced / reduced-motion chapters are one complete scene, never a gap. */
.a360-lscroll:not([data-motion="scroll"]) .a360-lscroll-media { transform: none; }
.a360-lscroll:not([data-motion="scroll"]) .a360-lscroll-progress { display: none; }
.a360-lscroll:not([data-motion="scroll"]) .a360-lscroll-media > video { display: none; }
.a360-lscroll[data-motion="flow"] .a360-lscroll-frame { height: 100svh; min-height: 380px; }
@media (max-width: 760px) {
  .a360-lscroll-topline { align-items: flex-start; gap: 18px; }
  .a360-lscroll-topline .a360-landing-kicker { max-width: 210px; font-size: 9px; }
  .a360-lscroll-topline > span { max-width: 100px; font-size: 9px; text-align: right; }
  .a360-lscroll-words { font-size: clamp(64px, 17.2vw, 125px); }
  .a360-lscroll-caption em { display: block; padding-left: 0; font-size: 24px; }
  .a360-landing .a360-lscroll-caption { font-size: 12px; }
  .a360-lscroll-bottom { bottom: 24px; }
  .a360-lscroll-bottom .a360-btn { font-size: 10px; padding-inline: 22px; }
}
@media (max-height: 560px) and (orientation: landscape) {
  .a360-lscroll-frame { height: 100svh; min-height: 380px; }
  .a360-lscroll-words { font-size: clamp(64px, 12vw, 135px); }
  .a360-lscroll-story { padding-block: 80px 100px; }
  .a360-lscroll-topline { top: 24px; }
  .a360-lscroll-bottom { bottom: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  .a360-lscroll-media > video { transition: none; }
  .a360-lscroll-day-word, .a360-lscroll-night-word { filter: none; }
}
