.ccxpv4-page{
  min-height:100vh;
  padding:28px 18px 56px;
  background:
    radial-gradient(circle at top left, rgba(120,92,255,.12), transparent 28%),
    radial-gradient(circle at top right, rgba(92,143,255,.10), transparent 24%),
    linear-gradient(180deg, #f4f5fb 0%, #eef0f8 100%);
}

.ccxpv4-wrap{
  max-width:1480px;
  margin:0 auto;
}

.ccxpv4-hero,
.ccxpv4-content-shell,
.ccxpv4-section{
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(215,219,235,.9);
  box-shadow:0 18px 50px rgba(37,44,97,.08);
}

.ccxpv4-hero{
  border-radius:28px;
  padding:18px;
  display:grid;
  grid-template-columns:minmax(420px, 560px) 1fr;
  gap:24px;
  margin-bottom:20px;
}

.ccxpv4-hero-media-card{
  border-radius:22px;
  background:linear-gradient(135deg, rgba(234,238,255,.9), rgba(240,236,255,.95));
  border:1px solid rgba(220,224,245,.95);
  padding:18px;
  min-height:420px;
}

.ccxpv4-hero-media-shell{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:16px;
  height:100%;
}

.ccxpv4-hero-thumbs{
  display:flex;
  flex-direction:column;
  gap:12px;
  align-items:stretch;
}

.ccxpv4-thumb,
.ccxpv4-thumb-more{
  width:72px;
  height:72px;
  border-radius:16px;
  border:1px solid rgba(203,208,231,.95);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.ccxpv4-thumb{
  cursor:pointer;
  padding:6px;
  transition:.18s ease;
}

.ccxpv4-thumb.is-active{
  border-color:#6e58ff;
  box-shadow:0 0 0 3px rgba(110,88,255,.18);
}

.ccxpv4-thumb img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.ccxpv4-thumb-more{
  font-weight:700;
  color:#5a627a;
}

.ccxpv4-hero-mainmedia{
  border-radius:20px;
  min-height:360px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  padding:18px;
}

.ccxpv4-hero-mainmedia img{
  max-width:100%;
  max-height:360px;
  object-fit:contain;
  filter:drop-shadow(0 20px 40px rgba(30,36,84,.18));
}

.ccxpv4-hero-main{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:4px 8px 0 0;
}

.ccxpv4-hero-topline{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.ccxpv4-kicker{
  margin:0;
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(110,88,255,.10);
  color:#6e58ff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.ccxpv4-hero-actions-top{
  display:flex;
  gap:10px;
}

.ccxpv4-iconbtn{
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(214,218,234,.95);
  background:#fff;
  color:#374056;
  cursor:pointer;
  font-size:18px;
}

.ccxpv4-title{
  margin:0;
  font-size:58px;
  line-height:1.02;
  letter-spacing:-0.04em;
  color:#14162a;
  font-weight:800;
}

.ccxpv4-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ccxpv4-meta span,
.ccxpv4-offer-chip,
.ccxpv4-badge-soft{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  background:#f6f7fb;
  border:1px solid rgba(220,224,238,.98);
  color:#363d56;
  font-size:13px;
  font-weight:600;
}

.ccxpv4-priceband{
  display:grid;
  grid-template-columns:1fr 280px;
  gap:16px;
  align-items:stretch;
  padding:18px;
  border-radius:22px;
  background:#fbfbff;
  border:1px solid rgba(224,228,243,.95);
}

.ccxpv4-priceband-main{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.ccxpv4-pricecard{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  min-height:112px;
  padding:4px 8px;
}

.ccxpv4-pricecard-label{
  color:#5d6480;
  font-size:13px;
  font-weight:600;
}

.ccxpv4-pricecard-value{
  font-size:54px;
  line-height:1;
  font-weight:800;
  letter-spacing:-0.05em;
  color:#6951ff;
}

.ccxpv4-pricecard-value.is-dark{
  color:#14162a;
}

.ccxpv4-pricecard-sub{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:#5d6480;
  font-size:14px;
}

.ccxpv4-priceband-cta{
  display:flex;
  align-items:center;
  justify-content:center;
}

.ccxpv4-btn-primary,
.ccxpv4-btn-offer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 28px;
  border-radius:18px;
  text-decoration:none;
  font-weight:800;
  font-size:16px;
  border:0;
  color:#fff;
  background:linear-gradient(135deg, #4d3dff 0%, #7653ff 100%);
  box-shadow:0 18px 34px rgba(89,75,255,.28);
}

.ccxpv4-btn-offer{
  min-width:188px;
}

.ccxpv4-btn-offer.is-disabled{
  opacity:.6;
  pointer-events:none;
}

.ccxpv4-content-shell{
  border-radius:28px;
  padding:22px;
}

.ccxpv4-tabs{
  display:flex;
  gap:12px;
  margin-bottom:20px;
  flex-wrap:wrap;
}

.ccxpv4-tab{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  color:#3b425c;
  background:#f3f4fa;
  border:1px solid rgba(220,224,238,.98);
}

.ccxpv4-tab.is-active{
  color:#fff;
  background:linear-gradient(135deg, #171827 0%, #2a2b43 100%);
  border-color:#171827;
}

.ccxpv4-tab-ico{
  font-size:15px;
}

.ccxpv4-sections{
  display:grid;
  gap:22px;
}

.ccxpv4-section{
  border-radius:24px;
  padding:28px;
}

.ccxpv4-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  margin-bottom:20px;
}

.ccxpv4-section-head-right{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.ccxpv4-section-kicker{
  margin:0 0 8px;
  color:#6d61ff;
  font-weight:800;
  font-size:13px;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.ccxpv4-section-head h2{
  margin:0;
  font-size:42px;
  line-height:1.04;
  color:#17192a;
  letter-spacing:-0.04em;
}

.ccxpv4-section-sub{
  margin:8px 0 0;
  color:#737a92;
  font-size:15px;
}

.ccxpv4-section-side{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  background:#f6f7fb;
  border:1px solid rgba(220,224,238,.98);
  color:#3d445d;
  font-size:14px;
  font-weight:700;
}

.ccxpv4-filter-btn{
  min-height:44px;
  padding:0 16px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(220,224,238,.98);
  font-weight:700;
  color:#30364d;
  cursor:pointer;
}

.ccxpv4-section-body{
  display:grid;
  gap:18px;
}

.ccxpv4-subtabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.ccxpv4-subtab{
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(220,224,238,.98);
  background:#f5f6fb;
  color:#32384f;
  font-weight:800;
  cursor:pointer;
}

.ccxpv4-subtab.is-active{
  color:#fff;
  background:linear-gradient(135deg, #111420 0%, #23253b 100%);
  border-color:#111420;
}

.ccxpv4-offers-pane{
  display:none;
}

.ccxpv4-offers-pane.is-active{
  display:block;
}

.ccxpv4-offers-grid{
  display:grid;
  gap:14px;
}

.ccxpv4-offer-card{
  display:grid;
  grid-template-columns:260px 1fr 180px 220px;
  gap:18px;
  align-items:center;
  border-radius:22px;
  padding:18px;
  background:#fff;
  border:1px solid rgba(222,226,241,.98);
  box-shadow:0 8px 20px rgba(35,41,88,.04);
}

.ccxpv4-offer-card.is-best{
  border-color:rgba(110,88,255,.38);
  box-shadow:0 18px 34px rgba(96,84,255,.10);
}

.ccxpv4-offer-merchant-col{
  display:flex;
  align-items:center;
  gap:14px;
}

.ccxpv4-offer-logo{
  width:62px;
  height:62px;
  border-radius:16px;
  background:#fff7f7;
  border:1px solid rgba(236,219,219,.98);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:32px;
  font-weight:900;
  color:#d94040;
}

.ccxpv4-offer-logo img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.ccxpv4-offer-merchant-meta{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.ccxpv4-offer-merchant-meta strong{
  font-size:20px;
  color:#17192a;
}

.ccxpv4-offer-merchant-meta span{
  color:#737a92;
  font-size:14px;
}

.ccxpv4-offer-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(112,94,255,.12);
  color:#6e58ff;
  font-size:12px;
  font-weight:800;
}

.ccxpv4-offer-product-col{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.ccxpv4-offer-product-col strong{
  font-size:20px;
  line-height:1.2;
  color:#17192a;
}

.ccxpv4-offer-meta-line{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  color:#6f768f;
  font-size:14px;
}

.ccxpv4-offer-price-col{
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:flex-start;
}

.ccxpv4-offer-price-col strong{
  font-size:42px;
  line-height:1;
  color:#4a3eff;
  letter-spacing:-0.04em;
}

.ccxpv4-offer-price-col span{
  color:#6f768f;
  font-size:14px;
  font-weight:600;
}

.ccxpv4-offer-cta-col{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}

.ccxpv4-offer-updated{
  color:#7b8298;
  font-size:12px;
}

.ccxpv4-specs-card{
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(222,226,241,.98);
  padding:8px 18px;
}

.ccxpv4-spec-row{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:20px 0;
  border-bottom:1px solid rgba(233,236,246,.95);
}

.ccxpv4-spec-row:last-child{
  border-bottom:0;
}

.ccxpv4-spec-row span{
  color:#6d748d;
  font-size:16px;
}

.ccxpv4-spec-row strong{
  color:#17192a;
  font-size:16px;
  text-align:right;
}

.ccxpv4-variants-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}

.ccxpv4-variant-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  text-decoration:none;
  color:inherit;
  border-radius:20px;
  padding:16px;
  background:#fff;
  border:1px solid rgba(222,226,241,.98);
  box-shadow:0 8px 20px rgba(35,41,88,.04);
}

.ccxpv4-variant-media{
  min-height:150px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fafbff;
  border:1px solid rgba(233,236,246,.95);
  padding:12px;
}

.ccxpv4-variant-media img{
  max-width:100%;
  max-height:124px;
  object-fit:contain;
  object-position:center center;
}

.ccxpv4-variant-body{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.ccxpv4-variant-body strong{
  color:#17192a;
  font-size:16px;
  line-height:1.25;
}

.ccxpv4-variant-body span{
  color:#6f768f;
  font-size:14px;
}

.ccxpv4-placeholder{
  width:100%;
  min-height:260px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#777f98;
  border:1px dashed rgba(197,202,221,.95);
  background:#fbfbfe;
}

.ccxpv4-placeholder.small{
  min-height:84px;
}

@media (max-width: 1280px){
  .ccxpv4-title{font-size:48px}
  .ccxpv4-pricecard-value{font-size:46px}
  .ccxpv4-offer-card{grid-template-columns:220px 1fr 150px 190px}
  .ccxpv4-variants-grid{grid-template-columns:repeat(3, minmax(0, 1fr))}
}

@media (max-width: 1080px){
  .ccxpv4-hero{grid-template-columns:1fr}
  .ccxpv4-priceband{grid-template-columns:1fr}
  
  .ccxpv4-offer-card{grid-template-columns:1fr}
  .ccxpv4-offer-cta-col{align-items:flex-start}
  .ccxpv4-variants-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
}

@media (max-width: 720px){
  .ccxpv4-page{padding:16px 10px 34px}
  .ccxpv4-hero,
  .ccxpv4-content-shell,
  .ccxpv4-section{padding:16px;border-radius:20px}
  .ccxpv4-hero-media-shell{grid-template-columns:1fr}
  .ccxpv4-hero-thumbs{flex-direction:row;flex-wrap:wrap}
  .ccxpv4-title{font-size:34px}
  .ccxpv4-section-head h2{font-size:30px}
  .ccxpv4-priceband-main{grid-template-columns:1fr}
  .ccxpv4-pricecard-value{font-size:36px}
  .ccxpv4-section-head{flex-direction:column;align-items:flex-start}
  .ccxpv4-section-head-right{justify-content:flex-start}
  .ccxpv4-variants-grid{grid-template-columns:1fr}
  .ccxpv4-spec-row{flex-direction:column}
}

/* CCX_PRODUCTS_V4_SINGLE_MEDIA_HERO_FIX_V1 */
.ccxpv4-hero-media-shell.is-single-media{
  grid-template-columns:1fr !important;
}

.ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia{
  min-height:420px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
}

.ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img,
.ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  display:block !important;
  width:min(100%, 360px) !important;
  max-width:360px !important;
  height:auto !important;
  max-height:440px !important;
  min-width:0 !important;
  object-fit:contain !important;
  margin:0 auto !important;
  transform:none !important;
}

@media (max-width: 1080px){
  .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img,
  .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
    width:min(100%, 320px) !important;
    max-width:320px !important;
    max-height:380px !important;
  }
}

@media (max-width: 720px){
  .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia{
    min-height:300px !important;
    padding:16px !important;
  }

  .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img,
  .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
    width:min(100%, 260px) !important;
    max-width:260px !important;
    max-height:300px !important;
  }
}

/* CCX_PRODUCTS_V4_HERO_WHITE_BG_V1 */
.ccxpv4-hero-media-card{
  background:#ffffff !important;
}

.ccxpv4-hero-mainmedia{
  background:#ffffff !important;
}



/* CCX_PRODUCTS_V4_PREMIUM_APPLE_REFINEMENT_V2_CLEAN */

.ccxpv4-page{
  background:linear-gradient(180deg, #f6f7fb 0%, #f1f3f8 100%) !important;
}

.ccxpv4-hero,
.ccxpv4-content-shell,
.ccxpv4-section{
  background:#ffffff !important;
  border:1px solid #e7eaf1 !important;
  box-shadow:0 14px 40px rgba(17,24,39,.05) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.ccxpv4-hero{
  grid-template-columns:minmax(360px, 430px) 1fr !important;
  gap:24px !important;
  padding:20px !important;
  border-radius:28px !important;
  align-items:center !important;
}

.ccxpv4-hero-media-card{
  background:#f8f9fc !important;
  border:1px solid #edf0f5 !important;
  border-radius:22px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
  padding:14px !important;
}

.ccxpv4-hero-mainmedia{
  background:#ffffff !important;
  border-radius:18px !important;
  min-height:340px !important;
  padding:10px !important;
}

.ccxpv4-hero-mainmedia img{
  max-height:350px !important;
  filter:drop-shadow(0 18px 38px rgba(0,0,0,.12)) !important;
}

.ccxpv4-title{
  font-size:34px !important;
  line-height:1.04 !important;
  letter-spacing:-0.035em !important;
  color:#111827 !important;
}

.ccxpv4-kicker{
  background:#eaf7ee !important;
  color:#1f7a3f !important;
  border:none !important;
}

.ccxpv4-meta span{
  background:#f7f8fb !important;
  border:1px solid #e6eaf0 !important;
  color:#4b5563 !important;
}

.ccxpv4-priceband{
  background:#fbfcfe !important;
  border:1px solid #e8ecf2 !important;
  border-radius:22px !important;
  padding:18px 20px !important;
  grid-template-columns:1fr 210px !important;
  gap:18px !important;
}

.ccxpv4-priceband-main{
  gap:18px !important;
}

.ccxpv4-pricecard{
  gap:8px !important;
}

.ccxpv4-pricecard-label{
  color:#6b7280 !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.ccxpv4-pricecard-value{
  color:#16a34a !important;
  font-size:40px !important;
  line-height:1 !important;
  letter-spacing:-0.04em !important;
}

.ccxpv4-pricecard-value.is-dark{
  color:#111827 !important;
}

.ccxpv4-pricecard-sub{
  color:#6b7280 !important;
  font-size:13px !important;
}

.ccxpv4-badge-soft{
  background:#ebf8ef !important;
  color:#1f7a3f !important;
  border:1px solid #cfead7 !important;
}

.ccxpv4-btn-primary{
  min-height:50px !important;
  padding:0 24px !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#ff8a00,#ff9f1a) !important;
  box-shadow:0 10px 24px rgba(255,145,0,.22) !important;
  color:#fff !important;
  font-weight:800 !important;
}

.ccxpv4-tab{
  min-height:44px !important;
  padding:0 16px !important;
  background:#f4f6fa !important;
  border:1px solid #e6eaf0 !important;
  color:#4b5563 !important;
}

.ccxpv4-tab.is-active{
  background:#16a34a !important;
  border-color:#16a34a !important;
  color:#fff !important;
}

.ccxpv4-section{
  border-radius:28px !important;
  padding:24px !important;
}

.ccxpv4-section-kicker{
  color:#16a34a !important;
}

.ccxpv4-section-head h2{
  font-size:28px !important;
  letter-spacing:-0.03em !important;
  color:#111827 !important;
}

.ccxpv4-section-sub{
  color:#6b7280 !important;
  font-size:14px !important;
}

.ccxpv4-section-side{
  background:#f8f9fc !important;
  border:1px solid #e7ebf1 !important;
  color:#4b5563 !important;
}

.ccxpv4-filter-btn{
  background:#ffffff !important;
  border:1px solid #e5e7eb !important;
  color:#374151 !important;
  font-weight:700 !important;
}

.ccxpv4-subtab{
  background:#f4f6fa !important;
  border:1px solid #e5e9f0 !important;
  color:#4b5563 !important;
}

.ccxpv4-subtab.is-active{
  background:#16a34a !important;
  border-color:#16a34a !important;
  color:#fff !important;
}

.ccxpv4-offers-grid{
  gap:12px !important;
}

.ccxpv4-offer-card{
  grid-template-columns:220px 1fr 150px 180px !important;
  gap:16px !important;
  padding:16px !important;
  border-radius:18px !important;
  border:1px solid #e7ebf1 !important;
  background:#fff !important;
  box-shadow:none !important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.ccxpv4-offer-card:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(17,24,39,.05) !important;
}

.ccxpv4-offer-card.is-best{
  border-color:#b8e3c4 !important;
  box-shadow:0 10px 24px rgba(22,163,74,.08) !important;
}

.ccxpv4-offer-logo{
  width:56px !important;
  height:56px !important;
  border-radius:14px !important;
  background:#f7f8fa !important;
  border:1px solid #e5e7eb !important;
  color:#111827 !important;
  font-size:28px !important;
}

.ccxpv4-offer-badge{
  background:#eef2ff !important;
  color:#6d5efc !important;
  border-radius:999px !important;
}

.ccxpv4-offer-merchant-meta strong{
  font-size:16px !important;
  color:#111827 !important;
}

.ccxpv4-offer-merchant-meta span{
  font-size:13px !important;
  color:#6b7280 !important;
}

.ccxpv4-offer-chip{
  min-height:28px !important;
  padding:4px 12px !important;
  background:#f4f6fa !important;
  border:1px solid #e7ebf1 !important;
  color:#4b5563 !important;
  font-size:12px !important;
}

.ccxpv4-offer-product-col strong{
  font-size:16px !important;
  color:#111827 !important;
  line-height:1.25 !important;
}

.ccxpv4-offer-meta-line{
  font-size:13px !important;
  color:#6b7280 !important;
  gap:10px !important;
}

.ccxpv4-offer-price-col strong{
  color:#16a34a !important;
  font-size:22px !important;
  letter-spacing:-0.03em !important;
}

.ccxpv4-offer-price-col span{
  color:#6b7280 !important;
  font-size:13px !important;
}

.ccxpv4-btn-offer{
  min-width:150px !important;
  min-height:44px !important;
  border-radius:12px !important;
  background:linear-gradient(135deg,#ff8a00,#ff9f1a) !important;
  box-shadow:0 8px 20px rgba(255,145,0,.18) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.ccxpv4-btn-offer.is-disabled{
  opacity:1 !important;
  background:#f7b85c !important;
  box-shadow:none !important;
  color:#fff !important;
}

.ccxpv4-offer-updated{
  color:#9ca3af !important;
  font-size:12px !important;
}

@media (max-width: 1280px){
  .ccxpv4-offer-card{
    grid-template-columns:200px 1fr 140px 170px !important;
  }
}

@media (max-width: 1080px){
  .ccxpv4-hero{
    grid-template-columns:1fr !important;
  }

  .ccxpv4-priceband{
    grid-template-columns:1fr !important;
  }

  .ccxpv4-offer-card{
    grid-template-columns:1fr !important;
  }

  .ccxpv4-offer-cta-col{
    align-items:flex-start !important;
  }
}

@media (max-width: 720px){
  .ccxpv4-hero,
  .ccxpv4-content-shell,
  .ccxpv4-section{
    padding:16px !important;
    border-radius:20px !important;
  }

  .ccxpv4-title{
    font-size:28px !important;
  }

  .ccxpv4-section-head h2{
    font-size:24px !important;
  }

  .ccxpv4-pricecard-value{
    font-size:32px !important;
  }
}


/* CCX_PRODUCTS_V4_UI_MOCK2_MATCH_V1 */
.ccxpv4-page{
  background:linear-gradient(180deg,#f5f6fa 0%,#eff2f6 100%) !important;
  padding:16px 18px 42px !important;
}

.ccxpv4-wrap{
  max-width:1380px !important;
}

.ccxpv4-hero,
.ccxpv4-content-shell,
.ccxpv4-section{
  background:#fff !important;
  border:1px solid #e7ebf1 !important;
  box-shadow:0 10px 28px rgba(17,24,39,.05) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.ccxpv4-hero{
  grid-template-columns:minmax(300px, 360px) 1fr !important;
  gap:16px !important;
  padding:18px !important;
  border-radius:24px !important;
  margin-bottom:14px !important;
  align-items:start !important;
}

.ccxpv4-hero-media-card{
  background:linear-gradient(180deg,#f7f9fb 0%,#eef2f4 100%) !important;
  border:1px solid #edf1f5 !important;
  border-radius:18px !important;
  padding:10px !important;
  min-height:auto !important;
}

.ccxpv4-hero-media-shell{
  grid-template-columns:56px 1fr !important;
  gap:10px !important;
  align-items:start !important;
}

.ccxpv4-hero-thumbs{
  gap:8px !important;
}

.ccxpv4-thumb,
.ccxpv4-thumb-more{
  width:56px !important;
  height:56px !important;
  border-radius:12px !important;
  border:1px solid #dfe5ec !important;
  background:#fff !important;
}

.ccxpv4-thumb{
  padding:4px !important;
}

.ccxpv4-thumb.is-active{
  border-color:#4f8e67 !important;
  box-shadow:0 0 0 3px rgba(79,142,103,.14) !important;
}

.ccxpv4-hero-mainmedia{
  min-height:260px !important;
  border-radius:16px !important;
  background:transparent !important;
  padding:8px !important;
}

.ccxpv4-hero-mainmedia img{
  max-height:280px !important;
  filter:drop-shadow(0 14px 28px rgba(17,24,39,.12)) !important;
}

.ccxpv4-hero-main{
  gap:10px !important;
  padding:0 !important;
}

.ccxpv4-hero-topline{
  align-items:flex-start !important;
  gap:10px !important;
}

.ccxpv4-kicker{
  min-height:28px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  background:#eef5ef !important;
  color:#6c8672 !important;
  font-size:11px !important;
  letter-spacing:.04em !important;
}

.ccxpv4-hero-actions-top{
  gap:8px !important;
}

.ccxpv4-iconbtn{
  width:40px !important;
  height:40px !important;
  border-radius:999px !important;
  border:1px solid #e4e8ee !important;
  background:#f9fafb !important;
  color:#6b7280 !important;
  box-shadow:none !important;
}

.ccxpv4-title{
  font-size:28px !important;
  line-height:1.08 !important;
  letter-spacing:-.03em !important;
  color:#1b2430 !important;
  margin:2px 0 6px !important;
}

.ccxpv4-meta{
  gap:8px !important;
  margin-bottom:4px !important;
}

.ccxpv4-meta span,
.ccxpv4-offer-chip,
.ccxpv4-badge-soft{
  min-height:32px !important;
  padding:5px 12px !important;
  border-radius:999px !important;
  background:#f5f7fa !important;
  border:1px solid #e5e9ef !important;
  color:#4b5563 !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.ccxpv4-priceband{
  grid-template-columns:1fr 210px !important;
  gap:16px !important;
  padding:14px 16px !important;
  border-radius:18px !important;
  background:#fcfcfd !important;
  border:1px solid #e7ebf1 !important;
}

.ccxpv4-priceband-main{
  gap:14px !important;
}

.ccxpv4-pricecard{
  min-height:92px !important;
  padding:0 !important;
  gap:4px !important;
}

.ccxpv4-pricecard-label{
  font-size:12px !important;
  font-weight:700 !important;
  color:#7a8493 !important;
}

.ccxpv4-pricecard-value{
  font-size:30px !important;
  line-height:1.02 !important;
  color:#20a24b !important;
  letter-spacing:-.03em !important;
}

.ccxpv4-pricecard-value.is-dark{
  color:#1f2937 !important;
}

.ccxpv4-pricecard-sub{
  gap:8px !important;
  color:#7a8493 !important;
  font-size:13px !important;
}

.ccxpv4-priceband-cta{
  align-items:center !important;
  justify-content:center !important;
}

.ccxpv4-btn-primary,
.ccxpv4-btn-offer{
  background:linear-gradient(135deg,#ff8c00 0%,#ff9e18 100%) !important;
  color:#fff !important;
  border-radius:12px !important;
  border:0 !important;
  box-shadow:0 8px 20px rgba(255,149,0,.18) !important;
  font-weight:800 !important;
}

.ccxpv4-btn-primary{
  min-height:48px !important;
  padding:0 24px !important;
  font-size:15px !important;
}

.ccxpv4-btn-offer{
  min-width:126px !important;
  min-height:42px !important;
  padding:0 18px !important;
  font-size:14px !important;
}

.ccxpv4-btn-offer.is-disabled{
  background:#f2b35e !important;
  box-shadow:none !important;
  opacity:1 !important;
}

.ccxpv4-content-shell{
  border-radius:24px !important;
  padding:16px !important;
}

.ccxpv4-tabs{
  gap:10px !important;
  margin-bottom:12px !important;
}

.ccxpv4-tab{
  min-height:40px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:#f5f7fa !important;
  border:1px solid #e5e9ef !important;
  color:#4b5563 !important;
  font-size:14px !important;
  font-weight:700 !important;
}

.ccxpv4-tab.is-active{
  background:#2f6f47 !important;
  border-color:#2f6f47 !important;
  color:#fff !important;
}

.ccxpv4-section{
  border-radius:22px !important;
  padding:18px !important;
}

.ccxpv4-section-head{
  margin-bottom:14px !important;
  align-items:center !important;
}

.ccxpv4-section-kicker{
  color:#4b9b67 !important;
  font-size:12px !important;
  letter-spacing:.08em !important;
}

.ccxpv4-section-head h2{
  font-size:22px !important;
  line-height:1.1 !important;
  letter-spacing:-.02em !important;
  color:#1b2430 !important;
}

.ccxpv4-section-sub{
  font-size:13px !important;
  color:#7a8493 !important;
}

.ccxpv4-section-side,
.ccxpv4-filter-btn{
  min-height:38px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:#f8fafc !important;
  border:1px solid #e6ebf1 !important;
  color:#5b6472 !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.ccxpv4-subtabs{
  gap:8px !important;
}

.ccxpv4-subtab{
  min-height:36px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:#f5f7fa !important;
  border:1px solid #e5e9ef !important;
  color:#4b5563 !important;
  font-size:13px !important;
}

.ccxpv4-subtab.is-active{
  background:#21a24a !important;
  border-color:#21a24a !important;
  color:#fff !important;
}

.ccxpv4-offers-grid{
  gap:10px !important;
}

.ccxpv4-offer-card{
  grid-template-columns:180px 1fr 140px 160px !important;
  gap:14px !important;
  align-items:center !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid #e8edf3 !important;
  background:#fff !important;
  box-shadow:none !important;
}

.ccxpv4-offer-card.is-best{
  border-color:#cfe7d7 !important;
  box-shadow:none !important;
}

.ccxpv4-offer-merchant-col{
  gap:12px !important;
}

.ccxpv4-offer-logo{
  width:48px !important;
  height:48px !important;
  border-radius:10px !important;
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  font-size:24px !important;
  color:#111827 !important;
}

.ccxpv4-offer-merchant-meta{
  gap:2px !important;
}

.ccxpv4-offer-merchant-meta strong{
  font-size:16px !important;
  color:#1f2937 !important;
}

.ccxpv4-offer-merchant-meta span{
  font-size:12px !important;
  color:#7a8493 !important;
}

.ccxpv4-offer-badge{
  min-height:22px !important;
  padding:0 8px !important;
  border-radius:999px !important;
  background:#eef5f1 !important;
  color:#3b7c53 !important;
  font-size:11px !important;
}

.ccxpv4-offer-product-col{
  gap:5px !important;
}

.ccxpv4-offer-product-col strong{
  font-size:15px !important;
  line-height:1.25 !important;
  color:#1f2937 !important;
}

.ccxpv4-offer-meta-line{
  gap:8px !important;
  font-size:12px !important;
  color:#7a8493 !important;
}

.ccxpv4-offer-price-col strong{
  font-size:18px !important;
  line-height:1.05 !important;
  color:#20a24b !important;
  letter-spacing:-.02em !important;
}

.ccxpv4-offer-price-col span{
  font-size:12px !important;
  color:#7a8493 !important;
}

.ccxpv4-offer-cta-col{
  gap:6px !important;
}

.ccxpv4-offer-updated{
  font-size:11px !important;
  color:#9aa3b2 !important;
}

.ccxpv4-specs-card,
.ccxpv4-variant-card{
  border-radius:16px !important;
  border:1px solid #e8edf3 !important;
  box-shadow:none !important;
}

.ccxpv4-variant-media{
  border-radius:14px !important;
}

@media (max-width: 1180px){
  .ccxpv4-hero{
    grid-template-columns:1fr !important;
  }
  .ccxpv4-priceband{
    grid-template-columns:1fr !important;
  }
  .ccxpv4-offer-card{
    grid-template-columns:1fr !important;
  }
  .ccxpv4-offer-cta-col{
    align-items:flex-start !important;
  }
}

@media (max-width: 720px){
  .ccxpv4-page{
    padding:12px 10px 28px !important;
  }
  .ccxpv4-hero,
  .ccxpv4-content-shell,
  .ccxpv4-section{
    padding:14px !important;
    border-radius:18px !important;
  }
  .ccxpv4-hero-media-shell{
    grid-template-columns:1fr !important;
  }
  .ccxpv4-hero-thumbs{
    flex-direction:row !important;
    flex-wrap:wrap !important;
  }
  .ccxpv4-title{
    font-size:24px !important;
  }
  .ccxpv4-pricecard-value{
    font-size:28px !important;
  }
}

/* CCX_PRODUCTS_V4_RENDER_MOCK2_EXACT_V1 */
.ccxpv4-sharebtn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid #e4e8ee;
  background:#f9fafb;
  color:#5f6775;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
}

.ccxpv4-sharebtn-ico{
  font-size:14px;
  line-height:1;
}

.ccxpv4-hero{
  min-height:auto !important;
}

.ccxpv4-hero-main{
  justify-content:center;
}

.ccxpv4-hero-topline{
  margin-bottom:2px;
}

.ccxpv4-title{
  max-width:820px;
}

.ccxpv4-meta{
  margin-bottom:2px !important;
}

.ccxpv4-priceband{
  margin-top:4px;
}

.ccxpv4-section-head{
  border-bottom:1px solid #eef2f6;
  padding-bottom:12px;
}

.ccxpv4-offer-card{
  grid-template-columns:220px 1fr 150px 170px !important;
  min-height:unset !important;
}

.ccxpv4-offer-merchant-meta{
  justify-content:center;
}

.ccxpv4-offer-merchant-meta strong{
  line-height:1.1;
}

.ccxpv4-offer-merchant-meta .ccxpv4-offer-badge{
  margin-top:2px;
}

.ccxpv4-offer-product-col{
  justify-content:center;
}

.ccxpv4-offer-price-col{
  justify-content:center;
  min-width:0;
}

.ccxpv4-offer-cta-col{
  justify-content:center;
}

.ccxpv4-section-kicker{
  display:none !important;
}

@media (max-width: 1180px){
  .ccxpv4-offer-card{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   CCX PRODUCTS V4 FINAL POLISH V2 CLEAN
   ========================================================= */

.ccxpv4-page{
  background:linear-gradient(180deg,#f5f6fa 0%,#eef1f5 100%) !important;
}

.ccxpv4-wrap{
  max-width:1320px !important;
}

.ccxpv4-hero{
  grid-template-columns:320px 1fr !important;
  gap:18px !important;
  padding:16px !important;
  border-radius:22px !important;
  min-height:auto !important;
}

.ccxpv4-hero-media-card{
  padding:10px !important;
  border-radius:18px !important;
  background:#f7f8fb !important;
  border:1px solid #eceff4 !important;
}

.ccxpv4-hero-media-shell{
  grid-template-columns:1fr !important;
}

.ccxpv4-hero-thumbs{
  display:none !important;
}

.ccxpv4-hero-mainmedia{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:300px !important;
  padding:6px !important;
  background:transparent !important;
}

.ccxpv4-hero-mainmedia img,
.ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  width:auto !important;
  max-width:100% !important;
  max-height:300px !important;
  object-fit:contain !important;
  transform:scale(1.08) !important;
  filter:drop-shadow(0 16px 30px rgba(17,24,39,.12)) !important;
}

.ccxpv4-hero-main{
  gap:10px !important;
  justify-content:center !important;
}

.ccxpv4-hero-topline{
  margin-bottom:2px !important;
}

.ccxpv4-kicker{
  min-height:26px !important;
  padding:0 10px !important;
  background:#eef5ef !important;
  color:#6c8672 !important;
  font-size:11px !important;
  letter-spacing:.04em !important;
}

.ccxpv4-sharebtn{
  min-height:38px !important;
  padding:0 14px !important;
  font-size:13px !important;
}

.ccxpv4-iconbtn{
  width:38px !important;
  height:38px !important;
}

.ccxpv4-title{
  font-size:25px !important;
  line-height:1.12 !important;
  letter-spacing:-.03em !important;
  color:#1b2430 !important;
  margin:0 !important;
}

.ccxpv4-meta{
  gap:8px !important;
  margin:2px 0 2px !important;
}

.ccxpv4-meta span{
  background:#f3f5f8 !important;
  border:1px solid #e6eaf0 !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  font-size:12px !important;
  color:#5f6775 !important;
}

.ccxpv4-priceband{
  grid-template-columns:1fr 200px !important;
  gap:14px !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  margin-top:4px !important;
}

.ccxpv4-priceband-main{
  gap:10px !important;
}

.ccxpv4-pricecard{
  min-height:76px !important;
  padding:0 !important;
  gap:4px !important;
}

.ccxpv4-pricecard-label{
  font-size:11px !important;
  color:#7b8493 !important;
}

.ccxpv4-pricecard-value{
  font-size:20px !important;
  line-height:1.05 !important;
}

.ccxpv4-pricecard-value.is-dark{
  color:#1f2937 !important;
}

.ccxpv4-pricecard-sub{
  font-size:12px !important;
  gap:6px !important;
}

.ccxpv4-badge-soft{
  min-height:24px !important;
  padding:2px 8px !important;
  font-size:11px !important;
}

.ccxpv4-btn-primary{
  min-height:42px !important;
  padding:0 18px !important;
  border-radius:10px !important;
  font-size:14px !important;
  box-shadow:0 8px 18px rgba(255,145,0,.16) !important;
}

.ccxpv4-content-shell{
  padding:14px !important;
  border-radius:22px !important;
}

.ccxpv4-tabs{
  gap:8px !important;
  margin-bottom:10px !important;
}

.ccxpv4-tab{
  min-height:38px !important;
  padding:0 14px !important;
  font-size:13px !important;
}

.ccxpv4-section{
  padding:14px !important;
  border-radius:18px !important;
}

.ccxpv4-section-head{
  margin-bottom:10px !important;
  padding-bottom:10px !important;
  border-bottom:1px solid #eef2f6 !important;
}

.ccxpv4-section-head h2{
  font-size:18px !important;
  margin:0 !important;
}

.ccxpv4-section-sub{
  font-size:12px !important;
  margin-top:4px !important;
}

.ccxpv4-section-side,
.ccxpv4-filter-btn{
  min-height:34px !important;
  padding:0 12px !important;
  font-size:12px !important;
}

.ccxpv4-subtabs{
  gap:8px !important;
}

.ccxpv4-subtab{
  min-height:34px !important;
  padding:0 14px !important;
  font-size:12px !important;
}

.ccxpv4-offers-grid{
  gap:8px !important;
}

.ccxpv4-offer-card{
  grid-template-columns:150px 1fr 110px 150px !important;
  gap:12px !important;
  padding:10px 12px !important;
  border-radius:12px !important;
  border:1px solid #e8edf3 !important;
  background:#fff !important;
  box-shadow:none !important;
}

/* Smartphone PDP: compact premium hero + offers-only layout */
body.ccx-product-page--smartphone .ccxpv4-hero{
  align-items:start !important;
}

body.ccx-product-page--smartphone .ccxpv4-hero-media-card{
  align-self:start !important;
}

body.ccx-product-page--smartphone .ccxpv4-hero-main{
  justify-content:flex-start !important;
  align-self:start !important;
  gap:8px !important;
  padding-top:0 !important;
}

body.ccx-product-page--smartphone .ccxpv4-hero-topline{
  margin-bottom:0 !important;
}

body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia{
  min-height:240px !important;
  align-items:flex-start !important;
  padding:0 !important;
}

body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia img,
body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  max-height:260px !important;
  transform:translateY(-8px) scale(1.08) !important;
  transform-origin:center top !important;
}

body.ccx-product-page--smartphone .ccxpv4-content-shell{
  padding-top:12px !important;
}

body.ccx-product-page--smartphone .ccxpv4-tabs,
body.ccx-product-page--smartphone #ccxpv4-specs{
  display:none !important;
}

.ccxpv4-offer-card:hover{
  background:#fafbfc !important;
  border-color:#dde5ee !important;
}

.ccxpv4-offer-merchant-col{
  gap:10px !important;
}

.ccxpv4-offer-logo{
  width:36px !important;
  height:36px !important;
  border-radius:10px !important;
  background:#f3f5f7 !important;
  border:1px solid #e5e7eb !important;
  font-size:18px !important;
}

.ccxpv4-offer-merchant-meta{
  gap:1px !important;
}

.ccxpv4-offer-merchant-meta strong{
  font-size:14px !important;
  line-height:1.1 !important;
}

.ccxpv4-offer-merchant-meta span{
  font-size:11px !important;
  color:#7a8493 !important;
}

.ccxpv4-offer-badge{
  min-height:20px !important;
  padding:0 7px !important;
  font-size:10px !important;
}

.ccxpv4-offer-product-col{
  gap:3px !important;
}

.ccxpv4-offer-product-col strong{
  font-size:13px !important;
  line-height:1.2 !important;
}

.ccxpv4-offer-meta-line{
  gap:6px !important;
  font-size:11px !important;
  color:#7a8493 !important;
}

.ccxpv4-offer-price-col strong{
  font-size:16px !important;
  line-height:1.05 !important;
}

.ccxpv4-offer-price-col span{
  font-size:11px !important;
}

.ccxpv4-btn-offer{
  min-width:130px !important;
  min-height:38px !important;
  padding:0 14px !important;
  border-radius:10px !important;
  font-size:13px !important;
}

.ccxpv4-offer-updated{
  font-size:10px !important;
}

@media (max-width: 1180px){
  .ccxpv4-hero{
    grid-template-columns:1fr !important;
  }

  .ccxpv4-priceband{
    grid-template-columns:1fr !important;
  }

  .ccxpv4-offer-card{
    grid-template-columns:1fr !important;
  }

  .ccxpv4-offer-cta-col{
    align-items:flex-start !important;
  }
}

@media (max-width: 720px){
  .ccxpv4-page{
    padding:10px 8px 24px !important;
  }

  .ccxpv4-hero,
  .ccxpv4-content-shell,
  .ccxpv4-section{
    padding:12px !important;
    border-radius:16px !important;
  }

  .ccxpv4-title{
    font-size:22px !important;
  }

  .ccxpv4-hero-mainmedia{
    min-height:240px !important;
  }

  .ccxpv4-hero-mainmedia img,
  .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
    max-height:240px !important;
  }
}

/* Final override for product PDP shell served on public routes */
body.ccx-products-v4-body .ccxpv4-tabs,
body.ccx-products-v4-body #ccxpv4-specs{
  display:none !important;
}

body.ccx-products-v4-body .ccxpv4-hero{
  align-items:start !important;
  min-height:0 !important;
}

body.ccx-products-v4-body .ccxpv4-hero-media-card{
  align-self:start !important;
  min-height:0 !important;
}

body.ccx-products-v4-body .ccxpv4-hero-main{
  justify-content:flex-start !important;
  align-self:start !important;
  gap:2px !important;
  padding-top:0 !important;
  min-height:0 !important;
}

body.ccx-products-v4-body .ccxpv4-hero-topline{
  margin-bottom:0 !important;
}

body.ccx-products-v4-body .ccxpv4-hero-mainmedia{
  min-height:160px !important;
  align-items:flex-start !important;
  padding:0 !important;
}

body.ccx-products-v4-body .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  max-height:190px !important;
  transform:translateY(0) scale(1) !important;
  transform-origin:center top !important;
}

body.ccx-products-v4-body .ccxpv4-content-shell{
  padding-top:4px !important;
}

/* Luxe pass: make the hero feel more premium without touching the offers list */
body.ccx-products-v4-body .ccxpv4-hero{
  grid-template-columns:300px minmax(0, 1fr) !important;
  gap:16px !important;
  padding:12px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.92) 0, rgba(255,255,255,.72) 22%, transparent 48%),
    linear-gradient(135deg, rgba(247,249,255,.98) 0%, rgba(255,255,255,.96) 42%, rgba(247,250,246,.94) 100%) !important;
  border:1px solid rgba(223,228,238,.96) !important;
  box-shadow:
    0 24px 56px rgba(27,39,72,.08),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

body.ccx-products-v4-body .ccxpv4-hero-media-card{
  position:relative !important;
  overflow:hidden !important;
  padding:0 !important;
  height:240px !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 50% 16%, rgba(255,255,255,.70) 0%, rgba(245,248,253,.34) 36%, rgba(238,243,250,.18) 100%) !important;
  border:1px solid rgba(229,234,243,.98) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 18px 36px rgba(34,46,80,.06) !important;
}

body.ccx-products-v4-body .ccxpv4-hero-media-card::before{
  display:none !important;
}

body.ccx-products-v4-body .ccxpv4-hero-mainmedia{
  position:relative !important;
  min-height:240px !important;
  height:240px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  justify-content:center !important;
  align-items:center !important;
  overflow:visible !important;
}

body.ccx-products-v4-body .ccxpv4-hero-mainmedia::after{
  display:none !important;
}

body.ccx-products-v4-body .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  width:auto !important;
  max-width:88% !important;
  max-height:88% !important;
  height:auto !important;
  margin:0 auto !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
  filter:drop-shadow(0 14px 24px rgba(23,33,60,.10)) !important;
}

body.ccx-products-v4-body .ccxpv4-kicker{
  min-height:30px !important;
  padding:0 14px !important;
  background:linear-gradient(135deg, #eef6eb 0%, #f5fbf2 100%) !important;
  color:#6c8d62 !important;
  border:1px solid rgba(203,224,194,.9) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75) !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
}

body.ccx-products-v4-body .ccxpv4-sharebtn,
body.ccx-products-v4-body .ccxpv4-iconbtn{
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(224,229,239,.98) !important;
  box-shadow:0 8px 20px rgba(31,41,70,.05) !important;
}

body.ccx-products-v4-body .ccxpv4-sharebtn{
  min-height:40px !important;
  padding:0 16px !important;
  border-radius:999px !important;
}

body.ccx-products-v4-body .ccxpv4-title{
  max-width:900px !important;
  font-size:26px !important;
  line-height:1.04 !important;
  letter-spacing:-.04em !important;
  color:#132033 !important;
  margin-bottom:0 !important;
}

body.ccx-products-v4-body .ccxpv4-meta{
  gap:6px !important;
  margin:0 !important;
}

body.ccx-products-v4-body .ccxpv4-meta span{
  min-height:32px !important;
  padding:4px 10px !important;
  background:rgba(248,250,253,.96) !important;
  border:1px solid rgba(226,232,240,.95) !important;
  color:#4d5b70 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8) !important;
}

body.ccx-products-v4-body .ccxpv4-priceband{
  grid-template-columns:minmax(0, 1fr) 220px !important;
  gap:12px !important;
  padding:6px 12px !important;
  border-radius:20px !important;
  margin-top:2px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(250,251,255,.98)) !important;
  border:1px solid rgba(227,232,241,.98) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    0 12px 28px rgba(30,40,67,.04) !important;
}

body.ccx-products-v4-body .ccxpv4-priceband-main{
  gap:8px !important;
}

body.ccx-products-v4-body .ccxpv4-pricecard{
  min-height:48px !important;
  padding:0 !important;
}

body.ccx-products-v4-body .ccxpv4-pricecard-label{
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
  color:#7e8797 !important;
}

body.ccx-products-v4-body .ccxpv4-pricecard-value{
  font-size:22px !important;
  color:#0f9a50 !important;
}

body.ccx-products-v4-body .ccxpv4-pricecard-value.is-dark{
  color:#15243a !important;
}

body.ccx-products-v4-body .ccxpv4-pricecard-sub{
  font-size:12px !important;
  color:#647188 !important;
}

body.ccx-products-v4-body .ccxpv4-badge-soft{
  min-height:25px !important;
  padding:3px 8px !important;
  background:#ffffff !important;
  border:1px solid rgba(224,230,239,.98) !important;
  color:#42526a !important;
}

body.ccx-products-v4-body .ccxpv4-btn-primary{
  min-height:46px !important;
  width:100% !important;
  border-radius:14px !important;
  font-size:14px !important;
  background:linear-gradient(135deg, #ff9c1c 0%, #ff8a00 100%) !important;
  box-shadow:0 18px 30px rgba(255,145,0,.22) !important;
}

@media (max-width: 1180px){
  body.ccx-products-v4-body .ccxpv4-hero{
    grid-template-columns:1fr !important;
  }

  body.ccx-products-v4-body .ccxpv4-priceband{
    grid-template-columns:1fr !important;
  }

  body.ccx-products-v4-body .ccxpv4-btn-primary{
    width:auto !important;
    min-width:220px !important;
  }
}

/* Non-smartphone PDPs: restore contained hero visuals for laptops/desktops */
body.ccx-products-v4-body.ccx-product-page--pc_portable .ccxpv4-hero-media-card,
body.ccx-products-v4-body.ccx-product-page--desktop_pc .ccxpv4-hero-media-card{
  height:260px !important;
  padding:12px !important;
}

body.ccx-products-v4-body.ccx-product-page--pc_portable .ccxpv4-hero-mainmedia,
body.ccx-products-v4-body.ccx-product-page--desktop_pc .ccxpv4-hero-mainmedia{
  min-height:236px !important;
  height:236px !important;
  padding:8px !important;
  overflow:hidden !important;
  align-items:center !important;
  justify-content:center !important;
}

body.ccx-products-v4-body.ccx-product-page--pc_portable .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--pc_portable .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image],
body.ccx-products-v4-body.ccx-product-page--desktop_pc .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--desktop_pc .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:210px !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* Videogame PDPs: keep portrait box art fully visible and centered */
body.ccx-products-v4-body.ccx-product-page--videogame .ccxpv4-hero-media-card{
  height:280px !important;
  padding:14px !important;
}

body.ccx-products-v4-body.ccx-product-page--videogame .ccxpv4-hero-mainmedia{
  min-height:252px !important;
  height:252px !important;
  padding:10px !important;
  overflow:hidden !important;
  align-items:center !important;
  justify-content:center !important;
}

body.ccx-products-v4-body.ccx-product-page--videogame .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--videogame .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:228px !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* TV/Audio PDPs: favor wide packshots and TV visuals */
body.ccx-products-v4-body.ccx-product-page--tv_audio .ccxpv4-hero-media-card,
body.ccx-products-v4-body.ccx-product-page--tv .ccxpv4-hero-media-card{
  height:230px !important;
  padding:12px !important;
}

body.ccx-products-v4-body.ccx-product-page--tv_audio .ccxpv4-hero-mainmedia,
body.ccx-products-v4-body.ccx-product-page--tv .ccxpv4-hero-mainmedia{
  min-height:206px !important;
  height:206px !important;
  padding:8px !important;
  overflow:hidden !important;
  align-items:center !important;
  justify-content:center !important;
}

body.ccx-products-v4-body.ccx-product-page--tv_audio .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--tv_audio .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image],
body.ccx-products-v4-body.ccx-product-page--tv .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--tv .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:182px !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* Smartwatch PDPs: keep portrait watch visuals clean and centered */
body.ccx-products-v4-body.ccx-product-page--smartwatch .ccxpv4-hero-media-card{
  height:250px !important;
  padding:12px !important;
}

body.ccx-products-v4-body.ccx-product-page--smartwatch .ccxpv4-hero-mainmedia{
  min-height:226px !important;
  height:226px !important;
  padding:8px !important;
  overflow:hidden !important;
  align-items:center !important;
  justify-content:center !important;
}

body.ccx-products-v4-body.ccx-product-page--smartwatch .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--smartwatch .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:206px !important;
  transform:none !important;
  object-fit:contain !important;
  object-position:center center !important;
}

body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-card{
  height:280px !important;
  padding:14px !important;
}

body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia{
  position:relative !important;
  min-height:252px !important;
  height:252px !important;
  padding:0 !important;
  overflow:hidden !important;
  align-items:center !important;
  justify-content:center !important;
}

body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  position:absolute !important;
  inset:12px !important;
  width:calc(100% - 24px) !important;
  height:calc(100% - 24px) !important;
  max-width:none !important;
  max-height:none !important;
  transform:scale(var(--ccxpv4-media-scale, 1)) !important;
  object-fit:contain !important;
  object-position:var(--ccxpv4-media-object-position, center center) !important;
  transform-origin:center center !important;
  margin:0 !important;
  display:block !important;
}

body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia{
  position:relative !important;
  min-height:252px !important;
  height:252px !important;
  padding:0 !important;
}

body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img,
body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
  position:absolute !important;
  inset:12px !important;
  width:calc(100% - 24px) !important;
  height:calc(100% - 24px) !important;
  max-width:none !important;
  max-height:none !important;
  min-width:0 !important;
  margin:0 !important;
  transform:scale(var(--ccxpv4-media-scale, 1)) !important;
  object-fit:contain !important;
  object-position:var(--ccxpv4-media-object-position, center center) !important;
  transform-origin:center center !important;
}

@media (max-width: 980px){
  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-card{
    height:220px !important;
    padding:12px !important;
  }

  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia,
  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia{
    min-height:196px !important;
    height:196px !important;
  }

  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia img,
  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image],
  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img,
  body.ccx-products-v4-body.ccx-product-page--smartphone .ccxpv4-hero-media-shell.is-single-media .ccxpv4-hero-mainmedia img[data-ccxpv4-main-image]{
    inset:10px !important;
    width:calc(100% - 20px) !important;
    height:calc(100% - 20px) !important;
  }
}
