/* ==========================================================
   DInvite — Tema "Dayak Enggang" (Adat Premium)
   Kayu ulin gelap, gading, merah tanah & manik-manik Kalimantan.
   Ornamen hampir nyata (kayu berukir, perisai talawang berlukis, bulu
   enggang berserat, manik kaca berkilau) dirender sebagai WebP.
   Pembuka: daun pintu kayu berukir berayun terbuka; perisai & mahkota
   bulu miring halus mengikuti jari/kursor dengan kilau cahaya (relief.js),
   untaian manik, dan bulu enggang yang melayang turun.
   Gerak dimatikan otomatis bila perangkat meminta gerak minimal.
   ========================================================== */
.t-dayak {
    --bg: #17100b; --bg-2: #1e150e; --card: #231910; --ink: #f3e7d3; --muted: #c9b597;
    --accent: #e2b048; --accent-2: #f3e7d3; --on-accent: #17100b; --line: rgba(233,214,180,.24);
    --red: #c2412d;
    --hero-rgb: 23,16,11; --tint-a: .86; --hero-ink: #f3e7d3;
    --wood: url(../../img/themes/dayak/ulin.webp) 0 0 / 320px 320px;
    --pattern: url(../../img/themes/dayak/pola.svg) 0 0 / 80px 80px;
    --beads: url(../../img/themes/dayak/pitamanik.webp) 0 50% / auto 100% repeat-x;
    --am-seam: linear-gradient(#e9dcc3, #8a6a44, #e9dcc3);
    color-scheme: dark;
}
@keyframes dyReveal { from { opacity: 0; filter: blur(10px); transform: translateY(12px); letter-spacing: .08em; } to { opacity: 1; filter: blur(0); transform: none; } }
@keyframes dyRise { from { opacity: 0; transform: translateY(26px) scale(.97); } }
@keyframes dyEmber { 0%, 100% { opacity: .5; transform: scale(.94); } 50% { opacity: .85; transform: scale(1.05); } }
@keyframes dyLine { from { transform: scaleX(0); } }
@keyframes dyShine { 0%, 62% { transform: translateX(-120%) skewX(-18deg); } 100% { transform: translateX(240%) skewX(-18deg); } }

/* Huruf: Bodoni miring yang anggun + Marcellus berjarak lebar */
.t-dayak .names { font-family: 'Bodoni Moda', 'Cormorant Garamond', serif; font-style: italic; font-weight: 500; letter-spacing: -.01em; color: var(--accent-2); text-shadow: 0 2px 16px rgba(0,0,0,.6); }
.t-dayak .names i { font-family: 'Bodoni Moda', serif; font-style: italic; font-size: .5em; color: var(--accent); vertical-align: middle; }
.t-dayak .cover .names { font-size: clamp(2.7rem, 11.5vw, 4rem); line-height: 1.12; }
.t-dayak .names--lg { font-size: clamp(2.6rem, 11vw, 3.5rem); line-height: 1.12; }
.t-dayak .names--xl { font-size: clamp(3rem, 5vw, 4.2rem); line-height: 1.12; }
.t-dayak .names--md { font-size: 1.75rem; }
.t-dayak .kicker { font-family: 'Marcellus', serif; font-weight: 400; font-size: .8rem; letter-spacing: .42em; color: var(--accent); }
.t-dayak .sec__title { font-family: 'Marcellus', serif; font-weight: 400; font-size: 1.5rem; letter-spacing: .2em; text-transform: uppercase; color: var(--accent-2); }
.t-dayak .sec__title::after { content: ''; display: block; width: 220px; height: 33px; margin: .55rem auto 0; background: url(../../img/themes/dayak/pembatas.webp) center / contain no-repeat; }
.t-dayak .reveal .sec__title::after { clip-path: inset(0 50% 0 50%); transition: clip-path 1.4s cubic-bezier(.2,.7,.2,1) .2s; }
.t-dayak .reveal.is-visible .sec__title::after { clip-path: inset(0 0 0 0); }
.t-dayak .cover__date, .t-dayak .hero__date, .t-dayak .aside__date, .t-dayak .thanks, .t-dayak .countdown__date { font-family: 'Bodoni Moda', serif; font-style: italic; font-weight: 500; color: var(--accent); }
.t-dayak .cover__to strong { font-family: 'Bodoni Moda', serif; font-style: italic; font-weight: 500; color: var(--accent-2); }
.t-dayak .quote { font-family: 'Bodoni Moda', serif; font-style: italic; font-size: 1.08rem; line-height: 1.8; }
.t-dayak .tm-divider { width: 220px; }

/* Sampul & bagian pembuka: kayu ulin, cahaya obor hangat di belakang ornamen */
.t-dayak .am-panel::before { background: url(../../img/themes/dayak/pintu.webp) center / cover no-repeat, #24150b; box-shadow: inset -20px 0 30px -16px rgba(0,0,0,.7); }
.t-dayak .cover, .t-dayak .hero, .t-dayak .aside {
    background: radial-gradient(ellipse 70% 45% at 50% 34%, rgba(226,150,72,calc(var(--tint-a) * .2)), transparent 70%),
        linear-gradient(var(--hero-tint), var(--hero-tint)), var(--cover, none) center / cover no-repeat, var(--wood), var(--bg);
    overflow: hidden;
}
.t-dayak .cover::before { inset: 16px; border: 1px solid var(--line); border-radius: 0; z-index: 1; }
.t-dayak .cover::after { inset: 22px; border: 1px solid rgba(226,176,72,.18); border-radius: 0; z-index: 1; opacity: 1; }
.t-dayak .cover__inner { width: min(330px, calc(100vw - 44px)); padding: 1.1rem 1.1rem 1.5rem; gap: .65rem; border-radius: 18px;
    background: linear-gradient(rgba(23,16,11,.55), rgba(23,16,11,.55)), var(--wood), #1b120c;
    border: 1px solid rgba(233,214,180,.4); box-shadow: inset 0 0 0 5px rgba(27,18,12,.9), inset 0 0 0 6px rgba(226,176,72,.3), 0 30px 60px -18px rgba(0,0,0,.95); }
.t-dayak .cover__inner::before { content: ''; position: absolute; left: 18px; right: 18px; top: -7px; height: 14px; background: var(--beads); border-radius: 7px; }
.t-dayak .cover__inner::after { content: ''; position: absolute; left: 18px; right: 18px; bottom: -7px; height: 14px; background: var(--beads); border-radius: 7px; }
.t-dayak .cover__to { margin: .45rem 0 .35rem; }
@media (min-width: 960px) { .t-dayak .cover__inner { width: 380px; } }
.t-dayak .tm-band { display: none; }
.t-dayak .tm-frame { z-index: 1; }
.t-dayak .tm-corner { width: clamp(64px, 17vw, 104px); }
.t-dayak .tm-house { filter: drop-shadow(0 18px 26px rgba(0,0,0,.7)); }
.t-dayak .cover .tm-house { width: min(215px, 55vw); animation: dyRise 1.5s cubic-bezier(.2,.7,.2,1) both; }
.t-dayak .hero .tm-house { width: min(280px, 72vw); }
.t-dayak .aside .tm-house { width: 320px; }
.t-dayak .tm-house--sm { width: 120px; }
@media (max-height: 740px) { .t-dayak .cover .tm-house { width: min(150px, 40vw); } .t-dayak .cover__inner { gap: .45rem; } .t-dayak .cover__to { margin: .2rem 0; } }
/* cahaya obor berdenyut di belakang ornamen */
.t-dayak .lx-tilt::after { content: ''; position: absolute; left: 50%; top: 50%; width: 130%; aspect-ratio: 1; margin: -65% 0 0 -65%; z-index: -1; pointer-events: none; border-radius: 50%;
    background: radial-gradient(closest-side, rgba(232,150,70,.3), rgba(232,150,70,.08) 55%, transparent); animation: dyEmber 4.5s ease-in-out infinite; }
.t-dayak .lx-tilt--sm::after { opacity: .6; }
.t-dayak .cover .kicker { animation: dyRise 1.1s ease .4s both; }
.t-dayak .cover .names { animation: dyReveal 1.6s cubic-bezier(.2,.7,.2,1) .6s both; }
.t-dayak .hero .names, .t-dayak .aside .names { animation: dyReveal 1.6s cubic-bezier(.2,.7,.2,1) .2s both; }
.t-dayak .cover__date { animation: dyRise 1.1s ease .9s both; }
.t-dayak .cover__to { animation: dyRise 1.1s ease 1.05s both; }
.t-dayak .cover .ibtn { animation: dyRise 1.1s ease 1.25s both; }
.t-dayak .am-garland { height: clamp(56px, 15vw, 80px); background-size: auto 100%; filter: drop-shadow(0 6px 6px rgba(0,0,0,.5)); }
.t-dayak .am-fall i { width: calc(14px * var(--s)); height: calc(46px * var(--s)); filter: drop-shadow(0 4px 6px rgba(0,0,0,.4)); }

/* Halaman: kayu ulin gelap, pita manik pemisah bagian */
.t-dayak .page { background: var(--pattern), var(--wood), var(--bg); }
.t-dayak .sec--tint { background: linear-gradient(rgba(233,214,180,.03), rgba(233,214,180,.03)), var(--pattern), var(--wood), var(--bg-2); }
.t-dayak .sec--tint::before { content: ''; position: absolute; left: 0; right: 0; top: -7px; height: 14px; background: var(--beads); z-index: 1; }

/* Kartu: kayu gelap berbingkai gading, garis merah tanah, pita manik */
.t-dayak .event, .t-dayak .gift, .t-dayak .rsvp, .t-dayak .wish, .t-dayak .qr-card, .t-dayak .lstory__card {
    border-radius: 14px; border: 1px solid var(--line); background: linear-gradient(rgba(233,214,180,.035), rgba(0,0,0,.12)), var(--wood), var(--card);
    box-shadow: inset 0 0 0 4px rgba(35,25,16,.9), inset 0 0 0 5px rgba(194,65,45,.35), 0 20px 36px -22px rgba(0,0,0,.9);
}
.t-dayak .event { position: relative; overflow: hidden; padding-top: 2.4rem; }
.t-dayak .event::before { inset: 10px 22px auto; height: 12px; border: 0; border-radius: 6px; background: var(--beads); opacity: .95; }
.t-dayak .event::after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 40%; background: linear-gradient(90deg, transparent, rgba(243,231,211,.07), transparent); animation: dyShine 9s ease-in-out infinite; pointer-events: none; }
.t-dayak .event h3 { font-family: 'Marcellus', serif; font-weight: 400; font-size: 1.3rem; letter-spacing: .14em; text-transform: uppercase; color: var(--accent); }
.t-dayak .event > * { position: relative; }
.t-dayak .reveal .event, .t-dayak .reveal .gift, .t-dayak .reveal .person { opacity: 0; transform: translateY(26px) scale(.98); filter: blur(4px); transition: opacity 1.1s ease, transform 1.1s cubic-bezier(.2,.7,.2,1), filter 1.1s ease; }
.t-dayak .reveal.is-visible .event, .t-dayak .reveal.is-visible .gift, .t-dayak .reveal.is-visible .person { opacity: 1; transform: none; filter: none; }
.t-dayak .reveal.is-visible .event:nth-child(2), .t-dayak .reveal.is-visible .gift:nth-child(2), .t-dayak .reveal.is-visible .person:nth-of-type(2) { transition-delay: .25s; }
.t-dayak .reveal.is-visible .event:nth-child(3) { transition-delay: .45s; }
.t-dayak .countdown div { border-radius: 12px; background: linear-gradient(180deg, #2a1d13, #17100b); border-color: var(--line); box-shadow: inset 0 1px 0 rgba(243,231,211,.12), inset 0 -3px 0 rgba(194,65,45,.6); }
.t-dayak .countdown b { font-family: 'Bodoni Moda', serif; font-style: italic; font-weight: 500; color: var(--accent-2); }
.t-dayak .divider { background: var(--red); }

/* Tombol gading dengan aksen merah */
.t-dayak .ibtn { border-radius: 999px; border-width: 1.5px; font-family: 'Marcellus', serif; letter-spacing: .06em; }
.t-dayak .ibtn--solid { position: relative; overflow: hidden; background: linear-gradient(180deg, #fbf3e2, #e3d2b0); color: #2a1a10; border-color: #fbf3e2;
    box-shadow: inset 0 -3px 0 rgba(194,65,45,.55), 0 10px 26px -12px rgba(232,150,70,.6); }
.t-dayak .ibtn--solid::after { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 45%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.75), transparent); animation: dyShine 4.5s ease-in-out infinite 1.5s; pointer-events: none; }
.t-dayak .ibtn--solid:hover { background: linear-gradient(180deg, #fffaf0, #ecdcbc); color: #2a1a10; }

/* The Couple, love story, galeri */
.t-dayak .pframe::before { border-color: var(--accent-2); border-width: 1px; }
.t-dayak .pframe::after { background: var(--red); box-shadow: 0 0 0 4px var(--bg); }
.t-dayak .pframe__arch { box-shadow: 0 24px 46px -26px rgba(0,0,0,.95), 0 0 0 1px var(--line); }
.t-dayak .lstory__dot { background: var(--accent); box-shadow: 0 0 0 4px var(--bg), 0 0 0 5px var(--red); }
.t-dayak .lstory__title, .t-dayak .tale__title { font-family: 'Marcellus', serif; letter-spacing: .08em; color: var(--accent); }
.t-dayak .gslider, .t-dayak .gallery__item { border-radius: 12px; box-shadow: 0 0 0 1px var(--line); }
.t-dayak .amp { font-family: 'Bodoni Moda', serif; font-style: italic; color: var(--accent); }
.t-dayak .music { border-radius: 999px; }
.t-dayak .ifoot { border-top: 1px solid var(--line); }

@media (prefers-reduced-motion: reduce) {
    .t-dayak .lx-tilt::after { animation: none; }
    .t-dayak .reveal .event, .t-dayak .reveal .gift, .t-dayak .reveal .person { opacity: 1; transform: none; filter: none; }
    .t-dayak .reveal .sec__title::after { clip-path: none; }
}
