@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/assets/fonts/InterVariable-latin.woff2") format("woff2");
}

:root{
--tqm-navy:#0c1728;
--tqm-green:#a7d385;
--navy-950:#050a13;
--navy-900:#070e19;
--navy-800:#0c1728;
--navy-700:#142337;
--navy-600:#1d3049;
--navy-500:#2b425f;
--navy-400:#41597a;
--navy-300:#64799a;
--green-700:#4f8531;
--green-600:#6fa84b;
--green-500:#8cc163;
--green-400:#a7d385;
--green-300:#c2e2aa;
--green-200:#ddefd0;
--green-100:#f1f9ea;
--white:#ffffff;
--neutral-50:#f7f8fa;
--neutral-100:#eef0f4;
--neutral-200:#e1e5eb;
--neutral-300:#cbd2db;
--neutral-400:#a6b0bd;
--neutral-500:#7b8695;
--neutral-600:#5a6473;
--neutral-700:#3f4855;
--neutral-800:#28303c;
--success-600:#2f7d4f;
--success-100:#e4f3ea;
--warning-600:#b97309;
--warning-500:#e9a23b;
--warning-100:#fdf1de;
--danger-600:#c0392f;
--danger-500:#d6453d;
--danger-100:#fbe9e7;
--info-600:#2f6ea8;
--info-100:#e6f0f9;
--star:#f2b01e;
--text-primary:var(--navy-800);
--text-secondary:var(--navy-500);
--text-muted:var(--neutral-500);
--text-inverse:var(--white);
--text-inverse-muted:rgba(255,255,255,.72);
--text-accent:var(--green-700);
--text-link:var(--navy-800);
--text-link-hover:var(--green-700);
--surface-page:var(--white);
--surface-subtle:var(--neutral-50);
--surface-card:var(--white);
--surface-sunken:var(--neutral-100);
--surface-ink:var(--navy-800);
--surface-ink-deep:var(--navy-900);
--surface-ink-soft:var(--navy-700);
--surface-accent:var(--green-400);
--surface-accent-soft:var(--green-100);
--border-subtle:var(--neutral-200);
--border-default:var(--neutral-300);
--border-strong:var(--navy-800);
--border-accent:var(--green-400);
--border-on-ink:rgba(255,255,255,.14);
--accent:var(--green-400);
--accent-hover:var(--green-500);
--accent-press:var(--green-600);
--ink-hover:var(--navy-700);
--ink-press:var(--navy-900);
--focus-ring:rgba(140,193,99,.6);
--scrim-hero:linear-gradient(180deg,rgba(7,14,25,.25) 0%,rgba(7,14,25,.72) 60%,rgba(7,14,25,.92) 100%);
--scrim-media:linear-gradient(180deg,rgba(7,14,25,0) 40%,rgba(7,14,25,.78) 100%);
--scrim-flat:rgba(7,14,25,.6);
--glass-on-ink:rgba(255,255,255,.08);
}

:root{
--font-display:'Helvetica Neue',Helvetica,Arial,'Inter',sans-serif;
--font-text:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;
--font-icon:'Material Symbols Outlined';
--weight-regular:400;
--weight-medium:500;
--weight-semibold:600;
--weight-bold:700;
--weight-extrabold:800;
--weight-black:900;
--display-1-size:72px;
--display-1-lh:0.94;
--display-1-track:-0.02em;
--display-2-size:56px;
--display-2-lh:0.96;
--display-2-track:-0.02em;
--h1-size:44px;
--h1-lh:1.02;
--h1-track:-0.015em;
--h2-size:34px;
--h2-lh:1.08;
--h2-track:-0.01em;
--h3-size:26px;
--h3-lh:1.15;
--h3-track:-0.01em;
--h4-size:20px;
--h4-lh:1.25;
--h4-track:-0.005em;
--body-lg-size:18px;
--body-lg-lh:1.62;
--body-size:16px;
--body-lh:1.65;
--body-sm-size:14px;
--body-sm-lh:1.55;
--caption-size:12.5px;
--caption-lh:1.45;
--eyebrow-size:13px;
--eyebrow-track:0.18em;
--eyebrow-weight:700;
--label-size:13px;
--label-track:0.02em;
--label-weight:600;
--button-size:15px;
--button-track:0.04em;
--button-weight:700;
--stat-size:40px;
--stat-lh:1;
--stat-track:-0.02em;
}

:root{
--space-0:0;
--space-1:4px;
--space-2:8px;
--space-3:12px;
--space-4:16px;
--space-5:20px;
--space-6:24px;
--space-7:32px;
--space-8:40px;
--space-9:48px;
--space-10:56px;
--space-11:64px;
--space-12:80px;
--space-13:96px;
--space-14:120px;
--space-15:160px;
--gutter:24px;
--card-pad:24px;
--card-pad-lg:32px;
--section-y:96px;
--section-y-tight:64px;
--section-y-mobile:56px;
--page-max:1200px;
--page-max-narrow:760px;
--page-pad:24px;
--control-h-sm:36px;
--control-h:46px;
--control-h-lg:56px;
--tap-min:44px;
--header-pad-y:clamp(12px,1.6vw,16px);
}

:root{
--radius-none:0;
--radius-xs:2px;
--radius-sm:4px;
--radius-md:8px;
--radius-lg:14px;
--radius-xl:20px;
--radius-2xl:28px;
--radius-pill:999px;
--radius-button:var(--radius-sm);
--radius-input:var(--radius-sm);
--radius-card:var(--radius-lg);
--radius-media:var(--radius-lg);
--radius-tag:var(--radius-pill);
--border-hairline:1px;
--border-thick:2px;
--rule-accent:3px;
}

:root{
--shadow-xs:0 1px 2px rgba(12,23,40,.06);
--shadow-sm:0 2px 6px rgba(12,23,40,.08);
--shadow-md:0 8px 20px -6px rgba(12,23,40,.14);
--shadow-lg:0 20px 44px -12px rgba(12,23,40,.22);
--shadow-xl:0 36px 80px -24px rgba(12,23,40,.32);
--shadow-card:var(--shadow-sm);
--shadow-card-hover:var(--shadow-md);
--shadow-inset-top:inset 0 1px 0 rgba(255,255,255,.06);
--shadow-focus:0 0 0 3px var(--focus-ring);
--blur-glass:blur(14px);
}

:root{
--dur-instant:80ms;
--dur-fast:140ms;
--dur-base:200ms;
--dur-slow:320ms;
--dur-reveal:520ms;
--ease-standard:cubic-bezier(.4,0,.2,1);
--ease-out:cubic-bezier(.22,1,.36,1);
--ease-in:cubic-bezier(.4,0,1,1);
--lift-hover:-2px;
--press-scale:.985;
--transition-control:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard);
}

*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font-text);font-size:var(--body-size);line-height:var(--body-lh);color:var(--text-primary);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-bold);margin:0;text-wrap:balance}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration-color:var(--green-400);text-decoration-thickness:2px;text-underline-offset:3px;transition:color var(--dur-fast) var(--ease-standard)}
a:hover{color:var(--text-link-hover)}
::selection{background:var(--green-300);color:var(--navy-900)}
:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.skip-link {
  position: absolute;
  left: -9999px;
  z-index: 100;
  padding: var(--space-3) var(--space-4);
  background: var(--white);
  font-weight: var(--weight-bold);
}

.skip-link:focus {
  left: var(--space-4);
  top: var(--space-4);
}

@media (forced-colors: active) {
  :focus-visible { outline: 3px solid; }
}

img { display: block; max-width: 100%; height: auto; }

h1, h2, h3, h4 { text-transform: uppercase; }
h1 { font-size: clamp(32px, 3vw + 20px, var(--h1-size)); line-height: var(--h1-lh); letter-spacing: var(--h1-track); }
h2 { font-size: clamp(26px, 2vw + 18px, var(--h2-size)); line-height: var(--h2-lh); letter-spacing: var(--h2-track); }
h3 { font-size: clamp(20px, 1vw + 16px, var(--h3-size)); line-height: var(--h3-lh); letter-spacing: var(--h3-track); }
h4 { font-size: var(--h4-size); line-height: var(--h4-lh); letter-spacing: var(--h4-track); }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: var(--space-2) var(--space-6);
  font-family: var(--font-text);
  font-size: var(--button-size);
  font-weight: var(--button-weight);
  letter-spacing: var(--button-track);
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  background: transparent;
  border: var(--border-thick) solid transparent;
  border-radius: var(--radius-button);
  cursor: pointer;
  transition: var(--transition-control);
}
.button:hover { transform: translateY(var(--lift-hover)); box-shadow: var(--shadow-md); }
.button:active { transform: scale(var(--press-scale)); box-shadow: none; }
.button:focus-visible { box-shadow: var(--shadow-focus); }
.button--primary { color: var(--navy-900); background: var(--green-400); }
.button--primary:hover { color: var(--navy-900); background: var(--green-500); }
.button--primary:active { background: var(--green-600); }
.button--secondary { color: var(--navy-800); border-color: var(--navy-800); }
.button--secondary:hover { color: var(--white); background: var(--navy-800); }
.button--secondary:active { background: var(--navy-900); }

.icon { display: inline-flex; flex: 0 0 auto; width: 1.25em; height: 1.25em; fill: currentColor; }
.icon svg { width: 100%; height: 100%; }

.site-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  --header-pad-x: clamp(20px, 3vw, 48px);
  gap: var(--space-2);
  padding: var(--header-pad-y) var(--header-pad-x);
  color: var(--white);
  background: var(--navy-800);
  border-bottom: var(--border-hairline) solid var(--border-on-ink);
}
.site-header__brand { display: flex; align-items: center; min-height: 48px; margin-right: auto; }
.site-header__brand img { width: auto; height: 20px; }
.site-header__call {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: var(--border-hairline) solid rgba(255,255,255,.3);
  border-radius: var(--radius-input);
}
.site-header__toggle { display: none; }
.has-menu-toggle .site-header__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  background: var(--green-400);
  border: 0;
  border-radius: var(--radius-input);
  cursor: pointer;
  transition: var(--transition-control);
}
.has-menu-toggle .site-header__toggle:hover { background: var(--green-500); }
.site-header .icon { color: var(--green-400); }
.site-header__call .icon { width: 20px; height: 20px; }
.site-header .site-header__toggle .icon { width: 24px; height: 24px; color: var(--navy-900); }
.site-header__toggle .icon:last-child { display: none; }
.site-header__phone, .site-header__quote { display: none; }
.site-nav { flex-basis: 100%; }
.has-menu-toggle .site-nav { display: none; }
.site-nav ul { list-style: none; margin: 0; padding: 0; }
.site-nav__item > a, .site-nav summary, .site-nav__menu a, .site-nav__hub {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  min-height: 48px;
  font-size: 15px;
  font-weight: var(--weight-medium);
  color: var(--white);
  text-decoration: none;
  cursor: pointer;
}
.site-nav__item > a:hover, .site-nav summary:hover, .site-nav__menu a:hover, .site-nav [aria-current="page"] { color: var(--green-400); }
.site-nav summary { justify-content: space-between; list-style: none; }
.site-nav summary::-webkit-details-marker { display: none; }
.site-nav summary .icon { transition: transform var(--dur-fast) var(--ease-standard); }
.site-nav__group[open] > summary .icon { transform: rotate(180deg); }
.site-nav__item + .site-nav__item { border-top: var(--border-hairline) solid var(--border-on-ink); }
.site-nav__menu { padding: 0 0 var(--space-2) var(--space-2); }
.site-nav__menu a { align-items: flex-start; padding-block: var(--space-3); }
.site-nav__menu .icon, .site-nav__hub .icon { width: 22px; height: 22px; }
.site-nav__label { display: block; }
.site-nav__note { display: block; margin-top: 2px; font-size: 13px; font-weight: var(--weight-regular); line-height: 1.5; color: var(--text-inverse-muted); }
.site-nav__rail { display: none; }
.site-nav__hub {
  margin: 0 0 var(--space-3) var(--space-2);
  padding: var(--space-3) var(--space-4);
  background: rgba(167,211,133,.12);
  border: var(--border-thick) solid var(--green-400);
  border-radius: var(--radius-button);
}
.site-nav__hub:hover { color: var(--white); background: rgba(167,211,133,.24); border-color: var(--green-400); }
.site-nav__hub > span:not(.icon) { display: flex; flex: 1; flex-wrap: wrap; align-items: baseline; column-gap: var(--space-3); }
.site-nav__hub .site-nav__note { margin-top: 0; }
.site-nav__foot { display: none; }

