:root {
    --warna-utama: #5D6450;
    --warna-kedua: #FCFBF8;
    --hijau-muda: #AAB59B;
    --hijau-pucat: #E8EBDD;
    --emas: #B79542;
    --tinta: #4B4E45;
    --kabur: #777A70;
    --garis: #E8E4D9;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background:
        radial-gradient(circle at 15% 8%, rgba(218,222,209,.22), transparent 24%),
        radial-gradient(circle at 88% 78%, rgba(224,219,205,.2), transparent 25%),
        linear-gradient(180deg, #fff 0%, var(--warna-kedua) 55%, #fbfaf6 100%);
    color: var(--tinta);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

body.punya-latar::before { display:none; }
body.punya-latar::after { display:none; }

.bingkai { max-width: 460px; margin: 0 auto; padding: 0 22px; }

/* HERO BOTANICAL */
.sampul {
    min-height: 100vh;
    min-height: 100dvh;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 52px 18px 72px;
    background:
        radial-gradient(circle at 50% 29%, rgba(224,229,216,.45), transparent 28%),
        linear-gradient(180deg, #fff 0%, #fcfbf8 100%);
}
.sampul::before, .sampul::after {
    content: '';
    position: absolute;
    width: 170px;
    height: 210px;
    border-radius: 50%;
    background: rgba(232,235,225,.24);
    filter: blur(1px);
    pointer-events: none;
}
.sampul::before { left: -105px; top: 70px; transform: rotate(-24deg); }
.sampul::after { right: -112px; bottom: 90px; transform: rotate(28deg); }

.hero-content { width: min(100%, 440px); position: relative; z-index: 3; }
.pembuka {
    margin: 0 0 15px;
    font-size: 11px;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: #7F8178;
}

.floral-photo-wrap {
    width: min(82vw, 330px);
    aspect-ratio: 1;
    position: relative;
    margin: 0 auto 20px;
}
.photo-ring {
    position: absolute;
    inset: 21px;
    border-radius: 50%;
    padding: 7px;
    background: #fff;
    border: 2px solid rgba(183,149,66,.86);
    box-shadow: 0 0 0 8px rgba(255,255,255,.96), 0 14px 34px rgba(80,88,68,.14);
}
.photo-ring::before {
    content: '';
    position: absolute;
    inset: -9px;
    border: 1px solid rgba(183,149,66,.35);
    border-radius: 50%;
}
.hero-photo {
    width: 100%; height: 100%; display: block;
    object-fit: cover; object-position: center;
    border-radius: 50%;
}

/* Daun dekoratif berbasis CSS agar tema tetap mandiri tanpa dependensi aset luar. */
.daun { position: absolute; width: 68px; height: 34px; z-index: 2; opacity: .92; }
.daun::before, .daun::after { content:''; position:absolute; display:block; }
.daun::before {
    width: 100%; height: 1px; background: #7B8B73; left:0; top: 50%; transform: rotate(var(--stem, 0deg)); transform-origin:center;
}
.daun::after {
    width: 23px; height: 11px; border-radius: 100% 0 100% 0;
    background: linear-gradient(140deg,#AAB79E,#72866E);
    box-shadow: 23px -8px 0 -1px #91A38A, 43px 5px 0 -2px #A4B29B;
    transform: rotate(var(--leaf, 0deg));
}
.daun-1 { left: 14px; top: 62px; transform: rotate(-28deg); --stem:-16deg; --leaf:-22deg; }
.daun-2 { left: 34px; top: 116px; transform: rotate(-44deg) scale(.9); --stem:-18deg; --leaf:-36deg; }
.daun-3 { right: 12px; top: 70px; transform: rotate(27deg); --stem:14deg; --leaf:24deg; }
.daun-4 { right: 25px; top: 121px; transform: rotate(44deg) scale(.92); --stem:18deg; --leaf:35deg; }
.daun-5 { left: 40px; bottom: 44px; transform: rotate(210deg) scale(.85); --stem:-14deg; --leaf:-22deg; }
.daun-6 { right: 42px; bottom: 44px; transform: rotate(150deg) scale(.85); --stem:15deg; --leaf:24deg; }

.bunga { position:absolute; width:52px; height:52px; z-index:4; border-radius:50%; filter: drop-shadow(0 5px 8px rgba(70,80,59,.08)); }
.bunga::before {
    content:''; position:absolute; inset:6px; border-radius:50%;
    background:
      radial-gradient(circle at 50% 50%, #CDBE87 0 9%, transparent 10%),
      radial-gradient(circle at 50% 17%, #F0EEE5 0 22%, transparent 23%),
      radial-gradient(circle at 83% 50%, #F0EEE5 0 22%, transparent 23%),
      radial-gradient(circle at 50% 83%, #F0EEE5 0 22%, transparent 23%),
      radial-gradient(circle at 17% 50%, #F0EEE5 0 22%, transparent 23%),
      radial-gradient(circle at 19% 19%, #F5F2E9 0 19%, transparent 20%),
      radial-gradient(circle at 81% 19%, #F5F2E9 0 19%, transparent 20%),
      radial-gradient(circle at 19% 81%, #F5F2E9 0 19%, transparent 20%),
      radial-gradient(circle at 81% 81%, #F5F2E9 0 19%, transparent 20%);
}
.bunga-1 { left: 5px; bottom: 50px; transform: rotate(-12deg) scale(.85); }
.bunga-2 { right: -1px; top: 105px; transform: rotate(8deg) scale(.92); }
.bunga-3 { left: 6px; top: 112px; transform: rotate(-8deg) scale(.72); }

.nama-pasangan {
    font-family: 'Great Vibes', 'Brush Script MT', cursive;
    font-size: clamp(42px, 13vw, 64px);
    font-weight: 400;
    line-height: .98;
    color: #5B5E53;
    margin: 0 auto;
    max-width: 100%;
}
.nama-pasangan > span { display: inline; }
.dan { color: #9B9D92; margin: 0 7px; }

.hero-date-block { margin-top: 17px; }
.date-caption {
    display:block; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#86887F; margin-bottom:5px;
}
.date-elegant {
    margin:0;
    font-family:'Cormorant Garamond', Georgia, serif;
    font-size:27px;
    font-weight:600;
    letter-spacing:.11em;
    color:#5D6057;
    text-transform:uppercase;
}

.hitung-mundur { display:flex; justify-content:center; gap:8px; margin:18px 0 0; }
.hm-kotak { min-width:58px; padding:8px 4px; border:0; border-top:1px solid var(--garis); border-bottom:1px solid var(--garis); background:transparent; }
.hm-angka { font-family:'Cormorant Garamond',Georgia,serif; font-size:25px; font-weight:600; color:var(--warna-utama); line-height:1; font-variant-numeric:tabular-nums; }
.hm-label { display:block; margin-top:3px; font-size:9px; text-transform:uppercase; letter-spacing:.12em; color:#8A8D84; }


.hero-orangtua{
  width:min(100%,380px);
  margin:18px auto 0;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:14px;
  color:#6F5F57;
}
.hero-orangtua-item{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0}
.hero-orangtua-label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#A18D82;margin-bottom:3px}
.hero-orangtua-item strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:14px;font-weight:600;line-height:1.25;text-align:center}
.hero-orangtua-dan{font-family:'Cormorant Garamond',Georgia,serif;font-size:12px;color:#A98270;line-height:1}
.hero-orangtua-divider{width:1px;height:42px;background:rgba(169,130,112,.34)}
@media (max-width:560px){
  .hero-orangtua{gap:9px;margin-top:15px}
  .hero-orangtua-item strong{font-size:12.5px}
  .hero-orangtua-label{font-size:8px;letter-spacing:.14em}
}

.pelat { margin: 22px auto 0; padding: 13px 20px; max-width: 300px; background:rgba(255,255,255,.82); border:1px solid #E5E2D8; box-shadow:0 8px 25px rgba(66,73,59,.06); }
.pelat-label { font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:#8A8C82; margin:0 0 2px; }
.pelat-nama { font-family:'Cormorant Garamond',Georgia,serif; font-size:23px; font-weight:600; color:#575A51; margin:0; line-height:1.3; }
.pelat-catatan { font-size:11px; color:#8A8C82; margin:4px 0 0; }

.hero-watermark { position:absolute; color:rgba(189,193,177,.34); font-size:88px; font-family:Georgia,serif; line-height:1; z-index:1; }
.hero-watermark-top { left:-9px; top:-12px; transform:rotate(-20deg); }
.hero-watermark-bottom { right:-7px; bottom:-20px; transform:rotate(26deg); }
.hero-scroll { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:#8D8F86; z-index:3; white-space:nowrap; }
.hero-scroll i { display:block; width:1px; height:26px; margin:6px auto 0; background:#BCC0B3; animation:scroll-line 1.8s ease-in-out infinite; transform-origin:top; }
@keyframes scroll-line { 0%,100%{transform:scaleY(.45);opacity:.45} 50%{transform:scaleY(1);opacity:1} }

.bagian { padding:56px 0; border-top:1px solid var(--garis); text-align:center; }
.bagian-judul { font-family:'Cormorant Garamond',Georgia,serif; font-size:30px; font-weight:500; color:var(--warna-utama); margin:0 0 7px; }
.bagian-sub { font-size:13.5px; color:var(--kabur); margin:0 0 30px; }
.dekorasi-pemisah { display:flex; align-items:center; gap:12px; color:#9CA48F; margin:10px 0 0; }
.dekorasi-pemisah span { height:1px; flex:1; background:var(--garis); }
.dekorasi-pemisah b { font-size:18px; font-weight:400; }

.kutipan-teks { margin:0 0 24px; padding:0; }
.kutipan-teks p { font-family:'Cormorant Garamond',Georgia,serif; font-style:italic; font-size:20px; line-height:1.7; color:var(--warna-utama); margin:0 0 10px; }
.kutipan-teks cite { display:block; font-style:normal; font-size:12.5px; letter-spacing:.04em; color:var(--kabur); }
.sambutan-teks { font-size:14.5px; line-height:1.75; color:var(--tinta); margin:0 auto; max-width:380px; }

.acara { border:1px solid var(--garis); padding:24px 22px; margin-bottom:16px; background:rgba(255,255,255,.7); box-shadow:0 10px 25px rgba(66,73,59,.045); }
.acara-jenis { font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--emas); margin:0 0 8px; }
.acara-nama { font-family:'Cormorant Garamond',Georgia,serif; font-size:24px; font-weight:600; margin:0 0 10px; }
.acara-baris { font-size:14.5px; margin:3px 0; }
.acara-tempat { color:var(--kabur); font-size:14px; margin:10px 0 0; }
.acara-peta { display:inline-block; margin-top:14px; padding:8px 18px; border:1px solid var(--warna-utama); color:var(--warna-utama); text-decoration:none; font-size:13px; letter-spacing:.06em; }
.acara-peta:hover { background:var(--warna-utama); color:#fff; }

.grid-galeri { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; }
.galeri-item { display:block; aspect-ratio:1; overflow:hidden; cursor:zoom-in; }
.galeri-item:nth-child(6n+1) { grid-column:span 2; grid-row:span 2; }
.galeri-item img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.galeri-item:hover img { transform:scale(1.04); }

.garis-waktu { display:flex; flex-direction:column; gap:28px; text-align:left; }
.kisah-item { display:flex; flex-direction:column; gap:14px; border:1px solid var(--garis); overflow:hidden; background:rgba(255,255,255,.72); }
.kisah-foto { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.kisah-teks { padding:4px 20px 20px; }
.kisah-waktu { font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--emas); margin:0 0 6px; }
.kisah-judul { font-family:'Cormorant Garamond',Georgia,serif; font-size:21px; font-weight:600; margin:0 0 8px; }
.kisah-cerita { font-size:14.5px; color:var(--tinta); margin:0; line-height:1.75; }

.tombol-musik { position:fixed; right:18px; bottom:18px; z-index:900; width:46px; height:46px; border-radius:50%; border:1px solid #DDDACC; background:rgba(255,255,255,.94); color:var(--warna-utama); box-shadow:0 7px 18px rgba(0,0,0,.10); cursor:pointer; display:flex; align-items:center; justify-content:center; font-size:18px; }
.tombol-musik.berputar .ikon-musik { animation:musik-putar 2.4s linear infinite; }
@keyframes musik-putar { from{transform:rotate(0)} to{transform:rotate(360deg)} }

.bagian-amplop { padding-bottom:44px; }
.daftar-amplop { display:flex; flex-direction:column; gap:14px; }
.kartu-amplop { display:flex; gap:16px; align-items:center; border:1px solid var(--garis); padding:16px; background:rgba(255,255,255,.72); text-align:left; }
.amplop-qr { width:84px; height:84px; object-fit:contain; border-radius:2px; background:#fff; border:1px solid var(--garis); flex-shrink:0; }
.amplop-bank { font-weight:600; font-size:15px; margin:0 0 4px; }
.amplop-nomor { font-variant-numeric:tabular-nums; font-size:15px; margin:0 0 4px; display:flex; align-items:center; gap:8px; }
.tombol-salin-amplop { font-size:11.5px; font-weight:600; padding:2px 9px; border-radius:99px; border:1px solid var(--warna-utama); background:transparent; color:var(--warna-utama); cursor:pointer; }
.amplop-anama,.amplop-catatan { font-size:13px; color:var(--kabur); margin:0; }

.bagian-rsvp,.bagian-ucapan { padding-bottom:44px; }
.pesan-notifikasi { padding:11px 16px; border-radius:4px; font-size:14px; margin-bottom:18px; text-align:left; }
.pesan-notifikasi.pesan-success{background:#EAF2ED;color:#3F6B4F}.pesan-notifikasi.pesan-error{background:#FBEEEC;color:#A8443C}.pesan-notifikasi.pesan-warning{background:#FBF6E9;color:#8A6516}
.kotak-rsvp-terisi { background:rgba(255,255,255,.74); border:1px solid var(--garis); padding:14px 16px; margin-bottom:20px; text-align:left; font-size:14px; }
.kotak-rsvp-terisi p{margin:0}.rsvp-ubah-catatan{color:var(--kabur);font-size:12.5px;margin-top:4px!important}
.form-rsvp,.form-ucapan{ text-align:left; max-width:380px; margin:0 auto; }
.bidang-rsvp{margin-bottom:16px}.bidang-rsvp label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--tinta)}.wajib-tanda{color:#A8443C;font-weight:400}
.bidang-rsvp input[type=text],.bidang-rsvp input[type=number],.bidang-rsvp textarea{width:100%;padding:10px 12px;font-family:inherit;font-size:14.5px;color:var(--tinta);background:#fff;border:1px solid var(--garis)}
.bidang-rsvp input:focus,.bidang-rsvp textarea:focus{outline:none;border-color:var(--warna-utama)}
.pilihan-hadir{display:flex;gap:16px;flex-wrap:wrap;padding:4px 0}.pilihan-hadir label{display:flex;align-items:center;gap:6px;font-weight:400;font-size:14px;margin:0}.pilihan-hadir input{width:auto;margin:0}
.tombol-kirim{width:100%;padding:12px;border:0;background:var(--warna-utama);color:#fff;font-family:inherit;font-size:14.5px;font-weight:600;letter-spacing:.02em;cursor:pointer}.tombol-kirim:hover{opacity:.92}
.daftar-ucapan{max-width:380px;margin:28px auto 0;display:flex;flex-direction:column;gap:12px;text-align:left}.kartu-ucapan{border-left:2px solid var(--emas);padding:4px 0 4px 14px}.ucapan-nama{font-weight:600;font-size:13.5px;margin:0 0 3px}.ucapan-isi{font-size:13.5px;color:var(--tinta);margin:0;line-height:1.6}

.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(20,18,14,.94);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;transition:opacity .22s ease}.lightbox.tampak{opacity:1}.lightbox[hidden]{display:none}.lightbox-gambar{max-width:min(94vw,720px);max-height:88vh;object-fit:contain;border-radius:2px;transform:scale(.96);transition:transform .22s ease,opacity .18s ease}.lightbox.tampak .lightbox-gambar{transform:scale(1)}.lightbox-gambar.memuat{opacity:0}.lightbox-tutup,.lightbox-nav{position:absolute;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}

.kaki { padding:44px 0 54px; text-align:center; border-top:1px solid var(--garis); color:var(--kabur); font-size:13px; }
.kaki-nama { font-family:'Great Vibes','Brush Script MT',cursive; font-size:30px; color:var(--warna-utama); margin:0 0 6px; }
.jebakan-spam { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; opacity:0!important; }
.siap-muncul { opacity:1; transform:none; transition:opacity .65s ease,transform .65s ease; }
.siap-muncul.tampil { opacity:1; transform:none; }

@media (max-width: 380px) {
    .floral-photo-wrap { width: 300px; }
    .photo-ring { inset: 22px; }
    .nama-pasangan { font-size: 42px; }
    .date-elegant { font-size:24px; }
    .hm-kotak { min-width:53px; }
}
@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}.hero-scroll i{animation:none}.siap-muncul{transition:none}.tombol-musik.berputar .ikon-musik{animation:none} }

/* ==========================================================
   BOTANICAL SERENITY — AUTUMN FLORAL EDITORIAL
   Referensi visual: putih hangat + terracotta + apricot + botanical.
   Override ini sengaja diletakkan di paling bawah agar struktur tema
   asli dan semua class data tetap utuh.
   ========================================================== */
:root{
  --warna-utama:#7A2D1F;
  --warna-kedua:#FCF8F2;
  --hijau-muda:#8E9A7E;
  --hijau-pucat:#EEF0E7;
  --emas:#D1A55F;
  --aksen-aprikot:#E7A06E;
  --tinta:#4B3A34;
  --kabur:#8A7770;
  --garis:#E9DED4;
}
body{
  background:#FCF8F2;
  color:var(--tinta);
}
.bingkai{max-width:460px;padding:0 20px}
.sampul.tema-botanical-terracotta{
  min-height:100vh;
  min-height:100dvh;
  padding:48px 16px 52px;
  justify-content:flex-start;
  background:
    radial-gradient(circle at 50% 42%, rgba(245,232,215,.34), transparent 34%),
    linear-gradient(180deg,#FFFCF8 0%,#FCF8F2 100%);
}
.sampul.tema-botanical-terracotta::before,
.sampul.tema-botanical-terracotta::after{display:none}
.hero-content{width:min(100%,430px);z-index:4}
.hero-kicker{
  margin:0;
  font-size:clamp(54px,15vw,82px);
  line-height:.9;
  font-weight:800;
  letter-spacing:-.045em;
  color:var(--warna-utama);
  font-family:'Segoe UI',Arial,sans-serif;
}
.hero-label{
  margin:28px 0 16px;
  font-size:11px;
  letter-spacing:.34em;
  text-transform:uppercase;
  color:#8A7368;
}
.floral-photo-wrap{
  width:min(78vw,330px);
  aspect-ratio:1;
  margin:0 auto 16px;
}
.floral-photo-wrap .wreath-layer{
  position:absolute;
  inset:-22px;
  background:url('./floral-wreath.svg') center/contain no-repeat;
  pointer-events:none;
  z-index:1;
}
.photo-ring{
  inset:18px;
  padding:7px;
  border:3px solid rgba(209,165,95,.96);
  box-shadow:0 0 0 5px rgba(255,255,255,.96),0 13px 30px rgba(103,62,46,.12);
  z-index:2;
}
.photo-ring::before{inset:-8px;border:1px solid rgba(122,45,31,.22)}
.hero-photo{object-position:center}
.hero-floral{position:absolute;z-index:1;pointer-events:none;width:180px;height:150px;background-size:contain;background-repeat:no-repeat;opacity:.88}
.hero-floral-tl{top:-4px;left:-22px;background-image:url('./floral-corner.svg')}
.hero-floral-tr{top:-3px;right:-28px;transform:scaleX(-1);background-image:url('./floral-corner.svg');opacity:.36}
.hero-floral-bl{bottom:10px;left:-34px;transform:scaleY(-1);background-image:url('./floral-corner.svg');opacity:.34}
.hero-floral-br{bottom:-10px;right:-20px;background-image:url('./floral-corner-br.svg');opacity:.78}
.nama-pasangan{
  font-size:clamp(42px,12vw,62px);
  line-height:1;
  color:var(--warna-utama);
  text-shadow:0 1px 0 #fff;
}
.nama-pasangan .dan{color:#A98270;margin:0 6px}
.hero-date-editorial{margin-top:18px}
.date-caption{
  margin-bottom:10px;
  color:#7E6A61;
  font-size:11px;
  letter-spacing:.28em;
}
.editorial-date-row{display:flex;align-items:center;justify-content:center;gap:10px}
.date-box{
  height:54px;
  min-width:130px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--warna-utama);
  color:#fff8f1;
  font-size:17px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:4px 5px 0 rgba(231,160,110,.92);
}
.date-day{
  width:78px;
  color:var(--aksen-aprikot);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:72px;
  line-height:.82;
  font-weight:600;
}
.date-year{min-width:128px}
.hero-countdown{margin:22px auto 0;gap:6px;max-width:350px}
.hm-kotak{min-width:69px;padding:8px 4px;border-top:1px solid #E5D8CE;border-bottom:1px solid #E5D8CE}
.hm-angka{font-size:25px;color:var(--warna-utama)}
.hm-label{color:#8C7C74;letter-spacing:.14em}
.hero-venue{
  margin:20px auto 0;
  max-width:330px;
  color:#7D6B62;
  text-align:center;
}
.hero-venue strong{display:block;color:var(--warna-utama);font-size:15px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px}
.hero-venue span{display:block;font-size:12px;line-height:1.5}
.pelat{margin-top:20px;border:1px solid #E4D6CB;background:rgba(255,253,250,.92);box-shadow:0 9px 24px rgba(90,44,30,.06)}
.pelat-label{color:#92766B}.pelat-nama{color:var(--warna-utama)}
.hero-scroll{bottom:13px;color:#8E7A70}
.hero-scroll i{background:#BBA392}
.bagian{padding:58px 0;border-top:1px solid var(--garis);position:relative}
.bagian::before,.bagian::after{content:'';position:absolute;width:120px;height:105px;background-size:contain;background-repeat:no-repeat;pointer-events:none;opacity:.22}
.bagian::before{top:-8px;left:-44px;background-image:url('./floral-corner.svg');transform:rotate(-12deg)}
.bagian::after{bottom:-15px;right:-42px;background-image:url('./floral-corner-br.svg');transform:rotate(168deg)}
.bagian-judul{color:var(--warna-utama);font-size:32px}
.bagian-sub{color:#8A756C}
.dekorasi-pemisah{color:var(--aksen-aprikot)}
.dekorasi-pemisah span{background:#E4D6CB}
.kutipan-teks p{color:var(--warna-utama)}
.acara,.kisah-item,.kartu-amplop,.kotak-rsvp-terisi{
  border-color:#E5D9CF;background:rgba(255,252,248,.82);box-shadow:0 10px 25px rgba(92,48,34,.045)
}
.acara-jenis,.kisah-waktu{color:var(--aksen-aprikot)}
.acara-nama,.kisah-judul{color:var(--warna-utama)}
.acara-peta{border-color:var(--warna-utama);color:var(--warna-utama)}
.tombol-kirim{background:var(--warna-utama)}
.kartu-ucapan{border-left-color:var(--aksen-aprikot)}
.kaki{background:#FBF5EE;color:#8B786D;border-top-color:#E7D9CE}
.kaki-nama{color:var(--warna-utama)}
.tombol-musik{border-color:#E2D2C5;color:var(--warna-utama);background:#FFFDF9}

@media (max-width:390px){
  .date-box{min-width:103px;font-size:14px}
  .date-day{width:64px;font-size:62px}
  .date-year{min-width:103px}
  .floral-photo-wrap{width:76vw}
  .hero-kicker{font-size:54px}
}
