/* RonauliPhoto V23 — Dua koleksi warisan visual: Joglo & Rumah Gadang.
   Menggunakan ilustrasi asli situs yang sudah ada, bukan gambar eksternal. */
/* Warna masing-masing varian. Karakter desain berbeda walau masih satu budaya. */
.r7-cover.heritage-theme-jawa{--r23-gold:#edcf8d;--r23-light:#fff3d6;--r23-motif:url('/assets/jawa/motif-tenun.svg')}
.r7-cover.heritage-theme-minang{--r23-gold:#f1c47b;--r23-light:#fff3de;--r23-motif:url('/assets/minang/motif-tenun.svg')}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r23-scene{position:absolute;inset:0;z-index:0;pointer-events:none;background:var(--r23-surface);opacity:1}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-art{opacity:.14;z-index:0}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .heritage-house{z-index:0;filter:drop-shadow(0 11px 9px #0005)}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .heritage-band,
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .heritage-side{z-index:0}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-edge{z-index:1;box-shadow:inset 0 0 0 6px #ffffff0b;outline:1px solid color-mix(in srgb,var(--heritage-gold) 28%,transparent);outline-offset:-10px}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-lockup{z-index:2;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--r23-panel) 16%,transparent) 35%,color-mix(in srgb,var(--r23-panel) 63%,transparent) 67%,color-mix(in srgb,var(--r23-panel) 35%,transparent) 100%)}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-photo-frame{position:relative;border:5px solid var(--r23-frame);box-shadow:0 0 0 5px color-mix(in srgb,var(--r23-frame) 20%,transparent),0 15px 38px #0004,0 3px 12px #0002;border-radius:150px 150px 10px 10px;overflow:hidden;background:color-mix(in srgb,var(--r23-frame) 13%,#fff)}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-kicker{letter-spacing:.22em;font-weight:700;color:var(--r23-copy)}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) :is(.r7-date,.r14-cover-location,.r7-caption){color:var(--r23-copy);text-shadow:0 2px 10px color-mix(in srgb,var(--r23-panel) 45%,transparent)}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) :is(.v16-cover-name){color:var(--r23-copy);font-weight:600;text-shadow:0 2px 10px color-mix(in srgb,var(--r23-panel) 50%,transparent)}
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-divider{color:var(--r23-highlight)}
/* Jawa Klasik — warm teak and luminous batik kawung */
.r7-cover.r7-theme-laras{--r23-surface:radial-gradient(ellipse at 50% 12%,#a67c4f 0%,#6a4733 39%,#2c211c 100%);--r23-panel:#38251e;--r23-copy:#fff1d7;--r23-highlight:#f0cd88;--r23-frame:#d4ae6c;--r7-surface:var(--r23-surface);--r7-text:var(--r23-copy);--r7-gold:var(--r23-highlight)}
.r7-cover.r7-theme-laras .heritage-house{top:2%;left:3%;width:94%;height:39%;opacity:.86}
.r7-cover.r7-theme-laras .heritage-band{height:9%;bottom:0;left:0;right:0}
.r7-cover.r7-theme-laras .heritage-side{right:0;left:auto;top:13%;height:74%;width:7%;opacity:.7}
.r7-cover.r7-theme-laras .r7-edge{border-radius:165px 165px 8px 8px;border:1px solid #f0cd8899}
/* Jawa Elegan — golden cream stationery with carved gebyok references */
.r7-cover.r7-theme-jawa-gebyok-emas{--r23-surface:radial-gradient(ellipse at 49% 41%,#fffdf2 0%,#f0dfc3 60%,#b89b76 100%);--r23-panel:#fff9ee;--r23-copy:#493426;--r23-highlight:#b48a4d;--r23-frame:#b28648;--r7-surface:var(--r23-surface);--r7-text:var(--r23-copy);--r7-gold:var(--r23-highlight)}
.r7-cover.r7-theme-jawa-gebyok-emas .heritage-house{top:3%;left:14%;width:72%;height:31%;opacity:.4;filter:sepia(.3)}
.r7-cover.r7-theme-jawa-gebyok-emas .heritage-band{top:0;bottom:auto;height:6%;opacity:.9}
.r7-cover.r7-theme-jawa-gebyok-emas .heritage-medallion{display:block;opacity:.19;right:6%;bottom:7%;height:21%;width:29%}
.r7-cover.r7-theme-jawa-gebyok-emas .r7-edge{border:2px double #b8955f;border-radius:185px 185px 11px 11px}
/* Jawa Modern — editorial ivory, dark bronze geometry */
.r7-cover.r7-theme-jawa-joglo-modern{--r23-surface:linear-gradient(157deg,#f8f1e7 0%,#e6d5c3 62%,#9f6d47 62%,#2d2725 100%);--r23-panel:#e8d8c5;--r23-copy:#37312e;--r23-highlight:#9d653d;--r23-frame:#a67753;--r7-surface:var(--r23-surface);--r7-text:var(--r23-copy);--r7-gold:var(--r23-highlight)}
.r7-cover.r7-theme-jawa-joglo-modern .heritage-house{right:-8%;bottom:3%;width:91%;height:39%;opacity:.83}
.r7-cover.r7-theme-jawa-joglo-modern .heritage-band{top:0;height:7%}
.r7-cover.r7-theme-jawa-joglo-modern .r7-edge{border-radius:4px;border:1px solid #ae815976}
/* Minang Klasik — red maroon and antique gold */
.r7-cover.r7-theme-rumah-gadang{--r23-surface:radial-gradient(ellipse at 50% 18%,#bc653d 0%,#862e34 43%,#351823 100%);--r23-panel:#471b28;--r23-copy:#fff1dd;--r23-highlight:#f6d48e;--r23-frame:#e9bd72;--r7-surface:var(--r23-surface);--r7-text:var(--r23-copy);--r7-gold:var(--r23-highlight)}
.r7-cover.r7-theme-rumah-gadang .heritage-house{top:1%;height:40%;opacity:.94}
.r7-cover.r7-theme-rumah-gadang .heritage-band{bottom:0;height:9%}
.r7-cover.r7-theme-rumah-gadang .r7-edge{border:1px solid #f2d4a383;border-radius:150px 150px 8px 8px}
/* Minang Elegan — gold songket and wedding ivory */
.r7-cover.r7-theme-minang-songket-emas{--r23-surface:radial-gradient(ellipse at 53% 36%,#fffaf0 0%,#f6e4c6 58%,#d5ad7e 100%);--r23-panel:#fff7e8;--r23-copy:#4b2e29;--r23-highlight:#a94a3a;--r23-frame:#b98649;--r7-surface:var(--r23-surface);--r7-text:var(--r23-copy);--r7-gold:var(--r23-highlight)}
.r7-cover.r7-theme-minang-songket-emas .heritage-house{top:3%;left:15%;width:70%;height:31%;opacity:.42}
.r7-cover.r7-theme-minang-songket-emas .heritage-band{top:0;height:6%}
.r7-cover.r7-theme-minang-songket-emas .heritage-medallion{display:block;right:7%;bottom:8%;width:32%;height:19%;opacity:.20}
.r7-cover.r7-theme-minang-songket-emas .r7-edge{border:2px double #ae7847;border-radius:185px 185px 8px 8px}
/* Minang Modern — geometric cream and oxblood */
.r7-cover.r7-theme-minang-modern{--r23-surface:linear-gradient(155deg,#f8f0e8 0%,#efe0d5 61%,#b64040 61%,#432328 72%,#241e23 100%);--r23-panel:#eeded5;--r23-copy:#3a292b;--r23-highlight:#b43d3a;--r23-frame:#b54a43;--r7-surface:var(--r23-surface);--r7-text:var(--r23-copy);--r7-gold:var(--r23-highlight)}
.r7-cover.r7-theme-minang-modern .heritage-house{right:-6%;bottom:4%;width:90%;height:40%;opacity:.9}
.r7-cover.r7-theme-minang-modern .heritage-band{top:0;height:7%}
.r7-cover.r7-theme-minang-modern .r7-edge{border:1px solid #aa544b88;border-radius:4px}
/* Actual catalogue photographs are marked as illustrations, not client photos. */
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r23-catalog-photo{display:block;position:relative;flex:none;width:min(52%,128px);aspect-ratio:4/4.8;margin:4px auto 6px;overflow:hidden;border:3px solid var(--r23-frame);border-radius:110px 110px 8px 8px;background:#e8dcc9;box-shadow:0 4px 0 color-mix(in srgb,var(--r23-frame) 20%,transparent),0 11px 28px #0004}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r23-catalog-photo img{width:100%;height:100%;object-fit:cover;display:block}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-lockup{height:100%;min-height:0;justify-content:center;gap:0;padding:23% 11% 12%;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--r23-panel) 47%,transparent) 52%,color-mix(in srgb,var(--r23-panel) 18%,transparent) 100%)}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang).heritage-variant-modern .r7-lockup{padding:14% 11% 26%}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-kicker{font-size:7px;letter-spacing:.12em}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-seal{display:none}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-name{font:600 clamp(16px,1.8vw,22px)/1.05 var(--r7-font,'Cormorant Garamond',serif);margin:4px 0;color:var(--r23-copy)}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-divider{width:62px;margin:2px auto}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-date{margin:3px auto 0;font-size:8px;letter-spacing:0;color:var(--r23-copy)}
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-caption{display:none}
.design-option .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r23-catalog-photo{width:58%;max-width:93px;border-width:2px}
.design-option .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-lockup{padding:17% 8% 10%}
.design-option .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-name{font-size:13px}
/* Live invitation: sizeable portrait, balanced names, distinguishable venue. */
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-lockup{padding:49px 9% 39px;min-height:max(700px,100svh);justify-content:center;align-items:center}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-photo-frame{width:min(76%,302px);max-height:42vh;aspect-ratio:4/4.8}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-name{font-size:clamp(24px,5.9vw,34px);line-height:1.19;letter-spacing:0}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-groom{margin:7px auto 12px}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-bride{margin:12px auto 7px}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-invitee{background:color-mix(in srgb,var(--r23-panel) 55%,transparent);border:1px solid color-mix(in srgb,var(--r23-highlight) 35%,transparent);border-radius:12px;padding:9px 16px}
/* In-body identity: alternate warm backgrounds, actual textile strips and watermark of house. */
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang){--r23-paper:#fff8ee;--r23-mist:#f1e4d2;--r23-ink:#392d29;--r23-strong:#69442f;--r23-line:#c6a16b;--r23-frame:url('/assets/jawa/motif-tenun.svg')}
.invitation.inv-cultural-minang{--r23-paper:#fff4e7;--r23-mist:#f5e3d4;--r23-ink:#40292b;--r23-strong:#8e3640;--r23-line:#c39b5d;--r23-frame:url('/assets/minang/motif-tenun.svg')}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section:not(.inv-cover):not(.inv-quote):not(.inv-footer){background:linear-gradient(160deg,var(--r23-paper) 10%,var(--r23-mist) 110%);color:var(--r23-ink);padding-top:70px;padding-bottom:70px}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section:not(.inv-cover):not(.inv-quote):not(.inv-footer):nth-of-type(even){background:linear-gradient(160deg,var(--r23-mist) 5%,var(--r23-paper) 95%)}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section:not(.inv-cover)::before{height:12px;background:var(--r23-frame) center/auto 100% repeat-x;opacity:.82}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section:not(.inv-cover)>*{position:relative;z-index:1}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section h2{color:var(--r23-ink);font-size:clamp(30px,7.4vw,49px);text-wrap:balance}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section .inv-eyebrow{color:var(--r23-strong);letter-spacing:.18em}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-couple .inv-symbol,.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-couple .inv-amp{color:var(--r23-strong)}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-couple::after{opacity:.105;bottom:2%;height:42%;width:87%;right:-12%}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) :is(.inv-event,.wish-card,.r14-story-chapter,.v18-payment-card){background:color-mix(in srgb,var(--r23-paper) 92%,white);border:1px solid color-mix(in srgb,var(--r23-line) 47%,transparent);border-radius:17px;box-shadow:0 10px 30px #301b1412}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-event{padding:23px 17px}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .countdown>div{border-radius:14px;background:#fffaf2;border:1px solid color-mix(in srgb,var(--r23-line) 65%,transparent);box-shadow:0 7px 18px #28190d13}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .r14-gallery-item{border:3px solid var(--r23-paper);border-radius:14px;box-shadow:0 10px 28px #0002}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .r14-story-line::before{background:var(--r23-line)}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .r14-story-dot{background:var(--r23-strong);box-shadow:0 6px 14px #0002}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-btn{background:var(--inv-accent);border-radius:9px;box-shadow:0 10px 24px color-mix(in srgb,var(--inv-accent) 24%,transparent)}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-quote:not(.inv-cover){background:linear-gradient(148deg,#4b382a,#785339)!important;color:#fff5e5!important}
.invitation.inv-cultural-minang .inv-quote:not(.inv-cover){background:linear-gradient(148deg,#4c222b,#862e38)!important}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-quote :is(p,.inv-eyebrow,.inv-scripture-reference){color:#fff6e7}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-footer{background:linear-gradient(160deg,#33241d,#5b3a2b)!important;color:#fef1db!important}
.invitation.inv-cultural-minang .inv-footer{background:linear-gradient(160deg,#2e1c25,#692f37)!important}
.invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-footer :is(h2,p,.inv-eyebrow,.inv-symbol){color:#fff2db}
/* Catalog premium cards. */
.template-card:has(.heritage-theme-jawa),.template-card:has(.heritage-theme-minang){border:1px solid #e6d3bf;border-radius:22px;box-shadow:0 12px 35px #603a291f;overflow:hidden}
.template-card:has(.heritage-theme-jawa):hover,.template-card:has(.heritage-theme-minang):hover{transform:translateY(-6px);box-shadow:0 21px 47px #603a2933}
.template-card:has(.heritage-theme-jawa) .template-info,.template-card:has(.heritage-theme-minang) .template-info{background:linear-gradient(155deg,#fffdfa,#f6eddf);padding:17px 15px 19px}
.template-card:has(.heritage-theme-jawa) .template-info strong,.template-card:has(.heritage-theme-minang) .template-info strong{font-size:18px;line-height:1.18}
@media(max-width:600px){
 .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r23-catalog-photo{width:min(48%,90px);margin:3px auto}
 .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-lockup{padding:23% 8% 10%}
 .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang).heritage-variant-modern .r7-lockup{padding:15% 8% 24%}
 .template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-name{font-size:clamp(15px,3.6vw,18px)}
 .invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-lockup{min-height:max(670px,100svh);padding:44px 9% 36px}
 .invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-photo-frame{width:min(77%,285px);max-height:40vh}
 .invitation:is(.inv-cultural-jawa,.inv-cultural-minang) .inv-section:not(.inv-cover){padding-top:56px;padding-bottom:56px}
}
@media(prefers-reduced-motion:no-preference){.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-photo-frame{animation:r20enter .9s ease-out both}}
/* Clear title even when architectural artwork crosses the header. */
.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-kicker{
 position:relative;z-index:3;
 display:inline-block;max-width:100%;padding:5px 13px;
 border:1px solid color-mix(in srgb,var(--r23-highlight) 35%,transparent);
 border-radius:100px;background:color-mix(in srgb,var(--r23-panel) 86%,transparent);
}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .heritage-house{
 opacity:.38;filter:drop-shadow(0 8px 10px #0003);
}
.invitation .inv-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .v16-cover-groom{
 text-shadow:0 2px 12px color-mix(in srgb,var(--r23-panel) 90%,transparent);
}
/* Keep the small heritage thumbnail readable rather than overlapping labels. */
.template-cover.r7-cover:is(.heritage-theme-jawa,.heritage-theme-minang) .r7-kicker{padding:3px 7px;font-size:7px;letter-spacing:.1em}
