/* RV_SHOP_INDEX_AMAZON_V17_CSS_20260515 */

:root {
  --rv17-dark:#0f172a;
  --rv17-belt:#1e293b;
  --rv17-red:#e11d48;
  --rv17-red-dark:#be123c;
  --rv17-soft:#fff1f2;
  --rv17-bg:#e5e7eb;
  --rv17-card:#fff;
  --rv17-text:#0f172a;
  --rv17-muted:#64748b;
  --rv17-line:rgba(15,23,42,.12);
  --rv17-star:#f97316;
}

body.rv17-active {
  background: var(--rv17-bg) !important;
}

body.rv17-active > header:not(.rv17-header),
body.rv17-active .site-header,
body.rv17-active .main-header,
body.rv17-active .navbar,
body.rv17-active .topbar {
  display:none !important;
}

.rv17-shell {
  min-height:100vh;
  background:var(--rv17-bg);
  color:var(--rv17-text);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.rv17-header {
  position:sticky;
  top:0;
  z-index:99999;
  color:#fff;
  background:var(--rv17-dark);
  box-shadow:0 8px 24px rgba(0,0,0,.25);
}

.rv17-header * {
  box-sizing:border-box;
}

.rv17-header a {
  color:inherit;
  text-decoration:none;
}

.rv17-top {
  min-height:72px;
  display:grid;
  grid-template-columns:245px minmax(420px,1fr) auto;
  gap:14px;
  align-items:center;
  padding:10px 18px;
}

.rv17-brand {
  display:flex;
  align-items:center;
  gap:12px;
  min-height:52px;
  padding:6px 8px;
  border:1px solid transparent;
  border-radius:10px;
}

.rv17-brand:hover,
.rv17-action:hover,
.rv17-cart:hover {
  border-color:rgba(255,255,255,.5);
  background:rgba(255,255,255,.06);
}

.rv17-mark {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(135deg,var(--rv17-red),var(--rv17-red-dark));
  color:#fff;
  font-size:24px;
  font-weight:950;
}

.rv17-brand strong {
  display:block;
  color:#fff;
  font-size:22px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.04em;
}

.rv17-brand em {
  display:block;
  margin-top:4px;
  color:#fda4af;
  font-size:12px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.rv17-search {
  height:50px;
  display:grid;
  grid-template-columns:145px minmax(0,1fr)62px;
  overflow:hidden;
  border-radius:10px;
  background:#fff;
}

.rv17-search:focus-within {
  box-shadow:0 0 0 3px rgba(225,29,72,.8);
}

.rv17-search select,
.rv17-search input,
.rv17-search button {
  height:50px;
  border:0;
  outline:0;
  font-family:inherit;
}

.rv17-search select {
  background:#f3f4f6;
  color:#111827;
  padding:0 11px;
  font-size:13px;
  font-weight:850;
  border-right:1px solid #d1d5db;
}

.rv17-search input {
  min-width:0;
  background:#fff;
  color:#111827;
  padding:0 15px;
  font-size:15px;
  font-weight:650;
}

.rv17-search button {
  display:grid;
  place-items:center;
  background:var(--rv17-red);
  cursor:pointer;
}

.rv17-search button:hover {
  background:var(--rv17-red-dark);
}

.rv17-search i {
  width:19px;
  height:19px;
  display:block;
  position:relative;
  border:3px solid #fff;
  border-radius:999px;
}

.rv17-search i:after {
  content:"";
  width:10px;
  height:3px;
  position:absolute;
  right:-8px;
  bottom:-5px;
  background:#fff;
  border-radius:99px;
  transform:rotate(45deg);
}

.rv17-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
}

.rv17-action,
.rv17-cart {
  min-height:52px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:7px 10px;
  border:1px solid transparent;
  border-radius:9px;
  line-height:1.05;
  white-space:nowrap;
}

.rv17-action small {
  color:#cbd5e1;
  font-size:11px;
  font-weight:700;
}

.rv17-action strong {
  max-width:120px;
  margin-top:3px;
  color:#fff;
  font-size:13px;
  font-weight:950;
  overflow:hidden;
  text-overflow:ellipsis;
}

.rv17-action--seller {
  background:rgba(225,29,72,.18);
  border-color:rgba(225,29,72,.48);
}

.rv17-cart {
  flex-direction:row;
  align-items:center;
  gap:9px;
}

.rv17-cart b {
  min-width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--rv17-red);
  color:#fff;
  font-size:13px;
  font-weight:950;
}

