/* Static public-site styles. The published HTML route intentionally ships no client runtime. */
:root {
  color-scheme: light;
  --cms-primary: #0f766e;
  --cms-secondary: #be123c;
  --accent: #f59e0b;
  --ink: #18181b;
  --muted: #52525b;
  --line: #e4e4e7;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: #ffffff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a {
  color: inherit;
}

.cms-rendered-page {
  --cms-page-bg: #ffffff;
  --cms-boxed-bg: #eef2f1;
  --cms-site-max-width: 1200px;
  background: var(--cms-page-bg);
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.cms-rendered-page :is(button, input, select, textarea) { font: inherit; }

.cms-rendered-page.theme-font-editorial h1,
.cms-rendered-page.theme-font-editorial h2,
.cms-rendered-page.theme-font-editorial h3,
.cms-rendered-page.theme-font-luxury h1,
.cms-rendered-page.theme-font-luxury h2,
.cms-rendered-page.theme-font-luxury h3 {
  font-family: Georgia, "Times New Roman", serif;
}

.cms-rendered-page.theme-font-tech h1,
.cms-rendered-page.theme-font-tech h2,
.cms-rendered-page.theme-font-tech h3,
.cms-rendered-page.theme-font-tech .eyebrow {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.cms-rendered-page.theme-font-playful h1,
.cms-rendered-page.theme-font-playful h2,
.cms-rendered-page.theme-font-playful h3 {
  font-family: "Trebuchet MS", Inter, ui-sans-serif, system-ui, sans-serif;
}

.cms-rendered-page.theme-mode-dark {
  --line: #3f3f46;
  --muted: #d4d4d8;
  color: #fafafa;
}

.cms-rendered-page.theme-mode-dark .mini-card,
.cms-rendered-page.theme-mode-dark .lead-form-block,
.cms-rendered-page.theme-mode-dark .hero-visual,
.cms-rendered-page.theme-mode-dark details,
.cms-rendered-page.theme-mode-dark .navbar-block,
.cms-rendered-page.theme-mode-dark .row-width-boxed {
  border-color: #3f3f46;
  background: #18181b;
  color: #fafafa;
}

.cms-rendered-page.theme-mode-dark :is(.lead, .section-intro, .mini-card p, .mini-card li, .lead-form-block p) {
  color: #d4d4d8;
}

.cms-rendered-page.theme-surface-card :is(.mini-card, .lead-form-block, .hero-visual) {
  border: 1px solid var(--line, #e4e4e7);
  background: color-mix(in srgb, var(--cms-page-bg) 94%, var(--cms-primary) 6%);
}

.cms-rendered-page.theme-surface-layered :is(.mini-card, .lead-form-block, .hero-visual) {
  border: 1px solid color-mix(in srgb, var(--cms-primary) 20%, #e4e4e7);
  box-shadow: 0 10px 28px rgba(24, 24, 27, 0.08);
}

.cms-rendered-page.theme-radius-none :is(.mini-card, .hero-visual, .lead-form-block, .button, details),
.cms-rendered-page.theme-button-square .button {
  border-radius: 0;
}

.cms-rendered-page.theme-radius-sm :is(.mini-card, .hero-visual, .lead-form-block, details) { border-radius: 4px; }
.cms-rendered-page.theme-radius-md :is(.mini-card, .hero-visual, .lead-form-block, details) { border-radius: 8px; }
.cms-rendered-page.theme-radius-xl :is(.mini-card, .hero-visual, .lead-form-block, details) { border-radius: 16px; }
.cms-rendered-page.theme-radius-2xl :is(.mini-card, .hero-visual, .lead-form-block, details) { border-radius: 22px; }
.cms-rendered-page.theme-button-rounded .button { border-radius: 8px; }
.cms-rendered-page.theme-button-pill .button { border-radius: 999px; }
.cms-rendered-page.theme-button-outline .button { background: transparent; color: var(--cms-primary); }

.cms-rendered-page.site-width-fixed {
  max-width: var(--cms-site-max-width);
  margin-inline: auto;
}

.cms-rendered-page.site-width-boxed {
  max-width: var(--cms-site-max-width);
  margin-inline: auto;
  background: var(--cms-page-bg);
  box-shadow: 0 0 0 9999px var(--cms-boxed-bg);
}

.cms-grid-row {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  width: 100%;
  max-width: var(--cms-row-max-width, var(--cms-site-max-width));
  margin-inline: auto;
}

.site-width-full .row-width-default,
.row-width-full {
  max-width: none;
}

.site-width-fixed .row-width-default,
.row-width-fixed,
.row-width-boxed {
  max-width: var(--cms-row-max-width, var(--cms-site-max-width));
}

.row-width-boxed {
  background: #ffffff;
}

.cms-grid-cell {
  container-type: inline-size;
  min-width: 0;
}

.cms-section-header > .cms-grid-row:last-child {
  padding-bottom: 0;
}

.cms-section-body > .cms-grid-row:first-child {
  padding-top: 0;
}

.article-header-block {
  display: grid;
  align-items: center;
  gap: 34px;
  padding: 76px calc(28px * var(--cms-page-padding-scale, 1));
  border-bottom: 1px solid var(--line);
  background: color-mix(in srgb, var(--cms-primary) 6%, #ffffff);
}

.article-header-block.has-image {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
}

.article-header-copy {
  max-width: 800px;
  margin: 0 auto;
}

.article-header-copy h1 {
  max-width: 15ch;
  margin: 10px 0 16px;
  font-size: 64px;
  line-height: 1.02;
}

.article-deck {
  max-width: 62ch;
  margin: 0;
  color: var(--muted);
  font-size: 19px;
  line-height: 1.6;
}

.article-featured-image {
  width: 100%;
  height: auto;
  max-height: 520px;
  border-radius: 10px;
  object-fit: cover;
}

.article-content-block {
  max-width: 760px;
  margin: 0 auto;
  padding: 56px calc(28px * var(--cms-page-padding-scale, 1)) 80px;
}

.article-byline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-bottom: 30px;
  color: var(--muted);
  font-size: 13px;
}

.article-prose p {
  margin: 0 0 1.35em;
  color: var(--ink);
  font-size: 18px;
  line-height: 1.75;
}

.article-list-block {
  padding: 72px calc(28px * var(--cms-page-padding-scale, 1)) 88px;
}

.article-list-intro {
  max-width: 720px;
  margin-bottom: 36px;
}

.article-list-intro h1 {
  margin: 8px 0 12px;
  font-size: 56px;
  line-height: 1.05;
}

.article-list-intro > p:last-child {
  margin: 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.6;
}

.article-list-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.article-list-grid article {
  min-width: 0;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.article-list-grid time {
  color: var(--muted);
  font-size: 11px;
}

.article-list-grid h2 {
  margin: 10px 0 8px;
  font-size: 22px;
  line-height: 1.2;
}

.article-list-grid h2 a,
.article-read-link {
  text-decoration: none;
}

.article-list-grid article > p {
  color: var(--muted);
  line-height: 1.6;
}

.article-read-link {
  color: var(--cms-primary);
  font-size: 13px;
  font-weight: 750;
}

.row-pad-y-none { padding-top: 0; padding-bottom: 0; }
.row-pad-y-sm { padding-top: calc(20px * var(--cms-row-padding-scale, 1)); padding-bottom: calc(20px * var(--cms-row-padding-scale, 1)); }
.row-pad-y-md { padding-top: calc(36px * var(--cms-row-padding-scale, 1)); padding-bottom: calc(36px * var(--cms-row-padding-scale, 1)); }
.row-pad-y-lg { padding-top: calc(56px * var(--cms-row-padding-scale, 1)); padding-bottom: calc(56px * var(--cms-row-padding-scale, 1)); }
.row-pad-y-xl { padding-top: calc(76px * var(--cms-row-padding-scale, 1)); padding-bottom: calc(76px * var(--cms-row-padding-scale, 1)); }
.row-pad-y-2xl { padding-top: calc(104px * var(--cms-row-padding-scale, 1)); padding-bottom: calc(104px * var(--cms-row-padding-scale, 1)); }
.row-pad-x-none { padding-left: 0; padding-right: 0; }
.row-pad-x-sm { padding-left: calc(18px * var(--cms-page-padding-scale, 1)); padding-right: calc(18px * var(--cms-page-padding-scale, 1)); }
.row-pad-x-md { padding-left: calc(28px * var(--cms-page-padding-scale, 1)); padding-right: calc(28px * var(--cms-page-padding-scale, 1)); }
.row-pad-x-lg { padding-left: calc(42px * var(--cms-page-padding-scale, 1)); padding-right: calc(42px * var(--cms-page-padding-scale, 1)); }
.row-pad-x-xl { padding-left: calc(56px * var(--cms-page-padding-scale, 1)); padding-right: calc(56px * var(--cms-page-padding-scale, 1)); }
.row-gap-none { gap: 0; }
.row-gap-sm { gap: 12px; }
.row-gap-md { gap: 20px; }
.row-gap-lg { gap: 32px; }
.row-gap-xl { gap: 44px; }
.row-align-left { align-items: start; text-align: left; }
.row-align-center { align-items: center; text-align: center; }
.row-align-right { align-items: end; text-align: right; }

.span-desktop-1 { grid-column: span 1; }
.span-desktop-2 { grid-column: span 2; }
.span-desktop-3 { grid-column: span 3; }
.span-desktop-4 { grid-column: span 4; }
.span-desktop-5 { grid-column: span 5; }
.span-desktop-6 { grid-column: span 6; }
.span-desktop-7 { grid-column: span 7; }
.span-desktop-8 { grid-column: span 8; }
.span-desktop-9 { grid-column: span 9; }
.span-desktop-10 { grid-column: span 10; }
.span-desktop-11 { grid-column: span 11; }
.span-desktop-12 { grid-column: span 12; }

.container-narrow > *,
.container-normal > *,
.container-wide > * {
  margin-inline: auto;
}

.container-narrow > * {
  max-width: var(--cms-container-narrow-width, 760px);
}

.container-normal > * {
  max-width: var(--cms-container-normal-width, 1060px);
}

.container-wide > * {
  max-width: var(--cms-container-wide-width, 1240px);
}

.pad-y-sm {
  padding-top: calc(20px * var(--cms-row-padding-scale, 1));
  padding-bottom: calc(20px * var(--cms-row-padding-scale, 1));
}

.pad-y-md {
  padding-top: calc(36px * var(--cms-row-padding-scale, 1));
  padding-bottom: calc(36px * var(--cms-row-padding-scale, 1));
}

.pad-y-lg {
  padding-top: calc(56px * var(--cms-row-padding-scale, 1));
  padding-bottom: calc(56px * var(--cms-row-padding-scale, 1));
}

.pad-y-xl {
  padding-top: calc(76px * var(--cms-row-padding-scale, 1));
  padding-bottom: calc(76px * var(--cms-row-padding-scale, 1));
}

.pad-y-2xl {
  padding-top: calc(104px * var(--cms-row-padding-scale, 1));
  padding-bottom: calc(104px * var(--cms-row-padding-scale, 1));
}

.pad-x-sm,
.pad-x-md,
.pad-x-lg,
.pad-x-xl {
  padding-left: calc(28px * var(--cms-page-padding-scale, 1));
  padding-right: calc(28px * var(--cms-page-padding-scale, 1));
}

.background-gradient {
  background:
    linear-gradient(135deg, rgba(15, 118, 110, 0.14), rgba(245, 158, 11, 0.12)),
    #ffffff;
}

.background-solid {
  background: #f8fafc;
}

.surface-glass .hero-visual,
.surface-glass .lead-form-block,
.surface-glass .mini-card,
.surface-glass .navbar-block {
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(16px);
}

.surface-layered .mini-card,
.surface-layered .hero-visual {
  background: linear-gradient(180deg, #ffffff, #f4f4f5);
}

.radius-lg .mini-card,
.radius-lg .hero-visual,
.radius-lg .lead-form-block,
.radius-lg .button {
  border-radius: 12px;
}

.radius-xl .mini-card,
.radius-xl .hero-visual,
.radius-xl .lead-form-block,
.radius-xl .button {
  border-radius: 16px;
}

.radius-2xl .mini-card,
.radius-2xl .hero-visual,
.radius-2xl .lead-form-block,
.radius-2xl .button {
  border-radius: 22px;
}

.shadow-soft .mini-card,
.shadow-soft .hero-visual,
.shadow-soft .lead-form-block {
  box-shadow: 0 12px 30px rgba(24, 24, 27, 0.08);
}

.shadow-medium .mini-card,
.shadow-medium .hero-visual,
.shadow-medium .lead-form-block {
  box-shadow: 0 18px 46px rgba(24, 24, 27, 0.14);
}

.border-subtle .mini-card,
.border-subtle .navbar-block,
.border-subtle details,
.border-subtle .footer-block {
  border: 1px solid var(--line);
}

.animation-fade-in { animation: cms-fade-in 420ms ease-out both; }
.animation-fade-up { animation: cms-fade-up 480ms ease-out both; }
.animation-scale-in { animation: cms-scale-in 420ms ease-out both; }
.animation-slide-left { animation: cms-slide-left 480ms ease-out both; }
.animation-slide-right { animation: cms-slide-right 480ms ease-out both; }

@keyframes cms-fade-in {
  from { opacity: 0; }
}

@keyframes cms-fade-up {
  from { opacity: 0; transform: translateY(18px); }
}

@keyframes cms-scale-in {
  from { opacity: 0; transform: scale(0.98); }
}

@keyframes cms-slide-left {
  from { opacity: 0; transform: translateX(24px); }
}

@keyframes cms-slide-right {
  from { opacity: 0; transform: translateX(-24px); }
}

.navbar-block,
.footer-block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 16px 20px;
}

.brand-mark {
  color: var(--cms-primary);
  font-weight: 800;
  text-decoration: none;
}

.brand-logo {
  display: block;
  width: auto;
  max-width: 160px;
  height: 32px;
  object-fit: contain;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.nav-links a {
  color: inherit;
  text-decoration: none;
  font-size: 14px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid var(--cms-primary);
  background: var(--cms-primary);
  color: #ffffff;
  text-decoration: none;
  font-weight: 700;
}

.button-secondary {
  background: #ffffff;
  color: var(--cms-primary);
}

.button-compact {
  min-height: 34px;
}

.button-pill .button {
  border-radius: 999px;
}

.button-gradient .button {
  border: 0;
  background: linear-gradient(135deg, var(--cms-primary), var(--cms-secondary));
}

.hero-block {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
  gap: 44px;
  align-items: center;
}

.hero-copy h1 {
  margin: 0;
  max-width: 760px;
  font-size: clamp(42px, 7cqi, 78px);
  line-height: 0.96;
  letter-spacing: 0;
}

.eyebrow {
  margin: 0 0 12px;
  color: color-mix(in srgb, var(--cms-secondary) 72%, #171918);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
}

.cms-rendered-page.theme-mode-dark .eyebrow {
  color: color-mix(in srgb, var(--cms-secondary) 72%, #ffffff);
}

.lead,
.section-intro {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.65;
}

.hero-visual {
  min-height: 360px;
  padding: 18px;
  border: 1px solid rgba(15, 118, 110, 0.16);
}

.hero-visual.has-image {
  padding: 0;
  overflow: hidden;
}

.hero-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.browser-bar {
  display: flex;
  gap: 7px;
  padding-bottom: 18px;
}

.browser-bar span {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--cms-secondary);
}

.browser-bar span:nth-child(2) {
  background: var(--accent);
}

.browser-bar span:nth-child(3) {
  background: var(--cms-primary);
}

.visual-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  grid-template-rows: 130px 150px;
  gap: 12px;
}

.visual-grid div {
  border-radius: 12px;
  background: #e2e8f0;
}

.visual-grid div:first-child {
  grid-row: span 2;
  background: linear-gradient(160deg, var(--cms-primary), #14b8a6);
}

.visual-grid div:nth-child(3) {
  background: linear-gradient(160deg, var(--accent), var(--cms-secondary));
}

.content-block h2,
.lead-form-block h2 {
  margin: 0;
  font-size: clamp(30px, 4cqi, 48px);
  line-height: 1.05;
  letter-spacing: 0;
}

.card-grid {
  display: grid;
  gap: 18px;
  margin-top: 24px;
}

.columns-1 .card-grid {
  grid-template-columns: 1fr;
}

.columns-2 .card-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.columns-3 .card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.columns-4 .card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mini-card,
.lead-form-block {
  border: 1px solid var(--line);
  padding: 22px;
}

.mini-card h3 {
  margin: 0 0 8px;
}

.mini-card p,
.mini-card li,
.lead-form-block p,
.footer-block p {
  color: var(--muted);
  line-height: 1.6;
}

.price {
  font-size: 34px;
  font-weight: 800;
  color: var(--cms-primary) !important;
}

.faq-list {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

details {
  padding: 16px 18px;
  border-radius: 10px;
}

summary {
  cursor: pointer;
  font-weight: 700;
}

.lead-form-block form {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.lead-form-block label {
  display: grid;
  gap: 6px;
  font-weight: 700;
}

.lead-form-block input,
.lead-form-block select,
.lead-form-block textarea {
  width: 100%;
  border: 1px solid #d4d4d8;
  border-radius: 9px;
  min-height: 42px;
  padding: 10px 12px;
}

.lead-form-block .form-choice-group {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
}

.lead-form-block .form-choice-group legend {
  margin-bottom: 6px;
  font-weight: 700;
}

.lead-form-block .form-choice {
  display: flex;
  grid-template-columns: none;
  align-items: center;
  gap: 8px;
  font-weight: 500;
}

.lead-form-block .form-choice input {
  width: 18px;
  min-height: 18px;
  margin: 0;
  padding: 0;
}

.lead-form-block textarea {
  min-height: 110px;
}

.honeypot {
  position: absolute;
  left: -9999px;
}

.lead-form-block .form-privacy-note {
  margin: 0;
  color: #52525b;
  font-size: 12px;
  line-height: 1.55;
}

.form-privacy-note a {
  color: inherit;
  font-weight: 700;
}

.xyro-consent {
  position: fixed;
  z-index: 1000;
  right: 16px;
  bottom: 16px;
  left: 16px;
  pointer-events: none;
}

.xyro-consent [hidden] {
  display: none;
}

.xyro-consent-panel {
  width: min(520px, 100%);
  margin-left: auto;
  padding: 18px;
  border: 1px solid #d4d4d8;
  border-radius: 8px;
  background: #fff;
  color: #18181b;
  box-shadow: 0 12px 32px rgb(24 24 27 / 16%);
  pointer-events: auto;
}

.xyro-consent-panel strong {
  display: block;
  font-size: 16px;
}

.xyro-consent-panel p {
  margin: 8px 0 16px;
  color: #52525b;
  font-size: 13px;
  line-height: 1.5;
}

.xyro-consent-panel a {
  color: #126e60;
  font-weight: 700;
}

.xyro-consent-panel div {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.xyro-consent-panel button,
.xyro-consent-open {
  min-height: 40px;
  border: 1px solid #a1a1aa;
  border-radius: 6px;
  background: #fff;
  color: #18181b;
  padding: 8px 14px;
  font: inherit;
  cursor: pointer;
}

.xyro-consent-panel [data-xyro-consent="grant"] {
  border-color: #126e60;
  background: #126e60;
  color: #fff;
}

.xyro-consent-open {
  display: block;
  margin-left: auto;
  box-shadow: 0 4px 16px rgb(24 24 27 / 12%);
  pointer-events: auto;
}

.xyro-consent-status {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

@media (max-width: 480px) {
  .xyro-consent { right: 10px; bottom: 10px; left: 10px; }
  .xyro-consent-panel { padding: 16px; }
  .xyro-consent-panel div { display: grid; }
  .xyro-consent-panel button { width: 100%; }
}

.form-note {
  display: none;
  margin: 0;
  font-size: 13px;
}

.form-note:target {
  display: block;
}

.form-note-success {
  color: #12695f;
}

.form-note-error {
  color: #b42318;
}

.footer-block {
  background: var(--ink);
  color: #ffffff;
}

.footer-block p {
  color: #d4d4d8;
}

@media (max-width: 760px) {
  .navbar-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 16px;
    padding: 12px 16px;
  }

  .navbar-block .nav-links {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: row;
    gap: 4px 16px;
  }

  .footer-block {
    align-items: flex-start;
    flex-direction: column;
  }

  .brand-mark,
  .nav-links a {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
  }

  .hero-block,
  .columns-2 .card-grid,
  .columns-3 .card-grid,
  .columns-4 .card-grid {
    grid-template-columns: 1fr;
  }

  .hero-copy h1 {
    font-size: 42px;
  }

  .article-header-block,
  .article-header-block.has-image {
    grid-template-columns: 1fr;
    padding-block: 44px;
  }

  .article-header-copy h1 {
    font-size: 42px;
  }

  .article-deck,
  .article-prose p {
    font-size: 16px;
  }

  .article-list-block {
    padding-block: 48px;
  }

  .article-list-intro h1 {
    font-size: 42px;
  }

  .article-list-grid {
    grid-template-columns: 1fr;
  }
}

@container (max-width: 680px) {
  .hero-block,
  .article-header-block,
  .article-header-block.has-image,
  .columns-2 .card-grid,
  .columns-3 .card-grid,
  .columns-4 .card-grid {
    grid-template-columns: 1fr;
  }

  .hero-copy h1,
  .article-header-copy h1,
  .article-list-intro h1 {
    font-size: clamp(36px, 10cqi, 52px);
  }

  .navbar-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 16px;
  }

  .navbar-block .nav-links {
    grid-column: 1 / -1;
  }

  .footer-block {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  [class*="animation-"] {
    animation: none !important;
  }
}

@media (max-width: 900px) {
  .span-tablet-1 { grid-column: span 1; }
  .span-tablet-2 { grid-column: span 2; }
  .span-tablet-3 { grid-column: span 3; }
  .span-tablet-4 { grid-column: span 4; }
  .span-tablet-5 { grid-column: span 5; }
  .span-tablet-6 { grid-column: span 6; }
  .span-tablet-7 { grid-column: span 7; }
  .span-tablet-8 { grid-column: span 8; }
  .span-tablet-9 { grid-column: span 9; }
  .span-tablet-10 { grid-column: span 10; }
  .span-tablet-11 { grid-column: span 11; }
  .span-tablet-12 { grid-column: span 12; }
}

@media (max-width: 640px) {
  .span-mobile-1 { grid-column: span 1; }
  .span-mobile-2 { grid-column: span 2; }
  .span-mobile-3 { grid-column: span 3; }
  .span-mobile-4 { grid-column: span 4; }
  .span-mobile-5 { grid-column: span 5; }
  .span-mobile-6 { grid-column: span 6; }
  .span-mobile-7 { grid-column: span 7; }
  .span-mobile-8 { grid-column: span 8; }
  .span-mobile-9 { grid-column: span 9; }
  .span-mobile-10 { grid-column: span 10; }
  .span-mobile-11 { grid-column: span 11; }
  .span-mobile-12 { grid-column: span 12; }
}

@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/instrument-sans.woff2') format('woff2')}
@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url('/assets/newsreader.woff2') format('woff2')}
:root{--ink:#17211c;--muted:#5f6d66;--line:#dbe5df;--primary:#167a4b;--panel:#fff;--canvas:#f5f8f6}html{scroll-behavior:auto}body{font:17px/1.6 "Instrument Sans",Arial,sans-serif;background:var(--canvas);color:var(--ink)}.cms-rendered-page{font-family:"Instrument Sans",Arial,sans-serif;max-width:none;margin:0;padding:0;background:var(--canvas)}.cms-rendered-page h1,.cms-rendered-page h2{font-family:Newsreader,Georgia,serif;letter-spacing:-.035em;font-weight:500}.cms-rendered-page h1{font-size:clamp(42px,5.2vw,76px);line-height:1.04;max-width:16ch;margin:0}.cms-rendered-page h2{font-size:clamp(32px,3.4vw,44px);line-height:1.12;margin:0}.cms-rendered-page h3{font:600 22px/1.3 "Instrument Sans",Arial,sans-serif;letter-spacing:-.02em;margin:0}.cms-section,.cms-grid-section{max-width:1200px;width:calc(100% - 64px);margin:auto}.cms-row,.cms-grid-row{margin:0;padding:0;max-width:none;width:100%;gap:0}.cms-grid-cell{padding:0}.cms-block{padding:0!important;border-radius:0;max-width:none;margin:0;background:transparent;border:0;box-shadow:none}.cms-rendered-page p{font-size:17px;line-height:1.6;color:var(--muted)}.cms-rendered-page .eyebrow{font-family:"Instrument Sans",Arial,sans-serif;font-size:14px;letter-spacing:0;text-transform:none;font-weight:600;color:var(--primary)}.cms-rendered-page .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:#fff;font:600 15px/1.4 "Instrument Sans",Arial,sans-serif;text-decoration:none;box-shadow:none;transform:none}.cms-rendered-page .button:hover{background:#105f3a;color:#fff;transform:none}.cms-rendered-page .button-secondary{background:transparent;color:var(--ink);border-color:#b9cbc1}.cms-rendered-page .button-secondary:hover{background:#eef4f1;color:var(--ink)}a:focus-visible,summary:focus-visible{outline:3px solid #356ae6;outline-offset:4px}a{touch-action:manipulation}.navbar-block{display:flex;justify-content:space-between;align-items:center;min-height:88px;gap:24px;padding:16px 0;border-bottom:1px solid var(--line);background:none;box-shadow:none;backdrop-filter:none}.navbar-block .brand-mark,.footer-block strong{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:600;letter-spacing:-.04em;color:var(--ink);text-decoration:none}.navbar-block .brand-mark:before,.footer-block strong:before{content:'';width:32px;height:32px;background:url('/assets/mark.svg') center/contain no-repeat;flex-shrink:0}.nav-links{display:flex;flex-wrap:wrap;gap:24px;margin-left:auto}.nav-links a,.footer-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:14px;font-weight:500;text-decoration:none}.nav-links a:hover,.footer-links a:hover{color:var(--primary)}.hero-block{display:flex;flex-direction:column;gap:48px;padding-top:64px;align-items:stretch}.hero-copy{max-width:850px}.hero-copy .eyebrow{margin:0 0 20px}.hero-copy .lead{font-size:18px;max-width:650px;line-height:1.6;margin:24px 0 0}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-visual.has-image{display:block;width:100%;aspect-ratio:1440/780;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 24px 64px rgba(23,33,28,.12);transform:none}.hero-visual.has-image .hero-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:0}.article-content-block{max-width:none;padding:0 0 48px;margin:0}.article-content-block p{font-size:15px;max-width:75ch;margin:20px auto 0;text-align:center}.content-block{padding:72px 0}.content-block>.eyebrow{margin:0 0 16px}.content-block>.section-intro{font-size:16px;margin:20px 0 0;max-width:65ch}.card-grid{display:grid;gap:0;margin-top:32px;grid-template-columns:1fr}.mini-card{border:0;border-top:1px solid var(--line);border-radius:0;padding:24px 0;background:transparent;box-shadow:none}.mini-card p{font-size:16px;line-height:1.6;margin:12px 0 0;max-width:65ch}#workflow,#modules{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:0 80px;align-items:start;border-top:1px solid var(--line)}#workflow>.eyebrow,#modules>.eyebrow{grid-column:1}#workflow>h2,#modules>h2{grid-column:1}#workflow>.section-intro,#modules>.section-intro{grid-column:1}#workflow>.card-grid,#modules>.card-grid{grid-column:2;grid-row:1/5;margin:0}#workflow .mini-card:first-child,#modules .mini-card:first-child{border:0;padding-top:0}#pricing{border-top:1px solid var(--line)}#pricing .card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}#pricing .mini-card{padding:24px;border:1px solid #b9cbc1;border-radius:8px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;text-align:left}#pricing .price{font-family:Newsreader,Georgia,serif;font-size:30px;line-height:1.2;color:var(--ink);font-weight:500;letter-spacing:-.035em;margin-top:20px}#pricing ul{font-size:15px;line-height:1.6;padding-left:20px;color:var(--muted);margin-block:20px 24px}#pricing .button{margin-top:auto;min-height:48px;font-size:14px;width:100%}#installation{padding:48px;background:#14231d;border-radius:8px;color:#f3f8f5;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:0 56px;margin-top:16px}#installation>.eyebrow{grid-column:1;color:#c8d8cf}#installation>h2{grid-column:1;color:#f3f8f5}#installation>.section-intro{grid-column:1;color:#c8d8cf}#installation>.card-grid{grid-column:2;grid-row:1/5;margin:0}#installation .mini-card{border-color:#466051;padding-block:20px}#installation .mini-card:first-child{border:0;padding-top:0}#installation .mini-card:first-child h3{font-size:16px;line-height:1.5;border:1px solid #e8c77e;border-radius:5px;background:#fff3d6;color:#714600;padding:12px 16px}#installation .mini-card h3{font-size:18px;color:#f3f8f5}#installation .mini-card p{color:#c8d8cf;font-size:15px}#faq{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:80px;padding-block:88px}#faq>.faq-list{margin:0}.faq-list details{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{min-height:56px;padding:16px 4px;cursor:pointer;font-size:16px;line-height:1.5;font-weight:500}.faq-list p{font-size:16px;margin:0;padding:0 4px 20px}.footer-block{display:flex;justify-content:space-between;gap:32px;align-items:flex-start;padding:32px 0 48px;border-top:1px solid var(--line)}.footer-block p{font-size:14px;margin-top:12px;max-width:50ch}.footer-links{display:flex;flex-wrap:wrap;gap:24px}.product-skip{position:absolute;z-index:10;top:8px;left:16px;padding:12px 16px;background:#fff;color:var(--ink);border:2px solid #356ae6;transform:translateY(-200%)}.product-skip:focus{transform:none}
@media(max-width:1023px){.cms-section,.cms-grid-section{width:calc(100% - 48px)}#workflow,#modules,#faq{gap:0 40px}.content-block{padding-block:64px}#installation{padding:36px;gap:0 32px}#pricing .card-grid{gap:16px}#pricing .mini-card{padding:20px}}
@media(max-width:959px){#workflow,#modules,#faq,#installation{display:block}#workflow>.card-grid,#modules>.card-grid,#installation>.card-grid{margin-top:32px}.content-block>h2{max-width:20ch}.hero-copy{max-width:760px}#faq>.faq-list{margin-top:32px}#pricing .card-grid{grid-template-columns:1fr}#pricing .mini-card{display:block}#pricing .button{width:auto}#pricing .price{font-size:32px}.hero-block{padding-top:48px}#installation .mini-card:first-child{border:0}}
@media(max-width:639px){.cms-section,.cms-grid-section{width:calc(100% - 40px)}.navbar-block{display:flex;flex-wrap:wrap;gap:8px 16px;padding-block:12px;min-height:68px}.navbar-block .brand-mark{font-size:21px}.navbar-block .brand-mark:before{width:28px;height:28px}.navbar-block>.button{margin-left:auto;order:2;padding-inline:12px;font-size:14px}.nav-links{order:3;flex-basis:100%;margin:0;gap:24px}.hero-block{padding-top:36px;gap:32px}.cms-rendered-page h1{font-size:clamp(40px,10.5vw,58px)}.hero-copy .lead{font-size:17px;margin-top:20px}.hero-copy .eyebrow{margin-bottom:16px}.cms-rendered-page .button{padding:12px 16px}.article-content-block{padding-bottom:32px}.article-content-block p{text-align:left;font-size:14px}.content-block{padding-block:48px}#installation{padding:28px 20px}#faq{padding-block:48px}.footer-block{flex-direction:column;gap:20px}.footer-links{gap:24px}.mini-card{padding-block:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.navbar-block .brand-mark{min-height:44px}.cms-rendered-page .hero-note{font-size:14px;color:var(--muted);margin:16px 0 0}.cms-rendered-page .mini-card h3{font:600 22px/1.3 "Instrument Sans",Arial,sans-serif}.cms-rendered-page #installation .mini-card h3{font-size:18px}.cms-rendered-page #installation .mini-card:first-child h3{font-size:16px}.cms-rendered-page .footer-block{background:transparent;color:var(--ink)}

.nav-links a,.footer-links a{min-width:44px}
