:root {
  --mx-bg: #F6F7F9;
  --mx-surface: #FFFFFF;
  --mx-ink: #0A2540;
  --mx-ink-dark: #061A30;
  --mx-jade: #0F5C4E;
  --mx-jade-dark: #0B4539;
  --mx-brass: #8A6D3B;
  --mx-text: #0A1220;
  --mx-muted: #4B5563;
  --mx-warning: #B5791E;
  --mx-danger: #B42318;
  --mx-gray-50: #F9FAFB;
  --mx-gray-100: #F2F4F7;
  --mx-gray-300: #D1D5DB;
  --mx-gray-400: #9CA3AF;
  --mx-border: rgba(10, 18, 32, 0.08);
  --mx-border-strong: rgba(10, 18, 32, 0.14);
  --mx-shadow: 0 1px 2px rgba(10, 18, 32, 0.04), 0 8px 24px rgba(10, 18, 32, 0.06);
  --mx-shadow-lg: 0 4px 8px rgba(10, 18, 32, 0.04), 0 24px 48px rgba(10, 18, 32, 0.08);

  --mx-radius: 12px;
  --mx-radius-lg: 16px;

  --mx-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --mx-dur: 180ms;
  --mx-dur-slow: 280ms;

  --mx-focus-ring: 0 0 0 3px color-mix(in srgb, var(--mx-jade) 35%, transparent);

  /* Solid fallback tokens (for browsers without color-mix support) */
  --mx-jade-10: #E8F0EE;
  --mx-brass-10: #F4ECDD;
  --mx-warning-12: #FEF4E4;
  --mx-danger-12: #FDE7EA;
}

html,
body {
  background: var(--mx-bg);
  color: var(--mx-text);
  font-family: "Manrope", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  line-height: 1.75;
  scroll-behavior: smooth;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: none;
  box-shadow: var(--mx-focus-ring);
  border-radius: inherit;
}

.btn:focus-visible,
.nav-link:focus-visible,
.dropdown-item:focus-visible {
  outline: none;
  box-shadow: var(--mx-focus-ring);
}

.accordion-button:focus {
  box-shadow: none;
  border-color: var(--mx-border-strong);
}

.accordion-button:focus-visible {
  box-shadow: var(--mx-focus-ring);
  border-color: var(--mx-border-strong);
}

.form-control:focus,
.form-select:focus {
  border-color: var(--mx-jade);
  box-shadow: var(--mx-focus-ring);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", "Manrope", sans-serif;
  font-feature-settings: "palt";
  letter-spacing: -0.005em;
}

.section-pad {
  padding: 96px 0;
}

.nav-shell {
  margin-top: 12px;
  padding: 0;
}

.nav-shell .nav-main {
  border: 1px solid var(--mx-border);
  border-radius: 999px;
  background: var(--mx-surface);
  box-shadow: 0 4px 14px rgba(10, 18, 32, 0.06);
  padding: 10px 18px;
}

.nav-categories .nav-item + .nav-item {
  margin-left: 2px;
}

.nav-categories .nav-link {
  padding-left: 14px;
  padding-right: 14px;
  white-space: nowrap;
}

.nav-link--emphasis {
  color: var(--mx-jade) !important;
  font-weight: 700;
}

.nav-link--emphasis:hover {
  color: var(--mx-jade-dark) !important;
}

.nav-category-menu {
  min-width: 260px;
  padding: 10px 6px;
  border: 1px solid var(--mx-border);
  border-radius: 14px;
  box-shadow: var(--mx-shadow-lg);
}

.nav-category-menu .dropdown-item {
  border-radius: 8px;
  padding: 8px 12px;
  color: var(--mx-text);
  font-size: 0.925rem;
  transition: background var(--mx-dur) var(--mx-ease), color var(--mx-dur) var(--mx-ease);
}

.nav-category-menu .dropdown-item:hover,
.nav-category-menu .dropdown-item:focus {
  background: var(--mx-gray-100);
  color: var(--mx-ink);
}

.nav-category-menu .dropdown-item--muted {
  color: var(--mx-muted);
  font-size: 0.82rem;
  font-weight: 500;
}

.nav-category-menu .dropdown-divider {
  margin: 6px 8px;
  border-color: var(--mx-border);
}

.page-sub-nav {
  margin: 6px auto 0;
  max-width: 1320px;
  padding: 0 12px;
}

.page-sub-nav-inner {
  border: 1px solid var(--mx-border);
  border-radius: 999px;
  background: var(--mx-surface);
  box-shadow: 0 2px 8px rgba(10, 18, 32, 0.04);
  padding: 6px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  overflow-x: auto;
}

.page-sub-label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: var(--mx-muted);
  text-transform: uppercase;
  flex-shrink: 0;
}

.page-sub-links {
  display: flex;
  gap: 4px;
  flex-wrap: nowrap;
}

.page-sub-link {
  color: var(--mx-muted);
  font-size: 0.875rem;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
  transition: background var(--mx-dur) var(--mx-ease), color var(--mx-dur) var(--mx-ease);
}

.page-sub-link:hover {
  color: var(--mx-ink);
  background: var(--mx-gray-100);
}

.brand-logo {
  display: flex;
  align-items: center;
  width: 156px;
  height: 46px;
}

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

.nav-link {
  color: var(--mx-muted);
  font-weight: 600;
  transition: color var(--mx-dur) var(--mx-ease);
}

.nav-link:hover,
.nav-link.active {
  color: var(--mx-ink);
}

.site-nav-pages-menu {
  max-height: min(68vh, 520px);
  overflow: auto;
}

.site-nav-pages-menu .dropdown-item {
  white-space: normal;
}

.micro-title {
  color: var(--mx-jade);
  letter-spacing: 0.14em;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
}

.display-title {
  font-size: clamp(2.25rem, 4.5vw, 3.5rem);
  line-height: 1.2;
  letter-spacing: -0.01em;
  font-weight: 800;
  margin: 0;
}

.btn-brand {
  background: var(--mx-ink);
  border-color: var(--mx-ink);
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.04em;
  transition: transform var(--mx-dur) var(--mx-ease), box-shadow var(--mx-dur) var(--mx-ease), background var(--mx-dur) var(--mx-ease);
}

.btn-brand:hover {
  background: var(--mx-ink-dark);
  border-color: var(--mx-ink-dark);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(10, 37, 64, 0.18);
}

.btn-outline-brand {
  color: var(--mx-jade);
  border: 1px solid color-mix(in srgb, var(--mx-jade) 40%, #fff 60%);
  font-weight: 700;
  transition: transform var(--mx-dur) var(--mx-ease), box-shadow var(--mx-dur) var(--mx-ease), background var(--mx-dur) var(--mx-ease);
}

.btn-outline-brand:hover {
  background: color-mix(in srgb, var(--mx-jade) 10%, #fff 90%);
  color: var(--mx-jade-dark);
  transform: translateY(-1px);
}

.hero-section {
  padding-top: 96px;
}

section[id] {
  scroll-margin-top: 120px;
}

.advisory-card,
.service-card,
.blog-card,
.info-chip {
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  box-shadow: var(--mx-shadow);
}

.service-card {
  transition: transform var(--mx-dur) var(--mx-ease), box-shadow var(--mx-dur) var(--mx-ease), border-color var(--mx-dur) var(--mx-ease);
}

.service-icon-tile {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--mx-jade) 8%, #fff);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  color: var(--mx-jade);
  margin-bottom: 10px;
}

.service-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--mx-shadow-lg);
  border-color: var(--mx-border-strong);
}

.info-chip {
  border-radius: 16px;
  padding: 24px;
  transition: border-color var(--mx-dur) var(--mx-ease), background var(--mx-dur) var(--mx-ease);
}

.info-chip:hover {
  border-color: var(--mx-border-strong);
}

