/* Accessibility corrections preserve all approved hero geometry and media. */
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .desktopnav .gdb-nav-portal,
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .desktopnav .gdb-nav-portal:hover,
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .desktopnav .gdb-nav-portal:focus-visible {
  color: var(--accent-text);
}
/* Use the existing dark text-orange on light surfaces; hover stays black. */
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .desktopnav .gdb-nav-portal::after {
  background: var(--ink-900);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .desktopnav .gdb-nav-portal:focus-visible::after {
  right: 0;
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .mobilemenu .gdb-nav-portal,
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .mobilemenu .gdb-menu-panel .gdb-nav-portal {
  color: var(--accent-text);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .mobilemenu .gdb-nav-portal:hover,
body:is(.gdb-redesign,.gdb-newchrome-legacy) > header .mobilemenu .gdb-nav-portal:focus-visible {
  color: var(--accent-text);
  text-decoration: underline;
  text-decoration-color: var(--ink-900);
}
body main .eyebrow:not(.home-hero-eyebrow) { color: var(--ink-600); }
body main .gdb-review-carousel .eyebrow { color: var(--accent-500); }
body main .service-planning :is(h2,h3),
body main .planning-items h3,
body > footer .footer-grid :is(h2,h3) { color: var(--white); }
body main .step-num,
body main .credential-review span[aria-hidden],
body main .guide-card a > span[aria-hidden] { color: var(--accent-text); }
/* The 404 template now sits on white, not the old dark page surface. */
body main .nf { background: var(--white); color: var(--ink-900); }
body main .nf h1 { color: var(--ink-900); }
body main .nf p { color: var(--brand-500); }
body main .nf .nf__code { color: var(--accent-text); }
body main .nf__links a {
  color: var(--ink-900);
  border-color: var(--brand-500);
  background: transparent;
}
body main .nf__links a:hover { color: var(--ink-900); background: var(--accent-500); }
body main .nf__links a:focus-visible { outline: 2px solid var(--ink-900); outline-offset: 3px; }
body main .nf .btn { color: var(--ink-800); }

body.homepage #process .step-num,
body.homepage #credentials .home-rating-value span[aria-hidden],
body.homepage main .guides a > span[aria-hidden] { color: var(--accent-text) !important; }

/* Motion control lives in the footer; the approved hero remains untouched. */
.gdb-footer-video-toggle {
  appearance: none; background: none; border: 0; padding: 0;
  color: var(--white); font: inherit; text-align: left;
  text-decoration: underline; cursor: pointer;
}
.gdb-footer-video-toggle[hidden] { display: none; }
.gdb-footer-video-toggle:focus-visible { outline: auto; outline-offset: var(--space-3xs); }


/* Legacy pages only. The approved redesigned homepage/hero is excluded. */
body.v2 main .btn:not(.btn--ghost) {
  color: var(--ink-800);
}
body.v2 main .next__card > span:not(.blog__ph):not(.blog__meta) {
  color: var(--accent-text);
}
body.v2 main .grev .grev__rate b,
body.v2 main .pg .pg__top .eyebrow,
body.v2 main .ty .eyebrow,
body.v2 main .ty .ty__h {
  color: var(--white);
}

/* Process text stays readable before its progress marker reaches the scroll line. */
body.v2 main .sx.anim .sproc li { opacity: 1; }

/* Correct heading levels without changing the existing article type scale. */
body.v2 .prose h2:is(
  [id="1-the-building-envelope-insulation--air-sealing"],
  [id="2-modernizing-the-electrical--smart-systems"],
  [id="3-high-roi-kitchen--bath-maintenance"],
  [id="4-basement-waterproofing--backwater-valves"],
  [id="5-curb-appeal-with-a-structural-purpose"],
  [id="the-grand-design-build-approach"],
  [id="1-upgrade-to-a-modern-kitchen"],
  [id="2-create-a-spa-like-bathroom"],
  [id="3-add-smart-home-features"],
  [id="4-design-a-walk-in-closet"],
  [id="5-refresh-your-outdoor-space"],
  [id="6-use-high-quality-finishes"],
  [id="7-improve-lighting"],
  [id="key-changes-in-bill-17-that-affect-custom-home-projects"],
  [id="custom-homes-and-infill-builds-expected-to-surge-in-toronto"],
  [id="why-this-matters-for-homeowners"]
) {
  font-size: var(--step-1);
  line-height: var(--leading-snug);
  margin-block-start: var(--space-xl);
}


/* Service accessibility corrections: color only; approved geometry is unchanged. */
body.service-page main .service-planning .eyebrow {
  color: var(--white);
}

/* The small numbered labels sit on pale service-section backgrounds. */
body.service-expanded-page #main :is(.sfeat__n, .sproc__n) {
  color: var(--accent-text);
}

/* These two review carousels retain their dark background. */
body:is(.service-design-and-permits, .service-project-management) #main .gdb-review-heading .eyebrow {
  color: var(--white);
}

/* The laneway review heading remains on the existing pale section background. */
body.service-laneway-housing #main #reviews :is(#rev-h, .grev__rate b, .grev__head .link, .gdb-review-heading .link) {
  color: var(--ink-800);
}
body.service-laneway-housing #main #reviews :is(.grev__count, .gdb-review-heading .eyebrow) {
  color: var(--ink-600);
}


/* Main desktop navigation only. Preserve header height, dropdowns and mobile. */
@media(min-width:1051px){
 body:is(.gdb-redesign,.gdb-newchrome-legacy) > header nav.desktopnav{
  --nav-item-gap:calc(var(--space-s) + var(--space-3xs));
  gap:var(--nav-item-gap);
  font-size:var(--font-nav-size);
  font-weight:var(--weight-medium);
 }
 body:is(.gdb-redesign,.gdb-newchrome-legacy) > header nav.desktopnav > :is(a,div){position:relative}
 body:is(.gdb-redesign,.gdb-newchrome-legacy) > header nav.desktopnav > :is(a,div):not(:first-child)::before{
  content:"";position:absolute;
  left:calc(var(--nav-item-gap) / -2);
  top:50%;transform:translateY(-50%);
  width:var(--stroke-hairline);height:var(--space-s);
  background:color-mix(in srgb,var(--text) 12%,transparent);
  pointer-events:none;
 }
}
@media(min-width:1051px) and (max-width:1279px){
 body:is(.gdb-redesign,.gdb-newchrome-legacy) > header nav.desktopnav{
  --nav-item-gap:calc(var(--space-xs) + var(--space-3xs) / 2);
  font-size:var(--step--1);
 }
}


/* Neutral section surfaces only. Header, heroes, hero benefits and media are excluded. */
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer {
  background-color: var(--brand-700);
  color: var(--text-inverse);
}
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer .footer-grid :is(h2,h3) {
  color: var(--text-inverse);
}
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer .footer-grid :is(p,a),
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer .footer-bottom {
  color: var(--text-inverse-muted);
}
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer .footer-bottom {
  border-top-color: var(--text-muted);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) main > .related-services {
  background-color: var(--brand-50);
}

