.heritage-side-frame{position:absolute!important;z-index:1!important;inset:0!important;box-sizing:border-box;max-width:100%;overflow:hidden;contain:layout paint;pointer-events:none}
.heritage-side-frame *{box-sizing:border-box}
.heritage-side-frame i{position:absolute;top:202px;bottom:202px;width:14px;border-inline:1px solid var(--frame-edge);opacity:.7;filter:drop-shadow(0 0 4px var(--frame-glow));animation:heritage-frame-glow 6s ease-in-out infinite}
.heritage-side-frame i:before,.heritage-side-frame i:after{content:"◆";position:absolute;left:50%;color:var(--frame-cap);font-size:8px;line-height:1;text-shadow:0 0 7px var(--frame-glow);transform:translateX(-50%) rotate(45deg)}
.heritage-side-frame i:before{top:-12px}.heritage-side-frame i:after{bottom:-12px}
.heritage-side-frame .left{left:9px}.heritage-side-frame .right{right:9px;animation-delay:-3s}
.cover>.heritage-side-frame i{top:206px;bottom:206px}

body[data-theme="ornamen-jawa"]{--frame-edge:#754516;--frame-cap:#e6bd66;--frame-glow:#c98b384f}
body[data-theme="ornamen-jawa"] .heritage-side-frame i{background:
  radial-gradient(ellipse at 50% 25%,transparent 0 2px,#d9a64e 2.5px 3.5px,transparent 4px),
  radial-gradient(ellipse at 50% 75%,transparent 0 2px,#8b4f1c 2.5px 3.5px,transparent 4px),
  linear-gradient(90deg,transparent,#d4a04b99 40% 60%,transparent);
  background-size:12px 16px,12px 16px,3px 100%;background-position:center;background-repeat:repeat-y,repeat-y,no-repeat}

body[data-theme="ornamen-sunda"]{--frame-edge:#8b7130;--frame-cap:#efd684;--frame-glow:#d8b65b52}
body[data-theme="ornamen-sunda"] .heritage-side-frame i{background:
  radial-gradient(ellipse at 28% 50%,#d9bd67 0 2px,#245947 2.5px 4px,transparent 4.5px),
  radial-gradient(ellipse at 72% 50%,#d9bd67 0 2px,#39745e 2.5px 4px,transparent 4.5px),
  linear-gradient(90deg,transparent,#e0c46d99 42% 58%,transparent);
  background-size:13px 18px,13px 18px,3px 100%;background-position:center 0,center 9px,center;background-repeat:repeat-y,repeat-y,no-repeat}

body[data-theme="ornamen-islami"]{--frame-edge:#9b7b32;--frame-cap:#e9ce7b;--frame-glow:#d4b75a52}
body[data-theme="ornamen-islami"] .heritage-side-frame i{background:
  conic-gradient(from 45deg at 50% 50%,transparent 0 19%,#d7ba65 20% 30%,#165e4b 31% 44%,#d7ba65 45% 55%,#165e4b 56% 69%,#d7ba65 70% 80%,transparent 81%) center top/12px 12px repeat-y,
  linear-gradient(90deg,transparent,#e1c671a6 42% 58%,transparent) center/3px 100% no-repeat}

body[data-theme="luxury-islami"]{--frame-edge:#a88a43;--frame-cap:#f0d68a;--frame-glow:#16a27a59}
body[data-theme="luxury-islami"] .heritage-side-frame i{width:13px;background:
  radial-gradient(circle at 50% 50%,#f5dda0 0 1.5px,#08765d 2px 3.5px,#c4a451 4px 4.8px,transparent 5.2px) center top/12px 18px repeat-y,
  linear-gradient(90deg,transparent,#d9bc68a8 42% 58%,transparent) center/3px 100% no-repeat;
  filter:drop-shadow(0 0 5px #0a9a7345)}

body[data-theme="klasik-elegan"]{--frame-edge:#ae8d4d;--frame-cap:#ead69b;--frame-glow:#d9b96a4f}
body[data-theme="klasik-elegan"] .heritage-side-frame i{background:
  radial-gradient(circle at 50% 50%,#fff9df 0 1.8px,#d7bd7d 2.2px 3.8px,#9b7335 4.2px 4.8px,transparent 5.2px) center top/12px 18px repeat-y,
  radial-gradient(ellipse at 50% 50%,transparent 0 3px,#c9a45c 3.4px 4px,transparent 4.4px) center 9px/12px 18px repeat-y,
  linear-gradient(90deg,transparent,#d8b9709c 42% 58%,transparent) center/3px 100% no-repeat}
body[data-theme="klasik-elegan"] .heritage-side-frame .right{right:18px}

body[data-theme="ornamen-gothic"]{--frame-edge:#73573b;--frame-cap:#b58c58;--frame-glow:#8f173f59}
body[data-theme="ornamen-gothic"] .heritage-side-frame i{width:13px;background:
  conic-gradient(from 45deg at 50% 50%,transparent 0 21%,#9e2648 22% 31%,#2b151d 32% 43%,#9d7a4d 44% 56%,#2b151d 57% 68%,#9e2648 69% 78%,transparent 79%) center top/11px 14px repeat-y,
  linear-gradient(90deg,transparent,#9b7a5099 42% 58%,transparent) center/3px 100% no-repeat;
  filter:drop-shadow(0 0 5px #8c153b55)}

@keyframes heritage-frame-glow{0%,100%{opacity:.55}50%{opacity:.84;filter:drop-shadow(0 0 8px var(--frame-glow))}}
@media(width<=850px){.heritage-side-frame i{top:158px;bottom:164px}.cover>.heritage-side-frame i{top:176px;bottom:180px}}
@media(width<=380px){.heritage-side-frame i{width:12px}.heritage-side-frame .left{left:6px}.heritage-side-frame .right{right:6px}}
@media(height<=700px){.heritage-side-frame i,.cover>.heritage-side-frame i{top:152px;bottom:152px}}
.cover>.heritage-side-frame .left{bottom:54px}
.cover>.heritage-side-frame .right{top:54px}
@media(height<=700px){.cover>.heritage-side-frame .left{bottom:42px}.cover>.heritage-side-frame .right{top:42px}}
@media(prefers-reduced-motion:reduce){.heritage-side-frame i{animation:none}}

/* Klasik Elegan runtime content fixes. The published renderer adds a date row
   to event cards and may provide only one gallery image. */
body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.events>.event-list article{
  grid-template-columns:42px minmax(0,1fr);
  grid-template-rows:repeat(4,auto)
}
body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.events>.event-list article>span{grid-row:1/5}
body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.events>.event-list article>:not(span){grid-column:2;min-width:0;overflow-wrap:anywhere}
body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.gallery>.photos{height:min(66dvh,560px)}
body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.gallery>.photos>figure:only-child{grid-row:1/3}
body[data-theme="ornamen-jawa"] main[data-theme-ornaments]>#galeri>.photos>figure:only-child{grid-column:1/3}
@media(height<=700px){
  body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.events>.event-list article{grid-template-columns:34px minmax(0,1fr)}
  body[data-theme="klasik-elegan"] main[data-theme-ornaments]>.gallery>.photos{height:min(58dvh,390px)}
}