.sticky-bar {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 30;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  background: var(--navy-900);
  border-top: var(--border-hairline) solid rgba(255,255,255,.12);
}
.sticky-bar .button { gap: 8px; padding-inline: var(--space-3); }
.sticky-bar .button--secondary { color: var(--white); border-width: var(--border-hairline); border-color: rgba(255,255,255,.3); }
.sticky-bar .button--secondary:hover { color: var(--white); background: rgba(255,255,255,.12); }
body { padding-bottom: 80px; }

.breadcrumb { max-width: var(--page-max); margin-inline: auto; padding: var(--space-2) var(--page-pad) 0; font-size: var(--body-sm-size); }
.breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 0 var(--space-2); list-style: none; margin: 0; padding: 0; }
.breadcrumb li { display: flex; align-items: center; }
.breadcrumb li + li::before { content: "›"; content: "›" / ""; margin-right: var(--space-2); color: var(--text-muted); }
.breadcrumb a { display: inline-flex; align-items: center; min-width: 48px; min-height: 48px; color: var(--text-secondary); }
.breadcrumb [aria-current] { color: var(--text-primary); font-weight: var(--weight-semibold); }

.site-footer {
  padding: var(--space-12) max(var(--page-pad), calc((100% - 1392px) / 2)) var(--space-6);
  color: var(--text-inverse-muted);
  background: var(--surface-ink-deep);
}
.site-footer a { color: var(--text-inverse-muted); text-decoration: none; }
.site-footer a:hover { color: var(--white); }
.site-footer__grid { display: grid; gap: var(--space-9) var(--space-7); grid-template-areas: "brand" "links" "contact"; }
.site-footer__brand { grid-area: brand; display: grid; align-content: start; justify-items: start; gap: var(--space-4); max-width: 320px; }
.site-footer__brand img { width: auto; height: 36px; }
.site-footer__brand p { font-size: var(--body-sm-size); line-height: 1.6; }
.site-footer .site-footer__rating { font-weight: var(--weight-bold); color: var(--white); }
.site-footer__stars { display: inline-flex; gap: 2px; color: var(--star); }
.site-footer__columns { grid-area: links; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-7) var(--space-6); }
.site-footer__contact { grid-area: contact; display: grid; align-content: start; justify-items: start; }
.site-footer__heading {
  margin-bottom: var(--space-3);
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: var(--weight-bold);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--white);
}
.site-footer__column ul { list-style: none; margin: 0; padding: 0; }
.site-footer__brand > a, .site-footer__column a, .site-footer__contact a, .site-footer__bar a { display: inline-flex; align-items: center; gap: var(--space-3); min-width: 48px; min-height: 48px; }
.site-footer__contact .icon { color: var(--green-400); }
.site-footer .site-footer__phone { font-size: 18px; font-weight: var(--weight-semibold); color: var(--white); }
.site-footer .site-footer__phone:hover { color: var(--green-400); }
.site-footer__contact p { font-size: var(--body-sm-size); line-height: 1.7; }
.site-footer__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0 var(--space-6);
  margin-top: var(--space-9);
  padding-top: var(--space-3);
  border-top: var(--border-hairline) solid var(--border-on-ink);
  font-size: var(--caption-size);
}
.site-footer__bar a[href*="bigfox"]:hover { color: #FE701F; }

.to-top {
  position: fixed;
  right: var(--space-4);
  bottom: calc(80px + env(safe-area-inset-bottom));
  z-index: 30;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 0;
  color: var(--white);
  background: var(--navy-800);
  border: var(--border-hairline) solid rgba(255,255,255,.3);
  border-radius: var(--radius-input);
  box-shadow: var(--shadow-md);
  cursor: pointer;
  transition: var(--transition-control);
}
.to-top[hidden] { display: none; }
.to-top:hover { background: var(--navy-700); }
.to-top .icon { width: 24px; height: 24px; }

.has-hero-overlay { --header-h: calc(48px + 2 * var(--header-pad-y) + 1px); }
.has-hero-overlay .site-header { position: absolute; inset: 0 0 auto; z-index: 20; background: transparent; border-bottom-color: transparent; }
.has-hero-overlay .hero { padding-top: var(--header-h); }

@media (max-width: 59.99em) {
  .menu-open { overflow: hidden; }
  .menu-open .site-header {
    position: fixed;
    inset: 0;
    z-index: 40;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto minmax(0, 1fr);
    align-items: stretch;
    gap: var(--header-pad-y) 0;
    padding: var(--header-pad-y) 0 0;
    background: var(--navy-800);
    border-bottom: 0;
  }
  .menu-open .site-header__brand { justify-self: start; padding-left: var(--header-pad-x); }
  .menu-open .site-header__call, .menu-open .sticky-bar { display: none; }
  .menu-open .site-header__toggle { margin-right: var(--header-pad-x); background: transparent; border: var(--border-hairline) solid rgba(255,255,255,.3); }
  .menu-open .site-header__toggle:hover { background: rgba(255,255,255,.12); }
  .menu-open .site-header .site-header__toggle .icon { color: var(--white); }
  .menu-open .site-header__toggle .icon:first-child { display: none; }
  .menu-open .site-header__toggle .icon:last-child { display: inline-flex; }
  .menu-open .site-nav { grid-column: 1 / -1; display: flex; flex-direction: column; min-height: 0; border-top: var(--border-hairline) solid var(--border-on-ink); }
  .menu-open .site-nav__list { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: var(--space-5) var(--header-pad-x); }
  .site-nav__item > a, .site-nav summary { position: relative; min-height: 56px; padding-inline: var(--space-4); font-size: 18px; }
  .site-nav__item.is-current > a, .site-nav__item.is-current summary { color: var(--green-400); }
  .site-nav__item.is-current > a::before, .site-nav__item.is-current summary::before { content: ""; position: absolute; inset: 14px auto 14px 0; width: 3px; background: var(--green-400); border-radius: var(--radius-xs); }
  .site-nav__group[open] > summary { padding-right: var(--space-2); color: var(--white); border: var(--border-thick) solid var(--green-700); border-radius: var(--radius-xs); }
  .site-nav__group[open] > summary::before { display: none; }
  .site-nav__group[open] > summary .icon { box-sizing: content-box; padding: 6px; background: rgba(255,255,255,.08); border-radius: var(--radius-sm); }
  .site-nav .site-nav__menu { padding: var(--space-2) 0 var(--space-2) var(--space-6); }
  .site-nav__menu a { align-items: center; gap: var(--space-4); padding-block: var(--space-2); font-size: 16px; }
  .site-nav__note { font-size: 14px; }
  .site-nav__hub { gap: var(--space-2); margin: 0 0 var(--space-3) var(--space-6); padding: 0; font-size: 16px; font-weight: var(--weight-semibold); color: var(--green-400); background: none; border: 0; }
  .site-nav__hub:hover { color: var(--green-300); background: none; }
  .site-nav__hub > .icon:first-child, .site-nav__hub .site-nav__note { display: none; }
  .site-nav__hub > span:not(.icon) { flex: none; }
  .site-nav__foot {
    display: grid;
    gap: var(--space-3);
    padding: var(--space-5) var(--header-pad-x) calc(var(--space-5) + env(safe-area-inset-bottom));
    background: var(--navy-900);
    border-top: var(--border-hairline) solid var(--border-on-ink);
  }
  .site-nav__foot .button { gap: var(--space-3); min-height: 52px; }
  .site-nav__foot .button .icon { color: var(--navy-900); }
  .site-nav__phone {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-3);
    min-height: 52px;
    font-size: 18px;
    font-weight: var(--weight-bold);
    color: var(--white);
    text-decoration: none;
    background: rgba(255,255,255,.04);
    border: var(--border-hairline) solid rgba(255,255,255,.3);
    border-radius: var(--radius-button);
  }
  .site-nav__phone:hover { color: var(--white); background: rgba(255,255,255,.1); }
}

@media (min-width: 22.5em) {
  .site-header__brand img { height: 24px; }
}

@media (min-width: 32.5em) {
  .site-header__brand img { height: 42px; }
}

@media (min-width: 60em) {
  html { scroll-padding-top: 140px; }
  body { padding-bottom: 0; }
  .site-header { position: sticky; top: 0; z-index: 20; gap: var(--space-2) var(--space-4); }
  .site-header__call, .has-menu-toggle .site-header__toggle { display: none; }
  .has-menu-toggle .site-nav { display: flex; }
  .site-header__phone {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    min-height: 48px;
    font-weight: var(--weight-bold);
    color: var(--white);
    text-decoration: none;
    white-space: nowrap;
  }
  .site-header__phone:hover { color: var(--green-400); }
  .site-header__quote { display: inline-flex; }
  .site-nav { order: 3; justify-content: center; }
  .site-nav .site-nav__list {
    display: flex;
    gap: 2px;
    padding-inline: 6px;
    background: var(--glass-on-ink);
    border: var(--border-hairline) solid var(--border-on-ink);
    border-radius: var(--radius-pill);
  }
  .site-nav__item + .site-nav__item { border-top: 0; }
  .site-nav__item > a, .site-nav summary {
    position: relative;
    isolation: isolate;
    justify-content: center;
    gap: 3px;
    padding: 0 13px;
    font-size: 14px;
    font-weight: var(--weight-regular);
    white-space: nowrap;
    border-radius: var(--radius-pill);
  }
  .site-nav__item > a::before, .site-nav summary::before {
    content: "";
    position: absolute;
    inset: 6px 0;
    z-index: -1;
    border-radius: inherit;
    background: var(--pill, transparent);
    transition: var(--transition-control);
  }
  .site-nav__item > a:hover, .site-nav summary:hover { --pill: var(--glass-on-ink); color: var(--white); }
  .site-nav__item > a:focus-visible, .site-nav summary:focus-visible { box-shadow: none; }
  .site-nav__item > a:focus-visible::before, .site-nav summary:focus-visible::before { box-shadow: var(--shadow-focus); }
  .site-nav__item.is-current > a, .site-nav__item.is-current summary { --pill: var(--green-400); font-weight: var(--weight-semibold); color: var(--navy-900); }
  .site-nav__item.is-current summary .icon { color: var(--navy-900); }
  .site-nav__group[open] > summary { --pill: var(--white); color: var(--navy-900); }
  .site-nav__group[open] > summary .icon { color: var(--navy-900); }
  .site-nav__panel {
    position: absolute;
    top: calc(100% + var(--space-2));
    left: 0;
    right: 0;
    width: min(var(--page-max), 100% - 2 * var(--space-5));
    margin-inline: auto;
    overflow: hidden;
    color: var(--text-primary);
    background: var(--surface-card);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-xl);
  }
  .site-nav__links { display: flex; flex-direction: column; gap: var(--space-5); padding: var(--space-8) var(--space-8) var(--space-5); }
  .site-nav__menu {
    align-self: stretch;
    display: grid;
    grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: var(--space-4);
    padding: 0;
  }
  .site-nav__menu li { display: flex; }
  .site-nav__menu .site-nav__wide { grid-column: 1 / -1; }
  .site-nav__menu a, .site-nav__hub { margin: 0; color: var(--text-primary); border: 0; border-radius: var(--radius-card); transition: var(--transition-control); }
  .site-nav__menu a {
    flex: 1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-content: center;
    align-items: center;
    gap: var(--space-5);
    padding: var(--space-5);
    background: var(--surface-card);
    border: var(--border-hairline) solid var(--border-subtle);
  }
  .site-nav__hub { gap: var(--space-4); padding: var(--space-5) var(--space-5) 0; background: none; border-top: var(--border-hairline) solid var(--border-subtle); border-radius: 0; }
  .site-nav__hub > span:not(.icon) { flex: none; }
  .site-nav__menu a:hover, .site-nav__menu a:focus-visible { color: var(--text-primary); background: var(--surface-card); border-color: var(--green-400); box-shadow: var(--shadow-md); transform: translateY(-2px); }
  .site-nav__menu [aria-current="page"] { border-color: var(--green-400); }
  .site-nav__hub:hover { color: var(--text-accent-strong); background: none; }
  .site-nav__panel [aria-current="page"] { color: var(--text-accent-strong); }
  .site-nav__menu .icon { box-sizing: content-box; width: 26px; height: 26px; padding: 15px; color: var(--green-700); background: var(--surface-accent-soft); border-radius: var(--radius-md); }
  .site-nav__hub .icon { width: 26px; height: 26px; color: var(--green-700); }
  .site-nav__label { font-size: 17px; font-weight: var(--weight-semibold); }
  .site-nav__note { font-size: 15px; color: var(--neutral-600); }
  .site-nav__rail {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
    align-items: center;
    gap: var(--space-9);
    padding: var(--space-8) calc(var(--space-8) + var(--space-5));
    background: var(--surface-subtle);
    border-top: var(--border-hairline) solid var(--border-subtle);
  }
  .site-nav__eyebrow { margin: 0 0 var(--space-3); }
  .site-nav__title { margin: 0; font-family: var(--font-display); font-size: 34px; font-weight: var(--weight-bold); line-height: .95; text-transform: uppercase; text-wrap: balance; color: var(--navy-900); }
  .site-nav__body { margin: 0; font-size: 16px; line-height: 1.6; color: var(--text-secondary); }
  .site-nav__cta { display: grid; justify-items: center; }
  .site-nav__cta:only-child { grid-column: 1 / -1; display: flex; flex-direction: row-reverse; justify-content: flex-start; align-items: center; gap: var(--space-6); }
  .site-nav__cta .rating { min-height: 48px; font-size: 15px; color: var(--text-primary); text-decoration: none; }
  .sticky-bar { display: none; }
  .site-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-areas: "brand contact" "links links"; }
  .site-footer__columns { grid-template-columns: repeat(4, auto); justify-content: space-between; }
  .site-footer__column a { font-size: 15px; }
  .to-top { right: var(--space-6); bottom: var(--space-6); }
  .site-footer__bar { padding-right: calc(48px + var(--space-6)); }
  .has-hero-overlay { --header-h: calc(106px + 2 * var(--header-pad-y) + 1px); }
  .has-hero-overlay .site-header { position: fixed; background: var(--navy-800); border-bottom-color: var(--border-on-ink); transition: background-color var(--dur-base) var(--ease-standard), border-color var(--dur-base) var(--ease-standard); }
  .has-hero-overlay.is-at-top .site-header { background: transparent; border-bottom-color: transparent; }
  .has-hero-overlay .site-nav__list { background: rgba(7,14,25,.42); border-color: rgba(255,255,255,.18); }
}