.advisory-card .list-group-item {
  border-color: var(--mx-border);
  background: transparent;
}

.advisory-media {
  width: 100%;
  display: block;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid var(--mx-border);
  margin-bottom: 14px;
}

.advisory-media--portrait {
  aspect-ratio: 4 / 5;
}

.advisory-media--square {
  aspect-ratio: 1 / 1;
}

.advisory-media--landscape {
  aspect-ratio: 16 / 10;
}

.hero-cpa-carousel {
  position: relative;
  border-radius: var(--mx-radius-lg);
  overflow: hidden;
  aspect-ratio: 4 / 5;
  box-shadow: var(--mx-shadow-lg);
}

.hero-cpa-carousel .carousel-inner,
.hero-cpa-carousel .carousel-item {
  height: 100%;
}

.hero-cpa-carousel .advisory-media,
.hero-cpa-carousel .carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
  border-radius: 0;
  border: 0;
  display: block;
}

.hero-cpa-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(10, 37, 64, 0.62) 0%, rgba(10, 37, 64, 0.18) 55%, rgba(15, 92, 78, 0.28) 100%),
    linear-gradient(180deg, transparent 40%, rgba(6, 26, 48, 0.78) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 26px 22px 44px;
  pointer-events: none;
}

.hero-cpa-caption {
  position: relative;
  z-index: 2;
  color: #fff;
}

.hero-cpa-eyebrow {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #fff;
  background: rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 5px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.24);
  margin-bottom: 14px;
}

.hero-cpa-title {
  font-size: clamp(1.25rem, 1.7vw, 1.6rem);
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: #fff;
  margin: 0 0 16px;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.28);
}

.hero-cpa-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
}

.hero-cpa-chips span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 0.72rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.96);
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.hero-cpa-chips i {
  font-size: 0.82rem;
  color: color-mix(in srgb, var(--mx-jade) 18%, #fff 82%);
}

.hero-cpa-carousel .carousel-indicators {
  margin-bottom: 14px;
  z-index: 3;
}

.hero-cpa-carousel .carousel-indicators [data-bs-target] {
  width: 22px;
  height: 3px;
  border-radius: 2px;
  margin: 0 3px;
  border: 0;
  background: rgba(255, 255, 255, 0.38);
  transition: background var(--mx-dur) var(--mx-ease), width var(--mx-dur) var(--mx-ease);
}

.hero-cpa-carousel .carousel-indicators .active {
  background: #fff;
  width: 30px;
}

.hero-cpa-carousel .carousel-control-prev,
.hero-cpa-carousel .carousel-control-next {
  width: 14%;
  opacity: 0;
  transition: opacity var(--mx-dur) var(--mx-ease);
  z-index: 3;
}

.hero-cpa-carousel:hover .carousel-control-prev,
.hero-cpa-carousel:hover .carousel-control-next {
  opacity: 0.88;
}

.hero-cpa-carousel .carousel-control-prev-icon,
.hero-cpa-carousel .carousel-control-next-icon {
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background-color: rgba(10, 37, 64, 0.55);
  background-size: 48%;
  border: 1px solid rgba(255, 255, 255, 0.22);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.trust-visual {
  margin: 0 0 14px;
}

.trust-visual img {
  width: 100%;
  display: block;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid var(--mx-border);
  aspect-ratio: 16 / 10;
}

.license-badge {
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-left: 3px solid var(--mx-jade);
  border-radius: 16px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  height: 100%;
  box-shadow: var(--mx-shadow);
  transition: box-shadow var(--mx-dur) var(--mx-ease), transform var(--mx-dur) var(--mx-ease);
}

.license-badge:hover {
  transform: translateY(-1px);
  box-shadow: var(--mx-shadow-lg);
}

.license-badge__icon {
  font-size: 1.75rem;
  color: var(--mx-jade);
  flex-shrink: 0;
  line-height: 1;
}

.license-badge__content {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1.3;
}

.license-badge__label {
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--mx-muted);
  letter-spacing: 0.02em;
}

.license-badge__number {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--mx-ink);
  font-family: "Manrope", sans-serif;
  letter-spacing: 0.02em;
  line-height: 1.2;
}

.license-badge__caption {
  font-size: 0.68rem;
  color: var(--mx-muted);
  margin-top: 2px;
}

.comparison-table th.is-self,
.comparison-table td.is-self {
  background: color-mix(in srgb, var(--mx-jade) 6%, #fff);
}
.comparison-table th.is-self {
  background: color-mix(in srgb, var(--mx-jade) 12%, #fff);
}

.blog-lead-section {
  padding: 28px 0 0;
}

.blog-lead-image {
  margin: 0;
  border-radius: var(--mx-radius-lg);
  overflow: hidden;
  box-shadow: var(--mx-shadow);
}

.blog-lead-image img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}

.blog-lead-image figcaption {
  font-size: 0.72rem;
  color: var(--mx-muted);
  padding: 8px 4px 0;
  line-height: 1.5;
}

.info-chip h3 {
  margin-bottom: 6px;
  color: var(--mx-ink);
}

.info-chip p {
  margin: 0;
  color: var(--mx-muted);
}

.section-head h2 {
  margin: 0;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  line-height: 1.3;
  font-weight: 700;
}

.service-card h3 {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 600;
  margin-bottom: 12px;
}

.service-card p,
.service-card li {
  color: var(--mx-muted);
}

.problem-chip {
  border: 1px solid var(--mx-border);
  background: color-mix(in srgb, var(--mx-jade) 8%, #fff 92%);
  color: var(--mx-text);
  border-radius: 12px;
}

.timeline-wrap {
  border-left: 2px solid color-mix(in srgb, var(--mx-jade) 35%, #fff 65%);
  padding-left: 18px;
  display: grid;
  gap: 12px;
}

.timeline-item {
  position: relative;
  border: 1px solid var(--mx-border);
  background: var(--mx-surface);
  border-radius: 16px;
  padding: 24px 24px 24px 24px;
}

.timeline-item::before {
  content: "";
  position: absolute;
  left: -28px;
  top: 44px;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--mx-ink);
  border: 2px solid var(--mx-bg);
}

.timeline-item h3 {
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: 600;
  margin: 0 0 8px;
}

.timeline-item__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.timeline-step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: var(--mx-ink);
  color: #fff;
  font-family: "Manrope", sans-serif;
  font-weight: 800;
  font-size: 0.85rem;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}

.timeline-step-icon {
  font-size: 1.25rem;
  color: var(--mx-jade);
  flex-shrink: 0;
}

.timeline-item__head h3 {
  margin: 0;
}

.timeline-item p {
  margin: 0;
  color: var(--mx-muted);
}

.trust-panel {
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
}

.caution-panel {
  background: var(--mx-ink);
  color: #E5EAF2;
}

.caution-panel h2,
.caution-panel .micro-title {
  color: #fff;
}

.caution-panel ul {
  color: #CDD5E0;
}

.table th {
  background: var(--mx-ink);
  color: #fff;
}

.table tbody tr {
  transition: background var(--mx-dur) var(--mx-ease);
}

.table tbody tr:hover {
  background: var(--mx-gray-50);
}

.blog-card {
  border-radius: 14px;
  padding: 20px;
  color: var(--mx-text);
}

/* === Blog post layout === */
.blog-cover {
  aspect-ratio: 24 / 9;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 28px 32px;
  color: #fff;
  margin-bottom: 28px;
  box-shadow: var(--mx-shadow-lg);
}

.blog-cover::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 22%, rgba(255, 255, 255, 0.18), transparent 42%),
    radial-gradient(circle at 82% 78%, rgba(255, 255, 255, 0.12), transparent 48%),
    radial-gradient(circle at 65% 30%, rgba(0, 0, 0, 0.15), transparent 55%);
  pointer-events: none;
}

