/* Halaman tambahan (Pricelist, Kisah, Undangan) — warna dinding galeri tema Pameran, font dari font/pilihan.js */
:root {
  --latar: #e6e1d8; --kartu: #fbfaf7; --teks: #191510; --redup: #6d655a; --garis: rgba(25, 21, 16, .14); --aksen: #191510; --aksen-teks: #f7f4ee; --amber: #a85a1c;
  --judul: var(--f-judul, Georgia, serif); --skrip: var(--f-skrip, cursive); --isi: var(--f-isi, system-ui, sans-serif);
  --tepi: clamp(20px, 5vw, 56px);
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: var(--latar); color: var(--teks); font: 400 16px/1.75 var(--isi); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; }
h1, h2 { font-family: var(--judul); font-weight: 400; line-height: 1.1; letter-spacing: var(--f-spasi, -.01em); text-transform: var(--f-ubah, none); }
.skrip { font-family: var(--skrip); font-style: italic; color: var(--amber); text-transform: none; letter-spacing: 0; font-size: calc(var(--f-skala, 1.08) * 1em); line-height: 1; }
.label { font: 600 11px/1.8 var(--isi); letter-spacing: .3em; text-transform: uppercase; color: var(--redup); margin-bottom: 14px; }

/* kepala & kaki */
.kepala-hal { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px var(--tepi); border-bottom: 1px solid var(--garis); }
.merek { display: flex; align-items: baseline; gap: 8px; text-decoration: none; }
.merek b { font: 400 25px/1 var(--judul); }
.merek small { font: 600 10px/1 var(--isi); letter-spacing: .3em; text-transform: uppercase; color: var(--redup); }
.kepala-hal nav { display: flex; gap: 22px; font-size: 13px; letter-spacing: .08em; }
.kepala-hal nav a { text-decoration: none; color: var(--redup); }
.kepala-hal nav a:hover, .kepala-hal nav .utama { color: var(--teks); }
.kaki { text-align: center; padding: 70px var(--tepi) 90px; border-top: 1px solid var(--garis); margin-top: 40px; }
.kaki-nama { font: 400 34px/1 var(--judul) !important; color: var(--teks) !important; margin-bottom: 8px; }
.kaki p { color: var(--redup); font-size: 13px; }
.kaki nav { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 24px; margin: 14px 0; font-size: 14px; }

.tombol { display: inline-flex; align-items: center; justify-content: center; height: 48px; padding: 0 24px; border-radius: 0; background: var(--aksen); color: var(--aksen-teks); border: 1px solid var(--aksen); font: 600 12px var(--isi); letter-spacing: .14em; text-transform: uppercase; text-decoration: none; cursor: pointer; transition: opacity .2s; }
.tombol:hover { opacity: .85; }
.tombol-garis { background: transparent; color: var(--teks); border-color: var(--garis); }

