/* ==========================================================
   DInvite — Tema "Adat Jawa"
   Sogan · krem · emas. Anggun dan halus: gunungan wayang, rumah Joglo,
   batik kawung, dan pinggiran tumpal.
   ========================================================== */
.t-jawa {
    --bg: #f6ead0; --bg-2: #efdfbd; --card: #fffaf0; --ink: #3f2410; --muted: #7a5634;
    --accent: #8a5524; --accent-2: #b8862f; --on-accent: #fff8ea; --line: rgba(138,85,36,.3);
    --hero-rgb: 246,234,208; --tint-a: .86; --hero-ink: #3f2410;
    --pattern: url(../../img/themes/jawa/kawung.svg) 0 0 / 46px 46px;
    color-scheme: light;
}
.t-jawa body, body.t-jawa { background-color: var(--bg); }

/* Huruf: Pinyon Script untuk nama (halus), Marcellus untuk judul, Cormorant untuk kalimat */
.t-jawa .names { font-family: 'Pinyon Script', 'Great Vibes', cursive; color: #5a3216; }
.t-jawa .names i { font-family: 'Cormorant Garamond', serif; font-style: italic; color: var(--accent-2); }
.t-jawa .cover .names { font-size: clamp(3rem, 13vw, 4.6rem); }
.t-jawa .names--md { color: #5a3216; }
.t-jawa .kicker { font-family: 'Marcellus', serif; letter-spacing: .3em; color: var(--accent); }
.t-jawa .sec__title { font-family: 'Marcellus', serif; font-weight: 400; font-size: 1.7rem; letter-spacing: .03em; color: #5a3216; }
.t-jawa .sec__title::after { content: ''; display: block; width: 200px; height: 22px; margin: .6rem auto 0; background: url(../../img/themes/jawa/pembatas.svg) center / contain no-repeat; }
.t-jawa .cover__date, .t-jawa .hero__date, .t-jawa .aside__date, .t-jawa .thanks { font-family: 'Cormorant Garamond', serif; font-style: italic; font-weight: 600; }
.t-jawa .cover__to strong { font-family: 'Cormorant Garamond', serif; font-weight: 600; }
.t-jawa .quote { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.22rem; line-height: 1.7; color: #4a2c14; }

/* Bingkai sulur & pita tumpal */
.t-jawa .tm-band { height: 22px; background-image: url(../../img/themes/jawa/pita.svg); background-size: 32px 22px; }
.t-jawa .cover::before { inset: 26px; border: 1.5px solid var(--line); border-radius: 26px; }
.t-jawa .cover::after { inset: 34px; border-radius: 20px; }

/* Ilustrasi */
.t-jawa .tm-house { filter: drop-shadow(0 12px 18px rgba(90,50,22,.25)); }
.t-jawa .cover .tm-house--cover { width: min(150px, 38vw); }
.t-jawa .aside .tm-house { width: 320px; }
.t-jawa .hero .tm-house { width: min(300px, 74vw); }
.t-jawa .tm-house--sm { width: 120px; }

/* Latar sampul & hero: krem + kawung di atas foto */
.t-jawa .cover, .t-jawa .hero, .t-jawa .aside {
    background:
        radial-gradient(ellipse at 50% 40%, rgba(255,250,236,calc(var(--tint-a) * .85)), transparent 70%),
        linear-gradient(var(--hero-tint), var(--hero-tint)),
        var(--cover, none) center / cover no-repeat,
        var(--bg);
    overflow: hidden;
}

/* Kartu: lembut, garis emas tipis, sudut membulat */
.t-jawa .event, .t-jawa .gift, .t-jawa .rsvp, .t-jawa .wish, .t-jawa .qr-card {
    border-radius: 18px; border: 1px solid var(--line); background: var(--card);
    box-shadow: inset 0 0 0 5px var(--card), inset 0 0 0 6px rgba(184,134,47,.28), 0 14px 30px -20px rgba(90,50,22,.45);
}
.t-jawa .event { position: relative; }
.t-jawa .event::before {
    content: ''; position: absolute; top: -14px; left: calc(50% - 14px); width: 28px; height: 28px;
    background: url(../../img/themes/jawa/pembatas.svg) center / 300px 30px no-repeat, var(--bg-2);
    border-radius: 50%; box-shadow: 0 0 0 3px var(--bg-2);
}
.t-jawa .event h3 { font-family: 'Cormorant Garamond', serif; font-weight: 600; font-size: 1.75rem; color: #5a3216; }
.t-jawa .countdown div { border-radius: 14px; background: var(--card); }
.t-jawa .countdown b { font-family: 'Cormorant Garamond', serif; color: #5a3216; }

.t-jawa .ibtn--solid { background: linear-gradient(180deg, #9a6230, #6f4019); border-color: #6f4019; color: #fff8ea; box-shadow: 0 10px 22px -12px rgba(90,50,22,.7); }
.t-jawa .sec--tint { background-color: var(--bg-2); background-image: var(--pattern); }
.t-jawa .divider { background: var(--accent-2); }
.t-jawa .amp { font-family: 'Pinyon Script', cursive; color: var(--accent-2); }
.t-jawa .ifoot { border-top: 0; background: url(../../img/themes/jawa/pita.svg) top / 32px 22px repeat-x; padding-top: 2.8rem; }

/* Motif di atas foto memudar mengikuti pengaturan transparansi */
.t-jawa .tm-frame::before { content: ''; position: absolute; inset: 0; background: var(--pattern); opacity: calc(var(--tint-a) * 1.1); }
