/* UndanganAdat Template V2: base stylesheet of the starter.
   PART 1 (layout + motion primitives) is the V2 foundation and is identical in every template: do not change it.
   PART 2 (sections) is the structural skeleton with NEUTRAL tokens: a template overrides the tokens below and the section rules
   to match its PSD (colours, fonts, ornaments, text sizes). Geometry numbers are PSD pixels (scene px); every length is calc(N * var(--u)).
   Tokens: */
:root{--c-dark:#2f5d46;--c-mid:#6b8a73;--c-light:#f2efe2;--c-hero-bg:#3d5a45;--font-display:'Gelasio',Georgia,'Times New Roman',serif;--font-script:'Pinyon Script','Snell Roundhand',cursive;--font-body:'Poppins',-apple-system,'Helvetica Neue',Arial,sans-serif;}
/* UndanganAdat Template V2 (starter) (stage 1: Cover, Hero, Ayat, Pasangan, Acara).
   Layout model: no scaled scene and no transform on any container. Every section defines --u (CSS px per PSD pixel) as a
   plain calc() of the page width; every layer carries its PSD box as unitless --x --y --w --h. The browser lays the page
   out at its real size, so no oversized compositing layer exists.
   Motion model: transform + opacity only (individual translate/scale/rotate properties). Entrance = one CSS animation that
   starts when script.js adds .on (element on screen); idle sway lives only while the section is near (.live). */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:#000;}
body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;}
img{max-width:none;display:block;}
.ua-app{--aw:min(100vw,480px);--vh:100dvh;position:relative;max-width:480px;margin:0 auto;background:var(--c-light);overflow:hidden;}

