/* Perbaikan tampilan mirror offline */
/* ponytail: foto tampil utuh tanpa crop (height:auto) — box fix pasti memenggal foto portrait; konsekuensi: tinggi kartu beda-beda */
.weddingpress-timeline .weddingpress-timeline-thumbnail img{width:100%!important;height:auto!important;display:block;}
/* ponytail: desktop saja — foto portrait dirampingkan setinggi landscape (265px), utuh tanpa crop */
@media (min-width:768px){
.weddingpress-timeline-thumbnail img[src*="GRPC0926"],.weddingpress-timeline-thumbnail img[src*="GRPC0966"],.weddingpress-timeline-thumbnail img[src*="GRPC0967"]{width:auto!important;height:265px!important;margin:0 auto!important}
.weddingpress-timeline-thumbnail img[src*="GRPC0934"],.weddingpress-timeline-thumbnail img[src*="GRPC0937"]{height:265px!important;object-fit:cover!important}
}
/* isi kartu love story: font & ungu tema samakan teks "Putri dari" (Source Serif Pro #906581); tombol Selengkapnya (href kosong) disembunyikan */
.weddingpress-timeline-title a{font-family:"Source Serif Pro",sans-serif!important;color:#906581!important}
.weddingpress-timeline-excerpt,.weddingpress-timeline-excerpt p{font-family:"Source Serif Pro",sans-serif!important;color:#906581!important}
.weddingpress-timeline-readmore{display:none!important}
/* garis & titik timeline ungu tema (ganti biru live) */
.weddingpress-timeline .weddingpress-timeline-item-main-wrapper .weddingpress-timeline-line span{background-color:#ab94b1!important;}
.weddingpress-timeline .weddingpress-timeline-item-main-wrapper .weddingpress-timeline-icon span{border-color:#ab94b1!important;background-color:#ffffff!important;}
.weddingpress-timeline .weddingpress-timeline-item-main-wrapper .weddingpress-timeline-icon span i{color:#ab94b1!important;}
.weddingpress-timeline-skin-olivier .weddingpress-timeline-item:after{background-color:#ab94b1!important;border-color:#ab94b1!important;}
.weddingpress-timeline-skin-olivier:before{background-color:#ab94b1!important;}
/* font "Putri dari" (Source Serif Pro) untuk kalimat-kalimat utama — halaman wedding (post 445) */
.elementor-element-b29ba9f .elementor-heading-title,.elementor-element-2317366 .elementor-heading-title,.elementor-element-1b74944 .elementor-heading-title,.elementor-element-ec76487 .elementor-heading-title,.elementor-element-edbcf93 .elementor-heading-title,.elementor-element-e2c5372 .elementor-heading-title,.elementor-element-81eff05 .elementor-heading-title,.elementor-element-93ce887 .elementor-heading-title,.elementor-element-cf433ca .elementor-heading-title,.elementor-element-765e7ca .elementor-heading-title{font-family:"Source Serif Pro",sans-serif!important}
/* font yang sama — halaman undangan (post 11) */
.elementor-element-73fe12c5 .elementor-heading-title,.elementor-element-849e9f .elementor-heading-title,.elementor-element-3a38872f .elementor-heading-title,.elementor-element-bd2f28f .elementor-heading-title,.elementor-element-e0a4fab .elementor-heading-title,.elementor-element-22344d0 .elementor-heading-title,.elementor-element-5f33842b .elementor-heading-title,.elementor-element-2d762fff .elementor-heading-title,.elementor-element-24047ba .elementor-heading-title,.elementor-element-8c2f2f7 .elementor-heading-title,#gb-static .gb-msg{font-family:"Source Serif Pro",sans-serif!important}
.elementor-widget-image img,.ue_timeline_item_content img,.weddingpress-timeline-desc img{max-width:100%;height:auto!important;}
/* timeline: warna default live (biru UIkit) — jangan override */
.wdp-wrap-comments{display:block!important;}
ul.wdp-container-comments li.wdp-item-comment{list-style:none;padding:12px 16px;}
ul.wdp-container-comments .wdp-commenter-name{text-decoration:none;font-weight:600;margin-right:8px;}
ul.wdp-container-comments .wdp-comment-time{font-size:12px;}
ul.wdp-container-comments .wdp-comment-avatar img{border-radius:50%;}
/* == mirror v3: form buku tamu asli tampil, daftar dinamis (AJAX, rusak offline) diganti #gb-static == */
.wdp-wrapper ul.wdp-container-comments,.wdp-wrapper .wdp-holder{display:none!important}
.elementor-invisible{opacity:1!important;transform:none!important;visibility:visible!important}
/* == v4: kartu ucapan (palet situs) == */
#gb-static{max-width:720px;margin:28px auto;padding:22px;background:#d5c3e2;border-radius:16px;box-shadow:0 4px 18px rgba(0,0,0,.08)}
#gb-static .gb-head{text-align:center;font-size:22px;font-weight:700;color:#5d4a66;margin-bottom:16px}
#gb-static .gb-list{max-height:560px;overflow-y:auto;padding:4px 8px 4px 4px}
#gb-static .gb-card{background:#fff;border:1px solid #e6d5e8;border-radius:12px;padding:12px 14px;margin-bottom:10px;display:flex;gap:12px}
#gb-static .gb-ava{flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#ab94b1;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
#gb-static .gb-body{min-width:0;flex:1}
#gb-static .gb-name{font-weight:700;color:#906581;margin-right:8px}
#gb-static .gb-date{color:#8f86a3;font-size:12px;white-space:nowrap}
#gb-static .gb-msg{color:#8e1c68;margin-top:4px;white-space:pre-wrap;word-wrap:break-word}
/* == v4b: footer credit center (rule hilang di css baru) == */
.elementor-element-2e1485d4{text-align:center!important}
.elementor-element-2e1485d4 .elementor-heading-title{display:inline-block}

/* Fix: tambah jarak teks protokol ke tombol */
.elementor-element-e0a4fab{margin-bottom:24px!important}

/* Fix: jarak antara inner section (tombol lokasi/youtube) ke teks protokol */
.elementor-element-f5a33f0{margin-bottom:32px!important}

/* Fix mobile: pastikan konten full width, hapus padding boxed section di mobile */
@media (max-width: 767px) {
  .elementor-section-boxed > .elementor-container {
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .elementor-column-gap-default > .elementor-column {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  body, html {
    overflow-x: hidden !important;
    width: 100% !important;
  }
  /* Fix galeri: horizontal scroll slider di mobile */
  #galeri .elementor-widget-image img {
    width: 100% !important;
    max-height: 320px !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    border-radius: 12px !important;
    flex-shrink: 0 !important;
  }
  #galeri .elementor-widget-image a {
    display: block !important;
    border-radius: 12px !important;
  }
  /* Tombol lokasi/youtube: susun vertikal di mobile (di live berdempetan) */
  .elementor-element-f5a33f0 > .elementor-container{flex-direction:column!important;gap:12px!important}
  .elementor-element-f5a33f0 .elementor-inner-column{width:100%!important;max-width:100%!important}
  /* halaman wedding: penumpuk tombol yang sama */
  .elementor-element-57142df > .elementor-container{flex-direction:column!important;gap:12px!important}
  .elementor-element-57142df .elementor-inner-column{width:100%!important;max-width:100%!important}
  /* Galeri mobile: marquee infinite (isi digandakan 1x via JS) */
  #galeri .elementor-inner-section{overflow:hidden!important}
  #galeri .elementor-inner-section > .elementor-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    max-width: none !important;
    overflow: visible !important;
    gap: 8px !important;
    padding: 0 12px 8px 12px !important;
    animation: galleryScroll 28s linear infinite !important;
  }
  #galeri .elementor-inner-section:active > .elementor-container{animation-play-state:paused!important}
  #galeri .elementor-inner-section .elementor-col-20,
  #galeri .elementor-inner-section .elementor-inner-column {
    flex: 0 0 80vw !important;
    max-width: 80vw !important;
  }
}

/* ponytail: loop mulus butuh isi 2x (JS clone); kecepatan 28s, naikkan durasi bila pusing */
@keyframes galleryScroll {
  to { transform: translateX(-50%); }
}