:root{
  --paper:#f1eadb;
  --paper-2:#ded2b5;
  --ink:#171713;
  --ink-soft:#46463d;
  --muted:#777365;
  --deep:#263735;
  --deep-2:#315051;
  --leaf:#83856c;
  --teal:#4c7672;
  --rain:#c7d0c8;
  --ember:#a85a3e;
  --ochre:#c79a45;
  --rose:#b98278;
  --violet-gray:#8d8791;
  --line:rgba(38,55,53,.18);
  --line-dark:rgba(241,234,219,.18);
  --card:#fbf6ea;
  --shadow:0 24px 70px rgba(38,55,53,.2);
  --shadow-soft:0 12px 34px rgba(38,55,53,.13);
  --content-max:1180px;
  --page-gutter:24px;
  --page-gutter-mobile:14px;
  --split-gutter:54px;
  --split-gutter-compact:34px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Source Sans 3",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    linear-gradient(180deg,rgba(241,234,219,.96),rgba(230,221,199,.92)),
    var(--paper);
  color:var(--ink);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
body::selection{background:var(--ember);color:#fff}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.container{width:min(var(--content-max),calc(100% - 2 * var(--page-gutter)));margin:0 auto}
.site-header{
  position:sticky;
  top:0;
  z-index:40;
  border-bottom:1px solid var(--line);
  background:rgba(241,234,219,.92);
  backdrop-filter:blur(16px);
}
.nav{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:.95rem;
}
.brand-mark{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--ember);
  font-size:.76rem;
  letter-spacing:.05em;
}
.brand em{
  font-style:normal;
  color:var(--ink-soft);
  letter-spacing:.03em;
  text-transform:none;
  font-weight:400;
}
.nav-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:26px;
  flex-wrap:wrap;
}
.nav-links a{
  color:var(--ink-soft);
  font-size:.94rem;
  font-weight:500;
  transition:color .18s ease;
}
.nav-links a:hover,.nav-links a.active{color:var(--ember)}
.header-lang{position:relative;flex:0 0 auto}
.header-lang summary{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.28);
  color:var(--ink);
  cursor:pointer;
  list-style:none;
}
.header-lang summary::-webkit-details-marker{display:none}
.header-lang summary::after{
  content:"";
  width:6px;
  height:6px;
  border-right:1px solid currentColor;
  border-bottom:1px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
}
.header-lang[open] summary::after{transform:translateY(2px) rotate(225deg)}
.header-lang-label{
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.7rem;
  font-weight:700;
}
.header-lang-current{
  font-size:.85rem;
  font-weight:700;
  letter-spacing:.05em;
}
.header-lang-menu{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  width:min(320px,calc(100vw - 32px));
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--card);
  box-shadow:var(--shadow-soft);
}
.header-lang-menu a{
  min-height:38px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 10px;
  border-radius:6px;
  color:var(--ink-soft);
  font-size:.9rem;
  line-height:1.2;
}
.header-lang-menu a:hover,.header-lang-menu a.active{background:var(--paper-2);color:var(--ink)}
.header-lang-code{
  min-width:2.3em;
  color:var(--ember);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
}
.hero{
  padding:44px 0 34px;
  border-bottom:1px solid var(--line);
  background:
    linear-gradient(135deg,rgba(241,234,219,.96),rgba(199,154,69,.3) 38%,rgba(76,118,114,.38) 100%),
    linear-gradient(180deg,rgba(143,165,169,.14),rgba(185,130,120,.1)),
    var(--paper);
}
.hero-layout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.68fr);
  grid-template-areas:"heading release" "copy release";
  gap:20px var(--split-gutter);
  align-items:start;
}
.hero-heading{grid-area:heading}
.hero-copy{grid-area:copy}
.hero-release{grid-area:release;justify-self:end;width:100%;max-width:400px}
.eyebrow,.hero-eyebrow,.featured-meta{
  margin:0 0 12px;
  color:var(--ember);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
}
h1,h2,h3,p{overflow-wrap:anywhere}
h1{
  margin:0;
  font-family:"Source Sans 3",system-ui,sans-serif;
  font-size:clamp(2.8rem,7vw,6rem);
  line-height:.9;
  letter-spacing:0;
  font-weight:700;
}
h1 em{
  display:block;
  margin-top:12px;
  color:var(--teal);
  font-style:italic;
  font-size:clamp(1.9rem,4.3vw,3.9rem);
  font-weight:400;
}
.hero-lead{
  max-width:740px;
  margin:0;
  color:var(--ink-soft);
  font-size:clamp(1.04rem,1.65vw,1.28rem);
  line-height:1.7;
}
.hero-stats{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:20px;
}
.hero-stat{
  min-width:116px;
  padding:10px 16px;
  border-top:1px solid var(--line);
}
.hero-stat strong{
  display:block;
  font-size:1.3rem;
  color:var(--deep);
  line-height:1.1;
}
.hero-stat span{
  display:block;
  color:var(--muted);
  font-size:.86rem;
  font-weight:600;
}
.cover-link,.album-cover,.track-cover{
  display:block;
  overflow:hidden;
  border-radius:6px;
  border:1px solid rgba(38,55,53,.2);
  background:var(--card);
  box-shadow:var(--shadow);
}
.cover-link{aspect-ratio:1/1}
.cover-link img,.album-cover img,.track-cover img{width:100%;height:100%;object-fit:cover}
.track-cover{aspect-ratio:1/1}
.release-caption{padding-top:14px}
.release-caption h2{
  margin:0 0 14px;
  color:var(--deep);
  font-size:clamp(1.32rem,2vw,1.8rem);
  line-height:1.12;
}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.btn{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 16px;
  border-radius:6px;
  border:1px solid transparent;
  font-weight:600;
  font-size:.95rem;
  line-height:1;
}
.btn-primary{background:var(--deep);color:var(--paper)}
.btn-primary:hover{background:var(--ember)}
.btn-secondary{border-color:var(--line);color:var(--deep);background:rgba(255,255,255,.34)}
.btn-secondary:hover{border-color:var(--ember);color:var(--ember)}
.section{
  padding:68px 0;
  border-bottom:1px solid var(--line);
  background:
    linear-gradient(180deg,rgba(251,246,234,.58),rgba(241,234,219,.94)),
    var(--paper);
}
.section.dark{
  background:var(--deep);
  color:var(--paper);
  border-bottom:0;
}
.section.rain{background:#cbd5ce}
.section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:24px;
}
.section-head h2{
  margin:0;
  font-family:"Source Sans 3",system-ui,sans-serif;
  font-size:clamp(2rem,4vw,3.4rem);
  font-weight:600;
  line-height:1;
}
.meta{
  color:var(--muted);
  font-size:.86rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.dark .meta{color:rgba(241,234,219,.66)}
.section-intro{
  max-width:760px;
  margin:0 0 28px;
  color:var(--ink-soft);
  font-size:1.08rem;
}
.dark .section-intro{color:rgba(241,234,219,.78)}
.release-grid,.album-grid,.track-grid{
  display:grid;
  grid-template-columns:minmax(280px,.52fr) minmax(0,1fr);
  gap:42px;
  align-items:start;
}
#album .release-grid{
  grid-template-columns:minmax(470px,475px) minmax(0,1fr);
  gap:var(--split-gutter);
}
.release-copy h3,.album-info h1,.track-info h1{
  margin:0 0 16px;
  font-family:"Source Sans 3",system-ui,sans-serif;
  font-size:clamp(2.25rem,5vw,4.8rem);
  line-height:.98;
  font-weight:600;
}
#album .release-copy h3{
  min-height:150.5px;
  margin-bottom:12px;
}
.release-copy p,.album-info .lead,.track-info .lead{
  margin:0;
  color:var(--ink-soft);
  font-size:1.12rem;
  line-height:1.7;
}
#album .release-copy > p:not(.featured-meta){
  min-height:60.92px;
}
.dark .release-copy p{color:rgba(241,234,219,.78)}
.album-meta{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:24px 0;
}
.album-meta div{
  border-top:1px solid var(--line);
  padding-top:10px;
}
.album-meta span{
  display:block;
  color:var(--muted);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.album-meta strong{display:block;color:var(--deep);font-size:1rem;font-weight:600}
.tracklist{
  display:grid;
  border-top:1px solid var(--line);
}
.track-row{
  display:grid;
  grid-template-columns:46px 64px minmax(0,1fr) minmax(90px,auto);
  gap:14px;
  align-items:center;
  min-height:88px;
  padding:16px 0;
  border-bottom:1px solid var(--line);
}
.track-row:hover .track-name{color:var(--ember)}
.track-thumb{
  width:64px;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:6px;
  border:1px solid rgba(38,55,53,.2);
  background:rgba(255,255,255,.12);
}
.track-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.track-row:hover .track-thumb img{transform:scale(1.04)}
.track-num{
  font-weight:600;
  color:var(--ember);
  letter-spacing:.1em;
}
.track-name{
  color:var(--ink);
  font-size:1.12rem;
  font-weight:600;
  line-height:1.2;
}
.dark .track-name{color:var(--paper)}
.track-desc{
  margin-top:4px;
  color:var(--muted);
  font-size:.96rem;
  line-height:1.45;
}
.dark .track-desc{color:rgba(241,234,219,.68)}
.track-meta{
  justify-self:end;
  color:var(--muted);
  font-size:.82rem;
  font-weight:500;
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.track-clock{color:var(--ember)}
.dark .track-meta{color:rgba(241,234,219,.68)}
.prose{
  max-width:870px;
  color:var(--ink-soft);
  font-size:1.08rem;
}
.facts{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.fact{
  border-top:1px solid var(--line);
  padding-top:12px;
}
.fact span{
  display:block;
  color:var(--muted);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.fact strong{display:block;margin-top:3px;color:var(--deep);font-weight:600}
.breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:26px;
  color:var(--muted);
  font-size:.93rem;
}
.breadcrumbs a:hover{color:var(--ember)}
.album-hero,.track-hero{
  padding:52px 0 62px;
  border-bottom:1px solid var(--line);
  background:
    linear-gradient(180deg,rgba(199,154,69,.22) 0%,rgba(241,234,219,.98) 72%),
    linear-gradient(115deg,rgba(76,118,114,.16),rgba(241,234,219,0) 54%),
    var(--paper);
}
.album-hero{padding:30px 0}
.album-hero .breadcrumbs{margin-bottom:18px}
.album-hero .album-grid{grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:var(--split-gutter-compact)}
.album-hero .album-cover{max-width:360px}
.album-hero .album-info h1{font-size:clamp(2rem,4.2vw,3.7rem)}
.album-hero .album-info .lead{font-size:1.04rem}
.album-hero .album-meta{margin:18px 0 16px}
.track-hero .track-grid{
  grid-template-columns:minmax(470px,575px) minmax(0,1fr);
  gap:var(--split-gutter);
}
.track-hero .eyebrow{
  line-height:1.65;
}
.track-hero .track-info h1{
  min-height:150.5px;
  margin-bottom:12px;
}
.track-hero .track-info .lead{
  min-height:3.4em;
}
.track-hero .track-info .album-meta{
  min-height:110px;
  align-items:start;
  line-height:1.65;
}
.spotify-shell{
  margin-top:24px;
  border:1px solid var(--line);
  border-radius:8px;
  overflow:hidden;
  background:#121212;
  box-shadow:var(--shadow-soft);
}
.spotify-meta{
  padding:9px 12px;
  color:rgba(255,255,255,.72);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  background:#191414;
}
#album .release-copy .spotify-shell{
  line-height:1.65;
}
#album .release-copy .spotify-meta{
  min-height:39px;
  display:flex;
  align-items:center;
  padding:0 12px;
  line-height:19px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.spotify-shell iframe{display:block;border:0;width:100%}
.spotify-shell-compact{
  margin-top:16px;
  line-height:1.65;
}
.spotify-shell-compact .spotify-meta{
  min-height:33px;
  display:flex;
  align-items:center;
  padding:0 10px;
  font-size:.72rem;
  line-height:19px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.track-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
.tag{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--ink-soft);
  background:rgba(255,255,255,.28);
  font-size:.84rem;
  font-weight:600;
}
.track-nav{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-top:32px;
  padding-top:20px;
  border-top:1px solid var(--line);
}
.track-nav a{
  max-width:48%;
  color:var(--ink-soft);
  font-weight:600;
}
.track-nav a:hover{color:var(--ember)}
.lyrics-section{
  padding:64px 0;
  border-bottom:1px solid var(--line);
  background:var(--card);
}
.lyrics-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
  align-items:start;
}
.lyric-card{
  border-top:1px solid var(--line);
  padding-top:16px;
}
.lyric-card h2{
  margin:0 0 18px;
  font-family:"Source Sans 3",system-ui,sans-serif;
  font-size:clamp(1.55rem,2.7vw,2.4rem);
  line-height:1.05;
  font-weight:600;
}
.lyrics-lines{
  display:grid;
  gap:20px;
  color:var(--ink-soft);
  font-size:1.04rem;
  line-height:1.72;
}
.lyrics-lines p{
  margin:0;
  white-space:pre-wrap;
}
.lyrics-lines span{
  display:block;
}
.site-footer{
  padding:34px 0;
  background:var(--deep);
  color:rgba(241,234,219,.74);
}
.footer-links,.language-switcher{
  display:flex;
  flex-wrap:wrap;
  gap:12px 20px;
  margin-bottom:16px;
}
.footer-links a,.language-switcher a{color:rgba(241,234,219,.8);font-weight:500}
.footer-links a:hover,.language-switcher a:hover,.language-switcher a.active{color:#fff}
.footer-meta{
  display:grid;
  grid-template-columns:repeat(5,max-content);
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  padding-top:18px;
  border-top:1px solid rgba(241,234,219,.18);
  color:rgba(241,234,219,.62);
  font-size:.92rem;
  line-height:1.7;
}
.footer-separator{justify-self:center;color:rgba(241,234,219,.42)}
.footer-contact{justify-self:end;white-space:nowrap}
.footer-meta a{color:rgba(241,234,219,.84);border-bottom:1px solid transparent}
.footer-meta a:hover{color:#fff;border-color:rgba(241,234,219,.5)}
[lang="th"] body{font-family:"Noto Sans Thai","Source Sans 3",system-ui,sans-serif;line-height:1.78}
[lang="ja"] body,[lang="ko"] body,[lang="zh-Hans"] body{line-height:1.75}
[lang="ja"] h1,[lang="ko"] h1,[lang="zh-Hans"] h1,
[lang="ja"] .section-head h2,[lang="ko"] .section-head h2,[lang="zh-Hans"] .section-head h2,
[lang="ja"] .album-info h1,[lang="ko"] .album-info h1,[lang="zh-Hans"] .album-info h1,
[lang="ja"] .track-info h1,[lang="ko"] .track-info h1,[lang="zh-Hans"] .track-info h1{
  font-family:ui-serif,"Hiragino Mincho ProN","Yu Mincho","Noto Serif CJK JP","Noto Serif CJK KR","Songti SC",serif;
}
@media (max-width:900px){
  .nav{align-items:flex-start;flex-wrap:wrap;padding:14px 0}
  .nav-links{order:3;width:100%;justify-content:flex-start;gap:16px}
  .hero-layout,.release-grid,.album-grid,.track-grid{grid-template-columns:1fr;grid-template-areas:none;gap:30px}
  .album-hero .album-grid{grid-template-columns:1fr;gap:30px}
  .album-hero .album-cover{width:100%;max-width:520px}
  .track-hero .track-grid{grid-template-columns:1fr;gap:30px}
  #album .release-grid{grid-template-columns:1fr;gap:30px}
  #album .release-copy h3,
  #album .release-copy > p:not(.featured-meta){min-height:0}
  .track-hero .track-info h1,
  .track-hero .track-info .lead,
  .track-hero .track-info .album-meta{min-height:0}
  .hero-heading,.hero-copy,.hero-release{grid-area:auto}
  .hero-release{justify-self:start;max-width:520px}
  .footer-meta{
    grid-template-columns:1fr;
    justify-content:stretch;
    gap:5px;
  }
  .footer-separator{display:none}
  .footer-contact{justify-self:start}
  .album-meta,.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  body{font-size:16px}
  .container{width:min(100% - 2 * var(--page-gutter-mobile),var(--content-max))}
  .hero{padding:28px 0 26px}
  .section,.album-hero,.track-hero{padding:44px 0}
  .brand{font-size:.82rem;letter-spacing:.09em}
  .brand-mark{width:34px;height:34px}
  .nav-links a{font-size:.9rem}
  .header-lang{margin-left:auto}
  .header-lang-label{display:none}
  h1{font-size:clamp(2.35rem,12vw,3.55rem)}
  h1 em{font-size:clamp(1.55rem,8vw,2.45rem)}
  .hero-layout{gap:16px}
  .hero-copy{order:2}
  .hero-release{order:3;max-width:none}
  .hero .release-caption{display:none}
  .hero-lead{
    font-size:1rem;
    line-height:1.55;
  }
  .hero-stats{margin-top:14px;gap:8px}
  .hero-stat{min-width:0;flex:1 1 0;padding:8px 6px}
  .hero-stat strong{font-size:.95rem;white-space:nowrap}
  .hero-stat span{font-size:.74rem}
  .section-head{display:block}
  .section-head .meta{margin-top:10px}
  .album-meta,.facts{grid-template-columns:1fr}
  .album-hero{padding:30px 0}
  .album-hero .album-grid{
    grid-template-columns:minmax(0,1fr);
    gap:22px;
    align-items:start;
  }
  .album-hero .album-cover{
    max-width:none;
    width:100%;
    box-shadow:var(--shadow-soft);
  }
  .album-hero .album-info{display:block}
  .album-hero .album-info > .eyebrow,
  .album-hero .album-info > h1,
  .album-hero .album-info > .lead{grid-column:auto}
  .album-hero .album-info > .eyebrow{margin-bottom:4px}
  .album-hero .album-info > h1{
    margin-bottom:8px;
    font-size:clamp(1.8rem,8vw,2.25rem);
  }
  .album-hero .album-info > .lead{
    font-size:.98rem;
    line-height:1.5;
    display:block;
    overflow:visible;
  }
  .album-hero .album-info > .album-meta{display:none}
  .album-hero #listen,
  .album-hero .actions{grid-column:auto}
  .album-hero .spotify-shell{margin-top:8px}
  .album-hero .actions{margin-top:8px}
  .track-row{grid-template-columns:34px 52px minmax(0,1fr);gap:10px;align-items:start;min-height:78px}
  .track-thumb{width:52px}
  .track-meta{grid-column:3;justify-self:start}
  .track-nav{display:grid}
  .track-nav a{max-width:none}
  .btn{width:100%}
  .lyrics-section{padding:42px 0}
  .lyrics-grid{grid-template-columns:1fr;gap:32px}
  .lyrics-lines{font-size:1rem;line-height:1.65}
}


/* v120 — Sương Muộn film collection */
.film-feature,.film-section{
  position:relative;
  overflow:hidden;
  padding:72px 0;
  border-bottom:1px solid var(--line-dark);
  background:
    radial-gradient(circle at 84% 10%,rgba(199,154,69,.2),transparent 34%),
    radial-gradient(circle at 12% 88%,rgba(76,118,114,.34),transparent 38%),
    linear-gradient(135deg,#172421 0%,var(--deep) 50%,#1d302f 100%);
  color:var(--paper);
}
.film-feature::before,.film-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.22;
  background:repeating-linear-gradient(108deg,transparent 0 38px,rgba(255,255,255,.025) 39px 40px);
}
.film-feature .container,.film-section .container{position:relative;z-index:1}
.film-head .meta{color:rgba(241,234,219,.64)}
.film-feature-grid,.track-film-layout{
  display:grid;
  grid-template-columns:minmax(280px,390px) minmax(0,1fr);
  gap:clamp(34px,6vw,78px);
  align-items:center;
}
.film-player-frame{
  width:100%;
  max-width:420px;
  aspect-ratio:9/16;
  overflow:hidden;
  border:1px solid rgba(241,234,219,.24);
  border-radius:10px;
  background:#0b1110;
  box-shadow:0 36px 100px rgba(0,0,0,.46),0 0 0 8px rgba(255,255,255,.025);
}
.film-player-frame video{display:block;width:100%;height:100%;object-fit:cover;background:#0b1110}
.film-player-featured{justify-self:center}
.film-feature-copy h3,.track-film-copy h3{
  margin:0 0 18px;
  max-width:800px;
  color:var(--paper);
  font-size:clamp(2.35rem,5vw,5.1rem);
  line-height:.94;
  font-weight:600;
}
.film-feature-copy>p:not(.eyebrow),.track-film-copy>p:not(.eyebrow){
  max-width:720px;
  margin:0;
  color:rgba(241,234,219,.76);
  font-size:1.1rem;
}
.film-feature .eyebrow,.film-section .eyebrow{color:#d6a858}
.film-link-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:30px;
}
.film-link{
  min-height:78px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  grid-template-rows:auto auto;
  align-content:center;
  gap:0 10px;
  padding:12px;
  border:1px solid rgba(241,234,219,.15);
  border-radius:8px;
  background:rgba(255,255,255,.035);
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.film-link:hover{transform:translateY(-2px);border-color:rgba(214,168,88,.7);background:rgba(255,255,255,.07)}
.film-link>span{grid-row:1/3;color:#d6a858;font-weight:700;letter-spacing:.08em}
.film-link strong{align-self:end;color:var(--paper);font-size:.94rem;line-height:1.15}
.film-link em{align-self:start;color:rgba(241,234,219,.55);font-size:.72rem;font-style:normal;text-transform:uppercase;letter-spacing:.08em}
.film-sequence{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:30px;
  color:rgba(241,234,219,.62);
  font-size:.84rem;
  letter-spacing:.18em;
}
.film-sequence span:first-child{color:#d6a858;font-size:1.5rem;font-weight:700}
.film-section .btn-primary{background:#d6a858;color:#172421}
.film-section .btn-primary:hover{background:var(--paper)}
.film-section .btn-secondary{border-color:rgba(241,234,219,.22);color:var(--paper);background:rgba(255,255,255,.04)}
.film-section .btn-secondary:hover{border-color:#d6a858;color:#d6a858}
@media (max-width:980px){
  .film-feature-grid,.track-film-layout{grid-template-columns:minmax(230px,330px) minmax(0,1fr);gap:34px}
  .film-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .film-feature,.film-section{padding:48px 0}
  .film-feature-grid,.track-film-layout{grid-template-columns:1fr;align-items:start}
  .film-player-frame{max-width:390px;justify-self:center}
  .film-feature-copy h3,.track-film-copy h3{font-size:clamp(2.2rem,11vw,3.5rem)}
}
@media (max-width:460px){
  .film-link-grid{grid-template-columns:1fr}
  .film-link{min-height:68px}
}
@media (prefers-reduced-motion:reduce){
  .film-link{transition:none}
  .film-link:hover{transform:none}
}


/* v121 — first-class film navigation */
body:has(#films:target) .nav-links a.active,
body:has(#film:target) .nav-links a.active{color:var(--ink-soft)}
body:has(#films:target) .nav-films,
body:has(#film:target) .nav-films{color:var(--ember)}
.film-nav{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:20px;
  align-items:center;
  margin-top:48px;
  padding-top:24px;
  border-top:1px solid rgba(241,234,219,.16);
}
.film-nav-link{
  display:flex;
  flex-direction:column;
  gap:2px;
  color:rgba(241,234,219,.78);
  line-height:1.3;
}
.film-nav-link span{
  color:#d6a858;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.film-nav-link strong{font-size:1rem;font-weight:600}
.film-nav-link:hover strong{color:#fff}
.film-nav-next{text-align:right;align-items:flex-end}
.film-nav-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border:1px solid rgba(241,234,219,.2);
  border-radius:999px;
  color:rgba(241,234,219,.74);
  font-size:.84rem;
  font-weight:600;
}
.film-nav-all:hover{border-color:#d6a858;color:#d6a858}
@media (max-width:640px){
  .film-nav{grid-template-columns:1fr 1fr;gap:16px 12px;margin-top:36px}
  .film-nav-all{grid-column:1/-1;grid-row:2;justify-self:center}
  .film-nav-spacer{min-height:1px}
  .film-nav-link strong{font-size:.9rem}
}


/* v122 — align desktop film navigation with the film frame */
@media (min-width:641px){
  .film-section .film-nav{margin-top:0}
}

/* v124-heading — lighter home hero title */
.hero-heading > h1{
  font-weight:500;
}

/* v125-heading — restrained shared heading rhythm */
.hero-heading > h1{
  font-size:clamp(3.5rem,6vw,5.25rem);
  font-weight:450;
  line-height:.96;
}
.section-head h2{
  font-size:clamp(2rem,3vw,3rem);
  font-weight:500;
  line-height:1.04;
}
.release-copy h3{
  font-size:clamp(2.25rem,3.4vw,3.5rem);
  font-weight:500;
  line-height:1.02;
}
.album-info h1,
.track-info h1{
  font-size:clamp(2.25rem,4vw,3.7rem);
  font-weight:500;
  line-height:1.02;
}
.release-caption h2{
  font-weight:500;
}
@media(max-width:640px){
  .hero-heading > h1{
    font-size:clamp(2.5rem,12vw,3.55rem);
  }
}

/* Sương Muộn — rain-washed jade instead of near-black green. */
:root {
  --paper: #f6f0e4;
  --paper-2: #e8dec9;
  --line: rgba(38, 60, 56, 0.18);
  --line-dark: rgba(38, 60, 56, 0.18);
}

body {
  background: linear-gradient(180deg, #faf6ed, #f2eadb) !important;
}

.site-header {
  background: rgba(246, 240, 228, 0.94) !important;
}

.section.dark,
.film-feature,
.film-section {
  border-bottom-color: rgba(38, 60, 56, 0.18) !important;
  background:
    radial-gradient(circle at 84% 10%, rgba(199, 154, 69, 0.16), transparent 35%),
    radial-gradient(circle at 12% 88%, rgba(76, 118, 114, 0.18), transparent 40%),
    linear-gradient(135deg, #dce4de, #c6d2c7 56%, #a9bbc4) !important;
  color: #213330 !important;
}

.dark .meta,
.dark .section-intro,
.dark .release-copy p,
.dark .track-desc,
.dark .track-meta,
.film-head .meta,
.film-feature-copy > p:not(.eyebrow),
.track-film-copy > p:not(.eyebrow),
.film-link em,
.film-sequence,
.film-nav-link,
.film-nav-all {
  color: rgba(33, 51, 48, 0.72) !important;
}

.dark .track-name,
.film-feature-copy h3,
.track-film-copy h3,
.film-link strong,
.film-nav-link strong {
  color: #213330 !important;
}

.tracklist,
.track-row,
.film-nav {
  border-color: rgba(38, 60, 56, 0.18) !important;
}

.dark .track-thumb,
.film-link {
  border-color: rgba(38, 60, 56, 0.20) !important;
  background: rgba(255, 255, 255, 0.30) !important;
}

.film-link:hover {
  border-color: rgba(117, 84, 43, 0.48) !important;
  background: rgba(255, 255, 255, 0.55) !important;
}

.film-feature .eyebrow,
.film-section .eyebrow,
.film-link > span,
.film-sequence span:first-child,
.film-nav-link span {
  color: #88513f !important;
}

.film-section .btn-primary {
  border-color: #48635e !important;
  background: #48635e !important;
  color: #fffaf0 !important;
}

.film-section .btn-secondary {
  border-color: rgba(33, 51, 48, 0.34) !important;
  background: rgba(255, 255, 255, 0.28) !important;
  color: #213330 !important;
}

.site-footer,
.site-footer.footer-minimal {
  border-top: 1px solid rgba(33, 51, 48, 0.18) !important;
  background: #a9bbc4 !important;
  color: #213330 !important;
}

.site-footer .footer-meta,
.site-footer .footer-meta a,
.site-footer .footer-separator {
  color: inherit !important;
}

.site-footer .footer-meta a:hover,
.site-footer .footer-meta a:focus-visible {
  color: #111d1b !important;
}
