/* Below-fold conversion bundle: roomy cards, a real 5% price, and mobile parity. */
.pdp-combo-section {
  position: relative;
  margin: 34px 0 46px;
  overflow: hidden;
  border: 1px solid rgba(245, 114, 36, .2);
  border-radius: 26px;
  background:
    radial-gradient(circle at 92% 20%, rgba(245, 114, 36, .12), transparent 33%),
    linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(255, 248, 240, .88));
  box-shadow: 0 22px 55px rgba(69, 42, 18, .08);
}

.pdp-combo-header { display:flex; align-items:center; gap:12px; padding:24px 28px 20px; border-bottom:1px solid rgba(245,114,36,.12); color:var(--primary-color,#f57224); }
.pdp-combo-body { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.34fr); gap:34px; align-items:center; padding:28px; }
.pdp-combo-products { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:18px; align-items:stretch; }
.pdp-combo-item { display:grid; grid-template-columns:124px minmax(0,1fr); gap:18px; align-items:center; min-width:0; padding:16px; border:1px solid rgba(245,114,36,.16); border-radius:20px; background:rgba(255,255,255,.82); color:var(--ink,#111827); text-align:left; text-decoration:none; box-shadow:0 12px 30px rgba(15,23,42,.06); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.pdp-combo-item:hover { transform:translateY(-3px); border-color:rgba(245,114,36,.36); box-shadow:0 18px 38px rgba(245,114,36,.12); }
.pdp-combo-item-media { display:grid; place-items:center; overflow:hidden; aspect-ratio:1; border-radius:16px; background:#fff8f1; }
.pdp-combo-item img,.pdp-combo-item-media img { width:100%; height:100%; padding:6px; border:0; border-radius:0; background:transparent; object-fit:contain; }
.pdp-combo-item-copy { display:flex; min-width:0; flex-direction:column; align-items:flex-start; gap:8px; }
.pdp-combo-item-label { display:inline-flex; padding:4px 8px; border-radius:999px; background:rgba(245,114,36,.1); color:#c44f0d; font-size:.68rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.pdp-combo-item-name { display:-webkit-box; max-width:none; overflow:hidden; color:var(--ink,#111827); font-size:.96rem; font-weight:750; line-height:1.35; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.pdp-combo-item-price { color:var(--primary-color,#f57224); font-size:1.08rem; font-weight:850; }
.pdp-combo-plus { align-self:center; color:var(--primary-color,#f57224); font-size:2rem; font-weight:500; }
.pdp-combo-action { display:flex; align-items:stretch; flex-direction:column; gap:13px; }
.pdp-combo-pricing { display:grid; grid-template-columns:1fr auto; gap:5px 12px; align-items:end; justify-content:stretch; }
.pdp-combo-label { align-self:center; color:var(--ink-weak,#64748b); font-size:.82rem; font-weight:650; }
.pdp-combo-original-price { justify-self:end; color:#94a3b8; font-size:.92rem; text-decoration:line-through; }
.pdp-combo-price { justify-self:end; color:#eb5a0b; font-size:clamp(1.55rem,2.4vw,2rem); font-weight:900; letter-spacing:-.035em; -webkit-text-fill-color:currentColor; }
.pdp-combo-save { grid-column:1/-1; justify-self:end; padding:6px 11px; background:linear-gradient(135deg,#dcfce7,#bbf7d0); color:#15803d; font-size:.76rem; }
.pdp-combo-btn { justify-content:center; width:100%; min-height:54px; border-radius:15px; font-size:1rem; }
.pdp-combo-btn.is-added,
.pdp-combo-btn.is-added:disabled { border-color:rgba(15,118,110,.55); background:linear-gradient(135deg,#173f6f,#0f766e); color:#fff !important; opacity:1; filter:none; box-shadow:0 14px 30px rgba(15,76,93,.22),inset 0 1px 0 rgba(255,255,255,.22); }
.pdp-combo-btn.is-added:focus,
.pdp-combo-btn.is-added:focus-visible { outline:none !important; box-shadow:0 14px 30px rgba(15,76,93,.22),0 0 0 4px rgba(245,114,36,.18),inset 0 1px 0 rgba(255,255,255,.22); }
.pdp-combo-success { display:inline-flex; align-items:center; justify-content:center; gap:10px; }
.pdp-combo-success > i { display:grid; width:27px; height:27px; place-items:center; border-radius:50%; background:rgba(255,255,255,.16); color:#bbf7d0; font-size:.76rem; }
.pdp-combo-success > span { display:flex; flex-direction:column; align-items:flex-start; line-height:1.04; }
.pdp-combo-success strong { color:#fff; font-size:.91rem; font-weight:850; }
.pdp-combo-success small { margin-top:3px; color:rgba(255,255,255,.76); font-size:.64rem; font-weight:700; letter-spacing:.02em; }
.pdp-combo-note { margin:0; color:var(--ink-weak,#64748b); font-size:.75rem; line-height:1.45; text-align:center; }
body.dark-mode.product-details-page .pdp-combo-section { border-color:rgba(251,146,60,.22); background:radial-gradient(circle at 92% 20%,rgba(251,146,60,.12),transparent 33%),linear-gradient(145deg,rgba(15,23,42,.96),rgba(21,28,42,.94)); }
body.dark-mode.product-details-page .pdp-combo-item { border-color:rgba(148,163,184,.14); background:rgba(17,29,45,.9); }
body.dark-mode.product-details-page .pdp-combo-item-media { background:#0d1624; }
body.dark-mode.product-details-page .pdp-combo-item-name { color:#edf4ff; }
body.dark-mode.product-details-page .pdp-combo-btn.is-added,
body.dark-mode.product-details-page .pdp-combo-btn.is-added:disabled { border-color:rgba(94,234,212,.3); background:linear-gradient(135deg,#17375d,#115e59); }

@media (max-width:900px) {
  .pdp-combo-body { grid-template-columns:1fr; }
  .pdp-combo-action { max-width:430px; }
}

@media (max-width:640px) {
  .pdp-combo-section { margin:24px 0 32px; border-radius:20px; }
  .pdp-combo-header { padding:18px; }
  .pdp-combo-header .pdp-section-heading { font-size:1.14rem; }
  .pdp-combo-body { gap:22px; padding:18px; }
  .pdp-combo-products { grid-template-columns:1fr; gap:10px; }
  .pdp-combo-plus { justify-self:center; line-height:.8; }
  .pdp-combo-item { grid-template-columns:88px minmax(0,1fr); padding:12px; }
  .pdp-combo-item-name { font-size:.86rem; -webkit-line-clamp:2; }
  .pdp-combo-item-price { font-size:.96rem; }
}

/* FAQ is also below the first viewport, so it shares this deferred stylesheet. */
@media (min-width:1024px) {
  .pdp-features-section { margin-bottom:48px; }
  .pdp-features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .pdp-feature-card { display:flex; align-items:flex-start; gap:14px; padding:20px; border:1px solid rgba(245,114,36,.08); border-radius:16px; background:rgba(255,255,255,.85); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); transition:transform .25s ease,box-shadow .25s ease; }
  body.dark-mode .pdp-feature-card { border-color:rgba(245,114,36,.12); background:rgba(20,20,30,.75); }
  .pdp-feature-card:hover { transform:translateY(-4px); border-color:rgba(245,114,36,.25); box-shadow:0 12px 32px rgba(245,114,36,.1); }
  .pdp-feature-icon { display:flex; width:40px; height:40px; align-items:center; justify-content:center; flex-shrink:0; border-radius:12px; background:linear-gradient(135deg,rgba(245,114,36,.15),rgba(245,114,36,.06)); color:var(--primary-color,#f57224); font-size:.95rem; }
  .pdp-feature-text { color:var(--ink-light,#555); font-size:.88rem; font-weight:500; line-height:1.5; }
  body.dark-mode .pdp-feature-text { color:#c0c0c0; }
  .product-details-container .related-products-section { margin-top:48px; padding:36px 32px; overflow:hidden; border:1px solid rgba(245,114,36,.12); border-radius:24px; background:rgba(255,255,255,.85); box-shadow:0 8px 40px rgba(0,0,0,.05); }
  body.dark-mode .product-details-container .related-products-section { border-color:rgba(245,114,36,.14); background:rgba(14,14,22,.85); box-shadow:0 8px 48px rgba(0,0,0,.4); }
}

@media (min-width:1024px) {
  .pdp-faq-section { margin-top:58px; margin-bottom:48px; }
  .pdp-faq-list { display:flex; flex-direction:column; gap:14px; }
  .pdp-faq-item { overflow:hidden; border:1px solid rgba(245,114,36,.13); border-radius:16px; background:rgba(255,255,255,.85); box-shadow:0 6px 22px rgba(31,41,55,.035); transition:border-color .25s ease,box-shadow .25s ease; }
  body.dark-mode .pdp-faq-item { border-color:rgba(245,114,36,.12); background:rgba(18,18,28,.8); }
  .pdp-faq-item.open { border-color:rgba(245,114,36,.3); box-shadow:0 8px 24px rgba(245,114,36,.08); }
  body.dark-mode .pdp-faq-item.open { box-shadow:0 8px 24px rgba(245,114,36,.15); }
  .pdp-faq-q { display:flex; width:100%; min-height:72px; padding:21px 26px; align-items:center; justify-content:space-between; gap:16px; border:0; background:none; color:var(--ink,#111); font-size:.95rem; font-weight:700; text-align:left; cursor:pointer; transition:color .2s ease; }
  body.dark-mode .pdp-faq-q { color:#e8e8e8; }
  .pdp-faq-item.open .pdp-faq-q { color:var(--primary-color,#f57224); }
  body.dark-mode .pdp-faq-item.open .pdp-faq-q { color:#ffb37f; }
  .pdp-faq-chevron { flex-shrink:0; color:rgba(245,114,36,.6); font-size:.8rem; transition:transform .3s cubic-bezier(.22,.68,0,1.2); }
  .pdp-faq-item.open .pdp-faq-chevron { transform:rotate(180deg); }
  .pdp-faq-a { max-height:0; overflow:hidden; padding:0 26px; color:var(--ink-light,#555); font-size:.9rem; line-height:1.7; transition:max-height .35s cubic-bezier(.22,.68,0,1.2),padding .3s ease; }
  body.dark-mode .pdp-faq-a { color:#aaa; }
  .pdp-faq-item.open .pdp-faq-a { max-height:300px; padding:0 26px 22px; }
}