body:is(.gdb-redesign,.gdb-newchrome-legacy) main > section:not(:where(.hero,.service-hero,.company-hero,.area-hero,#top,#why-choose-us,.gdb-review-carousel)) {
  --bg: var(--text-inverse);
  --bg-subtle: var(--brand-50);
  --text: var(--brand-700);
  --paper: var(--bg-subtle);
  --white: var(--bg);
  --ink: var(--text);
  --text-muted: var(--brand-500);
  --muted: var(--text-muted);
  --line: var(--border-strong);
  --deep: var(--text);
  --service-tint: var(--bg-subtle);
  background-color: var(--bg);
  color: var(--text);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) main > :is(.scope-section,.projects-section,.company-services,.home-contact-editorial,.contact-form-section,.gallery-notes,.gallery-close,.source-service-proof,.area-proof,.sx--tint,.sx--warm,.faq,.area-directory-section) {
  background-color: var(--bg-subtle);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) main > :is(.service-planning,.areas,.cband) {
  --muted: var(--text-inverse-muted);
  --service-tint: var(--brand-700);
  background-color: var(--brand-700);
  color: var(--text-inverse);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) main > :is(.service-planning,.areas,.cband) :is(h2,h3,a,.areas__ask) {
  color: var(--text-inverse);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) main > :is(.service-planning,.areas,.cband) :is(p,li,.sec-sub,.eyebrow,.areas__more,.areas__askb) {
  color: var(--text-inverse-muted);
}
body:is(.gdb-redesign,.gdb-newchrome-legacy) main > :is(.service-planning,.areas,.cband) :is(.btn:not(.btn--ghost),.button) {
  color: var(--brand-700);
}

/* Guide templates share the legacy colour ramp, independent of their layout. */
body:is(.guides-index,.guides-article) main {
  --ink-800: var(--brand-700);
  --ink-700: var(--brand-600);
  --ink-600: var(--brand-500);
  --ink-500: var(--brand-500);
  --ink-400: var(--brand-300);
  --ink-200: var(--border-strong);
  --ink-100: var(--border);
  --ink-50: var(--brand-50);
  --white: var(--text-inverse);
}

/* Legacy v2 palettes shadow the neutral ramp. Rebind only their review surfaces. */
body.gdb-newchrome-legacy main .gdb-review-carousel {
  --ink-800: var(--text);
  --ink-700: var(--text-muted);
  --ink-50: var(--text-inverse);
  --ink-300: var(--text-inverse-muted);
}
body.area-layout-page main section.grev.gdb-review-carousel {
  --white: var(--bg);
}
body.area-layout-page main .grev .gdb-review-heading :is(p,.grev__count) {
  color: var(--text-muted);
}
body.area-layout-page main .grev .gdb-review-heading .eyebrow {
  color: var(--accent-text);
}

/* Shared copyright and owner-requested in-house team credit. */
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer .footer-bottom > .footer-copyright {
  display:block;
  max-width:var(--measure-narrow);
}
html body:is(.gdb-redesign,.gdb-newchrome-legacy) > footer .footer-team-credit {
  margin:var(--space-2xs) 0 0;
  color:var(--text-inverse-muted);
  font-size:inherit;
  line-height:var(--leading-normal);
}


/* Approved mobile-only film, copy and benefits sequence. Desktop is unchanged. */
@media (max-width:700px) {
  /* Allen-approved screenshot: normal page space, never a fixed white rail. */
  body .home-opening {
    padding-top:var(--space-xs);
    padding-bottom:calc(var(--space-2xl) + var(--space-s));
    min-height:calc(100svh - var(--gdb-opening-header, var(--mobile-home-header-fallback)));
    box-sizing:border-box;
    background:var(--white);
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay {
    display:flex;
    flex-direction:column;
    height:auto;
    min-height:0;
    aspect-ratio:auto;
    background:var(--white);
    overflow:visible;
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .hero-photo.gdb-hero-video {
    order:0;
    position:relative;
    inset:auto;
    flex:none;
    width:100%;
    height:auto;
    aspect-ratio:var(--mobile-home-video-ratio);
    margin:0;
    overflow:hidden;
  }
  body .home-opening .home-hero-overlay .gdb-hero-video-stage {
    width:100%;
    height:auto;
    aspect-ratio:var(--mobile-home-video-ratio);
  }
  body .home-opening .home-hero-overlay .gdb-hero-video-stage::after {
    background:var(--mobile-hero-tint);
    opacity:1;
    backdrop-filter:none;
    mask-image:none;
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .gdb-hero-video-poster,
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .gdb-hero-video-media {
    filter:none;
    object-fit:cover;
    object-position:center;
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .hero-copy {
    order:1;
    position:relative;
    inset:auto;
    width:100%;
    padding:var(--space-l) var(--gutter) var(--space-m);
    margin:0;
    color:var(--ink-800);
    background:var(--white);
    text-shadow:none;
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .hero-copy::after {
    content:"";
    position:absolute;
    left:var(--gutter);
    bottom:var(--space-2xs);
    width:var(--space-xl);
    height:var(--stroke-hairline);
    background:var(--accent-500);
    pointer-events:none;
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .home-hero-eyebrow {
    margin:0 0 var(--space-2xs);
    color:var(--accent-text);
    font-size:var(--step--2);
    line-height:var(--leading-snug);
    letter-spacing:var(--tracking-widest);
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay h1 {
    margin:0 0 var(--space-xs);
    color:var(--ink-800);
    font-size:var(--step-3);
    line-height:var(--leading-snug);
    letter-spacing:var(--tracking-tight);
    text-wrap:balance;
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .hero-service-summary {
    max-width:none;
    margin:0 0 var(--space-2xs);
    color:var(--ink-700);
    font-size:var(--step--1);
    line-height:var(--leading-normal);
  }
  body .home-opening .editorial-hero.home-hero-wide.home-hero-overlay .hero-lead {
    max-width:none;
    margin:0;
    color:var(--ink-600);
    font-size:var(--step-0);
    line-height:var(--leading-normal);
  }
  body .home-opening .home-values-section {
    margin:0;
    padding:var(--space-2xs) var(--space-s) var(--space-m);
    background:var(--white);
    color:var(--ink-800);
  }
}

/* Only the enquiry button floats above the page; no full-width mobile rail. */
@media (max-width:850px) {
  html:has(body.gdb-mobile-contact-page:not(.gdb-contact-destination)) {
    scroll-padding-bottom:calc(var(--space-xl) + var(--space-xs) * 3 + env(safe-area-inset-bottom, 0px));
  }
  body.gdb-mobile-contact-page:not(.gdb-contact-destination),
  body.gdb-newchrome-legacy.gdb-mobile-contact-page:not(.gdb-contact-destination) {
    padding-bottom:0;
  }
  body.gdb-mobile-contact-page:not(.gdb-contact-destination) .gdb-contact-widget {
    left:auto;
    right:max(var(--space-s), env(safe-area-inset-right, 0px));
    bottom:calc(8px + env(safe-area-inset-bottom, 0px));
    width:max-content;
    max-width:calc(100% - var(--space-s) * 2);
    min-height:0;
    justify-content:flex-end;
    gap:0;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
    pointer-events:none;
  }
  body.gdb-mobile-contact-page .gdb-contact-widget .gdb-contact-prompt {
    display:none;
  }
  body.gdb-mobile-contact-page .gdb-contact-widget .gdb-contact-link {
    min-height:var(--space-xl);
    max-width:100%;
    box-shadow:none;
    pointer-events:auto;
  }
}

/* Normal footer space keeps final links above the fixed mobile enquiry action. */
@media (max-width:850px) {
  body.gdb-mobile-contact-page:not(.gdb-contact-destination) > footer {
    padding-bottom:calc(96px + env(safe-area-inset-bottom, 0px));
  }
}


/* Shared decorative sequence numbers; factual figures and article lists are untouched. */
body main :is(.editorial-number,.sfeat__n,.scard__n,.step-num,.area-card-number,.company-service>.number,.svc-step>.num,.svc-list-item>.n,.sproc__n),
body main .slist li>b,
body main .number>b {
  color:var(--accent-text);
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  font-family:var(--font-display);
  font-size:var(--step-2);
  font-weight:var(--weight-regular,400);
  line-height:var(--leading-snug);
  letter-spacing:var(--tracking-tight);
  font-variant-numeric:lining-nums proportional-nums;
  padding:0;
  min-width:0;
}
body main .intro-body li:has(>b.editorial-number) {
  display:grid;
  grid-template-columns:var(--space-l) minmax(0,1fr);
  align-items:start;
  column-gap:var(--space-xs);
  padding-block:var(--space-2xs);
}
body main .intro-body li>b.editorial-number {
  width:auto;
  margin:0;
  line-height:var(--leading-tight);
}
body main .service-card-copy .number>b.editorial-number {
  display:inline-block;
  width:auto;
  height:auto;
  margin-right:var(--space-xs);
}

/* Match the legacy component specificity without changing its layout. */
body.about-page main .company-service>.number.editorial-number,
body.service-expanded-page #main .sig .eyebrow.editorial-number {
  display:block;
  width:auto;
  height:auto;
  min-width:0;
  padding:0;
  color:var(--accent-text);
  background:transparent;
  border:0;
  border-radius:0;
  font-family:var(--font-display);
  font-size:var(--step-2);
  font-weight:var(--weight-regular,400);
  line-height:var(--leading-snug);
  letter-spacing:var(--tracking-tight);
}


/* Shared project captions: preserve photographs, tracks, links and all project details. */
body #main .photo-slider .project > h3,
body #main .service-project-feature .photo-slide > figcaption > b,
body #main .work .wk__cap > .wk__n {
  display:block;
  margin:20px 0 9px;
  padding:0;
  color:var(--ink-800);
  font-family:var(--font-display);
  font-size:clamp(24px,2vw,30px);
  font-weight:var(--weight-regular,400);
  line-height:1.2;
  letter-spacing:var(--tracking-tight);
  text-transform:none;
  max-width:30ch;
}
body #main .photo-slider .project > h3::before,
body #main .service-project-feature .photo-slide > figcaption > b::before,
body #main .work .wk__cap > .wk__n::before {
  content:"";
  display:block;
  width:26px;
  height:2px;
  margin-bottom:12px;
  background:var(--accent-text);
}
body #main .photo-slider .project .project-type,
body #main .photo-slider .project:hover .project-type > span,
body #main .photo-slider .project .project-type > span,
body #main .service-project-feature .photo-slide > figcaption > span,
body #main .work .wk__category {
  color:var(--accent-text);
  font-size:11px;
  font-weight:500;
  line-height:1.5;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body #main .service-project-feature .photo-slide > figcaption > span,
body #main .work .wk__category {display:block;margin:0 0 12px;}
body #main .photo-slider .project .project-type {margin:0 0 12px;}
body #main .photo-slider .project > .home-project-detail,
body #main .service-project-feature .project-caption-note,
body #main .work .wk__cap > .wk__note {
  margin:12px 0 0;
  max-width:60ch;
  font-size:14px!important;
  line-height:1.65!important;
  font-weight:400;
  color:var(--ink-600);
}
body #main .photo-slider .project > .home-project-year {
  margin:16px 0 0;
  font-size:12px;
  color:var(--ink-600);
}
body #main .work .wk__meta {margin-top:16px;}
@media(max-width:700px){
 body #main .photo-slider .project > h3,
 body #main .service-project-feature .photo-slide > figcaption > b,
body #main .work .wk__cap > .wk__n {margin-top:16px;font-size:24px;}
 body #main .photo-slider .project > .home-project-detail,
 body #main .service-project-feature .project-caption-note,
body #main .work .wk__cap > .wk__note {max-width:none;}
}

body #main .service-project-feature .photo-slide > figcaption {display:block;padding:0;background:transparent;}
body #main .service-project-feature .photo-slide > figcaption > span {display:block;margin:0 0 12px;}


/* Contact-only alignment; Buildertrend remains in its existing form column. */
@media (min-width:851px) {
  body.contact-page .contact-main {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:var(--space-2xl);
    row-gap:var(--space-xl);
    align-items:start;
  }
  body.contact-page .contact-intro {
    grid-column:1;
    grid-row:1;
    display:grid;
    grid-template-rows:auto auto auto minmax(0,1fr);
    align-self:stretch;
  }
  body.contact-page .contact-family-photo {
    align-self:center;
    margin:var(--space-l) 0;
  }
  body.contact-page .contact-form {grid-column:2;grid-row:1}
  body.contact-page .contact-office {
    grid-column:1 / -1;
    grid-row:2;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:var(--space-2xl);
    align-items:start;
    padding-top:var(--space-m);
    border:0;
    border-radius:0;
    background:transparent;
  }
  body.contact-page .contact-office .office-details {
    padding:0;
    background:transparent;
  }
  body.contact-page .contact-office .office-heading {
    font-family:var(--font-display);
    font-size:var(--step-3);
    margin-bottom:var(--space-m);
  }
  body.contact-page .contact-office .contact-photo {
    margin:0;
    border:0;
    border-radius:0;
    overflow:visible;
  }
  body.contact-page .contact-office .contact-photo img {
    height:auto;
    width:100%;
    object-fit:contain;
  }
}

/* Desktop photo follows the hosted form content rather than its viewport-sized blank area. */
@media (min-width:851px) {
  body.contact-page .contact-intro {
    height:var(--contact-photo-aligned-height,auto);
    align-self:start;
  }
  body.contact-page .contact-family-photo {
    align-self:end;
    margin:var(--space-l) 0 0;
  }

  body.contact-page .contact-main:has(.contact-form--compact) .contact-intro {
    grid-column:1 / -1;
    height:auto;
  }
  body.contact-page .contact-main:has(.contact-form--compact) .contact-family-photo {
    display:none;
  }
  body.contact-page .contact-main .contact-form--compact {
    grid-column:1 / -1;
    grid-row:2;
  }
  body.contact-page .contact-main:has(.contact-form--compact) .contact-office {
    grid-row:3;
  }
}


#env-badge[data-astro-cid-xduyw4fh]{z-index:2147483647;pointer-events:none;-webkit-user-select:none;user-select:none;font:600 var(--step--2,.72rem) / 1 var(--font-heading);letter-spacing:.08em;text-transform:uppercase;color:var(--white);background:var(--danger);box-shadow:var(--shadow-sm,0 1px 3px #0000004d);border-radius:999px;padding:.4rem .9rem;position:fixed;inset-block-end:1rem;inset-inline-start:1rem}#env-badge[data-astro-cid-xduyw4fh][data-alarm]{background:color-mix(in srgb, var(--danger) 78%, black);animation:1.6s ease-in-out infinite env-badge-pulse}@keyframes env-badge-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){#env-badge[data-astro-cid-xduyw4fh][data-alarm]{outline:2px solid var(--white);outline-offset:2px;animation:none}}@media print{#env-badge[data-astro-cid-xduyw4fh]{display:none}}:root{--brand-50:#f6f7f7;--brand-100:#e3e4e6;--brand-300:#8a8f94;--brand-400:#6b747d;--brand-500:#54595f;--brand-600:#3c434a;--brand-700:#1d1f21;--accent-500:#f78c1e;--accent-600:#cb7319;--accent-text:#9c4b00;--hero-overlay-rgb:29, 29, 29;--mobile-hero-tint:rgba(var(--hero-overlay-rgb), .12);--mobile-home-video-ratio:16 / 10;--mobile-home-header-fallback:4.0625rem;--accent-tint:#feeedd;--ink-900:#000;--ink-800:#1d1f21;--ink-700:#3c434a;--ink-600:#54595f;--ink-500:#6b747d;--ink-400:#8a8f94;--ink-300:#b6bcc2;--ink-200:#e3e4e6;--ink-100:#eef0f1;--ink-50:#f6f7f7;--white:#fff;--bg:var(--white);--bg-subtle:var(--ink-50);--bg-inverse:var(--ink-900);--surface:var(--white);--surface-raised:var(--white);--border:var(--ink-100);--border-strong:var(--ink-200);--text:var(--ink-800);--text-muted:var(--ink-500);--text-inverse:var(--white);--text-inverse-muted:color-mix(in oklab, var(--white) 72%, transparent);--focus:var(--ink-900);--danger:#c8382e;--danger-bg:#fdf1f0;--success:#1c6b45;--font-heading:"Instrument Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display:"Source Serif 4", Georgia, "Times New Roman", serif;--font-body:"Source Serif 4", Georgia, "Times New Roman", serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", monospace;--font-body-size:clamp(1.0625rem, 1rem + .15vw, 1.125rem);--font-benefit-size:clamp(.9375rem, .9rem + .15vw, 1rem);--font-nav-size:.9375rem;--stroke-hairline:1px;--font-benefit-heading-size:clamp(1rem, .95rem + .2vw, 1.125rem);--step--2:clamp(.694rem, .675rem + .09vw, .741rem);--step--1:clamp(.833rem, .81rem + .11vw, .889rem);--step-0:clamp(1rem, .96rem + .2vw, 1.0625rem);--step-1:clamp(1.125rem, 1.08rem + .22vw, 1.3rem);--step-2:clamp(1.32rem, 1.24rem + .4vw, 1.65rem);--step-3:clamp(1.55rem, 1.4rem + .72vw, 2.1rem);--step-4:clamp(1.85rem, 1.62rem + 1.13vw, 2.7rem);--step-5:clamp(2.1rem, 1.8rem + 1.5vw, 3.25rem);--step-6:clamp(2.4rem, 2rem + 2vw, 3.9rem);--leading-tight:1.05;--leading-snug:1.2;--leading-normal:1.6;--leading-relaxed:1.75;--tracking-tighter:-.04em;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.02em;--tracking-widest:.14em;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--measure:68ch;--measure-narrow:46ch;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--section-y:clamp(2.5rem, 1.5rem + 4vw, 5rem);--section-y-tight:clamp(2rem, 1.25rem + 3vw, 3.5rem);--section-y-loose:clamp(5rem, 3rem + 9vw, 11rem);--width-max:1120px;--width-wide:1440px;--width-text:44rem;--gutter:32px;--radius-unit:1;--radius-xs:calc(6px * var(--radius-unit));--radius-s:calc(10px * var(--radius-unit));--radius-m:calc(16px * var(--radius-unit));--radius-l:calc(24px * var(--radius-unit));--radius-xl:calc(32px * var(--radius-unit));--radius-full:calc(999px * var(--radius-unit));--shadow-rgb:20 23 26;--shadow-xs:0 1px 2px rgb(var(--shadow-rgb) / .06);--shadow-s:0 2px 8px -2px rgb(var(--shadow-rgb) / .08), 0 1px 2px rgb(var(--shadow-rgb) / .04);--shadow-m:0 8px 24px -8px rgb(var(--shadow-rgb) / .12), 0 2px 6px -2px rgb(var(--shadow-rgb) / .06);--shadow-l:0 24px 48px -16px rgb(var(--shadow-rgb) / .16), 0 4px 12px -4px rgb(var(--shadow-rgb) / .06);--ring:0 0 0 3px color-mix(in oklab, var(--focus) 35%, transparent);--dur-fast:.12s;--dur-base:.22s;--dur-slow:.42s;--dur-reveal:.6s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--header-h:6rem;--hero-fold:25rem;--rule-grid:2rem;--z-header:100;--z-menu:110;--z-skip:200}.on-dark{--bg:var(--ink-900);--bg-subtle:var(--ink-800);--surface:color-mix(in oklab, var(--white) 6%, transparent);--surface-raised:color-mix(in oklab, var(--white) 9%, transparent);--border:color-mix(in oklab, var(--white) 12%, transparent);--border-strong:color-mix(in oklab, var(--white) 22%, transparent);--text:var(--white);--text-muted:color-mix(in oklab, var(--white) 68%, transparent);--focus:var(--white);color:var(--text);background-color:var(--bg)}@media (width<=40rem){:root{--gutter:20px}}:root{--service-photo-gap:2rem;--service-photo-ratio:4/3;--service-photo-max-width:40rem}.prose{font-size:var(--step-0);line-height:var(--leading-relaxed);color:var(--ink-700);max-inline-size:var(--width-text)}.prose>*+*{margin-block-start:var(--space-m)}.prose h2{font-size:var(--step-3);color:var(--ink-900);margin-block-start:var(--space-2xl);scroll-margin-block-start:calc(var(--header-h) + var(--space-m));line-height:1.15}.prose h3{font-size:var(--step-1);color:var(--ink-900);margin-block-start:var(--space-xl);scroll-margin-block-start:calc(var(--header-h) + var(--space-m))}.prose h4{font-size:var(--step-0);font-family:var(--font-heading);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);margin-block-start:var(--space-l)}.prose h2+*,.prose h3+*,.prose h4+*{margin-block-start:var(--space-s)}.prose p{text-wrap:pretty}.prose a{color:var(--brand-700);font-weight:var(--weight-medium);text-decoration:underline;-webkit-text-decoration-color:color-mix(in oklab, var(--brand-500) 45%, transparent);text-decoration-color:color-mix(in oklab, var(--brand-500) 45%, transparent);text-underline-offset:.18em;transition:text-decoration-color var(--dur-fast) var(--ease-out);text-decoration-thickness:1.5px}.prose a:hover{-webkit-text-decoration-color:var(--brand-500);text-decoration-color:var(--brand-500)}.prose strong{font-weight:var(--weight-semibold);color:var(--ink-900)}.prose ul,.prose ol{padding-inline-start:var(--space-m)}.prose li+li{margin-block-start:var(--space-2xs)}.prose li::marker{color:var(--brand-500)}.prose ol li::marker{font-weight:var(--weight-semibold)}.prose img{border-radius:var(--radius-l);inline-size:100%;margin-block:var(--space-xl)}.prose figure{margin-block:var(--space-xl)}.prose figcaption{font-size:var(--step--1);color:var(--text-muted);text-align:center;margin-block-start:var(--space-2xs)}.prose blockquote{margin-block:var(--space-xl);padding:var(--space-m) var(--space-l);border-inline-start:3px solid var(--brand-500);background:var(--brand-50);border-radius:0 var(--radius-m) var(--radius-m) 0;font-size:var(--step-1);line-height:var(--leading-normal);color:var(--ink-800)}.prose blockquote p+p{margin-block-start:var(--space-s)}.prose hr{margin-block:var(--space-2xl);border:0;border-block-start:1px solid var(--border)}.prose code{font-family:var(--font-mono);background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-xs);padding:.15em .4em;font-size:.9em}.prose pre{margin-block:var(--space-l);padding:var(--space-m);background:var(--ink-900);border-radius:var(--radius-m);font-size:var(--step--1);overflow-x:auto}.prose pre code{background:0 0;border:0;padding:0}.prose .table-scroll{margin-block:var(--space-l);border:1px solid var(--border);border-radius:var(--radius-m);overflow-x:auto}.prose table{border-collapse:collapse;inline-size:100%;font-size:var(--step--1)}.prose th,.prose td{padding:var(--space-2xs) var(--space-s);text-align:start;border-block-end:1px solid var(--border)}.prose th{font-weight:var(--weight-semibold);color:var(--ink-900);background:var(--bg-subtle);white-space:nowrap}.prose tr:last-child td{border-block-end:0}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-variable.woff2)format("woff2-variations");font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-italic-variable.woff2)format("woff2-variations");font-weight:400 700;font-style:italic;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";src:url(/fonts/source-serif-4-variable.woff2)format("woff2-variations");font-weight:400 700;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";src:url(/fonts/source-serif-4-italic-variable.woff2)format("woff2-variations");font-weight:400 700;font-style:italic;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--space-m))}body{font-family:var(--font-body);font-size:var(--step-0);line-height:var(--leading-normal);font-weight:var(--weight-normal);color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-synthesis-weight:none;flex-direction:column;min-height:100svh;display:flex;overflow-x:clip}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}p,h1,h2,h3,h4,h5,h6,li{overflow-wrap:break-word}ul[role=list],ol[role=list]{padding:0;list-style:none}:target{scroll-margin-top:calc(var(--header-h) + var(--space-m))}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);text-wrap:balance;color:var(--text)}h1{font-size:var(--step-5);line-height:var(--leading-tight)}h2{font-size:var(--step-4);line-height:1.2}h3{font-size:var(--step-2)}h4{font-size:var(--step-1)}h5,h6{font-size:var(--step-0)}p{text-wrap:pretty}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}strong,b{font-weight:var(--weight-semibold)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:var(--radius-xs)}:focus:not(:focus-visible){outline:none}.skip-link{top:var(--space-2xs);left:var(--space-2xs);z-index:var(--z-skip);padding:var(--space-2xs) var(--space-s);background:var(--ink-900);color:var(--white);border-radius:var(--radius-s);font-weight:var(--weight-medium);text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.container{width:100%;max-width:calc(var(--width-max) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.container--wide{max-width:calc(var(--width-wide) + var(--gutter) * 2)}.container--text{max-width:calc(var(--width-text) + var(--gutter) * 2)}.section{padding-block:var(--section-y)}.section--tight{padding-block:var(--section-y-tight)}.section--loose{padding-block:var(--section-y-loose)}.under-header{padding-block-start:calc(var(--header-h) + var(--space-2xl))}.stack>*+*{margin-block-start:var(--flow,var(--space-s))}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{--btn-bg:var(--ink-900);--btn-fg:var(--white);--btn-border:transparent;justify-content:center;align-items:center;gap:var(--space-2xs);min-block-size:2.75rem;font-family:var(--font-heading);font-size:var(--step-0);font-weight:var(--weight-semibold);color:var(--btn-fg);background:var(--btn-bg);border:1.5px solid var(--btn-border);border-radius:var(--radius-s);cursor:pointer;transition:background-color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);padding:.7em 1.4em;line-height:1.1;text-decoration:none;display:inline-flex}.btn.btn{color:var(--btn-fg);background:var(--btn-bg);border-color:var(--btn-border)}.btn[aria-disabled=true],.btn:disabled,.btn[data-busy]{opacity:.6;pointer-events:none}.btn--ghost:hover{--btn-bg:transparent;--btn-border:var(--text)}.on-dark .btn{--btn-bg:var(--white);--btn-fg:var(--ink-900)}.on-dark .btn:hover{--btn-bg:var(--ink-100)}.on-dark .btn--ghost{--btn-bg:transparent;--btn-fg:var(--white);--btn-border:var(--border-strong)}[data-reveal-ready] [data-reveal]{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(1.25rem)}[data-reveal-ready] [data-reveal].is-revealed{opacity:1;will-change:auto;transform:none}::view-transition-old(root){animation:page-out .18s var(--ease-in-out) both}::view-transition-new(root){animation:page-in .32s var(--ease-out) both}@keyframes page-out{to{opacity:0;transform:translateY(-6px)}}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}}::view-transition-group(site-header){animation-duration:0s}[data-astro-transition-fallback=old] main{animation:page-out .18s var(--ease-in-out) both}[data-astro-transition-fallback=new] main{animation:page-in .32s var(--ease-out) both}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-astro-transition-fallback=old] main,[data-astro-transition-fallback=new] main{animation:none!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal-ready] [data-reveal]{opacity:1;transform:none}}@media print{.no-print{display:none!important}}.btn{--btn-bg:var(--accent-500);--btn-fg:var(--white);border-radius:var(--radius-full);font-size:var(--step--1);font-weight:var(--weight-bold)}.btn:hover{--btn-bg:var(--accent-600)}.btn--ghost{--btn-bg:transparent;--btn-fg:var(--ink-900);--btn-border:var(--ink-900)}.btn--ghost:hover{--btn-bg:var(--ink-900);--btn-fg:var(--white)}.on-dark .btn--ghost{--btn-fg:var(--white);--btn-border:color-mix(in oklab, var(--white) 55%, transparent)}.on-dark .btn--ghost:hover{--btn-bg:var(--white);--btn-fg:var(--ink-900);--btn-border:var(--white)}.on-dark .btn:not(.btn--ghost){--btn-bg:var(--accent-500);--btn-fg:var(--white)}.on-dark .btn:not(.btn--ghost):hover{--btn-bg:var(--accent-600)}.eyebrow{font-family:var(--font-heading);font-size:var(--step--1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--ink-400);margin-block-end:var(--space-2xs);display:block}.eyebrow:after{content:"";background:var(--accent-500);width:32px;height:2px;margin-block-start:var(--space-xs);display:block}.eyebrow--center:after{margin-inline:auto}.on-dark .eyebrow{color:color-mix(in oklab, var(--white) 70%, transparent)}h1,h2,h3{font-family:var(--font-heading);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.sec-title{text-wrap:balance;font-size:clamp(1.9rem,1.6rem + 1.5vw,2.6rem)}.sec-sub{color:var(--text-muted);font-size:var(--step-0);max-inline-size:56ch}.sec-title+.sec-sub{margin-block-start:var(--space-s)}.sec-sub+.btn{margin-block-start:var(--space-l)}.highlight{background-image:linear-gradient(var(--accent-tint), var(--accent-tint));-webkit-box-decoration-break:clone;box-decoration-break:clone;background-position:0 .3em;background-repeat:no-repeat;background-size:100% .95em;padding:0 6px}.trust-strip{background:var(--ink-50);border-block-end:1px solid var(--border);padding-block:var(--space-m)}.trust-strip__inner{justify-content:center;align-items:center;gap:var(--space-2xs) var(--space-l);text-align:center;font-size:var(--step--1);font-weight:var(--weight-semibold);color:var(--text-muted);flex-wrap:wrap;display:flex}.trust-strip__item{align-items:baseline;gap:var(--space-3xs);display:flex}@media (width<=40rem){.trust-strip{padding-block:0}.trust-strip__inner{grid-template-columns:1fr 1fr;align-items:stretch;gap:0;display:grid}.trust-strip--stats .trust-strip__inner{font-size:var(--step--2);grid-template-columns:repeat(3,1fr)}.trust-strip--stats .trust-strip__item{padding:var(--space-s) 6px}.trust-strip--stats .trust-strip__item:nth-child(odd),.trust-strip--stats .trust-strip__item:nth-child(3n){border-inline-end:0}.trust-strip--stats .trust-strip__item:not(:nth-child(3n)){border-inline-end:1px solid var(--border-strong)}.trust-strip--stats .trust-strip__item:not(:nth-child(-n+3)){border-block-end:0}.trust-strip--stats .trust-strip__item:nth-child(-n+3){border-block-end:1px solid var(--border-strong)}.trust-strip__item{justify-content:flex-start;align-items:center;gap:var(--space-3xs);padding:var(--space-m) var(--space-2xs);flex-direction:column}.trust-strip__item:nth-child(odd){border-inline-end:1px solid var(--border-strong)}.trust-strip__item:not(:nth-last-child(-n+2)){border-block-end:1px solid var(--border-strong)}.trust-strip__figure{line-height:var(--leading-snug);order:-1}.trust-strip__caption{line-height:var(--leading-snug);text-wrap:balance}}.trust-strip--stats .trust-strip__figure{color:var(--accent-500)}@media (width>=40.0625rem) and (width<=63.9375rem){.trust-strip--stats .trust-strip__inner{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:0;display:grid}.trust-strip--stats .trust-strip__item:not(:nth-child(3n+1)){border-inline-start:1px solid var(--border-strong)}.trust-strip--stats .trust-strip__item:nth-child(-n+3){border-block-end:1px solid var(--border-strong)}}@media (width>=64rem){.trust-strip--stats .trust-strip__inner{grid-template-columns:repeat(6,1fr);align-items:stretch;gap:0;display:grid}.trust-strip--stats .trust-strip__item:not(:first-child){border-inline-start:1px solid var(--border-strong)}}@media (width>=40.0625rem){.trust-strip--stats .trust-strip__item{text-align:center;justify-content:flex-start;align-items:center;gap:var(--space-3xs);padding:var(--space-2xs) var(--space-s);flex-direction:column}.trust-strip--stats .trust-strip__figure{line-height:var(--leading-snug);order:-1}.trust-strip--stats .trust-strip__caption{line-height:var(--leading-snug);text-wrap:balance}}.trust-strip__inner .star{color:var(--accent-500)}.compare-grid{grid-template-columns:1fr;align-items:start;gap:0;display:grid}@media (width>=51.25rem){.compare-grid{grid-template-columns:.8fr 1.4fr;gap:28px}.compare-grid__intro{top:var(--header-h);position:sticky}}.compare-grid__intro .eyebrow,.storefront-grid .eyebrow{text-align:left}.claim-list{flex-direction:column;display:flex}.claim-row{border-block-start:1px solid var(--border);grid-template-columns:56px 1fr;gap:24px;padding-block:14px;display:grid}.claim-row:last-child{border-block-end:1px solid var(--border)}.claim-row .n{font-family:var(--font-heading);color:var(--accent-500);font-size:var(--step-2);font-weight:var(--weight-bold)}.claim-row h3{font-size:var(--step-1);font-weight:var(--weight-semibold);margin-block-end:var(--space-2xs)}.claim-row p{color:var(--text-muted);max-inline-size:56ch}.services{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}@media (width<=53.75rem){.services{grid-template-columns:1fr 1fr}}@media (width<=32.5rem){.services{grid-template-columns:1fr}}.svc{background:var(--ink-100);height:300px;color:var(--white);border-radius:6px;text-decoration:none;display:block;position:relative;overflow:hidden}@media (width<=42.5rem){.svc{height:260px}}.svc .photo{position:absolute;inset:0}.svc .photo img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out);display:block}.svc:hover .photo img{transform:scale(1.06)}.svc:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0f0c0900 45%,#0f0c09d1 100%);position:absolute;inset:0}.svc .svc-peek{z-index:2;transition:opacity var(--dur-base) var(--ease-out);position:absolute;inset-block-end:20px;inset-inline:20px}.svc:hover .svc-peek{opacity:0}.svc .body{z-index:2;-webkit-backdrop-filter:blur(6px);transition:transform var(--dur-slow) var(--ease-out);background:#0f0c09bd;border-block-start:1px solid #ffffff24;padding:20px 20px 24px;position:absolute;inset-block-start:100%;inset-inline:0;transform:translateY(0)}.svc:hover .body{transform:translateY(-100%)}@media (hover:none){.svc{height:340px}.svc .body{transform:translateY(-100%)}.svc .svc-peek{opacity:0}.svc:hover .photo img{transform:none}}.svc .num{font-family:var(--font-heading);color:var(--accent-500);font-size:var(--step-1);font-weight:var(--weight-bold);margin-block-end:var(--space-2xs);display:block}.svc h3{color:var(--white);font-size:var(--step-0);font-weight:var(--weight-semibold);margin:0}.svc .body p{color:#ffffffeb;font-size:var(--step--1);line-height:var(--leading-normal);margin:var(--space-2xs) 0 0}@media (width<=40rem){.svc{height:240px}.svc .body{padding:14px 16px 16px}.svc .num{font-size:var(--step-0);margin-block-end:var(--space-3xs)}.svc h3{font-size:var(--step--1)}.svc .body p{font-size:var(--step--2);line-height:var(--leading-snug)}}.split-header{grid-template-columns:1fr;gap:16px;margin-block-end:32px;display:grid}@media (width>=42.5rem){.split-header{grid-template-columns:1fr 1fr;align-items:end;gap:48px}}.storefront-grid{grid-template-columns:1fr;gap:24px;display:grid}@media (width>=51.25rem){.storefront-grid{grid-template-columns:1fr 1fr;align-items:center;gap:56px}}.storefront-photo{aspect-ratio:1024/731;border-radius:var(--radius-xs);background:var(--ink-100);position:relative;overflow:hidden}.storefront-photo img{object-fit:cover;width:100%;height:100%;display:block}.storefront-photo .slide{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity var(--dur-slow) var(--ease-out);z-index:1;position:absolute;inset:0}.storefront-photo .slide.active{opacity:1;z-index:2}.storefront-photo .slideshow-prev,.storefront-photo .slideshow-next{z-index:3;cursor:pointer;width:40px;height:40px;font-size:var(--step-1);color:var(--ink-900);transition:background var(--dur-base) var(--ease-out);background:#ffffffd9;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;inset-block-start:50%;transform:translateY(-50%)}.storefront-photo .slideshow-prev:hover,.storefront-photo .slideshow-next:hover{background:var(--white)}.storefront-photo .slideshow-prev{inset-inline-start:14px}.storefront-photo .slideshow-next{inset-inline-end:14px}.storefront-photo .slideshow-dots{z-index:3;justify-content:center;gap:6px;display:flex;position:absolute;inset-block-end:14px;inset-inline:0}.storefront-photo .slideshow-dots button{box-sizing:content-box;cursor:pointer;background:#ffffff8c padding-box padding-box;border:8px solid #0000;border-radius:50%;width:8px;height:8px;padding:0}.storefront-photo .slideshow-dots button.active{background:var(--white)}.row-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-block-end:32px;display:flex}@media (width<=40rem){.claim-row{gap:var(--space-3xs);padding-block:var(--space-xs);grid-template-columns:1fr}.claim-row .n{font-size:var(--step-0)}}@media (width<=51.25rem){.row-header{flex-direction:column;align-items:flex-start;gap:16px}}.card-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (width<=51.25rem){.card-grid{grid-template-columns:1fr 1fr;gap:16px}}@media (width<=32.5rem){.card-grid{grid-template-columns:1fr}}.tile{color:var(--text);text-decoration:none;display:block}.tile .photo{aspect-ratio:4/3;border-radius:var(--radius-xs);background:var(--ink-100);margin-block-end:var(--space-s);overflow:hidden}.tile .photo img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out);display:block}.tile:hover .photo img{transform:scale(1.05)}.tile .tag{font-size:var(--step--1);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-400);margin-block-end:var(--space-2xs);display:block}.tile b{font-family:var(--font-heading);font-size:var(--step-0);font-weight:var(--weight-semibold);margin-block-end:var(--space-2xs);display:block}.tile .desc{color:var(--text-muted);font-size:var(--step--1)}.rev-grid{grid-template-columns:repeat(3,1fr);gap:16px;max-inline-size:65rem;margin-inline:auto;display:grid}@media (width<=51.25rem){.rev-grid{grid-template-columns:1fr 1fr}}@media (width<=32.5rem){.rev-grid{grid-template-columns:1fr}}.rev-card{border:1px solid var(--border);border-radius:var(--radius-xs);padding:22px 20px}.rev-card .stars{color:var(--accent-500);margin-block-end:var(--space-s)}.rev-card p{margin-block-end:var(--space-s);font-style:italic}.rev-card cite{color:var(--text-muted);font-size:var(--step--1);font-style:normal}.rev-stat{font-weight:var(--weight-bold);color:var(--accent-600);margin-block-start:var(--space-2xs)}.rev-badge{text-align:center;margin-block-start:var(--space-l)}.rev-badge a{color:var(--accent-500);font-weight:var(--weight-bold)}.process-grid{border:1px solid var(--border);background:var(--white);grid-template-columns:repeat(6,1fr);display:grid}@media (width<=51.25rem){.process-grid{grid-template-columns:repeat(3,1fr)}.process-item:nth-child(3n+1){border-inline-start:none}.process-item:nth-child(n+4){border-block-start:1px solid var(--border)}}@media (width<=32.5rem){.process-grid{grid-template-columns:1fr}.process-item{border-inline-start:none!important}.process-item:nth-child(n+2){border-block-start:1px solid var(--border)}}.process-item{border-inline-start:1px solid var(--border);padding:32px 22px}.process-item:first-child{border-inline-start:none}.process-item .num{font-family:var(--font-heading);color:var(--accent-500);font-size:var(--step-2);font-weight:var(--weight-bold);margin-block-end:var(--space-s);display:block}.process-item h3{font-size:var(--step-0);font-weight:var(--weight-semibold);margin-block-end:var(--space-2xs)}.process-item p{color:var(--text-muted);font-size:var(--step--1)}.process-cta{justify-content:center;gap:var(--space-2xs);flex-wrap:wrap;margin-block-start:var(--space-l);display:flex}.faq-layout{grid-template-columns:1fr;gap:28px;display:grid}@media (width>=51.25rem){.faq-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:48px}.faq-layout>:first-child{top:calc(var(--header-h) + var(--space-m));position:sticky}}.faq-item{border-block-start:1px solid var(--border)}.faq-item:last-child{border-block-end:1px solid var(--border)}.faq-q{justify-content:space-between;align-items:center;gap:var(--space-m);text-align:start;width:100%;padding:var(--space-m) 0;cursor:pointer;color:var(--text);background:0 0;border:none;font-family:inherit;display:flex}.faq-q span:first-child{font-size:var(--step-0);font-weight:var(--weight-medium)}.faq-q .chevron{border-radius:var(--radius-full);border:1px solid var(--ink-900);width:34px;height:34px;font-size:var(--step-0);transition:transform var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out);flex:none;justify-content:center;align-items:center;display:flex}.faq-item.open .faq-q .chevron{background:var(--ink-900);color:var(--white);transform:rotate(45deg)}.faq-a{transition:grid-template-rows var(--dur-base) var(--ease-out);grid-template-rows:0fr;display:grid}.faq-a>*{min-block-size:0;overflow:hidden}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-a p{color:var(--text-muted);padding-block-end:var(--space-m)}.areas-grid{grid-template-columns:repeat(4,1fr);gap:10px 16px;max-inline-size:47.5rem;margin-inline:auto;display:grid}@media (width<=53.75rem){.areas-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=32.5rem){.areas-grid{grid-template-columns:1fr 1fr}}.area-link{color:var(--text-muted);font-size:var(--step--1);padding-block:var(--space-2xs);border-block-end:1px solid var(--border);text-decoration:none;display:block}.area-link:before{content:"→ ";color:var(--accent-500)}.areas-note{text-align:center;color:var(--ink-400);font-size:var(--step--1);margin-block-start:var(--space-l)}.areas-note a{color:var(--accent-500)}.final-intro{text-align:center;max-inline-size:40rem;margin-block-end:var(--space-2xl);margin-inline:auto}.final-intro h2{margin-block:var(--space-s);font-size:clamp(1.8rem,1.5rem + 1.3vw,2.4rem)}.final-intro p{color:color-mix(in oklab, var(--white) 80%, transparent)}.final-grid{text-align:start;max-inline-size:40rem;margin-inline:auto;display:grid}.final-form{background:color-mix(in oklab, var(--white) 6%, transparent);border:1px solid color-mix(in oklab, var(--white) 12%, transparent);border-radius:var(--radius-s);padding:var(--space-l)}.final-form h3{font-size:var(--step-1);margin-block-end:var(--space-2xs)}.final-form>p{color:color-mix(in oklab, var(--white) 68%, transparent);font-size:var(--step--1);margin-block-end:var(--space-l)}.final-form .field{margin-block-end:var(--space-s)}.final-form label{font-size:var(--step--2);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:color-mix(in oklab, var(--white) 68%, transparent);margin-block-end:var(--space-3xs);display:block}.final-form input,.final-form select,.final-form textarea{background:color-mix(in oklab, var(--white) 8%, transparent);border:1px solid color-mix(in oklab, var(--white) 15%, transparent);border-radius:var(--radius-xs);width:100%;padding:var(--space-xs);font-size:var(--step--1);color:var(--white);font-family:inherit}.final-form button{width:100%;margin-block-start:var(--space-2xs)}.header .header__link{position:relative}.header .header__link:after{content:"";transform-origin:0;height:1px;transition:transform var(--dur-base) var(--ease-out);background:currentColor;position:absolute;inset-block-end:-1px;inset-inline:0;transform:scaleX(0)}.header .header__link:hover:after,.header .header__link[aria-current=page]:after,.header .header__link[data-current]:after{transform:scaleX(1)}body.home .header{background:0 0;border-block-end-color:#0000}body.home .header[data-scrolled]{background:var(--bg);border-block-end-color:var(--border)}body.home .header .header__logo{display:block}body.home .header .header__logo--invert{filter:brightness(0)invert();display:block}body.home .header .header__logo:not(.header__logo--invert),body.home .header[data-scrolled] .header__logo--invert{display:none}body.home .header[data-scrolled] .header__logo:not(.header__logo--invert){display:block}body.home .header .header__link,body.home .header .header__address{color:var(--white)}body.home .header .header__bars span{background:var(--white)}body.home .header[data-scrolled] .header__link,body.home .header[data-scrolled] .header__address{color:var(--text)}body.home .header[data-scrolled] .header__bars span{background:currentColor}body.home .header .header__address:hover,body.home .header .header__address:focus-visible,body.home .header[data-scrolled] .header__address:hover,body.home .header[data-scrolled] .header__address:focus-visible{color:var(--accent-500)}body.home .header .btn.header__cta{--btn-bg:var(--accent-500);--btn-fg:var(--white)}body.home .header .btn.header__cta:hover{--btn-bg:var(--accent-600)}.hero__ctas{gap:var(--space-s);flex-wrap:wrap;display:flex}.blog-grid{gap:var(--space-xl) var(--space-l);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));margin:0;padding:0;list-style:none;display:grid}.blog-card{gap:var(--space-xs);flex-direction:column;display:flex}.blog-card__media{display:block}.blog-card__ph{aspect-ratio:16/9;border-radius:var(--radius-m,.5rem);background:var(--ink-100,#eef0f2);display:block}.blog-card__title{margin:var(--space-xs) 0 0;font-size:var(--step-1);line-height:var(--leading-snug)}.blog-card__title a{color:inherit;text-decoration:none}.blog-card__title a:hover{text-decoration:underline}.blog-card__more{font-weight:600}.blog-card__date{font-size:var(--step--1);opacity:.7}.blog-pager{justify-content:space-between;margin-block-start:var(--space-2xl);font-weight:600;display:flex}.post-figure{margin-block:var(--space-l)}.post-figure__ph,.post-figure>img,.post-figure>picture img{border-radius:var(--radius-m,.5rem);inline-size:100%;display:block}.post-figure__ph{aspect-ratio:16/9;background:var(--ink-100,#eef0f2);color:var(--text-muted);font-size:var(--step--1);text-align:center;justify-content:center;align-items:center;display:flex}.post-figure figcaption{color:var(--text-muted);font-size:var(--step--1);margin-block-start:var(--space-2xs)}.final-light .final-intro p,.final-light .final-form>p,.final-light .final-form label{color:var(--text-muted)}.final-light .final-form{background:var(--white);border-color:var(--border)}.final-light .final-form input,.final-light .final-form select,.final-light .final-form textarea{background:var(--white);border-color:var(--border-strong,var(--border));color:var(--text)}@media (width<=40rem){.final-form{padding:var(--space-m)}}