/* pricelist */
.pembuka { text-align: center; padding: clamp(60px, 9vw, 110px) var(--tepi) clamp(36px, 5vw, 56px); max-width: 820px; margin: 0 auto; }
.pembuka h1 { font-size: clamp(32px, 4.6vw, 58px); margin-bottom: 18px; }
.pembuka p.sub { color: var(--redup); max-width: 52ch; margin: 0 auto; }
.paket-grid { max-width: 1160px; margin: 0 auto; padding: 0 var(--tepi); display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 18px; align-items: stretch; }
.paket { display: flex; flex-direction: column; gap: 14px; padding: 30px 26px 26px; border-radius: 0; box-shadow: 0 1px 2px rgba(0, 0, 0, .1), 0 20px 30px -24px rgba(30, 20, 10, .45); background: var(--kartu); border: 1px solid var(--garis); position: relative; }
.paket.unggulan { border-color: var(--aksen); box-shadow: 0 24px 50px -30px rgba(0, 0, 0, .45); }
.paket .lencana { position: absolute; top: -12px; left: 24px; background: var(--aksen); color: var(--aksen-teks); font: 600 10px var(--isi); letter-spacing: .16em; text-transform: uppercase; padding: 6px 10px; border-radius: 0; background: var(--amber); }
.paket h2 { font-size: 26px; }
.paket .untuk { color: var(--redup); font-size: 14px; margin-top: -8px; }
.paket .harga { font: 400 34px/1.1 var(--judul); }
.paket .harga small { font: 500 13px var(--isi); color: var(--redup); margin-right: 4px; }
.paket ul { list-style: none; display: grid; gap: 8px; padding-top: 14px; border-top: 1px solid var(--garis); flex: 1; font-size: 15px; }
.paket li { display: flex; gap: 10px; }
.paket li::before { content: '✓'; color: var(--redup); }
.catatan { max-width: 760px; margin: 44px auto 0; padding: 0 var(--tepi); color: var(--redup); font-size: 14px; display: grid; gap: 6px; list-style: none; }
.catatan li::before { content: '· '; }
.ajak { text-align: center; padding: 60px var(--tepi) 20px; display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* kisah */
.kisah-grid { max-width: 1160px; margin: 0 auto; padding: 0 var(--tepi); display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 22px; }
.kisah-kartu { text-decoration: none; display: grid; gap: 6px; }
.kisah-kartu .foto { aspect-ratio: 4 / 5; overflow: hidden; border-radius: 10px; background: var(--kartu); margin-bottom: 8px; }
.kisah-kartu img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s; }
.kisah-kartu:hover img { transform: scale(1.04); }
.kisah-kartu b { font: 400 22px/1.2 var(--judul); letter-spacing: var(--f-spasi, .03em); text-transform: var(--f-ubah, none); }
.kisah-kartu small { color: var(--redup); font-size: 13px; }
.satu-sampul { max-width: 1160px; margin: 0 auto; padding: 0 var(--tepi); }
.satu-sampul img { width: 100%; max-height: 78vh; object-fit: cover; border-radius: 12px; }
.satu-cerita { max-width: 680px; margin: 0 auto; padding: 46px var(--tepi) 10px; font: 400 clamp(19px, 1.9vw, 22px)/1.75 'Cormorant Garamond', Georgia, serif; }
.satu-cerita p + p { margin-top: 1em; }
.satu-foto { max-width: 1160px; margin: 40px auto 0; padding: 0 var(--tepi); columns: 3; column-gap: 12px; }
.satu-foto button { display: block; width: 100%; margin-bottom: 12px; border: 0; padding: 0; background: none; cursor: zoom-in; break-inside: avoid; border-radius: 8px; overflow: hidden; }
.satu-foto img { width: 100%; }
.satu-nav { max-width: 1160px; margin: 50px auto 0; padding: 0 var(--tepi); display: flex; justify-content: space-between; gap: 16px; font-size: 14px; }
.satu-nav a { text-decoration: none; color: var(--redup); }
.satu-nav a:hover { color: var(--teks); }
.kotak-lihat { position: fixed; inset: 0; z-index: 100; background: rgba(0, 0, 0, .94); display: grid; place-items: center; padding: 50px 16px; }
.kotak-lihat[hidden] { display: none; }
.kotak-lihat img { max-height: 86vh; max-width: min(94vw, 980px); object-fit: contain; }
.kotak-lihat button { position: absolute; background: none; border: 0; color: #fff; font-size: 26px; cursor: pointer; padding: 12px 16px; opacity: .8; }
.kotak-lihat .tutup { top: 8px; right: 8px; } .kotak-lihat .kiri { left: 6px; top: 50%; } .kotak-lihat .kanan { right: 6px; top: 50%; }

@media (max-width: 700px) {
  .kepala-hal nav a:not(.utama) { display: none; }
  .satu-foto { columns: 2; column-gap: 8px; }
  .satu-foto button { margin-bottom: 8px; }
}
