
/* Real Vinyl Banners vs Digital - M&P section package */
.rvb-mp-section {
  --rvb-blue: #0f53b3;
  --rvb-blue-dark: #093371;
  --rvb-red: #be0e0f;
  --rvb-red-dark: #880606;
  --rvb-gold: #f0b327;
  --rvb-gold-deep: #bb8b14;
  --rvb-black: #0a0a0c;
  --rvb-text: #1b232d;
  --rvb-muted: #5f6875;
  --rvb-border: #d9dee6;
  --rvb-panel: #ffffff;
  --rvb-shadow: 0 10px 30px rgba(0,0,0,.10);
  --rvb-radius: 22px;
  width: 100%;
  color: var(--rvb-text);
  box-sizing: border-box;
}
.rvb-mp-section *, .rvb-mp-section *::before, .rvb-mp-section *::after { box-sizing: border-box; }
.rvb-mp-wrap { max-width: 1240px; margin: 0 auto; padding: 28px 20px 34px; }
.rvb-mp-card {
  background: linear-gradient(180deg,#fff 0%,#f7f8fb 100%);
  border: 1px solid var(--rvb-border);
  border-radius: var(--rvb-radius);
  box-shadow: var(--rvb-shadow);
  overflow: hidden;
}
.rvb-mp-topart { margin: 0; background: #050505; border-bottom: 1px solid #ccd4df; }
.rvb-mp-topart picture, .rvb-mp-topart img { display:block; width:100%; }
.rvb-mp-topart img { height:auto; max-height:620px; object-fit:contain; object-position:center; }
.rvb-mp-head { padding: 26px 24px 14px; text-align:center; }
.rvb-mp-eyebrow {
  display:inline-flex; align-items:center; gap:16px; margin:0 0 10px;
  font:700 15px/1.2 Trebuchet MS, Arial, sans-serif; letter-spacing:.04em; text-transform:uppercase; color:var(--rvb-blue);
}
.rvb-mp-eyebrow::before, .rvb-mp-eyebrow::after { content:""; display:block; width:64px; height:2px; background:#9db9e6; }
.rvb-mp-title {
  margin:0; color:#051938; text-transform:uppercase;
  font:700 clamp(32px,5vw,68px)/.95 Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
}
.rvb-mp-subtitle {
  max-width:900px; margin:12px auto 0; color:var(--rvb-text);
  font:400 clamp(18px,2.1vw,22px)/1.35 Trebuchet MS, Arial, sans-serif;
}
.rvb-mp-media { padding: 10px 22px 0; }
.rvb-mp-figure {
  margin:0; border-radius:18px; overflow:hidden; border:1px solid #cfd7e3; background:#fff; box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.rvb-mp-figure img { display:block; width:100%; height:auto; }
.rvb-mp-caption { padding:10px 14px 0; text-align:center; color:var(--rvb-muted); font:400 14px/1.45 Trebuchet MS, Arial, sans-serif; }
.rvb-mp-features {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:22px; border:1px solid var(--rvb-border); border-radius:18px; background:#fff; overflow:hidden;
}
.rvb-mp-feature { display:flex; gap:14px; padding:18px 18px 20px; align-items:flex-start; }
.rvb-mp-feature + .rvb-mp-feature { border-left:1px solid var(--rvb-border); }
.rvb-mp-icon {
  flex:0 0 52px; width:52px; height:52px; border-radius:50%; background:#eef4ff; color:var(--rvb-blue);
  display:flex; align-items:center; justify-content:center;
}
.rvb-mp-icon svg { width:30px; height:30px; display:block; }
.rvb-mp-feature h3 { margin:0 0 8px; color:var(--rvb-blue-dark); text-transform:uppercase; font:700 16px/1.12 Trebuchet MS, Arial, sans-serif; }
.rvb-mp-feature p { margin:0; color:var(--rvb-text); font:400 16px/1.45 Trebuchet MS, Arial, sans-serif; }

.rvb-addon { padding: 8px 22px 0; }
.rvb-intro {
  display:grid; grid-template-columns:72px 1fr; gap:18px; align-items:flex-start;
  background:#fff; border:1px solid var(--rvb-border); border-radius:18px; padding:18px 22px; box-shadow:0 8px 20px rgba(0,0,0,.05);
}
.rvb-star-badge {
  width:60px; height:60px; border-radius:50%; background:radial-gradient(circle at 35% 30%, #222 0%, #111 58%, #000 100%);
  border:4px solid var(--rvb-gold-deep); position:relative; box-shadow: inset 0 0 0 3px #1a1a1a;
}
.rvb-star-badge::before {
  content:"★"; color:#d61717; font-size:34px; line-height:1; position:absolute; left:50%; top:50%; transform:translate(-50%,-52%);
}
.rvb-intro p, .rvb-closing p { margin:0; font:400 16px/1.38 Trebuchet MS, Arial, sans-serif; color:var(--rvb-text); }

.rvb-ribbons-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:18px; }
.rvb-card { background:#fff; border:1px solid var(--rvb-border); border-radius:18px; overflow:hidden; box-shadow:0 8px 20px rgba(0,0,0,.05); }
.rvb-ribbon {
  position:relative; display:inline-block; padding:10px 30px 10px 20px; margin:18px 0 10px 0; color:#fff;
  font:700 26px/1 Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; letter-spacing:.03em; text-transform:uppercase;
}
.rvb-ribbon::after {
  content:""; position:absolute; right:-22px; top:0; width:0; height:0;
  border-top:25px solid transparent; border-bottom:25px solid transparent;
}
.rvb-ribbon--red { background:linear-gradient(180deg,#d61918 0%, #a30808 100%); }
.rvb-ribbon--red::after { border-left:22px solid #a30808; }
.rvb-ribbon--blue { background:linear-gradient(180deg,#1d63cc 0%, #0a3f93 100%); }
.rvb-ribbon--blue::after { border-left:22px solid #0a3f93; }
.rvb-card-body { padding:0 18px 18px; }
.rvb-split { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.rvb-subhead {
  display:flex; align-items:center; gap:10px; margin:4px 0 12px; color:#111;
  font:700 20px/1.1 Trebuchet MS, Arial, sans-serif; text-transform:uppercase;
}
.rvb-subhead--pros { color:#8d0808; }
.rvb-subhead--cons { color:#9a0f0f; }
.rvb-card--digital .rvb-subhead--pros, .rvb-card--digital .rvb-subhead--cons { color:#0a3f93; }
.rvb-round-icon { width:42px; height:42px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:20px; font-weight:700; }
.rvb-round-icon--pros { background:linear-gradient(180deg,#d61918 0%, #940707 100%); }
.rvb-round-icon--cons { background:linear-gradient(180deg,#d61918 0%, #940707 100%); }
.rvb-card--digital .rvb-round-icon--pros, .rvb-card--digital .rvb-round-icon--cons { background:linear-gradient(180deg,#1d63cc 0%, #0a3f93 100%); }
.rvb-list { list-style:none; margin:0; padding:0; }
.rvb-list li {
  position:relative; padding:0 0 0 26px; margin:0 0 11px; color:#121a25; font:400 16px/1.28 Trebuchet MS, Arial, sans-serif;
}
.rvb-list li:last-child { margin-bottom:0; }
.rvb-list li::before {
  content:"✓"; position:absolute; left:0; top:.02em; width:18px; height:18px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:12px; color:#fff;
  background:linear-gradient(180deg,#d61918 0%, #a30808 100%);
}
.rvb-card--digital .rvb-list li::before { background:linear-gradient(180deg,#1d63cc 0%, #0a3f93 100%); }
.rvb-list--cons li::before { content:"✕"; }

.rvb-table-wrap {
  margin-top:18px; background:#fff; border:1px solid var(--rvb-border); border-radius:18px; overflow:hidden; box-shadow:0 8px 20px rgba(0,0,0,.05);
}
.rvb-table-title {
  padding:10px 16px; text-align:center; background:linear-gradient(180deg,#111 0%, #1c1c1c 100%); color:#fff;
  font:700 20px/1 Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; letter-spacing:.03em; text-transform:uppercase;
}
.rvb-table-scroll { overflow-x:auto; }
.rvb-table { width:100%; border-collapse:collapse; min-width:760px; }
.rvb-table th, .rvb-table td { border:1px solid #dde2ea; padding:10px 12px; vertical-align:top; }
.rvb-table thead th {
  font:700 18px/1 Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; text-transform:uppercase; letter-spacing:.02em; color:#10151d; background:#f1f3f7;
}
.rvb-table thead th:nth-child(2) { background:linear-gradient(180deg,#d61918 0%, #a30808 100%); color:#fff; }
.rvb-table thead th:nth-child(3) { background:linear-gradient(180deg,#1d63cc 0%, #0a3f93 100%); color:#fff; }
.rvb-table td:first-child { font:700 16px/1.2 Trebuchet MS, Arial, sans-serif; background:#fbfcfe; width:22%; }
.rvb-table td { font:400 16px/1.28 Trebuchet MS, Arial, sans-serif; }

.rvb-closing { margin-top:18px; }
.rvb-price-cta { text-align:center; padding:18px 0 28px; }
.rvb-price-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:18px; min-width:min(100%, 620px);
  padding:20px 34px; border-radius:14px; text-decoration:none; cursor:pointer;
  background:linear-gradient(180deg,#ff3c28 0%, #da120b 40%, #ab0808 100%);
  border:3px solid #d9ad2e; box-shadow:0 6px 16px rgba(0,0,0,.28), inset 0 2px 0 rgba(255,255,255,.25), inset 0 -2px 0 rgba(0,0,0,.18);
  color:#fff; position:relative;
}
.rvb-price-btn::before {
  content:""; position:absolute; left:12px; right:12px; top:8px; height:38%; border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.28) 0%, rgba(255,255,255,0) 100%);
  pointer-events:none;
}
.rvb-price-btn:hover { transform:translateY(-1px); filter:saturate(1.05); }
.rvb-price-btn:active { transform:translateY(0); }
.rvb-price-btn-text {
  position:relative; z-index:1; font:italic 700 clamp(28px, 4vw, 42px)/1 Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
  text-transform:uppercase; letter-spacing:.02em;
}
.rvb-price-btn-arrow {
  position:relative; z-index:1; color:var(--rvb-gold); font:700 clamp(34px,4.5vw,52px)/1 Arial, sans-serif;
}
.rvb-note-small { margin-top:8px; color:var(--rvb-muted); font:400 13px/1.4 Trebuchet MS, Arial, sans-serif; }
.rvb-mp-bottom { padding: 0 24px 0; text-align:center; }
.rvb-mp-note { margin: 0; font: 700 20px/1.35 Trebuchet MS, Arial, sans-serif; color: #06162e; }
.rvb-mp-note .rvb-gold { color: var(--rvb-gold); }

@media (max-width: 1024px) {
  .rvb-mp-features { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rvb-mp-feature:nth-child(3), .rvb-mp-feature:nth-child(4) { border-top:1px solid var(--rvb-border); }
  .rvb-mp-feature:nth-child(3) { border-left:0; }
  .rvb-ribbons-grid { grid-template-columns:1fr; }
}
@media (max-width: 767px) {
  .rvb-mp-wrap { padding:18px 12px 24px; }
  .rvb-mp-card { border-radius:18px; }
  .rvb-mp-topart img { max-height:none; }
  .rvb-mp-head { padding:20px 16px 10px; }
  .rvb-mp-eyebrow { gap:10px; font-size:12px; }
  .rvb-mp-eyebrow::before, .rvb-mp-eyebrow::after { width:28px; }
  .rvb-mp-subtitle { margin-top:10px; font-size:17px; }
  .rvb-mp-media, .rvb-addon { padding-left:12px; padding-right:12px; }
  .rvb-mp-caption { text-align:left; padding:10px 2px 0; }
  .rvb-mp-features { grid-template-columns:1fr; margin:16px 12px; }
  .rvb-mp-feature, .rvb-mp-feature + .rvb-mp-feature, .rvb-mp-feature:nth-child(3) { border-left:0; border-top:1px solid var(--rvb-border); }
  .rvb-mp-feature:first-child { border-top:0; }
  .rvb-intro { grid-template-columns:1fr; gap:14px; padding:16px; }
  .rvb-star-badge { width:56px; height:56px; }
  .rvb-ribbon { font-size:22px; padding:10px 28px 10px 18px; }
  .rvb-ribbon::after { border-top-width:23px; border-bottom-width:23px; }
  .rvb-split { grid-template-columns:1fr; gap:8px; }
  .rvb-table td:first-child { width:auto; }
  .rvb-price-btn { width:100%; padding:18px 20px; gap:12px; }
  .rvb-mp-bottom { padding:0 14px 0; }
}
/* Remove gap between topnav include and Real Vinyl Banners M&P section */
.rvb-mp-section {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.rvb-mp-section .rvb-mp-wrap {
  padding-top: 0 !important;
}

.rvb-mp-section .rvb-mp-card {
  margin-top: 0 !important;
}