.mhp-compare-launcher {
  position: fixed;
  z-index: 80;
  left: clamp(12px, 2vw, 28px);
  bottom: 22px;
  filter: drop-shadow(0 8px 18px rgba(20, 18, 15, .18));
}

.single-plans .mhp-compare-launcher { bottom: 92px; }

.mhp-compare-launcher a,
.mhp-compare-launcher button {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 17px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 4px;
  background: #171715;
  color: #fff;
  font: 700 14px/1.2 system-ui, sans-serif;
  text-decoration: none;
  cursor: pointer;
}

.mhp-compare {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(46px, 7vw, 88px) 0 72px;
  color: #173047;
}

.mhp-compare__header { max-width: 760px; }
.page-id-10560 .mhp-compare { padding-top: 14px; }
.mhp-compare__header h2 { margin: 8px 0 16px; font-size: clamp(34px, 4.5vw, 58px); line-height: 1.04; letter-spacing: 0; }
.mhp-compare__header > p:last-child { max-width: 680px; font-size: 19px; line-height: 1.65; }
.mhp-compare__eyebrow { margin: 0; color: #d96f50; font: 700 12px/1.2 ui-monospace, monospace; letter-spacing: .16em; }

.mhp-compare__selectors {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 34px 0;
}

.mhp-compare__selectors label { display: grid; gap: 8px; color: #5f5b55; font: 700 13px/1.2 system-ui, sans-serif; }
.mhp-compare__selectors select { width: 100%; min-height: 50px; padding: 10px 38px 10px 13px; border: 1px solid #cbc7bf; border-radius: 4px; background: #fff; color: #173047; font: 16px/1.3 system-ui, sans-serif; }

.mhp-compare__cost { margin: 0 0 30px; padding: 22px 0 24px; border: 0; border-top: 1px solid #dedad2; border-bottom: 1px solid #dedad2; }
.mhp-compare__cost legend { padding: 0; color: #173047; font: 700 17px/1.25 system-ui, sans-serif; }
.mhp-compare__cost > p { margin: 8px 0 16px; color: #6d675f; font: 15px/1.5 system-ui, sans-serif; }
.mhp-compare__cost-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: min(720px, 100%); border: 1px solid #bdb8ae; border-radius: 5px; overflow: hidden; }
.mhp-compare__cost-options label { min-width: 0; margin: 0; cursor: pointer; }
.mhp-compare__cost-options label + label { border-left: 1px solid #bdb8ae; }
.mhp-compare__cost-options input { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mhp-compare__cost-options span { display: grid; place-content: center; min-height: 64px; padding: 9px 12px; background: #fff; color: #173047; font: 700 14px/1.25 system-ui, sans-serif; text-align: center; }
.mhp-compare__cost-options small { display: block; margin-top: 4px; color: #6d675f; font: 500 12px/1.25 system-ui, sans-serif; }
.mhp-compare__cost-options input:checked + span { background: #173047; color: #fff; }
.mhp-compare__cost-options input:checked + span small { color: rgba(255,255,255,.78); }
.mhp-compare__cost-options input:focus-visible + span { outline: 3px solid #d96f50; outline-offset: -3px; }

.mhp-compare__grid { display: grid; grid-template-columns: repeat(var(--plan-count), minmax(0, 1fr)); gap: 16px; margin-bottom: 18px; }
.mhp-compare-card { min-width: 0; border: 1px solid #dedad2; border-radius: 6px; background: #fff; overflow: hidden; }
.mhp-compare-card img { display: block; width: 100%; aspect-ratio: 14 / 9; object-fit: cover; }
.mhp-compare-card h2 { margin: 0; padding: 16px; font-size: 24px; line-height: 1.15; letter-spacing: 0; }
.mhp-compare-card a { color: inherit; }

.mhp-compare-table-wrap { overflow-x: auto; border: 1px solid #dedad2; border-radius: 6px; background: #fff; }
.mhp-compare-table { width: 100%; min-width: 640px; border-collapse: collapse; table-layout: fixed; }
.mhp-compare-table th, .mhp-compare-table td { padding: 15px 18px; border-bottom: 1px solid #e6e2da; text-align: left; vertical-align: top; }
.mhp-compare-table th { width: 170px; color: #6d675f; font: 700 13px/1.3 system-ui, sans-serif; }
.mhp-compare-table thead th { color: #173047; font-size: 14px; background: #f6f4ee; }
.mhp-compare-table thead th a { color: inherit; text-decoration: none; }
.mhp-compare-table td { font: 16px/1.45 system-ui, sans-serif; }
.mhp-compare-table tr:last-child th, .mhp-compare-table tr:last-child td { border-bottom: 0; }
.mhp-compare__swipe { display: none; margin: 0 0 9px; color: #6d675f; font: 13px/1.4 system-ui, sans-serif; }
.mhp-compare__empty { padding: 40px; border: 1px dashed #bbb4a8; border-radius: 6px; color: #6d675f; text-align: center; }

.mhp-compare__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.mhp-compare-button { min-height: 46px; padding: 12px 18px; border: 1px solid #173047; border-radius: 4px; background: #173047; color: #fff; font: 700 14px/1.2 system-ui, sans-serif; text-decoration: none; cursor: pointer; }
.mhp-compare-button--secondary { background: #fff; color: #173047; }
.mhp-compare-button--quiet { border-color: transparent; background: transparent; color: #5f5b55; }
.mhp-compare__note { margin-top: 20px; color: #6d675f; font-size: 14px; line-height: 1.55; }

.mhp-walkout-guidance {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(48px, 7vw, 78px) 0;
  border-top: 1px solid #dedad2;
}
.mhp-walkout-guidance__eyebrow { margin: 0 0 10px; color: #d96f50; font: 700 12px/1.2 ui-monospace, monospace; letter-spacing: .16em; }
.mhp-walkout-guidance h2 { max-width: 760px; margin: 0 0 14px; color: #173047; font-size: clamp(32px, 4vw, 52px); line-height: 1.08; letter-spacing: 0; }
.mhp-walkout-guidance > p:not(.mhp-walkout-guidance__eyebrow) { max-width: 760px; color: #5f5b55; font-size: 18px; line-height: 1.65; }
.mhp-walkout-guidance nav { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 22px; }
.mhp-walkout-guidance a { color: #b85337; font-weight: 700; text-underline-offset: 3px; }

@media (max-width: 760px) {
  .mhp-compare { width: min(100% - 28px, 1180px); }
  .mhp-compare__selectors { grid-template-columns: 1fr; }
  .mhp-compare__cost-options { grid-template-columns: 1fr; }
  .mhp-compare__cost-options label + label { border-left: 0; border-top: 1px solid #bdb8ae; }
  .mhp-compare__grid { grid-template-columns: 1fr; }
  .mhp-compare__swipe { display: block; }
  .mhp-compare-table { min-width: 780px; }
  .mhp-compare-table thead th:first-child,
  .mhp-compare-table tbody th { position: sticky; left: 0; z-index: 1; background: #f6f4ee; box-shadow: 1px 0 0 #dedad2; }
  .mhp-compare-table thead th:first-child { z-index: 2; }
  .mhp-compare-launcher { left: 10px; bottom: 14px; }
  .single-plans .mhp-compare-launcher { bottom: 86px; }
  .mhp-walkout-guidance { width: min(100% - 28px, 1180px); }
}

@media print {
  header, footer, nav, .mhp-compare__selectors, .mhp-compare__actions, .mhp-compare-launcher, .mhp-compare__swipe { display: none !important; }
  .mhp-compare { width: 100%; padding: 0; }
  .mhp-compare-table-wrap { overflow: visible; }
}
