/* PlanifyHer — product-page enhancements (gallery, modal, urgency, bundle,
   reviews, share, sticky bar). Accent per product via --acc on .pdp-hero. */
:root{ --pdp-burg:#3D2B3D; --pdp-burg2:#5A3A52; --pdp-gold:#C9A96E; --pdp-gold-d:#A88748; --pdp-cream:#FAF3E0; }
.pdp-hero{ --acc:#C9848A; }

/* ── PRIORITY 4 — countdown timer ───────────────────────────── */
.pdp-countdown{ display:flex; gap:10px 18px; align-items:center; justify-content:center; flex-wrap:wrap }
.pdc-timer{ display:inline-flex; gap:6px; align-items:center; font-family:'Jost',sans-serif }
.pdc-seg{ background:rgba(255,255,255,.16); border:1px solid rgba(201,169,110,.5); border-radius:7px; padding:3px 8px; min-width:38px; text-align:center; line-height:1.15 }
.pdc-seg b{ display:block; font-size:16px; font-weight:600; color:#fff; font-variant-numeric:tabular-nums }
.pdc-seg span{ display:block; font-size:8.5px; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.7) }

/* ── PRIORITY 1 — gallery + Look Inside modal ───────────────── */
.pdp-gallery2{ position:relative }
.pg-stage{ position:relative; width:100%; aspect-ratio:16/9; border-radius:16px; overflow:hidden; background:linear-gradient(150deg,#FFFCF6,#F2E6CC); box-shadow:0 18px 50px rgba(61,43,61,.18); border:1px solid rgba(201,169,110,.4) }
.pg-slide{ position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .35s ease; display:flex; align-items:center; justify-content:center }
.pg-slide.on{ opacity:1; visibility:visible }
.pg-slide img{ width:100%; height:100%; object-fit:cover; object-position:top center }
.pg-look{ position:absolute; right:12px; bottom:12px; z-index:3; background:rgba(61,43,61,.82); color:#F5ECD7; border:1px solid rgba(201,169,110,.6); border-radius:999px; padding:8px 16px; font-family:'Jost',sans-serif; font-size:11px; letter-spacing:.14em; text-transform:uppercase; cursor:pointer; display:inline-flex; gap:7px; align-items:center; backdrop-filter:blur(4px) }
.pg-look:hover{ background:var(--pdp-burg) }
.pg-thumbs{ display:flex; gap:9px; margin-top:14px; flex-wrap:wrap }
.pg-thumb{ flex:1; min-width:54px; height:46px; border-radius:9px; border:1.5px solid rgba(201,169,110,.4); background:#FFFCF6; cursor:pointer; padding:0; overflow:hidden; position:relative; transition:border-color .15s, transform .15s; display:flex; align-items:center; justify-content:center }
.pg-thumb img{ width:100%; height:100%; object-fit:cover }
.pg-thumb .pgt-ic{ font-size:17px; color:var(--acc) }
.pg-thumb.on{ border-color:var(--acc); transform:translateY(-2px); box-shadow:0 4px 12px rgba(61,43,61,.12) }

/* slide 2 — mobile mockup */
.pg-mobile{ background:radial-gradient(120% 90% at 50% 0,#F7ECD2,#EFE0C0); width:100%; height:100%; display:flex; align-items:center; justify-content:center }
.pg-phone{ width:33%; max-width:150px; aspect-ratio:9/19; background:var(--pdp-burg); border-radius:22px; padding:7px; box-shadow:0 14px 34px rgba(61,43,61,.32); border:1px solid rgba(201,169,110,.45) }
.pg-phone .scr{ width:100%; height:100%; border-radius:15px; overflow:hidden; background:#fff }
.pg-phone .scr img{ object-position:top left }
.pg-mobile .cap{ position:absolute; bottom:14px; font-family:'Jost',sans-serif; font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--pdp-gold-d) }

/* slide 3 — what's inside infographic */
.pg-inside{ width:100%; height:100%; background:linear-gradient(160deg,var(--pdp-burg) 0%,#2A1826 100%); padding:5% 6%; display:flex; flex-direction:column; justify-content:center; gap:3% }
.pg-inside .ttl{ font-family:'Cormorant Garamond',serif; font-style:italic; font-size:clamp(18px,2.6vw,28px); color:var(--pdp-gold); text-align:center }
.pg-inside .rows{ display:grid; grid-template-columns:1fr 1fr; gap:2.4% 4% }
.pg-inside .row{ display:flex; gap:8px; align-items:center; color:#F5ECD7; font-family:'DM Sans',sans-serif; font-size:clamp(10px,1.35vw,14px); border-bottom:1px solid rgba(201,169,110,.22); padding-bottom:5px }
.pg-inside .row b{ color:var(--pdp-gold); font-weight:700 }

/* slide 4 — before/after */
.pg-ba{ width:100%; height:100%; display:grid; grid-template-columns:1fr 1fr; background:#FFFCF6 }
.pg-ba .col{ padding:5% 6%; display:flex; flex-direction:column; justify-content:center; gap:7px }
.pg-ba .col.b{ background:#F3ECE2 }
.pg-ba .col.a{ background:linear-gradient(160deg,color-mix(in srgb,var(--acc) 14%,#fff),color-mix(in srgb,var(--acc) 6%,#fff)) }
.pg-ba h5{ font-family:'Jost',sans-serif; font-size:10px; letter-spacing:.18em; text-transform:uppercase; margin:0 0 4px }
.pg-ba .b h5{ color:rgba(61,43,61,.5) }
.pg-ba .a h5{ color:var(--acc) }
.pg-ba li{ list-style:none; font-family:'DM Sans',sans-serif; font-size:clamp(9.5px,1.3vw,13px); color:rgba(61,43,61,.85); padding-left:16px; position:relative; line-height:1.35 }
.pg-ba .b li::before{ content:'✕'; position:absolute; left:0; color:rgba(61,43,61,.35) }
.pg-ba .a li::before{ content:'✓'; position:absolute; left:0; color:var(--acc); font-weight:700 }
.pg-ba ul{ margin:0; padding:0 }

/* slide 5 — bundle breakdown (also reused full-width below) */
.pg-bundle{ width:100%; height:100%; background:linear-gradient(160deg,#FAF3E0,#EFE0C0); padding:4% 5%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3% }
.pg-bchips{ display:grid; grid-template-columns:repeat(5,1fr); gap:5px; width:100% }
.pg-chip{ aspect-ratio:1; border-radius:8px; display:flex; align-items:flex-end; padding:5px; color:#fff; font-family:'Jost',sans-serif; font-size:8px; line-height:1.05; font-weight:500; box-shadow:0 2px 6px rgba(61,43,61,.14) }
.pg-bprice{ text-align:center; font-family:'Playfair Display',serif }
.pg-bprice .old{ text-decoration:line-through; color:rgba(61,43,61,.45); font-size:clamp(13px,1.8vw,18px); margin-right:8px }
.pg-bprice .now{ color:var(--pdp-burg); font-size:clamp(24px,4vw,40px); font-weight:700 }

.pdp-modal{ position:fixed; inset:0; z-index:1000; background:rgba(34,20,32,.86); backdrop-filter:blur(6px); display:none; align-items:center; justify-content:center; padding:24px }
.pdp-modal.on{ display:flex }
.pdp-modal .box{ max-width:1100px; width:100%; border-radius:14px; overflow:hidden; box-shadow:0 30px 80px rgba(0,0,0,.5); border:1px solid rgba(201,169,110,.5) }
.pdp-modal .box img{ width:100%; display:block }
.pdp-modal .x{ position:absolute; top:18px; right:22px; width:42px; height:42px; border-radius:50%; background:rgba(245,236,215,.14); border:1px solid rgba(245,236,215,.3); color:#F5ECD7; font-size:20px; cursor:pointer }

/* Designer product-image galleries */
.pdp-gallery2 .pg-stage{aspect-ratio:1/1;background:#f7f1e8}
.pdp-gallery2 .pg-slide img{object-fit:contain;object-position:center}
.pdp-gallery2 .pg-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.pdp-gallery2 .pg-thumb{width:100%;min-width:0;height:auto;aspect-ratio:1/1}
.pdp-gallery2 .pg-thumb img{object-fit:cover}
.pdp-detail-image{display:block;width:min(100%,760px);height:auto;aspect-ratio:1/1;object-fit:contain;margin:30px auto 0;border-radius:18px;box-shadow:0 18px 50px rgba(61,43,61,.16);border:1px solid rgba(201,169,110,.32)}

/* ── PRIORITY 2 — above-fold trust ──────────────────────────── */
.pdp-rating{ display:flex; align-items:center; gap:9px; margin:2px 0 10px; font-family:'Jost',sans-serif }
.pdp-rating .st{ color:var(--pdp-gold); font-size:16px; letter-spacing:1px }
.pdp-rating span{ font-size:12.5px; color:rgba(61,43,61,.62); letter-spacing:.02em }
.pdp-compat{ display:flex; align-items:center; gap:7px; margin-top:12px; font-family:'Jost',sans-serif; font-size:11.5px; letter-spacing:.04em; color:rgba(61,43,61,.6); justify-content:center; flex-wrap:wrap }
.pdp-compat b{ color:rgba(61,43,61,.78); font-weight:600 }
.pdp-lockin{ text-align:center; margin-top:9px; font-family:'Jost',sans-serif; font-size:12px; color:var(--acc); font-weight:500 }

/* guarantee badge (expandable) */
.pdp-guar{ margin-top:14px; border:1px solid rgba(135,168,120,.5); background:rgba(135,168,120,.09); border-radius:12px; overflow:hidden }
.pdp-guar > button{ width:100%; display:flex; align-items:center; gap:10px; padding:12px 16px; background:none; border:none; cursor:pointer; text-align:left; font-family:'DM Sans',sans-serif }
.pdp-guar .gi{ width:30px; height:30px; flex-shrink:0; border-radius:50%; background:#87A878; color:#fff; display:flex; align-items:center; justify-content:center; font-size:15px }
.pdp-guar .gt{ flex:1; font-weight:600; font-size:14px; color:#4d6a40 }
.pdp-guar .gc{ font-size:18px; color:#87A878; transition:transform .2s }
.pdp-guar.open .gc{ transform:rotate(180deg) }
.pdp-guar .gd{ max-height:0; overflow:hidden; transition:max-height .25s ease }
.pdp-guar .gd p{ padding:0 16px 14px; margin:0; font-size:13px; color:rgba(61,43,61,.72); line-height:1.5 }

/* share buttons */
.pdp-share{ display:flex; align-items:center; gap:9px; justify-content:center; margin-top:16px; flex-wrap:wrap }
.pdp-share .lbl{ font-family:'Jost',sans-serif; font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:rgba(61,43,61,.5) }
.pdp-share a, .pdp-share button{ width:36px; height:36px; border-radius:50%; border:1px solid rgba(61,43,61,.16); background:#fff; color:var(--pdp-burg); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:transform .15s, border-color .15s, background .15s; padding:0 }
.pdp-share a:hover, .pdp-share button:hover{ transform:translateY(-2px); border-color:var(--acc); color:var(--acc) }
.pdp-share .copied{ background:#87A878; color:#fff; border-color:#87A878 }

/* ── PRIORITY 3 — per-feature mini preview ──────────────────── */
.feat-mini{ margin-top:14px; border-radius:10px; background:linear-gradient(160deg,#fff,#FAF3E0); border:1px solid rgba(201,169,110,.34); padding:11px 12px; display:flex; flex-direction:column; gap:7px }
.feat-mini .fm-bar{ height:8px; border-radius:5px; background:rgba(61,43,61,.08); overflow:hidden }
.feat-mini .fm-bar i{ display:block; height:100%; border-radius:5px; background:var(--acc) }
.feat-mini .fm-row{ display:flex; justify-content:space-between; align-items:center; font-family:'Jost',sans-serif; font-size:9px; letter-spacing:.08em; text-transform:uppercase; color:rgba(61,43,61,.5) }
.feat-mini .fm-row b{ color:var(--acc); font-family:'Playfair Display',serif; font-size:13px; letter-spacing:0 }

/* ── PRIORITY 5 — bundle breakdown section ──────────────────── */
.pdp-bundlesec .bx{ max-width:920px; margin:0 auto; background:linear-gradient(160deg,#FFFCF6,#F2E6CC); border:1px solid rgba(201,169,110,.5); border-radius:20px; padding:clamp(26px,4vw,48px); text-align:center; box-shadow:0 18px 50px rgba(61,43,61,.1); position:relative; overflow:hidden }
.pdp-bgrid{ display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin:26px 0 }
.pdp-bcard{ border-radius:12px; padding:12px 8px; color:#fff; min-height:74px; display:flex; flex-direction:column; justify-content:flex-end; text-align:left; box-shadow:0 4px 12px rgba(61,43,61,.16); position:relative }
.pdp-bcard .nm{ font-family:'Jost',sans-serif; font-size:9.5px; font-weight:500; line-height:1.15; text-shadow:0 1px 2px rgba(0,0,0,.18) }
.pdp-bcard .pr{ font-family:'Playfair Display',serif; font-size:12px; opacity:.92 }
.pdp-bsave{ display:inline-block; background:#87A878; color:#fff; font-family:'Jost',sans-serif; font-size:12px; letter-spacing:.1em; text-transform:uppercase; padding:6px 16px; border-radius:999px; margin-bottom:14px }
.pdp-bprice2{ font-family:'Playfair Display',serif; margin:6px 0 18px }
.pdp-bprice2 .old{ text-decoration:line-through; color:rgba(61,43,61,.45); font-size:24px; margin-right:12px }
.pdp-bprice2 .now{ color:var(--pdp-burg); font-size:clamp(40px,7vw,64px); font-weight:800 }

/* ── PRIORITY 6 — reviews ───────────────────────────────────── */
.pdp-reviews{ max-width:680px; margin:0 auto }
.pdp-rv-head{ text-align:center; margin-bottom:24px }
.pdp-rv-head .st{ color:var(--pdp-gold); font-size:26px; letter-spacing:3px }
.pdp-rv-head p{ font-family:'Cormorant Garamond',serif; font-style:italic; font-size:21px; color:rgba(61,43,61,.7); margin:8px 0 0 }
.pdp-rv-form{ background:#fff; border:1px solid rgba(61,43,61,.12); border-radius:16px; padding:24px; box-shadow:0 8px 24px rgba(61,43,61,.06) }
.pdp-rv-form .rv-stars{ display:flex; gap:5px; justify-content:center; margin-bottom:14px; font-size:30px; color:rgba(61,43,61,.2) }
.pdp-rv-form .rv-stars span{ cursor:pointer; transition:color .12s }
.pdp-rv-form .rv-stars span.on{ color:var(--pdp-gold) }
.pdp-rv-form input, .pdp-rv-form textarea{ width:100%; box-sizing:border-box; border:1px solid rgba(61,43,61,.18); border-radius:9px; padding:11px 13px; font-family:'DM Sans',sans-serif; font-size:14px; margin-bottom:11px; background:#FAF7F0; color:#3D2B3D; outline:none }
.pdp-rv-form input:focus, .pdp-rv-form textarea:focus{ border-color:var(--acc) }
.pdp-rv-list{ margin-top:24px; display:flex; flex-direction:column; gap:14px }
.pdp-rv-item{ background:#fff; border:1px solid rgba(61,43,61,.1); border-left:3px solid var(--acc); border-radius:10px; padding:16px 18px }
.pdp-rv-item .st{ color:var(--pdp-gold); font-size:14px; letter-spacing:1px }
.pdp-rv-item p{ margin:8px 0 6px; font-size:15px; color:rgba(61,43,61,.85); line-height:1.5 }
.pdp-rv-item .who{ font-family:'Jost',sans-serif; font-size:12px; letter-spacing:.04em; color:rgba(61,43,61,.55) }

/* ── PRIORITY 7 — sticky mobile buy bar ─────────────────────── */
.pdp-stickybar{ position:fixed; left:0; right:0; bottom:0; z-index:900; background:rgba(255,255,255,.97); backdrop-filter:blur(8px); border-top:1px solid rgba(201,169,110,.5); box-shadow:0 -4px 18px rgba(61,43,61,.1); padding:10px 14px calc(10px + env(safe-area-inset-bottom)); display:none; align-items:center; gap:12px; transform:translateY(110%); transition:transform .3s ease }
.pdp-stickybar.show{ transform:translateY(0) }
.pdp-stickybar .sb-info{ flex:1; min-width:0 }
.pdp-stickybar .sb-name{ font-family:'Playfair Display',serif; font-size:14px; color:var(--pdp-burg); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.pdp-stickybar .sb-price{ font-family:'Jost',sans-serif; font-size:12px; color:rgba(61,43,61,.6) }
.pdp-stickybar .sb-price b{ color:var(--acc); font-size:15px }
.pdp-stickybar .btn{ flex-shrink:0; margin:0 }
@media(max-width:760px){
  .pdp-stickybar{ display:flex }
  .pg-inside .rows{ grid-template-columns:1fr }
  .pdp-bgrid, .pg-bchips{ grid-template-columns:repeat(2,1fr) }
  body.has-stickybar{ padding-bottom:74px }
}


/* Launch trust and data-safety copy */
.ph-data-warning{margin:14px 0 16px;border:1px solid rgba(201,169,110,.45);background:#fff8ea;border-radius:12px;padding:13px 15px;font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.55;color:rgba(61,43,61,.74)}
.ph-data-warning strong{display:block;color:#3D2B3D;margin-bottom:3px}
.ph-disclaimer{margin:12px 0 10px;font-family:'Jost',sans-serif;font-size:12.5px;line-height:1.5;color:rgba(61,43,61,.58);text-align:center}


/* Digital product purchase policy */
.pdp-norefund{margin-top:14px;border:1px solid rgba(201,169,110,.45);background:rgba(201,169,110,.1);border-radius:12px;padding:13px 15px;font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.55;color:rgba(61,43,61,.74)}
.pdp-norefund strong{display:block;color:#3D2B3D;margin-bottom:3px}
.pdp-norefund p{margin:0}
