/* =============================================================
   RollingFizz — Single Product (machine) detail page
   File    : rfz-assets/css/rfz-product-detail.css
   Depends : rfz-style.css, rfz-theme-citrus.css (loaded first)
   Used by : brewmac-classic.html, brewmac-fusion.html
   Self-contained — does NOT require rfz-product.css.
   ============================================================= */

/* ── Detail hero ── */
.pd-hero{background:var(--dark,#0a1e12);padding:120px 40px 70px;position:relative;overflow:hidden}
.pd-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 65% at 30% 100%,rgba(27,107,60,.22),transparent 60%);pointer-events:none}
.pd-hero-inner{position:relative;z-index:1;max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.pd-hero-media{display:flex;align-items:center;justify-content:center;position:relative;min-height:320px}
.pd-hero-media::before{content:'';position:absolute;bottom:6%;left:50%;transform:translateX(-50%);width:70%;height:120px;border-radius:50%;background:var(--pd-glow,rgba(212,160,0,.28));filter:blur(46px)}
.pd-hero-media img{max-height:420px;width:auto;max-width:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 22px 44px rgba(0,0,0,.55))}
.pd-hero-info{color:#fff}
.pd-tag{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--clr-gold,#d4a000);font-weight:700;margin-bottom:14px}
.pd-tag::before{content:'';width:22px;height:2px;background:var(--clr-gold,#d4a000)}
.pd-hero-info h1{font-family:var(--font-disp,'Poppins',sans-serif);font-size:clamp(30px,3.6vw,46px);font-weight:800;line-height:1.1;margin:0 0 8px}
.pd-tagline{font-size:14px;color:rgba(255,255,255,.55);margin:0 0 20px;line-height:1.5}
.pd-price{display:flex;flex-direction:column;gap:2px;margin-bottom:22px}
.pd-price strong{font-family:var(--font-disp,'Poppins',sans-serif);font-size:30px;font-weight:800;color:var(--clr-gold,#d4a000);line-height:1}
.pd-price span{font-size:12px;color:rgba(255,255,255,.45);letter-spacing:.4px}
.pd-desc{font-size:14.5px;color:rgba(255,255,255,.62);line-height:1.8;margin:0 0 22px}
.pd-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.pd-badge{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:7px 15px;font-size:12px;font-weight:600;color:rgba(255,255,255,.78)}
.pd-cta{display:flex;gap:12px;flex-wrap:wrap}
.pd-btn-gold{background:var(--clr-gold,#d4a000);color:#0d2818;padding:14px 30px;font-family:var(--font-body,'Poppins',sans-serif);font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;border-radius:4px;transition:all .2s;border:none;cursor:pointer}
.pd-btn-gold:hover{background:#c49000;transform:translateY(-1px)}
.pd-btn-ghost{background:transparent;color:#fff;padding:14px 30px;font-family:var(--font-body,'Poppins',sans-serif);font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;border:2px solid rgba(255,255,255,.3);border-radius:4px;transition:all .2s}
.pd-btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}

/* ── Sections ── */
.pd-section{padding:70px 40px}
.pd-section-light{background:var(--off,#f7f5f0)}
.pd-section-dark{background:var(--dark,#0a1e12)}
.pd-inner{max-width:1080px;margin:0 auto}
.pd-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:var(--clr-gold,#d4a000);display:flex;align-items:center;gap:10px;margin-bottom:12px}
.pd-label::before{content:'';width:20px;height:2px;background:var(--clr-gold,#d4a000)}
.pd-h2{font-family:var(--font-disp,'Poppins',sans-serif);font-size:clamp(24px,3vw,36px);font-weight:800;line-height:1.15;margin:0 0 36px}
.pd-h2 em{font-style:italic;color:var(--clr-forest,#1b6b3c)}
.pd-section-dark .pd-h2{color:#fff}
.pd-section-dark .pd-h2 em{color:var(--clr-gold,#d4a000)}
.pd-section-light .pd-h2{color:var(--dark,#0a1e12)}

/* ── Specs grid ── */
.pd-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pd-spec{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:16px 16px;display:flex;flex-direction:column;gap:5px}
.pd-spec-lbl{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.35);font-weight:600}
.pd-spec-val{font-size:15px;font-weight:700;color:#fff}

/* ── Highlights ── */
.pd-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pd-hcard{background:#fff;border:1.5px solid var(--border,#e6e2d8);border-radius:16px;padding:26px 22px;transition:all .25s}
.pd-hcard:hover{border-color:var(--clr-forest,#1b6b3c);box-shadow:0 8px 24px rgba(27,107,60,.1);transform:translateY(-3px)}
.pd-hcard-ico{font-size:1.9rem;margin-bottom:12px;line-height:1}
.pd-hcard-t{font-family:var(--font-disp,'Poppins',sans-serif);font-size:16px;font-weight:700;color:var(--dark,#0a1e12);margin-bottom:7px}
.pd-hcard-d{font-size:13px;color:var(--muted,#5c6b60);line-height:1.7}

/* ── Compatible add-ons ── */
.pd-compat{display:flex;flex-wrap:wrap;gap:10px}
.pd-compat-tag{background:rgba(93,186,125,.1);border:1px solid rgba(93,186,125,.3);border-radius:8px;padding:9px 16px;font-size:13px;font-weight:600;color:#2f7d4e}

/* ── Final CTA ── */
.pd-final{background:linear-gradient(135deg,#0d2818,#1b6b3c);padding:72px 40px;text-align:center;position:relative;overflow:hidden}
.pd-final::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 50%,rgba(212,160,0,.07),transparent 60%)}
.pd-final-inner{position:relative;z-index:1;max-width:600px;margin:0 auto}
.pd-final h2{font-family:var(--font-disp,'Poppins',sans-serif);font-size:clamp(26px,3.4vw,42px);font-weight:800;color:#fff;line-height:1.2;margin:0 0 14px}
.pd-final h2 em{color:var(--clr-gold,#d4a000);font-style:italic}
.pd-final p{font-size:15px;color:rgba(255,255,255,.62);line-height:1.7;margin:0 0 30px}
.pd-final-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}

/* ── Responsive ── */
@media(max-width:900px){
  .pd-hero-inner{grid-template-columns:1fr;gap:28px}
  .pd-hero-media{min-height:0;order:-1}
  .pd-hero-media img{max-height:300px}
  .pd-specs{grid-template-columns:1fr 1fr}
  .pd-highlights{grid-template-columns:1fr}
}
@media(max-width:768px){
  .pd-hero{padding:110px 20px 56px}
  .pd-section{padding:52px 20px}
  .pd-final{padding:56px 20px}
  .pd-cta,.pd-final-row{flex-direction:column}
  .pd-btn-gold,.pd-btn-ghost{text-align:center}
}
@media(max-width:480px){
  .pd-specs{grid-template-columns:1fr}
}
