/* Intersect: common. BEM CSS. ビルド不要で直接編集できます。 */
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
:root,
:host {
  --font-sans:
    "Google Sans Flex", "Noto Sans JP", ui-sans-serif, system-ui, sans-serif,
    "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --color-red-500: oklch(63.7% 0.237 25.331);
  --color-blue-50: oklch(97% 0.014 254.604);
  --color-blue-200: oklch(88.2% 0.059 254.128);
  --color-slate-50: oklch(98.4% 0.003 247.858);
  --color-zinc-50: oklch(98.5% 0 none);
  --color-zinc-100: oklch(96.7% 0.001 286.375);
  --color-zinc-200: oklch(92% 0.004 286.32);
  --color-zinc-300: oklch(87.1% 0.006 286.286);
  --color-zinc-400: oklch(70.5% 0.015 286.067);
  --color-zinc-500: oklch(55.2% 0.016 285.938);
  --color-zinc-600: oklch(44.2% 0.017 285.786);
  --color-zinc-700: oklch(37% 0.013 285.805);
  --color-zinc-800: oklch(27.4% 0.006 286.033);
  --color-zinc-900: oklch(21% 0.006 285.885);
  --color-zinc-950: oklch(14.1% 0.005 285.823);
  --color-white: #fff;
  --spacing: 0.25rem;
  --container-xs: 20rem;
  --container-sm: 24rem;
  --container-lg: 32rem;
  --container-xl: 36rem;
  --container-2xl: 42rem;
  --container-3xl: 48rem;
  --container-4xl: 56rem;
  --container-5xl: 64rem;
  --container-7xl: 80rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 1rem;
  --text-base--line-height: calc(1.5 / 1);
  --text-lg: 1.125rem;
  --text-lg--line-height: calc(1.75 / 1.125);
  --text-xl: 1.25rem;
  --text-xl--line-height: calc(1.75 / 1.25);
  --text-2xl: 1.5rem;
  --text-2xl--line-height: calc(2 / 1.5);
  --text-3xl: 1.875rem;
  --text-3xl--line-height: calc(2.25 / 1.875);
  --text-4xl: 2.25rem;
  --text-4xl--line-height: calc(2.5 / 2.25);
  --text-5xl: 3rem;
  --text-5xl--line-height: 1;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --tracking-tight: -0.025em;
  --tracking-wide: 0.025em;
  --tracking-wider: 0.05em;
  --tracking-widest: 0.1em;
  --leading-tight: 1.25;
  --leading-snug: 1.375;
  --leading-relaxed: 1.625;
  --radius-2xl: 1rem;
  --blur-sm: 8px;
  --blur-3xl: 64px;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  --font-heading:
    "Google Sans Flex", "Zen Kaku Gothic New", ui-sans-serif, system-ui,
    sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
    "Noto Color Emoji";
  --color-accent: #0b1644;
  --color-accent-hover: #132463;
}
.site-header__inner {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-7xl);
  align-items: center;
  justify-content: space-between;
  padding-inline: calc(var(--spacing) * 6);
}
@media (width >= 64rem) {
  .site-header__inner {
    padding-inline: calc(var(--spacing) * 8);
  }
}
.site-header__link {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.site-header__image {
  height: calc(var(--spacing) * 12);
  width: auto;
  flex-shrink: 0;
  object-fit: contain;
}
@media (width >= 48rem) {
  .site-header__image {
    height: calc(var(--spacing) * 14);
  }
}
.site-header__caption {
  margin-top: var(--spacing);
  font-family: var(--font-heading);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-wider);
  letter-spacing: var(--tracking-wider);
  color: var(--color-zinc-900);
}
.site-header__nav {
  display: none;
  align-items: center;
  gap: calc(var(--spacing) * 8);
}
@media (width >= 48rem) {
  .site-header__nav {
    display: flex;
  }
}
.site-header__list {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 8);
}
.site-header__button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 1.5);
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-accent);
  background-color: var(--color-accent);
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 2.5);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  transition-property:
    color, background-color, border-color, outline-color, text-decoration-color,
    fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.site-header__button-text {
  position: relative;
  z-index: 10;
}
.site-header__toggle {
  padding: calc(var(--spacing) * 2);
  color: var(--color-zinc-900);
}
@media (width >= 48rem) {
  .site-header__toggle {
    display: none;
  }
}
.site-footer__footer {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-zinc-200);
  background-color: var(--color-white);
  padding-block: calc(var(--spacing) * 12);
}
@media (width >= 48rem) {
  .site-footer__footer {
    padding-block: calc(var(--spacing) * 16);
  }
}
.site-footer__inner {
  margin-inline: auto;
  max-width: var(--container-7xl);
  padding-inline: calc(var(--spacing) * 6);
}
@media (width >= 64rem) {
  .site-footer__inner {
    padding-inline: calc(var(--spacing) * 8);
  }
}
.site-footer__row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: calc(var(--spacing) * 12);
}
@media (width >= 48rem) {
  .site-footer__row {
    flex-direction: row;
  }
}
@media (width >= 48rem) {
  .site-footer__row {
    align-items: center;
  }
}
.site-footer__brand {
  max-width: var(--container-sm);
}
.site-footer__logo-link {
  margin-bottom: calc(var(--spacing) * 6);
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.site-footer__logo {
  height: calc(var(--spacing) * 12);
  width: auto;
  flex-shrink: 0;
  object-fit: contain;
}
@media (width >= 48rem) {
  .site-footer__logo {
    height: calc(var(--spacing) * 14);
  }
}
.site-footer__brand-name {
  margin-top: var(--spacing);
  font-family: var(--font-heading);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-wider);
  letter-spacing: var(--tracking-wider);
  color: var(--color-zinc-900);
}
.site-footer__tagline {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-zinc-500);
}
:where(.site-footer__address > :not(:last-child)) {
  --tw-space-y-reverse: 0;
  margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
  margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
}
.site-footer__address {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-zinc-600);
}
.site-footer__secondary {
  margin-top: calc(var(--spacing) * 8);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
@media (width >= 48rem) {
  .site-footer__secondary {
    margin-top: 0px;
  }
}
@media (width >= 48rem) {
  .site-footer__secondary {
    align-items: flex-end;
  }
}
.site-footer__privacy-link {
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 1.5);
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-zinc-600);
  transition-property:
    color, background-color, border-color, outline-color, text-decoration-color,
    fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