/* ---- layout primitives ---- */
.l{position:absolute;left:calc(var(--x) * var(--u));top:calc(var(--y) * var(--u));width:calc(var(--w) * var(--u));height:calc(var(--h) * var(--u));}
.ua-cover,.ua-hero,.ua-ayat,.ua-pasangan,.ua-acara{position:relative;width:100%;overflow:hidden;}
.ua-cover,.ua-hero{--u:max(calc(var(--aw) / 1080),calc(var(--vh) / 1920));height:var(--vh);}
.ua-ayat{--u:calc(var(--aw) / 1080);height:calc(1755 * var(--u));background:#dce9f3;}
.ua-pasangan{--u:calc(var(--aw) / 1576);height:calc(3990 * var(--u));background:var(--c-light);}
.ua-acara{--u:calc(var(--aw) / 1508);height:calc(var(--H,4168) * var(--u));background:var(--c-dark);}
.ua-cover-scene,.ua-hero-scene{position:absolute;left:calc(50% - 540 * var(--u));top:calc(50% - 960 * var(--u));width:calc(1080 * var(--u));height:calc(1920 * var(--u));}
.ua-ayat-scene,.ua-pasangan-scene,.ua-acara-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-hero,.ua-ayat,.ua-pasangan,.ua-acara{display:none;}
.ua-app.is-open .ua-hero,.ua-app.is-open .ua-ayat,.ua-app.is-open .ua-pasangan,.ua-app.is-open .ua-acara{display:block;}

/* ---- motion ---- */
.m{--e:cubic-bezier(.22,.61,.36,1);}
.m-deco{--e:cubic-bezier(.25,.85,.3,1.15);}
html.js .m:not(.on){opacity:var(--po,0);translate:calc(var(--px,0) * var(--u)) calc(var(--py,0) * var(--u));scale:var(--psx,var(--ps,1)) var(--psy,var(--ps,1));}
.m.on{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards;}
@keyframes m-in{from{opacity:var(--po,0);translate:calc(var(--px,0) * var(--u)) calc(var(--py,0) * var(--u));scale:var(--psx,var(--ps,1)) var(--psy,var(--ps,1));}}
.m-fade.on{animation-name:m-fade;}
.m-bg.on{animation:m-fade calc(var(--t,700) * 1ms) ease calc(var(--d,0) * 1ms) backwards,m-settle 6000ms cubic-bezier(.22,.61,.36,1) calc(var(--d,0) * 1ms) backwards;}
@keyframes m-fade{from{opacity:0;}}
@keyframes m-settle{from{scale:1.05;}}
/* idle sways: start after the entrance (delay = d + t + offset), never replace it */
.m.on[data-idle="sway"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-sway calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
.m-fade.on[data-idle="float"]{animation:m-fade calc(var(--t,900) * 1ms) ease calc(var(--d,0) * 1ms) backwards,m-float calc(var(--it,14500) * 1ms) ease-in-out calc((var(--d,0) + var(--t,900) + var(--io,0)) * 1ms) infinite none;}
.ua-ayat.live .m.on[data-idle="live"],.ua-pasangan.live .m.on[data-idle="live"],.ua-acara.live .m.on[data-idle="live"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-live calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
@keyframes m-sway{0%,100%{rotate:0deg;}25%{rotate:calc(var(--ir,1) * 1deg);}75%{rotate:calc(var(--ir,1) * -1deg);}}
@keyframes m-float{0%,100%{translate:0 0;}50%{translate:calc(var(--fx,0) * var(--u)) calc(var(--fy,0) * var(--u));}}
@keyframes m-live{
  0%{translate:0 0;rotate:0deg;}
  30%{translate:calc(var(--ix,0) * var(--u)) calc(var(--iy,0) * var(--u));rotate:calc(var(--ir,0) * 1deg);}
  60%{translate:calc(var(--ix,0) * .6 * var(--u)) calc(var(--iy,0) * .6 * var(--u));rotate:calc(var(--ir,0) * .4deg);}
  100%{translate:0 0;rotate:0deg;}
}
.ua-deco{pointer-events:none;}

/* ================= Cover ================= */
.ua-cover{background:var(--c-light);transition:opacity .8s cubic-bezier(.22,.61,.36,1),translate .8s cubic-bezier(.22,.61,.36,1);}
.ua-app.is-open .ua-cover{position:absolute;top:0;left:0;z-index:5;opacity:0;translate:0 -3%;pointer-events:none;}
.ua-photo-frame{border-radius:9999px;overflow:hidden;background:var(--c-light);box-shadow:0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(0,0,0,.35);}
/* hairlines are drawn as inset rings, not borders: a border is snapped to whole device pixels, a ring keeps the PSD's fractional width */
.ua-photo-frame::after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 calc(3 * var(--u)) rgba(255,255,255,.95);pointer-events:none;}
.ua-photo-img{display:none;width:100%;height:100%;object-fit:cover;object-position:50% 50%;}
.ua-text{color:var(--c-light);text-align:center;}
.ua-eyebrow{font-family:var(--font-script);font-size:calc(64 * var(--u));line-height:calc(64 * var(--u));white-space:nowrap;}
.ua-stack{display:flex;flex-direction:column;align-items:center;}
.ua-names{width:calc(800 * var(--u));min-height:calc(70 * var(--u));text-wrap:balance;overflow-wrap:anywhere;font-family:var(--font-display);font-size:calc(66 * var(--u));font-weight:700;letter-spacing:calc(1 * var(--u));line-height:1.05;text-transform:uppercase;}
.ua-guestblock{width:calc(800 * var(--u));margin-top:calc(59 * var(--u));text-align:center;}
.ua-guestlabel{font-family:var(--font-body);font-size:calc(32 * var(--u));font-weight:500;line-height:calc(32 * var(--u));color:#fff;}
.ua-guestname{text-wrap:balance;overflow-wrap:anywhere;font-family:var(--font-display);font-size:calc(60 * var(--u));font-weight:700;letter-spacing:calc(1 * var(--u));line-height:1.05;margin-top:calc(40 * var(--u));}
.ua-open-btn{position:relative;width:calc(438 * var(--u));height:calc(83 * var(--u));margin-top:calc(81 * var(--u));flex:none;display:flex;align-items:center;justify-content:center;gap:calc(16 * var(--u));
  appearance:none;-webkit-appearance:none;background:var(--c-dark);color:#fff;border-radius:9999px;border:0;box-shadow:inset 0 0 0 calc(2 * var(--u)) rgba(247,237,216,.55);
  font-family:var(--font-body);font-weight:600;font-size:calc(27 * var(--u));letter-spacing:calc(1 * var(--u));cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;}
.ua-open-btn svg{width:calc(30 * var(--u));height:calc(30 * var(--u));flex:none;}
.ua-open-btn:active{scale:.98;}
.ua-stack.is-compact .ua-guestblock{margin-top:calc(36 * var(--u));}
.ua-stack.is-compact .ua-guestname{margin-top:calc(26 * var(--u));}
.ua-stack.is-compact .ua-open-btn{margin-top:calc(56 * var(--u));}
.ua-names,.ua-guestname{text-shadow:0 1px 8px rgba(0,0,0,.35);}

/* ================= Hero ================= */
.ua-hero{background:var(--c-light);}
.ua-hero.is-still{background:var(--c-light) url("/templates/garden/assets/hero-last.jpg") center/cover no-repeat;}
.ua-hero-video{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;background:transparent;pointer-events:none;}
.ua-hero-initial,.ua-hero-amp,.ua-hero-date{color:var(--c-dark);text-align:center;white-space:nowrap;line-height:1;}
.ua-hero-initial{font-family:var(--font-display);font-weight:600;font-size:calc(190 * var(--u));text-transform:uppercase;}
.ua-hero-init-top{--x:297;--y:100;--w:240;--h:190;}
.ua-hero-init-bottom{--x:522;--y:100;--w:240;--h:190;}
.ua-hero-amp{font-family:var(--font-display);font-weight:600;font-size:calc(59.3 * var(--u));--x:490;--y:165;--w:100;--h:59.3;}
.ua-hero-date{font-family:var(--font-body);font-weight:500;font-size:calc(40 * var(--u));letter-spacing:calc(9 * var(--u));padding-left:calc(9 * var(--u));--x:90;--y:330;--w:900;--h:40;}
.ua-hero.is-pending .ua-hero-initial,.ua-hero.is-pending .ua-hero-amp,.ua-hero.is-pending .ua-hero-date{opacity:0;translate:0 calc(12 * var(--u));}
.ua-hero-initial,.ua-hero-amp,.ua-hero-date{transition:opacity 2600ms cubic-bezier(.25,.1,.25,1),translate 2600ms cubic-bezier(.25,.1,.25,1);}
.ua-hero-init-top{transition-delay:0ms;}
.ua-hero-amp{transition-delay:500ms;}
.ua-hero-init-bottom{transition-delay:900ms;}
.ua-hero-date{transition-delay:1700ms;}

/* ================= Ayat ================= */
.ua-ayat-photo{border-radius:calc(57.39 * var(--u));overflow:hidden;}
.ua-ayat-photo img{display:none;position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;}
.ua-ayat-verse{display:flex;align-items:center;justify-content:center;font-family:'DejaVu Serif',Georgia,serif;font-style:italic;font-weight:400;font-size:calc(21.74 * var(--u));line-height:calc(35.25 * var(--u));color:#1f4876;text-align:center;}
.ua-ayat-verse-text{width:100%;}
.ua-ayat-source{display:flex;align-items:center;justify-content:center;font-family:'DejaVu Serif',Georgia,serif;font-weight:400;font-size:calc(48.05 * var(--u));line-height:1.1;color:#1f4876;text-align:center;}
.ua-ayat-source span{display:block;width:100%;}
.ua-ayat-photo-line{box-shadow:inset 0 0 0 calc(1.15 * var(--u)) #000;border-radius:calc(57.96 * var(--u));pointer-events:none;}
.ua-ayat-flowers{opacity:.8;width:100%;height:100%;}

/* ================= Pasangan ================= */
.ua-pas-panel{border-radius:calc(50 * var(--u));background:rgba(96,112,83,.8);box-shadow:inset 0 0 0 calc(1 * var(--u)) rgba(0,0,0,.8);}
.ua-pas-aperture{overflow:hidden;-webkit-mask-image:url("/templates/garden/assets/pas-mask.webp");mask-image:url("/templates/garden/assets/pas-mask.webp");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;}
.ua-pas-aperture img{display:none;width:100%;height:100%;object-fit:cover;object-position:50% 27%;}
.ua-pas-title,.ua-pas-intro,.ua-pas-name,.ua-pas-parents{color:#fff9e2;text-align:center;}
.ua-pas-title{font-family:var(--font-script);font-size:calc(80.4 * var(--u));line-height:calc(107 * var(--u));white-space:nowrap;}
.ua-pas-title-text{width:100%;}
.ua-pas-line{width:max-content;margin:0 auto;}
.ua-pas-intro{font-family:var(--font-body);font-weight:600;font-size:calc(25 * var(--u));line-height:calc(38 * var(--u));}
.ua-pas-intro-text{width:100%;}
.ua-pas-name{display:flex;align-items:flex-end;justify-content:center;font-family:'Tinos','Times New Roman',serif;font-weight:400;font-size:calc(54.8 * var(--u));line-height:1;text-transform:uppercase;white-space:nowrap;}
.ua-pas-parents{font-family:var(--font-body);font-weight:600;font-size:calc(44.2 * var(--u));line-height:calc(60 * var(--u));}
.ua-pas-parents-text{width:100%;}
.ua-pas-ig{display:block;line-height:0;}
.ua-pas-ig img{display:block;width:100%;height:100%;}

/* ================= Acara ================= */
.ua-ac-title,.ua-ac-dt,.ua-ac-venue,.ua-ac-addr,.ua-ac-cd{text-align:center;}
.ua-ac-title{font-family:'DejaVu Sans',Verdana,sans-serif;font-size:calc(78.2 * var(--u));line-height:calc(78.2 * var(--u));color:#115a34;white-space:nowrap;}
.ua-ac-dt{font-family:'Lora',Georgia,serif;font-weight:400;color:#135a37;text-transform:uppercase;}
.ua-ac-l0,.ua-ac-l1{font-weight:400;font-size:calc(77.9 * var(--u) * var(--k,1));line-height:calc(103 * var(--u));height:calc(103 * var(--u));white-space:nowrap;}
.ua-ac-l2{font-weight:400;font-size:calc(54.7 * var(--u) * var(--k,1));line-height:calc(90 * var(--u));height:calc(90 * var(--u));color:#276a49;white-space:nowrap;}
.ua-ac-venue{font-family:'Lora',Georgia,serif;font-weight:400;font-size:calc(49.8 * var(--u));line-height:calc(49.8 * var(--u));color:#1c1c20;text-transform:uppercase;white-space:nowrap;}
.ua-ac-addr{font-family:'Lora',Georgia,serif;font-weight:400;font-size:calc(30.3 * var(--u));line-height:calc(47.5 * var(--u));color:#2a2a2e;}
.ua-ac-addr-text{width:100%;}
.ua-ac-chunk{display:inline-block;max-width:100%;}
.ua-ac-cd{font-family:'Lora',Georgia,serif;font-weight:400;font-size:calc(69.5 * var(--u));line-height:calc(70 * var(--u));color:#587532;white-space:nowrap;}
.ua-ac-maps{display:block;line-height:0;}
.ua-ac-maps img{display:block;width:100%;height:100%;}

/* ================= Live Streaming (stage 2; appended, stage-1 rules above are untouched) ================= */
.ua-live{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc(1199 * var(--u));background:var(--c-dark);}
.ua-app.is-open .ua-live{display:block;}
.ua-live-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-live.live .m.on[data-idle="live"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-live calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
.ua-lv-clip{overflow:hidden;border-radius:calc(48 * var(--u));pointer-events:none;}
.ua-lv-btn{display:block;line-height:0;text-decoration:none;color:#f8f9f8;-webkit-tap-highlight-color:transparent;}
.ua-lv-btn>img{display:block;width:100%;height:100%;}
.ua-lv-in{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:calc(32 * var(--u));padding-left:calc(4 * var(--u));box-sizing:border-box;}
.ua-lv-ico{width:calc(54 * var(--u));height:calc(54 * var(--u));margin:calc(-5 * var(--u)) calc(-6 * var(--u));flex:none;fill:none;stroke:#f8f9f8;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.ua-lv-ico .f{fill:#f8f9f8;stroke:none;}
.ua-lv-label{transform:translateY(calc(-2 * var(--u)));font-family:var(--font-body);font-weight:600;font-size:calc(34.1 * var(--u));line-height:1;white-space:nowrap;color:#f8f9f8;}

/* ================= Galeri (stage 3; appended, earlier rules are untouched) ================= */
.ua-galeri{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc(var(--H,1481) * var(--u));background:#607053;}
.ua-app.is-open .ua-galeri{display:block;}
.ua-galeri-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-gal-galeri,.ua-gal-title,.ua-gal-sub{text-align:center;white-space:nowrap;}
.ua-gal-galeri,.ua-gal-title{font-family:'Bodoni Moda','Didot',Georgia,serif;font-weight:700;font-optical-sizing:none;font-variation-settings:'opsz' 24;line-height:1;}
.ua-gal-galeri{color:#fffdf1;font-size:calc(38 * var(--u));letter-spacing:calc(6.5 * var(--u));padding-left:calc(6.5 * var(--u));}
.ua-gal-title{color:#fffdf2;font-size:calc(93.4 * var(--u));letter-spacing:calc(-5.5 * var(--u));}
.ua-gal-sub{color:#fffdf2;font-family:'Gelasio',Georgia,serif;font-weight:400;font-size:calc(32 * var(--u));line-height:calc(35 * var(--u));letter-spacing:calc(.3 * var(--u));}
.ua-gal-row{overflow:hidden;}
.ua-gal-track{display:flex;gap:calc(23 * var(--u));width:100%;height:100%;overflow-x:hidden;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-y;}
.ua-gal-track::-webkit-scrollbar{display:none;}
.ua-gal-slide{flex:0 0 calc(395 * var(--u));height:100%;scroll-snap-align:start;border-radius:calc(22 * var(--u));overflow:hidden;background:rgba(248,237,217,.07);cursor:zoom-in;-webkit-tap-highlight-color:transparent;}
.ua-gal-slide[hidden]{display:none;}
.ua-gal-slide:focus-visible{outline:3px solid var(--c-light);outline-offset:-3px;}
.ua-gal-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%;-webkit-user-drag:none;user-select:none;}
.ua-gal-dots{display:flex;align-items:center;justify-content:center;gap:calc(14 * var(--u));}
.ua-gal-dots span{display:block;flex:0 0 auto;width:calc(10 * var(--u));height:calc(10 * var(--u));border-radius:50%;background:rgba(248,237,217,.38);}
.ua-gal-dots span.is-active{width:calc(16 * var(--u));height:calc(16 * var(--u));background:var(--c-light);}
/* fullscreen lightbox: one <img> at a time, released on close */
.ua-lb{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2147483000;background:rgba(5,16,28,.96);overflow:hidden;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;}
.ua-lb[hidden]{display:none;}
.ua-lb-img{position:absolute;left:50%;top:50%;max-width:none;transform-origin:50% 50%;will-change:transform;-webkit-user-drag:none;pointer-events:none;}
.ua-lb-btn{position:absolute;width:48px;height:48px;border:0;border-radius:24px;background:rgba(0,0,0,.55);color:#fff;font:400 30px/48px 'Poppins',Arial,sans-serif;text-align:center;padding:0;cursor:pointer;touch-action:manipulation;}
.ua-lb-x{top:calc(env(safe-area-inset-top,0px) + 12px);right:calc(env(safe-area-inset-right,0px) + 12px);}
.ua-lb-prev,.ua-lb-next{top:50%;margin-top:-24px;}
.ua-lb-prev{left:calc(env(safe-area-inset-left,0px) + 8px);}
.ua-lb-next{right:calc(env(safe-area-inset-right,0px) + 8px);}
.ua-lb-btn[hidden]{display:none;}
@media (hover:none) and (pointer:coarse){.ua-lb-prev,.ua-lb-next{display:none;}}
.ua-lb-count{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);text-align:center;color:#fff;font:500 15px/1 'Poppins',Arial,sans-serif;letter-spacing:.06em;text-shadow:0 1px 3px rgba(0,0,0,.7);pointer-events:none;}
.ua-lb-count[hidden]{display:none;}

/* ================= Video (stage 4; appended) ================= */
.ua-video{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc(1525.3 * var(--u));background:#607053;}
.ua-app.is-open .ua-video{display:block;}
.ua-video.live .m.on[data-idle="live"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-live calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
.ua-video-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-vd-frame{background:#000;overflow:hidden;}
.ua-vd-poster{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;background:#000;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;}
.ua-vd-poster:focus-visible{outline:3px solid #fff;outline-offset:-5px;}
.ua-vd-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.ua-vd-thumb[hidden]{display:none;}
.ua-vd-btn{position:relative;display:flex;align-items:center;justify-content:center;width:calc(120.5 * var(--u));height:calc(120.5 * var(--u));border-radius:50%;background:rgba(0,0,0,.3);}
.ua-vd-btn svg{width:calc(55.1 * var(--u));height:calc(57.4 * var(--u));margin-left:calc(5.2 * var(--u));}
.ua-vd-poster:active .ua-vd-btn{background:rgba(0,0,0,.45);}
.ua-vd-player{position:absolute;border:0;background:#000;display:block;}
iframe.ua-vd-player{left:0;top:calc(102.1 * var(--u));width:100%;height:calc(606.0 * var(--u));}
video.ua-vd-player{left:0;top:0;width:100%;height:100%;object-fit:contain;}

/* ================= Love Story (stage 4; appended) ================= */
.ua-lovestory{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc(var(--H,2364) * var(--u));background:#9db36f;}
.ua-app.is-open .ua-lovestory{display:block;}
.ua-lovestory-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-lovestory.live .m.on[data-idle="live"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-live calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
.ua-ls-card{overflow:visible;}
.ua-ls-strip{position:absolute;left:0;top:0;width:calc(68 * var(--u));height:calc(327 * var(--u));object-fit:cover;object-position:0 0;}
.ua-ls-box{position:absolute;left:calc(90 * var(--u));top:calc(3 * var(--u));width:calc(764 * var(--u));height:calc(282 * var(--u));border-radius:calc(30 * var(--u));background:linear-gradient(180deg,#fefdfb 0%,#fefefd 10%,#fdfcf9 25%,#fbf8f3 50%,#f9f5ee 75%,#f8f3ea 90%,#f7f1e8 100%);overflow:hidden;}
.ua-ls-text{position:absolute;left:0;right:0;top:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(6.4 * var(--u)) calc(32 * var(--u)) 0;text-align:center;}
.ua-ls-year{font-family:'Arimo','Helvetica Neue',Arial,sans-serif;font-style:italic;font-weight:700;font-size:calc(38 * var(--u));line-height:1;color:#221a11;white-space:nowrap;margin-bottom:calc(22.3 * var(--u));}
.ua-ls-body{width:calc(700 * var(--u));max-width:100%;font-family:'Gelasio',Georgia,serif;font-weight:400;font-size:calc(41.7 * var(--u));line-height:calc(67 * var(--u));color:#1c140c;overflow-wrap:anywhere;}

/* ================= RSVP (stage 5; appended) ================= */
.dy{top:calc((var(--y) + var(--dy,0)) * var(--u));}
.ua-rsvp{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc((2387 + var(--dy,0)) * var(--u));background:var(--c-dark);}
.ua-app.is-open .ua-rsvp{display:block;}
.ua-rsvp-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-rsvp.live .m.on[data-idle="live"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-live calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
.ua-rs-dim{position:absolute;left:0;top:0;right:0;bottom:0;background:rgba(0,0,0,.15);pointer-events:none;}
.ua-rs-low{top:calc((var(--y) + var(--dy,0)) * var(--u));}
.ua-rs-bglow{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 calc(114.8 * var(--u)));mask-image:linear-gradient(to bottom,transparent 0,#000 calc(114.8 * var(--u)));}
.ua-ttl.ua-rs-t1{font-family:'Arimo','Helvetica Neue',Arial,sans-serif;font-weight:400;-webkit-text-stroke:calc(3.2 * var(--u)) #fff;font-size:calc(79.6 * var(--u));letter-spacing:calc(6 * var(--u));text-indent:calc(6 * var(--u));color:#fff;}
.ua-ttl.ua-rs-t2{white-space:nowrap;font-family:'Gelasio',Georgia,serif;font-style:italic;font-weight:700;font-size:calc(65.2 * var(--u));color:#fff;}
.ua-rs-desc{--x:137.7;--y:462;--w:803.4;--h:112.5;display:flex;align-items:flex-start;justify-content:center;text-align:center;font-family:'Arimo','Helvetica Neue',Arial,sans-serif;font-weight:400;font-size:calc(36.7 * var(--u));line-height:calc(56.2 * var(--u));color:#fff;overflow:hidden;overflow-wrap:anywhere;}
.ua-rs-label{--x:44.2;--w:516.5;--h:32.1;font-family:'EB Garamond',Georgia,serif;font-weight:700;font-size:max(calc(31.8 * var(--u)),11px);line-height:1;color:#fff;white-space:nowrap;}
.ua-rs-ctl{--x:47.1;--w:995.1;--h:110.2;box-sizing:border-box;margin:0;padding:0 calc(32.7 * var(--u));border:0;border-radius:calc(21.8 * var(--u));background:#fff;box-shadow:0 0 0 calc(2.3 * var(--u)) rgba(196,205,212,.4),0 calc(4.6 * var(--u)) calc(8 * var(--u)) rgba(0,0,0,.10);font-family:'EB Garamond',Georgia,serif;font-weight:400;font-size:max(calc(37.9 * var(--u)),16px);line-height:1.2;color:#111;outline:0;-webkit-appearance:none;appearance:none;}
.ua-rs-ctl::placeholder{color:#777;opacity:1;}
.ua-rs-ctl:focus-visible{box-shadow:0 0 0 calc(3.4 * var(--u)) rgba(255,255,255,.75);}
.ua-rs-select{--h:114.8;padding-left:calc(41.9 * var(--u));padding-right:calc(68.9 * var(--u));text-overflow:ellipsis;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='20' viewBox='0 0 34 20'%3E%3Cpath d='M3 3l14 13L31 3' fill='none' stroke='%23111' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right calc(8 * var(--u)) center / calc(19.5 * var(--u)) calc(11.5 * var(--u));}
.ua-rs-ctl[hidden],.ua-rs-label[hidden]{display:none;}
.ua-rs-select:disabled{opacity:.55;cursor:not-allowed;}
.ua-rs-area{--h:192.8;padding:calc(30.4 * var(--u)) calc(32.7 * var(--u)) 0;resize:none;display:block;line-height:1.3;}
.ua-rs-submit{--x:44.2;--y:1544.3;--w:1000.2;--h:110.2;top:calc((var(--y) + var(--dy,0)) * var(--u));box-sizing:border-box;margin:0;padding:calc(8.6 * var(--u)) 0 0 calc(13 * var(--u));border:0;border-radius:calc(25.2 * var(--u));background:#235942;box-shadow:0 calc(4.6 * var(--u)) calc(6.9 * var(--u)) rgba(0,0,0,.14);color:var(--c-light);font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:max(calc(56 * var(--u)),12px);letter-spacing:calc(13 * var(--u));text-transform:uppercase;line-height:1;cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;}
.ua-rs-submit:disabled{opacity:.7;cursor:default;}
.ua-rs-submit::after{content:"";position:absolute;left:0;right:0;top:calc(-19.5 * var(--u));bottom:calc(-19.5 * var(--u));}
.ua-rs-submit:focus-visible{outline:3px solid #fff;outline-offset:-5px;}
.ua-rs-status{--x:47.1;--y:1666.5;--w:995.1;--h:57.4;top:calc((var(--y) + var(--dy,0)) * var(--u));margin:0;display:flex;align-items:center;justify-content:center;text-align:center;font-family:'Arimo','Helvetica Neue',Arial,sans-serif;font-weight:500;font-size:max(calc(28.7 * var(--u)),12px);line-height:1.15;color:var(--c-light);}
.ua-rs-status.is-ok{color:var(--c-light);}
.ua-rs-status:empty{visibility:hidden;}
.ua-rs-card{--x:46.5;--w:986.5;--h:180.8;top:calc((var(--y) + var(--dy,0)) * var(--u));box-sizing:border-box;padding:0 calc(39.6 * var(--u));border:0;box-shadow:0 calc(2.3 * var(--u)) calc(8 * var(--u)) rgba(0,0,0,.12);border-radius:calc(26.4 * var(--u));background:#fff;display:flex;flex-direction:column;justify-content:center;overflow:hidden;}
.ua-rs-card[hidden]{display:none;}
#uaRsCard1{--y:1734.8;}
#uaRsCard2{--y:1948.8;--h:182.5;}
.ua-rs-card-name{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;font-size:max(calc(39.6 * var(--u)),12px);line-height:1.15;color:#333;position:relative;top:calc(-2.9 * var(--u));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ua-rs-card-msg{margin:calc(13.8 * var(--u)) 0 0;font-family:'EB Garamond',Georgia,serif;font-weight:400;font-size:max(calc(34.1 * var(--u)),12px);line-height:1.25;color:#333;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}

/* ================= Hadiah (stage 6; appended) ================= */
.ua-hadiah{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc(var(--H,1825) * var(--u));background:#607053;}
.ua-app.is-open .ua-hadiah{display:block;}
.ua-hadiah-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-hadiah.live .m.on[data-idle="live"]{animation:m-in calc(var(--t,1200) * 1ms) var(--e) calc(var(--d,0) * 1ms) backwards,m-live calc(var(--it,12000) * 1ms) ease-in-out calc((var(--d,0) + var(--t,1200) + var(--io,0)) * 1ms) infinite none;}
.ua-hd-desc{display:flex;align-items:flex-start;justify-content:center;font-family:var(--font-body);font-weight:500;font-size:calc(34 * var(--u));letter-spacing:calc(1.2 * var(--u));line-height:calc(51.6 * var(--u));color:#fff;text-align:center;}
.ua-hd-desc-text{width:100%;padding-left:calc(1.2 * var(--u));}
.ua-hd-card{color:#06150c;font-family:var(--font-body);}
.ua-hd-card::before{content:"";position:absolute;left:calc(1.1 * var(--u));top:calc(1.1 * var(--u));width:calc(688.6 * var(--u));height:calc(469.4 * var(--u));border-radius:calc(23 * var(--u));background:linear-gradient(172deg,#f5f7f7 0%,#f4f6f7 55%,#e6e7e8 100%);box-shadow:0 calc(3.4 * var(--u)) calc(8 * var(--u)) rgba(0,0,0,.16);}
.ua-hd-card > *{position:absolute;}
.ua-hd-card[hidden]{display:none;}
.ua-hd-title{left:calc(46.5 * var(--u));top:calc(67.1 * var(--u));width:calc(401.7 * var(--u));font-weight:600;font-size:max(calc(29.5 * var(--u)),11px);line-height:1.2;color:#06150c;overflow-wrap:anywhere;}
.ua-hd-logo{left:calc(474 * var(--u));top:calc(52.8 * var(--u));width:calc(168.7 * var(--u));height:calc(49.4 * var(--u));display:flex;align-items:center;justify-content:flex-end;}
.ua-hd-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain;object-position:right center;}
.ua-hd-logo-t{font-weight:600;font-size:max(calc(26.4 * var(--u)),11px);line-height:1.1;color:#06150c;text-align:right;overflow-wrap:break-word;}
.ua-hd-lab{font-weight:400;font-size:max(calc(23.8 * var(--u)),10px);line-height:1;color:#06150c;white-space:nowrap;}
.ua-hd-numlab{left:calc(47.6 * var(--u));top:calc(200.3 * var(--u));}
.ua-hd-num{left:calc(45.9 * var(--u));top:calc(238.7 * var(--u));width:calc(401.7 * var(--u));font-weight:600;font-size:calc(31.6 * var(--u));letter-spacing:calc(7.1 * var(--u));line-height:1.15;color:#06150c;}
.ua-hd-atl{left:calc(47.6 * var(--u));top:calc(350.6 * var(--u));}
.ua-hd-holder{left:calc(48.8 * var(--u));top:calc(383.3 * var(--u));width:calc(410.3 * var(--u));font-weight:600;font-size:max(calc(26.7 * var(--u)),10.5px);line-height:1.2;color:#06150c;overflow-wrap:anywhere;}
.ua-hd-pl{right:calc(48.8 * var(--u));top:calc(350.6 * var(--u));text-align:right;}
.ua-hd-date{right:calc(47.6 * var(--u));top:calc(382.2 * var(--u));width:calc(149.2 * var(--u));font-weight:600;font-size:max(calc(27.4 * var(--u)),10.5px);line-height:1.2;color:#06150c;text-align:right;white-space:nowrap;}
.ua-hd-pl[hidden],.ua-hd-date[hidden],.ua-hd-atl[hidden],.ua-hd-holder[hidden]{display:none;}
.ua-hd-copy{left:calc(464.8 * var(--u));top:calc(221.5 * var(--u));width:calc(179 * var(--u));height:calc(60.8 * var(--u));border:0;padding:0;margin:0;border-radius:calc(30.4 * var(--u));background:#22522e;color:#fff;font-family:var(--font-body);font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;}
.ua-hd-copy::after{content:"";position:absolute;left:calc(-17.2 * var(--u));right:calc(-17.2 * var(--u));top:calc(-17.2 * var(--u));bottom:calc(-17.2 * var(--u));}
.ua-hd-copy svg{position:absolute;left:calc(35.6 * var(--u));top:calc(18.4 * var(--u));width:calc(18.4 * var(--u));height:calc(20.7 * var(--u));}
.ua-hd-copy-t{position:absolute;left:calc(90.1 * var(--u));top:calc(17.8 * var(--u));font-size:calc(20.5 * var(--u));line-height:1;white-space:nowrap;}
.ua-hd-copy.is-done{background:#22522e;}
.ua-hd-qrbox{left:calc(144.6 * var(--u));top:calc(123.4 * var(--u));width:calc(401.7 * var(--u));height:calc(401.7 * var(--u));display:flex;align-items:center;justify-content:center;background:#fff;border-radius:calc(16.1 * var(--u));overflow:hidden;cursor:zoom-in;-webkit-tap-highlight-color:transparent;box-shadow:0 0 0 calc(1.7 * var(--u)) rgba(0,0,0,.08);}
.ua-hd-qrbox:focus-visible{outline:calc(3.4 * var(--u)) solid var(--c-dark);outline-offset:calc(2.3 * var(--u));}
.ua-hd-qrzoom{position:absolute;right:calc(10.3 * var(--u));bottom:calc(10.3 * var(--u));width:calc(41.3 * var(--u));height:calc(41.3 * var(--u));border-radius:50%;background:rgba(40,30,28,.62);display:flex;align-items:center;justify-content:center;pointer-events:none;}
.ua-hd-qrbox img{display:block;width:100%;height:100%;object-fit:contain;}
.ua-hd-wide .ua-hd-logo{left:calc(359.2 * var(--u));width:calc(283.5 * var(--u));}
.ua-hd-wide .ua-hd-title{width:calc(304.1 * var(--u));}
.ua-hd-qris::before{height:calc(100% - calc(2.3 * var(--u)));}
.ua-hd-qrzoom svg{width:calc(23 * var(--u));height:calc(23 * var(--u));}

/* ================= Closing (stage 7; appended) ================= */
.ua-closing{position:relative;width:100%;overflow:hidden;display:none;--u:calc(var(--aw) / 1080);height:calc((2279 - var(--cs,0)) * var(--u));background:#607053;}
.ua-app.is-open .ua-closing{display:block;}
.ua-closing-scene{position:absolute;left:0;top:0;width:100%;height:100%;}
.ua-cl-body{position:absolute;left:0;top:calc(var(--cs,0) * -1 * var(--u));width:100%;height:calc(2278.8 * var(--u));}
.ua-cl-photo{left:0;top:0;width:calc(1080 * var(--u));height:calc(1893.7 * var(--u));overflow:hidden;background:#607053;}
.ua-cl-photo[hidden],.ua-cl-veil[hidden],.ua-cl-topfade[hidden]{display:none;}
.ua-cl-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 28%;}
.ua-cl-veil{left:0;top:0;width:calc(1080 * var(--u));height:calc(2278.8 * var(--u));background:linear-gradient(to bottom,rgba(96,112,83,0) 0,rgba(96,112,83,0.000) calc(530.8 * var(--u)),rgba(96,112,83,0.003) calc(559.5 * var(--u)),rgba(96,112,83,0.010) calc(588.2 * var(--u)),rgba(96,112,83,0.017) calc(616.9 * var(--u)),rgba(96,112,83,0.029) calc(645.6 * var(--u)),rgba(96,112,83,0.045) calc(674.3 * var(--u)),rgba(96,112,83,0.061) calc(703 * var(--u)),rgba(96,112,83,0.076) calc(731.7 * var(--u)),rgba(96,112,83,0.095) calc(760.4 * var(--u)),rgba(96,112,83,0.113) calc(789.1 * var(--u)),rgba(96,112,83,0.133) calc(817.7 * var(--u)),rgba(96,112,83,0.142) calc(846.4 * var(--u)),rgba(96,112,83,0.161) calc(875.1 * var(--u)),rgba(96,112,83,0.182) calc(903.8 * var(--u)),rgba(96,112,83,0.204) calc(932.5 * var(--u)),rgba(96,112,83,0.230) calc(961.2 * var(--u)),rgba(96,112,83,0.255) calc(989.9 * var(--u)),rgba(96,112,83,0.280) calc(1018.6 * var(--u)),rgba(96,112,83,0.307) calc(1047.3 * var(--u)),rgba(96,112,83,0.340) calc(1076 * var(--u)),rgba(96,112,83,0.367) calc(1104.7 * var(--u)),rgba(96,112,83,0.393) calc(1133.4 * var(--u)),rgba(96,112,83,0.420) calc(1162.1 * var(--u)),rgba(96,112,83,0.449) calc(1190.8 * var(--u)),rgba(96,112,83,0.476) calc(1219.4 * var(--u)),rgba(96,112,83,0.504) calc(1248.1 * var(--u)),rgba(96,112,83,0.532) calc(1276.8 * var(--u)),rgba(96,112,83,0.561) calc(1305.5 * var(--u)),rgba(96,112,83,0.589) calc(1334.2 * var(--u)),rgba(96,112,83,0.618) calc(1362.9 * var(--u)),rgba(96,112,83,0.649) calc(1391.6 * var(--u)),rgba(96,112,83,0.680) calc(1420.3 * var(--u)),rgba(96,112,83,0.713) calc(1449 * var(--u)),rgba(96,112,83,0.745) calc(1477.7 * var(--u)),rgba(96,112,83,0.778) calc(1506.4 * var(--u)),rgba(96,112,83,0.807) calc(1535.1 * var(--u)),rgba(96,112,83,0.835) calc(1563.8 * var(--u)),rgba(96,112,83,0.860) calc(1592.5 * var(--u)),rgba(96,112,83,0.884) calc(1621.1 * var(--u)),rgba(96,112,83,0.909) calc(1649.8 * var(--u)),rgba(96,112,83,0.931) calc(1678.5 * var(--u)),rgba(96,112,83,0.954) calc(1707.2 * var(--u)),rgba(96,112,83,0.974) calc(1735.9 * var(--u)),rgba(96,112,83,0.994) calc(1764.6 * var(--u)),rgba(96,112,83,1.000) calc(1793.3 * var(--u)),rgba(96,112,83,1.000) calc(1822 * var(--u)),rgba(96,112,83,1.000) calc(1850.7 * var(--u)),rgba(96,112,83,1.000) calc(1879.4 * var(--u)),rgba(96,112,83,1) calc(1807.7 * var(--u)));}
.ua-cl-topfade{left:0;top:0;width:calc(1080 * var(--u));height:calc(241 * var(--u));background:linear-gradient(to bottom,#607053 0,#607053 100%);}
.ua-cl-kata,.ua-cl-blessed,.ua-cl-names{margin:0;text-align:center;overflow-wrap:anywhere;}
.ua-cl-kata{left:calc(215.8 * var(--u));top:calc(1494.3 * var(--u));width:calc(642.7 * var(--u));height:calc(143.5 * var(--u));overflow:hidden;font-family:'Arimo','Helvetica Neue',Arial,sans-serif;font-weight:400;font-size:calc(34.3 * var(--u));line-height:calc(64 * var(--u));color:#fff;}
.ua-cl-blessed{left:calc(163 * var(--u));top:calc(1673.9 * var(--u));width:calc(746 * var(--u));height:calc(34.4 * var(--u));font-family:'Arimo','Helvetica Neue',Arial,sans-serif;font-weight:400;font-size:max(calc(31.6 * var(--u)),11px);line-height:calc(34.4 * var(--u));color:#fff;white-space:nowrap;}
.ua-cl-names{left:calc(50.5 * var(--u));top:calc(1732 * var(--u));width:calc(975.6 * var(--u));height:calc(91.8 * var(--u));display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-style:italic;font-weight:400;font-size:calc(69.3 * var(--u));line-height:1;color:#fff;white-space:nowrap;text-align:center;}
.ua-cl-names:empty{display:none;}
.ua-cl-logo{left:calc(486.6 * var(--u));top:calc(2001.6 * var(--u));width:calc(102.1 * var(--u));height:calc(102.1 * var(--u));display:block;}
.ua-cl-logo img{display:block;width:100%;height:100%;}
.ua-cl-soc{left:calc(444.2 * var(--u));top:calc(2141.6 * var(--u));width:calc(185.9 * var(--u));height:calc(78 * var(--u));display:block;pointer-events:none;}
.ua-cl-soc-a{top:calc(2141.6 * var(--u));width:calc(78 * var(--u));height:calc(78 * var(--u));display:block;}
.ua-cl-logo::after,.ua-cl-soc-a::after{content:"";position:absolute;left:calc(-11.5 * var(--u));right:calc(-11.5 * var(--u));top:calc(-11.5 * var(--u));bottom:calc(-11.5 * var(--u));}
.ua-cl-music{left:calc(922.2 * var(--u));top:calc(2127.3 * var(--u));width:calc(105.6 * var(--u));height:calc(105 * var(--u));margin:0;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;}
.ua-cl-music[hidden]{display:none;}
.ua-cl-music img{display:block;width:100%;height:100%;pointer-events:none;}
.ua-cl-music.is-on{background:rgba(244,243,226,.22);}
.ua-cl-music:focus-visible,.ua-cl-logo:focus-visible,.ua-cl-soc-a:focus-visible{outline:calc(3.4 * var(--u)) solid var(--c-light);outline-offset:calc(3.4 * var(--u));}
.ua-cl-photo:not(.is-ready){visibility:hidden;}
.ua-cl-photo img{transform-origin:50% 28%;}
@keyframes uaClDrift{from{transform:scale(1) translate3d(0,0,0);}to{transform:scale(1.07) translate3d(-1.4%,-1.1%,0);}}
.ua-closing.is-inview .ua-cl-photo img{animation:uaClDrift 24s ease-in-out infinite alternate;}

/* ================= PART 3: neutral stand-ins for art (replace with the template's own ornaments) ================= */
.ua-cover-scene{background:linear-gradient(180deg,var(--c-hero-bg),var(--c-dark));}
.ua-pill{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:9999px;background:var(--c-dark);color:#fff;font-family:var(--font-body);font-weight:600;font-size:calc(34 * var(--u));}
.ua-badge{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;background:var(--c-dark);color:#fff;font-family:var(--font-body);font-weight:700;font-size:calc(70 * var(--u));}
.ua-pas-aperture{border-radius:calc(240 * var(--u));background:rgba(255,255,255,.12);}
.ua-ayat-photo{background:rgba(255,255,255,.35);}
.ua-cl-music .ua-badge,.ua-cl-logo .ua-badge{background:rgba(255,255,255,.18);}
.ua-card{background:var(--c-light);border-radius:calc(60 * var(--u));box-shadow:0 calc(8 * var(--u)) calc(30 * var(--u)) rgba(0,0,0,.18);}
.ua-ttl{display:flex;align-items:center;justify-content:center;text-align:center;color:var(--c-light);font-family:var(--font-display);font-size:calc(var(--fs,60) * var(--u));line-height:1.1;}
.ua-ttl-body{font-family:var(--font-body);line-height:1.5;}
.ua-live .ua-ttl,.ua-acara .ua-ttl[style*="--y:1001"]{color:var(--c-dark);}
.ua-live .ua-ttl-body{color:var(--c-dark);}

/* ================= Garden cover (colours + the compact stack that fits above the arch) ================= */
.ua-cover .ua-text{color:#2f4a38;}
.ua-cover .ua-guestlabel{color:#3d5a45;}
.ua-cover .ua-names,.ua-cover .ua-guestname{text-shadow:0 1px 6px rgba(250,247,236,.85);}
.ua-cover .ua-guestblock{margin-top:calc(40 * var(--u));}
.ua-cover .ua-guestname{margin-top:calc(22 * var(--u));}
.ua-cover .ua-open-btn{margin-top:calc(48 * var(--u));color:#f6efd8;box-shadow:inset 0 0 0 calc(2 * var(--u)) rgba(184,150,62,.9),0 calc(6 * var(--u)) calc(16 * var(--u)) rgba(20,40,28,.3);}
.ua-cover .ua-stack.is-compact .ua-guestblock{margin-top:calc(30 * var(--u));}
.ua-cover .ua-stack.is-compact .ua-guestname{margin-top:calc(18 * var(--u));}
.ua-cover .ua-stack.is-compact .ua-open-btn{margin-top:calc(40 * var(--u));}
.ua-cover .ua-photo-frame{box-shadow:0 calc(10 * var(--u)) calc(30 * var(--u)) rgba(30,50,35,.28);}
.ua-cover .ua-eyebrow{color:#1f3a28;text-shadow:0 1px 4px rgba(250,247,236,.9);}

/* ================= Garden cover contrast revision =================
   ONE KNOB: --cv-shade (0 = original PSD brightness, .28 = default, .45 = clearly darker). Everything else below follows the palette. */
.ua-cover{--cv-shade:.28;--cv-shade-color:#5f7a66;}
.ua-cv-shade{background:var(--cv-shade-color);opacity:var(--cv-shade);mix-blend-mode:multiply;pointer-events:none;}
/* cover texts are white; a soft dark-green shadow keeps them readable on the light sky */
.ua-cover .ua-text,.ua-cover .ua-names,.ua-cover .ua-guestname,.ua-cover .ua-guestlabel,.ua-cover .ua-eyebrow{color:#fff;}
.ua-cover .ua-guestlabel{font-weight:600;}
.ua-cover .ua-text,.ua-cover .ua-names,.ua-cover .ua-guestname,.ua-cover .ua-guestlabel,.ua-cover .ua-eyebrow{text-shadow:0 1px 2px rgba(10,35,20,.65),0 2px 10px rgba(10,35,20,.55);}
.ua-cover .ua-open-btn{background:linear-gradient(180deg,#2f6a4e 0%,#1d4733 100%);color:#fff8e1;font-weight:600;
  box-shadow:inset 0 0 0 calc(3 * var(--u)) #d9b45a,inset 0 calc(2 * var(--u)) 0 rgba(255,248,225,.22),0 calc(10 * var(--u)) calc(22 * var(--u)) rgba(10,30,20,.5);}
.ua-cover .ua-open-btn svg{color:#f4d98a;}

/* ================= Garden Ayat (cover.psd family: Ayat.psd 1080x1755; same geometry and text system as Bugis Ayat) ================= */
@font-face{font-family:'DejaVu Serif';font-style:normal;font-weight:400;font-display:swap;src:url("/templates/garden/assets/DejaVuSerif.woff2") format("woff2");}
@font-face{font-family:'DejaVu Serif';font-style:italic;font-weight:400;font-display:swap;src:url("/templates/garden/assets/DejaVuSerif-Italic.woff2") format("woff2");}
.ua-ayat-foliage{width:100%;height:100%;}
.ua-ayat-photo{background:#e9edf3;}
@font-face{font-family:'DejaVu Sans';font-style:normal;font-weight:400;font-display:swap;src:url("/templates/garden/assets/DejaVuSans.woff2") format("woff2");}
