/* Sinematik — Premium. Gelap, foto layar penuh bergerak pelan, teks ala subtitle, galeri rol film. */
.tpl-sinema{
  --bg:var(--t-night);--bg2:color-mix(in srgb,var(--t-night) 88%,var(--t-paper));--ink:var(--t-paper);
  --muted:color-mix(in srgb,var(--t-paper) 58%,var(--t-night));--accent:var(--t-metal);--on-accent:var(--t-night);--hair:var(--t-metal);--backdrop:#000;
}
.tpl-sinema .names{font-size:60px;line-height:1.02;letter-spacing:-.01em}
.tpl-sinema .names .amp{font-size:.34em;letter-spacing:.3em;color:var(--hair);margin:.35em 0}
.tpl-sinema.names-caps .names{font-size:36px;letter-spacing:.22em}
.tpl-sinema .eyebrow{color:var(--hair)}
.grain{position:absolute;inset:0;pointer-events:none;opacity:.14;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}

/* sampul: bingkai layar lebar */
.tpl-sinema .cover{background:#000;align-items:end}
.tpl-sinema .cover-photo{inset:0;filter:grayscale(1) contrast(1.05);animation:kenburns 22s ease-in-out infinite alternate}
.tpl-sinema .cover-veil{position:absolute;inset:0;background:linear-gradient(color-mix(in srgb,var(--t-night) 30%,transparent),color-mix(in srgb,var(--t-night) 50%,transparent) 40%,var(--t-night) 92%)}
.tpl-sinema .bar{position:absolute;left:0;right:0;height:7dvh;background:#000;transition:transform 1.2s cubic-bezier(.7,0,.2,1)}
.tpl-sinema .bar-t{top:0}.tpl-sinema .bar-b{bottom:0}
.tpl-sinema .cover-inner{padding-bottom:calc(9dvh + 26px)}
.tpl-sinema .cover-date{letter-spacing:.34em;font-size:12px}
.tpl-sinema .cover{transition:opacity 1.1s ease .5s}
.tpl-sinema.is-open .cover{opacity:0}
.tpl-sinema.is-open .bar-t{transform:translateY(-100%)}.tpl-sinema.is-open .bar-b{transform:translateY(100%)}
@keyframes kenburns{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.14) translate3d(-1.5%,-2%,0)}}

/* adegan pembuka */
.tpl-sinema .hero{overflow:hidden}
.tpl-sinema .hero-photo img{filter:grayscale(1);animation:kenburns 26s ease-in-out infinite alternate}
.tpl-sinema .hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(color-mix(in srgb,var(--t-night) 35%,transparent),color-mix(in srgb,var(--t-night) 55%,transparent) 40%,color-mix(in srgb,var(--t-night) 86%,transparent) 68%,var(--t-night) 97%)}
.tpl-sinema .hero{min-height:100dvh}
.tpl-sinema .hero-text{padding-bottom:110px}
.tpl-sinema .hero-date{letter-spacing:.18em;font-size:13.5px;text-transform:uppercase}
.js .tpl-sinema.is-open .hero .names[data-rv]{letter-spacing:.2em;transition:opacity 1.6s ease .3s,letter-spacing 2.4s cubic-bezier(.2,.7,.2,1) .3s}
.js .tpl-sinema.is-open .hero .names[data-rv].in{letter-spacing:-.01em}

/* adegan berlatar foto + teks ala subtitle */
.tpl-sinema .scene-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(1)}
.tpl-sinema .scene-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(color-mix(in srgb,var(--t-night) 86%,transparent),color-mix(in srgb,var(--t-night) 45%,transparent) 45%,color-mix(in srgb,var(--t-night) 90%,transparent))}
.tpl-sinema .sambutan,.tpl-sinema .closing{overflow:hidden;min-height:92dvh;display:flex;flex-direction:column;justify-content:flex-end}
.tpl-sinema .sambutan>*:not(.scene-bg),.tpl-sinema .closing>*:not(.scene-bg){position:relative}
.tpl-sinema .sambutan .orn{display:none}
.tpl-sinema .quote p{display:inline;font-size:15px;line-height:2.05;padding:.28em .6em;background:color-mix(in srgb,#000 62%,transparent);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.tpl-sinema .quote cite{margin-top:20px}
.tpl-sinema .salam{font-size:17px;letter-spacing:.02em}

/* mempelai: potret besar yang berwarna saat masuk layar */
.tpl-sinema .people{gap:54px;align-items:stretch}
.tpl-sinema .person{text-align:left}
.tpl-sinema .person:last-child{text-align:right}
.tpl-sinema .portrait{width:78%;aspect-ratio:4/5;margin:0 0 -30px;border-radius:0}
.tpl-sinema .person:last-child .portrait{margin-left:auto}
.tpl-sinema .portrait img{filter:grayscale(1);transition:filter 2.2s ease .5s}
.tpl-sinema .person.in .portrait img{filter:grayscale(.15)}
.tpl-sinema .person-nick{position:relative;font-size:54px}
.tpl-sinema .people-amp{display:none}
.tpl-sinema .person-ig{border-radius:3px}

/* acara: blok warna tema */
.tpl-sinema .events{background:var(--t-tone);--muted:color-mix(in srgb,var(--t-paper) 78%,var(--t-tone));--line:color-mix(in srgb,var(--t-paper) 26%,transparent)}
.tpl-sinema .events .eyebrow{color:color-mix(in srgb,var(--t-paper) 80%,var(--t-tone))}
.tpl-sinema .event{border:0;border-top:1px solid var(--line);border-radius:0;padding:30px 4px;text-align:left}
.tpl-sinema .event-addr{margin-inline:0}
.tpl-sinema .event:last-child{border-bottom:1px solid var(--line)}

/* galeri rol film */
.tpl-sinema .gallery{padding-inline:0}
.tpl-sinema .gallery-grid{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:26px 28px;background:#000;scrollbar-width:none;
  background-image:repeating-linear-gradient(90deg,transparent 0 9px,rgba(255,255,255,.34) 9px 19px,transparent 19px 28px),repeating-linear-gradient(90deg,transparent 0 9px,rgba(255,255,255,.34) 9px 19px,transparent 19px 28px);
  background-size:28px 9px,28px 9px;background-position:0 8px,0 calc(100% - 8px);background-repeat:repeat-x}
.tpl-sinema .gallery-grid::-webkit-scrollbar{display:none}
.tpl-sinema .gallery-item,.tpl-sinema .gallery-item:nth-child(3n+1){flex:0 0 66%;aspect-ratio:3/4;scroll-snap-align:center;border-radius:0;grid-column:auto}
.tpl-sinema .gallery-item img{filter:grayscale(.35)}

.tpl-sinema .gift-card,.tpl-sinema .wishes li{background:var(--bg2);border-color:transparent}
.tpl-sinema .closing .names{font-size:44px}
@media (prefers-reduced-motion:reduce){.tpl-sinema .cover-photo,.tpl-sinema .hero-photo img{animation:none}}