.rv17-cart strong {
  color:#fff;
  font-size:14px;
  font-weight:950;
}

.rv17-belt {
  min-height:42px;
  display:flex;
  align-items:center;
  gap:4px;
  padding:0 18px;
  overflow-x:auto;
  background:var(--rv17-belt);
}

.rv17-belt a,
.rv17-belt button {
  min-height:36px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border:1px solid transparent;
  border-radius:6px;
  background:transparent;
  color:#fff;
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
  text-decoration:none;
}

.rv17-belt a:hover,
.rv17-belt button:hover,
.rv17-belt button.is-active {
  border-color:rgba(255,255,255,.52);
  background:rgba(255,255,255,.07);
}

.rv17-hero {
  position:relative;
  min-height:455px;
  padding:28px max(18px,calc((100vw - 1480px)/2)) 110px;
  background:
    radial-gradient(circle at 70% 18%, rgba(255,255,255,.26), transparent 21rem),
    linear-gradient(135deg,#7f1d1d 0%,#be123c 43%,#e11d48 100%);
  overflow:hidden;
}

.rv17-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) 520px;
  gap:26px;
  align-items:stretch;
}

.rv17-hero-copy {
  min-height:360px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.rv17-kicker {
  width:max-content;
  display:inline-flex;
  min-height:29px;
  align-items:center;
  padding:0 11px;
  border-radius:999px;
  background:rgba(255,255,255,.17);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.rv17-hero h1 {
  max-width:900px;
  margin:18px 0 0;
  color:#fff;
  font-size:clamp(48px,6vw,92px);
  line-height:.9;
  letter-spacing:-.085em;
  font-weight:950;
}

.rv17-hero p {
  max-width:760px;
  margin:20px 0 0;
  color:rgba(255,255,255,.92);
  font-size:clamp(16px,1.25vw,20px);
  line-height:1.55;
  font-weight:650;
}

.rv17-hero-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.rv17-hero-buttons a {
  min-height:48px;
  display:inline-flex;
  align-items:center;
  padding:0 18px;
  border-radius:6px;
  text-decoration:none;
  font-weight:950;
}

.rv17-hero-buttons a:first-child {
  background:#fff;
  color:var(--rv17-red-dark);
}

.rv17-hero-buttons a:last-child {
  background:#101827;
  color:#fff;
}

.rv17-spotlight {
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:250px auto;
  overflow:hidden;
  align-self:center;
  border-radius:16px;
  background:#fff;
  box-shadow:0 28px 80px rgba(0,0,0,.26);
}

.rv17-spot-img {
  min-height:250px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  background:#f8fafc;
  overflow:hidden;
}

.rv17-spot-img img {
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.rv17-spot-body {
  padding:16px;
  background:#fff;
}

.rv17-spot-label {
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:0 8px;
  border-radius:4px;
  background:var(--rv17-red);
  color:#fff;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.rv17-spot-title {
  display:-webkit-box;
  margin-top:10px;
  color:#0f172a;
  font-size:20px;
  line-height:1.22;
  font-weight:950;
  text-decoration:none;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.rv17-spot-price {
  margin-top:10px;
  color:var(--rv17-red-dark);
  font-size:30px;
  line-height:1;
  font-weight:950;
}

.rv17-main {
  max-width:1480px;
  margin:-76px auto 0;
  padding:0 18px 72px;
  position:relative;
  z-index:2;
}

.rv17-section,
.rv17-tile,
.rv17-row,
.rv17-sidebar,
.rv17-results {
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.12);
}

.rv17-section {
  padding:20px;
  margin-bottom:18px;
}

.rv17-head {
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:end;
  margin-bottom:16px;
}

.rv17-head h2,
.rv17-tile h2,
.rv17-row h2,
.rv17-results-head h2 {
  margin:0;
  color:#111827;
  font-size:24px;
  line-height:1.12;
  letter-spacing:-.04em;
  font-weight:950;
}

.rv17-head p {
  margin:5px 0 0;
  color:var(--rv17-muted);
  font-size:13px;
}

.rv17-dept-grid,
.rv17-brand-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(165px,1fr));
  gap:12px;
}

.rv17-dept,
.rv17-brand-card {
  min-height:102px;
  border:1px solid var(--rv17-line);
  border-radius:8px;
  background:#fff;
  text-align:left;
  padding:14px;
  cursor:pointer;
}

.rv17-dept:hover,
.rv17-dept.is-active,
.rv17-brand-card:hover,
.rv17-brand-card.is-active {
  border-color:rgba(225,29,72,.5);
  box-shadow:inset 0 0 0 2px rgba(225,29,72,.12);
}

.rv17-dept-icon,
.rv17-brand-icon {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:var(--rv17-soft);
  color:var(--rv17-red-dark);
  font-weight:950;
}

.rv17-brand-icon img {
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:10px;
}

.rv17-dept strong,
.rv17-brand-card strong {
  display:block;
  margin-top:10px;
  color:#111827;
  font-size:14px;
  font-weight:950;
}

.rv17-dept em,
.rv17-brand-card em {
  display:block;
  margin-top:4px;
  color:var(--rv17-muted);
  font-style:normal;
  font-size:12px;
  font-weight:800;
}

.rv17-tile-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-bottom:18px;
}