.blog-cover .cover-icon {
  position: absolute;
  right: 32px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 5.5rem;
  color: rgba(255, 255, 255, 0.22);
  line-height: 1;
}

.blog-cover .cover-label {
  position: relative;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.18);
  padding: 6px 14px;
  border-radius: 999px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.blog-cover--drp {
  background: linear-gradient(135deg, var(--mx-jade) 0%, var(--mx-jade-dark) 100%);
}

.blog-cover--iva {
  background: linear-gradient(135deg, var(--mx-ink) 0%, #1D3A55 100%);
}

.blog-cover--bky {
  background: linear-gradient(135deg, var(--mx-ink-dark) 0%, #0A1A2B 100%);
}

.blog-cover--edu {
  background: linear-gradient(135deg, var(--mx-brass) 0%, #6E5428 100%);
}

.blog-card-cover {
  height: 140px;
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  margin: -24px -24px 16px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.28);
  font-size: 3rem;
}

.blog-card-cover::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 25% 30%, rgba(255, 255, 255, 0.15), transparent 45%),
    radial-gradient(circle at 80% 75%, rgba(0, 0, 0, 0.12), transparent 50%);
  pointer-events: none;
}

.blog-card-cover i {
  position: relative;
  z-index: 1;
}

.blog-card-cover--drp {
  background: linear-gradient(135deg, var(--mx-jade) 0%, var(--mx-jade-dark) 100%);
}

.blog-card-cover--iva {
  background: linear-gradient(135deg, var(--mx-ink) 0%, #1D3A55 100%);
}

.blog-card-cover--bky {
  background: linear-gradient(135deg, var(--mx-ink-dark) 0%, #0A1A2B 100%);
}

.blog-card-cover--edu {
  background: linear-gradient(135deg, var(--mx-brass) 0%, #6E5428 100%);
}

.blog-hero {
  padding-top: 120px;
  padding-bottom: 48px;
  border-bottom: 1px solid var(--mx-border);
}

.blog-breadcrumb {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  font-size: 0.82rem;
  color: var(--mx-muted);
  margin-bottom: 20px;
}

.blog-breadcrumb a {
  color: var(--mx-muted);
  text-decoration: none;
}

.blog-breadcrumb a:hover {
  color: var(--mx-ink);
}

.blog-breadcrumb .sep {
  font-size: 0.7rem;
  color: var(--mx-gray-300);
  line-height: 1;
}

.blog-title {
  font-size: clamp(1.75rem, 3.2vw, 2.75rem);
  line-height: 1.3;
  font-weight: 800;
  letter-spacing: -0.01em;
  margin: 0 0 16px;
  max-width: 780px;
}

.blog-summary {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--mx-muted);
  max-width: 780px;
  margin: 0 0 20px;
}

.blog-meta {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  font-size: 0.82rem;
  color: var(--mx-muted);
}

.blog-meta span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.blog-meta i {
  color: var(--mx-gray-400);
  font-size: 0.875rem;
  margin-right: 0;
}

.blog-author {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 18px 0 20px;
  padding: 14px 16px;
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-radius: var(--mx-radius);
}

.blog-author__avatar {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: var(--mx-ink);
  color: #fff;
  font-family: "Noto Sans TC", "PingFang TC", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.blog-author__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1.3;
}

.blog-author__name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--mx-ink);
}

.blog-author__role {
  font-size: 0.82rem;
  color: var(--mx-jade);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 500;
}

.blog-author__role i {
  font-size: 0.82rem;
}

.blog-category-tag {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--mx-jade);
  background: color-mix(in srgb, var(--mx-jade) 10%, #fff 90%);
  padding: 4px 10px;
  border-radius: 999px;
}

.blog-content {
  max-width: 720px;
  font-size: 1.0625rem;
  line-height: 1.9;
  color: var(--mx-text);
}

.blog-content h2 {
  font-size: 1.5rem;
  line-height: 1.4;
  font-weight: 700;
  margin: 56px 0 16px;
  scroll-margin-top: 120px;
}

.blog-content h3 {
  font-size: 1.2rem;
  line-height: 1.4;
  font-weight: 700;
  margin: 36px 0 12px;
  scroll-margin-top: 120px;
}

.blog-content p {
  margin: 0 0 24px;
}

.blog-content > *:first-child {
  margin-top: 0;
}
.blog-content > h2 + p,
.blog-content > h3 + p {
  margin-top: 0;
}

.blog-content ul,
.blog-content ol {
  margin: 0 0 20px;
  padding-left: 20px;
}

.blog-content li {
  margin-bottom: 8px;
}

.blog-content blockquote {
  border-left: 4px solid var(--mx-jade);
  padding: 16px 22px;
  margin: 28px 0;
  background: var(--mx-gray-50);
  color: var(--mx-muted);
  font-style: normal;
  font-size: 1rem;
  line-height: 1.75;
  border-radius: 0 8px 8px 0;
}

.blog-content a {
  color: var(--mx-jade);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.blog-content a:hover {
  color: var(--mx-jade-dark);
}

.blog-content hr {
  border: 0;
  border-top: 1px solid var(--mx-border);
  margin: 36px 0;
}

.blog-content .callout {
  background: var(--mx-gray-50);
  border: 1px solid var(--mx-border);
  border-left: 4px solid var(--mx-jade);
  padding: 20px 22px;
  border-radius: var(--mx-radius);
  margin: 28px 0;
}

.blog-content .callout--warn {
  border-left-color: var(--mx-warning);
  background: color-mix(in srgb, var(--mx-warning) 5%, #fff 95%);
}

.blog-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 28px 0;
  font-size: 0.9375rem;
  border: 1px solid var(--mx-border);
  border-radius: var(--mx-radius);
  overflow: hidden;
}

.blog-content th,
.blog-content td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--mx-border);
  text-align: left;
  vertical-align: top;
}

.blog-content th {
  background: var(--mx-gray-50);
  color: var(--mx-ink);
  font-weight: 700;
  border-bottom: 2px solid var(--mx-border-strong);
}

.blog-content tbody tr:nth-child(even) td {
  background: var(--mx-gray-50);
}
.blog-content tbody tr:hover td {
  background: var(--mx-gray-100);
}
.blog-content tbody tr:last-child td {
  border-bottom: 0;
}

.blog-sidebar {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sidebar-card {
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-radius: 12px;
  padding: 20px;
}

.sidebar-card h3,
.sidebar-card .sidebar-title {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 12px;
}

.sidebar-card p {
  color: var(--mx-muted);
  font-size: 0.875rem;
  margin: 0 0 12px;
}

.sidebar-card--cta {
  background: var(--mx-ink);
  color: #fff;
  border-color: var(--mx-ink);
}

.sidebar-card--cta h3,
.sidebar-card--cta .sidebar-title {
  color: #fff;
}

.sidebar-card--cta p {
  color: rgba(255, 255, 255, 0.75);
}

.sidebar-card--cta .btn-brand {
  background: var(--mx-surface);
  border-color: var(--mx-surface);
  color: var(--mx-ink);
}

.sidebar-card--cta .btn-brand:hover {
  background: var(--mx-gray-100);
  border-color: var(--mx-gray-100);
  color: var(--mx-ink);
}

.sidebar-card--cta .btn-outline-brand {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.4);
}

.sidebar-card--cta .btn-outline-brand:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.blog-toc {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
}

.blog-toc li {
  margin-bottom: 8px;
  line-height: 1.4;
}

.blog-toc a {
  color: var(--mx-muted);
  text-decoration: none;
  display: block;
  padding: 6px 10px;
  border-radius: 6px;
  border-left: 2px solid transparent;
  transition: background var(--mx-dur) var(--mx-ease), color var(--mx-dur) var(--mx-ease), border-color var(--mx-dur) var(--mx-ease);
}