@media (min-width: 88em) {
  .has-hero-overlay { --header-h: calc(50px + 2 * var(--header-pad-y) + 1px); }
  .site-header { column-gap: var(--space-3); }
  .site-header__brand { margin-right: 0; }
  .site-header__brand img { height: 36px; }
  .site-nav { order: 0; flex: 1; flex-basis: auto; }
  .site-nav__item > a, .site-nav summary { padding-inline: 10px; }
  .site-header__quote { padding-inline: 18px; }
}

@media (min-width: 90em) {
  .site-footer__grid { grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "brand links contact"; column-gap: var(--space-11); }
}

.container { max-width: var(--page-max); margin-inline: auto; padding-inline: var(--page-pad); }
.section { padding-block: var(--section-y-mobile); }
.section--subtle { background: var(--surface-subtle); }
.section--ink { color: var(--text-inverse); background: var(--surface-ink); }
.section--ink a:not(.button) { color: var(--white); }
.section--ink a:not(.button):hover { color: var(--green-400); }

.copy > * { margin-block: 0; }
.copy > * + * { margin-top: var(--space-4); }
.copy > * + h2 { margin-top: var(--space-9); }
.copy > * + h3 { margin-top: var(--space-7); }
.copy > p, .copy > ul { max-width: var(--page-max-narrow); }
.copy ul, .copy ol { padding-left: 1.25em; }
.copy li + li { margin-top: var(--space-2); }

.button-row { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.section--ink .button--secondary, .cta-band .button--secondary, .cta-banner .button--secondary { color: var(--white); border-color: rgba(255,255,255,.4); }
.section--ink .button--secondary:hover, .cta-band .button--secondary:hover, .cta-banner .button--secondary:hover { color: var(--white); background: rgba(255,255,255,.12); }
.section--ink .button--secondary:active { background: rgba(255,255,255,.2); }

.rating { display: inline-flex; align-items: center; gap: var(--space-2); font-weight: var(--weight-semibold); }
.rating .icon, .section--ink .rating .icon { color: var(--star); }

.cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: var(--gutter);
  list-style: none;
  margin: 0;
  padding: 0;
}
.card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--card-pad-lg);
  color: var(--text-primary);
  background: var(--surface-card);
  border: var(--border-hairline) solid var(--border-subtle);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.card--rule { border-top: var(--rule-accent) solid var(--green-400); }
.card h3 { font-size: var(--h4-size); line-height: var(--h4-lh); letter-spacing: var(--h4-track); }
.card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  font-size: 28px;
  color: var(--green-700);
  background: var(--surface-accent-soft);
  border-radius: var(--radius-md);
}
.card__icon .icon { width: 1em; height: 1em; }
.card__title { font-family: var(--font-display); font-size: var(--h4-size); font-weight: var(--weight-bold); line-height: var(--h4-lh); letter-spacing: var(--h4-track); text-transform: uppercase; color: var(--navy-900); }
.card__stop { display: none; }
.card__body { font-size: var(--body-size); line-height: var(--body-lh); color: var(--text-secondary); }
.card__body::first-letter { text-transform: uppercase; }
.card > p { margin: 0; }

.article-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr));
  gap: var(--gutter);
  margin: 0;
  padding: 0;
  list-style: none;
}
.article-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--surface-card);
  border: var(--border-hairline) solid var(--border-subtle);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
  transition: box-shadow var(--dur-base) var(--ease-standard), transform var(--dur-base) var(--ease-standard);
}
.article-card[hidden] { display: none; }
.article-card:hover { box-shadow: var(--shadow-card-hover); transform: translateY(var(--lift-hover)); }
.article-card:has(:focus-visible) { box-shadow: var(--shadow-focus); }
.article-card img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.article-card__body { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--card-pad); }
.article-card__body > * { margin: 0; }
.article-card__badge {
  padding: 3px 10px;
  font-size: var(--caption-size);
  font-weight: var(--weight-bold);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--text-accent-strong);
  background: var(--surface-accent-soft);
  border: var(--border-hairline) solid var(--green-400);
  border-radius: var(--radius-sm);
}
.article-card__title { font-size: var(--h4-size); line-height: var(--h4-lh); letter-spacing: var(--h4-track); }
.article-card__title a { color: var(--text-primary); text-decoration: none; }
.article-card__title a::after { content: ""; position: absolute; inset: 0; }
.article-card__title a:focus-visible { box-shadow: none; }
.article-card__details { font-size: var(--body-sm-size); color: var(--text-secondary); }
.article-card--featured, .related-guides .article-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
.article-card--featured .article-card__title { font-size: clamp(22px, 1.5vw + 16px, var(--h3-size)); line-height: var(--h3-lh); letter-spacing: var(--h3-track); }
.article-card--featured p:last-child { color: var(--text-secondary); }

.related-guides .article-cards { grid-template-columns: minmax(0, 1fr); }
.page-cta .related-guides { margin-bottom: clamp(48px, 6vw, 80px); }

@media (min-width: 40em) {
  .related-guides .article-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 60em) {
  .article-card--featured, .related-guides .article-card:last-child:nth-child(odd) { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  :is(.article-card--featured, .related-guides .article-card:last-child:nth-child(odd)) img { height: 100%; }
  :is(.article-card--featured, .related-guides .article-card:last-child:nth-child(odd)) .article-card__body { justify-content: center; padding: var(--space-9); }
}

.steps ol { counter-reset: step; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: var(--space-7) var(--gutter); list-style: none; padding: 0; }
.steps li { counter-increment: step; position: relative; margin: 0; padding-left: 72px; }
.steps li + li { margin-top: 0; }
.steps.copy > ol, .steps.copy > ol + * { margin-top: var(--space-8); }
.steps li::before {
  content: counter(step, decimal-leading-zero);
  position: absolute;
  top: 0;
  left: 0;
  font-family: var(--font-display);
  font-size: 44px;
  font-weight: var(--weight-black);
  line-height: .9;
  letter-spacing: -.03em;
  color: var(--green-300);
}
.section--ink .steps li::before { color: rgba(255,255,255,.22); }
.steps li strong {
  display: block;
  margin-bottom: var(--space-2);
  font-family: var(--font-display);
  font-size: var(--h4-size);
  line-height: var(--h4-lh);
  text-transform: uppercase;
}

.copy blockquote {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  margin-inline: 0;
  padding: var(--card-pad);
  color: var(--text-primary);
  background: var(--surface-card);
  border: var(--border-hairline) solid var(--border-subtle);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.copy blockquote p { margin: 0; }
.copy blockquote p:last-child:not(:first-child) { font-size: var(--body-sm-size); font-weight: var(--weight-semibold); color: var(--text-secondary); }
.copy.review-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--gutter); }
.copy.review-grid > * { margin: 0; }
.review-grid > :not(blockquote) { grid-column: 1 / -1; }

.faq h3 {
  padding-top: var(--space-6);
  font-family: var(--font-text);
  font-size: 18px;
  font-weight: var(--weight-bold);
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  border-top: var(--border-hairline) solid var(--border-subtle);
}
.faq.copy > h3 + p { margin-top: var(--space-2); }

.logo-strip { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; justify-items: center; gap: 28px 24px; list-style: none; margin: 0; padding: 0; }
.logo-strip img { zoom: .72; }

