/* Design DNA: immersive editorial composition, adapted to Lu's own identity. */
:root{
  --cinema-paper:#f6f3ee;--cinema-ink:#342825;--cinema-accent:#cd9d56;
  --cinema-terracotta:#884d49;--cinema-ease:cubic-bezier(.22,1,.36,1);
  --cinema-gutter:6.5vw;--cinema-rule:rgba(246,243,238,.23);
  --cinema-shadow:0 1px 3px rgba(0,0,0,.45),0 2px 18px rgba(0,0,0,.24);
}
.film-stage{background:#16100e}
.experience .film-media,.experience.showing-chapter .film-media{
  inset:0;height:100%;min-height:0;transition:none;
}
.film-media video,.film-media .film-poster,.film-canvas{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
}
.film-canvas{z-index:1;opacity:0;pointer-events:none}
.has-webgl .film-canvas{opacity:1}
.has-webgl video{opacity:0}
.film-media .film-poster{z-index:2;transition:none}
.film-shade,.film-vignette{display:none}
.film-stage:after{
  content:'';position:absolute;inset:var(--header-height) 3.5vw 30px;
  border-left:1px solid var(--cinema-rule);border-bottom:1px solid var(--cinema-rule);
  z-index:0;pointer-events:none;
}
.site-header{transition:height .45s var(--cinema-ease),background .6s var(--cinema-ease),color .6s,border-color .6s}
.site-header .brand img{transition:width .45s var(--cinema-ease),height .45s var(--cinema-ease)}
.site-header .brand span{max-height:14px;opacity:1;transition:opacity .25s,max-height .45s var(--cinema-ease)}
.site-header .brand{transition:gap .45s var(--cinema-ease)}
.site-header.is-compact{height:64px}
.site-header.is-compact .brand{gap:0}
.site-header.is-compact .brand img{width:44px;height:30px}
.site-header.is-compact .brand span{opacity:0;max-height:0;overflow:hidden}
.film-stage:after{transition:top .45s var(--cinema-ease)}
.site-header.is-compact~main .film-stage:after{top:64px}
.is-in-film .site-header{
  background:transparent;backdrop-filter:none;color:var(--cinema-paper);
  border-bottom-color:var(--cinema-rule);text-shadow:var(--cinema-shadow);
}
.is-in-film .brand img{filter:brightness(0) invert(1)}
.is-in-film .brand span{color:var(--cinema-paper)}
.is-in-film .desktop-nav a:after{background:var(--cinema-accent)}
.is-in-film .menu-lines,.is-in-film .menu-lines:after{background:var(--cinema-paper)}
.is-in-film .bag-count{background:var(--cinema-terracotta);text-shadow:none}
.hero-copy,.outro-copy{
  left:var(--cinema-gutter);top:auto;bottom:23%;width:48%;max-width:650px;
  color:var(--cinema-paper);text-shadow:var(--cinema-shadow);z-index:2;
}
.hero-copy h1{font-size:clamp(64px,7.1vw,112px);line-height:.94;letter-spacing:-.035em}
.hero-copy .eyebrow{font-size:12px;letter-spacing:.16em;margin-bottom:25px}
.hero-copy .hero-caption{font-size:16px;line-height:1.6;color:var(--cinema-paper);margin-top:22px}
.hero-copy .text-link,.outro-copy .text-link{font-size:12px;margin-top:24px;padding:12px 0}
.scroll-cue{left:var(--cinema-gutter);bottom:49px;text-shadow:var(--cinema-shadow);z-index:2}
.hero-edition{right:6.5%;bottom:54px;z-index:2;text-shadow:var(--cinema-shadow)}
.chapter-panel,.chapter-panel.on-right{
  top:auto;bottom:10%;left:var(--cinema-gutter);right:auto;
  width:min(30vw,440px);padding:0;background:none;border:0;box-shadow:none;
  transform:translate3d(0,var(--panel-offset,0px),0);
  color:var(--cinema-paper);z-index:2;text-shadow:var(--cinema-shadow);
}
.chapter-panel.on-right{left:auto;right:var(--cinema-gutter)}
.chapter-panel .chapter-label{gap:17px;margin-bottom:14px}
.chapter-label .chapter-number{color:var(--cinema-paper);font-size:16px;opacity:.8}
.chapter-label .eyebrow{font-size:12px;letter-spacing:.16em}
.chapter-panel h2{font-size:clamp(64px,6vw,92px);line-height:.98;margin:0 0 17px;letter-spacing:-.025em}
.chapter-panel .chapter-description{font-size:16px;line-height:1.65;color:var(--cinema-paper);margin-bottom:25px;max-width:310px}
.chapter-cards{gap:12px}
.chapter-card img{height:auto;aspect-ratio:1.1;object-fit:cover;transition:transform .8s var(--cinema-ease);border:1px solid rgba(246,243,238,.25)}
.chapter-card:hover img{transform:scale(1.045)}
.chapter-card span{color:var(--cinema-paper);font-size:12px;line-height:1.45;padding-top:9px}
.chapter-panel .text-link{font-size:12px;margin-top:20px;padding:12px 0;min-height:44px}
.chapter-panel .text-link:after,.hero-copy .text-link:after{content:none}
.film-pagination{right:calc(3.5vw - 14px);gap:6px;z-index:4}
.film-pagination button{width:28px;min-height:30px}
.film-pagination span{background:rgba(246,243,238,.55);box-shadow:0 1px 4px #0004}
.film-pagination button.is-active span{background:var(--cinema-accent);box-shadow:0 0 0 4px rgba(246,243,238,.15)}
.film-progress{height:1px;z-index:4}
.outro-copy{bottom:26%;max-width:48%}
.outro-copy h2{font-size:clamp(64px,6vw,98px);line-height:.97}
.preloader-mark{animation:logo-arrive .7s var(--cinema-ease) both}
.preloader .logo-spark{animation:spark-spin 3s linear infinite}
@keyframes logo-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:1100px) and (min-width:761px){
  .chapter-panel,.chapter-panel.on-right{width:32%;bottom:9%;padding:0}
  .chapter-panel h2{font-size:64px}.chapter-panel .chapter-description{font-size:14px}
  .chapter-card span{font-size:12px}.chapter-cards{gap:9px}
}
@media(max-width:760px){
  :root{--cinema-gutter:7%}
  .film-stage:after{inset:var(--header-height) 4% 22px}
  .is-in-film .site-header{background:transparent}
  .site-header.is-compact{height:58px}
  .site-header.is-compact .brand img{width:40px;height:28px}
  .site-header.is-compact~main .film-stage:after{top:58px}
  .hero-copy{left:7%;bottom:22%;width:86%;max-width:none;top:auto}
  .hero-copy h1{font-size:clamp(58px,16vw,92px);line-height:.96}
  .hero-copy .eyebrow{font-size:12px;letter-spacing:.1em;max-width:260px;line-height:1.6}
  .hero-copy .hero-caption{display:none}
  .hero-copy .text-link{font-size:12px;margin-top:25px}
  .chapter-panel,.chapter-panel.on-right{
    left:7%;right:auto;bottom:6.5%;top:auto;width:86%;padding:0;
    transform:translate3d(0,var(--panel-offset,0px),0);
  }
  /* Move information, never shorten or stretch the background film. */
  #chapter-colares,#chapter-pulseiras{top:calc(var(--header-height) + 24px);bottom:auto}
  .chapter-panel h2{font-size:clamp(48px,13vw,64px);line-height:1;margin-bottom:15px}
  .chapter-panel .chapter-label{margin-bottom:9px;gap:12px}
  .chapter-label .eyebrow{font-size:12px;letter-spacing:.11em}
  .chapter-label .chapter-number{font-size:14px}
  .chapter-panel .chapter-description{display:none}
  .chapter-cards{gap:10px}
  .chapter-card img{height:auto;aspect-ratio:1.35}
  .chapter-card span{font-size:12px;line-height:1.3;padding-top:7px}
  .chapter-panel .text-link{font-size:12px;margin-top:10px;padding:10px 0;min-height:42px}
  .film-pagination{right:0;top:49%;gap:2px}
  .film-pagination button{min-height:28px}
  .hero-edition{display:none}
  .scroll-cue{font-size:12px;letter-spacing:.12em;bottom:40px}
  .outro-copy{left:7%;max-width:86%;width:86%;bottom:23%;top:auto}
  .outro-copy h2{font-size:64px}
}
@media(max-height:700px) and (max-width:760px){
  .chapter-panel h2{font-size:44px;margin-bottom:10px}
  .chapter-card img{aspect-ratio:1.65}
  .chapter-panel .chapter-label{margin-bottom:6px}
  .chapter-panel .text-link{margin-top:5px}
  #chapter-colares,#chapter-pulseiras{top:calc(var(--header-height) + 16px)}
  .hero-copy h1{font-size:58px}.hero-copy .eyebrow{margin-bottom:15px}
}
@media(max-height:620px) and (min-width:761px){
  .chapter-panel,.chapter-panel.on-right{bottom:8%;top:auto;padding:0}
  .chapter-panel h2{font-size:52px}.chapter-panel .chapter-description{display:none}
  .chapter-card img{aspect-ratio:1.6}.hero-copy{top:auto;bottom:22%}
}
@media(prefers-reduced-motion:reduce){.preloader-mark{animation:none}.film-media .film-poster{transition:none}}