.blog-toc a:hover {
  color: var(--mx-ink);
  background: var(--mx-gray-50);
}

.blog-toc a.active {
  color: var(--mx-ink);
  font-weight: 600;
  background: color-mix(in srgb, var(--mx-jade) 6%, transparent);
  border-left-color: var(--mx-jade);
}

.related-mini {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
}

.related-mini li {
  padding: 8px 0;
  border-bottom: 1px solid var(--mx-border);
}

.related-mini li:last-child {
  border-bottom: 0;
}

.related-mini a {
  color: var(--mx-text);
  text-decoration: none;
  line-height: 1.4;
  font-weight: 500;
}

.related-mini a:hover {
  color: var(--mx-jade);
}

.pillar-cta {
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-radius: 16px;
  padding: 32px;
  text-align: center;
  box-shadow: var(--mx-shadow);
}

.pillar-cta h2 {
  font-size: 1.5rem;
  line-height: 1.4;
  font-weight: 700;
  margin: 0 0 12px;
}

.pillar-cta p {
  color: var(--mx-muted);
  margin: 0 0 20px;
}

.blog-post-card {
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-radius: 14px;
  padding: 24px;
  box-shadow: var(--mx-shadow);
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-decoration: none;
  color: var(--mx-text);
  transition: transform var(--mx-dur) var(--mx-ease), box-shadow var(--mx-dur) var(--mx-ease);
}

.blog-post-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--mx-shadow-lg);
  color: var(--mx-text);
}

.blog-post-card h3 {
  font-size: 1.0625rem;
  line-height: 1.45;
  font-weight: 700;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-clamp: 2;
  overflow: hidden;
  min-height: calc(1.0625rem * 1.45 * 2);
}

.blog-post-card p {
  color: var(--mx-muted);
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0;
  flex-grow: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  overflow: hidden;
}

.blog-post-card .read-more {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--mx-jade);
  margin-top: auto;
  transition: transform var(--mx-dur) var(--mx-ease);
}

.blog-post-card .blog-card-cover i {
  transition: transform var(--mx-dur-slow) var(--mx-ease);
}

.blog-post-card:hover .blog-card-cover i {
  transform: scale(1.08);
}

.blog-post-card:hover .read-more {
  transform: translateX(4px);
}

@media (max-width: 575px) {
  .blog-cover {
    aspect-ratio: 16 / 10;
    padding: 20px 20px;
  }
  .blog-cover .cover-icon {
    font-size: 3.5rem;
    right: 16px;
  }
  .blog-content table {
    display: block;
    overflow-x: auto;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }
  .pillar-cta {
    padding: 24px 20px;
    border-radius: 12px;
  }
  .blog-lead-image figcaption {
    font-size: 0.82rem;
    margin-top: 6px;
  }
}

.accordion-button {
  font-weight: 700;
  transition: background var(--mx-dur) var(--mx-ease), color var(--mx-dur) var(--mx-ease);
}

.accordion-button::after {
  transition: transform var(--mx-dur) var(--mx-ease);
}

.accordion-button:not(.collapsed) {
  color: var(--mx-ink);
  background: color-mix(in srgb, var(--mx-jade) 8%, #fff 92%);
}

.cta-shell {
  background: linear-gradient(160deg, var(--mx-ink-dark) 0%, var(--mx-ink) 100%);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 24px 54px rgba(10, 37, 64, 0.28);
}

.whatsapp-float {
  position: fixed;
  right: max(18px, env(safe-area-inset-right) + 12px);
  bottom: max(18px, env(safe-area-inset-bottom) + 12px);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--mx-ink);
  color: #fff;
  font-size: 1.6rem;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(14, 42, 51, 0.28);
  border: 2px solid #fff;
  z-index: 1040;
}

.whatsapp-float::before {
  content: "";
  position: absolute;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #25d366;
  z-index: 0;
}

.whatsapp-float i,
.whatsapp-float svg {
  position: relative;
  z-index: 1;
  color: #fff;
}

#site-map-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
}

.site-footer-meta {
  color: var(--mx-muted);
}

.site-footer-summary {
  color: var(--mx-ink);
}

#site-map-links a {
  color: var(--mx-muted);
  text-decoration: none;
  word-break: break-word;
}

#site-map-links a:hover {
  color: var(--mx-ink);
  text-decoration: underline;
}

@media (max-width: 991px) {
  .nav-shell .nav-main {
    border-radius: 16px;
  }

  .hero-section {
    padding-top: 96px;
  }

  .section-pad {
    padding: 64px 0;
  }

  section[id] {
    scroll-margin-top: 110px;
  }

  .blog-hero {
    padding-top: 96px;
  }

  body[data-page="form"] .trust-shell.position-sticky {
    position: static !important;
    top: auto !important;
  }
}

body[data-page="form"] .trust-shell.position-sticky {
  top: 96px;
}

@media (max-width: 767px) {
  .section-pad {
    padding: 48px 0;
  }

  .hero-section {
    padding-top: 96px;
  }

  .whatsapp-float {
    width: 50px;
    height: 50px;
  }

  .blog-sidebar {
    position: static;
  }

  .navbar-toggler {
    min-height: 44px;
    min-width: 44px;
  }

  #site-map-links a,
  .site-footer-meta a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding: 0 4px;
  }

  .dropdown-menu .dropdown-item {
    min-height: 44px;
    display: flex;
    align-items: center;
  }

  section[id] {
    scroll-margin-top: 98px;
  }
}

@media (min-width: 1400px) {
  .hero-section {
    padding-top: 128px;
  }
  .hero-cpa-carousel,
  .advisory-media--portrait {
    aspect-ratio: 16 / 11;
  }
}

.skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  background: var(--mx-ink);
  color: #fff;
  padding: 10px 16px;
  border-radius: 0 0 8px 0;
  z-index: 1060;
  text-decoration: none;
  font-weight: 600;
}

.skip-link:focus,
.skip-link:focus-visible {
  left: 0;
  outline: 2px solid var(--mx-jade);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* ==========================================================================
   T3 — Form polish (new-form)
   ========================================================================== */

/* F1 — Required asterisk + label weight */
.form-label {
  font-weight: 600;
}
.form-label .text-danger {
  color: var(--mx-danger);
}

/* F2 — Placeholder color */
.form-control::placeholder,
.form-select::placeholder {
  color: var(--mx-gray-400);
  opacity: 1;
}

/* F3 — :user-invalid state (post-interaction only) */
.form-control:user-invalid,
.form-select:user-invalid {
  border-color: var(--mx-danger);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--mx-danger) 18%, transparent);
}

/* F4 — Consent-gated submit */
form:has(input[name="consent"]:not(:checked)) button[type="submit"],
form:has(#consent:not(:checked)) button[type="submit"] {
  opacity: 0.55;
  pointer-events: none;
  cursor: not-allowed;
}

/* F5 — Consent-note contrast */
.consent-note {
  color: var(--mx-ink);
  font-size: 0.82rem;
  line-height: 1.7;
}
.consent-note .text-muted {
  color: var(--mx-muted);
}

/* F6 — Section header hierarchy */
.form-section {
  margin-top: 32px;
}
.form-section h2 {
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0 0 8px;
}

/* F7 — 4-dot stepper */
.form-steps {
  display: flex;
  gap: 0;
  align-items: center;
  margin: 24px 0 32px;
  padding: 0;
  list-style: none;
}
.form-steps li {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  font-size: 0.82rem;
  color: var(--mx-muted);
}
.form-steps li:not(:last-child)::after {
  content: "";
  flex: 1;
  height: 2px;
  background: var(--mx-border);
  margin-left: 8px;
}
.form-steps li.is-active {
  color: var(--mx-ink);
  font-weight: 700;
}
.form-steps li.is-done {
  color: var(--mx-jade);
}
.form-steps .step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--mx-gray-100);
  color: var(--mx-muted);
  font-family: "Manrope", sans-serif;
  font-weight: 700;
  font-size: 0.75rem;
  flex-shrink: 0;
}
.form-steps li.is-active .step-num {
  background: var(--mx-ink);
  color: #fff;
}
.form-steps li.is-done .step-num {
  background: var(--mx-jade);
  color: #fff;
}