.form { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: var(--space-4) var(--gutter); }
.form__field { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.form__field[hidden] { display: none; }
.form__field label { font-size: var(--label-size); font-weight: var(--label-weight); letter-spacing: var(--label-track); color: var(--navy-700); }
.form input, .form select, .form textarea {
  min-height: 48px;
  padding: 0 14px;
  font: inherit;
  color: var(--text-primary);
  background: var(--white);
  border: var(--border-hairline) solid var(--border-default);
  border-radius: var(--radius-input);
  transition: var(--transition-control);
}
.form input:focus-visible, .form select:focus-visible, .form textarea:focus-visible { border-color: var(--green-500); }
.form textarea { padding-block: 12px; resize: vertical; }
.form select { appearance: none; padding-right: 40px; cursor: pointer; }
.form__field:has(select) { position: relative; }
.form__field:has(select)::after {
  content: "";
  position: absolute;
  right: 18px;
  bottom: 21px;
  width: 7px;
  height: 7px;
  border-right: 2px solid var(--neutral-500);
  border-bottom: 2px solid var(--neutral-500);
  transform: rotate(45deg);
  pointer-events: none;
}
.form .button { grid-column: 1 / -1; justify-self: start; }
.form__note { grid-column: 1 / -1; margin: 0; font-size: var(--body-sm-size); color: var(--text-secondary); }

.cta-band {
  padding: var(--space-11) var(--space-6);
  color: var(--text-inverse);
  background: var(--surface-ink);
  border-radius: var(--radius-card);
}
.cta-band h2 { font-size: clamp(32px, 3vw + 20px, var(--h1-size)); line-height: var(--h1-lh); letter-spacing: var(--h1-track); }
.cta-band .button-row { margin-top: var(--space-6); }

.hero { position: relative; isolation: isolate; overflow: hidden; }
.hero__image { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--scrim-hero), var(--scrim-flat); }
.hero__content { display: grid; justify-items: start; gap: var(--space-6); padding-block: var(--space-10) var(--space-9); }
.hero h1 { max-width: 18ch; font-size: clamp(30px, 4vw + 16px, var(--display-2-size)); line-height: var(--display-2-lh); letter-spacing: var(--display-2-track); }
.hero__copy p { max-width: 58ch; font-size: var(--body-lg-size); line-height: var(--body-lg-lh); color: var(--text-inverse); }
.hero .copy > * + * { margin-top: var(--space-5); }
.hero--guide .hero__image, .hero--capped .hero__image { height: min(100%, 90svh); -webkit-mask-image: linear-gradient(#000 80%, transparent); mask-image: linear-gradient(#000 80%, transparent); }
.hero .breadcrumb { color: rgba(255,255,255,.72); }
.hero .breadcrumb a { color: rgba(255,255,255,.78); text-decoration: none; }
.hero .breadcrumb a:hover { color: var(--white); }
.hero .breadcrumb li + li::before { color: rgba(255,255,255,.5); }
.hero .breadcrumb [aria-current] { font-weight: var(--weight-regular); color: var(--green-400); }
.hero--guide .hero__content { padding-block: var(--space-7) var(--space-10); }
.hero--guide h1 { max-width: 20ch; }

.rate-card ul { padding: 0; list-style: none; background: var(--surface-card); border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.rate-card li { padding: var(--space-4) var(--space-6); }
.rate-card li + li { margin-top: 0; border-top: var(--border-hairline) solid var(--border-subtle); }

.copy table { width: 100%; max-width: var(--page-max-narrow); border-spacing: 0; background: var(--surface-card); border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.copy th, .copy td { padding: var(--space-3) var(--space-2); text-align: left; vertical-align: top; }
.copy th:first-child, .copy td:first-child { padding-left: var(--space-4); }
.copy th { font-size: var(--label-size); font-weight: var(--label-weight); letter-spacing: var(--label-track); color: var(--text-secondary); }
.copy td { border-top: var(--border-hairline) solid var(--border-subtle); }

@media (min-width: 60em) {
  .hero__content { min-height: 600px; align-content: center; padding-block: var(--space-12); }
  .section { padding-block: var(--section-y); }
  .cta-band { padding: var(--space-12) var(--space-9); }
  .copy.review-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .copy th, .copy td { padding: var(--space-4) var(--space-5); }
}

:root{
--text-accent-strong:color-mix(in srgb,var(--green-700) 85%,var(--navy-900));
--scrim-tile:linear-gradient(180deg,rgba(7,14,25,.34) 0%,rgba(7,14,25,.52) 42%,rgba(7,14,25,.93) 100%);
--scrim-job:linear-gradient(180deg,rgba(7,14,25,.84) 0%,rgba(7,14,25,.62) 48%,rgba(7,14,25,.92) 100%);
}

.visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.placeholder { padding-inline: 4px; background: rgba(233,162,59,.18); outline: 1px dashed var(--warning-500); outline-offset: 1px; border-radius: 2px; }

.button .icon { width: 20px; height: 20px; }
.button--ink { color: var(--white); background: var(--navy-800); }
.button--ink:hover { color: var(--white); background: var(--navy-700); }
.button--ink:active { background: var(--navy-900); }

.eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: var(--eyebrow-size);
  font-weight: var(--eyebrow-weight);
  line-height: 1.4;
  letter-spacing: var(--eyebrow-track);
  text-transform: uppercase;
  color: var(--text-accent-strong);
}
.eyebrow::before { content: ""; flex: 0 0 auto; width: 28px; height: var(--rule-accent); background: var(--green-400); }
.section--ink .eyebrow, .cta-banner .eyebrow, .biz-band .eyebrow { color: var(--green-400); }
.cta-banner .eyebrow::before { display: none; }
.eyebrow--google::before { display: none; }

.section-head { display: flex; flex-direction: column; gap: var(--space-4); max-width: var(--page-max-narrow); margin-bottom: var(--space-7); }
.section-head > * { margin: 0; }
.section-head > p:not(.eyebrow) { font-size: var(--body-lg-size); line-height: var(--body-lg-lh); color: var(--text-secondary); }
.section--ink .section-head > p:not(.eyebrow) { color: var(--text-inverse-muted); }
.section-head--split h2 { font-size: clamp(30px, 4vw, 44px); line-height: 1.02; letter-spacing: -.02em; text-wrap: balance; }
.section-head--split > p:not(.eyebrow) { font-size: 17px; line-height: 1.6; text-wrap: pretty; }
@media (min-width: 64em) {
  .section-head--split { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: clamp(32px, 5vw, 96px); row-gap: 20px; max-width: none; align-items: end; }
  .section-head--split > :is(.eyebrow, h2) { grid-column: 1; }
  .section-head--split > p:not(.eyebrow) { grid-column: 2; grid-row: 1 / span 2; }
}

.hero--form::before, .hero--plain::before {
  background:
    linear-gradient(180deg,rgba(7,14,25,.94) 0%,rgba(7,14,25,.8) 22%,rgba(7,14,25,.55) 62%,rgba(7,14,25,.88) 100%),
    linear-gradient(90deg,rgba(7,14,25,.92) 0%,rgba(7,14,25,.82) 46%,rgba(7,14,25,.4) 82%,rgba(7,14,25,.18) 100%);
}
.hero--form .hero__content { grid-template-columns: minmax(0, 1fr); justify-items: stretch; align-items: center; gap: clamp(28px, 4vw, 48px); padding-block: clamp(24px, 3.2vw, 52px) clamp(40px, 5vw, 80px); }
.hero--form .eyebrow, .hero--plain .eyebrow { margin-bottom: 18px; gap: 12px; font-size: 12.5px; }
.hero--form h1 { max-width: none; font-size: clamp(32px, 5vw, 60px); line-height: .96; letter-spacing: -.02em; }
.hero--form .hero__copy p { max-width: 480px; font-size: clamp(15px, 1.5vw, 17.5px); line-height: 1.6; color: rgba(255,255,255,.84); }
.hero--form .button-row { margin-top: 26px; }

.hero--glass.hero--form .button-row { display: flex; }
.hero--glass .button-row .button, .hero--plain .button-row .button { min-height: var(--control-h-lg); padding-inline: 24px; font-size: var(--button-size); }
.hero--glass .button, .hero--plain .button, .page-cta .button { text-wrap: balance; }
.hero--glass .button-row .icon, .hero--plain .button-row .icon { width: 22px; height: 22px; }
.proof-row { display: flex; flex-wrap: wrap; align-items: center; row-gap: 10px; margin: 22px 0 0; padding: 0; list-style: none; font-size: 13px; line-height: 1.5; color: var(--text-inverse-muted); }
.proof-row li { display: flex; align-items: center; }
.proof-row li:first-child { flex-basis: 100%; }
.proof-row li + li::before { content: ""; width: 3px; height: 3px; margin-inline: 8px; background: currentColor; border-radius: 50%; }
.proof-row li:nth-child(2)::before { display: none; }
.proof-row a.proof-row__rating { display: inline-flex; align-items: center; min-height: 48px; margin-block: -12px; color: inherit; text-decoration: none; }
.proof-row a.proof-row__rating:hover { color: var(--white); }
.proof-row__stars { display: inline-flex; gap: 2px; margin-right: 8px; color: var(--star); }
.proof-row__stars .icon { width: 20px; height: 20px; }
.proof-row strong { margin-inline: .3em; font-family: var(--font-display); font-size: 18px; font-weight: var(--weight-bold); line-height: 1; color: var(--white); }
.proof-row__off { display: inline-flex; color: rgba(255,255,255,.25); }
.hero--glass .hero__lead, .hero--plain .hero__content { container-type: inline-size; }
@container (min-width: 660px) {
  .proof-row { font-size: 13.5px; }
  .proof-row li:first-child { flex-basis: auto; }
  .proof-row li:nth-child(2)::before { display: block; }
}

.hero--glass .starter { padding: 22px; color: var(--white); background: linear-gradient(var(--glass-on-ink), var(--glass-on-ink)), color-mix(in srgb, var(--navy-900) 40%, transparent); border: var(--border-hairline) solid var(--border-on-ink); box-shadow: none; color-scheme: dark; }
.hero--glass .starter__title { font-size: 20px; line-height: var(--body-lh); color: var(--white); }
.hero--glass .starter__intro { margin: -10px 0 4px; font-size: 13.5px; line-height: var(--body-lh); }
.hero--glass .starter__note { margin-top: -2px; line-height: var(--body-lh); }
.hero--glass .starter.form .button { min-height: 48px; padding-inline: var(--space-6); font-size: var(--button-size); }
.hero--glass .starter__intro, .hero--glass .starter__note { color: var(--text-inverse-muted); }
.hero--glass .starter .form__field label { color: var(--white); }
.hero--glass .starter .form__field label span { color: var(--green-400); }
.hero--glass .starter input, .hero--glass .starter select { color: var(--white); background: var(--glass-on-ink); border-color: var(--border-on-ink); }
.hero--glass .starter .form__control .icon { color: var(--white); }
.hero--glass .starter .form__field:has(select)::after { border-color: var(--white); }
.hero--glass .starter :is(input, select):focus { border-color: var(--green-500); box-shadow: var(--shadow-focus); }

.starter { display: none; }
.starter.form { grid-template-columns: minmax(0, 1fr); gap: 14px; }
.starter {
  padding: clamp(20px, 2.4vw, 26px);
  color: var(--text-primary);
  background: var(--white);
  border-top: var(--rule-accent) solid var(--green-400);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-xl);
}
.starter__title { font-family: var(--font-display); font-size: clamp(22px, 2.4vw, 26px); font-weight: var(--weight-bold); line-height: 1.04; text-transform: uppercase; color: var(--navy-900); }
.starter__intro { margin: -8px 0 6px; font-size: var(--body-sm-size); line-height: var(--body-sm-lh); color: var(--text-secondary); }
.starter.form .button { justify-self: stretch; min-height: var(--control-h-lg); padding-inline: 32px; font-size: 16px; }
.starter__note { font-size: var(--caption-size); line-height: 1.5; color: var(--neutral-600); }
.form__control { position: relative; display: block; }
.form__control .icon { position: absolute; top: 50%; left: 14px; width: 20px; height: 20px; color: var(--neutral-500); translate: 0 -50%; pointer-events: none; }
.form__control input { width: 100%; padding-left: 44px; }

.trust-band { padding-block: clamp(20px, 2.5vw, 30px); background: var(--navy-900); }
.trust-cards { display: grid; gap: 14px; margin-block: 0; list-style: none; }
.trust-card {
  display: flex;
  align-items: center;
  gap: 12px;
  height: 100%;
  padding: 16px 18px;
  color: var(--white);
  text-decoration: none;
  background: var(--glass-on-ink);
  border: var(--border-hairline) solid var(--border-on-ink);
  border-radius: var(--radius-card);
  transition: var(--transition-control);
}
.trust-card > .icon { width: 26px; height: 26px; color: var(--green-400); }
.trust-card__title { display: block; font-size: 15px; font-weight: var(--weight-bold); }
.trust-card--rating .trust-card__title { font-family: var(--font-display); font-size: 20px; letter-spacing: -.01em; }
.trust-card__sub { display: block; font-size: var(--caption-size); color: rgba(255,255,255,.66); }
a.trust-card:hover { color: var(--white); border-color: rgba(255,255,255,.3); }

.tiles { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
.tile {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 6px;
  height: 240px;
  padding: var(--card-pad);
  overflow: hidden;
  color: var(--white);
  background: var(--navy-800);
  border-radius: var(--radius-media);
  box-shadow: var(--shadow-card);
  transition: box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);
}
.tile img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-reveal) var(--ease-out); }
.tile::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--scrim-tile); }
.tile > .icon { width: 26px; height: 26px; margin-bottom: 4px; color: var(--green-400); }
.tile__title, .tile__title:hover { font-family: var(--font-display); font-size: var(--h4-size); font-weight: var(--weight-bold); line-height: 1.15; text-transform: uppercase; color: var(--white); text-decoration: none; }
.tile__title::after { content: ""; position: absolute; inset: 0; }
.tile__title:focus-visible { box-shadow: none; }
.tile:has(:focus-visible) { box-shadow: var(--shadow-focus); }
.tile__kicker { display: inline-flex; align-items: center; gap: 6px; font-size: var(--caption-size); font-weight: var(--weight-semibold); letter-spacing: .12em; text-transform: uppercase; color: var(--green-400); }
.tile__kicker .icon { width: 16px; height: 16px; pointer-events: none; transition: transform var(--dur-fast) var(--ease-out); }
.tile:hover { box-shadow: var(--shadow-lg); transform: translateY(var(--lift-hover)); }
.tile:hover img { transform: scale(1.04); }
.tile:hover .tile__kicker .icon { transform: translateX(3px); }
.tiles + .button-row { justify-content: flex-end; margin-top: var(--space-6); }
.tiles.tiles--band { grid-template-columns: minmax(0, 1fr); }
.tiles--band .tile { height: 200px; }
.tiles--band .tile__kicker { font-size: 14px; font-weight: var(--weight-regular); letter-spacing: 0; text-transform: none; color: rgba(255,255,255,.85); }
.tiles--band .tile__kicker { display: block; padding-right: 32px; }
.tiles--band .tile__kicker .icon { position: absolute; right: var(--card-pad); bottom: var(--card-pad); width: 20px; height: 20px; color: var(--green-400); }

