:root {
  --ink: #10182b;
  --muted: #58657b;
  --line: #dfe5ee;
  --soft: #f4f7fb;
  --panel: #ffffff;
  --accent: #2657ff;
  --accent-dark: #1839ad;
  --fresh: #b7f25d;
  --shadow: 0 22px 60px rgba(21, 35, 69, 0.12);
  --radius: 22px;
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: #fff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
}
a { color: inherit; }
img { max-width: 100%; }
.container { width: min(calc(100% - 32px), var(--max)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: -999px; top: 8px; background: var(--ink); color: #fff; padding: 8px 12px; z-index: 100; }
.skip-link:focus { left: 8px; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid rgba(223, 229, 238, 0.8);
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(14px);
}
.nav-wrap { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-weight: 850; letter-spacing: -0.03em; font-size: 1.15rem; }
.brand-mark { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; background: var(--ink); color: #fff; font-size: 0.74rem; letter-spacing: -0.04em; }
.nav-links { display: flex; align-items: center; gap: 22px; font-size: 0.94rem; }
.nav-links a { text-decoration: none; color: var(--muted); font-weight: 650; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: var(--ink); }
.nav-actions { display: flex; align-items: center; gap: 10px; }
.language-select { border: 1px solid var(--line); border-radius: 999px; background: #fff; padding: 9px 30px 9px 12px; color: var(--ink); font: inherit; font-size: 0.88rem; }
.nav-toggle { display: none; border: 1px solid var(--line); background: #fff; border-radius: 10px; padding: 8px 10px; font: inherit; }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: 999px; padding: 12px 19px; text-decoration: none; font-weight: 760; border: 1px solid transparent; transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { background: var(--accent); color: #fff; box-shadow: 0 10px 26px rgba(38, 87, 255, 0.25); }
.button-primary:hover { background: var(--accent-dark); }
.button-secondary { border-color: var(--line); background: #fff; color: var(--ink); }
.button-small { padding: 9px 15px; font-size: 0.88rem; }

.hero { padding: 74px 0 52px; overflow: hidden; background: radial-gradient(circle at 83% 5%, rgba(183, 242, 93, 0.25), transparent 25%), radial-gradient(circle at 15% 2%, rgba(38, 87, 255, 0.12), transparent 24%); }
.hero-grid { display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 62px; align-items: center; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 16px; padding: 6px 10px; border-radius: 999px; background: #eaf0ff; color: var(--accent-dark); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }
h1 { max-width: 780px; margin: 0; font-size: clamp(2.55rem, 6vw, 5.5rem); line-height: 0.98; letter-spacing: -0.065em; }
.hero p.lead { max-width: 680px; margin: 24px 0 0; color: var(--muted); font-size: clamp(1.04rem, 1.8vw, 1.25rem); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.microcopy { margin-top: 15px; color: var(--muted); font-size: 0.87rem; }

.dashboard { position: relative; padding: 18px; border: 1px solid rgba(223, 229, 238, 0.8); border-radius: 28px; background: rgba(255,255,255,0.88); box-shadow: var(--shadow); transform: rotate(1deg); }
.dashboard-top { display: flex; align-items: center; justify-content: space-between; padding: 6px 4px 16px; }
.dashboard-dots { display: flex; gap: 5px; }
.dashboard-dots span { width: 7px; height: 7px; border-radius: 50%; background: #c7cfdb; }
.dashboard-pill { border-radius: 999px; background: #eef3fb; color: var(--muted); font-size: 0.72rem; padding: 5px 9px; }
.metric-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.metric { min-height: 96px; border-radius: 16px; padding: 14px; background: var(--soft); }
.metric strong { display: block; margin-top: 12px; font-size: 1.4rem; letter-spacing: -0.04em; }
.metric span { color: var(--muted); font-size: 0.72rem; }
.trip-list { margin-top: 12px; padding: 6px 14px; border-radius: 18px; background: #fff; border: 1px solid var(--line); }
.trip-row { display: grid; grid-template-columns: 10px 1fr auto; align-items: center; gap: 10px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.trip-row:last-child { border-bottom: 0; }

/* Article trip rows use two columns (content + status), unlike the dashboard rows that also include a dot. */
.article-trip-list--compact .trip-row {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}
.article-trip-list--compact .trip-row > div { min-width: 0; }
.article-trip-list--compact .trip-row > div > strong {
  display: block;
  font-size: .95rem;
  line-height: 1.25;
}
.article-trip-list--compact .trip-row > div > span {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}
.article-trip-list--compact .trip-status {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  max-width: 220px;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--soft);
  color: var(--ink);
  font-size: .76rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: right;
  white-space: normal;
}
@media (max-width: 640px) {
  .article-trip-list--compact .trip-row { grid-template-columns: 1fr; gap: 8px; }
  .article-trip-list--compact .trip-status { justify-self: start; text-align: left; }
}
.trip-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--accent); }
.trip-name { font-weight: 760; font-size: 0.88rem; }
.trip-meta { display: block; color: var(--muted); font-size: 0.72rem; }
.tag { padding: 5px 8px; border-radius: 999px; background: #eaf7d6; color: #385d08; font-size: 0.68rem; font-weight: 800; }

/* Tax treatment comparison used in fiscal guide articles */
.tax-treatment { margin: 24px 0 28px; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.tax-treatment-head, .tax-treatment-row { display: grid; grid-template-columns: minmax(0, 2fr) minmax(120px, .85fr) minmax(150px, 1.15fr); gap: 22px; align-items: center; }
.tax-treatment-head { padding: 11px 18px; background: var(--soft); border-bottom: 1px solid var(--line); color: var(--muted); font-size: .76rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.tax-treatment-row { min-height: 68px; padding: 15px 18px; border-bottom: 1px solid var(--line); }
.tax-treatment-row:last-child { border-bottom: 0; }
.tax-treatment-route { min-width: 0; line-height: 1.35; }
.tax-treatment-route strong { display: block; color: var(--ink); }
.tax-treatment-rule { min-width: 0; color: var(--muted); line-height: 1.35; overflow-wrap: anywhere; }
.tax-treatment-status { justify-self: start; display: inline-flex; align-items: center; min-height: 30px; padding: 5px 10px; border-radius: 999px; font-size: .82rem; font-weight: 800; line-height: 1; }
.tax-treatment-status.is-business { background: #eaf7d6; color: #385d08; }
.tax-treatment-status.is-private { background: #fff0ef; color: #9a2d28; }
@media (max-width: 640px) {
  .tax-treatment { margin-top: 20px; }
  .tax-treatment-head { display: none; }
  .tax-treatment-row { grid-template-columns: 1fr auto; gap: 10px 14px; padding: 16px; }
  .tax-treatment-route { grid-column: 1 / -1; padding-bottom: 2px; }
  .tax-treatment-status { grid-column: 1; }
  .tax-treatment-rule { grid-column: 2; align-self: center; text-align: right; }
  .tax-treatment-status::before, .tax-treatment-rule::before { content: attr(data-label) ": "; margin-right: 5px; color: var(--muted); font-weight: 600; }
  .tax-treatment-status::before { color: inherit; opacity: .75; }
}

.section { padding: 76px 0; }
.section-soft { background: var(--soft); }
.section-dark { background: var(--ink); color: #fff; }
.section-head { max-width: 740px; margin-bottom: 34px; }
.section-head h2 { margin: 0; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.04; letter-spacing: -0.05em; }
.section-head p { margin: 16px 0 0; color: var(--muted); font-size: 1.05rem; }
.section-dark .section-head p { color: #b7c1d3; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.card { border: 1px solid var(--line); border-radius: var(--radius); padding: 26px; background: var(--panel); }
.card h3 { margin: 13px 0 8px; font-size: 1.25rem; letter-spacing: -0.025em; }
.card p { margin: 0; color: var(--muted); }
.card-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: #eaf0ff; color: var(--accent); font-weight: 900; }
.card-link { display: inline-flex; margin-top: 18px; color: var(--accent-dark); text-decoration: none; font-weight: 780; }

.steps { counter-reset: steps; display: grid; gap: 12px; }
.step { counter-increment: steps; display: grid; grid-template-columns: 54px 1fr; gap: 18px; align-items: start; padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.step::before { content: counter(steps); width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: var(--ink); color: #fff; font-weight: 850; }
.step h3 { margin: 2px 0 5px; }
.step p { margin: 0; color: var(--muted); }

.feature-hero { padding: 62px 0 44px; background: linear-gradient(180deg, #f7f9fd 0%, #fff 100%); }
.feature-hero h1 { max-width: 920px; font-size: clamp(2.5rem, 5.5vw, 4.9rem); }
.feature-hero .lead { max-width: 760px; color: var(--muted); font-size: 1.17rem; }
.breadcrumbs { margin-bottom: 18px; font-size: 0.82rem; color: var(--muted); }
.breadcrumbs a { text-decoration: none; }
.prose { max-width: 800px; }
.prose h2 { margin-top: 2.4em; font-size: clamp(1.7rem, 3vw, 2.4rem); letter-spacing: -0.035em; line-height: 1.15; }
.prose h3 { margin-top: 1.8em; }
.prose p, .prose li { color: #344156; }
.prose ul { padding-left: 1.2rem; }
.prose .notice { margin: 28px 0; border-left: 4px solid var(--accent); background: #eef3ff; border-radius: 0 14px 14px 0; padding: 16px 18px; }

.plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.plan { position: relative; border: 1px solid var(--line); border-radius: 26px; padding: 30px; background: #fff; }
.plan-featured { border-color: var(--accent); box-shadow: 0 16px 46px rgba(38, 87, 255, 0.12); }
.plan-label { position: absolute; right: 18px; top: 18px; border-radius: 999px; background: var(--fresh); padding: 5px 9px; font-size: 0.72rem; font-weight: 850; }
.plan h2 { margin: 0 0 5px; }
.price { margin: 18px 0; font-size: 2.5rem; font-weight: 900; letter-spacing: -0.055em; }
.price small { display: block; margin-top: 6px; font-size: 0.95rem; line-height: 1.35; color: var(--muted); font-weight: 600; letter-spacing: 0; }
.check-list { list-style: none; padding: 0; margin: 20px 0 0; }
.check-list li { position: relative; padding: 8px 0 8px 28px; color: #344156; }
.check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--accent); font-weight: 900; }

.faq { border-top: 1px solid var(--line); }
details { border-bottom: 1px solid var(--line); padding: 4px 0; }
summary { cursor: pointer; list-style: none; padding: 22px 40px 22px 0; font-weight: 780; position: relative; }
summary::-webkit-details-marker { display: none; }
summary::after { content: "+"; position: absolute; right: 4px; top: 18px; font-size: 1.4rem; color: var(--accent); }
details[open] summary::after { content: "−"; }
details p { margin: -4px 0 22px; color: var(--muted); max-width: 820px; }

.guide-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.guide-card { text-decoration: none; border: 1px solid var(--line); border-radius: var(--radius); padding: 26px; background: #fff; transition: transform 160ms ease, box-shadow 160ms ease; }
.guide-card:hover { transform: translateY(-2px); box-shadow: 0 14px 35px rgba(21,35,69,0.1); }
.guide-card span { color: var(--accent-dark); font-size: 0.76rem; font-weight: 850; text-transform: uppercase; letter-spacing: 0.04em; }
.guide-card h2, .guide-card h3 { margin: 9px 0 8px; font-size: 1.5rem; letter-spacing: -0.03em; }
.guide-card p { margin: 0; color: var(--muted); }

.cta-band { display: flex; justify-content: space-between; align-items: center; gap: 28px; padding: 36px; border-radius: 28px; background: var(--ink); color: #fff; }
.cta-band h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 2.7rem); letter-spacing: -0.045em; line-height: 1.08; }
.cta-band p { color: #bdc8da; margin: 10px 0 0; }

.site-footer { padding: 54px 0 26px; background: #0c1324; color: #fff; }
.footer-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 42px; }
.footer-grid h3 { margin: 0 0 12px; font-size: 0.86rem; color: #c4cede; }
.footer-grid p, .footer-grid a { color: #9eabc0; font-size: 0.88rem; }
.footer-grid a { display: block; text-decoration: none; margin: 8px 0; }
.footer-bottom { margin-top: 38px; padding-top: 20px; border-top: 1px solid #253049; display: flex; justify-content: space-between; gap: 18px; color: #8190a8; font-size: 0.78rem; }

@media (max-width: 900px) {
  .hero-grid, .grid-3, .grid-2, .footer-grid { grid-template-columns: 1fr; }
  .hero { padding-top: 52px; }
  .dashboard { transform: none; max-width: 680px; }
  .nav-toggle { display: inline-flex; }
  .nav-links { display: none; position: absolute; left: 16px; right: 16px; top: 72px; padding: 18px; flex-direction: column; align-items: flex-start; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow); }
  .nav-links.open { display: flex; }
  .nav-actions .button { display: none; }
  .cta-band { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 640px) {
  .section { padding: 58px 0; }
  .metric-grid, .plan-grid, .guide-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; }
  .language-select { max-width: 86px; }
  .card, .plan { padding: 22px; }
}

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


.brand-logo { display: block; width: auto; height: 34px; }
.brand-logo-footer { height: 40px; }
.hero-logo { height: clamp(34px, 4vw, 52px); width: auto; margin-bottom: 18px; }
.dashboard-note { margin-top: 14px; color: var(--muted); font-size: 0.8rem; }
.screenshot-grid { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: 18px; align-items: stretch; }
.shot-card { margin: 0; border: 1px solid var(--line); border-radius: 24px; overflow: hidden; background: #fff; box-shadow: var(--shadow); }
.shot-card img { width: 100%; height: 100%; display: block; object-fit: cover; }
.shot-large { grid-row: span 2; }
.shot-card figcaption { padding: 16px 18px 18px; display: grid; gap: 6px; }
.shot-card figcaption strong { font-size: 1rem; letter-spacing: -0.02em; }
.shot-card figcaption span { color: var(--muted); font-size: 0.9rem; }
.fineprint { margin-top: 18px; color: var(--muted); font-size: 0.88rem; }
.visual-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 18px; align-items: stretch; }
.insight-card { border: 1px solid var(--line); border-radius: 24px; padding: 24px; background: #fff; box-shadow: var(--shadow); }
.insight-card h2 { margin: 0 0 10px; font-size: clamp(1.6rem, 3vw, 2.2rem); line-height: 1.05; letter-spacing: -0.04em; }
.insight-card p { margin: 0 0 14px; color: var(--muted); }
.label-list { list-style: none; padding: 0; margin: 18px 0 0; display: grid; gap: 10px; }
.label-list li { padding: 12px 14px; border-radius: 14px; background: var(--soft); font-weight: 650; color: #344156; }
@media (max-width: 900px) {
  .screenshot-grid, .visual-grid { grid-template-columns: 1fr; }
  .shot-large { grid-row: auto; }
  .brand-logo { height: 28px; }
}


/* v5 tesla-inspired refinement */
:root {
  --ink: #171a20;
  --muted: #5c5e62;
  --line: #e6e8eb;
  --soft: #f7f7f7;
  --panel: #ffffff;
  --accent: #2f66ff;
  --accent-dark: #1d4fe0;
  --fresh: #dbe6ff;
  --shadow: 0 10px 30px rgba(23, 26, 32, 0.08);
  --radius: 18px;
  --max: 1200px;
}
body {
  font-family: Inter, "Helvetica Neue", Arial, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  background: #fff;
}
.container { width: min(calc(100% - 40px), var(--max)); }
.site-header {
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,0.96);
  backdrop-filter: blur(10px);
}
.nav-wrap { min-height: 78px; }
.site-header .container { width: min(calc(100% - 40px), 1400px); }
.brand, .nav-actions { flex-shrink: 0; }
.nav-actions .button { white-space: nowrap; }
.nav-links { gap: 28px; }
.nav-links a { color: var(--ink); font-weight: 620; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: var(--ink); opacity: 1; }
.language-select { border-radius: 999px; padding: 10px 30px 10px 14px; }
.button {
  border-radius: 999px;
  padding: 12px 22px;
  font-weight: 700;
}
.button-primary {
  background: var(--ink);
  color: #fff;
  box-shadow: none;
}
.button-primary:hover { background: #000; }
.button-secondary {
  background: #fff;
  border-color: #cfd3d8;
}
.hero {
  padding: 86px 0 72px;
  background: linear-gradient(180deg, #f7f7f7 0%, #ffffff 100%);
}
.hero-grid { gap: 72px; }
.eyebrow {
  background: #eef1f5;
  color: var(--ink);
  font-weight: 700;
  letter-spacing: 0.08em;
}
.eyebrow::before { background: var(--accent); }
h1 {
  font-size: clamp(3rem, 6.8vw, 6.2rem);
  letter-spacing: -0.075em;
}
.hero p.lead, .section-head p, .prose p, .prose li, .card p, .guide-card p, .microcopy { color: var(--muted); }
.dashboard {
  transform: none;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 12px 40px rgba(23,26,32,0.08);
}
.metric, .trip-list, .card, .guide-card, .plan, .step, .shot-card, .insight-card {
  border-radius: 18px;
}
.section { padding: 84px 0; }
.section-soft { background: #f7f7f7; }
.feature-hero {
  background: linear-gradient(180deg, #f7f7f7 0%, #ffffff 100%);
}
.card {
  border-color: var(--line);
  box-shadow: 0 6px 18px rgba(23,26,32,0.04);
}
.card-icon {
  background: #f1f4fa;
  color: var(--accent);
}
.cta-band {
  border-radius: 24px;
  background: var(--ink);
  color: #fff;
}
.cta-band p { color: rgba(255,255,255,0.72); }
/* Keep primary CTAs clearly visible on dark CTA bands across every locale. */
.cta-band .button-primary {
  background: #fff;
  color: var(--ink);
  border-color: rgba(255,255,255,0.92);
  box-shadow: 0 8px 24px rgba(0,0,0,0.18);
}
.cta-band .button-primary:hover {
  background: #f2f3f5;
  color: var(--ink);
}
.cta-band .button-primary:focus-visible {
  outline: 3px solid rgba(255,255,255,0.48);
  outline-offset: 3px;
}
.site-footer {
  padding: 60px 0 30px;
  background: #ffffff;
  color: var(--ink);
  border-top: 1px solid var(--line);
}
.footer-grid h3 { color: var(--ink); }
.footer-grid p, .footer-grid a { color: var(--muted); }
.footer-bottom {
  border-top: 1px solid var(--line);
  color: #7b7f86;
}
.brand-logo { height: 30px; }
.brand-logo-footer { height: 34px; }
.hero-logo { height: clamp(38px, 4.2vw, 56px); }
.shot-card, .insight-card { box-shadow: 0 10px 24px rgba(23,26,32,0.06); }
.summary-card, .faq details { background: #fff; }
.summary-card {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(23,26,32,.06);
}
.summary-card .eyebrow {
  display: inline-flex;
  margin: 0 0 14px;
}
.summary-card > strong {
  display: block;
  font-size: 1.25rem;
  line-height: 1.32;
  margin-bottom: 14px;
}
.summary-card ul {
  margin: 0 0 18px;
  padding-left: 1.2rem;
}
.summary-card li + li { margin-top: 8px; }
.summary-card .button { width: 100%; }
.summary-card .text-link { margin-top: 14px; }
@media (max-width: 900px) {
  .hero { padding: 56px 0 52px; }
  .nav-links { background: #fff; }
}


/* Reusable content data tables — works in both .article-prose and .container.prose */
.table-wrap {
  margin: 26px 0 30px;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(23,26,32,.035);
  -webkit-overflow-scrolling: touch;
}
.table-wrap table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0;
}
.table-wrap th,
.table-wrap td {
  padding: 15px 17px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--line);
  line-height: 1.45;
}
.table-wrap th {
  background: #f4f6f8;
  color: var(--ink);
  font-size: .82rem;
  font-weight: 750;
  letter-spacing: .01em;
}
.table-wrap td {
  color: var(--ink);
  font-size: .94rem;
}
.table-wrap tbody tr:last-child td { border-bottom: 0; }
.table-wrap tbody tr:hover { background: #fafbfc; }
.table-wrap td strong { white-space: nowrap; }
@media (max-width: 640px) {
  .table-wrap { margin-inline: -2px; border-radius: 15px; }
  .table-wrap table { min-width: 620px; }
  .table-wrap th,
  .table-wrap td { padding: 13px 14px; }
}


/* Article route examples and two-column comparisons */
.article-prose .trip-classification-demo,
.article-prose .trip-demo {
  margin: 26px 0 32px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(23,26,32,.035);
}
.article-prose .trip-classification-demo > div {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 15px 17px;
  border-bottom: 1px solid var(--line);
}
.article-prose .trip-demo > div {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  align-items: start;
  padding: 16px 18px;
  border-bottom: 1px solid var(--line);
}
.article-prose .trip-classification-demo > div:last-child,
.article-prose .trip-demo > div:last-child { border-bottom: 0; }
.article-prose .trip-classification-demo span {
  color: var(--muted);
  font-size: .86rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.article-prose .trip-demo span {
  display: block;
  color: var(--ink);
  font-size: 1.02rem;
  font-weight: 650;
  line-height: 1.4;
  white-space: normal;
}
.article-prose .trip-classification-demo strong,
.article-prose .trip-demo strong {
  min-width: 0;
  font-size: .98rem;
  line-height: 1.35;
}
.article-prose .trip-demo strong {
  display: block;
}
.article-prose .trip-classification-demo small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 260px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f1f4fa;
  color: #555b66;
  font-size: .78rem;
  line-height: 1.25;
  text-align: right;
}
.article-prose .trip-demo small {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  justify-self: start;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f1f4fa;
  color: #555b66;
  font-size: .78rem;
  line-height: 1.3;
  text-align: left;
}
.article-prose div.comparison-table {
  margin: 26px 0 32px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(23,26,32,.035);
}
.article-prose div.comparison-table .comparison-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.article-prose div.comparison-table .comparison-row > span {
  padding: 14px 17px;
  border-bottom: 1px solid var(--line);
  line-height: 1.4;
}
.article-prose div.comparison-table .comparison-row > span + span {
  border-left: 1px solid var(--line);
}
.article-prose div.comparison-table .comparison-row:last-child > span { border-bottom: 0; }
.article-prose div.comparison-table .comparison-head > span {
  background: #f4f6f8;
  color: var(--ink);
  font-size: .84rem;
  font-weight: 750;
}
@media (max-width: 640px) {
  .article-prose .trip-classification-demo > div {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 7px 12px;
    align-items: start;
  }
  .article-prose .trip-demo > div {
    gap: 7px;
    padding: 15px 16px;
  }
  .article-prose .trip-classification-demo small {
    grid-column: 2;
    justify-self: start;
    max-width: 100%;
    text-align: left;
  }
  .article-prose div.comparison-table .comparison-row {
    grid-template-columns: 1fr;
  }
  .article-prose div.comparison-table .comparison-row > span {
    border-bottom: 0;
  }
  .article-prose div.comparison-table .comparison-row > span + span {
    border-left: 0;
    border-bottom: 1px solid var(--line);
    padding-top: 0;
    color: var(--muted);
  }
  .article-prose div.comparison-table .comparison-head > span {
    padding-top: 12px;
    padding-bottom: 12px;
    color: var(--ink);
  }
  .article-prose div.comparison-table .comparison-head > span + span {
    padding-top: 12px;
    color: var(--ink);
  }
}

/* Finland SEO article + charging savings calculator */
.article-container { max-width: 980px; }
.article-hero h1 { max-width: 980px; }
.article-meta { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 24px; color: var(--muted); font-size: 0.88rem; }
.article-grid, .article-layout { display: grid; grid-template-columns: minmax(0, 760px) 280px; gap: 54px; align-items: start; }
.article-grid > *, .article-layout > * { min-width: 0; }
.article-prose { max-width: none; }
.article-intro { font-size: 1.18rem; line-height: 1.75; color: var(--ink) !important; }
.article-takeaway, .example-box { margin: 30px 0; padding: 22px 24px; border-radius: 18px; background: #f4f6f8; border: 1px solid var(--line); }
.article-takeaway { display: grid; gap: 7px; }
.example-box > strong { display: block; margin-bottom: 8px; }
.example-box p { margin: 0; }
.example-box p + p { margin-top: 10px; }
.article-aside { position: relative; }
.sticky-card { position: sticky; top: 102px; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 10px 30px rgba(23,26,32,.06); }
.sticky-card > strong { display: block; font-size: 1.25rem; line-height: 1.3; margin-bottom: 14px; }
.sticky-card ol { margin: 0 0 20px; padding-left: 1.2rem; color: var(--muted); }
.sticky-card .button { width: 100%; }
.text-link { display: block; margin-top: 16px; text-decoration: none; font-weight: 700; }
.savings-table-wrap { overflow-x: auto; margin: 24px 0; }
.savings-table { width: 100%; border-collapse: collapse; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
.savings-table th, .savings-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--line); }
.savings-table th { background: #f4f6f8; font-size: .86rem; }
.savings-table tr:last-child td { border-bottom: 0; }
.calculator-cta { margin: 38px 0; padding: 28px; border-radius: 22px; background: #171a20; color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.calculator-cta h2 { margin: 0; color: #fff; }
.calculator-cta p { color: rgba(255,255,255,.72); }
.calculator-cta .eyebrow { background: rgba(255,255,255,.1); color: #fff; }
.calculator-cta .button-primary { background: #fff; color: #171a20; flex: 0 0 auto; }
.article-faq { margin-top: 22px; }
.source-list a { color: var(--ink); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.guide-card-featured { border-color: #bcc8e8; box-shadow: 0 10px 28px rgba(23,26,32,.06); }

.calculator-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(320px, .8fr); gap: 28px; align-items: start; }
.calculator-panel { border: 1px solid var(--line); border-radius: 22px; background: #fff; overflow: hidden; }
.calculator-section { padding: 28px; border-bottom: 1px solid var(--line); }
.calculator-section:last-child { border-bottom: 0; }
.calculator-section h2 { margin: 0 0 18px; font-size: 1.45rem; letter-spacing: -.025em; }
.calculator-help { margin: -6px 0 18px; color: var(--muted); font-size: .92rem; }
.calculator-fields { display: grid; gap: 12px; }
.calculator-fields label { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px 0; border-bottom: 1px solid #eef0f2; font-weight: 650; }
.calculator-fields label:last-child { border-bottom: 0; }
.calculator-fields label span { display: inline-flex; align-items: center; justify-content: flex-end; gap: 7px; color: var(--muted); white-space: nowrap; font-weight: 500; }
.calculator-fields input { width: 108px; padding: 10px 11px; border: 1px solid #cdd1d6; border-radius: 10px; font: inherit; text-align: right; color: var(--ink); background: #fff; }
.calculator-fields input:focus { outline: 2px solid rgba(47,102,255,.22); border-color: #2f66ff; }
.calculator-results { position: sticky; top: 102px; padding: 28px; border-radius: 22px; background: #171a20; color: #fff; }
.calculator-results .eyebrow { background: rgba(255,255,255,.1); color: #fff; }
.result-primary { padding-bottom: 24px; border-bottom: 1px solid rgba(255,255,255,.14); }
.result-primary span, .result-grid span, .saving-breakdown span { display: block; color: rgba(255,255,255,.68); font-size: .84rem; }
.result-primary strong { display: block; margin: 7px 0 0; font-size: clamp(2.4rem, 5vw, 4rem); letter-spacing: -.06em; line-height: 1; }
.result-primary small { color: rgba(255,255,255,.6); }
.result-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.14); }
.result-grid strong { display: block; margin-top: 4px; font-size: 1.25rem; }
.result-grid small { color: rgba(255,255,255,.55); }
.saving-breakdown { display: grid; gap: 12px; padding: 22px 0; }
.saving-breakdown div { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.saving-breakdown span { max-width: 70%; }
.saving-breakdown strong { white-space: nowrap; }
.calculator-disclaimer { margin: 0; color: rgba(255,255,255,.58); font-size: .78rem; line-height: 1.5; }

@media (max-width: 950px) {
  .article-grid, .article-layout, .calculator-layout { grid-template-columns: 1fr; }
  .article-aside { display: none; }
  .calculator-results { position: static; }
}
@media (max-width: 640px) {
  .article-meta { flex-direction: column; gap: 4px; }
  .calculator-cta { flex-direction: column; align-items: flex-start; }
  .calculator-fields label { align-items: flex-start; flex-direction: column; gap: 7px; }
  .calculator-fields label span { width: 100%; justify-content: space-between; }
  .calculator-fields input { width: 130px; }
  .result-grid { grid-template-columns: 1fr 1fr; }
}
.calculator-fields select { width: 150px; padding: 10px 34px 10px 11px; border: 1px solid #cdd1d6; border-radius: 10px; font: inherit; color: var(--ink); background: #fff; }
.calculator-fields select:focus { outline: 2px solid rgba(47,102,255,.22); border-color: #2f66ff; }
@media (max-width: 640px) { .calculator-fields select { width: 180px; } }


/* French article metadata and route examples */
.hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin-top: 20px;
}
.hero-meta span {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.25;
}
.fact-check {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: .84rem;
  font-weight: 650;
}
.trip-example-list {
  margin: 26px 0 30px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(23,26,32,.035);
}
.trip-example-list > div {
  display: grid;
  grid-template-columns: minmax(190px, .9fr) minmax(0, 1.25fr);
  gap: 12px 22px;
  align-items: start;
  padding: 15px 17px;
  border-bottom: 1px solid var(--line);
}
.trip-example-list > div:last-child { border-bottom: 0; }
.trip-example-list strong,
.trip-example-list span { display: block; }
.trip-example-list strong { line-height: 1.4; }
.trip-example-list span { color: var(--muted); line-height: 1.45; }
@media (max-width: 640px) {
  .hero-meta { gap: 7px; }
  .hero-meta span { width: 100%; border-radius: 12px; }
  .trip-example-list > div { grid-template-columns: 1fr; gap: 5px; padding: 14px 16px; }
}

/* Sweden mileage pillar */
.threshold-panel { margin: 38px 0; padding: 28px; border: 1px solid var(--line); border-radius: 22px; background: var(--soft); }
.threshold-panel > div:first-child { margin-bottom: 18px; }
.threshold-panel h2 { margin-bottom: 0; }
.threshold-panel .card { background: #fff; }
.calculator-fields select[data-de-tax-calc="period"] { width: 260px; }
@media (max-width: 640px) { .calculator-fields select[data-de-tax-calc="period"] { width: 100%; } }

/* UK Advisory Electric Rate cards */
.aer-rate-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding: 0;
  border: 0;
  background: transparent;
}
.aer-rate-panel > div {
  margin: 0 !important;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(23,26,32,0.06);
}
.aer-rate-panel h2 {
  margin: 6px 0 8px;
  font-size: clamp(2rem, 4vw, 2.75rem);
  line-height: 1;
}
.aer-rate-panel p:last-child { margin-bottom: 0; }
@media (max-width: 700px) {
  .aer-rate-panel { grid-template-columns: 1fr; }
}


/* v121/v432: keep long localized navigation readable on tablet / small-laptop widths */
.nav-links a { white-space: nowrap; }
@media (max-width: 1380px) {
  .nav-toggle { display: inline-flex; }
  .nav-links { display: none; position: absolute; left: 16px; right: 16px; top: 78px; z-index: 40; padding: 18px; flex-direction: column; align-items: flex-start; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow); }
  .nav-links.open { display: flex; }
  .nav-links.open a { white-space: normal; }
  .nav-actions .button { display: none; }
}


/* v433: Early Access two-step modal — no hidden-scroll dependency */
html.early-access-open { overflow: hidden; }
.early-access-backdrop[hidden] { display: none !important; }
.early-access-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 12px;
  background: rgba(10,12,16,.68);
  backdrop-filter: blur(7px);
}
.early-access-dialog {
  position: relative;
  width: min(100%, 560px);
  max-height: calc(100dvh - 24px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  padding: clamp(22px, 4vw, 30px);
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(0,0,0,.28);
}
.early-access-dialog h2 {
  margin: 4px 44px 7px 0;
  font-size: clamp(1.58rem, 4vw, 2.05rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}
.early-access-intro { margin: 0 0 18px; color: var(--muted); line-height: 1.45; }
.early-access-close {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: var(--soft);
  color: var(--ink);
  font-size: 1.65rem;
  line-height: 1;
  cursor: pointer;
}
.early-access-topline { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-right:48px; }
.early-access-topline .eyebrow { margin:0; }
.early-access-progress { display:inline-flex; align-items:center; gap:7px; color:var(--muted); font-size:.78rem; font-weight:800; letter-spacing:.03em; }
.early-access-progress-dots { display:inline-flex; gap:5px; }
.early-access-progress-dots i { display:block; width:7px; height:7px; border-radius:999px; background:#d9dde3; }
.early-access-progress-dots i.is-active { width:18px; background:var(--accent); }
.early-access-form { display: grid; gap: 13px; }
.early-access-step { display:grid; gap:13px; }
.early-access-step[hidden] { display:none !important; }
.early-access-honeypot { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
.early-access-honeypot input { width: 1px !important; height: 1px !important; padding: 0 !important; border: 0 !important; }
.early-access-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.early-access-row > label,
.early-access-form > label:not(.early-access-consent) { display: grid; gap: 6px; font-weight: 700; }
.early-access-row > label > span { font-size:.94rem; }
.early-access-form input[type="email"], .early-access-form select {
  width: 100%;
  min-height: 44px;
  padding: 9px 11px;
  border: 1px solid #cdd1d6;
  border-radius: 11px;
  background: #fff;
  color: var(--ink);
  font: inherit;
}
.early-access-form input:focus, .early-access-form select:focus { outline: 2px solid rgba(47,102,255,.22); border-color: #2f66ff; }
.early-access-interest { display: grid; gap: 7px; margin: 0; padding: 0; border: 0; }
.early-access-interest legend { margin: 0 0 1px; font-weight: 700; }
.early-access-interest label {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 9px;
  align-items: center;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid #d7dbe0;
  border-radius: 11px;
  background: #fff;
  color: var(--ink);
  font-weight: 600;
  cursor: pointer;
}
.early-access-interest label:has(input:checked) { border-color: #2f66ff; background: rgba(47,102,255,.055); box-shadow: 0 0 0 2px rgba(47,102,255,.08); }
.early-access-interest input { width: 17px; height: 17px; margin: 0; accent-color: #2f66ff; }
.early-access-next { width:100%; justify-content:center; margin-top:2px; }
.early-access-review {
  display:grid;
  gap:9px;
  margin:2px 0 14px;
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--soft);
}
.early-access-review-row { display:grid; grid-template-columns:80px minmax(0,1fr); gap:12px; align-items:start; }
.early-access-review-row span { color:var(--muted); font-size:.8rem; font-weight:700; }
.early-access-review-row strong { min-width:0; overflow-wrap:anywhere; font-size:.9rem; line-height:1.35; }
.early-access-turnstile { min-height: 65px; display: flex; align-items:center; justify-content: center; margin: 2px 0 3px; }
.early-access-consent { display: grid; grid-template-columns: 20px 1fr; gap: 9px; align-items: start; color: var(--muted); font-size: .83rem; line-height: 1.42; font-weight: 500; }
.early-access-consent input { width: 18px; height: 18px; margin-top: 1px; }
.early-access-consent a { color: var(--ink); font-weight: 700; }
.early-access-status { min-height: 1.15em; margin: -2px 0 0; color: #b42318; font-size: .83rem; font-weight: 650; }
.early-access-status:empty { min-height: 0; margin: 0; }
.early-access-step-actions { display:grid; grid-template-columns:auto minmax(0,1fr); gap:10px; }
.early-access-back { white-space:nowrap; }
.early-access-submit { width: 100%; justify-content: center; }
.early-access-submit:disabled { opacity: .6; cursor: wait; }
.early-access-success { text-align: center; padding: 24px 4px 6px; }
.early-access-success h2 { margin: 12px 0 8px; }
.early-access-success p { color: var(--muted); margin: 0 0 24px; }
.early-access-check { display: inline-grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: #e8f7ee; color: #137a3d; font-size: 1.8rem; font-weight: 800; }

@media (max-width: 560px) {
  .early-access-backdrop { padding: 6px; align-items: center; }
  .early-access-dialog { width: 100%; max-height: calc(100dvh - 12px); padding: 20px 18px; border-radius: 22px; }
  .early-access-dialog h2 { font-size: clamp(1.48rem, 7.2vw, 1.9rem); }
  .early-access-intro { margin-bottom:15px; font-size:.94rem; }
  .early-access-row { grid-template-columns: 1fr 1fr; gap: 9px; }
  .early-access-row > label > span { font-size:.82rem; line-height:1.2; }
  .early-access-form input[type="email"], .early-access-form select { min-height:42px; padding:8px 10px; }
  .early-access-interest label { min-height:38px; padding:7px 9px; font-size:.91rem; }
  .early-access-review-row { grid-template-columns:56px minmax(0,1fr); gap:9px; }
  .early-access-step-actions { grid-template-columns: auto minmax(0,1fr); }
}

@media (max-height: 700px) {
  .early-access-dialog { padding-top:18px; padding-bottom:18px; }
  .early-access-dialog h2 { margin-top:2px; margin-bottom:5px; font-size:1.55rem; }
  .early-access-intro { margin-bottom:12px; font-size:.9rem; line-height:1.35; }
  .early-access-form { gap:10px; }
  .early-access-form input[type="email"], .early-access-form select { min-height:40px; padding-block:7px; }
  .early-access-interest { gap:5px; }
  .early-access-interest label { min-height:35px; padding:6px 9px; font-size:.88rem; }
  .early-access-interest legend { font-size:.92rem; }
  .early-access-turnstile { min-height:62px; margin:0; }
  .early-access-consent { font-size:.78rem; line-height:1.32; }
  .early-access-review { margin-bottom:10px; padding:11px 13px; }
}


/* v151 homepage hero layout refinement */
.hero {
  padding: 62px 0 72px;
}
.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr);
  gap: clamp(36px, 5vw, 72px);
  align-items: center;
}
.hero-grid > :first-child {
  min-width: 0;
}
.hero .eyebrow {
  margin: 0 0 18px;
}
.hero h1 {
  max-width: 10ch;
  margin: 0;
  font-size: clamp(2.9rem, 5.3vw, 5rem);
  line-height: 0.96;
  letter-spacing: -0.065em;
  text-wrap: balance;
}
.hero p.lead {
  max-width: 60ch;
  margin-top: 22px;
  font-size: clamp(1rem, 1.5vw, 1.2rem);
}
.dashboard {
  width: 100%;
  max-width: 620px;
  margin-left: auto;
}
.hero-logo {
  display: none;
}
@media (max-width: 1100px) {
  .hero h1 {
    font-size: clamp(2.8rem, 6vw, 4.5rem);
    max-width: 11ch;
  }
}
@media (max-width: 900px) {
  .hero {
    padding: 52px 0 52px;
  }
  .hero-grid {
    grid-template-columns: 1fr;
  }
  .hero h1 {
    max-width: 12ch;
    font-size: clamp(2.6rem, 10vw, 4rem);
  }
  .dashboard {
    max-width: 680px;
    margin-left: 0;
  }
}


/* v152 hero headline tuning */
.feature-hero h1 {
  max-width: none;
}
.hero h1 {
  font-size: clamp(2.45rem, 4.45vw, 4.25rem);
}
@media (max-width: 1100px) {
  .hero h1 {
    font-size: clamp(2.45rem, 5.3vw, 4rem);
  }
}
@media (max-width: 900px) {
  .hero h1 {
    font-size: clamp(2.4rem, 9vw, 3.5rem);
  }
}


/* v153 header and section heading tuning */
.brand-logo {
  height: 38px;
}
.brand-logo-footer {
  height: 38px;
}
.section-head {
  max-width: 980px;
}
@media (max-width: 900px) {
  .brand-logo {
    height: 32px;
  }
  .brand-logo-footer {
    height: 34px;
  }
  .section-head {
    max-width: none;
  }
}

/* v196: guide data storytelling components */
.section-tight-top { padding-top: 34px; }
.compact-head { max-width: 860px; }
.market-kpi-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.market-kpi {
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(23,26,32,.045);
}
.market-kpi span,
.market-kpi small { display: block; color: var(--muted); }
.market-kpi span { font-size: .82rem; font-weight: 700; }
.market-kpi strong { display: block; margin: 8px 0 4px; font-size: clamp(2rem, 4vw, 3.1rem); line-height: 1; letter-spacing: -.055em; }
.market-kpi small { font-size: .82rem; }
.price-story {
  margin-top: 28px;
  padding: 26px 28px 22px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(23,26,32,.055);
}
.price-story-head { display: flex; justify-content: space-between; gap: 20px; align-items: baseline; margin-bottom: 18px; }
.price-story-head span { color: var(--muted); font-size: .78rem; }
.price-story-head strong { font-size: .92rem; }
.price-bars {
  height: 220px;
  display: grid;
  grid-template-columns: repeat(24, minmax(4px, 1fr));
  gap: 5px;
  align-items: end;
  padding: 14px 0 0;
  border-bottom: 1px solid #cfd4da;
  background: linear-gradient(to bottom, rgba(23,26,32,.035) 1px, transparent 1px);
  background-size: 100% 25%;
}
.price-bars.half-hour-bars { grid-template-columns: repeat(26, minmax(4px, 1fr)); }
.price-bars i {
  display: block;
  height: var(--h);
  min-height: 12px;
  border-radius: 7px 7px 3px 3px;
  background: #cfd4da;
  transition: transform .15s ease;
}
.price-bars i.selected { background: var(--accent); box-shadow: 0 6px 14px rgba(47,102,255,.18); }
.price-axis { display: flex; justify-content: space-between; padding-top: 9px; color: var(--muted); font-size: .74rem; font-variant-numeric: tabular-nums; }
.price-legend { display: flex; flex-wrap: wrap; gap: 12px 20px; margin-top: 18px; color: var(--muted); font-size: .8rem; }
.price-legend span { display: inline-flex; align-items: center; gap: 7px; }
.legend-dot { width: 10px; height: 10px; border-radius: 3px; background: #cfd4da; }
.legend-dot.selected-dot { background: var(--accent); }
.charge-window-demo {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 26px 0 30px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--line);
}
.charge-window-demo > div { padding: 20px 18px; background: #fff; }
.charge-window-demo span,
.charge-window-demo small { display: block; color: var(--muted); }
.charge-window-demo span { font-size: .78rem; font-weight: 700; }
.charge-window-demo strong { display: block; margin: 8px 0 5px; font-size: 1.35rem; letter-spacing: -.03em; }
.charge-window-demo small { font-size: .76rem; }
@media (max-width: 760px) {
  .market-kpi-grid { grid-template-columns: 1fr; }
  .market-kpi { display: grid; grid-template-columns: 1fr auto; gap: 2px 20px; align-items: center; }
  .market-kpi span, .market-kpi small { grid-column: 1; }
  .market-kpi strong { grid-column: 2; grid-row: 1 / span 2; margin: 0; font-size: 2.25rem; }
  .price-story { padding: 20px 16px 18px; }
  .price-story-head { align-items: flex-start; flex-direction: column; gap: 5px; }
  .price-bars { height: 170px; gap: 3px; }
  .charge-window-demo { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 440px) {
  .price-bars { height: 150px; gap: 2px; }
  .charge-window-demo { grid-template-columns: 1fr; }
}


/* step03 business mileage guide */
.trip-flow { display:grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; gap: 10px; align-items:center; margin: 28px 0 34px; }
.trip-flow-step { min-width:0; padding:18px 16px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(23,26,32,.04); }
.trip-flow-step span { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:999px; background:#10182b; color:#fff; font-size:.78rem; font-weight:800; margin-bottom:12px; }
.trip-flow-step strong,.trip-flow-step small { display:block; }
.trip-flow-step strong { line-height:1.25; }
.trip-flow-step small { color:var(--muted); margin-top:6px; font-size:.78rem; }
.trip-flow-arrow { color:var(--muted); font-weight:800; }
.table-note { margin-top:-10px; color:var(--muted); font-size:.86rem; }
.check-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:26px 0 34px; }
.check-card { padding:22px 20px; border:1px solid var(--line); border-radius:18px; background:#f8f9fa; }
.check-card strong { display:block; margin-bottom:12px; }
.check-card ul { margin:0; padding-left:1.1rem; color:var(--muted); }
.check-card li + li { margin-top:7px; }
.article-figure { margin:32px 0 38px; }
.article-figure img { width:100%; height:auto; display:block; border:1px solid var(--line); border-radius:22px; box-shadow:0 14px 36px rgba(23,26,32,.07); }
.article-figure figcaption { margin-top:10px; color:var(--muted); font-size:.84rem; line-height:1.5; }
.classification-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:24px 0; }
.classification-grid > div { padding:18px 16px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.classification-grid span,.classification-grid strong,.classification-grid small { display:block; }
.classification-grid span { color:var(--muted); font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.classification-grid strong { margin:7px 0 5px; }
.classification-grid small { color:var(--muted); font-size:.76rem; line-height:1.4; }
.month-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin:28px 0; border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#fff; }
.month-summary > div { padding:22px 18px; border-right:1px solid var(--line); }
.month-summary > div:last-child { border-right:0; }
.month-summary strong,.month-summary span { display:block; }
.month-summary strong { font-size:2rem; letter-spacing:-.04em; }
.month-summary span { color:var(--muted); margin-top:5px; font-size:.78rem; line-height:1.35; }
.month-summary-focus { background:#f4f6f8; }
.article-steps { padding-left:1.25rem; }
.article-steps li { padding-left:.25rem; margin:0 0 14px; }
.source-list { padding-left:1.1rem; }
.source-list li + li { margin-top:10px; }
@media (max-width: 900px) {
  .trip-flow { grid-template-columns:1fr; gap:8px; }
  .trip-flow-arrow { transform:rotate(90deg); text-align:center; }
  .check-grid { grid-template-columns:1fr; }
  .classification-grid { grid-template-columns:1fr 1fr; }
  .month-summary { grid-template-columns:1fr 1fr; }
  .month-summary > div { border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
  .month-summary > div:nth-child(2n) { border-right:0; }
  .month-summary > div:nth-last-child(-n+2) { border-bottom:0; }
}
@media (max-width: 560px) {
  .classification-grid { grid-template-columns:1fr; }
  .month-summary { grid-template-columns:1fr; }
  .month-summary > div,.month-summary > div:nth-child(2n) { border-right:0; border-bottom:1px solid var(--line); }
  .month-summary > div:last-child { border-bottom:0; }
}

/* v398: visual threshold + compact process cards for tax/usage guides */
.threshold-visual { margin: 30px 0 38px; padding: 24px; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 10px 30px rgba(23,26,32,.05); }
.threshold-visual-header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; }
.threshold-visual-header h3 { margin:2px 0 0; font-size:1.2rem; }
.threshold-visual-header > strong { color:var(--muted); font-size:.88rem; white-space:nowrap; }
.threshold-meter-row + .threshold-meter-row { margin-top:22px; }
.threshold-meter-label { display:flex; justify-content:space-between; gap:16px; margin-bottom:8px; font-size:.94rem; }
.threshold-meter-label strong { color:var(--ink); }
.threshold-track { position:relative; height:16px; border-radius:999px; background:#e9edf2; overflow:visible; }
.threshold-track > span { display:block; width:var(--fill); height:100%; border-radius:inherit; background:var(--accent); }
.threshold-track > i { position:absolute; left:var(--marker); top:-5px; width:2px; height:26px; background:var(--ink); border-radius:2px; transform:translateX(-1px); }
.threshold-scale { position:relative; display:grid; grid-template-columns:1fr 1fr 1fr; margin-top:7px; color:var(--muted); font-size:.76rem; }
.threshold-scale span:nth-child(2) { text-align:center; font-weight:700; color:var(--ink); }
.threshold-scale span:last-child { text-align:right; }
.process-grid { display:grid; gap:14px; margin:24px 0 30px; }
.process-grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.process-card { padding:18px; border:1px solid var(--line); border-radius:18px; background:var(--soft); }
.process-card > span { display:inline-grid; place-items:center; width:30px; height:30px; margin-bottom:12px; border-radius:50%; background:var(--ink); color:#fff; font-weight:800; font-size:.82rem; }
.process-card strong { display:block; margin-bottom:6px; }
.process-card p { margin:0; color:var(--muted); font-size:.91rem; line-height:1.5; }
@media (max-width: 760px) { .threshold-visual-header { display:block; } .threshold-visual-header > strong { display:block; margin-top:8px; } .process-grid-4 { grid-template-columns:1fr 1fr; } }
@media (max-width: 480px) { .process-grid-4 { grid-template-columns:1fr; } .threshold-visual { padding:20px 16px; } .threshold-scale { font-size:.69rem; } }


/* v422-v431: shared core-page visual components */


.product-story-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: 24px;
  align-items: stretch;
}
.product-story-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(23,26,32,.05);
}
.product-story-copy h2 {
  margin: 0 0 12px;
  font-size: clamp(1.9rem, 3.4vw, 3rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}
.product-story-copy > p {
  margin: 0;
  color: var(--muted);
}
.product-story-copy .label-list { margin-top: 22px; }
.product-story-figure {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(23,26,32,.06);
}
.product-story-figure img {
  display: block;
  width: 100%;
  height: auto;
}
.product-story-figure figcaption {
  padding: 15px 18px 18px;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.45;
}
.product-story-figure figcaption strong {
  display: block;
  margin-bottom: 4px;
  color: var(--ink);
  font-size: .96rem;
}
.logic-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin: 26px 0 34px;
}
.logic-card {
  padding: 21px 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
}
.logic-card .logic-state {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 9px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: var(--soft);
  color: var(--ink);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.logic-card strong,
.logic-card span { display: block; }
.logic-card strong { margin-bottom: 7px; line-height: 1.25; }
.logic-card span { color: var(--muted); font-size: .86rem; line-height: 1.5; }
.charging-story {
  margin: 30px 0 38px;
  padding: 26px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #f8f9fa;
}
.charging-story-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: flex-end;
  margin-bottom: 18px;
}
.charging-story-head h3 { margin: 0; font-size: 1.3rem; }
.charging-story-head p { margin: 4px 0 0; color: var(--muted); font-size: .88rem; }
.charging-story-head strong { white-space: nowrap; font-size: .86rem; }

@media (max-width: 900px) {
.product-story-grid { grid-template-columns: 1fr; }
  .logic-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
.product-story-copy { padding: 22px 20px; }
  .charging-story { padding: 20px 16px; }
  .charging-story-head { display: block; }
  .charging-story-head strong { display: block; margin-top: 8px; }
}


/* v431: global core-page hero/header system */
.hero h1 {
  max-width: 14ch;
}
.site-header .brand-logo {
  height: 80px;
  margin-block: -12px;
}
@media (max-width: 900px) {
  .hero h1 { max-width: 13ch; }
  .site-header .brand-logo { height: 72px; margin-block: -10px; }
}
@media (max-width: 560px) {
  .hero h1 { max-width: none; }
  .site-header .brand-logo { height: 42px; margin-block: 0; }
  .nav-wrap { gap: 8px; }
  .language-select { max-width: 92px; padding-left: 10px; padding-right: 22px; }
}
@media (max-width: 370px) {
  .site-header .brand-logo { height: 38px; }
  .nav-wrap { gap: 6px; }
  .language-select { max-width: 80px; padding-left: 8px; padding-right: 18px; }
}
@media (max-width: 340px) {
  .site-header .brand-logo { height: 32px; }
  .nav-wrap { gap: 4px; }
  .language-select { max-width: 72px; padding-left: 6px; padding-right: 16px; }
}

/* v431: small-screen containment for shared visual components */
.product-story-grid > *,
.visual-grid > * {
  min-width: 0;
}
@media (max-width: 560px) {
  .eyebrow {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 420px) {
  .early-access-review-row { grid-template-columns:1fr; gap:2px; }
  .early-access-review-row span { font-size:.74rem; }
  .early-access-review-row strong { font-size:.88rem; }
}
@media (max-height: 600px) {
  .early-access-dialog { padding-top:14px; padding-bottom:14px; }
  .early-access-dialog h2 { font-size:1.42rem; line-height:1.05; }
  .early-access-intro { margin-bottom:9px; font-size:.86rem; line-height:1.3; }
  .early-access-form, .early-access-step { gap:8px; }
  .early-access-interest label { min-height:33px; padding-block:5px; }
}


/* v434: Early Access audit fixes — tiny screens and accessible completion state */
@media (max-width: 340px) {
  .early-access-row { grid-template-columns: 1fr; }
}

@media (max-width: 360px) and (max-height: 600px) {
  .early-access-backdrop { padding: 4px; }
  .early-access-dialog {
    max-height: calc(100dvh - 8px);
    padding: 10px 12px;
    border-radius: 18px;
  }
  .early-access-close {
    top: 8px;
    right: 8px;
    width: 34px;
    height: 34px;
    font-size: 1.45rem;
  }
  .early-access-topline { padding-right: 38px; }
  .early-access-dialog h2 {
    margin-right: 38px;
    font-size: 1.34rem;
    line-height: 1.04;
  }
  .early-access-intro { display: none; }
  .early-access-form,
  .early-access-step { gap: 6px; }
  .early-access-row { gap: 6px; }
  .early-access-form input[type="email"],
  .early-access-form select { min-height: 38px; padding-block: 6px; }
  .early-access-interest { gap: 4px; }
  .early-access-interest label { min-height: 31px; padding: 4px 8px; font-size: .84rem; }
  .early-access-interest legend { font-size: .88rem; line-height: 1.2; }
  .early-access-next { min-height: 40px; }
}

/* v437: compact answer block above FI mileage calculator */
.section-compact { padding: 30px 0 0; }

/* v467: keep CTA-band buttons readable and consistent across locales */
.cta-band > div {
  min-width: 0;
  flex: 1 1 auto;
}
.cta-band > .button,
.cta-band .button-primary {
  flex: 0 0 auto;
  white-space: nowrap;
  line-height: 1.1;
  text-align: center;
}

/* v560 NL visual audit: allow short text badges in icon slots without clipping */
.card-icon.card-icon-wide {
  width: auto;
  min-width: 38px;
  padding: 0 9px;
  font-size: .72rem;
  line-height: 1;
  letter-spacing: .01em;
}

/* v574: Danish long compound words on very narrow screens */
@media (max-width: 340px) {
  html[lang^="da"] .feature-hero h1 {
    font-size: 2rem;
    letter-spacing: -0.05em;
  }
}


/* v581 ES horas valle visual */
.valley-timeline {
  margin-top: 26px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--panel);
  box-shadow: var(--shadow);
}
.valley-hours {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  margin: 0 0 8px;
  color: var(--muted);
  font-size: .78rem;
  font-variant-numeric: tabular-nums;
}
.valley-hours span:last-child { text-align: right; }
.valley-track {
  display: flex;
  min-height: 92px;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid var(--line);
}
.valley-seg {
  flex: var(--w) 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 10px 6px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.18);
}
.valley-seg:last-child { border-right: 0; }
.valley-seg b { font-size: .9rem; }
.valley-seg small { font-size: .72rem; opacity: .8; }
.valley-seg.is-valley { background: #dff5e9; color: #173e2d; }
.valley-seg.is-flat { background: #f4efcf; color: #514719; }
.valley-seg.is-peak { background: #f8ded8; color: #5e2b22; }
.valley-weekend {
  margin-top: 14px;
  min-height: 60px;
  border-radius: 16px;
  background: #dff5e9;
  color: #173e2d;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 18px;
}
.valley-weekend span { font-weight: 700; }
.visual-note { margin: 14px 0 0; color: var(--muted); font-size: .9rem; }
@media (max-width: 680px) {
  .valley-timeline { padding: 16px; border-radius: 18px; }
  .valley-track { min-height: 78px; }
  .valley-seg b { font-size: .72rem; }
  .valley-seg small { font-size: .62rem; }
  .valley-weekend { align-items: flex-start; flex-direction: column; gap: 3px; }
}


/* v582 ES PVPC mix visual */
.pvpc-mix { margin-top: 26px; padding: 24px; border: 1px solid var(--line); border-radius: 24px; background: var(--panel); box-shadow: var(--shadow); }
.pvpc-mix-track { display: flex; min-height: 118px; overflow: hidden; border-radius: 18px; border: 1px solid var(--line); }
.pvpc-mix-track > span { flex: var(--share) 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; padding: 18px 10px; text-align: center; }
.pvpc-mix-track b { font-size: clamp(1.7rem, 4vw, 2.8rem); letter-spacing: -.05em; line-height: 1; }
.pvpc-mix-track small { font-weight: 700; opacity: .82; }
.pvpc-mix-forward { background: #dfe8ff; color: #18376f; }
.pvpc-mix-spot { background: #e5f5ec; color: #173e2d; }
.pvpc-mix-caption { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 14px; color: var(--muted); font-size: .82rem; text-align: center; }
@media (max-width: 600px) { .pvpc-mix { padding: 16px; border-radius: 18px; } .pvpc-mix-track { min-height: 96px; } .pvpc-mix-track small { font-size: .72rem; } .pvpc-mix-caption { grid-template-columns: 1fr; text-align: left; gap: 4px; } }

/* v605 US audit: IRS mileage rate page */
.irs-rate-hero {
  background:
    radial-gradient(circle at 85% 18%, rgba(183,242,93,.22), transparent 25%),
    linear-gradient(180deg, #f7f9fd 0%, #fff 100%);
}
.irs-rate-hero strong { color: var(--ink); }
.irs-rate-switch {
  display: grid;
  grid-template-columns: minmax(0,1fr) 92px minmax(0,1fr);
  gap: 16px;
  align-items: stretch;
  margin: 30px 0 24px;
}
.irs-rate-card {
  position: relative;
  display: flex;
  min-height: 190px;
  flex-direction: column;
  justify-content: center;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(23,26,32,.05);
}
.irs-rate-card-current {
  border-color: rgba(38,87,255,.28);
  background: linear-gradient(145deg, #fff 0%, #eef3ff 100%);
}
.irs-rate-badge {
  position: absolute;
  top: 18px;
  right: 18px;
  padding: 5px 9px;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .02em;
}
.irs-rate-period { color: var(--muted); font-size: .9rem; font-weight: 750; }
.irs-rate-value { margin: 5px 0 0; font-size: clamp(3.1rem,7vw,5.3rem); line-height: .95; letter-spacing: -.07em; }
.irs-rate-unit { margin-top: 8px; color: var(--muted); font-size: .9rem; }
.irs-rate-change { display: grid; place-items: center; align-content: center; gap: 4px; color: var(--muted); text-align: center; }
.irs-rate-change span { font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.irs-rate-change strong { color: var(--accent); font-size: 2rem; line-height: 1; }
.irs-example-grid { margin: 22px 0; }
.irs-example-grid .card { min-height: 180px; }
.check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:24px 0; }
@media (max-width: 760px) {
  .irs-rate-switch { grid-template-columns: 1fr; }
  .irs-rate-change { min-height: 48px; }
  .irs-rate-change strong { transform: rotate(90deg); }
  .irs-rate-card { min-height: 170px; }
  .check-grid { grid-template-columns:1fr; }
}

/* v606 US audit: mileage reimbursement page */
.reimbursement-hero {
  background:
    radial-gradient(circle at 86% 18%, rgba(183,242,93,.2), transparent 24%),
    linear-gradient(180deg, #f7f9fd 0%, #fff 100%);
}
.reimbursement-question-grid { margin: 22px 0 34px; }
.reimbursement-question-grid .card { min-height: 210px; }
.reimbursement-flow {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  margin: 26px 0 18px;
}
.reimbursement-step {
  position: relative;
  min-height: 170px;
  padding: 22px 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(23,26,32,.04);
}
.reimbursement-step > span {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  margin-bottom: 22px;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  font-size: .82rem;
  font-weight: 800;
}
.reimbursement-step strong { display:block; margin-bottom: 6px; font-size: 1rem; }
.reimbursement-step small { color: var(--muted); line-height: 1.45; }
.reimbursement-step:not(:last-child)::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -19px;
  z-index: 2;
  width: 24px;
  color: var(--accent);
  font-size: 1.35rem;
  font-weight: 800;
  text-align: center;
  transform: translateY(-50%);
}
.example-math { margin: 14px 0 4px; color: var(--muted); font-variant-numeric: tabular-nums; }
.example-total { display:block; font-size: clamp(1.8rem,4vw,2.6rem); letter-spacing: -.05em; }
@media (max-width: 900px) {
  .reimbursement-flow { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .reimbursement-step:nth-child(2)::after { display:none; }
}
@media (max-width: 560px) {
  .reimbursement-flow { grid-template-columns: 1fr; }
  .reimbursement-step { min-height: 0; }
  .reimbursement-step::after { display:none !important; }
}


/* v607 US audit: mileage deduction page */
.deduction-hero {
  background:
    radial-gradient(circle at 86% 18%, rgba(183,242,93,.2), transparent 24%),
    linear-gradient(180deg, #f7f9fd 0%, #fff 100%);
}
.deduction-status-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:26px; }
.deduction-status-card { min-height:220px; padding:24px; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 8px 24px rgba(23,26,32,.04); }
.deduction-status-card.is-yes { border-color:rgba(38,87,255,.24); background:linear-gradient(145deg,#fff 0%,#eef3ff 100%); }
.deduction-status-label { display:inline-block; margin-bottom:22px; padding:6px 10px; border-radius:999px; background:#eef1f6; color:var(--muted); font-size:.72rem; font-weight:800; letter-spacing:.02em; }
.deduction-status-card.is-yes .deduction-status-label { background:var(--accent); color:#fff; }
.deduction-status-card h3 { margin-bottom:10px; }
.deduction-method-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:26px 0 0; }
.deduction-method-card { min-height:410px; padding:28px; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:0 10px 28px rgba(23,26,32,.05); }
.deduction-method-standard { border-color:rgba(38,87,255,.25); background:linear-gradient(145deg,#fff 0%,#eef3ff 100%); }
.deduction-big-number { display:block; margin-top:22px; font-size:clamp(3.2rem,7vw,5.2rem); line-height:.9; letter-spacing:-.07em; }
.deduction-big-caption { display:block; max-width:290px; margin:10px 0 22px; color:var(--muted); font-size:.86rem; line-height:1.4; }
.deduction-method-card ul { margin-top:22px; }
.deduction-formula { display:flex; min-height:105px; align-items:center; justify-content:center; gap:12px; margin:24px 0 22px; padding:18px; border-radius:18px; background:#f5f7fa; text-align:center; }
.deduction-formula strong { max-width:150px; font-size:1.05rem; }
.deduction-formula span { color:var(--accent); font-size:1.5rem; font-weight:800; }
.deduction-shared { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 38px; padding:16px 20px; border-radius:0 0 18px 18px; background:#10182b; color:#fff; }
.deduction-shared span { color:rgba(255,255,255,.72); font-size:.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.deduction-shared strong { text-align:right; }
.deduction-example { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:24px 0 12px; }
.deduction-example > div { display:flex; min-height:115px; flex-direction:column; justify-content:center; padding:20px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.deduction-example span { color:var(--muted); font-size:.84rem; }
.deduction-example strong { margin-top:5px; font-size:2rem; letter-spacing:-.04em; }
.deduction-example-total { grid-column:1/-1; flex-direction:row !important; align-items:center; justify-content:space-between !important; border-color:rgba(38,87,255,.24) !important; background:#eef3ff !important; }
.deduction-example-total strong { font-size:2.5rem; }
.deduction-choice-flow { display:grid; grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr) 42px minmax(0,1fr); align-items:stretch; gap:8px; margin:26px 0 34px; }
.deduction-choice-step { min-height:210px; padding:22px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.deduction-choice-step > span { display:block; margin-bottom:24px; color:var(--accent); font-size:.74rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.deduction-choice-step strong { display:block; margin-bottom:9px; }
.deduction-choice-step p { margin:0; color:var(--muted); font-size:.9rem; }
.deduction-choice-arrow { display:grid; place-items:center; color:var(--accent); font-size:1.5rem; font-weight:800; }
@media (max-width: 900px) {
  .deduction-status-grid { grid-template-columns:1fr; }
  .deduction-status-card { min-height:0; }
  .deduction-choice-flow { grid-template-columns:1fr; }
  .deduction-choice-arrow { min-height:34px; transform:rotate(90deg); }
}
@media (max-width: 700px) {
  .deduction-method-grid { grid-template-columns:1fr; }
  .deduction-method-card { min-height:0; }
  .deduction-shared { align-items:flex-start; flex-direction:column; }
  .deduction-shared strong { text-align:left; }
  .deduction-example { grid-template-columns:1fr; }
  .deduction-example-total { grid-column:auto; align-items:flex-start; flex-direction:column !important; }
  .deduction-formula { flex-direction:column; }
}


/* v608 US audit: mileage log for taxes page */
.mileage-log-hero {
  background:
    radial-gradient(circle at 86% 18%, rgba(183,242,93,.2), transparent 24%),
    linear-gradient(180deg, #f7f9fd 0%, #fff 100%);
}
.log-requirement-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin:28px 0 22px; }
.log-requirement-card { min-height:220px; padding:22px 18px; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:0 8px 24px rgba(23,26,32,.04); }
.log-requirement-card > span { display:grid; width:34px; height:34px; place-items:center; margin-bottom:24px; border-radius:999px; background:var(--accent); color:#fff; font-size:.8rem; font-weight:800; }
.log-requirement-card strong { display:block; margin-bottom:8px; font-size:1rem; }
.log-requirement-card p { margin:0 0 14px; color:var(--muted); font-size:.88rem; }
.log-requirement-card small { color:var(--accent); font-size:.74rem; font-weight:800; }
.log-requirement-human { border-color:rgba(38,87,255,.26); background:linear-gradient(145deg,#fff 0%,#eef3ff 100%); }
.log-requirement-human > span { background:#10182b; }
.log-requirement-human small { color:#10182b; }
.log-split-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:24px 0; }
.log-split-card { min-height:300px; padding:28px; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:0 10px 28px rgba(23,26,32,.05); }
.log-split-auto { border-color:rgba(38,87,255,.25); background:linear-gradient(145deg,#fff 0%,#eef3ff 100%); }
.log-split-card h3 { margin-bottom:18px; }
.log-split-card li { margin-bottom:7px; }
.log-workflow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:26px 0 36px; }
.log-workflow-step { position:relative; min-height:175px; padding:22px 18px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.log-workflow-step > span { display:grid; width:34px; height:34px; place-items:center; margin-bottom:22px; border-radius:999px; background:#10182b; color:#fff; font-size:.8rem; font-weight:800; }
.log-workflow-step strong { display:block; margin-bottom:7px; }
.log-workflow-step p { margin:0; color:var(--muted); font-size:.86rem; }
.log-workflow-step:not(:last-child)::after { content:"→"; position:absolute; top:50%; right:-19px; z-index:2; width:24px; color:var(--accent); font-size:1.35rem; font-weight:800; text-align:center; transform:translateY(-50%); }
@media (max-width: 1000px) {
  .log-requirement-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .log-requirement-card:last-child { grid-column:1/-1; min-height:0; }
  .log-workflow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .log-workflow-step:nth-child(2)::after { display:none; }
}
@media (max-width: 650px) {
  .log-requirement-grid, .log-split-grid, .log-workflow { grid-template-columns:1fr; }
  .log-requirement-card, .log-requirement-card:last-child, .log-split-card, .log-workflow-step { min-height:0; grid-column:auto; }
  .log-workflow-step::after { display:none !important; }
}

/* v610 US audit: Tesla charging cost page */
.charge-cost-hero {
  background:
    radial-gradient(circle at 84% 17%, rgba(183,242,93,.22), transparent 24%),
    linear-gradient(180deg,#f7f9fd 0%,#fff 100%);
}
.charge-hero-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; max-width:980px; margin:28px 0 22px; }
.charge-hero-facts > div { min-height:112px; padding:20px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.9); box-shadow:0 8px 24px rgba(23,26,32,.04); }
.charge-hero-facts span { display:block; margin-bottom:10px; color:var(--muted); font-size:.78rem; font-weight:800; letter-spacing:.02em; text-transform:uppercase; }
.charge-hero-facts strong { font-size:clamp(1.3rem,3vw,2rem); letter-spacing:-.04em; }
.hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.charge-source-note { max-width:850px; margin-top:16px; color:var(--muted); font-size:.78rem; line-height:1.5; }
.charge-calculator { overflow:hidden; margin-top:28px; border:1px solid var(--line); border-radius:28px; background:#fff; box-shadow:0 12px 34px rgba(23,26,32,.06); }
.charge-calc-inputs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:26px; background:#f7f9fd; border-bottom:1px solid var(--line); }
.charge-calc-inputs label > span { display:block; margin-bottom:8px; font-size:.82rem; font-weight:800; }
.charge-input-wrap { display:flex; align-items:center; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:#fff; }
.charge-input-wrap input { width:100%; min-width:0; padding:14px 10px 14px 14px; border:0; outline:none; background:transparent; color:var(--ink); font:inherit; font-weight:800; font-variant-numeric:tabular-nums; }
.charge-input-wrap b { flex:0 0 auto; padding-right:14px; color:var(--muted); font-size:.78rem; }
.charge-calc-results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.charge-calc-results article { min-height:180px; padding:26px; border-right:1px solid var(--line); }
.charge-calc-results article:last-child { border-right:0; }
.charge-calc-results span { display:block; color:var(--muted); font-size:.8rem; font-weight:800; text-transform:uppercase; letter-spacing:.03em; }
.charge-calc-results strong { display:block; margin:12px 0 8px; font-size:clamp(2.3rem,5vw,3.6rem); line-height:.95; letter-spacing:-.07em; font-variant-numeric:tabular-nums; }
.charge-calc-results small { color:var(--muted); }
.charge-calc-note { margin:0; padding:17px 26px; border-top:1px solid var(--line); background:#10182b; color:rgba(255,255,255,.84); font-size:.86rem; }
.charge-calc-note strong { color:#fff; }
.charge-rate-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:25px 0 12px; }
.charge-rate-card { display:flex; min-height:165px; flex-direction:column; justify-content:center; padding:22px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.charge-rate-card.is-benchmark { border-color:rgba(38,87,255,.28); background:linear-gradient(145deg,#fff 0%,#eef3ff 100%); }
.charge-rate-card span { color:var(--muted); font-size:.86rem; font-weight:800; }
.charge-rate-card strong { margin:8px 0 6px; font-size:2.5rem; letter-spacing:-.06em; }
.charge-rate-card small { color:var(--muted); font-size:.74rem; line-height:1.4; }
.charge-source-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:38px 0 54px; }
.charge-source-card { min-height:280px; padding:26px; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:0 8px 24px rgba(23,26,32,.04); }
.charge-source-icon { display:grid; width:42px; height:42px; place-items:center; margin-bottom:24px; border-radius:13px; background:#eef3ff; color:var(--accent); font-size:1.15rem; font-weight:900; }
.charge-source-card h3 { margin-bottom:10px; }
.charge-source-card p { color:var(--muted); }
.charge-explain-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:24px 0 46px; }
.charge-explain-grid > div { min-height:220px; padding:28px; border:1px solid var(--line); border-radius:22px; background:#f7f9fd; }
.charge-explain-grid p { margin-bottom:0; color:var(--muted); }
.charge-visual-grid { margin-top:34px; }
.charge-time-strip { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:24px 0; }
.charge-time-strip span { padding:9px 12px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:.78rem; font-weight:800; }
.charge-time-strip span.is-cheap { border-color:rgba(38,87,255,.2); background:#eef3ff; color:var(--accent); }
.charge-time-strip strong { color:var(--muted); }
.reference-box { margin:34px 0; padding:22px 24px; border:1px solid var(--line); border-radius:18px; background:#f7f9fd; }
.reference-box > strong { display:block; margin-bottom:8px; }
.reference-box ul { margin-bottom:0; }
@media (max-width: 900px) {
  .charge-hero-facts, .charge-calc-inputs, .charge-calc-results, .charge-source-grid { grid-template-columns:1fr; }
  .charge-calc-results article { min-height:0; border-right:0; border-bottom:1px solid var(--line); }
  .charge-calc-results article:last-child { border-bottom:0; }
  .charge-rate-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .charge-source-card { min-height:0; }
}
@media (max-width: 650px) {
  .charge-rate-grid, .charge-explain-grid { grid-template-columns:1fr; }
  .charge-hero-facts > div, .charge-rate-card, .charge-explain-grid > div { min-height:0; }
  .charge-calculator { border-radius:20px; }
  .charge-calc-inputs, .charge-calc-results article { padding:20px; }
  .charge-calc-note { padding:15px 20px; }
}


/* US Tesla home charging cost page */
.home-charge-hero .lead{max-width:850px}
.home-charge-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px;max-width:920px}
.home-charge-facts>div{min-height:150px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}
.home-charge-facts span,.home-charge-facts small{display:block;color:rgba(255,255,255,.72)}
.home-charge-facts span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.home-charge-facts strong{display:block;margin:10px 0 7px;color:#fff;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:-.06em;line-height:1}.home-charge-facts small{font-size:.78rem}
.home-charge-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.home-charge-source-note{max-width:850px;margin-top:14px;color:rgba(255,255,255,.68);font-size:.78rem}.home-charge-source-note a{color:#fff;text-decoration:underline}
.home-charge-calculator{overflow:hidden;margin-top:28px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 12px 34px rgba(23,26,32,.06)}
.home-charge-calc-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:26px;background:#f7f9fd;border-bottom:1px solid var(--line)}.home-charge-calc-inputs label>span{display:block;margin-bottom:8px;font-size:.82rem;font-weight:800}
.home-charge-calc-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.home-charge-calc-results article{min-height:180px;padding:26px;border-right:1px solid var(--line)}.home-charge-calc-results article:last-child{border-right:0}.home-charge-calc-results article.is-savings{background:linear-gradient(145deg,#fff 0%,#eef8f3 100%)}.home-charge-calc-results span{display:block;color:var(--muted);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.home-charge-calc-results strong{display:block;margin:12px 0 8px;font-size:clamp(2.3rem,5vw,3.6rem);line-height:.95;letter-spacing:-.07em;font-variant-numeric:tabular-nums}.home-charge-calc-results small{color:var(--muted)}
.home-charge-two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:42px;align-items:start}.home-charge-steps{display:grid;gap:14px;margin-top:24px}.home-charge-steps article{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:18px;border:1px solid var(--line);border-radius:18px}.home-charge-steps article>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#10182b;color:#fff;font-size:.75rem;font-weight:900}.home-charge-steps h3{margin:0 0 5px}.home-charge-steps p{margin:0}
.home-charge-callout{position:sticky;top:96px;padding:25px;border:1px solid var(--line);border-radius:24px;background:#10182b;color:#fff}.home-charge-callout .eyebrow{color:rgba(255,255,255,.6)}.home-charge-callout h3{color:#fff}.home-charge-callout p{color:rgba(255,255,255,.74)}.home-charge-price-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}.home-charge-price-row strong{font-size:1.35rem}
.home-period-badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef3ff;color:#2657ff;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.home-charge-periods .card{min-height:235px}
.home-charge-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}.home-charge-compare article{padding:28px;border:1px solid var(--line);border-radius:24px;background:#fff}.home-charge-compare article.is-drivequery{border-color:rgba(38,87,255,.26);background:linear-gradient(145deg,#fff 0%,#eef3ff 100%)}.home-charge-compare article>span{color:var(--muted);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.home-charge-compare ul{margin-bottom:0}
.home-charge-speed-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:34px;align-items:center}.home-charge-speed-card{padding:28px;border-radius:24px;background:#10182b;color:#fff}.home-charge-speed-card span,.home-charge-speed-card small{color:rgba(255,255,255,.66)}.home-charge-speed-card strong{display:block;margin:8px 0;font-size:clamp(3rem,8vw,5rem);letter-spacing:-.08em;line-height:.9}.home-charge-speed-card p{color:#fff}
.home-charge-value-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:stretch;margin:28px 0}.home-charge-value-flow>div:not(.flow-arrow){padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.home-charge-value-flow span{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#10182b;color:#fff;font-size:.72rem;font-weight:900}.home-charge-value-flow h3{margin:12px 0 6px}.home-charge-value-flow p{margin:0}.home-charge-value-flow .flow-arrow{display:grid;place-items:center;font-size:2rem;color:var(--muted)}
.home-charge-faq{max-width:900px;margin-top:24px}.home-charge-faq details{padding:0;border-top:1px solid var(--line)}.home-charge-faq details:last-child{border-bottom:1px solid var(--line)}.home-charge-faq summary{cursor:pointer;padding:18px 4px;font-weight:850}.home-charge-faq details p{padding:0 4px 18px;margin:0;max-width:820px}
@media(max-width:820px){.home-charge-facts,.home-charge-calc-inputs,.home-charge-calc-results,.home-charge-compare,.home-charge-speed-grid,.home-charge-two-col{grid-template-columns:1fr}.home-charge-calc-results article{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.home-charge-calc-results article:last-child{border-bottom:0}.home-charge-callout{position:static}.home-charge-value-flow{grid-template-columns:1fr}.home-charge-value-flow .flow-arrow{transform:rotate(90deg);min-height:22px}.home-charge-facts>div{min-height:0}.home-charge-calculator{border-radius:20px}.home-charge-calc-inputs,.home-charge-calc-results article{padding:20px}}


/* v612 US kWh charging page */
.kwh-hero{padding-bottom:62px}.kwh-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px;max-width:850px}.kwh-answer-grid>div{padding:18px 20px;border:1px solid rgba(16,24,43,.1);border-radius:18px;background:#fff}.kwh-answer-grid span,.kwh-answer-grid small{display:block;color:var(--muted)}.kwh-answer-grid span{font-size:.8rem;font-weight:800}.kwh-answer-grid strong{display:block;margin:7px 0 5px;font-size:clamp(2rem,4vw,3rem);line-height:1;letter-spacing:-.06em}.kwh-answer-grid small{font-size:.8rem}.kwh-hero-note{margin:12px 0 0;color:var(--muted);font-size:.82rem}
.kwh-calculator{overflow:hidden;margin-top:28px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 12px 34px rgba(23,26,32,.06)}.kwh-calc-inputs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:24px;background:#f7f9fd;border-bottom:1px solid var(--line)}.kwh-calc-inputs label>span{display:block;margin-bottom:8px;font-size:.8rem;font-weight:800}.kwh-calc-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.kwh-calc-results article{min-height:175px;padding:26px;border-right:1px solid var(--line)}.kwh-calc-results article:last-child{border-right:0}.kwh-calc-results span{display:block;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.kwh-calc-results strong{display:block;margin:12px 0 8px;font-size:clamp(2.2rem,5vw,3.4rem);line-height:.95;letter-spacing:-.07em;font-variant-numeric:tabular-nums}.kwh-calc-results small{color:var(--muted)}
.kwh-two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,.6fr);gap:34px;align-items:start}.kwh-formula{margin:20px 0;padding:22px 24px;border-radius:20px;background:#10182b;color:#fff}.kwh-formula.is-secondary{background:#edf3ff;color:var(--ink)}.kwh-formula span,.kwh-formula small{display:block}.kwh-formula span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.kwh-formula strong{display:block;margin:8px 0;font-size:clamp(1.25rem,3vw,1.8rem);letter-spacing:-.035em}.kwh-formula small{opacity:.72}.kwh-callout{position:sticky;top:102px;padding:26px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#fff 0%,#f4f7ff 100%)}.kwh-callout>span{font-size:.78rem;font-weight:800;text-transform:uppercase;color:var(--muted)}.kwh-callout>strong{display:block;margin:10px 0;font-size:1.65rem;letter-spacing:-.045em}.kwh-callout p{color:var(--muted)}
.kwh-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.kwh-example-grid .card strong{display:block;margin:14px 0 6px;font-size:2.5rem;line-height:1;letter-spacing:-.06em}.kwh-example-label{display:inline-block;padding:5px 9px;border-radius:999px;background:#edf3ff;font-size:.72rem;font-weight:800}.kwh-example-note{margin-top:14px;color:var(--muted);font-size:.84rem}.kwh-power-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:center;margin:24px 0}.kwh-power-flow>div:not(.flow-arrow){min-height:128px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.kwh-power-flow span,.kwh-power-flow small{display:block;color:var(--muted)}.kwh-power-flow span{font-size:.78rem;font-weight:800}.kwh-power-flow strong{display:block;margin:9px 0;font-size:2rem;letter-spacing:-.05em}.kwh-power-flow .flow-arrow{font-size:1.6rem;font-weight:800;color:var(--muted)}.kwh-factor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.kwh-cost-formula{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:22px 0;padding:20px 24px;border-radius:20px;background:#10182b;color:#fff}.kwh-cost-formula strong{font-size:1.15rem}.kwh-cost-formula span{font-size:1.4rem;font-weight:800;white-space:nowrap}
@media(max-width:980px){.kwh-calc-inputs{grid-template-columns:repeat(3,minmax(0,1fr))}.kwh-factor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.kwh-answer-grid,.kwh-calc-inputs,.kwh-calc-results,.kwh-two-col,.kwh-example-grid,.kwh-factor-grid{grid-template-columns:1fr}.kwh-calc-results article{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.kwh-calc-results article:last-child{border-bottom:0}.kwh-callout{position:static}.kwh-power-flow{grid-template-columns:1fr}.kwh-power-flow .flow-arrow{text-align:center;transform:rotate(90deg)}.kwh-cost-formula{align-items:flex-start;flex-direction:column}.kwh-cost-formula span{white-space:normal}.kwh-calculator{border-radius:20px}.kwh-calc-inputs,.kwh-calc-results article{padding:20px}}
.kwh-source-note{margin:0;padding:14px 26px;border-top:1px solid var(--line);background:#f7f9fd;color:var(--muted);font-size:.8rem}.kwh-source-note a{font-weight:750}
@media(max-width:820px){.kwh-source-note{padding:14px 20px}}

/* v613 US smart charging audit */
.smart-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:34px;align-items:center;margin-top:28px}
.smart-hero-panel{padding:26px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#fff 0%,#f1f5ff 100%);box-shadow:0 12px 34px rgba(23,26,32,.06)}
.smart-hero-panel>span{display:block;color:var(--muted);font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.smart-hero-panel strong{display:block;margin:8px 0 3px;font-size:clamp(2.4rem,6vw,4.3rem);line-height:.95;letter-spacing:-.07em}
.smart-hero-panel small{display:block;color:var(--muted);line-height:1.45}
.smart-input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 12px}
.smart-input-card{min-height:158px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}
.smart-input-card span{display:grid;width:34px;height:34px;place-items:center;margin-bottom:18px;border-radius:999px;background:#10182b;color:#fff;font-size:.78rem;font-weight:850}
.smart-input-card strong{display:block;margin-bottom:7px}
.smart-input-card p{margin:0;color:var(--muted);font-size:.88rem}
.smart-timeline{overflow:hidden;margin:28px 0;border:1px solid var(--line);border-radius:24px;background:#fff}
.smart-timeline-head{display:flex;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line);background:#f7f9fd}
.smart-timeline-head strong{display:block}.smart-timeline-head small{color:var(--muted)}
.smart-timeline-bar{display:grid;grid-template-columns:4fr 3fr 6fr 1fr;min-height:118px}
.smart-period{display:flex;flex-direction:column;justify-content:center;padding:18px;border-right:1px solid rgba(255,255,255,.55)}
.smart-period:last-child{border-right:0}.smart-period span{font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.smart-period strong{margin:6px 0 3px;font-size:1.35rem}.smart-period small{font-size:.76rem}
.smart-period.is-peak{background:#f5ecec}.smart-period.is-mid{background:#f6f2e9}.smart-period.is-off{background:#eaf5ee}.smart-period.is-ready{background:#edf2ff}
.smart-planner{overflow:hidden;margin:30px 0;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 12px 34px rgba(23,26,32,.06)}
.smart-planner-inputs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:24px;background:#f7f9fd;border-bottom:1px solid var(--line)}
.smart-planner-inputs label>span{display:block;margin-bottom:8px;font-size:.78rem;font-weight:850}
.smart-planner-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.smart-planner-results article{min-height:172px;padding:24px;border-right:1px solid var(--line)}
.smart-planner-results article:last-child{border-right:0}.smart-planner-results article.is-savings{background:linear-gradient(145deg,#fff 0%,#eef8f3 100%)}
.smart-planner-results span{display:block;color:var(--muted);font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.smart-planner-results strong{display:block;margin:12px 0 7px;font-size:clamp(2rem,4vw,3.1rem);line-height:.96;letter-spacing:-.065em;font-variant-numeric:tabular-nums}.smart-planner-results small{color:var(--muted);line-height:1.4}.smart-planner-note{margin:0;padding:16px 24px;border-top:1px solid var(--line);background:#10182b;color:rgba(255,255,255,.84);font-size:.84rem}.smart-planner-note strong{color:#fff}
.smart-compare{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:25px 0 34px}.smart-compare article{padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.smart-compare article.is-highlight{border-color:rgba(38,87,255,.28);background:linear-gradient(145deg,#fff 0%,#eef3ff 100%)}.smart-compare article>span{display:block;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.smart-compare h3{margin:10px 0 9px}.smart-compare p{margin:0 0 14px;color:var(--muted);font-size:.88rem}.smart-compare ul{margin-bottom:0;padding-left:1.15rem}.smart-compare li{margin-bottom:7px}
.smart-decision{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}.smart-decision article{padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.smart-decision strong{display:block;margin-bottom:7px}.smart-decision p{margin:0;color:var(--muted);font-size:.88rem}
.smart-faq{max-width:900px;margin-top:22px}.smart-faq details{padding:0;border-top:1px solid var(--line)}.smart-faq details:last-child{border-bottom:1px solid var(--line)}.smart-faq summary{cursor:pointer;padding:18px 4px;font-weight:850}.smart-faq details p{padding:0 4px 18px;margin:0;max-width:820px}
@media(max-width:980px){.smart-planner-inputs{grid-template-columns:repeat(3,minmax(0,1fr))}.smart-planner-results{grid-template-columns:repeat(2,minmax(0,1fr))}.smart-planner-results article:nth-child(2){border-right:0}.smart-planner-results article:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:820px){.smart-hero-grid,.smart-input-grid,.smart-compare,.smart-decision,.smart-planner-inputs,.smart-planner-results{grid-template-columns:1fr}.smart-planner-results article{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.smart-planner-results article:last-child{border-bottom:0}.smart-timeline-bar{grid-template-columns:1fr}.smart-period{border-right:0;border-bottom:1px solid rgba(255,255,255,.65)}.smart-period:last-child{border-bottom:0}.smart-timeline-head{display:block}.smart-timeline-head small{display:block;margin-top:5px}.smart-planner{border-radius:20px}.smart-planner-inputs,.smart-planner-results article{padding:20px}}


/* v615 US Tesla location history audit */
.location-hero .lead{max-width:900px}.location-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.location-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:980px;margin-top:28px}.location-answer-grid article{min-height:132px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.location-answer-grid span,.location-answer-grid small{display:block;color:rgba(255,255,255,.68)}.location-answer-grid span{font-size:.74rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.location-answer-grid strong{display:block;margin:10px 0 8px;color:#fff;font-size:1.18rem;line-height:1.25}.location-answer-grid small{font-size:.78rem}.location-source-note{max-width:880px;margin-top:14px;color:rgba(255,255,255,.66);font-size:.78rem;line-height:1.5}
.location-context-list{display:grid;gap:10px;margin-top:24px}.location-context-list article{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:#fff}.location-context-list article>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#10182b;color:#fff;font-size:.72rem;font-weight:900}.location-context-list strong{display:block;margin:2px 0 4px}.location-context-list p{margin:0;color:var(--muted);font-size:.86rem}
.location-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.location-compare article{padding:26px;border:1px solid var(--line);border-radius:24px;background:#fff}.location-compare article.is-drivequery{border-color:rgba(38,87,255,.26);background:linear-gradient(145deg,#fff 0%,#eef3ff 100%)}.location-compare article>span{color:var(--muted);font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.location-compare h3{margin:10px 0 14px}.location-compare ul{margin-bottom:0}
.location-place-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px}.location-place-grid article{min-height:250px;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.location-place-pin{display:grid;width:42px;height:42px;place-items:center;margin-bottom:26px;border-radius:14px;background:#edf3ff;color:var(--accent);font-size:1.2rem;font-weight:900}.location-place-grid strong,.location-place-grid small{display:block}.location-place-grid strong{font-size:1.18rem}.location-place-grid small{margin-top:5px;color:var(--muted);font-size:.76rem}.location-place-grid p{margin:16px 0 0;color:var(--muted);font-size:.86rem}.location-rule{display:grid;grid-template-columns:minmax(170px,.35fr) minmax(0,1fr);gap:24px;align-items:start;margin-top:16px;padding:20px 22px;border-radius:18px;background:#10182b;color:#fff}.location-rule span{color:rgba(255,255,255,.75);font-size:.88rem;line-height:1.55}
.location-two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(310px,.6fr);gap:38px;align-items:start}.location-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}.location-record-grid article{padding:20px;border:1px solid var(--line);border-radius:19px;background:#fff}.location-record-grid span{display:block;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.location-record-grid strong{display:block;margin:8px 0 5px}.location-record-grid p{margin:0;color:var(--muted);font-size:.84rem}.location-search-card{position:sticky;top:102px;padding:26px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#10182b 0%,#182544 100%);color:#fff}.location-search-card>span{color:rgba(255,255,255,.58);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.location-search-card h3{margin:8px 0 18px;color:#fff;font-size:1.5rem}.location-search-row{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}.location-search-row span{font-weight:800}.location-search-row small{grid-column:1/-1;color:rgba(255,255,255,.58)}.location-search-card>p{margin:18px 0 0;color:rgba(255,255,255,.72);font-size:.84rem}
.location-gap-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:center;margin:26px 0}.location-gap-flow article{min-height:170px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.location-gap-flow article>span{display:block;color:var(--muted);font-size:.73rem;font-weight:900;text-transform:uppercase}.location-gap-flow strong{display:block;margin:10px 0 7px}.location-gap-flow p{margin:0;color:var(--muted);font-size:.85rem}.location-gap-flow>div{color:var(--accent);font-size:1.45rem;font-weight:900}
.location-privacy-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:42px;align-items:start}.location-permission-card{padding:27px;border:1px solid var(--line);border-radius:24px;background:#f7f9fd}.location-permission-card span{display:block;color:var(--muted);font-size:.7rem;font-weight:900;letter-spacing:.06em}.location-permission-card strong{display:block;margin:7px 0 5px;font-size:1.18rem}.location-permission-card p{margin:0;color:var(--muted);font-size:.84rem}.location-permission-card hr{margin:20px 0;border:0;border-top:1px solid var(--line)}
.location-faq{max-width:900px;margin-top:22px}.location-faq details{border-top:1px solid var(--line)}.location-faq details:last-child{border-bottom:1px solid var(--line)}.location-faq summary{cursor:pointer;padding:18px 4px;font-weight:850}.location-faq details p{margin:0;padding:0 4px 18px;max-width:820px}
@media(max-width:980px){.location-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-two-col,.location-privacy-grid{grid-template-columns:1fr}.location-search-card{position:static}}
@media(max-width:760px){.location-answer-grid,.location-compare,.location-place-grid,.location-record-grid{grid-template-columns:1fr}.location-answer-grid article,.location-place-grid article{min-height:0}.location-rule{grid-template-columns:1fr;gap:8px}.location-gap-flow{grid-template-columns:1fr}.location-gap-flow>div{text-align:center;transform:rotate(90deg)}.location-hero-actions{align-items:stretch;flex-direction:column}.location-hero-actions .button{text-align:center}}


/* US Tesla charging history v616 */
.charging-history-hero .lead{max-width:920px}.charging-history-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.charging-history-answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1030px;margin-top:28px}.charging-history-answer-grid article{min-height:142px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}.charging-history-answer-grid span,.charging-history-answer-grid small{display:block;color:rgba(255,255,255,.68)}.charging-history-answer-grid span{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.charging-history-answer-grid strong{display:block;margin:10px 0 8px;color:#fff;font-size:1.16rem;line-height:1.25}.charging-history-answer-grid small{font-size:.78rem;line-height:1.45}.charging-history-source-note{max-width:900px;margin-top:14px;color:rgba(255,255,255,.66);font-size:.78rem;line-height:1.5}
.charging-history-visual-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:28px;align-items:center}.charging-history-shot{margin:0}.charging-session-card{padding:28px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#10182b 0%,#172441 100%);color:#fff;box-shadow:0 20px 50px rgba(23,26,32,.12)}.charging-session-kicker{display:block;color:rgba(255,255,255,.58);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.charging-session-card h2{margin:8px 0 18px;color:#fff;font-size:1.55rem}.charging-session-metric{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid rgba(255,255,255,.12)}.charging-session-metric span{color:rgba(255,255,255,.65);font-size:.82rem}.charging-session-metric strong{text-align:right}.charging-session-tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.charging-session-tag-row span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font-size:.7rem;font-weight:800}.charging-session-card p{margin:18px 0 0;color:rgba(255,255,255,.7);font-size:.82rem;line-height:1.55}
.charging-history-table td:first-child{min-width:160px}.charging-history-context-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}.charging-history-context-grid article{min-height:210px;padding:22px;border:1px solid var(--line);border-radius:22px;background:#fff}.charging-history-context-grid article>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#10182b;color:#fff;font-size:.72rem;font-weight:900}.charging-history-context-grid strong{display:block;margin:24px 0 8px;font-size:1.1rem}.charging-history-context-grid p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.5}
.charging-history-story{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;margin:30px 0}.charging-history-story-step{min-height:140px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff}.charging-history-story-step.charge{background:linear-gradient(145deg,#fff 0%,#eef3ff 100%);border-color:rgba(38,87,255,.2)}.charging-history-story-step span,.charging-history-story-step small{display:block}.charging-history-story-step span{color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.charging-history-story-step strong{display:block;margin:16px 0 8px;line-height:1.3}.charging-history-story-step small{color:var(--muted)}.charging-history-story-arrow{color:var(--accent);font-size:1.35rem;font-weight:900}
.charging-history-two-col{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:40px;align-items:start}.charging-cost-source-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.charging-cost-source-grid article{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.charging-cost-source-grid span{display:inline-block;padding:6px 9px;border-radius:999px;background:#eef3ff;color:var(--accent);font-size:.68rem;font-weight:900;text-transform:uppercase}.charging-cost-source-grid strong{display:block;margin:16px 0 7px}.charging-cost-source-grid p{margin:0;color:var(--muted);font-size:.83rem;line-height:1.5}.charging-history-rule-card{position:sticky;top:102px;padding:27px;border:1px solid var(--line);border-radius:24px;background:#f7f9fd}.charging-history-rule-card>span{display:block;color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.charging-history-rule-card h3{margin:9px 0 18px;font-size:1.45rem}.charging-history-rule-card>div{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.charging-history-rule-card small{color:var(--muted)}.charging-history-rule-card p{margin:18px 0 0;color:var(--muted);font-size:.83rem}
.charging-history-export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.charging-history-export-grid article{padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.charging-history-export-grid strong{display:block;font-size:1.05rem}.charging-history-export-grid p{margin:9px 0 0;color:var(--muted);font-size:.84rem}.charging-history-accuracy-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:center;margin:26px 0}.charging-history-accuracy-flow article{min-height:170px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff}.charging-history-accuracy-flow article>span{display:block;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.charging-history-accuracy-flow strong{display:block;margin:11px 0 7px}.charging-history-accuracy-flow p{margin:0;color:var(--muted);font-size:.84rem}.charging-history-accuracy-flow>div{color:var(--accent);font-size:1.4rem;font-weight:900}.charging-history-faq{max-width:920px;margin-top:22px}.charging-history-faq details{border-top:1px solid var(--line)}.charging-history-faq details:last-child{border-bottom:1px solid var(--line)}.charging-history-faq summary{cursor:pointer;padding:18px 4px;font-weight:850}.charging-history-faq details p{margin:0;padding:0 4px 18px;max-width:850px}
@media(max-width:980px){.charging-history-visual-grid,.charging-history-two-col{grid-template-columns:1fr}.charging-history-rule-card{position:static}.charging-history-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.charging-cost-source-grid{grid-template-columns:1fr}.charging-history-story{grid-template-columns:1fr}.charging-history-story-arrow{text-align:center;transform:rotate(90deg)}}
@media(max-width:760px){.charging-history-answer-grid,.charging-history-context-grid,.charging-history-export-grid{grid-template-columns:1fr}.charging-history-answer-grid article,.charging-history-context-grid article{min-height:0}.charging-history-actions{flex-direction:column;align-items:stretch}.charging-history-actions .button{text-align:center}.charging-history-accuracy-flow{grid-template-columns:1fr}.charging-history-accuracy-flow>div{text-align:center;transform:rotate(90deg)}.charging-session-card{padding:22px 18px}.charging-session-metric{align-items:flex-start;flex-direction:column;gap:4px}.charging-session-metric strong{text-align:left}}


/* US charging export audit v617 */
.export-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.export-answer-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px;max-width:920px}.export-answer-strip>div{padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.78);box-shadow:0 8px 28px rgba(16,24,43,.04)}.export-answer-strip span{display:inline-grid;place-items:center;min-width:38px;height:28px;padding:0 8px;border-radius:9px;background:#eaf0ff;color:var(--accent-dark);font-size:.72rem;font-weight:900}.export-answer-strip strong,.export-answer-strip small{display:block}.export-answer-strip strong{margin-top:9px;font-size:.98rem}.export-answer-strip small{margin-top:3px;color:var(--muted)}
.export-preview-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:18px;margin-top:28px}.export-file{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 50px rgba(16,24,43,.06)}.export-file-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;border-bottom:1px solid var(--line);font-size:.82rem}.export-file-head>div{display:flex;align-items:center;gap:10px}.export-file-head>span{color:var(--muted)}.export-file-badge{display:inline-flex;padding:6px 8px;border-radius:8px;background:#eaf0ff;color:var(--accent-dark);font-weight:900;font-size:.68rem}.export-sheet{padding:8px 0}.export-row{display:grid;grid-template-columns:.8fr 1.25fr .7fr .75fr;gap:8px;padding:11px 18px;border-bottom:1px solid #edf0f5;font-size:.82rem}.export-row-head{color:var(--muted);font-weight:800;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.export-file-foot{display:flex;justify-content:space-between;gap:16px;padding:14px 18px;background:#f7f9fc;font-size:.84rem}.export-pdf{padding-bottom:18px}.export-pdf-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px}.export-pdf-kpis>div{padding:14px;border-radius:16px;background:#f7f9fc}.export-pdf-kpis small,.export-pdf-kpis strong{display:block}.export-pdf-kpis small{color:var(--muted);font-size:.72rem}.export-pdf-kpis strong{margin-top:5px;font-size:1.18rem}.export-cost-bars{display:grid;gap:13px;padding:0 18px 16px}.export-cost-bars>div{display:grid;grid-template-columns:1fr auto;gap:5px 14px;align-items:center;font-size:.78rem}.export-cost-bars span{color:var(--muted)}.export-cost-bars i{grid-column:1/-1;display:block;height:8px;border-radius:99px;background:linear-gradient(90deg,#5e7cff var(--w,100%),#e9edf4 var(--w,100%))}.export-cost-bars strong{font-size:.8rem}.export-cost-bars>div:nth-child(1) i{--w:27%}.export-cost-bars>div:nth-child(2) i{--w:73%}.export-report-note{margin:0 18px;padding:16px;border-radius:16px;background:#10182b;color:#fff}.export-report-note strong,.export-report-note span{display:block}.export-report-note span{margin-top:5px;color:#bdc8da;font-size:.78rem}
.export-field-grid,.export-use-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}.export-field-grid .card,.export-use-grid .card{min-height:190px}.export-evidence-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:12px;align-items:stretch;margin:24px 0}.export-evidence-flow>div:not(.flow-arrow){padding:19px;border:1px solid var(--line);border-radius:18px;background:#fff}.export-evidence-flow .flow-arrow{display:grid;place-items:center;color:var(--muted);font-weight:900}.export-evidence-flow strong,.export-evidence-flow p{display:block}.export-evidence-flow strong{margin-top:12px}.export-evidence-flow p{margin:6px 0 0!important;font-size:.88rem}.export-source-tag{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:.7rem;font-weight:900}.export-source-tag.estimate{background:#fff4d6;color:#7b5800}.export-source-tag.billed{background:#e7f8ef;color:#157044}.export-source-tag.entered{background:#edf3ff;color:#315fd2}.export-card-note{margin-top:14px!important;padding-top:14px;border-top:1px solid var(--line);font-size:.88rem}.export-rate-grid{margin:22px 0}.export-rate-grid .card{min-height:210px}.export-steps{margin:22px 0}.export-steps .step{background:#fff}.source-list li{margin-bottom:8px}
@media(max-width:760px){.export-answer-strip,.export-preview-grid,.export-field-grid,.export-use-grid{grid-template-columns:1fr}.export-evidence-flow{grid-template-columns:1fr}.export-evidence-flow .flow-arrow{transform:rotate(90deg);min-height:20px}.export-row{grid-template-columns:.8fr 1.1fr .6fr .7fr;padding:10px 12px;font-size:.72rem}.export-file-head{align-items:flex-start}.export-pdf-kpis{grid-template-columns:1fr}.export-hero-actions{flex-direction:column;align-items:stretch}.export-hero-actions .button{text-align:center;justify-content:center}}

/* US Tesla trip export audit v618 */
.trip-export-row{grid-template-columns:.78fr 1.55fr .58fr .82fr}.trip-export-purpose{margin:0 18px 16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#f7f9fc}.trip-export-purpose small,.trip-export-purpose strong,.trip-export-purpose span{display:block}.trip-export-purpose small{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.trip-export-purpose strong{margin-top:6px}.trip-export-purpose span{margin-top:4px;color:var(--muted);font-size:.8rem}.trip-export-irs-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.trip-export-irs-flow>div{padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.trip-export-irs-flow span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#eaf0ff;color:var(--accent-dark);font-weight:900;font-size:.75rem}.trip-export-irs-flow strong{display:block;margin-top:12px}.trip-export-irs-flow p{margin:5px 0 0!important;font-size:.86rem}.trip-quality-grid{margin:22px 0}.trip-quality-grid .card{min-height:195px}
@media(max-width:760px){.trip-export-row{grid-template-columns:.72fr 1.45fr .55fr .78fr}.trip-export-irs-flow{grid-template-columns:1fr 1fr}.trip-class-flow{grid-template-columns:1fr}.trip-quality-grid{grid-template-columns:1fr}}
@media(max-width:480px){.trip-export-row{grid-template-columns:.72fr 1.35fr .55fr .72fr;font-size:.68rem}.trip-export-irs-flow{grid-template-columns:1fr}}

/* US pricing audit v621 */
.pricing-hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.pricing-hero-pills span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#344156;font-size:.82rem;font-weight:750}.pricing-value-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:stretch;margin-top:28px}.pricing-value-flow article{position:relative;min-width:0;padding:22px 18px;border:1px solid var(--line);border-radius:20px;background:#fff}.pricing-value-flow article.is-smart{border-color:rgba(38,87,255,.28);background:linear-gradient(145deg,#fff 0%,#eef3ff 100%)}.pricing-value-flow article>span{display:grid;width:32px;height:32px;place-items:center;margin-bottom:16px;border-radius:50%;background:#10182b;color:#fff;font-size:.72rem;font-weight:900}.pricing-value-flow strong,.pricing-value-flow b{display:block}.pricing-value-flow p{min-height:64px;margin:7px 0 18px;color:var(--muted);font-size:.86rem}.pricing-value-flow b{color:var(--accent-dark);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.pricing-flow-arrow{display:grid;place-items:center;color:var(--accent);font-size:1.4rem;font-weight:900}.pricing-need-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pricing-need-grid>article{padding:30px;border:1px solid var(--line);border-radius:26px;background:#fff}.pricing-need-grid .pricing-need-smart{border-color:rgba(38,87,255,.28);background:linear-gradient(145deg,#fff 0%,#eef3ff 100%)}.pricing-need-grid h2{margin-top:4px}.pricing-no-price{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:34px;align-items:center}.pricing-no-price>div:first-child p:last-child{max-width:680px;color:var(--muted)}.pricing-no-price-card{padding:26px;border-radius:24px;background:#10182b;color:#fff}.pricing-no-price-card span,.pricing-no-price-card strong,.pricing-no-price-card p{display:block}.pricing-no-price-card span{margin-top:15px;color:#9cabc1;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.pricing-no-price-card span:first-child{margin-top:0}.pricing-no-price-card strong{margin:5px 0 3px;font-size:1.25rem}.pricing-no-price-card p{margin:0;color:#bdc8da;font-size:.84rem}.plan p{color:#344156}.plan .fineprint{margin-top:18px;color:var(--muted);font-size:.8rem}.plan .check-list a{font-weight:700}
@media(max-width:900px){.pricing-value-flow{grid-template-columns:1fr}.pricing-flow-arrow{transform:rotate(90deg);min-height:20px}.pricing-value-flow p{min-height:0}.pricing-need-grid,.pricing-no-price{grid-template-columns:1fr}}


/* v622 US FAQ audit */
.faq-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:48px;align-items:center}
.faq-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.faq-snapshot{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}
.faq-snapshot>div{min-height:130px;padding:18px;border-radius:18px;background:var(--soft);display:flex;flex-direction:column;justify-content:flex-end}
.faq-snapshot span,.faq-snapshot small{color:var(--muted);font-size:.8rem;line-height:1.35}.faq-snapshot strong{display:block;margin:7px 0 5px;font-size:1.1rem;letter-spacing:-.025em}
.faq-topic-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.faq-topic-grid a{text-decoration:none;color:var(--ink);padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;transition:transform 160ms ease,box-shadow 160ms ease}.faq-topic-grid a:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(23,26,32,.07)}.faq-topic-grid span{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#eaf0ff;color:var(--accent-dark);font-size:.75rem;font-weight:850}.faq-topic-grid strong{display:block;margin:18px 0 7px}.faq-topic-grid small{display:block;color:var(--muted);line-height:1.45}
.faq-section-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:56px;align-items:start}.faq-section-intro{position:sticky;top:102px}.faq-section-intro h2{margin:8px 0 14px;font-size:clamp(1.8rem,3.2vw,2.7rem);line-height:1.06;letter-spacing:-.045em}.faq-section-intro>p:not(.eyebrow){color:var(--muted);max-width:42rem}.faq-list-large{display:grid;gap:12px}.faq-list-large details{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}.faq-list-large summary{position:relative;cursor:pointer;list-style:none;padding:21px 54px 21px 22px;font-weight:800;line-height:1.35}.faq-list-large summary::-webkit-details-marker{display:none}.faq-list-large summary:after{content:'+';position:absolute;right:22px;top:17px;font-size:1.45rem;color:var(--accent-dark);font-weight:500}.faq-list-large details[open] summary:after{content:'–'}.faq-list-large details p{margin:0;padding:0 22px 22px;color:var(--muted);line-height:1.7}.faq-list-large details p strong{color:var(--ink)}.faq-list-large details a{font-weight:750;color:var(--accent-dark)}
.faq-rate-callout{margin-top:24px;padding:20px;border-radius:20px;background:var(--ink);color:#fff}.faq-rate-callout span,.faq-rate-callout small{display:block;color:#c9d1e1}.faq-rate-callout strong{display:block;margin:7px 0;font-size:1.8rem;letter-spacing:-.04em}
.faq-mini-flow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:24px}.faq-mini-flow span{padding:9px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.82rem;font-weight:750}.faq-mini-flow b{color:var(--muted)}
.faq-trust-card{display:grid;gap:8px;margin-top:24px}.faq-trust-card>div{display:grid;grid-template-columns:32px 1fr;column-gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:#fff}.faq-trust-card span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:850}.faq-trust-card strong{font-size:.9rem}.faq-trust-card small{color:var(--muted);font-size:.78rem}
@media(max-width:980px){.faq-hero-grid,.faq-section-grid{grid-template-columns:1fr}.faq-topic-grid{grid-template-columns:repeat(2,1fr)}.faq-section-intro{position:static}.faq-section-grid{gap:30px}}
@media(max-width:620px){.faq-snapshot{grid-template-columns:1fr}.faq-snapshot>div{min-height:100px}.faq-topic-grid{grid-template-columns:1fr}.faq-hero-actions .button{width:100%}.faq-list-large summary{padding:18px 48px 18px 18px}.faq-list-large details p{padding:0 18px 18px}}

/* v623 US homepage audit */
.us-home-page .us-home-hero h1{max-width:12.5ch}
.us-home-page .us-home-hero .lead{max-width:760px}
.us-home-trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.us-home-trust span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.72);color:var(--ink);font-size:.75rem;font-weight:800}
.us-home-dashboard{transform:none}
.us-home-job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.us-home-job-card{position:relative;overflow:hidden;min-height:310px;padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(23,26,32,.04)}
.us-home-job-kicker{position:relative;color:var(--muted);font-size:.76rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.us-home-job-card>strong{position:relative;display:block;max-width:16ch;margin:34px 0 14px;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.08;letter-spacing:-.045em}
.us-home-job-card p{position:relative;min-height:104px;color:var(--muted)}
.us-home-job-links{position:relative;display:flex;flex-direction:column;gap:7px;margin-top:20px}
.us-home-job-links a{font-weight:800}
.us-home-screenshot-grid .shot-large{grid-row:span 2}
.us-home-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.us-home-context-card{padding:30px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 10px 32px rgba(23,26,32,.045)}
.us-home-context-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.us-home-context-top span{color:var(--muted);font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.us-home-context-top strong{max-width:10ch;text-align:right;font-size:clamp(1.65rem,3.4vw,2.55rem);line-height:.95;letter-spacing:-.06em}
.us-home-context-card p{color:var(--muted)}
.us-home-rate-line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:25px 0}
.us-home-rate-line span{display:flex;flex-direction:column;gap:4px;padding:15px;border:1px solid var(--line);border-radius:18px;background:#f7f9fd;font-size:1.05rem;font-weight:900}
.us-home-rate-line span b{color:var(--muted);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase}
.us-home-rate-line span.current{background:var(--ink);color:#fff}
.us-home-rate-line span.current b{color:rgba(255,255,255,.65)}
.us-home-rate-line i{color:var(--muted);font-size:.72rem;font-style:normal;font-weight:800;text-transform:uppercase}
.us-home-rate-pills{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}
.us-home-rate-pills span{padding:10px 13px;border-radius:999px;background:#f2f5fa;font-size:.78rem;font-weight:850}
.us-home-rate-pills span:first-child{background:#dff6bc}
.us-home-source-note{margin-top:18px}
.us-home-oauth-note{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:20px;padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:#fff}
.us-home-oauth-note strong{font-size:.98rem}
.us-home-oauth-note span{color:var(--muted);font-size:.88rem}
.us-home-oauth-note a{font-weight:800;white-space:nowrap}
.us-home-steps{display:flex;flex-direction:column;gap:12px}
.us-home-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;align-items:start;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}
.us-home-step>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--ink);color:#fff;font-size:.85rem;font-weight:900}
.us-home-step h3{margin:1px 0 5px;font-size:1rem}
.us-home-step p{margin:0;color:var(--muted);font-size:.9rem}
.us-home-explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.us-home-explore-card{display:flex;flex-direction:column;min-height:190px;padding:22px;border:1px solid var(--line);border-radius:22px;background:#fff;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.us-home-explore-card:hover{transform:translateY(-2px);border-color:#cbd4e2;box-shadow:0 10px 28px rgba(23,26,32,.06)}
.us-home-explore-card span{color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.us-home-explore-card strong{display:block;margin:20px 0 12px;color:var(--ink);font-size:1.13rem;line-height:1.22}
.us-home-explore-card small{margin-top:auto;color:var(--muted);font-size:.8rem;line-height:1.4}
.us-home-guides-link{margin:22px 0 0;text-align:center;font-weight:850}
.us-home-pricing-band{display:flex;justify-content:space-between;gap:36px;align-items:center;padding:36px;border-radius:30px;background:linear-gradient(135deg,#f2f5fa 0%,#fff 62%);border:1px solid var(--line)}
.us-home-pricing-band>div:first-child{max-width:760px}
.us-home-pricing-band h2{margin:6px 0 12px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.03;letter-spacing:-.055em}
.us-home-pricing-band p:not(.eyebrow){color:var(--muted)}
.us-home-pricing-actions{display:flex;flex-direction:column;gap:10px;min-width:190px}
.us-home-pricing-actions .button{text-align:center}
@media(max-width:980px){.us-home-job-grid,.us-home-explore-grid{grid-template-columns:1fr 1fr}.us-home-job-card p{min-height:0}.us-home-pricing-band{align-items:flex-start;flex-direction:column}.us-home-pricing-actions{flex-direction:row;min-width:0}}
@media(max-width:760px){.us-home-page .us-home-hero h1{max-width:none}.us-home-job-grid,.us-home-context-grid,.us-home-explore-grid{grid-template-columns:1fr}.us-home-job-card{min-height:0}.us-home-context-top{display:block}.us-home-context-top strong{display:block;max-width:none;margin-top:12px;text-align:left}.us-home-rate-line{grid-template-columns:1fr}.us-home-rate-line i{text-align:center}.us-home-oauth-note{grid-template-columns:1fr}.us-home-oauth-note a{white-space:normal}.us-home-pricing-actions{width:100%;flex-direction:column}.us-home-trust{align-items:stretch;flex-direction:column}.us-home-trust span{text-align:center}.us-home-dashboard{transform:none}}


/* v625 Tesla charging calculator */
.tc-hero{background:radial-gradient(circle at 88% 20%,rgba(63,129,255,.18),transparent 26%),linear-gradient(145deg,#10182b 0%,#17233c 100%);color:#fff}.tc-hero .breadcrumbs,.tc-hero .breadcrumbs a,.tc-hero .eyebrow{color:#cbd8ef}.tc-hero h1{max-width:900px}.tc-hero .lead{max-width:860px;color:#e5ecf7}.tc-hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:850px;margin:28px 0 12px}.tc-hero-metrics>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:18px}.tc-hero-metrics span,.tc-hero-metrics small{display:block;color:#cbd8ef}.tc-hero-metrics strong{display:block;font-size:28px;line-height:1.1;margin:5px 0}.tc-hero-note{font-size:14px;color:#cbd8ef;max-width:760px}.tc-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.tc-badge{white-space:nowrap;border:1px solid #cbd7eb;background:#fff;border-radius:999px;padding:8px 12px;font-weight:700;font-size:13px;color:#26334b}.tc-calculator{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:22px;margin-top:28px}.tc-input-panel,.tc-result-panel{background:#fff;border:1px solid #dfe6f1;border-radius:22px;box-shadow:0 16px 40px rgba(20,37,63,.06)}.tc-input-panel{padding:24px}.tc-input-panel h3{margin-top:0}.tc-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tc-input-grid label>span{display:block;font-size:14px;font-weight:700;margin-bottom:7px;color:#26334b}.tc-input-grid .tc-wide{grid-column:1/-1}.tc-power-presets{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:16px}.tc-power-presets span{font-size:13px;font-weight:700;color:#65718a}.tc-power-presets button{appearance:none;border:1px solid #ccd7e8;background:#f7f9fc;border-radius:999px;padding:7px 10px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;color:#24324a}.tc-power-presets button:hover{background:#eaf0f9}.tc-input-note,.tc-source-note,.tc-table-note{font-size:13px;color:#65718a}.tc-result-panel{padding:24px;background:linear-gradient(155deg,#10182b,#192843);color:#fff}.tc-result-head{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#c9d5e8;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.tc-copy{appearance:none;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;border-radius:999px;padding:7px 10px;font:inherit;font-size:12px;font-weight:700;text-transform:none;letter-spacing:0;cursor:pointer}.tc-primary-result{padding:24px 0 18px;border-bottom:1px solid rgba(255,255,255,.12)}.tc-primary-result span,.tc-primary-result small{display:block;color:#c9d5e8}.tc-primary-result strong{display:block;font-size:46px;line-height:1;margin:7px 0}.tc-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.tc-result-grid article{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:14px;padding:13px}.tc-result-grid span,.tc-result-grid small{display:block;color:#c9d5e8;font-size:12px}.tc-result-grid strong{display:block;font-size:20px;margin:4px 0}.tc-status{margin-top:16px;padding:11px 12px;border-radius:12px;background:rgba(93,171,255,.12);color:#dcecff;font-size:13px}.tc-source-note{max-width:1000px;margin:16px auto 0}.tc-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:36px;align-items:start}.tc-formula-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.tc-formula-list>div{display:flex;gap:12px;align-items:flex-start;border:1px solid #e0e7f1;border-radius:16px;padding:16px}.tc-formula-list>div>span{display:grid;place-items:center;min-width:30px;height:30px;border-radius:50%;background:#10182b;color:#fff;font-weight:800}.tc-formula-list p{margin:0}.tc-callout{background:#10182b;color:#fff;border-radius:22px;padding:26px;position:sticky;top:100px}.tc-callout>span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#bfcce2;font-weight:800}.tc-callout>strong{display:block;font-size:24px;line-height:1.2;margin:10px 0}.tc-callout p{color:#dfe7f4}.tc-callout a{color:#fff;font-weight:800}.tc-power-table-wrap{overflow-x:auto}.tc-rate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.tc-rate-grid article{border:1px solid #dce4ef;border-radius:16px;padding:18px;background:#fff}.tc-rate-grid article.is-current{border-color:#355a9d;box-shadow:0 0 0 2px rgba(53,90,157,.08)}.tc-rate-grid span,.tc-rate-grid small{display:block;color:#68748a}.tc-rate-grid strong{display:block;font-size:27px;margin:5px 0}.tc-bridge{display:flex;justify-content:space-between;align-items:center;gap:24px;border-radius:20px;background:#f2f6fb;padding:22px 24px}.tc-bridge h3,.tc-bridge p{margin-top:0}.tc-related-inline{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px}.tc-related-inline a{font-weight:800}
@media(max-width:850px){.tc-calculator,.tc-two-col{grid-template-columns:1fr}.tc-callout{position:static}.tc-hero-metrics{grid-template-columns:1fr}.tc-rate-grid{grid-template-columns:1fr 1fr}.tc-heading{align-items:flex-start;flex-direction:column}.tc-badge{align-self:flex-start}}
@media(max-width:560px){.tc-input-grid,.tc-result-grid,.tc-formula-list,.tc-rate-grid{grid-template-columns:1fr}.tc-input-grid .tc-wide{grid-column:auto}.tc-result-head,.tc-bridge{align-items:flex-start;flex-direction:column}.tc-primary-result strong{font-size:40px}.tc-input-panel,.tc-result-panel{padding:18px}}


/* v626 Mileage reimbursement calculator */
.mr-hero{background:radial-gradient(circle at 84% 20%,rgba(36,175,135,.16),transparent 26%),linear-gradient(145deg,#10182b,#172a34);color:#fff}.mr-hero .breadcrumbs,.mr-hero .breadcrumbs a,.mr-hero .eyebrow{color:#cbd8ef}.mr-hero .lead{max-width:880px;color:#e6edf5}.mr-rate-strip{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);gap:14px;align-items:center;max-width:720px;margin:28px 0}.mr-rate-strip>div:not(.mr-arrow){border:1px solid rgba(255,255,255,.15);border-radius:18px;background:rgba(255,255,255,.07);padding:18px}.mr-rate-strip .is-current{box-shadow:0 0 0 2px rgba(67,215,167,.18)}.mr-rate-strip span,.mr-rate-strip small{display:block;color:#cbd8ef}.mr-rate-strip strong{display:block;font-size:30px;margin:4px 0}.mr-arrow{font-weight:800;color:#b9c8dd}.mr-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.mr-calculator{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:22px;margin-top:28px}.mr-table-card,.mr-summary-card{background:#fff;border:1px solid #dfe6f1;border-radius:22px;box-shadow:0 16px 40px rgba(20,37,63,.06)}.mr-table-card{padding:20px}.mr-table-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.mr-table-head h3{margin:0}.mr-small-btn{appearance:none;border:1px solid #bccae0;background:#10182b;color:#fff;border-radius:999px;padding:7px 11px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.mr-small-btn.is-quiet{background:#fff;color:#26334b}.mr-table-scroll{overflow-x:auto;margin-top:16px}.mr-trip-table{width:100%;border-collapse:collapse;min-width:760px}.mr-trip-table th,.mr-trip-table td{text-align:left;border-bottom:1px solid #e3e9f2;padding:9px 7px;font-size:13px}.mr-trip-table th{color:#64718a;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.mr-trip-table input{width:100%;min-width:105px;border:1px solid #ced8e7;border-radius:9px;padding:8px 9px;font:inherit;background:#fff}.mr-trip-table .mr-purpose{min-width:190px}.mr-rate,.mr-amount{font-weight:800;white-space:nowrap}.mr-remove{appearance:none;border:0;background:#f1f4f8;color:#526078;border-radius:50%;width:27px;height:27px;font-size:18px;cursor:pointer}.mr-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.mr-summary-card{padding:24px;background:linear-gradient(155deg,#10182b,#183a37);color:#fff;align-self:start}.mr-summary-label{display:block;color:#bfd1ce;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800}.mr-total{display:block;font-size:48px;line-height:1;margin:10px 0 5px}.mr-summary-card>small{display:block;color:#c9d8d6}.mr-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.mr-split-grid article{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:13px;background:rgba(255,255,255,.05)}.mr-split-grid span,.mr-split-grid small{display:block;color:#c5d4d2;font-size:12px}.mr-split-grid strong{display:block;font-size:20px;margin:4px 0}.mr-employer{border-top:1px solid rgba(255,255,255,.14);padding-top:18px}.mr-employer label>span,.mr-employer-out span,.mr-employer-out small{display:block;color:#c5d4d2;font-size:12px}.mr-employer .charge-input-wrap{margin-top:7px;background:#fff}.mr-employer-out{margin-top:14px}.mr-employer-out strong{display:block;font-size:22px;margin:3px 0}.mr-summary-note{font-size:12px;color:#c5d4d2;margin-bottom:0}.mr-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:36px;align-items:start}.mr-example{border:1px solid #dde5ef;border-radius:18px;overflow:hidden;margin-top:22px}.mr-example>div{display:grid;grid-template-columns:90px 1fr auto;gap:14px;padding:14px 16px;border-bottom:1px solid #e5ebf3;align-items:center}.mr-example>div:last-child{border:0}.mr-example span{color:#67748a}.mr-example b{font-size:18px}.mr-example-total{background:#f3f7fb}.mr-callout{background:#10182b;color:#fff;border-radius:22px;padding:26px;position:sticky;top:100px}.mr-callout>span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#bfcee0;font-weight:800}.mr-callout>strong{display:block;font-size:24px;line-height:1.2;margin:9px 0}.mr-callout p{color:#dfe7f2}.mr-callout a{color:#fff;font-weight:800}.mr-record-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.mr-record-flow>div{border:1px solid #dfe6ef;border-radius:16px;padding:16px}.mr-record-flow span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#10182b;color:#fff;font-weight:800}.mr-record-flow strong,.mr-record-flow small{display:block}.mr-record-flow strong{margin:10px 0 3px}.mr-record-flow small{color:#67748a}
@media(max-width:900px){.mr-calculator,.mr-two-col{grid-template-columns:1fr}.mr-callout{position:static}.mr-record-flow{grid-template-columns:1fr 1fr}.mr-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.mr-rate-strip{grid-template-columns:1fr}.mr-arrow{text-align:center}.mr-split-grid,.mr-record-flow{grid-template-columns:1fr}.mr-total{font-size:40px}.mr-table-head{align-items:flex-start;flex-direction:column}.mr-example>div{grid-template-columns:1fr}.mr-example b{justify-self:start}}


/* v627 Mileage log template */
.mt-hero{background:radial-gradient(circle at 85% 18%,rgba(90,120,255,.17),transparent 27%),linear-gradient(145deg,#10182b,#1c2944);color:#fff}.mt-hero .breadcrumbs,.mt-hero .breadcrumbs a,.mt-hero .eyebrow{color:#cbd8ef}.mt-hero .lead{max-width:850px;color:#e7edf7}.mt-download-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 16px}.mt-download-card{display:block;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.06);padding:18px;text-decoration:none;color:#fff}.mt-download-card.is-primary{box-shadow:0 0 0 2px rgba(109,148,255,.19)}.mt-download-card span,.mt-download-card small,.mt-download-card b{display:block}.mt-download-card span{color:#c4d1e6;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800}.mt-download-card strong{display:block;font-size:28px;margin:5px 0}.mt-download-card small{color:#d4deed;min-height:38px}.mt-download-card b{margin-top:13px}.mt-hero-note{font-size:14px;color:#cbd8ef}.mt-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.mt-trust-row span{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);border-radius:999px;padding:6px 10px;color:#dce6f4;font-size:12px;font-weight:700}.mt-preview-wrap{border:1px solid #dbe4ef;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 14px 34px rgba(20,37,63,.06);margin-top:22px}.mt-preview-head{background:#10182b;color:#fff;padding:15px 18px;display:flex;align-items:center;gap:22px}.mt-preview-head>span{font-size:19px;font-weight:800;margin-right:auto}.mt-preview-head div{display:flex;gap:8px;align-items:baseline}.mt-preview-head b{font-size:11px;color:#c4d1e3}.mt-preview-head strong{font-size:17px}.mt-table-scroll{overflow-x:auto}.mt-preview-table{width:100%;border-collapse:collapse;min-width:900px}.mt-preview-table th,.mt-preview-table td{padding:12px 10px;border-bottom:1px solid #e3e9f2;text-align:left;font-size:13px}.mt-preview-table th{background:#eaf0f8;color:#33425a;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.mt-pill{display:inline-block;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.mt-pill.business{background:#e2f5eb;color:#17674d}.mt-pill.commute{background:#fff2cf;color:#725300}.mt-preview-note{font-size:13px;color:#69758a}.mt-format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.mt-format-grid article{border:1px solid #dfe6ef;border-radius:18px;padding:22px}.mt-format-grid article>span{display:inline-block;border-radius:999px;background:#10182b;color:#fff;padding:5px 9px;font-size:11px;font-weight:800;letter-spacing:.08em}.mt-format-grid ul{padding-left:18px;color:#536078}.mt-format-grid li{margin:7px 0}.mt-format-grid a{font-weight:800}.mt-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:36px;align-items:start}.mt-rate-strip{max-width:none}.mt-callout{background:#10182b;color:#fff;border-radius:22px;padding:26px;position:sticky;top:100px}.mt-callout>span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#bfcee0;font-weight:800}.mt-callout>strong{display:block;font-size:24px;line-height:1.2;margin:9px 0}.mt-callout p{color:#dfe7f2}.mt-callout a{color:#fff;font-weight:800}.mt-record-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.mt-record-grid article{border:1px solid #dfe6ef;border-radius:16px;padding:18px}.mt-record-grid span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#10182b;color:#fff;font-weight:800}.mt-record-grid h3{margin:10px 0 5px}.mt-compare{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin-top:24px}.mt-compare>div:not(.flow-arrow){border:1px solid #dfe6ef;background:#fff;border-radius:18px;padding:22px}.mt-compare span,.mt-compare strong{display:block}.mt-compare span{text-transform:uppercase;letter-spacing:.08em;color:#69758a;font-size:11px;font-weight:800}.mt-compare strong{font-size:22px;margin:7px 0}.mt-compare-note{font-size:13px;color:#69758a}
@media(max-width:850px){.mt-download-grid,.mt-format-grid,.mt-two-col,.mt-record-grid{grid-template-columns:1fr}.mt-callout{position:static}.mt-compare{grid-template-columns:1fr}.mt-compare .flow-arrow{text-align:center;transform:rotate(90deg)}.mt-preview-head{align-items:flex-start;flex-direction:column}.mt-preview-head>span{margin-right:0}}

/* US Tesla charging calculator refinement v628 */
.tc-soc-visual{margin-top:18px;padding:15px 16px;border:1px solid #dfe6f1;border-radius:16px;background:#f8fafc}.tc-soc-labels{display:flex;justify-content:space-between;gap:16px;font-size:12px;font-weight:800;color:#48566f;margin-bottom:9px}.tc-soc-track{height:12px;border-radius:999px;background:#e4e9f1;position:relative;overflow:hidden}.tc-soc-current,.tc-soc-added{position:absolute;top:0;bottom:0}.tc-soc-current{left:0;background:#8290a7}.tc-soc-added{background:linear-gradient(90deg,#3f81ff,#5dabff);border-radius:0 999px 999px 0}.tc-power-presets button.is-active{background:#10182b;border-color:#10182b;color:#fff;box-shadow:0 4px 12px rgba(16,24,43,.14)}.tc-result-grid article{min-height:96px}.tc-input-grid label>span{line-height:1.25}.tc-input-note{line-height:1.55}.tc-source-note{line-height:1.55}.tc-hero-note{line-height:1.5}.tc-copy{transition:background .18s ease,border-color .18s ease}.tc-copy:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.34)}
@media(max-width:560px){.tc-soc-visual{padding:13px 14px}.tc-result-grid article{min-height:auto}.tc-power-presets span{width:100%;margin-bottom:2px}}

/* v629 mileage reimbursement calculator polish */
.mr-rate-strip .is-current span b{display:inline-block;margin-left:7px;padding:2px 7px;border-radius:999px;background:#43d7a7;color:#0b2c24;font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.06em;vertical-align:1px}.mr-table-head>div:first-child small{display:block;color:#68768b;margin-top:4px}.mr-table-tools{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.mr-trip-table{min-width:940px}.mr-trip-table .mr-destination{min-width:155px}.mr-employer label>span small{display:inline;color:#92aaa5;font-weight:500;margin-left:4px}.mr-employer-out small[data-employer-diff]{font-weight:700}.mr-summary-card{position:relative;overflow:hidden}.mr-summary-card:after{content:"2026";position:absolute;right:-8px;top:-22px;font-size:84px;font-weight:900;color:rgba(255,255,255,.035);pointer-events:none}.mr-summary-card>*{position:relative;z-index:1}
@media(max-width:700px){.mr-table-scroll{overflow:visible}.mr-trip-table{min-width:0;display:block}.mr-trip-table thead{display:none}.mr-trip-table tbody{display:grid;gap:12px}.mr-trip-table tr{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#f8fafc;border:1px solid #dfe6ef;border-radius:16px;padding:14px;position:relative}.mr-trip-table td{display:block;border:0;padding:0;font-size:13px;min-width:0}.mr-trip-table td:before{content:attr(data-label);display:block;margin:0 0 5px;color:#64718a;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.mr-trip-table td[data-label="Destination"],.mr-trip-table td[data-label="Business purpose"]{grid-column:1/-1}.mr-trip-table .mr-rate,.mr-trip-table .mr-amount{padding:9px 10px;background:#fff;border:1px solid #e0e6ef;border-radius:10px}.mr-trip-table input,.mr-trip-table .mr-purpose,.mr-trip-table .mr-destination{min-width:0;width:100%;box-sizing:border-box}.mr-remove-cell{position:absolute;right:8px;top:8px}.mr-remove-cell:before{display:none!important}.mr-remove{box-shadow:0 1px 4px rgba(20,37,63,.12)}.mr-table-head{align-items:flex-start}.mr-table-tools{justify-content:flex-start}.mr-rate-strip .mr-arrow{font-size:12px}.mr-actions .button{flex:1 1 140px;text-align:center}}


/* v649 FI CTR utility layer */
.utility-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}
.utility-card{display:block;text-decoration:none;border:1px solid #dfe6f1;border-radius:20px;background:#fff;padding:22px;box-shadow:0 10px 26px rgba(20,37,63,.04);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.utility-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(20,37,63,.09);border-color:#bccae0}
.utility-card>span{display:inline-block;margin-bottom:8px;color:#355a9d;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.utility-card h3{margin:0 0 8px;font-size:1.28rem;letter-spacing:-.025em;color:var(--ink)}
.utility-card p{margin:0 0 12px;color:var(--muted);font-size:.94rem;line-height:1.55}
.utility-card strong{color:var(--ink);font-size:.9rem}
.utility-intro{display:flex;align-items:end;justify-content:space-between;gap:24px}
.utility-intro p{max-width:760px;margin-bottom:0}
.tool-select{width:100%;padding:14px 38px 14px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font:inherit;font-weight:700}
.tool-select:focus{outline:2px solid rgba(47,102,255,.22);border-color:#2f66ff}
.tool-subhead{margin:24px 0 8px!important;padding-top:20px;border-top:1px solid #e3e9f2}
.fi-summary-link{color:#fff;text-decoration:underline;text-underline-offset:3px}
.fi-log-table{min-width:1120px}
.fi-log-table select{width:100%;min-width:110px;border:1px solid #ced8e7;border-radius:9px;padding:8px 9px;font:inherit;background:#fff}
.fi-log-table .log-purpose{min-width:190px}.fi-log-table .log-from,.fi-log-table .log-to{min-width:145px}
.tool-bridge{margin:20px 0;padding:18px 20px;border:1px solid #dbe4f0;border-radius:16px;background:#f6f9fd;display:flex;align-items:center;justify-content:space-between;gap:18px}
.tool-bridge p{margin:0;color:#526078}.tool-bridge a{font-weight:850;white-space:nowrap}
@media(max-width:900px){.utility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.utility-intro{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.utility-grid{grid-template-columns:1fr}.utility-card{padding:19px}.tool-bridge{align-items:flex-start;flex-direction:column}.tool-bridge a{white-space:normal}}
@media(max-width:700px){.mr-trip-table td[data-label="Kohde"],.mr-trip-table td[data-label="Ajon tarkoitus"],.mr-trip-table td[data-label="Lähtöpaikka"]{grid-column:1/-1}.fi-log-table{min-width:0}}
@media print{body:has([data-fi-mileage-log]) .site-header,body:has([data-fi-mileage-log]) .site-footer,body:has([data-fi-mileage-log]) .feature-hero,body:has([data-fi-mileage-log]) #pohjat,body:has([data-fi-mileage-log]) #tyokalu .mr-heading,body:has([data-fi-mileage-log]) #tyokalu .mr-summary-card,body:has([data-fi-mileage-log]) #tyokalu .mr-actions,body:has([data-fi-mileage-log]) #tyokalu .mr-table-tools,body:has([data-fi-mileage-log]) main>section:not(#tyokalu){display:none!important}body:has([data-fi-mileage-log]) #tyokalu{padding:0!important;background:#fff!important}body:has([data-fi-mileage-log]) #tyokalu .container{max-width:none!important;padding:0!important}body:has([data-fi-mileage-log]) .mr-calculator{display:block!important;margin:0!important}body:has([data-fi-mileage-log]) .mr-table-card{border:0!important;box-shadow:none!important;padding:0!important}body:has([data-fi-mileage-log]) .mr-table-scroll{overflow:visible!important}body:has([data-fi-mileage-log]) .fi-log-table{min-width:0!important;font-size:9px}body:has([data-fi-mileage-log]) .mr-remove-cell{display:none!important}}

@media print{body:has([data-fi-mileage-calculator]) .site-header,body:has([data-fi-mileage-calculator]) .site-footer,body:has([data-fi-mileage-calculator]) main>section:not(#kilometrikorvaus-tulos){display:none!important}body:has([data-fi-mileage-calculator]) #kilometrikorvaus-tulos{padding:0!important}body:has([data-fi-mileage-calculator]) #kilometrikorvaus-tulos .container{max-width:none!important;padding:0!important}body:has([data-fi-mileage-calculator]) .calculator-layout{grid-template-columns:1fr 1fr!important}body:has([data-fi-mileage-calculator]) .calculator-results{position:static!important;background:#fff!important;color:#10182b!important;border:1px solid #ccd6e5!important}body:has([data-fi-mileage-calculator]) .calculator-results span,body:has([data-fi-mileage-calculator]) .calculator-results small,body:has([data-fi-mileage-calculator]) .calculator-disclaimer{color:#526078!important}body:has([data-fi-mileage-calculator]) .result-primary,body:has([data-fi-mileage-calculator]) .result-grid{border-color:#dfe6ef!important}body:has([data-fi-mileage-calculator]) .fi-mileage-actions{display:none!important}}

/* v650-v652 Finland charging map */
.utility-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.charging-map-hero{padding-bottom:36px}
.charging-map-hero .lead{max-width:760px}
.map-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:26px}
.map-kpi{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#fff}
.map-kpi span{display:block;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.map-kpi strong{display:block;margin-top:6px;font-size:1.55rem;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.charging-map-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;min-height:660px;border:1px solid var(--line);border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 16px 42px rgba(20,37,63,.08)}
.charging-map-main{min-width:0;display:flex;flex-direction:column}
.map-controls{padding:18px;border-bottom:1px solid var(--line);background:#f7f9fd}
.map-controls-top{display:grid;grid-template-columns:minmax(220px,1.3fr) repeat(3,minmax(145px,.7fr));gap:10px}
.map-field span{display:block;margin-bottom:7px;color:var(--muted);font-size:.75rem;font-weight:800}
.map-field input,.map-field select{width:100%;height:44px;padding:0 12px;border:1px solid #cbd5e2;border-radius:11px;background:#fff;color:var(--ink);font:inherit}
.map-field input:focus,.map-field select:focus{outline:2px solid rgba(47,102,255,.18);border-color:#2f66ff}
.map-controls-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:12px}
.map-chip{appearance:none;border:1px solid #ccd6e3;border-radius:999px;background:#fff;color:var(--ink);padding:9px 13px;font:inherit;font-size:.84rem;font-weight:750;cursor:pointer}
.map-chip:hover,.map-chip.is-active{border-color:#10182b;background:#10182b;color:#fff}
.map-check{display:inline-flex;align-items:center;gap:7px;padding:8px 2px;font-size:.85rem;font-weight:700;color:var(--ink)}
.map-check input{width:17px;height:17px}
.map-controls-bottom .map-spacer{flex:1}
.map-statusline{margin:0;padding:10px 18px;border-top:1px solid var(--line);background:#fff;color:var(--muted);font-size:.78rem}
#charging-map-canvas{height:540px;min-height:540px;background:#e7edf4}
.charging-map-side{display:flex;flex-direction:column;min-width:0;border-left:1px solid var(--line);background:#fff}
.map-side-head{padding:18px;border-bottom:1px solid var(--line)}
.map-side-head span{display:block;color:var(--muted);font-size:.77rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.map-side-head strong{display:block;margin-top:4px;font-size:1.25rem}
.map-result-list{overflow:auto;max-height:610px}
.map-result{display:block;width:100%;padding:16px 18px;border:0;border-bottom:1px solid #edf0f4;background:#fff;color:var(--ink);text-align:left;font:inherit;cursor:pointer}
.map-result:hover{background:#f7f9fd}
.map-result-top{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.map-result-top strong{font-size:.98rem;line-height:1.3}
.map-distance{flex:0 0 auto;color:var(--muted);font-size:.75rem;font-weight:700}
.map-result-operator{display:block;margin-top:4px;color:var(--muted);font-size:.82rem}
.map-result-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;margin-top:10px;color:var(--muted);font-size:.76rem}
.map-status{display:inline-flex!important;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:.72rem!important;font-weight:800!important;line-height:1.2}
.map-status.is-available{background:#e8f6ef;color:#176941}
.map-status.is-busy{background:#fff2dc;color:#8a5714}
.map-status.is-offline{background:#edf0f3;color:#5f6875}
.map-status.is-unknown{background:#edf3fb;color:#48627f}
.map-empty{padding:24px 18px;color:var(--muted)}
.map-empty strong,.map-empty span{display:block}.map-empty strong{color:var(--ink);margin-bottom:6px}
.charge-popup{min-width:220px}.charge-popup h3{margin:8px 0 4px;font-size:1.08rem}.charge-popup p{margin:4px 0;color:#59687a}.charge-popup-operator{font-weight:800;color:#26394f!important}.charge-popup-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.charge-popup-facts span{padding:8px;border-radius:9px;background:#f4f7fb;color:#59687a;font-size:.73rem}.charge-popup-facts strong{display:block;margin-bottom:2px;color:#172338;font-size:.8rem}.charge-popup a{font-weight:800;text-decoration:none}
.map-source-note{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-top:18px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#fff}
.map-source-note p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.55}.map-source-note strong{color:var(--ink)}
.map-explain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.map-explain-grid .card{height:100%}
.leaflet-container{font-family:inherit}.leaflet-popup-content-wrapper{border-radius:14px;box-shadow:0 12px 30px rgba(16,24,43,.18)}.leaflet-popup-content{margin:15px 16px}.leaflet-control-attribution{font-size:9px!important}
@media(max-width:1050px){.charging-map-shell{grid-template-columns:1fr}.charging-map-side{border-left:0;border-top:1px solid var(--line)}.map-result-list{max-height:420px}.map-controls-top{grid-template-columns:1fr 1fr}.map-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.map-controls-top{grid-template-columns:1fr}.map-kpi-grid,.map-explain-grid{grid-template-columns:1fr}.charging-map-shell{border-radius:20px}#charging-map-canvas{height:470px;min-height:470px}.map-controls-bottom .map-spacer{display:none}.map-controls-bottom{align-items:flex-start}.map-chip{font-size:.78rem}.map-source-note{flex-direction:column}.charge-popup-facts{grid-template-columns:1fr}}

/* v652 FI language + visual polish */
.utility-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.utility-grid>.utility-card{grid-column:span 2}
.utility-grid>.utility-card:nth-child(4),.utility-grid>.utility-card:nth-child(5){grid-column:span 3}

.charging-map-hero{background:radial-gradient(circle at 88% 20%,rgba(67,215,167,.15),transparent 27%),linear-gradient(145deg,#10182b 0%,#183a37 100%);color:#fff}
.charging-map-hero .breadcrumbs,.charging-map-hero .breadcrumbs a,.charging-map-hero .eyebrow{color:#c9dbd7}
.charging-map-hero .lead{color:#e5efed}
.charging-map-hero .map-kpi{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);box-shadow:none}
.charging-map-hero .map-kpi span{color:#c9dbd7}
.charging-map-hero .map-kpi strong{color:#fff}

.fi-mileage-hero{background:radial-gradient(circle at 88% 20%,rgba(63,129,255,.18),transparent 26%),linear-gradient(145deg,#10182b 0%,#17233c 100%);color:#fff;padding-bottom:42px}
.fi-mileage-hero .breadcrumbs,.fi-mileage-hero .breadcrumbs a,.fi-mileage-hero .eyebrow{color:#cbd8ef}
.fi-mileage-hero .lead{max-width:860px;color:#e5ecf7}
.fi-mileage-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:900px;margin-top:28px}
.fi-mileage-hero-metrics>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:18px}
.fi-mileage-hero-metrics span,.fi-mileage-hero-metrics small{display:block;color:#cbd8ef}
.fi-mileage-hero-metrics span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.fi-mileage-hero-metrics strong{display:block;margin:7px 0 4px;color:#fff;font-size:1.55rem;letter-spacing:-.04em}
.fi-mileage-hero-metrics small{font-size:.8rem}

@media(max-width:900px){
  .utility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .utility-grid>.utility-card,.utility-grid>.utility-card:nth-child(4),.utility-grid>.utility-card:nth-child(5){grid-column:auto}
}
@media(max-width:720px){
  .map-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .map-explain-grid{grid-template-columns:1fr}
  .fi-mileage-hero-metrics{grid-template-columns:1fr}
}
@media(max-width:600px){
  .utility-grid{grid-template-columns:1fr}
}

/* NO v667 — kjøregodtgjørelse calculator CTR/utility */
.calculator-hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:24px 0 6px}.calculator-hero-actions span{font-size:.92rem;color:var(--muted,#5c677a)}
.calculator-primary-field{margin:24px 0 12px}.calculator-primary-field>label{display:block;font-weight:700;margin-bottom:8px}.calculator-km-input{display:flex;align-items:center;border:1px solid #cbd5e1;border-radius:16px;background:#fff;overflow:hidden;max-width:420px;box-shadow:0 6px 18px rgba(23,26,32,.05)}.calculator-km-input input{min-width:0;width:100%;font-size:2rem;font-weight:750;padding:16px 18px;border:0;outline:0;background:transparent}.calculator-km-input span{font-weight:700;color:#5c677a;padding:0 18px;border-left:1px solid #e2e8f0}.calculator-presets{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.calculator-presets button{border:1px solid #d7dee8;background:#fff;border-radius:999px;padding:8px 13px;font:inherit;font-weight:650;cursor:pointer}.calculator-presets button:hover,.calculator-presets button:focus-visible{border-color:#171a20}.calculator-advanced{border-top:1px solid #e5eaf0;padding-top:16px}.calculator-advanced summary{cursor:pointer;font-weight:700}.calculator-advanced[open] summary{margin-bottom:16px}.calculator-formula{display:grid;gap:6px;padding:16px 0;border-top:1px solid rgba(255,255,255,.14)}.calculator-formula span{color:rgba(255,255,255,.72);font-size:.88rem}.calculator-formula strong{font-size:1rem;color:#fff}.calculator-formula strong span{color:#fff;font-size:inherit}.calculator-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.button-light{background:#fff;color:#171a20;border-color:#fff}.button-ghost-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}.calculator-copy-status{min-height:1.3em;margin:8px 0 0;color:rgba(255,255,255,.76);font-size:.88rem}@media(max-width:680px){.calculator-hero-actions{align-items:flex-start;flex-direction:column}.calculator-km-input{max-width:none}.calculator-km-input input{font-size:1.75rem}}


/* v669 Norway live electricity price utility */
.spot-live-shell{display:grid;gap:1.25rem}
.spot-area-tabs{display:flex;flex-wrap:wrap;gap:.55rem;margin:.2rem 0 .5rem}
.spot-area-tab{appearance:none;border:1px solid rgba(135,158,200,.28);background:rgba(13,24,46,.78);color:#dfe8f8;border-radius:999px;padding:.68rem .92rem;font:inherit;font-weight:700;cursor:pointer;transition:.18s ease}
.spot-area-tab:hover,.spot-area-tab:focus-visible{border-color:rgba(106,164,255,.72);transform:translateY(-1px)}
.spot-area-tab[aria-pressed="true"]{background:linear-gradient(135deg,rgba(62,116,220,.38),rgba(46,170,177,.2));border-color:rgba(111,172,255,.88);color:#fff;box-shadow:0 10px 30px rgba(22,59,120,.2)}
.spot-live-card{border:1px solid rgba(139,164,210,.22);border-radius:24px;background:linear-gradient(160deg,rgba(19,32,59,.97),rgba(12,23,44,.97));box-shadow:0 24px 70px rgba(0,0,0,.18);overflow:hidden}
.spot-live-top{display:grid;grid-template-columns:1.05fr .95fr;gap:1rem;padding:1.2rem}
.spot-answer{border-radius:19px;padding:1.25rem;background:linear-gradient(145deg,rgba(37,68,126,.38),rgba(44,74,135,.16));border:1px solid rgba(126,164,225,.18)}
.spot-answer-kicker{display:flex;align-items:center;gap:.45rem;color:#9fb4d8;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:800;margin-bottom:.5rem}
.spot-answer-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.48rem .72rem;font-size:.78rem;font-weight:850;letter-spacing:.04em;background:rgba(92,197,142,.14);border:1px solid rgba(92,197,142,.34);color:#bff2d5;margin-bottom:.8rem}
.spot-answer-badge.wait{background:rgba(250,184,79,.12);border-color:rgba(250,184,79,.34);color:#ffe0a7}
.spot-answer h2{font-size:clamp(2.05rem,5vw,4rem);line-height:.96;margin:.2rem 0 .45rem;letter-spacing:-.045em}
.spot-answer h2 small{font-size:.38em;color:#9fb2d3;font-weight:750;letter-spacing:-.01em}
.spot-answer p{margin:.45rem 0;color:#c6d2e7}
.spot-answer strong{color:#fff}
.spot-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.spot-kpi{border:1px solid rgba(135,158,200,.18);border-radius:17px;padding:1rem;background:rgba(9,18,35,.45)}
.spot-kpi span{display:block;color:#91a8ca;font-size:.78rem;font-weight:760;text-transform:uppercase;letter-spacing:.055em;margin-bottom:.35rem}
.spot-kpi strong{display:block;font-size:1.35rem;letter-spacing:-.02em;color:#fff}
.spot-kpi small{display:block;margin-top:.25rem;color:#8fa4c3;line-height:1.35}
.spot-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;padding:0 1.2rem 1.15rem}
.spot-control{display:grid;gap:.38rem}
.spot-control label{font-size:.82rem;font-weight:760;color:#aabbd5}
.spot-control input,.spot-control select{width:100%;border:1px solid rgba(135,158,200,.26);border-radius:12px;padding:.78rem .85rem;background:rgba(6,15,31,.76);color:#fff;font:inherit}
.spot-control input:focus,.spot-control select:focus{outline:2px solid rgba(85,153,255,.38);outline-offset:1px;border-color:rgba(85,153,255,.7)}
.spot-chart-wrap{padding:1.15rem 1.2rem 1.3rem;border-top:1px solid rgba(135,158,200,.14)}
.spot-chart-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:.9rem}
.spot-chart-head h3{margin:0;font-size:1.05rem}.spot-chart-head p{margin:0;color:#8fa5c6;font-size:.8rem;text-align:right}
.spot-bars{height:185px;display:flex;align-items:flex-end;gap:3px;padding-top:1rem;border-bottom:1px solid rgba(137,158,195,.18)}
.spot-bar{position:relative;flex:1;min-width:3px;height:var(--bar-h);border-radius:5px 5px 1px 1px;background:linear-gradient(180deg,rgba(91,137,214,.95),rgba(51,88,154,.7));transition:.2s ease;cursor:default}
.spot-bar:hover{filter:brightness(1.18)}
.spot-bar.selected{background:linear-gradient(180deg,rgba(83,210,163,.98),rgba(40,143,112,.78));box-shadow:0 0 0 1px rgba(115,236,191,.18)}
.spot-bar.now{outline:2px solid #fff;outline-offset:1px}
.spot-bar.negative{background:linear-gradient(180deg,rgba(110,215,211,.96),rgba(45,140,144,.7))}
.spot-bar-tip{position:absolute;left:50%;bottom:calc(100% + 7px);transform:translateX(-50%);padding:.35rem .45rem;border-radius:7px;background:#07101f;color:#fff;font-size:.68rem;white-space:nowrap;opacity:0;pointer-events:none;z-index:2;border:1px solid rgba(153,178,218,.24)}
.spot-bar:hover .spot-bar-tip{opacity:1}
.spot-axis{display:flex;justify-content:space-between;color:#7389aa;font-size:.68rem;margin-top:.4rem}
.spot-schedule{display:flex;flex-wrap:wrap;gap:.48rem;margin-top:.75rem}
.spot-period{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.45rem .62rem;background:rgba(75,185,143,.1);border:1px solid rgba(75,185,143,.23);color:#c9f4df;font-size:.77rem;font-weight:700}
.spot-status{min-height:1.4rem;color:#98abc8;font-size:.86rem;margin:.35rem 0 0}
.spot-status.error{color:#ffc4c4}
.spot-source{font-size:.78rem;color:#8297b6;margin:.7rem 0 0}.spot-source a{color:#a8c7ff}
.spot-inline-cta{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;padding:1.05rem 1.15rem;border-radius:18px;border:1px solid rgba(135,158,200,.18);background:rgba(16,29,53,.7)}
.spot-inline-cta p{margin:.2rem 0;color:#aebed6}.spot-inline-cta h3{margin:0}
@media(max-width:760px){.spot-live-top{grid-template-columns:1fr}.spot-controls{grid-template-columns:1fr}.spot-kpi-grid{grid-template-columns:1fr 1fr}.spot-inline-cta{grid-template-columns:1fr}.spot-bars{height:150px;gap:2px}.spot-chart-head{align-items:flex-start;flex-direction:column}.spot-chart-head p{text-align:left}.spot-answer h2{font-size:2.55rem}}
@media(max-width:420px){.spot-kpi-grid{grid-template-columns:1fr}.spot-area-tab{padding:.6rem .72rem;font-size:.82rem}}

.inline-note{margin:18px 0 0;padding:12px 14px;border:1px solid #dbe4f1;border-radius:14px;background:#f7f9fd;color:var(--muted);font-size:.92rem}.inline-note strong{color:var(--ink)}.inline-note a{color:var(--accent-dark);font-weight:750;text-decoration:none}.inline-note a:hover{text-decoration:underline}