/* F9 — Form-control sizing alignment with btn-lg submit */
body[data-page="form"] .form-control,
body[data-page="form"] .form-select {
  padding: 0.78rem 1rem;
  font-size: 1rem;
  border-color: var(--mx-border);
  border-radius: var(--mx-radius);
}

/* === Calculator === */

/* Dropdown emphasis item */
.dropdown-item--emphasis {
  color: var(--mx-brass);
  font-weight: 700;
}
.dropdown-item--emphasis:hover,
.dropdown-item--emphasis:focus {
  color: var(--mx-brass);
  background-color: color-mix(in srgb, var(--mx-brass) 10%, transparent);
}

/* Disclaimer banner */
.calc-disclaimer-banner {
  background: var(--mx-warning-12);
  background: color-mix(in srgb, var(--mx-warning) 12%, var(--mx-surface));
  border-bottom: 1px solid color-mix(in srgb, var(--mx-warning) 30%, transparent);
  color: var(--mx-warning);
  font-size: 0.85rem;
  font-weight: 600;
  padding: 0.6rem 0;
  text-align: center;
  position: sticky;
  top: 72px;
  z-index: 900;
}

/* Section title */
.calc-section-title {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--mx-ink-dark);
}

/* Hero */
.calc-hero {
  background: linear-gradient(135deg, var(--mx-jade) 0%, var(--mx-jade-dark) 100%);
  color: #fff;
  padding-top: 5rem;
  padding-bottom: 4rem;
}
.calc-hero-badge {
  display: inline-block;
  background: rgba(255,255,255,0.18);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 5px 14px;
  border-radius: 999px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.calc-hero-title {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  line-height: 1.15;
  color: #fff;
}
.calc-hero-accent {
  color: #fde68a;
}
.calc-hero-sub {
  font-size: 1.05rem;
  opacity: 0.88;
  max-width: 520px;
}
.calc-hero-cta {
  background: #fff;
  color: var(--mx-jade);
  font-weight: 700;
  border: none;
  transition: transform var(--mx-dur) var(--mx-ease), box-shadow var(--mx-dur) var(--mx-ease);
}
.calc-hero-cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.18);
  color: var(--mx-jade-dark);
}

/* Debt clock */
.calc-debt-clock {
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: var(--mx-radius-lg);
  padding: 2rem 2.5rem;
  text-align: center;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  min-width: 240px;
}
.calc-debt-clock__label {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  opacity: 0.75;
  margin-bottom: 0.5rem;
}
.calc-debt-clock__value {
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #fde68a;
  font-variant-numeric: tabular-nums;
}
.calc-debt-clock__sub {
  font-size: 0.7rem;
  opacity: 0.6;
  margin-top: 0.4rem;
}

/* Inputs section */
.calc-inputs {
  background: var(--mx-surface);
}
.calc-slider-card {
  background: var(--mx-gray-50);
  border: 1px solid var(--mx-border);
  border-radius: var(--mx-radius);
  padding: 1.5rem;
  height: 100%;
}
.calc-slider-label {
  display: block;
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--mx-ink);
  margin-bottom: 0.5rem;
}
.calc-slider-output {
  display: block;
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--mx-jade);
  margin-bottom: 0.75rem;
  font-variant-numeric: tabular-nums;
}
.calc-range {
  width: 100%;
  accent-color: var(--mx-jade);
}
.calc-slider-bounds {
  display: flex;
  justify-content: space-between;
  font-size: 0.7rem;
  color: var(--mx-muted);
  margin-top: 0.4rem;
}
.calc-accounts-card {
  max-width: 480px;
}
.calc-select {
  margin-top: 0.5rem;
  border-color: var(--mx-border);
  border-radius: var(--mx-radius);
}