.biz-band {
  display: grid;
  gap: 28px;
  margin-top: var(--space-6);
  padding: clamp(22px, 2.6vw, 32px);
  color: var(--white);
  background: var(--navy-800);
  border-radius: var(--radius-card);
}
.biz-band__intro { min-width: 0; }
.biz-band__intro .eyebrow { margin-bottom: 12px; gap: 12px; font-size: 12.5px; }
.biz-band__intro h3 { margin-bottom: 10px; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.06; letter-spacing: -.01em; }
.biz-band__intro p:not(.eyebrow) { max-width: 640px; margin: 0; font-size: 15px; line-height: 1.6; color: rgba(255,255,255,.82); }
.clients { display: grid; gap: 24px; margin-top: clamp(var(--space-8), 5vw, 64px); padding-top: 28px; border-top: var(--border-hairline) solid var(--border-on-ink); }
.biz-band .clients { margin-top: 0; }
.clients > p { margin: 0; font-size: var(--label-size); font-weight: var(--label-weight); letter-spacing: var(--label-track); color: rgba(255,255,255,.72); }
.clients img { filter: brightness(0) invert(1); opacity: .9; }
.section--subtle .clients { border-top-color: var(--border-default); }
.section--subtle .clients > p { color: var(--text-secondary); }
.section--subtle .clients img { filter: brightness(0); opacity: .6; }

.split { display: grid; }
.split__media { position: relative; min-height: 280px; }
.split__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 30% 50%; }
.split__media::after { content: ""; position: absolute; inset: 0; background: var(--scrim-tile); }
.split__body { max-width: 640px; padding: clamp(32px, 3.6vw, 52px) clamp(16px, 3vw, 52px); }
.split .section-head { gap: 0; margin-bottom: 0; }
.split .eyebrow { margin-bottom: 12px; gap: 12px; font-size: 12.5px; }
.split h2 { margin-bottom: 22px; font-size: clamp(24px, 2.8vw, 34px); line-height: 1.04; letter-spacing: -.02em; }
.promises.copy > ol { counter-reset: promise; margin: 0; padding: 0; list-style: none; }
.promises li { counter-increment: promise; position: relative; padding: 12px 0 12px 52px; font-size: 14.5px; line-height: 1.5; color: rgba(255,255,255,.74); border-top: var(--border-hairline) solid var(--border-on-ink); }
.promises.copy li + li { margin-top: 0; }
.promises li::before { content: counter(promise, decimal-leading-zero); position: absolute; top: 14px; left: 0; font-family: var(--font-display); font-size: 16px; font-weight: var(--weight-bold); letter-spacing: -.01em; color: var(--green-400); }
.promises strong { display: block; margin-bottom: 3px; font-size: 15.5px; color: var(--white); }
.split .button-row { margin-top: 22px; }

.ledger { display: grid; overflow: hidden; margin-top: var(--space-8); color: var(--white); background: var(--navy-900); border-radius: var(--radius-card); }
.ledger__col { padding: clamp(22px, 2.2vw, 28px); background: rgba(255,255,255,.04); border-bottom: var(--border-hairline) solid var(--border-on-ink); }
.ledger__col:last-child { border-bottom: 0; }
.ledger__name { display: flex; align-items: center; gap: 10px; margin-bottom: 6px; font-size: 18px; line-height: 1.25; letter-spacing: .03em; }
.ledger__name .icon { width: 22px; height: 22px; color: var(--green-400); }
.ledger__sub { margin-bottom: 18px; font-size: 13.5px; line-height: 1.5; color: rgba(255,255,255,.62); }
.ledger__rows { margin: 0; }
.rate-row { display: flex; align-items: flex-end; align-items: last baseline; justify-content: space-between; gap: 16px; padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.rate-row:last-child { border-bottom: 0; }
.rate-row dt { font-size: 14.5px; line-height: 1.4; color: rgba(255,255,255,.82); }
.rate-row dd { flex: 0 0 auto; margin: 0; font-family: var(--font-display); font-size: 19px; font-weight: var(--weight-bold); line-height: 1.25; letter-spacing: -.01em; text-align: right; color: var(--green-400); }
.rate-row__from { display: block; font-family: var(--font-text); font-size: 11px; font-weight: var(--weight-semibold); letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.6); }
.ledger__note { margin-top: 18px; padding-top: 16px; font-size: 13px; line-height: 1.55; color: rgba(255,255,255,.6); border-top: 1px solid rgba(255,255,255,.14); }
.ledger-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-top: 26px; }
.chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.chip { display: flex; align-items: center; gap: 8px; padding: 8px 14px; font-size: 13.5px; font-weight: var(--weight-semibold); color: var(--navy-800); background: var(--neutral-50); border: 1px solid var(--border-subtle); border-radius: var(--radius-pill); }
.chip .icon { width: 17px; height: 17px; color: var(--green-700); }

.method ol { display: grid; gap: 28px; counter-reset: method; margin: 0; padding: 0; list-style: none; }
.method.copy > ol { margin-top: 44px; }
.method li { counter-increment: method; position: relative; margin: 0; padding: 4px 0 0 76px; font-size: var(--body-sm-size); line-height: var(--body-lh); color: var(--text-inverse-muted); }
.method.copy li + li { margin-top: 0; }
.method li::before { content: counter(method, decimal-leading-zero); position: absolute; top: 0; left: 0; min-width: 56px; font-family: var(--font-display); font-size: 44px; font-weight: var(--weight-black); line-height: .9; letter-spacing: -.03em; color: rgba(255,255,255,.22); }
.method strong { display: block; margin-bottom: 8px; font-family: var(--font-display); font-size: var(--h4-size); line-height: var(--h4-lh); text-transform: uppercase; color: var(--text-inverse); }
.languages { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 10px 14px; width: fit-content; max-width: 100%; margin-top: var(--space-9); padding: 16px 22px; font-size: 17px; font-weight: var(--weight-semibold); line-height: 1.4; color: var(--white); background: rgba(167,211,133,.12); border: var(--border-hairline) solid rgba(167,211,133,.45); border-radius: var(--radius-card); }
.languages > .icon { width: 28px; height: 28px; color: var(--green-400); }
.languages__codes { grid-column: 2; display: flex; gap: 6px; }
.languages__codes span { padding: 4px 10px; font-size: 12.5px; font-weight: var(--weight-bold); letter-spacing: .1em; color: var(--navy-900); background: var(--green-400); border-radius: var(--radius-pill); }

.reviews { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-7) var(--space-6); }
.reviews .section-head { margin-bottom: 0; }
.reviews__slider { display: grid; gap: var(--space-5); }
.reviews__track { display: grid; grid-auto-flow: column; grid-auto-columns: 86%; gap: 16px; margin: -12px; padding: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 12px; scroll-behavior: smooth; scrollbar-width: none; list-style: none; }
.reviews__track::-webkit-scrollbar { display: none; }
.reviews__track > li { scroll-snap-align: start; }
.reviews__controls { display: flex; justify-content: flex-end; gap: var(--space-2); }
.reviews__controls:not(.is-ready) { visibility: hidden; }
.reviews__step, .reviews__pause { width: 48px; padding: 0; }
.reviews__pause[aria-pressed="true"] .icon:first-child, .reviews__pause:not([aria-pressed="true"]) .icon:last-child { display: none; }
.reviews__step[data-step="-1"] .icon { transform: scaleX(-1); }
.reviews__step[aria-disabled="true"] { opacity: .35; pointer-events: none; }
.reviews__link { margin: 0; }
.review-card { display: flex; flex-direction: column; gap: var(--space-4); height: 100%; margin: 0; padding: var(--card-pad); background: var(--surface-card); border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.review-card blockquote { margin: 0; font-size: var(--body-sm-size); line-height: var(--body-lh); color: var(--text-secondary); }
.review-card blockquote p { margin: 0; }
.review-card figcaption { order: -1; display: flex; align-items: flex-start; gap: 12px; font-size: var(--body-sm-size); color: var(--text-secondary); }
.review-card figcaption strong { font-weight: var(--weight-semibold); color: var(--text-primary); }
.review-card__avatar { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 44px; height: 44px; font-family: var(--font-display); font-size: 17px; font-weight: var(--weight-bold); color: var(--text-accent-strong); background: var(--surface-accent-soft); border-radius: var(--radius-pill); }
.review-card figcaption .google-g { flex: 0 0 auto; margin-left: auto; }
.review-card__by { display: grid; gap: 4px; }
.review-card__stars { display: block; width: calc(var(--stars) * 18px - 2px); height: 16px; background: var(--star); mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='16' viewBox='0 -960 1080 960'%3E%3Cpath d='m233-120 65-281L80-590l288-25 112-265 112 265 288 25-218 189 65 281-247-149-247 149Z'/%3E%3C/svg%3E") 0 0 / 18px 16px repeat-x; forced-color-adjust: none; }

.areas { position: relative; isolation: isolate; overflow: hidden; background: var(--navy-900); }
.areas > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.areas::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,rgba(7,14,25,.92) 0%,rgba(7,14,25,.8) 46%,rgba(7,14,25,.9) 100%); }
.place-line { margin: 30px 0 22px; }
.place-chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0; list-style: none; }
.place-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 16px;
  font-size: 14.5px;
  font-weight: var(--weight-semibold);
  color: rgba(255,255,255,.92);
  text-decoration: none;
  background: var(--glass-on-ink);
  border: var(--border-hairline) solid rgba(255,255,255,.22);
  border-radius: var(--radius-pill);
}
.place-chip .icon { width: 16px; height: 16px; color: rgba(255,255,255,.66); }
.section--ink a.place-chip { color: var(--white); background: rgba(167,211,133,.16); border-color: var(--green-400); }
.section--ink a.place-chip:hover { color: var(--white); background: rgba(167,211,133,.28); }
a.place-chip .icon { color: var(--green-400); }
.areas__split { display: grid; gap: 40px; align-items: center; }
.areas__split h2 { font-size: clamp(30px, 4vw, 44px); line-height: 1.02; letter-spacing: -.02em; text-wrap: balance; }
.areas__split .section-head > p:not(.eyebrow) { font-size: 17px; line-height: 1.6; color: rgba(255,255,255,.8); }
.area-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; margin: 0; padding: 12px 24px; list-style: none; background: var(--glass-on-ink); border: var(--border-hairline) solid var(--border-on-ink); border-radius: var(--radius-card); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.area-list li { border-bottom: var(--border-hairline) solid var(--border-on-ink); }
.area-list li:nth-last-child(-n+2):nth-child(odd), .area-list li:nth-last-child(-n+2):nth-child(odd) + li { border-bottom: 0; }
.area-list :is(a, span) { display: flex; align-items: center; gap: 10px; min-height: 60px; font-size: 16px; font-weight: var(--weight-semibold); color: var(--white); text-decoration: none; }
.area-list .icon { flex: 0 0 auto; width: 18px; height: 18px; color: var(--green-400); }
.section--ink .area-list a { color: var(--white); }
.section--ink .area-list a:hover { color: var(--green-400); }
@media (min-width: 64em) {
  .areas__split { grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr); column-gap: clamp(40px, 5vw, 72px); }
  .area-list { padding: 16px 32px; }
}
.areas__text p { max-width: var(--page-max-narrow); font-size: 15.5px; line-height: 1.65; color: rgba(255,255,255,.82); }
.areas__text .button-row { margin-top: var(--space-7); }
.areas__text p + p { margin-top: var(--space-3); }