@media (hover: hover) {
  .site-footer__privacy-link:hover {
    color: var(--color-accent);
  }
}
.site-footer__chevron {
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  color: color-mix(in srgb, #0b1644 70%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .site-footer__chevron {
    color: color-mix(in oklab, var(--color-accent) 70%, transparent);
  }
}
.site-footer__chevron {
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
@media (hover: hover) {
  .site-footer__chevron:is(:where(.hover-group):hover *) {
    --tw-translate-x: calc(var(--spacing) * 0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}
@media (hover: hover) {
  .site-footer__chevron:is(:where(.hover-group):hover *) {
    color: var(--color-accent);
  }
}
.site-footer__copyright {
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-zinc-400);
}
@media (width >= 48rem) {
  .site-footer__copyright {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.prefooter__section {
  position: relative;
  overflow: hidden;
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, oklch(92% 0.004 286.32) 60%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .prefooter__section {
    border-color: color-mix(in oklab, var(--color-zinc-200) 60%, transparent);
  }
}
.prefooter__section {
  --tw-gradient-position: to bottom in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: color-mix(
    in srgb,
    oklch(96.7% 0.001 286.375) 80%,
    transparent
  );
}
@supports (color: color-mix(in lab, red, red)) {
  .prefooter__section {
    --tw-gradient-from: color-mix(
      in oklab,
      var(--color-zinc-100) 80%,
      transparent
    );
  }
}
.prefooter__section {
  --tw-gradient-via: var(--color-slate-50);
  --tw-gradient-via-stops:
    var(--tw-gradient-position),
    var(--tw-gradient-from) var(--tw-gradient-from-position),
    var(--tw-gradient-via) var(--tw-gradient-via-position),
    var(--tw-gradient-to) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-via-stops);
  --tw-gradient-to: color-mix(
    in srgb,
    oklch(97% 0.014 254.604) 20%,
    transparent
  );
}
@supports (color: color-mix(in lab, red, red)) {
  .prefooter__section {
    --tw-gradient-to: color-mix(
      in oklab,
      var(--color-blue-50) 20%,
      transparent
    );
  }
}
.prefooter__section {
  --tw-gradient-stops: var(
    --tw-gradient-via-stops,
    var(--tw-gradient-position),
    var(--tw-gradient-from) var(--tw-gradient-from-position),
    var(--tw-gradient-to) var(--tw-gradient-to-position)
  );
  padding-block: calc(var(--spacing) * 24);
}
@media (width >= 64rem) {
  .prefooter__section {
    padding-block: calc(var(--spacing) * 40);
  }
}
.prefooter__inner {
  position: relative;
  z-index: 10;
  margin-inline: auto;
  max-width: var(--container-4xl);
  padding-inline: var(--space-6);
  text-align: center;
}
@media (width >= 64rem) {
  .prefooter__inner {
    padding-inline: calc(var(--spacing) * 8);
  }
}
.prefooter__heading {
  margin-bottom: calc(var(--spacing) * 6);
  font-family: var(--font-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-zinc-900);
}
@media (width >= 48rem) {
  .prefooter__heading {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
.prefooter__description {
  margin-inline: auto;
  margin-bottom: calc(var(--spacing) * 10);
  max-width: var(--container-2xl);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-zinc-600);
}
@media (width >= 48rem) {
  .prefooter__description {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.prefooter__actions {
  margin-bottom: calc(var(--spacing) * 8);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
}
@media (width >= 40rem) {
  .prefooter__actions {
    flex-direction: row;
  }
}
.prefooter__button {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-accent);
  background-color: var(--color-accent);
  padding-inline: calc(var(--spacing) * 10);
  padding-block: calc(var(--spacing) * 5);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  --tw-shadow:
    0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)),
    0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow:
    var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
    var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
@media (width >= 40rem) {
  .prefooter__button {
    width: auto;
  }
}
.prefooter__button-text {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: center;
}
.prefooter__arrow {
  position: relative;
  z-index: 10;
  margin-left: calc(var(--spacing) * 3);
  height: calc(var(--spacing) * 5);
  width: calc(var(--spacing) * 5);
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
@media (hover: hover) {
  .prefooter__arrow:is(:where(.hover-group):hover *) {
    --tw-translate-x: var(--spacing);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}
.prefooter__phone {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-zinc-300);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 8);
  padding-block: calc(var(--spacing) * 5);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-zinc-800);
  transition-property:
    color, background-color, border-color, outline-color, text-decoration-color,
    fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(
    --tw-ease,
    var(--default-transition-timing-function)
  );
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
@media (hover: hover) {
  .prefooter__phone:hover {
    background-color: var(--color-zinc-50);
  }
}
@media (width >= 40rem) {
  .prefooter__phone {
    width: auto;
  }
}
.prefooter__phone-icon {
  margin-right: calc(var(--spacing) * 2);
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  color: var(--color-accent);
}
.prefooter__glow {
  pointer-events: none;
  position: absolute;
  top: calc(1 / 2 * 100%);
  left: calc(1 / 2 * 100%);
  z-index: calc(0 * -1);
  height: 800px;
  width: 800px;
  --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
  --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  border-radius: calc(infinity * 1px);
  --tw-gradient-position: to top right in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: color-mix(in srgb, #0b1644 10%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .prefooter__glow {
    --tw-gradient-from: color-mix(
      in oklab,
      var(--color-accent) 10%,
      transparent
    );
  }
}
.prefooter__glow {
  --tw-gradient-to: color-mix(
    in srgb,
    oklch(88.2% 0.059 254.128) 20%,
    transparent
  );
}
@supports (color: color-mix(in lab, red, red)) {
  .prefooter__glow {
    --tw-gradient-to: color-mix(
      in oklab,
      var(--color-blue-200) 20%,
      transparent
    );
  }
}
.prefooter__glow {
  --tw-gradient-stops: var(
    --tw-gradient-via-stops,
    var(--tw-gradient-position),
    var(--tw-gradient-from) var(--tw-gradient-from-position),
    var(--tw-gradient-to) var(--tw-gradient-to-position)
  );
  --tw-blur: blur(120px);
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
    var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
    var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.coverage__section {
  background-color: var(--color-accent);
  padding-block: calc(var(--spacing) * 24);
  color: var(--color-white);
}
@media (width >= 64rem) {
  .coverage__section {
    padding-block: calc(var(--spacing) * 32);
  }
}
.coverage__inner {
  margin-inline: auto;
  max-width: var(--container-7xl);
  padding-inline: calc(var(--spacing) * 6);
}
@media (width >= 64rem) {
  .coverage__inner {
    padding-inline: calc(var(--spacing) * 8);
  }
}
.coverage__columns {
  display: grid;
  align-items: center;
  gap: calc(var(--spacing) * 12);
}
@media (width >= 64rem) {
  .coverage__columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width >= 64rem) {
  .coverage__columns {
    gap: calc(var(--spacing) * 24);
  }
}
.coverage__heading {
  margin-bottom: calc(var(--spacing) * 6);
  font-family: var(--font-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
}
@media (width >= 48rem) {
  .coverage__heading {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
}
.coverage__eyebrow {
  margin-top: calc(var(--spacing) * 2);
  display: block;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  --tw-tracking: var(--tracking-widest);
  letter-spacing: var(--tracking-widest);
  color: var(--color-zinc-400);
  text-transform: uppercase;
}
@media (width >= 48rem) {
  .coverage__eyebrow {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.coverage__lead {
  margin-bottom: calc(var(--spacing) * 10);
  max-width: var(--container-lg);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-zinc-300);
}
@media (width >= 48rem) {
  .coverage__lead {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.coverage__region-list-wrap {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, oklch(37% 0.013 285.805) 50%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .coverage__region-list-wrap {
    border-color: color-mix(in oklab, var(--color-zinc-700) 50%, transparent);
  }
}
.coverage__region-list-wrap {
  padding-top: calc(var(--spacing) * 8);
}
:where(.coverage__region-list > :not(:last-child)) {
  --tw-space-y-reverse: 0;
  margin-block-start: calc(
    calc(var(--spacing) * 5) * var(--tw-space-y-reverse)
  );
  margin-block-end: calc(
    calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse))
  );
}
.coverage__region {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, oklch(27.4% 0.006 286.033) 80%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .coverage__region {
    border-color: color-mix(in oklab, var(--color-zinc-800) 80%, transparent);
  }
}
.coverage__region {
  background-color: color-mix(
    in srgb,
    oklch(21% 0.006 285.885) 60%,
    transparent
  );
}
@supports (color: color-mix(in lab, red, red)) {
  .coverage__region {
    background-color: color-mix(
      in oklab,
      var(--color-zinc-900) 60%,
      transparent
    );
  }
}
.coverage__region {
  padding: calc(var(--spacing) * 4);
}
.coverage__region-heading {
  margin-bottom: calc(var(--spacing) * 2.5);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 3);
}
.coverage__region-name {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}
.coverage__marker {
  height: calc(var(--spacing) * 1.5);
  width: calc(var(--spacing) * 1.5);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-white);
}
.coverage__region-title {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-wide);
  letter-spacing: var(--tracking-wide);
  color: var(--color-white);
}
.coverage__status {
  background-color: color-mix(in srgb, #fff 10%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .coverage__status {
    background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
  }
}
.coverage__status {
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 0.5);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-zinc-300);
}
.coverage__region-label {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-zinc-400);
}
.coverage__cities {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 1.5);
}
.coverage__city {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, oklch(37% 0.013 285.805) 50%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .coverage__city {
    border-color: color-mix(in oklab, var(--color-zinc-700) 50%, transparent);
  }
}
.coverage__city {
  background-color: var(--color-zinc-800);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: var(--spacing);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-zinc-200);
}
.coverage__city-note {
  align-self: center;
  padding-inline: var(--spacing);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-zinc-400);
}
.coverage__note {
  margin-top: calc(var(--spacing) * 5);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, oklch(37% 0.013 285.805) 40%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .coverage__note {
    border-color: color-mix(in oklab, var(--color-zinc-700) 40%, transparent);
  }
}
.coverage__note {
  padding-top: calc(var(--spacing) * 4);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-zinc-400);
}
@media (width >= 48rem) {
  .coverage__note {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.coverage__note-mark {
  font-family: var(--font-sans);
  color: var(--color-zinc-500);
}
.coverage__map {
  position: relative;
  display: flex;
  aspect-ratio: 1 / 1;
  min-height: 300px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-zinc-800);
  background-color: var(--color-accent-hover);
}
@media (width >= 64rem) {
  .coverage__map {
    aspect-ratio: auto;
  }
}
@media (width >= 64rem) {
  .coverage__map {
    height: 100%;
  }
}
.coverage__map-background {
  position: absolute;
  inset: 0px;
  background-size: cover;
  background-position: center;
  opacity: 40%;
  mix-blend-mode: screen;
}
.coverage__coordinates {
  position: absolute;
  right: calc(var(--spacing) * 6);
  bottom: calc(var(--spacing) * 6);
  z-index: 10;
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: var(--color-zinc-400);
}
.page-hero__section {
  width: 100%;
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: color-mix(in srgb, #0b1644 20%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .page-hero__section {
    border-color: color-mix(in oklab, var(--color-accent) 20%, transparent);
  }
}
.page-hero__section {
  background-color: var(--color-accent);
  padding-top: calc(var(--spacing) * 36);
  padding-bottom: calc(var(--spacing) * 20);
  color: var(--color-white);
}
@media (width >= 48rem) {
  .page-hero__section {
    padding-top: calc(var(--spacing) * 48);
  }
}
@media (width >= 48rem) {
  .page-hero__section {
    padding-bottom: calc(var(--spacing) * 28);
  }
}
@media (width >= 64rem) {
  .page-hero__section {
    padding-top: calc(var(--spacing) * 52);
  }
}
@media (width >= 64rem) {
  .page-hero__section {
    padding-bottom: calc(var(--spacing) * 32);
  }
}
.page-hero__inner {
  margin-inline: auto;
  max-width: var(--container-7xl);
  padding-inline: calc(var(--spacing) * 6);
}
@media (width >= 64rem) {
  .page-hero__inner {
    padding-inline: calc(var(--spacing) * 8);
  }
}
.page-hero__row {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
}
@media (width >= 48rem) {
  .page-hero__row {
    flex-direction: row;
  }
}
@media (width >= 48rem) {
  .page-hero__row {
    align-items: center;
  }
}
@media (width >= 48rem) {
  .page-hero__row {
    justify-content: space-between;
  }
}
.page-hero__eyebrow {
  margin-bottom: calc(var(--spacing) * 2);
  display: block;
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-widest);
  letter-spacing: var(--tracking-widest);
  color: color-mix(in srgb, #fff 70%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .page-hero__eyebrow {
    color: color-mix(in oklab, var(--color-white) 70%, transparent);
  }
}
.page-hero__eyebrow {
  text-transform: uppercase;
}
@media (width >= 48rem) {
  .page-hero__eyebrow {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.page-hero__title {
  font-family: var(--font-heading);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-white);
}
@media (width >= 40rem) {
  .page-hero__title {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
}
@media (width >= 48rem) {
  .page-hero__title {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
}
.page-hero__description {
  max-width: var(--container-xl);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: color-mix(in srgb, #fff 80%, transparent);
}
@supports (color: color-mix(in lab, red, red)) {
  .page-hero__description {
    color: color-mix(in oklab, var(--color-white) 80%, transparent);
  }
}
@media (width >= 48rem) {
  .page-hero__description {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
@media (width >= 64rem) {
  .page-hero__description {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or
    ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *,
    ::before,
    ::after,
    ::backdrop {
      --tw-duration: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-border-style: solid;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-leading: initial;
      --tw-space-y-reverse: 0;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-divide-y-reverse: 0;
    }
  }
}

/* Shared interaction and WordPress integration. */
body {
  font-family: var(--font-sans);
  color: var(--color-zinc-900);
  background: #fff;
  -webkit-font-smoothing: antialiased;
}
::selection {
  background: var(--color-accent);
  color: #fff;
}
:focus-visible {
  outline: 2px solid #5579d9;
  outline-offset: 4px;
}
.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  transform: translateY(-200%);
  z-index: 100001;
  padding: 12px 20px;
  background: #fff;
  color: #0b1644;
  border: 2px solid currentColor;
}
.skip-link:focus {
  transform: none;
}
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  padding-block: 20px;
  transition:
    background-color 0.3s,
    padding 0.3s,
    box-shadow 0.3s;
}
.site-header--solid {
  background: rgb(255 255 255 / 0.95);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--color-zinc-200);
  box-shadow: 0 1px 3px #00000010;
  padding-block: 12px;
}
.site-header__nav-link {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-zinc-600);
  transition: color 0.2s;
}
.site-header__nav-link:hover {
  color: var(--color-zinc-900);
}
.site-header__nav-link[aria-current],
.mobile-navigation__link[aria-current] {
  color: var(--color-accent);
  font-weight: 700;
}
.site-header__arrow {
  position: relative;
  z-index: 1;
  transition: transform 0.2s;
}
.site-header__button:hover .site-header__arrow {
  transform: translateX(4px);
}
.mobile-navigation {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: #fff;
  padding: 110px 24px 32px;
  overflow-y: auto;
}
.mobile-navigation__inner {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.mobile-navigation__link {
  font-size: 1.125rem;
  font-weight: 500;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--color-zinc-100);
}
.mobile-navigation__button {
  margin-top: 16px;
  padding: 16px 24px;
  text-align: center;
  color: #fff;
  background: var(--color-accent);
  border: 2px solid var(--color-accent);
}
.mobile-navigation__button span {
  position: relative;
  z-index: 1;
}
.menu-open {
  overflow: hidden;
}
.button-diagonal {
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition:
    color 0.3s,
    border-color 0.3s;
}
.button-diagonal::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 -20%;
  width: 140%;
  background: #fff;
  transform: translateX(-120%) skewX(-20deg);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0;
}
.button-diagonal:hover {
  color: var(--color-accent);
}
.button-diagonal:hover::after {
  transform: translateX(0) skewX(-20deg);
}
.admin-bar .site-header {
  top: 32px;
}
.admin-bar .mobile-navigation {
  top: 32px;
}
.standard-page {
  padding: 160px 24px 80px;
  min-height: 70vh;
}
.standard-page__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.standard-page__title {
  font-size: clamp(1.5rem, 4vw, 3rem);
  font-weight: 700;
  margin-bottom: 32px;
}
.standard-page__article + .standard-page__article {
  margin-top: 48px;
}
.standard-page__body p {
  margin-bottom: 1em;
}
.standard-page__body a {
  text-decoration: underline;
}
.standard-page__body ul {
  list-style: disc;
  padding-left: 1.5em;
}
.standard-page__body ol {
  list-style: decimal;
  padding-left: 1.5em;
}
@media (min-width: 768px) {
  .mobile-navigation {
    display: none;
  }
}
@media (max-width: 782px) {
  .admin-bar .site-header,
  .admin-bar .mobile-navigation {
    top: 46px;
  }
}
@media (max-width: 600px) {
  body.admin-bar #wpadminbar {
    position: fixed;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/* The square map's minimum height must not widen narrow grid columns. */
.coverage__columns > * { min-width: 0; }
.coverage__map { width: 100%; min-width: 0; max-width: 100%; }

:root,
:host {
  --space-6: 1.5rem; /* 24px */
}

@media (max-width: 47.999rem) {
	:root,
	:host {
		--space-6: 1.25rem;
		--text-base: 0.9375rem;
		--text-sm: 0.8125rem;
		--text-3xl: 1.5rem;
  }
}