/* Stress section */
.calc-stress {
  background: var(--mx-bg);
}
.calc-gauge {
  width: 100%;
  max-width: 320px;
  color: var(--mx-ink);
  filter: drop-shadow(0 4px 12px rgba(0,0,0,0.08));
}
.calc-gauge-arc {
  opacity: 0.85;
}
.calc-stress-badge {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  padding: 5px 16px;
  border-radius: 999px;
  letter-spacing: 0.05em;
}
.calc-stress-badge--low {
  background: color-mix(in srgb, #22c55e 15%, transparent);
  color: #15803d;
}
.calc-stress-badge--mid {
  background: color-mix(in srgb, #eab308 15%, transparent);
  color: var(--mx-warning);
}
.calc-stress-badge--high {
  background: color-mix(in srgb, var(--mx-danger) 12%, transparent);
  color: var(--mx-danger);
}
.calc-stress-desc {
  color: var(--mx-muted);
  font-size: 0.95rem;
}
.calc-stress-stats {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.calc-stress-stats li {
  display: flex;
  justify-content: space-between;
  padding: 0.6rem 1rem;
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-radius: var(--mx-radius);
  font-size: 0.88rem;
}
.calc-stat-label {
  color: var(--mx-muted);
}
.calc-stat-value {
  font-weight: 700;
  color: var(--mx-ink);
}

/* Compare section */
.calc-compare {
  background: var(--mx-surface);
}
.calc-compare-card {
  border-radius: var(--mx-radius-lg);
  padding: 1.75rem;
  height: 100%;
  position: relative;
  overflow: hidden;
  border: 1px solid var(--mx-border);
  box-shadow: var(--mx-shadow);
}
.calc-compare-card--before {
  background: color-mix(in srgb, var(--mx-danger) 5%, var(--mx-surface));
  border-color: color-mix(in srgb, var(--mx-danger) 20%, transparent);
}
.calc-compare-card--after {
  background: color-mix(in srgb, var(--mx-jade) 5%, var(--mx-surface));
  border-color: color-mix(in srgb, var(--mx-jade) 20%, transparent);
}
.calc-compare-card__header {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
}
.calc-compare-card--before .calc-compare-card__header {
  color: var(--mx-danger);
}
.calc-compare-card--after .calc-compare-card__header {
  color: var(--mx-jade);
}
.calc-compare-stats {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.calc-compare-stats li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.9rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--mx-border);
}
.calc-compare-stats li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.calc-compare-label {
  color: var(--mx-muted);
}
.calc-compare-value {
  font-weight: 700;
  color: var(--mx-ink);
  font-variant-numeric: tabular-nums;
}
.calc-compare-savings {
  color: var(--mx-jade);
  font-size: 1rem;
}
.calc-compare-savings-row {
  margin-top: 0.25rem;
}
.calc-compare-card__warning {
  background: color-mix(in srgb, var(--mx-danger) 10%, transparent);
  color: var(--mx-danger);
  font-size: 0.8rem;
  font-weight: 600;
  padding: 0.5rem 0.75rem;
  border-radius: var(--mx-radius);
  margin-top: 1rem;
}

/* Confetti layer */
.calc-confetti-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
.calc-confetti-piece {
  position: absolute;
  top: 0;
  left: var(--c-x, 50%);
  width: 8px;
  height: 8px;
  background: var(--c-color, #0F5C4E);
  border-radius: 2px;
  animation: calcConfettiBurst 1.2s ease-out forwards;
  opacity: 0;
}
@keyframes calcConfettiBurst {
  0%   { transform: translateY(0) rotate(0deg); opacity: 1; }
  60%  { opacity: 1; }
  100% { transform: translateY(160px) rotate(360deg); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .calc-confetti-piece { display: none; }
  .calc-gauge-arc,
  #gaugeNeedle { transition: none !important; }
}

/* Routes */
.calc-routes {
  background: var(--mx-bg);
}
.calc-route-card {
  background: var(--mx-surface);
  border: 1.5px solid var(--mx-border);
  border-radius: var(--mx-radius-lg);
  padding: 1.75rem;
  height: 100%;
  transition: box-shadow var(--mx-dur-slow) var(--mx-ease), border-color var(--mx-dur-slow) var(--mx-ease), transform var(--mx-dur) var(--mx-ease);
  position: relative;
}
.calc-route-card:hover {
  box-shadow: var(--mx-shadow-lg);
  transform: translateY(-3px);
}
.calc-route-card--recommended {
  border-color: var(--mx-jade);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--mx-jade) 18%, transparent), var(--mx-shadow-lg);
}
.calc-route-badge-wrap {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 0.5rem;
}
.calc-route-score-badge {
  font-size: 0.75rem;
  font-weight: 700;
  padding: 3px 12px;
  border-radius: 999px;
}
.calc-route-score-badge--high {
  background: color-mix(in srgb, #22c55e 15%, transparent);
  color: #15803d;
}
.calc-route-score-badge--mid {
  background: color-mix(in srgb, var(--mx-warning) 15%, transparent);
  color: var(--mx-warning);
}
.calc-route-score-badge--low {
  background: color-mix(in srgb, var(--mx-muted) 12%, transparent);
  color: var(--mx-muted);
}
.calc-route-icon {
  font-size: 2rem;
  color: var(--mx-jade);
  margin-bottom: 0.75rem;
}
.calc-route-title {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--mx-ink-dark);
  margin-bottom: 0.5rem;
}
.calc-route-desc {
  font-size: 0.88rem;
  color: var(--mx-muted);
  margin-bottom: 1rem;
}
.calc-route-stats {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  font-size: 0.85rem;
}
.calc-route-stats li {
  display: flex;
  justify-content: space-between;
}
.calc-route-stats li span:first-child {
  color: var(--mx-muted);
}
.calc-route-stats li span:last-child {
  font-weight: 700;
  color: var(--mx-ink);
}
.calc-route-fit-bar-wrap {
  background: var(--mx-gray-100);
  border-radius: 999px;
  height: 6px;
  overflow: hidden;
}
.calc-route-fit-bar {
  height: 100%;
  border-radius: 999px;
  transition: width 400ms var(--mx-ease);
}
.calc-route-fit-bar--high { background: #22c55e; }
.calc-route-fit-bar--mid  { background: var(--mx-warning); }
.calc-route-fit-bar--low  { background: var(--mx-gray-400); }

.calc-recommend-callout,
.calc-consult-callout {
  background: var(--mx-jade-10);
  background: color-mix(in srgb, var(--mx-jade) 8%, var(--mx-surface));
  border: 1px solid color-mix(in srgb, var(--mx-jade) 25%, transparent);
  border-radius: var(--mx-radius);
  padding: 1rem 1.5rem;
  font-size: 0.95rem;
  color: var(--mx-jade-dark);
  font-weight: 500;
}
.calc-consult-callout {
  background: var(--mx-brass-10);
  background: color-mix(in srgb, var(--mx-brass) 8%, var(--mx-surface));
  border-color: color-mix(in srgb, var(--mx-brass) 25%, transparent);
  color: var(--mx-brass);
}

/* Timeline */
.calc-timeline {
  background: var(--mx-surface);
}
.calc-timeline-rows {
  display: flex;
  flex-direction: column;
  gap: 0;
  position: relative;
  padding-left: 2rem;
}
.calc-timeline-rows::before {
  content: "";
  position: absolute;
  left: 0.6rem;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, var(--mx-jade), var(--mx-jade-dark));
  border-radius: 999px;
}
.calc-timeline-row {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--mx-border);
  position: relative;
}
.calc-timeline-row:last-child {
  border-bottom: none;
}
.calc-timeline-row::before {
  content: "";
  position: absolute;
  left: -1.725rem;
  top: 1.85rem;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--mx-jade);
  border: 2px solid var(--mx-surface);
  box-shadow: 0 0 0 2px var(--mx-jade);
}
.calc-timeline-step {
  flex-shrink: 0;
  padding-top: 0.1rem;
}
.calc-timeline-chip {
  display: inline-block;
  background: var(--mx-jade);
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 3px 12px;
  border-radius: 999px;
  white-space: nowrap;
}
.calc-timeline-content h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--mx-ink-dark);
  margin-bottom: 0.35rem;
}
.calc-timeline-content p {
  font-size: 0.88rem;
  color: var(--mx-muted);
  margin: 0;
}

/* Compliance */
.calc-compliance {
  background: var(--mx-gray-50);
  border-top: 1px solid var(--mx-border);
}
.calc-compliance-inner {
  text-align: center;
  max-width: 560px;
  margin: 0 auto;
}
.calc-compliance-badge {
  display: inline-block;
  background: color-mix(in srgb, var(--mx-jade) 10%, transparent);
  color: var(--mx-jade-dark);
  font-weight: 700;
  font-size: 0.9rem;
  padding: 8px 20px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--mx-jade) 25%, transparent);
}
.calc-compliance-mlo {
  font-weight: 700;
  color: var(--mx-ink);
  font-size: 0.95rem;
  margin: 0;
}
.calc-compliance-privacy {
  font-size: 0.82rem;
  color: var(--mx-muted);
  margin: 0;
}

/* FAQ */
.calc-faq {
  background: var(--mx-bg);
}
.calc-accordion .accordion-item {
  border-color: var(--mx-border);
  border-radius: var(--mx-radius) !important;
  margin-bottom: 0.5rem;
  overflow: hidden;
}
.calc-accordion .accordion-button {
  font-weight: 600;
  font-size: 0.95rem;
  background: var(--mx-surface);
  color: var(--mx-ink-dark);
}
.calc-accordion .accordion-button:not(.collapsed) {
  background: color-mix(in srgb, var(--mx-jade) 6%, var(--mx-surface));
  color: var(--mx-jade-dark);
  box-shadow: none;
}
.calc-accordion .accordion-body {
  font-size: 0.9rem;
  color: var(--mx-muted);
  line-height: 1.75;
}

/* Gauge score text color */
.calc-gauge-score-text {
  fill: var(--mx-ink-dark);
}

/* Mobile */
@media (max-width: 767px) {
  .calc-hero {
    padding-top: 4.5rem;
    padding-bottom: 2.5rem;
  }
  .calc-hero-title {
    font-size: 1.8rem;
  }
  .calc-debt-clock {
    min-width: 0;
    width: 100%;
  }
  .calc-debt-clock__value {
    font-size: 1.6rem;
  }
  .calc-slider-card {
    padding: 1.1rem;
  }
  .calc-compare-card {
    padding: 1.25rem;
  }
  .calc-route-card {
    padding: 1.25rem;
  }
  .calc-gauge {
    max-width: 260px;
  }
  .calc-sticky-inner {
    justify-content: center;
  }
  .calc-sticky-info {
    text-align: center;
  }
  .calc-timeline-rows {
    padding-left: 1.5rem;
  }
}

/* === /Calculator === */

/* ── Phase 3 Chip Input ─────────────── */
.calc-value-display{font-size:2rem;font-weight:800;color:var(--mx-ink-dark);display:block;margin:.25rem 0}
.calc-chip-custom{background:none;border:0;color:var(--mx-jade);font-size:.85rem;padding:.25rem .5rem;margin-bottom:.5rem;cursor:pointer}
.calc-chip-custom[aria-expanded="true"]{color:var(--mx-brass)}
.calc-chip-group{display:none;flex-wrap:wrap;gap:8px;margin-top:.75rem}
.calc-chip{min-height:44px;flex:1 1 calc(33.33% - 8px);padding:.6rem .4rem;
  background:#fff;border:1px solid var(--mx-border);border-radius:12px;
  font-weight:600;font-size:.9rem;color:var(--mx-ink-dark);cursor:pointer;
  transition:all .15s var(--mx-ease);min-width:80px}