.faq-panel { display: grid; grid-template-areas: "head" "tabs" "list" "call"; gap: var(--space-6) clamp(28px, 4vw, 48px); }
.faq-panel .section-head { grid-area: head; margin-bottom: 0; }
.faq-topics { display: contents; }
.faq-tabs { grid-area: tabs; display: flex; flex-direction: column; gap: 2px; }
.faq-tabs[hidden] { display: none; }
.faq-tabs__tab {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 14px 16px;
  font: inherit;
  font-size: 15.5px;
  font-weight: var(--weight-medium);
  line-height: 1.4;
  text-align: left;
  color: var(--text-secondary);
  background: transparent;
  border: 0;
  border-left: var(--rule-accent) solid transparent;
  cursor: pointer;
  transition: var(--transition-control);
}
.faq-tabs__tab .icon { width: 22px; height: 22px; }
.faq-tabs__tab:hover { color: var(--navy-900); }
.faq-tabs__tab[aria-selected="true"] { font-weight: var(--weight-bold); color: var(--navy-900); background: var(--white); border-left-color: var(--green-400); }
.faq-tabs__count { margin-left: auto; font-size: 13px; font-weight: var(--weight-bold); color: var(--neutral-600); }
.faq-topics__panels { grid-area: list; min-width: 0; overflow: hidden; background: var(--white); border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-sm); }
.faq-topics__panel + .faq-topics__panel { border-top: var(--border-hairline) solid var(--border-subtle); }
.faq-topics__title { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; padding: 20px 26px; background: var(--neutral-50); border-bottom: var(--border-hairline) solid var(--border-subtle); }
.faq-topics__title h3 { font-size: 18px; line-height: 1.25; letter-spacing: -.01em; color: var(--navy-900); }
.faq-topics__title p { font-size: var(--body-sm-size); color: var(--text-secondary); }
.faq-topics__panel details + details { border-top: var(--border-hairline) solid var(--border-subtle); }
.faq-topics__panel summary { display: flex; align-items: flex-start; gap: 16px; padding: 22px 26px; cursor: pointer; list-style: none; }
.faq-topics__panel summary::-webkit-details-marker { display: none; }
.faq-topics__panel details[open] summary { padding-bottom: 10px; }
.faq-topics__panel summary h4 { flex: 1; margin: 0; font-family: var(--font-text); font-size: 17.5px; font-weight: var(--weight-bold); line-height: 1.35; letter-spacing: 0; text-transform: none; color: var(--navy-900); }
.faq-topics__panel summary::after { content: ""; flex: 0 0 auto; width: 9px; height: 9px; margin: 6px 8px 0 4px; border-right: 2px solid var(--green-700); border-bottom: 2px solid var(--green-700); transform: rotate(45deg); transition: transform var(--dur-fast) var(--ease-out); }
.faq-topics__panel details[open] summary::after { margin-top: 10px; transform: rotate(-135deg); }
.faq-topics__panel details > p { margin: 0; padding: 0 26px 22px; font-size: 15.5px; line-height: 1.65; color: var(--text-secondary); }
.faq-topics__empty { padding: 22px 26px; }
.faq-panel__call { grid-area: call; padding: 20px 22px; background: var(--green-100); border-radius: var(--radius-card); }
.faq-panel__call p { margin: 0 0 12px; font-size: 13.5px; line-height: 1.55; color: var(--text-secondary); }
.faq-panel__call strong { display: block; margin-bottom: 4px; font-size: 14.5px; line-height: 1.5; color: var(--navy-900); }
.faq-panel__call .button { width: 100%; }

.cta-banner {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
  overflow: hidden;
  padding: var(--space-10) var(--space-6);
  color: var(--text-inverse);
  background: var(--surface-ink);
  border-radius: var(--radius-card);
}
.cta-banner > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.cta-banner::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(7,14,25,.95) 0%,rgba(7,14,25,.9) 44%,rgba(7,14,25,.55) 100%); }
.cta-banner > :not(img) { max-width: 760px; }
.cta-banner h2 { font-size: clamp(32px, 3vw + 20px, var(--h1-size)); line-height: var(--h1-lh); letter-spacing: var(--h1-track); }
.cta-banner .copy p { color: rgba(255,255,255,.84); }
.cta-bullets { display: flex; flex-wrap: wrap; gap: var(--space-5); margin: 0; padding: 0; list-style: none; }
.cta-bullets li { display: flex; align-items: center; gap: 8px; font-size: var(--body-sm-size); }
.cta-bullets .icon { width: 20px; height: 20px; color: var(--green-400); }
.copy .cta-bullets { margin-top: var(--space-5); padding: 0; }
.copy .cta-bullets li { margin-top: 0; }
.cta-banner .button { min-height: var(--control-h-lg); padding-inline: 32px; font-size: 16px; }
.section.article-cta, .section.page-cta { padding-top: clamp(36px, 5vw, 72px); }

.find-us { border-top: var(--border-hairline) solid var(--border-subtle); }
.find-us__grid { display: grid; gap: clamp(24px, 3vw, 40px); }
.find-us__map { position: relative; min-height: 320px; overflow: hidden; border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-sm); }
.find-us__map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.find-us__body { display: flex; flex-direction: column; min-width: 0; }
.find-us .section-head { margin-bottom: 0; }
.find-us__facts { display: grid; gap: 14px; margin: 26px 0 24px; padding: 0; list-style: none; }
.find-us__facts li { display: flex; align-items: flex-start; gap: 12px; font-size: 15px; line-height: 1.6; color: var(--text-secondary); }
.find-us__facts .icon { flex: 0 0 auto; width: 22px; height: 22px; color: var(--green-700); }
.find-us__facts strong { display: block; color: var(--navy-900); }
.find-us .button-row { margin-top: auto; }

@media (min-width: 37.5em) {
  .languages { grid-template-columns: auto auto auto; }
  .languages__codes { grid-column: auto; }
  .trust-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .method ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reviews__track { grid-auto-columns: calc((100% - 16px) / 2); }
  .logo-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .logo-strip img { zoom: .85; }
}

@media (min-width: 47.5em) {
  .hero--form .button-row { display: none; }
  .starter { display: grid; }
  .reviews { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "head link" "cards cards"; align-items: end; }
  .reviews .section-head { grid-area: head; }
  .reviews__slider { grid-area: cards; }
  .reviews__link { grid-area: link; }
}

