/* Culture Javanese — sogan, kayu jati, emas, dan geometri kawung modern. */
.t-javaneseculture {
    --bg: #241914; --bg-2: #322117; --card: #3c281a; --ink: #f5e4c5; --muted: #cdb18a;
    --accent: #d6a75b; --accent-2: #efd28d; --on-accent: #29170f; --line: rgba(214,167,91,.3);
    --hero-rgb: 36,25,20; --tint-a: .72; --hero-ink: #f7e9cc;
    --pattern: radial-gradient(ellipse at center, transparent 0 44%, rgba(214,167,91,.08) 45% 46%, transparent 47% 100%) 0 0 / 72px 72px;
    --serif-j: 'Marcellus', 'Cormorant Garamond', Georgia, serif;
    color-scheme: dark;
}
.t-javaneseculture .page { background: radial-gradient(ellipse at center, transparent 0 44%, rgba(214,167,91,.08) 45% 46%, transparent 47% 100%) 0 0 / 72px 72px, var(--bg); box-shadow: 0 0 70px rgba(0,0,0,.22); }
.t-javaneseculture .cover, .t-javaneseculture .hero, .t-javaneseculture .aside {
    background-image: linear-gradient(var(--hero-tint), var(--hero-tint)), var(--cover, none), radial-gradient(circle at 50% 18%, rgba(214,167,91,.18), transparent 45%), linear-gradient(145deg, #322117, #1b120e);
}
.t-javaneseculture .cover::before { inset: 18px; border: 1px solid rgba(214,167,91,.62); border-radius: 2px; }
.t-javaneseculture .cover::after { inset: 28px; border: 1px solid rgba(239,210,141,.26); border-radius: 2px; background: linear-gradient(45deg, transparent 49.5%, rgba(214,167,91,.55) 50% 50.5%, transparent 51%) center / 18px 18px; opacity: .4; }
.t-javaneseculture .cover__inner { gap: 1.1rem; }
.t-javaneseculture .kicker { font: 600 .68rem 'Plus Jakarta Sans', sans-serif; letter-spacing: .48em; color: var(--accent-2); }
.t-javaneseculture .names, .t-javaneseculture .names i, .t-javaneseculture .sec__title,
.t-javaneseculture .event h3, .t-javaneseculture .lstory__title, .t-javaneseculture .quote,
.t-javaneseculture .wishes__title, .t-javaneseculture .thanks { font-family: var(--serif-j); }
.t-javaneseculture .names { font-weight: 400; letter-spacing: .015em; }
.t-javaneseculture .names i { color: var(--accent); }
.t-javaneseculture .cover .names { font-size: clamp(3.1rem, 13vw, 5rem); }
.t-javaneseculture .cover__date, .t-javaneseculture .hero__date, .t-javaneseculture .aside__date { font: 500 1rem var(--serif-j); letter-spacing: .12em; color: var(--accent-2); }
.t-javaneseculture .cover__to strong { font: 500 1.55rem var(--serif-j); }
.t-javaneseculture .sec { background: radial-gradient(ellipse at center, transparent 0 44%, rgba(214,167,91,.07) 45% 46%, transparent 47% 100%) 0 0 / 72px 72px, transparent; }
.t-javaneseculture .sec--tint { background-color: rgba(50,33,23,.72); }
.t-javaneseculture .sec__title { font-weight: 400; letter-spacing: .02em; color: var(--ink); }
.t-javaneseculture .sec__title::after { content: '◇'; margin-top: .55rem; color: var(--accent); font-size: .9rem; }
.t-javaneseculture .lead-txt, .t-javaneseculture .person__parents, .t-javaneseculture .event__addr,
.t-javaneseculture .story, .t-javaneseculture .lstory__text { color: var(--muted); }
.t-javaneseculture .quote { font-style: italic; color: var(--accent-2); }
.t-javaneseculture .ornament { font-size: 0; }
.t-javaneseculture .ornament::before { content: '꧁'; font: 2.3rem/1 var(--serif-j); color: var(--accent); }
.t-javaneseculture .event, .t-javaneseculture .lstory__card, .t-javaneseculture .gift,
.t-javaneseculture .rsvp, .t-javaneseculture .wish { border-radius: 3px; background: rgba(60,40,26,.86); border-color: var(--line); box-shadow: 0 22px 45px -30px rgba(0,0,0,.9); }
.t-javaneseculture .event::before { inset: 7px; border-radius: 1px; border-color: rgba(214,167,91,.22); }
.t-javaneseculture .event h3, .t-javaneseculture .lstory__title, .t-javaneseculture .gift__bank { color: var(--accent-2); }
.t-javaneseculture .divider { background: linear-gradient(90deg, transparent, var(--accent), transparent); }
.t-javaneseculture .ibtn { border-radius: 2px; border-color: var(--accent); letter-spacing: .06em; }
.t-javaneseculture .ibtn--solid { background: var(--accent); color: var(--on-accent); }
.t-javaneseculture .ibtn--solid:hover { background: var(--accent-2); }
.t-javaneseculture .pframe { padding: 12px; }
.t-javaneseculture .pframe::before { border-radius: 2px; border-color: var(--accent); transform: rotate(45deg) scale(.72); opacity: .45; }
.t-javaneseculture .pframe::after { border-radius: 0; background: var(--accent); box-shadow: 0 0 0 4px var(--bg); }
.t-javaneseculture .pframe__arch { border-radius: 2px; background: var(--bg-2); }
.t-javaneseculture .pframe__init { font-family: var(--serif-j); color: var(--accent-2); background: radial-gradient(circle, #4b321e, #2b1b14); }
.t-javaneseculture .countdown div { border-radius: 2px; background: rgba(60,40,26,.9); border-color: var(--line); }
.t-javaneseculture .countdown b { font-family: var(--serif-j); color: var(--accent-2); }
.t-javaneseculture .gift__num { font-family: var(--serif-j); }
.t-javaneseculture .music { border-radius: 2px; background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.t-javaneseculture .ifoot { border-top-color: var(--line); background: rgba(24,16,12,.4); }
.t-javaneseculture .ifld input, .t-javaneseculture .ifld textarea, .t-javaneseculture .ifld select { background: rgba(255,255,255,.04); border-color: var(--line); color: var(--ink); }
.t-javaneseculture .ifld select option { background: #2b1b14; color: var(--ink); }
.t-javaneseculture .lstory::before { background: linear-gradient(var(--accent), var(--line), transparent); }
.t-javaneseculture .lstory__dot { border-radius: 0; transform: rotate(45deg); background: var(--accent); box-shadow: 0 0 0 4px var(--bg), 0 0 0 5px var(--line); }
@media (min-width: 960px) { .t-javaneseculture .aside { background-image: linear-gradient(var(--hero-tint), var(--hero-tint)), var(--cover, none), radial-gradient(circle at 50% 18%, rgba(214,167,91,.16), transparent 45%), linear-gradient(145deg, #322117, #1b120e); } }