.rv17-tile {
  min-height:405px;
  padding:18px;
}

.rv17-mini-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.rv17-mini {
  min-width:0;
  color:inherit;
  text-decoration:none;
}

.rv17-mini-img {
  height:128px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f3f4f6;
  padding:8px;
  overflow:hidden;
}

.rv17-mini-img img,
.rv17-rail-img img,
.rv17-product-img img {
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.rv17-mini strong {
  display:-webkit-box;
  min-height:38px;
  margin-top:8px;
  color:#111827;
  font-size:12.5px;
  line-height:1.28;
  font-weight:900;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.rv17-tile button {
  margin-top:14px;
  border:0;
  background:transparent;
  color:var(--rv17-red-dark);
  font-size:13px;
  font-weight:900;
  cursor:pointer;
}

.rv17-row {
  padding:22px 24px 24px;
  margin-bottom:18px;
  overflow:hidden;
}

.rv17-row-head {
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-bottom:18px;
}

.rv17-row-head a {
  color:var(--rv17-red-dark);
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

.rv17-scroll {
  display:flex;
  gap:18px;
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom:12px;
}

.rv17-rail-card {
  flex:0 0 220px;
  width:220px;
  height:382px;
  display:grid;
  grid-template-rows:184px 104px 34px 38px;
  gap:8px;
  color:#0f172a;
  background:#fff;
  overflow:hidden;
}

.rv17-rail-img {
  height:184px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px;
  background:#f8fafc;
  overflow:hidden;
  text-decoration:none;
}

.rv17-rail-title {
  display:-webkit-box;
  color:#0f172a;
  font-size:14.8px;
  line-height:1.28;
  font-weight:950;
  letter-spacing:-.015em;
  text-decoration:none;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.rv17-rail-price {
  color:var(--rv17-red-dark);
  font-size:22px;
  line-height:1.1;
  font-weight:950;
}

.rv17-rail-btn {
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--rv17-red);
  color:#fff;
  text-decoration:none;
  font-size:12px;
  font-weight:950;
}

.rv17-layout {
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:18px;
}

.rv17-sidebar {
  padding:18px;
  align-self:start;
  position:sticky;
  top:124px;
}

.rv17-sidebar h3 {
  margin:0 0 14px;
  font-size:18px;
  font-weight:950;
}

.rv17-filter {
  padding:14px 0;
  border-top:1px solid var(--rv17-line);
}

.rv17-filter:first-of-type {
  border-top:0;
  padding-top:0;
}

.rv17-filter strong {
  display:block;
  margin-bottom:9px;
  font-size:14px;
  font-weight:950;
}

.rv17-filter button {
  width:100%;
  min-height:34px;
  display:flex;
  justify-content:space-between;
  gap:8px;
  border:0;
  background:transparent;
  color:#111827;
  padding:0;
  cursor:pointer;
  text-align:left;
  font-size:14px;
}

.rv17-filter button:hover,
.rv17-filter button.is-active {
  color:var(--rv17-red-dark);
  font-weight:950;
}

.rv17-filter em {
  color:var(--rv17-muted);
  font-style:normal;
  font-size:12px;
}

.rv17-filter a {
  display:block;
  margin-top:8px;
  color:var(--rv17-red-dark);
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

.rv17-results {
  min-width:0;
}

.rv17-results-head {
  min-height:64px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  padding:13px 16px;
  border-bottom:1px solid var(--rv17-line);
}

.rv17-results-head p {
  margin:3px 0 0;
  color:var(--rv17-muted);
  font-size:13px;
}

.rv17-results-head select {
  min-height:38px;
  border:1px solid #d1d5db;
  border-radius:8px;
  background:#f9fafb;
  color:#111827;
  padding:0 10px;
  font-weight:850;
}

.rv17-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(258px,1fr));
}

.rv17-product {
  min-height:595px;
  padding:16px;
  background:#fff;
  border-right:1px solid var(--rv17-line);
  border-bottom:1px solid var(--rv17-line);
}

.rv17-product:hover {
  box-shadow:inset 0 0 0 2px rgba(225,29,72,.20);
}

.rv17-product-img {
  height:230px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  background:#f8fafc;
  overflow:hidden;
  text-decoration:none;
}

.rv17-noimg {
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:var(--rv17-soft);
  color:var(--rv17-red-dark);
  font-weight:950;
}

.rv17-cat {
  display:inline-flex;
  min-height:23px;
  align-items:center;
  margin-top:12px;
  padding:0 7px;
  border-radius:3px;
  background:var(--rv17-soft);
  color:var(--rv17-red-dark);
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.rv17-title {
  display:-webkit-box;
  height:96px;
  margin-top:10px;
  color:#0f172a;
  background:#fff;
  font-size:16px;
  line-height:1.32;
  font-weight:950;
  text-decoration:none;
  letter-spacing:-.018em;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.rv17-stars {
  margin-top:8px;
  color:var(--rv17-star);
  font-size:13px;
}

.rv17-stars span {
  color:#2563eb;
  font-size:12px;
  font-weight:850;
}

.rv17-price {
  margin-top:8px;
  color:var(--rv17-red-dark);
  font-size:25px;
  line-height:1;
  font-weight:900;
}

.rv17-seller-chip {
  min-height:27px;
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:8px;
  color:var(--rv17-muted);
  font-size:12px;
  font-weight:800;
}

.rv17-seller-chip img,
.rv17-seller-chip span {
  width:20px;
  height:20px;
  border-radius:6px;
}

.rv17-seller-chip img {
  object-fit:cover;
}

.rv17-seller-chip span {
  display:grid;
  place-items:center;
  background:var(--rv17-soft);
  color:var(--rv17-red-dark);
  font-size:10px;
  font-weight:950;
}

.rv17-card-actions {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:13px;
}

.rv17-card-actions form {
  margin:0;
}

.rv17-btn,
.rv17-view {
  width:100%;
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:0;
  padding:0 11px;
  font-size:11.5px;
  font-weight:950;
  line-height:1;
  cursor:pointer;
  text-decoration:none;
  appearance:none;
}

.rv17-add {
  background:var(--rv17-red);
  color:#fff;
}

.rv17-buy {
  background:#111827;
  color:#fff;
}

.rv17-wish {
  grid-column:1 / -1;
  background:var(--rv17-soft);
  color:var(--rv17-red-dark);
  border:1px solid rgba(190,18,60,.24);
}

.rv17-view {
  grid-column:1 / -1;
  background:#f8fafc;
  color:#111827;
  border:1px solid var(--rv17-line);
}

.rv17-btn:hover,
.rv17-view:hover,
.rv17-rail-btn:hover {
  filter:brightness(.96);
}

.rv17-no-results {
  display:none;
  padding:40px;
  text-align:center;
  color:var(--rv17-muted);
  font-weight:850;
}

.rv17-no-results.is-visible {
  display:block;
}

.rv17-pager {
  margin-top:20px;
  padding:16px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.08);
}

@media (max-width:1240px) {
  .rv17-top {
    grid-template-columns:220px minmax(0,1fr);
  }

  .rv17-actions {
    grid-column:1 / -1;
    justify-content:flex-start;
    overflow-x:auto;
  }

  .rv17-hero-grid {
    grid-template-columns:1fr;
  }

  .rv17-spotlight {
    display:none;
  }

  .rv17-tile-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rv17-layout {
    grid-template-columns:1fr;
  }

  .rv17-sidebar {
    position:static;
  }
}

@media (max-width:760px) {
  .rv17-top {
    grid-template-columns:1fr;
    gap:8px;
    padding:8px;
  }

  .rv17-search {
    grid-template-columns:104px minmax(0,1fr)52px;
  }

  .rv17-belt {
    padding:0 8px;
  }

  .rv17-hero {
    min-height:340px;
    padding:28px 12px 92px;
  }

  .rv17-hero h1 {
    font-size:clamp(40px,14vw,64px);
  }

  .rv17-main {
    padding-left:10px;
    padding-right:10px;
  }

  .rv17-tile-grid {
    grid-template-columns:1fr;
  }

  .rv17-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rv17-product {
    min-height:570px;
    padding:12px;
  }

  .rv17-product-img {
    height:190px;
  }
}

@media (max-width:480px) {
  .rv17-grid {
    grid-template-columns:1fr;
  }
}


/* RV_SHOP_INDEX_AMAZON_V17_TILE_TITLE_FIX_20260515 */

.rv17-tile-grid {
  align-items: stretch;
}

.rv17-tile {
  min-height: 520px;
  height: auto;
  display: flex;
  flex-direction: column;
  overflow: visible;
}

.rv17-mini-grid {
  flex: 1 1 auto;
  align-items: start;
}

.rv17-mini {
  display: grid;
  grid-template-rows: 128px auto;
  gap: 10px;
  align-content: start;
  min-height: 230px;
}

.rv17-mini strong {
  display: -webkit-box;
  min-height: 78px;
  height: auto;
  margin-top: 0;
  font-size: 13px;
  line-height: 1.32;
  font-weight: 900;
  letter-spacing: -.01em;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.rv17-tile button {
  margin-top: auto;
  padding-top: 10px;
}

@media (max-width: 760px) {
  .rv17-tile {
    min-height: 560px;
  }

  .rv17-mini {
    min-height: 240px;
  }

  .rv17-mini strong {
    min-height: 84px;
  }
}


/* RV_SHOP_INDEX_AMAZON_V17_TILE_CACHE_TITLE_FIX_V18_20260515 */
/*
 * Fixes the Physical/category tile where product names were being cut off.
 * This is intentionally scoped to the 4-item department/category tiles only.
 */

.rv17-tile-grid {
  align-items: stretch !important;
}

.rv17-tile {
  min-height: 650px !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: visible !important;
  padding: 22px !important;
}

.rv17-tile h2 {
  font-size: 28px !important;
  line-height: 1.1 !important;
  margin-bottom: 18px !important;
}

.rv17-mini-grid {
  flex: 1 1 auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  align-items: start !important;
  overflow: visible !important;
}

.rv17-mini {
  min-width: 0 !important;
  min-height: 248px !important;
  display: grid !important;
  grid-template-rows: 150px auto !important;
  gap: 12px !important;
  align-content: start !important;
  overflow: visible !important;
  text-decoration: none !important;
}

.rv17-mini-img {
  width: 100% !important;
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px !important;
  background: #f8fafc !important;
  overflow: hidden !important;
}

.rv17-mini-img img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

.rv17-mini strong {
  display: -webkit-box !important;
  min-height: 88px !important;
  height: 88px !important;
  max-height: 88px !important;
  margin: 0 !important;
  padding: 0 2px !important;
  color: #0f172a !important;
  background: #fff !important;
  font-size: 14px !important;
  line-height: 1.28 !important;
  font-weight: 950 !important;
  letter-spacing: -0.015em !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  -webkit-line-clamp: 5 !important;
  -webkit-box-orient: vertical !important;
}

.rv17-tile button {
  margin-top: 18px !important;
  padding-top: 0 !important;
  color: #be123c !important;
  font-size: 15px !important;
  font-weight: 950 !important;
}

@media (max-width: 760px) {
  .rv17-tile {
    min-height: 700px !important;
  }

  .rv17-mini-grid {
    gap: 18px !important;
  }

  .rv17-mini {
    min-height: 265px !important;
    grid-template-rows: 145px auto !important;
  }

  .rv17-mini-img {
    height: 145px !important;
    min-height: 145px !important;
    max-height: 145px !important;
  }

  .rv17-mini strong {
    min-height: 100px !important;
    height: 100px !important;
    max-height: 100px !important;
    font-size: 13.5px !important;
    -webkit-line-clamp: 6 !important;
  }
}

/* RV_SHOP_LIVE_STORE_RAIL_V19_20260515 */
/*
 * Makes Live store listings clearer:
 * - Cleaner Amazon-style carousel cards
 * - Better title readability
 * - Placeholder for missing product images
 * - Stronger image containment
 * - More readable price and CTA
 */

.rv17-row {
  padding: 28px 30px 30px !important;
  margin-bottom: 22px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .10) !important;
}

.rv17-row-head {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 20px !important;
}

.rv17-row-head h2 {
  font-size: 26px !important;
  line-height: 1.1 !important;
  letter-spacing: -0.04em !important;
  font-weight: 950 !important;
  color: #0f172a !important;
}

.rv17-row-head a {
  min-height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: #fff1f2 !important;
  color: #be123c !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  text-decoration: none !important;
}

.rv17-scroll {
  display: flex !important;
  gap: 18px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 2px 2px 16px !important;
  scroll-snap-type: x proximity !important;
}

.rv17-scroll::-webkit-scrollbar {
  height: 10px !important;
}

.rv17-scroll::-webkit-scrollbar-track {
  background: #f1f5f9 !important;
  border-radius: 999px !important;
}

.rv17-scroll::-webkit-scrollbar-thumb {
  background: rgba(190, 18, 60, .45) !important;
  border-radius: 999px !important;
}

.rv17-rail-card {
  flex: 0 0 224px !important;
  width: 224px !important;
  min-width: 224px !important;
  height: 404px !important;
  min-height: 404px !important;
  max-height: 404px !important;

  display: grid !important;
  grid-template-rows: 178px 104px 36px 42px !important;
  gap: 10px !important;

  padding: 10px !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  overflow: hidden !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .06) !important;
  scroll-snap-align: start !important;
}

.rv17-rail-card:hover {
  border-color: rgba(225, 29, 72, .35) !important;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .12) !important;
}

.rv17-rail-img {
  width: 100% !important;
  height: 178px !important;
  min-height: 178px !important;
  max-height: 178px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 12px !important;
  border: 1px solid rgba(15, 23, 42, .06) !important;
  border-radius: 8px !important;
  background: #f8fafc !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.rv17-rail-img img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  padding: 0 !important;
  margin: auto !important;
  transform: none !important;
}

.rv17-rail-img:empty::before {
  content: "R";
  width: 72px !important;
  height: 72px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 18px !important;
  background: #fff1f2 !important;
  color: #be123c !important;
  font-size: 30px !important;
  font-weight: 950 !important;
}

.rv17-rail-title {
  display: -webkit-box !important;
  height: 104px !important;
  min-height: 104px !important;
  max-height: 104px !important;

  color: #0f172a !important;
  background: #ffffff !important;
  font-size: 14.8px !important;
  line-height: 1.34 !important;
  font-weight: 900 !important;
  letter-spacing: -0.012em !important;
  text-decoration: none !important;

  overflow: hidden !important;
  text-overflow: ellipsis !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
}

.rv17-rail-title:hover {
  color: #be123c !important;
  text-decoration: underline !important;
}

.rv17-rail-price {
  height: 36px !important;
  min-height: 36px !important;
  display: flex !important;
  align-items: center !important;

  color: #be123c !important;
  font-size: 23px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

.rv17-rail-btn {
  height: 38px !important;
  min-height: 38px !important;
  width: 100% !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 999px !important;
  background: #e11d48 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;
}

.rv17-rail-btn:hover {
  background: #be123c !important;
  filter: none !important;
}

@media (max-width: 760px) {
  .rv17-row {
    padding: 22px 18px 24px !important;
  }

  .rv17-rail-card {
    flex-basis: 204px !important;
    width: 204px !important;
    min-width: 204px !important;
    height: 392px !important;
    grid-template-rows: 164px 110px 34px 38px !important;
  }

  .rv17-rail-img {
    height: 164px !important;
    min-height: 164px !important;
    max-height: 164px !important;
  }

  .rv17-rail-title {
    height: 110px !important;
    min-height: 110px !important;
    max-height: 110px !important;
    font-size: 14px !important;
    -webkit-line-clamp: 5 !important;
  }
}

/* RV_SHOP_VIEW_PRODUCT_BUTTON_FIX_V20_20260515 */
/*
 * Fixes the View product button overflowing outside product cards.
 * Also tightens card action spacing so all buttons feel intentional.
 */

.rv17-product,
.rv17-product *,
.rv17-card-actions,
.rv17-card-actions *,
.rv17-btn,
.rv17-view {
  box-sizing: border-box !important;
}

.rv17-card-actions {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 8px !important;
  margin-top: 13px !important;
  overflow: hidden !important;
}

.rv17-card-actions form {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.rv17-btn,
.rv17-view {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 0 10px !important;
  border-radius: 999px !important;
  font-size: 11.5px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.rv17-wish,
.rv17-view {
  grid-column: 1 / -1 !important;
}

.rv17-view {
  background: #f8fafc !important;
  color: #111827 !important;
  border: 1px solid rgba(15, 23, 42, .14) !important;
  text-decoration: none !important;
}

.rv17-view:hover {
  background: #f1f5f9 !important;
  color: #be123c !important;
  filter: none !important;
}

.rv17-product {
  overflow: hidden !important;
}

@media (max-width: 760px) {
  .rv17-card-actions {
    gap: 7px !important;
  }

  .rv17-btn,
  .rv17-view {
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    font-size: 11px !important;
    padding: 0 8px !important;
  }
}

/* RV_SHOP_BOOKS_MARKETPLACE_BRIDGE_V25_CSS_20260515 */
.rv17-product[data-category="Books"] .rv17-cat,
.rv17-rail-card[data-category="Books"] .rv17-cat {
  background: #eef2ff !important;
  color: #3730a3 !important;
}

.rv17-product[data-category="Books"] .rv17-product-img {
  background:
    linear-gradient(135deg, rgba(225,29,72,.06), rgba(15,23,42,.04)),
    #f8fafc !important;
}

.rv17-product[data-category="Books"] .rv17-product-img img,
.rv17-rail-card[data-category="Books"] img,
.rv17-mini img {
  object-fit: contain !important;
}

.rv17-book-actions .rv17-add {
  background: #e11d48 !important;
  color: #fff !important;
}

.rv17-book-actions .rv17-buy {
  background: #111827 !important;
  color: #fff !important;
}

.rv17-book-actions .rv17-print-view {
  background: #eef2ff !important;
  color: #3730a3 !important;
  border-color: rgba(55,48,163,.22) !important;
}

.rv17-book-actions .rv17-wish {
  background: #fff1f2 !important;
  color: #be123c !important;
}

/* RV_SHOP_BOOKS_CONVERT_EXISTING_V26_CSS_20260515 */
.rv17-product[data-category="Books"] .rv17-cat {
  background: #eef2ff !important;
  color: #3730a3 !important;
}

.rv17-product[data-category="Books"] .rv17-product-img {
  background:
    linear-gradient(135deg, rgba(55, 48, 163, .06), rgba(225, 29, 72, .05)),
    #f8fafc !important;
}

.rv17-product[data-category="Books"] .rv17-product-img img {
  object-fit: contain !important;
}

.rv17-book-actions .rv17-add {
  background: #e11d48 !important;
  color: #fff !important;
}

.rv17-book-actions .rv17-buy {
  background: #111827 !important;
  color: #fff !important;
}

.rv17-book-actions .rv17-print-view {
  background: #eef2ff !important;
  color: #3730a3 !important;
  border-color: rgba(55,48,163,.22) !important;
}

.rv17-book-actions .rv17-wish {
  background: #fff1f2 !important;
  color: #be123c !important;
}