@media (min-width: 53.75em) {
  .split { grid-template-columns: 1fr 1fr; align-items: stretch; }
  .tiles.tiles--band { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .faq-panel { grid-template-columns: 320px minmax(0, 1fr); grid-template-rows: auto auto 1fr; grid-template-areas: "head ." "tabs list" "call list"; align-items: start; }
}

@media (min-width: 60em) {
  .cta-banner { padding: var(--space-12) var(--space-9); }
  .reviews__track { grid-auto-columns: calc((100% - 32px) / 3); }
}

@media (min-width: 61.25em) {
  .hero--form .hero__content { grid-template-columns: minmax(0, 1fr) 430px; }
}

@media (min-width: 65em) {
  .trust-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .method ol { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ledger { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ledger__col { border-right: var(--border-hairline) solid var(--border-on-ink); border-bottom: 0; }
  .ledger__col:last-child { border-right: 0; }
}

@media (min-width: 75em) {
  .logo-strip { display: flex; justify-content: space-between; }
  .logo-strip img { zoom: 1; }
}

@media (min-width: 56.25em) {
  .find-us__grid { grid-template-columns: minmax(0, 1fr) 380px; align-items: stretch; }
  .find-us__map { min-height: 420px; }
}

.hero--plain .hero__content > .proof-row { margin-top: 0; }

.method--light li { color: var(--text-secondary); }
.method--light li::before { color: var(--green-300); }
.method--light strong { color: var(--navy-900); }
.method-after { margin-top: var(--space-9); }
.method-split .section-head { max-width: none; margin-bottom: clamp(32px, 4vw, 48px); }
.method-split h2 { font-size: clamp(30px, 4vw, 44px); line-height: 1.02; letter-spacing: -.02em; text-wrap: balance; }
.method-split .section-head > p:not(.eyebrow) { font-size: 17px; line-height: 1.6; color: rgba(255,255,255,.8); text-wrap: pretty; }
.method-split__body { display: grid; gap: clamp(32px, 4vw, 56px); }
.method-photo { order: -1; position: relative; min-height: clamp(320px, 45vw, 560px); margin: 0; overflow: hidden; background: var(--navy-700); border: var(--border-hairline) solid var(--border-on-ink); border-radius: 14px; }
.method-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.method-photo .languages { position: absolute; inset: auto 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; width: auto; margin: 0; padding: 24px; font-size: 15px; font-weight: var(--weight-semibold); background: linear-gradient(180deg, rgba(12,23,40,0) 0%, rgba(12,23,40,.85) 60%); border: 0; border-radius: 0; }
.method-photo .languages > .icon { width: 24px; height: 24px; }
.method-photo .languages > span:not(.languages__codes, .icon) { flex: 1; min-width: 180px; }
.method-photo .languages__codes span { font-size: 12px; letter-spacing: .08em; }
.method-steps ol { counter-reset: method; display: flex; flex-direction: column; gap: 26px; margin: 0; padding: 0; list-style: none; }
.method-steps li { counter-increment: method; position: relative; min-height: 52px; margin: 0; padding: 4px 0 0 70px; font-size: 15px; line-height: 1.55; color: rgba(255,255,255,.78); text-wrap: pretty; }
.method-steps li::before { content: counter(method, decimal-leading-zero); position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 52px; height: 52px; font-family: var(--font-display); font-size: 18px; font-weight: var(--weight-black); color: var(--green-400); background: rgba(255,255,255,.08); border: var(--border-hairline) solid var(--border-on-ink); border-radius: 8px; }
.method-steps strong { display: block; margin-bottom: 6px; font-family: var(--font-display); font-size: 20px; font-weight: var(--weight-bold); line-height: 1.15; letter-spacing: -.01em; text-transform: uppercase; color: var(--white); }

@media (min-width: 60em) {
  .method-split .section-head { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(20px, 4vw, 56px); row-gap: 20px; align-items: end; }
  .method-split .section-head > p:not(.eyebrow) { grid-column: 2; grid-row: 1 / span 2; }
  .method-split .section-head > :is(.eyebrow, h2) { grid-column: 1; }
  .method-split__body { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .method-steps ol { height: 100%; justify-content: space-between; }
}

.job-story { display: grid; gap: clamp(40px, 5vw, 64px); }
.job-story__head { display: grid; gap: clamp(28px, 4vw, 56px); }
.job-story .section-head { max-width: none; margin-bottom: 0; }
.job-story h2 { font-size: clamp(30px, 4vw, 44px); line-height: 1.02; letter-spacing: -.02em; text-wrap: balance; }
.job-story .section-head > p:not(.eyebrow) { font-size: 17px; line-height: 1.6; color: rgba(255,255,255,.8); text-wrap: pretty; }
.job-story h3 { margin: 0; color: var(--white); }
.job-story__day h3 { margin-bottom: var(--space-5); }
.job-story__facts { margin: 0; padding: 6px 24px; list-style: none; background: var(--glass-on-ink); border: var(--border-hairline) solid var(--border-on-ink); border-radius: var(--radius-card); }
.job-story__facts li { display: grid; gap: 4px; padding: 14px 0; font-size: 16px; line-height: 1.45; color: var(--white); }
.job-story__facts li + li { border-top: var(--border-hairline) solid var(--border-on-ink); }
.job-story__facts strong { font-size: 12px; font-weight: var(--weight-bold); line-height: 1.6; letter-spacing: .12em; text-transform: uppercase; color: var(--green-400); }
.job-story__frames { counter-reset: frame; display: grid; gap: 24px; margin: 0; padding: 0; list-style: none; }
.job-story__frames li { counter-increment: frame; display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 14px 12px; align-content: start; align-items: center; margin: 0; font-size: 15px; line-height: 1.5; color: rgba(255,255,255,.84); text-wrap: pretty; }
.job-story__frames li::before { content: counter(frame); grid-row: 2; display: grid; place-items: center; width: 32px; height: 32px; font-family: var(--font-display); font-size: 15px; font-weight: var(--weight-black); line-height: 1; color: var(--green-400); border: 2px solid var(--green-400); border-radius: 50%; }
.job-story__frames img { grid-column: 1 / -1; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; background: var(--navy-700); border: var(--border-hairline) solid var(--border-on-ink); border-radius: 14px; }
.job-story__plan { display: grid; gap: var(--space-5); }
.job-story__plan > * { margin: 0; }
.job-story__plan > p { max-width: none; font-size: 17px; line-height: 1.6; color: rgba(255,255,255,.8); }
.job-story__plan blockquote { margin-top: var(--space-3); color: var(--white); background: var(--glass-on-ink); border-color: var(--border-on-ink); border-left: 3px solid var(--green-400); box-shadow: none; }
.job-story__plan blockquote p:first-child { font-size: 18px; line-height: 1.55; }
.job-story__plan blockquote p:last-child:not(:first-child) { color: var(--text-inverse-muted); }
.job-story__after { padding-top: clamp(28px, 3vw, 40px); border-top: var(--border-hairline) solid var(--border-on-ink); }
.job-story__after p { max-width: none; font-size: 17px; color: var(--white); }
@media (min-width: 30em) {
  .job-story__facts li { grid-template-columns: 7.25em minmax(0, 1fr); gap: 16px; align-items: baseline; }
}
@media (min-width: 40em) {
  .job-story__frames { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; }
  .job-story__frames li { grid-column: span 2; }
  .job-story__frames li:nth-last-child(2):nth-child(3n + 1), .job-story__frames li:last-child:nth-child(3n + 2) { grid-column: span 3; }
}
@media (min-width: 60em) {
  .job-story__head { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: center; }
  .job-story__plan { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(20px, 4vw, 56px); align-content: start; }
  .job-story__plan > :not(blockquote) { grid-column: 1; }
  .job-story__plan blockquote { grid-column: 2; grid-row: 1 / span 2; align-self: start; margin-top: 0; }
}
.languages--light { color: var(--navy-900); background: var(--green-100); border-color: var(--green-300); }
.languages--light > .icon { color: var(--green-700); }
.languages--plain { grid-template-columns: auto minmax(0, 1fr); }

.price-panel { display: grid; align-content: start; gap: 18px; padding: clamp(24px, 3vw, 36px); color: var(--white); background: var(--surface-ink); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.price-panel.copy > * + * { margin-top: 0; }
.price-panel__label { font-size: 12.5px; font-weight: var(--weight-bold); letter-spacing: .18em; text-transform: uppercase; color: var(--green-400); }
.price-panel ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); column-gap: 28px; max-width: none; margin: 0; padding: 0; list-style: none; }
.price-panel li { margin: 0; padding: 14px 0; font-size: 14.5px; line-height: 1.55; color: rgba(255,255,255,.82); border-top: var(--border-hairline) solid var(--border-on-ink); }
.price-panel li + li { margin-top: 0; }
.price-panel li::first-letter { text-transform: uppercase; }
.price-panel strong { color: var(--white); }
.price-panel:not(.price-panel--rows, .price-panel--split) li:first-child { grid-column: 1 / -1; padding: 0 0 20px; font-family: var(--font-display); font-size: clamp(22px, 2.4vw, 30px); font-weight: var(--weight-bold); line-height: 1.12; letter-spacing: -.01em; text-transform: uppercase; color: var(--white); border-top: 0; }
.price-panel:not(.price-panel--rows, .price-panel--split) li:first-child strong { display: block; margin-bottom: 6px; font-size: clamp(44px, 5vw, 60px); font-weight: var(--weight-black); line-height: 1; letter-spacing: -.02em; color: var(--green-400); }
.price-owner { margin-top: var(--gutter); }

.callout { display: grid; gap: 18px 28px; padding: clamp(24px, 3vw, 44px); background: var(--surface-accent-soft); border: var(--border-hairline) solid var(--green-200); border-radius: var(--radius-card); }
.callout > .card__icon { background: var(--white); }
.callout .eyebrow { margin-bottom: 14px; }
.callout .copy > p { max-width: 70ch; }
.callout__title { margin-bottom: 8px; font-family: var(--font-display); font-size: 20px; font-weight: var(--weight-bold); line-height: 1.2; text-transform: uppercase; }
.callout--rule { background: var(--surface-card); border-color: var(--border-subtle); border-top: var(--rule-accent) solid var(--green-400); box-shadow: var(--shadow-card); }
.callout--rule > .card__icon { background: var(--surface-accent-soft); }
.callout--ink { color: var(--text-inverse); background: var(--surface-ink); border-color: var(--border-on-ink); }
.callout--ink p:not(.callout__title) { color: rgba(255,255,255,.82); }
.callout--ink > .card__icon, .callout--glass > .card__icon { color: var(--navy-900); background: var(--green-400); }
.callout--ink a:not(.button) { color: var(--white); }
.callout--ink a:not(.button):hover { color: var(--green-400); }
.callout--glass { background: var(--glass-on-ink); border-color: var(--border-on-ink); }
.callout--glass .copy p { color: rgba(255,255,255,.84); }

.included { display: grid; overflow: hidden; background: var(--surface-card); border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-sm); }
.included__col { padding: clamp(22px, 2.4vw, 30px); }
.included__col + .included__col { background: var(--neutral-50); border-top: var(--border-hairline) solid var(--border-subtle); }
.included__head { display: flex; align-items: center; gap: 10px; margin-bottom: 4px; font-family: var(--font-display); font-size: 18px; font-weight: var(--weight-bold); letter-spacing: .05em; text-transform: uppercase; color: var(--navy-800); }
.included__head .icon { width: 22px; height: 22px; color: var(--green-700); }
.included .cards { display: block; }
.included .card { display: grid; grid-template-columns: 22px minmax(0, 1fr); align-content: start; gap: 2px 12px; padding: 15px 0; background: none; border: 0; border-bottom: var(--border-hairline) solid var(--border-subtle); border-radius: 0; box-shadow: none; }
.included .card:last-child { border-bottom: 0; }
.included .card__icon { grid-row: span 2; width: 22px; height: 22px; font-size: 22px; color: var(--green-700); background: none; border-radius: 0; }
.included .card__title { font-family: var(--font-text); font-size: 15.5px; letter-spacing: 0; text-transform: none; color: var(--navy-800); }
.included .card__body { font-size: 14.5px; line-height: 1.55; }
.included__col--out .card { padding-top: 0; }
.included__col--out .card__icon { color: var(--neutral-500); }
.included__col--out .card__title { margin-bottom: 6px; font-family: var(--font-display); font-size: 18px; letter-spacing: .05em; text-transform: uppercase; }

.persona-cards .cards { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 20px; }
.persona-cards .card { display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-rows: auto auto 1fr auto; gap: 0 10px; border-top: var(--rule-accent) solid var(--green-400); }
.persona-cards .card__icon { width: auto; height: auto; font-size: 24px; background: none; border-radius: 0; }
.persona-cards .card__title { align-self: center; font-size: 20px; color: var(--navy-800); }
.persona-cards .card > :not(.card__icon, .card__title) { grid-column: 1 / -1; }
.persona-cards .card__body { margin-top: 12px; font-size: 15px; line-height: 1.6; }
.persona-cards__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; }
.persona-cards__call { display: inline-flex; align-items: center; min-height: 48px; font-size: 13.5px; color: var(--text-secondary); text-decoration: none; }
.persona-cards__call:hover { color: var(--text-link-hover); }
.persona-cards__after { margin-top: var(--space-7); }
.persona-cards--photos .card { grid-template-rows: auto auto auto 1fr auto; }
.persona-cards__photo { grid-row: 1; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; margin-bottom: var(--space-5); border-radius: var(--radius-md); }
.checks { display: grid; gap: 10px; margin: 16px 0 20px; padding: 0; list-style: none; }
.checks li { display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; line-height: 1.5; color: var(--text-secondary); }
.checks .icon { width: 18px; height: 18px; margin-top: 2px; color: var(--green-700); }

.feature-cards .cards { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 20px; }
.feature-cards .card { background: var(--surface-subtle); }
.section--subtle .feature-cards .card { background: var(--surface-card); }
.feature-cards .card__body { font-size: var(--body-sm-size); }
.feature-cards-after { margin-top: var(--space-7); }
.section--ink .feature-cards .card { color: var(--white); background: var(--glass-on-ink); border-color: var(--border-on-ink); box-shadow: none; }
.section--ink .feature-cards .card__icon { color: var(--navy-900); background: var(--green-400); }
.section--ink .feature-cards .card__title { color: var(--white); }
.section--ink .feature-cards .card__body { color: var(--text-inverse-muted); }

.factors { padding: clamp(22px, 2.6vw, 32px); background: var(--surface-card); border: var(--border-hairline) solid var(--border-subtle); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.factors .cards { grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 18px 28px; }
.factors .card { display: grid; grid-template-columns: 26px minmax(0, 1fr); align-content: start; gap: 3px 12px; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.factors .card__icon { grid-row: span 2; width: 26px; height: 26px; font-size: 24px; background: none; border-radius: 0; }
.factors .card__title { font-family: var(--font-text); font-size: 15px; letter-spacing: 0; text-transform: none; color: var(--navy-800); }
.factors .card__body { font-size: 14px; line-height: 1.55; }

.dest-list ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); grid-auto-rows: 1fr; gap: 12px; max-width: none; margin: 0; padding: 0; list-style: none; }
.dest-list li { position: relative; margin: 0; padding: 14px 16px 14px 46px; font-size: 14.5px; line-height: 1.5; color: rgba(255,255,255,.72); border: var(--border-hairline) solid rgba(255,255,255,.22); border-radius: var(--radius-input); transition: var(--transition-control); }
.dest-list li + li { margin-top: 0; }
.dest-list li > .icon { position: absolute; top: 15px; left: 16px; width: 20px; height: 20px; color: var(--green-400); }
.dest-list a { font-weight: var(--weight-semibold); text-decoration: none; }
.dest-list a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.dest-list a:focus-visible { box-shadow: none; }
.dest-list li:has(:focus-visible) { box-shadow: var(--shadow-focus); }
.dest-list li:has(a:hover) { background: rgba(167,211,133,.14); border-color: var(--green-400); }

.terms { display: grid; gap: var(--space-6) var(--space-11); }
.terms .eyebrow { margin-bottom: 14px; }
.terms__list ul { padding: 0; list-style: none; }
.terms__list li { position: relative; margin: 0; padding: var(--space-4) 0 var(--space-4) var(--space-7); border-top: var(--border-hairline) solid var(--border-subtle); }
.terms__list li + li { margin-top: 0; }
.terms__list li::before { content: ""; position: absolute; top: calc(var(--space-4) + .7em); left: 0; width: 16px; height: 3px; background: var(--green-400); border-radius: var(--radius-xs); }
.section--ink .terms__list li { color: rgba(255,255,255,.84); border-color: var(--border-on-ink); }

@media (min-width: 51.25em) {
  .included { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
  .included__col + .included__col { border-top: 0; border-left: var(--border-hairline) solid var(--border-subtle); }
}

@media (min-width: 60em) {
  .callout { grid-template-columns: auto minmax(0, 1fr); }
  .terms { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
}

@media (min-width: 65em) {
  .method--three ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.method--plain li { padding-top: 8px; font-size: var(--body-size); color: rgba(255,255,255,.86); }
.callout--subtle { background: var(--surface-subtle); border-color: var(--border-subtle); }
.callout--subtle > .card__icon { background: var(--surface-accent-soft); }

.callout--media { padding: 0; overflow: hidden; gap: 0; }
.callout__media { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.callout--media > div { align-self: center; padding: clamp(24px, 3.4vw, 52px); }

@media (min-width: 53.75em) {
  .callout--media { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .callout__media { min-height: 400px; aspect-ratio: auto; }
  .callout--media-end .callout__media { order: 1; }
}

.media-split { display: grid; gap: var(--gutter); }
.media-split > img { width: 100%; height: 100%; max-height: 420px; object-fit: cover; border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.media-split .price-panel ul { grid-template-columns: minmax(0, 1fr); }

@media (min-width: 53.75em) {
  .media-split { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
  .media-split > img { height: 0; min-height: 100%; max-height: none; }
}

.feature-cards--bento .cards { grid-template-columns: minmax(0, 1fr); }
.feature-cards--bento .card:nth-child(2) > .card__icon { display: none; }
.feature-cards--bento .card:nth-child(2) > img, .feature-cards--photos .card > img { order: -1; width: calc(100% + 2 * var(--card-pad-lg)); max-width: none; margin: calc(-1 * var(--card-pad-lg)) calc(-1 * var(--card-pad-lg)) 0; aspect-ratio: 3 / 2; object-fit: cover; }
.feature-cards--photos .card { overflow: hidden; }
.feature-cards--photos .card > img { aspect-ratio: 16 / 10; }

@media (min-width: 37.5em) {
  .feature-cards--bento .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: dense; }
  .feature-cards--bento .card:nth-child(2) { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); grid-template-rows: auto 1fr; align-content: start; gap: var(--space-4) var(--card-pad-lg); padding: 0; overflow: hidden; }
  .feature-cards--bento .card:nth-child(2) > img { grid-column: 1; grid-row: 1 / -1; width: 100%; height: 100%; margin: 0; aspect-ratio: auto; }
  .feature-cards--bento .card:nth-child(2) > :not(img) { grid-column: 2; margin-right: var(--card-pad-lg); }
  .feature-cards--bento .card:nth-child(2) > .card__title { margin-top: var(--card-pad-lg); }
  .feature-cards--bento .card:nth-child(2) > .card__body { margin-bottom: var(--card-pad-lg); }
}

@media (min-width: 60em) {
  .feature-cards--bento .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-flow: row; }
  .feature-cards--bento .card:nth-child(2) { grid-column: span 2; }
}

@media (min-width: 65em) {
  .method--fill { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 44px; }
  .method--fill > ol { display: contents; }
  .method--fill > .languages { align-self: start; width: auto; margin: 0; }
}

@media (min-width: 37.5em) {
  .feature-cards--four .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 65em) {
  .feature-cards--four .cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.price-panel--split { gap: 28px; align-items: center; padding: var(--card-pad-lg); border: var(--border-hairline) solid var(--border-on-ink); }
.price-panel--split .price-panel__label { margin-bottom: 10px; }
.price-panel__title { font-family: var(--font-display); font-size: clamp(20px, 1.9vw, 24px); font-weight: var(--weight-bold); line-height: 1.08; letter-spacing: -.01em; text-transform: uppercase; color: var(--white); }
.price-panel__figure { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; font-size: 16px; line-height: 1.5; color: rgba(255,255,255,.82); }
.price-panel__figure strong { font-family: var(--font-display); font-size: clamp(40px, 4.5vw, 56px); font-weight: var(--weight-black); line-height: 1; letter-spacing: -.02em; color: var(--green-400); }
.price-panel__unit { margin-top: 8px; font-size: 16px; line-height: 1.5; color: rgba(255,255,255,.82); }
.price-panel__unit::first-letter { text-transform: uppercase; }
.price-panel .price-panel__terms { display: block; }
.price-panel .price-panel__terms li { padding: 0; font-size: 14.5px; line-height: 1.6; border: 0; }
.price-panel .price-panel__terms li + li { margin-top: 8px; }

.money-row { display: grid; gap: 24px; margin-top: 28px; }
.money-side { display: grid; gap: 24px; }
.money-guide { gap: 6px; padding: clamp(20px, 5vw, 32px); }
.money-guide .card__title { font-size: 22px; color: var(--navy-800); }
.money-guide .copy > p:first-child { margin-bottom: 18px; font-size: 13.5px; line-height: 1.6; color: var(--neutral-600); }
.money-guide .copy table { max-width: none; background: none; border: 0; border-radius: 0; box-shadow: none; }
.money-guide .copy th, .money-guide .copy td { padding: 12px clamp(8px, 1.2vw, 12px) 12px 0; }
.money-guide .copy th { padding-block: 0 10px; font-size: 12px; font-weight: var(--weight-bold); letter-spacing: .1em; text-transform: uppercase; color: var(--neutral-600); border-bottom: var(--border-hairline) solid var(--border-subtle); }
.money-guide .copy td { font-size: 14px; line-height: 1.45; color: var(--text-secondary); border-top: 0; border-bottom: var(--border-hairline) solid var(--border-subtle); }
.money-guide .copy td:first-child { font-weight: var(--weight-bold); color: var(--navy-800); }
.money-guide .copy td:last-child { font-weight: var(--weight-semibold); color: var(--navy-800); }
.money-guide .copy > p:only-child { margin-bottom: 0; font-size: 15px; line-height: 1.65; color: var(--text-secondary); }
.money-guide__ask { margin-top: 18px; padding-top: 18px; font-size: 14px; font-weight: var(--weight-bold); color: var(--navy-800); border-top: var(--border-hairline) solid var(--border-subtle); }
.money-guide .checks { margin-bottom: 0; }
.money-card { grid-template-columns: auto minmax(0, 1fr); gap: 14px; padding: var(--card-pad-lg); box-shadow: var(--shadow-card); }
.money-card--plain { grid-template-columns: minmax(0, 1fr); }
.section--subtle .money-card--plain { background: var(--surface-card); }
.money-card > .card__icon { width: 26px; height: 26px; font-size: 26px; color: var(--green-700); background: none; border-radius: 0; }
.money-card .callout__title { margin-bottom: 6px; font-size: 18px; color: var(--navy-800); }
.money-card p:not(.callout__title) { font-size: 14.5px; line-height: 1.6; color: var(--text-secondary); }
.money-card--plain .callout__title { margin-bottom: 12px; }
.money-card .money-card__note { font-size: 13.5px; color: var(--neutral-600); }
.tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; padding: 0; list-style: none; }
.tag { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 14px; font-size: 13.5px; font-weight: var(--weight-semibold); color: var(--navy-700); background: var(--white); border: var(--border-hairline) solid var(--border-default); border-radius: var(--radius-tag); }

.factors--three { margin-top: 28px; padding: var(--card-pad-lg); }
.factors--three > .callout__title { margin-bottom: 6px; color: var(--navy-800); }
.factors--three .copy > p:first-child { max-width: 760px; margin-bottom: 20px; font-size: 14px; line-height: 1.6; color: var(--neutral-600); }
.factors--three .copy > p:last-child { margin-top: 22px; font-size: 14px; color: var(--text-secondary); }
.factors--three .cards { grid-template-columns: minmax(0, 1fr); gap: 18px 28px; }
.factors--three .cards > li { margin-top: 0; }
.factors--three .copy > ul { max-width: none; padding-left: 0; }
.factors--three .card { grid-template-columns: 22px minmax(0, 1fr); }
.factors--three .card__icon { width: 22px; height: 22px; font-size: 22px; }
.factors--three .card__body { line-height: 1.5; }

.callout.price-owner { gap: 20px; margin-top: 28px; padding: var(--card-pad-lg); box-shadow: var(--shadow-card); }
.callout.price-owner > .card__icon { width: 30px; height: 30px; font-size: 30px; color: var(--green-400); background: none; border-radius: 0; }
.price-owner .callout__title { margin-bottom: 10px; }
.price-owner p:not(.callout__title) { font-size: 15.5px; line-height: 1.65; }

.included__sub { margin: 0 0 10px; font-size: 13.5px; color: var(--neutral-600); }
.included--rate .included__head { margin-bottom: 6px; }
.included__col--out ul { margin: 0; padding: 0; list-style: none; }
.included__col--out li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 12px; margin: 0; padding: 15px 0; font-size: 14.5px; line-height: 1.5; color: var(--text-secondary); border-bottom: var(--border-hairline) solid var(--border-subtle); }
.included__col--out li:last-child { border-bottom: 0; }
.included__col--out li > .icon { width: 20px; height: 20px; color: var(--neutral-500); }

@media (min-width: 37.5em) {
  .factors--three .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 60em) {
  .price-panel--split { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .money-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}

@media (min-width: 65em) {
  .factors--three .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.price-panel__lead { margin-top: 8px; font-size: 14.5px; line-height: 1.6; color: rgba(255,255,255,.82); }
.price-panel__lead::first-letter { text-transform: uppercase; }
.price-panel__kicker { margin-bottom: 10px; font-size: 14.5px; line-height: 1.5; color: rgba(255,255,255,.82); }

@media (min-width: 60em) {
  .price-panel__figure > span:last-child { flex: 1 1 140px; }
}

@media (min-width: 61.25em) {
  .hero--glass.hero--form .hero__content { grid-template-columns: minmax(0, 1fr) 410px; }
}

.price-panel--split .price-panel__figure { margin-bottom: 6px; }
.price-panel--split .price-panel__figure > span { font-size: 16px; }
.price-panel__title { text-wrap: balance; }
.included--rate .included__col:first-child .included__head { margin-bottom: 33px; }
.callout.price-owner { grid-template-columns: auto minmax(0, 1fr); }
.persona-cards .checks { align-content: start; }
.money-row > *, .money-side > * { min-width: 0; }
.money-guide .copy { overflow-x: auto; }

@media (min-width: 37.5em) and (max-width: 64.99em) {
  .method--fill { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 44px; }
  .method--fill > ol { display: contents; }
  .method--fill > .languages { align-self: start; width: auto; margin: 0; }
}

@media (max-width: 37.49em) {
  .hero--glass.hero--form .button-row, .hero--plain .hero__content > .button-row { display: grid; justify-self: stretch; }
}

.feature-cards--three .cards, .persona-cards--three .cards { grid-template-columns: minmax(0, 1fr); }

@media (min-width: 47.5em) {
  .feature-cards--three .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .feature-cards--three .card:last-child:nth-child(3n + 1) { grid-column: 1 / -1; }
  .feature-cards--three .card:last-child:nth-child(3n + 2) { grid-column: span 2; }
}

@media (min-width: 60em) {
  .persona-cards--three .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 53.74em) {
  .media-split > img { order: 1; }
}

.method--fill > .method-after { align-self: start; margin: 0; padding: 18px 22px; font-size: var(--body-sm-size); line-height: var(--body-lh); color: var(--text-inverse-muted); background: var(--glass-on-ink); border: var(--border-hairline) solid var(--border-on-ink); border-radius: var(--radius-card); }
.method--fill > .method-after p { max-width: none; }

@media (min-width: 37.5em) {
  .money-card--plain .tags { display: grid; grid-template-columns: repeat(2, max-content); }
}

.included__col--out .included__head .icon { color: var(--neutral-500); }

@container (max-width: 324px) {
  .proof-row li { flex-basis: 100%; }
  .proof-row li + li::before { display: none; }
}

@media (min-width: 37.5em) and (max-width: 64.99em) {
  .method--three ol { grid-template-columns: minmax(0, 1fr); }
}

@media (min-width: 37.5em) {
  .price-panel:not(.price-panel--rows, .price-panel--split) ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 70em) {
  .price-panel:not(.price-panel--rows, .price-panel--split) ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 61.25em) {
  .hero--subject::before {
    background:
      linear-gradient(180deg, rgba(7,14,25,.9) 0%, rgba(7,14,25,.55) 22%, rgba(7,14,25,.3) 50%, rgba(7,14,25,.55) 78%, rgba(7,14,25,.9) 100%),
      linear-gradient(90deg, rgba(7,14,25,.94) 0%, rgba(7,14,25,.86) 36%, rgba(7,14,25,.3) 47%, rgba(7,14,25,.3) 59%, rgba(7,14,25,.6) 65%, rgba(7,14,25,.6) 100%);
  }
}

.recent-jobs__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-2) var(--space-5); margin-bottom: var(--space-7); }
.recent-jobs__head > * { margin: 0; }
.recent-jobs__head p { font-size: var(--body-lg-size); line-height: var(--body-lg-lh); color: var(--text-secondary); }
.job-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--gutter); margin: 0; padding: 0; list-style: none; }
@media (min-width: 56em) { .job-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.job-card { position: relative; isolation: isolate; gap: var(--space-3); overflow: hidden; color: var(--white); background: var(--navy-800); border-color: var(--green-400) transparent transparent; }
.job-card::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--scrim-job); }
.job-card__photo { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-reveal) var(--ease-out); }
.job-card:hover { box-shadow: var(--shadow-card-hover); transform: translateY(var(--lift-hover)); }
.job-card:hover .job-card__photo { transform: scale(1.04); }
.job-card:has(:focus-visible) { box-shadow: var(--shadow-focus); }
.job-card__when { display: flex; align-items: center; gap: 10px; font-size: var(--eyebrow-size); font-weight: var(--eyebrow-weight); letter-spacing: var(--eyebrow-track); text-transform: uppercase; color: var(--text-inverse-muted); }
.job-card__when .icon { width: 24px; height: 24px; color: var(--green-400); }
.job-card .job-card__title { margin-top: var(--space-3); font-size: var(--h3-size); line-height: var(--h3-lh); }
.job-card__title a { color: var(--white); text-decoration: none; }
.job-card__title a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.job-card__title a:focus-visible { box-shadow: none; }
.job-card__route { font-size: var(--body-lg-size); color: rgba(255,255,255,.85); }
.job-card__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); margin: auto 0 0; padding-top: var(--space-5); border-top: var(--border-hairline) solid rgba(255,255,255,.24); }
.job-card__stats div { display: grid; align-content: start; gap: 4px; }
.job-card__stats dt { font-size: var(--caption-size); font-weight: var(--weight-bold); letter-spacing: .12em; text-transform: uppercase; color: var(--text-inverse-muted); }
.job-card__stats dd { margin: 0; font-size: var(--body-lg-size); font-weight: var(--weight-semibold); color: var(--white); }
.recent-jobs__all { margin: var(--space-6) 0 0; }
.recent-jobs__all a { display: inline-flex; align-items: center; gap: var(--space-2); min-height: 48px; font-weight: var(--weight-semibold); color: var(--navy-900); }
.recent-jobs__all .icon { width: 20px; height: 20px; color: var(--green-700); }
