/* Pameran — dinding galeri: ruang lega, bingkai foto, label karya, garis rambut */
.fam-pameran { --card: color-mix(in oklab, var(--bg) 60%, #fff); --sec-y: clamp(64px, 9vw, 140px); }
.fam-pameran .display { font-size: clamp(2.3rem, 1.2rem + 4.6vw, 5rem); line-height: 1.02; }
.fam-pameran .display em, .fam-pameran .h1 em, .fam-pameran .h2 em { font-style: italic; color: var(--primary-text); }
.fam-pameran .eyebrow { display: flex; align-items: center; gap: .8rem; color: var(--muted); font-size: .72rem; letter-spacing: .22em; }
.fam-pameran .eyebrow::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.fam-pameran .sec-head { gap: .9rem; }
.fam-pameran .h2 { font-size: clamp(1.8rem, 1.2rem + 2.4vw, 3.2rem); }

.fam-pameran .btn { border-radius: 0; font-size: .82rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; padding-inline: 1.6rem; }
.fam-pameran .btn--primary { --btn-bg: var(--ink); --btn-ink: var(--bg); }
.fam-pameran .btn--primary:hover { background: var(--primary); color: var(--on-primary); }
.fam-pameran .btn--ghost { border-color: var(--ink); }
.fam-pameran .link-arrow { font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ink); border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.fam-pameran .icon-btn { border-radius: 0; }
.fam-pameran .badge { border-radius: 0; background: var(--ink); color: var(--bg); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; font-size: .72rem; }

/* kartu produk: foto berbingkai + label karya */
.pcard--frame { background: transparent; border-radius: 0; }
.pcard--frame .pcard__media { aspect-ratio: 4 / 5; border-radius: 0; padding: clamp(8px, 1.6vw, 16px); background: #fbfaf6; box-shadow: inset 0 0 0 1px rgb(0 0 0 / .07), 0 0 0 5px #26221d, 0 18px 30px -18px rgb(0 0 0 / .5); overflow: visible; }
.pcard--frame .pcard__media img { transition: none; }
.pcard--frame:hover .pcard__media img { transform: none; }
.pcard--frame .pcard__media > img, .pcard--frame .pcard__media > .img-ph { display: block; width: 100%; height: 100%; object-fit: cover; }
.pcard--frame .pcard__badges { top: 22px; left: 22px; }
.pcard--frame .pcard__body { width: fit-content; max-width: 100%; margin-top: 18px; padding: 10px 12px; background: var(--card); box-shadow: 0 1px 0 var(--line-strong); gap: .15rem; }
.pcard--frame .pcard__cat { letter-spacing: .16em; font-size: .72rem; }
.pcard--frame .pcard__name { font-size: 1.05rem; -webkit-line-clamp: 3; }
.pcard--frame .pcard__sum { display: none !important; }
.pcard--frame .price__now { font-family: var(--font-body), sans-serif; font-weight: 600; font-size: .9rem; }
.pcard--frame .pcard__add, .pcard--frame .pcard__go { position: static; width: 38px; height: 38px; border-radius: 0; background: transparent; color: var(--ink); box-shadow: inset 0 0 0 1px var(--line-strong); }
.pcard--frame .pcard__foot { flex-wrap: wrap; }
.pcard--frame .pcard__add:hover, .pcard--frame .pcard__go:hover { background: var(--ink); color: var(--bg); }
@media (max-width: 559px) { .pcard--frame .pcard__go { display: grid; } .pcard--frame .pcard__media { box-shadow: inset 0 0 0 1px rgb(0 0 0 / .07), 0 0 0 3px #26221d, 0 12px 20px -14px rgb(0 0 0 / .5); } }
@media (min-width: 1080px) { .card-frame .pgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px 40px; } }

/* blok isi: garis rambut, tanpa kotak */
.fam-pameran .feat, .fam-pameran .tcard, .fam-pameran .step, .fam-pameran .cinfo { border: 0; border-top: 1px solid var(--ink); border-radius: 0; background: transparent; padding-inline: 0; }
.fam-pameran .feat__ic { border-radius: 0; background: transparent; border: 1px solid var(--line-strong); }
.fam-pameran .step__n { border-radius: 0; background: transparent; color: var(--ink); border: 1px solid var(--ink); font-family: var(--font-head), serif; }
.fam-pameran .stats { border: 0; border-top: 1px solid var(--ink); border-radius: 0; background: none; gap: 0; }
.fam-pameran .stat { background: transparent; border-right: 1px solid var(--line); }
.fam-pameran .stat__v { color: var(--ink); font-size: clamp(2.2rem, 1.4rem + 3vw, 4rem); }
.fam-pameran .about__img, .fam-pameran .feats-split__img, .fam-pameran .ahero__img, .fam-pameran .cta--split .cta__bg { border-radius: 0; padding: clamp(10px, 1.6vw, 18px); background: #fbfaf6; box-shadow: inset 0 0 0 1px rgb(0 0 0 / .07), 0 0 0 6px #26221d, 0 20px 36px -20px rgb(0 0 0 / .5); }
.fam-pameran .about__img img, .fam-pameran .feats-split__img img, .fam-pameran .ahero__img img { height: 100%; }
.fam-pameran .cta, .fam-pameran .promo { border-radius: 0; }
.fam-pameran .cta--split { background: var(--surface); }
.fam-pameran .tquote__q { font-style: italic; }
.fam-pameran .faq__q { font-family: var(--font-head), serif; font-weight: 400; font-size: 1.15rem; }
.fam-pameran .gitem { border-radius: 0; }
.fam-pameran .cat { border-radius: 0; }
.fam-pameran .input, .fam-pameran .select, .fam-pameran .textarea, .fam-pameran .catbtn, .fam-pameran .opt__v span, .fam-pameran .qty { border-radius: 0; }
.fam-pameran .pd__main { border-radius: 0; padding: clamp(10px, 1.6vw, 18px); background: #fbfaf6; box-shadow: inset 0 0 0 1px rgb(0 0 0 / .07), 0 0 0 6px #26221d; }
.fam-pameran .pd__box { border-radius: 0; background: transparent; border: 1px solid var(--line-strong); }

/* kepala halaman: teks dinding pameran */
.phead--plaque { border-bottom: 1px solid var(--ink); margin-bottom: clamp(28px, 4vw, 56px); }
.phead--plaque .phead__in { grid-template-columns: minmax(0, 1fr); }
.phead--plaque .h1 { font-size: clamp(2.4rem, 1.4rem + 4.4vw, 5.4rem); line-height: 1; max-width: 16ch; }
.phead--plaque .lead { max-width: 52ch; }
.phead--plaque .crumbs { order: 3; width: fit-content; padding: 8px 12px; background: var(--card); box-shadow: 0 1px 0 var(--line-strong); font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
@media (min-width: 900px) { .phead--plaque .phead__in { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); align-items: end; column-gap: 48px; } .phead--plaque .h1 { grid-row: 1 / span 3; } }

/* halaman galeri: dinding pameran */
.fam-pameran.page-gallery .gmason { columns: 2; column-gap: 28px; }
@media (min-width: 900px) { .fam-pameran.page-gallery .gmason { columns: 3; column-gap: 48px; } }
.fam-pameran.page-gallery .gmason .gitem { margin-bottom: 36px; padding: 12px; background: #fbfaf6; box-shadow: inset 0 0 0 1px rgb(0 0 0 / .07), 0 0 0 5px #26221d, 0 16px 28px -16px rgb(0 0 0 / .5); }