.calc-chip:hover{border-color:var(--mx-jade)}
.calc-chip:focus-visible{outline:none;box-shadow:var(--mx-focus-ring)}
.calc-chip.is-active{background:var(--mx-jade);color:#fff;border-color:var(--mx-jade)}
.calc-custom-input-wrap{margin-top:.75rem}
.calc-custom-input{font-size:1.1rem;padding:.75rem}
.calc-custom-input-wrap[hidden]{display:none}

@media (max-width:767px){
  .calc-range,.calc-slider-bounds{display:none}
  .calc-chip-group{display:flex}
  .calc-chip-custom{display:inline-block}
}
@media (min-width:768px){
  .calc-chip-group,.calc-chip-custom,.calc-custom-input-wrap{display:none!important}
}
/* ── /Phase 3 Chip Input ─────────────── */

/* ── P1-1 Consultation card modifier ── */
.calc-compare-card--consultation{
  background:color-mix(in srgb,var(--mx-muted,#6c757d) 8%,var(--mx-surface));
  border-color:color-mix(in srgb,var(--mx-muted,#6c757d) 25%,transparent);
}
.calc-compare-card--consultation .calc-compare-card__header{color:var(--mx-muted,#6c757d)}
/* ── /P1-1 ── */

/* === Calculator Integration (Phase 1) === */

/* B1: Calculator-branded button (brass accent, layered below primary jade) */
.btn-calc {
  background: var(--mx-brass);
  border: 1px solid var(--mx-brass);
  color: #ffffff;
  font-weight: 700;
  letter-spacing: 0.04em;
  min-height: 44px;
  transition: transform var(--mx-dur) var(--mx-ease),
              box-shadow var(--mx-dur) var(--mx-ease),
              background var(--mx-dur) var(--mx-ease);
}

.btn-calc:hover,
.btn-calc:focus {
  background: #6e5428;
  border-color: #6e5428;
  color: #ffffff;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(138, 109, 59, 0.22);
}

.btn-calc:focus-visible {
  outline: none;
  box-shadow: var(--mx-focus-ring);
}

/* R1: Compare card */
.compare-card {
  border-top: 3px solid var(--mx-jade);
  transition: transform var(--mx-dur) var(--mx-ease),
              box-shadow var(--mx-dur) var(--mx-ease);
}

.compare-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--mx-shadow-lg);
}

.compare-card--iva { border-top-color: var(--mx-brass); }
.compare-card--bky { border-top-color: var(--mx-danger); }

.compare-card__head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

.compare-card__tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 10px;
  background: color-mix(in srgb, var(--mx-brass) 15%, #fff);
  color: var(--mx-brass);
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.compare-card--iva .compare-card__tag {
  background: color-mix(in srgb, var(--mx-brass) 15%, #fff);
  color: var(--mx-brass);
}

.compare-card--bky .compare-card__tag {
  background: color-mix(in srgb, var(--mx-danger) 12%, #fff);
  color: var(--mx-danger);
}

.compare-card__head h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 700;
}

.compare-card__lede {
  color: var(--mx-muted);
  margin-bottom: 16px;
  font-size: 0.95rem;
  line-height: 1.65;
}

.compare-card__facts {
  margin: 0 0 20px;
  display: block;
}

.compare-card__facts dt {
  color: var(--mx-jade);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-top: 10px;
}

.compare-card__facts dt:first-child {
  margin-top: 0;
}

.compare-card__facts dd {
  margin: 2px 0 0;
  font-size: 0.9rem;
  line-height: 1.55;
}

/* B2/R1 callout */
.compare-cta-callout {
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 20px 24px;
  background: color-mix(in srgb, var(--mx-brass) 8%, #fff 92%);
  border: 1px solid color-mix(in srgb, var(--mx-brass) 25%, transparent);
  border-radius: 16px;
}

.compare-cta-callout__icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--mx-brass) 18%, #fff);
  color: var(--mx-brass);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
}

.compare-cta-callout__body {
  flex: 1;
  min-width: 0;
}

.compare-cta-callout__title {
  margin: 0 0 4px;
  font-size: 1.1rem;
  font-weight: 700;
}

.compare-cta-callout__desc {
  margin: 0;
  color: var(--mx-muted);
  font-size: 0.92rem;
  line-height: 1.6;
}

@media (max-width: 575.98px) {
  .compare-cta-callout {
    flex-direction: column;
    text-align: center;
    padding: 20px;
  }
  .compare-cta-callout__icon {
    margin: 0 auto;
  }
  .compare-cta-callout .btn-calc {
    width: 100%;
  }
}

@media (max-width: 420px) {
  .hero-section .d-flex.flex-wrap.gap-2 .btn-lg {
    width: 100%;
  }
}

/* === /Calculator Integration === */

/* =========================================================
   Calculator Funnel Rework — Sprint 1-4
   ========================================================= */

/* Sprint 1 — Hero trust chips */
.calc-hero-trust-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.calc-trust-chip {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  background: color-mix(in srgb, var(--mx-jade) 12%, #fff 88%);
  border: 1px solid color-mix(in srgb, var(--mx-jade) 30%, transparent);
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--mx-jade);
  white-space: nowrap;
}

/* Sprint 1 — Route star badge */
.calc-route-star {
  display: inline-block;
  margin-left: 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--mx-brass);
  white-space: nowrap;
}

/* Sprint 1 — Bankruptcy last-resort card */
.compare-card--last-resort {
  border-top: 3px solid var(--mx-danger) !important;
  opacity: 0.88;
}
.compare-card--last-resort:hover {
  transform: none !important;
  box-shadow: none !important;
}
.calc-route-lastresort-tag {
  display: inline-block;
  margin-bottom: 0.6rem;
  padding: 0.2rem 0.7rem;
  background: color-mix(in srgb, var(--mx-danger) 12%, #fff 88%);
  border: 1px solid color-mix(in srgb, var(--mx-danger) 28%, transparent);
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--mx-danger);
  letter-spacing: 0.04em;
}
.calc-route-title--lastresort {
  font-size: 1.05rem !important;
  opacity: 0.85;
}

/* Sprint 1 — Recommend callout urgent */
.calc-consult-urgent {
  background: color-mix(in srgb, var(--mx-danger) 12%, #fff 88%) !important;
  border-color: color-mix(in srgb, var(--mx-danger) 30%, transparent) !important;
  color: var(--mx-danger) !important;
  animation: calcPulse 1.6s ease-in-out infinite;
}

/* Sprint 2 — Route inline CTAs */
.calc-route-inline-cta {
  display: inline-block;
  margin-top: 0.75rem;
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--mx-jade);
  text-decoration: none;
}
.calc-route-inline-cta:hover {
  text-decoration: underline;
  color: var(--mx-jade);
}
.calc-route-inline-cta--muted {
  color: var(--mx-muted);
}
.calc-route-inline-cta--muted:hover {
  color: var(--mx-danger);
  text-decoration: underline;
}

/* Sprint 2 — Sticky bar rework */
.calc-sticky-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1040;
  transform: translateY(100%);
  transition: transform 0.3s ease;
  background: var(--mx-surface);
  border-top: 1px solid var(--mx-border);
  box-shadow: 0 -4px 24px rgba(0,0,0,0.08);
  padding: 0.75rem 0;
  visibility: hidden;
  pointer-events: none;
}
.calc-sticky-bar.is-visible {
  transform: translateY(0);
  visibility: visible;
  pointer-events: auto;
}
.calc-sticky-btns {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  flex-shrink: 0;
}
@media (max-width: 479px) {
  .calc-sticky-btn-label {
    display: none;
  }
  .calc-sticky-btn .bi {
    margin: 0 !important;
    display: inline !important;
  }
  .calc-sticky-btn--secondary .bi {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  main#top {
    padding-bottom: 96px !important;
  }
}

/* Sprint 2 — Stress-adaptive callout */
.calc-stress-callout {
  padding: 0.9rem 1.2rem;
  border-radius: 12px;
  margin-bottom: 1rem;
  font-size: 0.9rem;
  line-height: 1.6;
  font-weight: 500;
}
.calc-stress-callout--low {
  background: #e8f5e9;
  background: color-mix(in srgb, #22c55e 12%, #fff 88%);
  border: 1px solid color-mix(in srgb, #22c55e 30%, transparent);
  color: #166534;
}
.calc-stress-callout--mid {
  background: var(--mx-warning-12);
  background: color-mix(in srgb, var(--mx-warning) 14%, #fff 86%);
  border: 1px solid color-mix(in srgb, var(--mx-warning) 35%, transparent);
  color: #854d0e;
}
.calc-stress-callout--high {
  background: var(--mx-danger-12);
  background: color-mix(in srgb, var(--mx-danger) 12%, #fff 88%);
  border: 1px solid color-mix(in srgb, var(--mx-danger) 28%, transparent);
  color: var(--mx-danger);
}
@media (prefers-reduced-motion: no-preference) {
  .calc-stress-callout--high {
    animation: calcPulse 1.6s ease-in-out infinite;
  }
}

/* Sprint 2 — Pulse keyframe (shared) */
@keyframes calcPulse {
  0%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--mx-danger) 35%, transparent); }
  50% { box-shadow: 0 0 0 6px transparent; }
}

/* Sprint 4 — Exit-save section */
.calc-exit-save {
  background: var(--mx-jade-10);
  background: color-mix(in srgb, var(--mx-jade) 5%, var(--mx-surface) 95%);
  border-top: 1px solid var(--mx-border);
}
.calc-exit-summary {
  font-size: 1rem;
  font-weight: 600;
  color: var(--mx-ink-dark);
}
.calc-exit-lane {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--mx-surface);
  border: 1px solid var(--mx-border);
  border-radius: 16px;
  height: 100%;
}
.calc-exit-lane__icon {
  font-size: 1.8rem;
  color: var(--mx-jade);
  margin-bottom: 0.75rem;
}
.calc-exit-lane__title {
  font-size: 1.05rem;
  font-weight: 700;
  margin-bottom: 0.4rem;
}
.calc-exit-lane__desc {
  font-size: 0.88rem;
  color: var(--mx-muted);
  line-height: 1.6;
  margin-bottom: 1rem;
  flex: 1;
}

/* Sprint 3 — Prefill notice in new-form */
#prefillNotice {
  padding: 0.6rem 1rem;
  background: color-mix(in srgb, var(--mx-jade) 10%, #fff 90%);
  border: 1px solid color-mix(in srgb, var(--mx-jade) 25%, transparent);
  border-radius: 8px;
  font-size: 0.88rem;
  margin-bottom: 1rem;
  color: var(--mx-jade);
}
#tryCalcBanner {
  padding: 0.5rem 1rem;
  background: color-mix(in srgb, var(--mx-brass) 10%, #fff 90%);
  border: 1px solid color-mix(in srgb, var(--mx-brass) 25%, transparent);
  border-radius: 8px;
  font-size: 0.88rem;
  margin-bottom: 1.25rem;
  color: var(--mx-brass);
}
#tryCalcBanner a {
  color: var(--mx-brass);
  font-weight: 700;
}

/* === Phase 5 Big Numbers === */

/* A — Savings hero */
.calc-savings-hero{text-align:center;margin:0 0 2rem;padding:1.5rem 1rem}
.calc-savings-hero__label{font-size:.9rem;color:var(--mx-muted);margin:0 0 .5rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}
.calc-savings-hero__number{
  font-size:clamp(3rem, 12vw, 6rem);
  font-weight:900;
  color:var(--mx-brass);
  line-height:1;
  margin:0;
  letter-spacing:-0.02em;
  font-variant-numeric:tabular-nums
}
.calc-savings-hero__sub{font-size:.8rem;color:var(--mx-muted);margin:.75rem 0 0}

/* B — Debt clock enlarged */
.calc-debt-clock__value{
  font-size:clamp(3rem, 10vw, 7rem) !important;
  font-weight:900 !important;
  color:var(--mx-brass) !important;
  line-height:1 !important;
  text-shadow:0 0 20px rgba(138,109,59,0.3);
}
.calc-debt-clock__value.is-pulse{
  transform:scale(.97);
  transition:transform .2s
}
@media (prefers-reduced-motion: reduce){
  .calc-debt-clock__value.is-pulse{transform:none}
}

/* C — Reduction showcase */
.calc-reduction{background:linear-gradient(180deg,#fff 0%, var(--mx-gray-50) 100%);padding:3rem 1rem}
.calc-reduction__label{font-size:.9rem;color:var(--mx-muted);letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin:0 0 .5rem}
.calc-reduction__pct{
  font-size:clamp(4rem, 16vw, 8rem);
  font-weight:900;
  color:var(--mx-jade);
  line-height:.9;
  margin:0;
  letter-spacing:-0.02em;
  font-variant-numeric:tabular-nums
}
.calc-reduction__detail{font-size:1rem;color:var(--mx-text);margin:1rem 0 0}
.calc-reduction__detail span:first-of-type{text-decoration:line-through;color:var(--mx-muted);margin-right:.5rem}
.calc-reduction__arrow{color:var(--mx-jade);margin:0 .5rem;font-weight:700}

/* D — Sticky savings emphasis */
.calc-sticky-savings{
  font-size:clamp(1rem, 3vw, 1.4rem);
  font-weight:900;
  color:var(--mx-brass);
  white-space:nowrap
}
.calc-sticky-route{font-size:.85rem;color:var(--mx-muted);font-weight:600}
@media (max-width: 479px){
  .calc-sticky-savings{font-size:1rem}
  .calc-sticky-route{display:none}
}

/* E — Exit-save big number */
.calc-exit-bignum{text-align:center;margin:0 0 2rem}
.calc-exit-bignum__label{font-size:.9rem;color:var(--mx-muted);letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin:0 0 .5rem}
.calc-exit-bignum__number{
  font-size:clamp(2.5rem, 10vw, 5rem);
  font-weight:900;
  color:var(--mx-jade);
  line-height:1;margin:0
}
.calc-exit-bignum__chips{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin:.75rem 0 0}
.calc-exit-chip{background:var(--mx-gray-100);color:var(--mx-text);padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600}

/* F — Urgent badge */
.calc-urgent-badge{
  display:flex;flex-direction:column;align-items:center;gap:.25rem;
  padding:1rem 1.5rem;background:var(--mx-danger);color:#fff;
  border-radius:16px;text-align:center;
  animation:calcUrgentPulse 1.2s ease-in-out infinite
}
.calc-urgent-badge i{font-size:1.5rem}
.calc-urgent-badge__label{font-size:clamp(1.5rem, 5vw, 2.25rem);font-weight:900;line-height:1}
.calc-urgent-badge__detail{font-size:.8rem;opacity:.9}
@keyframes calcUrgentPulse{
  0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(180,35,24,0.4)}
  50%{transform:scale(1.04);box-shadow:0 0 0 14px rgba(180,35,24,0)}
}
@media (prefers-reduced-motion: reduce){
  .calc-urgent-badge{animation:none}
}

/* === /Calculator Funnel Rework === */
