/* ===========================================
   ReplaceKeyFob Article Style Pro
   Version: 1.1.0
   Site: https://replacekeyfob.com/
   Niche: Key fobs, car keys, vehicle security, diagnostics, automotive buying guides
   Scoped to .rkf-blog-wrap and .replacekeyfob-blog-wrap only
=========================================== */

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) {
  margin: 0 auto;
  padding: 0 18px;
  line-height: 1.78;
  color: #253044;
  box-sizing: border-box;
  font-family: inherit;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) *,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) *::before,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) *::after { box-sizing: border-box; }

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) p { margin: 0 0 1.15em; }

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h1,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h2,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h3,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h4 {
  color: #08111f;
  letter-spacing: -0.02em;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h1 {
  font-size: clamp(2rem, 4vw, 3.15rem);
  line-height: 1.08;
  margin: 0 0 0.62em;
  font-weight: 900;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h2 {
  font-size: 1.62em;
  font-weight: 850;
  margin: 2.05em 0 0.65em;
  line-height: 1.24;
  position: relative;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h2::after {
  content: '';
  display: block;
  width: 62px;
  height: 3px;
  background: #1264e8;
  border-radius: 999px;
  margin-top: 10px;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h3 {
  font-size: 1.22em;
  font-weight: 820;
  margin: 1.55em 0 0.5em;
  line-height: 1.32;
  position: relative;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h3::after {
  content: '';
  display: block;
  width: 38px;
  height: 2px;
  background: #1264e8;
  border-radius: 999px;
  margin-top: 7px;
  opacity: 0.7;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) ul,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) ol {
  margin: 0 0 1.2em;
  padding-left: 1.45em;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) li { margin-bottom: 0.5em; }
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) strong { font-weight: 850; color: #08111f; }

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) a {
  color: #1264e8;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) a:hover { opacity: .84; }
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) section { margin-bottom: 0.45em; }

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) img {
  max-width: 100%;
  height: auto;
  border-radius: 18px;
}

/* ==============================================
   STANDARD AUTOMOTIVE CALLOUT BOXES
============================================== */
.rkf-quick-answer,
.rkf-tip-box,
.rkf-note-box,
.rkf-warning-box,
.rkf-takeaway-box {
  border-radius: 16px;
  padding: 18px 21px;
  margin: 1.65em 0;
  box-shadow: 0 12px 30px rgba(8,17,31,.06);
}

.rkf-quick-answer {
  background: linear-gradient(135deg,#eff6ff,#ffffff);
  border: 1px solid #bfdbfe;
  border-left: 5px solid #1264e8;
  margin-top: 0;
}

.rkf-qa-label,
.rkf-tip-label,
.rkf-note-label,
.rkf-warn-label,
.rkf-takeaway-label {
  display: block;
  font-weight: 900;
  font-size: 0.76em;
  text-transform: uppercase;
  letter-spacing: 0.105em;
  margin-bottom: 8px;
}

.rkf-quick-answer p,
.rkf-tip-box p,
.rkf-note-box p,
.rkf-warning-box p,
.rkf-takeaway-box p { margin: 0; }
.rkf-qa-label { color: #1264e8; }

.rkf-tip-box {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-left: 5px solid #16a34a;
}
.rkf-tip-label { color: #16a34a; }

.rkf-note-box {
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-left: 5px solid #f59e0b;
}
.rkf-note-label { color: #b45309; }

.rkf-warning-box {
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-left: 5px solid #dc2626;
}
.rkf-warn-label { color: #dc2626; }

.rkf-takeaway-box {
  background: #08111f;
  border: 1px solid rgba(255,255,255,.12);
  border-left: 5px solid #1264e8;
  color: #dbeafe;
}
.rkf-takeaway-box p { color: #dbeafe; }
.rkf-takeaway-label { color: #93c5fd; }

/* ==============================================
   KEY FOB / AUTOMOTIVE COMPONENTS
============================================== */
.rkf-soft-panel,
.rkf-compatibility-box,
.rkf-part-card,
.rkf-cost-box,
.rkf-battery-card,
.rkf-tool-list,
.rkf-security-box,
.rkf-vin-box,
.rkf-summary-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 18px 20px;
  margin: 1.6em 0;
}

.rkf-box-title,
.rkf-tool-title,
.rkf-summary-label,
.rkf-cost-label,
.rkf-part-label,
.rkf-battery-label {
  font-weight: 900;
  font-size: 0.78em;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  color: #08111f;
  display: block;
  margin-bottom: 10px;
}

.rkf-compatibility-box ul,
.rkf-tool-list ul,
.rkf-summary-box ul { list-style: none; margin: 0; padding: 0; }
.rkf-compatibility-box li,
.rkf-tool-list li,
.rkf-summary-box li {
  position: relative;
  padding: 8px 0 8px 30px;
  margin: 0;
  border-bottom: 1px solid #e2e8f0;
  font-size: 0.95em;
}
.rkf-compatibility-box li:last-child,
.rkf-tool-list li:last-child,
.rkf-summary-box li:last-child { border-bottom: none; }
.rkf-compatibility-box li::before { content: '✓'; position: absolute; left: 0; color: #16a34a; font-weight: 900; }
.rkf-tool-list li::before { content: '🔧'; position: absolute; left: 0; top: 8px; font-size: .92em; }
.rkf-summary-box li::before { content: '•'; position: absolute; left: 7px; color: #1264e8; font-weight: 900; }

.rkf-part-card {
  background: linear-gradient(135deg,#f8fafc,#eff6ff);
  display: grid;
  gap: 8px;
}
.rkf-part-code {
  font-size: 1.85em;
  line-height: 1;
  color: #1264e8;
  letter-spacing: .02em;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.rkf-part-card p { margin: 0; color: #475569; }

.rkf-cost-box {
  background: #ffffff;
  border: 1px solid #bfdbfe;
  border-left: 5px solid #1264e8;
}
.rkf-cost-label { color: #1264e8; }
.rkf-cost-row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid #e2e8f0;
  color: #475569;
  font-size: 0.95em;
}
.rkf-cost-row:last-child { border-bottom: none; }
.rkf-cost-row strong { color: #08111f; white-space: nowrap; text-align: right; }
.rkf-cost-price { color: #1264e8; }

.rkf-battery-card {
  background: linear-gradient(135deg,#08111f,#172554);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: none;
  box-shadow: 0 16px 36px rgba(8,17,31,.18);
}
.rkf-battery-card strong {
  color: #fff;
  font-size: 2em;
  line-height: 1;
  display: block;
  letter-spacing: -.03em;
}
.rkf-battery-label { color: #93c5fd; margin-bottom: 6px; }
.rkf-battery-card p { margin: 0; color: #dbeafe; max-width: 430px; }

.rkf-security-box {
  background: #fff7ed;
  border-color: #fed7aa;
  border-left: 5px solid #f97316;
}
.rkf-security-box p,
.rkf-vin-box p { margin: 0; }
.rkf-vin-box {
  background: #f5f3ff;
  border-color: #ddd6fe;
  border-left: 5px solid #7c3aed;
}

/* Steps */
.rkf-steps { margin: 1.65em 0; }
.rkf-step {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 17px 0;
  border-bottom: 1px solid #e2e8f0;
}
.rkf-step:last-child { border-bottom: none; }
.rkf-step-num {
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  background: #1264e8;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 950;
  box-shadow: 0 8px 18px rgba(18,100,232,.25);
}
.rkf-step-body { flex: 1; }
.rkf-step-body strong { display: block; margin-bottom: 4px; color: #08111f; }
.rkf-step-body p { margin: 0; color: #475569; font-size: 0.95em; }

/* Symptoms / Method Grid */
.rkf-symptom-grid,
.rkf-method-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 1.6em 0;
}
.rkf-symptom-card,
.rkf-method-card {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 17px 18px;
  box-shadow: 0 10px 24px rgba(15,23,42,.045);
}
.rkf-symptom-card strong,
.rkf-method-card strong {
  display: block;
  margin-bottom: 6px;
  color: #08111f;
}
.rkf-symptom-card p,
.rkf-method-card p { margin: 0; color: #475569; font-size: 0.93em; }
.rkf-symptom-card { border-top: 4px solid #1264e8; }
.rkf-method-card { border-top: 4px solid #16a34a; }

/* Pros Cons */
.rkf-pros-cons {
  display: flex;
  gap: 14px;
  margin: 1.6em 0;
  flex-wrap: wrap;
}
.rkf-pros,
.rkf-cons {
  flex: 1;
  min-width: 230px;
  border-radius: 16px;
  padding: 17px 19px;
}
.rkf-pros { background: #f0fdf4; border: 1px solid #bbf7d0; }
.rkf-cons { background: #fef2f2; border: 1px solid #fecaca; }
.rkf-pros-title,
.rkf-cons-title {
  font-weight: 900;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
  display: block;
}
.rkf-pros-title { color: #16a34a; }
.rkf-cons-title { color: #dc2626; }
.rkf-pros ul,
.rkf-cons ul { list-style: none; margin: 0; padding: 0; }
.rkf-pros li,
.rkf-cons li {
  padding: 7px 0 7px 25px;
  position: relative;
  font-size: 0.94em;
  color: #253044;
  margin: 0;
  border-bottom: 1px solid rgba(8,17,31,.06);
}
.rkf-pros li:last-child,
.rkf-cons li:last-child { border-bottom: none; }
.rkf-pros li::before,
.rkf-cons li::before { position: absolute; left: 0; font-weight: 950; }
.rkf-pros li::before { content: '✓'; color: #16a34a; }
.rkf-cons li::before { content: '!'; color: #dc2626; }

/* Verdict / Scores */
.rkf-verdict-box {
  border: 2px solid #1264e8;
  border-radius: 18px;
  overflow: hidden;
  margin: 1.85em 0;
  background: #fff;
  box-shadow: 0 15px 36px rgba(8,17,31,.08);
}
.rkf-verdict-label {
  background: #08111f;
  color: #fff;
  font-weight: 950;
  font-size: 0.82em;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  padding: 11px 18px;
  display: block;
}
.rkf-verdict-body {
  padding: 18px 20px;
  background: linear-gradient(135deg,#eff6ff,#ffffff);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.rkf-verdict-body p { margin: 0; flex: 1; font-size: 0.96em; color: #253044; }
.rkf-overall-score {
  font-size: 2.1em;
  font-weight: 950;
  color: #1264e8;
  white-space: nowrap;
  line-height: 1;
}

.rkf-score-card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 18px 20px;
  margin: 1.6em 0;
}
.rkf-score-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid #e2e8f0;
}
.rkf-score-row:last-child { border-bottom: none; }
.rkf-score-label {
  font-size: 0.88em;
  font-weight: 800;
  color: #475569;
  min-width: 142px;
}
.rkf-score-bar {
  flex: 1;
  height: 9px;
  background: #dbeafe;
  border-radius: 999px;
  overflow: hidden;
}
.rkf-score-fill {
  display: block;
  height: 100%;
  background: #1264e8;
  border-radius: 999px;
  transition: width .45s ease;
}
.rkf-score-val {
  font-size: 0.88em;
  font-weight: 900;
  color: #08111f;
  min-width: 34px;
  text-align: right;
}

/* Stats */
.rkf-stat-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 1.6em 0;
}
.rkf-stat-item {
  flex: 1;
  min-width: 130px;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-top: 4px solid #1264e8;
  border-radius: 16px;
  padding: 17px 14px;
  text-align: center;
  box-shadow: 0 10px 24px rgba(15,23,42,.045);
}
.rkf-stat-number {
  font-size: 1.75em;
  font-weight: 950;
  color: #1264e8;
  line-height: 1.1;
  display: block;
}
.rkf-stat-desc {
  font-size: 0.76em;
  color: #64748b;
  margin-top: 7px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 850;
}

/* Product Pick / CTA / Highlight */
.rkf-product-pick {
  background: #eff6ff;
  border: 1px solid #bfdbfe;
  border-radius: 16px;
  padding: 16px 18px;
  margin: 1.6em 0;
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.rkf-product-badge,
.rkf-badge {
  background: #1264e8;
  color: #fff;
  font-weight: 900;
  font-size: 0.8em;
  padding: 6px 14px;
  border-radius: 999px;
  white-space: nowrap;
  flex-shrink: 0;
}
.rkf-product-pick p { margin: 3px 0 0; color: #475569; font-size: 0.94em; }

.rkf-cta-box {
  background: #08111f;
  color: #fff;
  border-radius: 18px;
  padding: 18px 22px;
  margin: 1.85em 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  box-shadow: 0 18px 38px rgba(8,17,31,.18);
}
.rkf-cta-info { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 220px; }
.rkf-cta-title { font-weight: 950; font-size: 1.04em; color: #fff; }
.rkf-cta-text { font-size: 0.92em; color: #cbd5e1; }
.rkf-cta-btn {
  display: inline-block;
  background: #1264e8;
  color: #fff !important;
  font-weight: 900;
  font-size: 0.9em;
  padding: 11px 22px;
  border-radius: 999px;
  text-decoration: none !important;
  white-space: nowrap;
  transition: transform .2s ease, opacity .2s ease;
}
.rkf-cta-btn:hover { transform: translateY(-1px); opacity: .92; }

.rkf-highlight {
  background: linear-gradient(135deg,#eff6ff,#f8fafc);
  border: 1px solid #bfdbfe;
  border-radius: 18px;
  padding: 20px 24px;
  margin: 1.6em 0;
  text-align: center;
}
.rkf-highlight-text {
  font-size: 1.18em;
  font-weight: 950;
  color: #1264e8;
  line-height: 1.42;
  display: block;
}
.rkf-highlight-sub {
  font-size: 0.88em;
  color: #475569;
  margin-top: 7px;
  display: block;
}

/* Chip Lists / Brand Badge */
.rkf-chip-list,
.rkf-brand-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 1.15em 0 1.55em;
}
.rkf-chip,
.rkf-brand-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid #dbeafe;
  color: #1e3a8a;
  border-radius: 999px;
  padding: 7px 12px;
  font-size: .84em;
  font-weight: 850;
  text-decoration: none !important;
}

/* FAQ Accordion */
.rkf-faq { margin: 1.6em 0; }
.rkf-faq-item {
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  margin-bottom: 10px;
  overflow: hidden;
  background: #fff;
}
.rkf-faq-q {
  background: #f8fafc;
  padding: 15px 18px;
  font-weight: 900;
  font-size: 0.98em;
  color: #08111f;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  user-select: none;
}
.rkf-faq-q::after {
  content: '+';
  font-size: 1.35em;
  color: #1264e8;
  font-weight: 600;
  flex-shrink: 0;
  transition: transform .25s ease;
}
.rkf-faq-item.open .rkf-faq-q::after { transform: rotate(45deg); }
.rkf-faq-a {
  display: none;
  padding: 15px 18px;
  font-size: 0.95em;
  color: #475569;
  border-top: 1px solid #e2e8f0;
  background: #fff;
}
.rkf-faq-a p { margin: 0; }
.rkf-faq-item.open .rkf-faq-a { display: block; }

/* Tables */
.rkf-table-wrap {
  width: 100%;
  overflow-x: auto;
  margin: 1.45em 0 1.85em;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
  border: 1px solid #e2e8f0;
}
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  font-size: 0.94em;
  background: #fff;
}
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) thead { background: #08111f; color: #fff; }
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) th {
  text-align: left;
  padding: 13px 15px;
  font-weight: 900;
  font-size: 0.88em;
  letter-spacing: 0.03em;
}
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) td {
  padding: 12px 15px;
  border-top: 1px solid #e2e8f0;
  vertical-align: top;
  color: #253044;
}
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) tbody tr:nth-child(even) td { background: #f8fafc; }
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) tbody tr:hover td { background: #eff6ff; }

/* Extra article polish */
.rkf-divider { height: 1px; background: #e2e8f0; margin: 2em 0; }
.rkf-mini-label { display:inline-flex;align-items:center;border-radius:999px;background:#eff6ff;color:#1e3a8a;padding:4px 10px;font-size:.78em;font-weight:900;letter-spacing:.04em;text-transform:uppercase; }
.rkf-muted { color:#64748b; }
.rkf-center { text-align:center; }
.rkf-no-margin { margin:0 !important; }

/* Mobile */
@media (max-width: 760px) {
  .rkf-symptom-grid,
  .rkf-method-grid { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) { padding: 0 12px; }
  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h1 { font-size: 2rem; }
  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h2 { font-size: 1.34em; text-align: left; }
  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) h3 { font-size: 1.1em; text-align: left; }

  .rkf-quick-answer,
  .rkf-tip-box,
  .rkf-note-box,
  .rkf-warning-box,
  .rkf-takeaway-box,
  .rkf-soft-panel,
  .rkf-compatibility-box,
  .rkf-part-card,
  .rkf-cost-box,
  .rkf-battery-card,
  .rkf-tool-list,
  .rkf-security-box,
  .rkf-vin-box,
  .rkf-summary-box { padding: 15px 16px; }

  .rkf-pros-cons { flex-direction: column; }
  .rkf-verdict-body { flex-direction: column; align-items: flex-start; gap: 10px; }
  .rkf-overall-score { font-size: 1.8em; }
  .rkf-stat-strip { gap: 8px; }
  .rkf-stat-item { min-width: 110px; }
  .rkf-stat-number { font-size: 1.45em; }
  .rkf-score-row { align-items: flex-start; flex-direction: column; gap: 7px; }
  .rkf-score-label { min-width: 0; }
  .rkf-score-bar { width: 100%; }
  .rkf-cost-row { flex-direction: column; align-items: flex-start; gap: 2px; }
  .rkf-cost-row strong { text-align: left; }
  .rkf-battery-card { flex-direction: column; align-items: flex-start; }
  .rkf-cta-box { flex-direction: column; align-items: flex-start; }
  .rkf-cta-btn { width: 100%; text-align: center; }
  .rkf-highlight-text { font-size: 1.02em; }
  .rkf-chip-list { gap: 6px; }
}

/* ==============================================
   RKF FORMAT FIXES - cleaner lists and content blocks
   Added to prevent theme CSS from breaking article components
============================================== */
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) :is(
  .rkf-quick-answer,
  .rkf-tip-box,
  .rkf-note-box,
  .rkf-warning-box,
  .rkf-takeaway-box,
  .rkf-part-card,
  .rkf-cost-box,
  .rkf-battery-card,
  .rkf-security-box,
  .rkf-vin-box,
  .rkf-summary-box,
  .rkf-verdict-box
) {
  text-align: left !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box {
  padding: 22px 24px !important;
  border-radius: 16px !important;
  background: #08111f !important;
  color: #dbeafe !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-label {
  display: block !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  color: #93c5fd !important;
  line-height: 1.2 !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 10px !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box li {
  list-style: none !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 0 0 30px !important;
  color: #eaf2ff !important;
  line-height: 1.55 !important;
  font-size: 0.98em !important;
  text-align: left !important;
  max-width: none !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box li::marker {
  content: '' !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box li::before {
  content: '✓' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.16em !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(18,100,232,.22) !important;
  color: #93c5fd !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box strong {
  color: #ffffff !important;
  font-weight: 900 !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-tip-box,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-note-box,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-warning-box,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-part-card,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-vin-box,
:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-security-box {
  padding: 18px 20px !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) :is(.rkf-tip-box,.rkf-note-box,.rkf-warning-box,.rkf-part-card,.rkf-vin-box,.rkf-security-box) p {
  margin: 0 !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) :is(.rkf-tip-label,.rkf-note-label,.rkf-warn-label,.rkf-part-label,.rkf-box-title,.rkf-cost-label,.rkf-battery-label) {
  display: block !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-verdict-box {
  border-radius: 18px !important;
  overflow: hidden !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-verdict-body {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 22px !important;
  padding: 22px 24px !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-verdict-body p {
  margin: 0 !important;
  line-height: 1.6 !important;
  text-align: left !important;
}

:where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-overall-score {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 92px !important;
  color: #1264e8 !important;
  font-size: 2.05em !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

@media (max-width: 650px) {
  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box {
    padding: 18px 17px !important;
  }

  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-takeaway-box li {
    padding-left: 27px !important;
    font-size: 0.96em !important;
  }

  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-verdict-body {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 18px 17px !important;
  }

  :where(.rkf-blog-wrap,.replacekeyfob-blog-wrap) .rkf-overall-score {
    min-width: 0 !important;
    justify-content: flex-start !important;
    font-size: 1.8em !important;
  }
}


/* ==============================================
   RKF DESKTOP HARD FIX v1.0.2
   Strong unscoped selectors because some themes remove the wrapper scope or override list alignment.
============================================== */
.rkf-takeaway-box,
.rkf-quick-answer,
.rkf-tip-box,
.rkf-note-box,
.rkf-warning-box,
.rkf-part-card,
.rkf-cost-box,
.rkf-battery-card,
.rkf-security-box,
.rkf-vin-box,
.rkf-summary-box,
.rkf-verdict-box {
  text-align: left !important;
}

.rkf-takeaway-box {
  max-width: 100% !important;
  padding: 22px 24px !important;
  border-radius: 16px !important;
  background: #09111f !important;
  color: #eaf2ff !important;
  border-left: 4px solid #1264e8 !important;
  box-shadow: 0 14px 34px rgba(8,17,31,.10) !important;
}

.rkf-takeaway-label {
  display: block !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: #8fc2ff !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .095em !important;
  text-align: left !important;
}

.rkf-takeaway-box ul,
.entry-content .rkf-takeaway-box ul,
.single-post .rkf-takeaway-box ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 11px !important;
}

.rkf-takeaway-box li,
.entry-content .rkf-takeaway-box li,
.single-post .rkf-takeaway-box li {
  list-style: none !important;
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 0 0 30px !important;
  color: #edf5ff !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  text-align: left !important;
  max-width: none !important;
  text-indent: 0 !important;
}

.rkf-takeaway-box li::marker {
  content: '' !important;
  font-size: 0 !important;
}

.rkf-takeaway-box li::before {
  content: '✓' !important;
  position: absolute !important;
  left: 0 !important;
  top: .18em !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: rgba(18,100,232,.24) !important;
  color: #8fc2ff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.rkf-takeaway-box p,
.entry-content .rkf-takeaway-box p,
.single-post .rkf-takeaway-box p {
  margin: 0 0 10px !important;
  color: #edf5ff !important;
  line-height: 1.6 !important;
  text-align: left !important;
}

.rkf-takeaway-box li p {
  margin: 0 !important;
  display: inline !important;
}

.rkf-battery-card {
  display: grid !important;
  grid-template-columns: 190px minmax(0,1fr) !important;
  align-items: center !important;
  gap: 22px !important;
  padding: 20px 22px !important;
  background: linear-gradient(135deg,#09111f,#142451) !important;
  border-radius: 16px !important;
}

.rkf-battery-card .rkf-battery-label,
.rkf-battery-label {
  margin: 0 !important;
  color: #8fc2ff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .095em !important;
  text-align: left !important;
}

.rkf-battery-card p {
  margin: 0 !important;
  color: #edf5ff !important;
  line-height: 1.55 !important;
  max-width: none !important;
  text-align: left !important;
}

.rkf-symptom-grid,
.rkf-method-grid {
  align-items: stretch !important;
}

.rkf-symptom-card,
.rkf-method-card {
  min-height: 0 !important;
  padding: 18px !important;
  text-align: left !important;
}

.rkf-symptom-card strong,
.rkf-method-card strong {
  margin-bottom: 8px !important;
}

.rkf-symptom-card p,
.rkf-method-card p {
  margin: 0 !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

.rkf-soft-panel,
.rkf-part-card,
.rkf-vin-box,
.rkf-security-box,
.rkf-summary-box {
  padding: 18px 20px !important;
  text-align: left !important;
}

.rkf-soft-panel p,
.rkf-part-card p,
.rkf-vin-box p,
.rkf-security-box p,
.rkf-summary-box p {
  margin: 0 !important;
  line-height: 1.6 !important;
  text-align: left !important;
}

@media (max-width: 760px) {
  .rkf-takeaway-box {
    padding: 18px 17px !important;
  }

  .rkf-takeaway-box li {
    padding-left: 27px !important;
    font-size: 15.5px !important;
  }

  .rkf-battery-card {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 18px 17px !important;
  }
}


/* ==============================================
   RKF FINAL AUTO ARTICLE POLISH v1.0.3
   Fixes desktop spacing, battery cards, image blocks, related posts, and sidebar layout.
============================================== */
.rkf-blog-wrap,
.replacekeyfob-blog-wrap {
  width: 100% !important;
  max-width: 920px;
}

.rkf-blog-wrap .rkf-article-image,
.replacekeyfob-blog-wrap .rkf-article-image {
  margin: 24px 0 28px !important;
  text-align: center !important;
}

.rkf-blog-wrap .rkf-image-frame,
.replacekeyfob-blog-wrap .rkf-image-frame {
  display: block !important;
  width: 100% !important;
  padding: 10px !important;
  border: 1px solid #dfe7f2 !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(7,17,31,.07) !important;
}

.rkf-blog-wrap .rkf-article-image img,
.replacekeyfob-blog-wrap .rkf-article-image img {
  width: 100% !important;
  max-width: 100% !important;
  aspect-ratio: 16 / 9;
  object-fit: cover !important;
  border-radius: 12px !important;
  display: block !important;
}

.rkf-blog-wrap .rkf-image-caption,
.replacekeyfob-blog-wrap .rkf-image-caption,
.rkf-image-caption {
  margin: 9px 0 0 !important;
  color: #64748b !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  font-style: italic !important;
  text-align: center !important;
}

/* Better Battery Check / dark information card */
.rkf-battery-card,
.entry-content .rkf-battery-card,
.single-post .rkf-battery-card {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: auto !important;
  padding: 22px 26px !important;
  margin: 28px 0 !important;
  background: linear-gradient(135deg, #08111f 0%, #132452 100%) !important;
  border: 1px solid rgba(96,184,255,.12) !important;
  border-left: 5px solid #1264e8 !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 38px rgba(8,17,31,.14) !important;
  text-align: left !important;
}

.rkf-battery-card .rkf-battery-label,
.rkf-battery-label {
  display: block !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  color: #8fc2ff !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .095em !important;
  text-transform: uppercase !important;
  text-align: left !important;
}

.rkf-battery-card p,
.entry-content .rkf-battery-card p,
.single-post .rkf-battery-card p {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #edf5ff !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

/* Make steps more premium on desktop */
.rkf-steps {
  margin: 1.8em 0 !important;
  background: #f8fbff !important;
  border: 1px solid #dfe7f2 !important;
  border-radius: 18px !important;
  padding: 6px 20px !important;
}

.rkf-step {
  padding: 19px 0 !important;
  gap: 18px !important;
}

.rkf-step-body strong {
  font-size: 1.02em !important;
}

/* Better grids */
.rkf-symptom-grid,
.rkf-method-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.rkf-symptom-card,
.rkf-method-card {
  background: #ffffff !important;
  border: 1px solid #dfe7f2 !important;
  border-top: 4px solid #1264e8 !important;
  border-radius: 16px !important;
  padding: 18px !important;
  box-shadow: 0 12px 30px rgba(7,17,31,.06) !important;
}

/* Post navigation and related posts outside the article wrapper */
.single-post .post-navigation,
.single-post nav.navigation.post-navigation,
.single-post .navigation.post-navigation {
  margin: 42px 0 36px !important;
  padding: 0 !important;
  background: transparent !important;
}

.single-post .post-navigation .nav-links,
.single-post nav.navigation.post-navigation .nav-links,
.single-post .navigation.post-navigation .nav-links {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  min-height: auto !important;
  padding: 0 !important;
  align-items: stretch !important;
}

.single-post .post-navigation .nav-previous,
.single-post .post-navigation .nav-next,
.single-post .navigation.post-navigation .nav-previous,
.single-post .navigation.post-navigation .nav-next {
  min-height: auto !important;
  padding: 22px 24px !important;
  border: 1px solid #dfe7f2 !important;
  border-radius: 18px !important;
  background: #f8fbff !important;
  box-shadow: 0 12px 30px rgba(7,17,31,.05) !important;
}

.single-post .post-navigation .nav-previous:empty,
.single-post .post-navigation .nav-next:empty,
.single-post .navigation.post-navigation .nav-previous:empty,
.single-post .navigation.post-navigation .nav-next:empty {
  display: none !important;
}

.single-post .post-navigation .nav-subtitle,
.single-post .navigation.post-navigation .nav-subtitle {
  display: block !important;
  margin-bottom: 10px !important;
  color: #07111f !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.single-post .post-navigation a,
.single-post .navigation.post-navigation a,
.single-post .post-navigation .nav-title,
.single-post .navigation.post-navigation .nav-title {
  color: #102033 !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.single-post .post-navigation a:hover,
.single-post .navigation.post-navigation a:hover {
  color: #1264e8 !important;
}

.single-post .related-posts h2,
.single-post .similar-posts h2,
.single-post .entry-related h2,
.single-post .post-related h2 {
  margin: 0 0 24px !important;
  color: #07111f !important;
  font-size: 30px !important;
  line-height: 1.15 !important;
  font-weight: 850 !important;
  letter-spacing: -.03em !important;
}

.single-post .related-posts article,
.single-post .similar-posts article,
.single-post .entry-related article,
.single-post .post-related article {
  overflow: hidden !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  border: 1px solid #dfe7f2 !important;
  box-shadow: 0 14px 34px rgba(7,17,31,.07) !important;
}

.single-post .related-posts img,
.single-post .similar-posts img,
.single-post .entry-related img,
.single-post .post-related img {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 14px 14px 0 0 !important;
}

.single-post .related-posts h3,
.single-post .similar-posts h3,
.single-post .entry-related h3,
.single-post .post-related h3,
.single-post .related-posts .entry-title,
.single-post .similar-posts .entry-title {
  padding: 18px 18px 22px !important;
  margin: 0 !important;
  color: #102033 !important;
  font-size: 20px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

@media (max-width: 760px) {
  .rkf-blog-wrap,
  .replacekeyfob-blog-wrap { padding: 0 10px !important; }

  .rkf-battery-card,
  .entry-content .rkf-battery-card,
  .single-post .rkf-battery-card {
    padding: 18px 17px !important;
    margin: 22px 0 !important;
    border-radius: 14px !important;
  }

  .rkf-battery-card p,
  .entry-content .rkf-battery-card p,
  .single-post .rkf-battery-card p {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  .rkf-symptom-grid,
  .rkf-method-grid {
    grid-template-columns: 1fr !important;
  }

  .single-post .post-navigation .nav-links,
  .single-post nav.navigation.post-navigation .nav-links,
  .single-post .navigation.post-navigation .nav-links {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .single-post .related-posts h2,
  .single-post .similar-posts h2,
  .single-post .entry-related h2,
  .single-post .post-related h2 {
    font-size: 26px !important;
  }
}
