/*
 * Behoss Monochrome Technical Editorial system
 * -------------------------
 * The canonical visual language for Behoss. Product structure and content stay
 * authoritative; this layer owns the shared color, type, spacing and surface
 * rules used across the platform.
 */

html[data-site-visual-theme="astro"] {
  /* Canonical Behoss roles. Keep page-specific values mapped to these roles. */
  --behoss-canvas: #f7f7f3;
  --behoss-surface: #ffffff;
  --behoss-ink: #15171a;
  --behoss-muted: #62666d;
  --behoss-line: #d9dbd6;
  --behoss-soft: #ecece7;
  --behoss-accent: #075fd8;
  --behoss-accent-strong: #054ba9;
  --behoss-action-accent: #356fae;
  --behoss-brand-navy: #061a3f;
  --behoss-brand-blue: #0753d8;
  --behoss-brand-cyan: #1598f5;
  --behoss-brand-white: #edf4ff;
  --behoss-font-sans:
    system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "SF Pro Text",
    "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei",
    sans-serif;
  --behoss-font-ui-cjk:
    "Hiragino Sans GB", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei",
    system-ui, sans-serif;
  --behoss-radius-surface: 0px;
  --behoss-radius-control: 0px;
  --behoss-radius-content: 14px;
  --behoss-radius-media: 16px;
  --behoss-radius-modal: 18px;
  --behoss-radius-compact: 4px;
  --behoss-radius-pill: 999px;
  --behoss-close-size: 40px;
  --behoss-close-icon-size: 20px;
  --behoss-dialog-width-compact: 30rem;
  --behoss-dialog-width-standard: 34rem;
  --behoss-dialog-width-wide: 36.25rem;
  --behoss-dialog-viewport-inset: 48px;
  --behoss-dialog-padding: 32px;
  --behoss-dialog-header-gap: 24px;
  --behoss-dialog-border: 1px solid var(--behoss-line);
  --behoss-dialog-shadow: 0 30px 100px rgba(21, 23, 26, 0.22);
  --behoss-dialog-backdrop: rgba(5, 8, 11, 0.48);
  --behoss-space-1: 4px;
  --behoss-space-2: 8px;
  --behoss-space-3: 12px;
  --behoss-space-4: 16px;
  --behoss-space-5: 24px;
  --behoss-space-6: 32px;
  --behoss-space-7: 48px;
  --behoss-footer-height: 77px;
  /* Semantic motion roles used by the P1-P4 interaction layer. */
  --behoss-motion-feedback: 140ms;
  --behoss-motion-state: 180ms;
  --behoss-motion-visibility: 200ms;
  --behoss-motion-layout: 240ms;
  --behoss-motion-carousel: 420ms;
  --behoss-motion-dialog-exit: 160ms;
  --behoss-motion-price-reveal: 260ms;
  --behoss-motion-price-dissolve: 300ms;
  --behoss-motion-price-particle: 340ms;
  --behoss-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --behoss-ease-exit: cubic-bezier(0.4, 0, 1, 1);
  /* Compatibility aliases for mature components outside the P1-P4 scope. */
  --behoss-motion-fast: var(--behoss-motion-feedback);
  --behoss-motion-standard: var(--behoss-motion-state);
  --behoss-interaction-hover-surface: rgba(255, 255, 255, 0.96);
  --behoss-interaction-hover-shadow:
    0 8px 20px rgba(21, 23, 26, 0.12), 0 2px 5px rgba(21, 23, 26, 0.08);
  --behoss-interaction-active-shadow: 0 2px 7px rgba(21, 23, 26, 0.12);
  --behoss-interaction-lift: -1px;
  --behoss-interaction-icon-shift: 2px;
  --behoss-interaction-icon-tilt: -6deg;
  --behoss-focus-ring: color-mix(in srgb, var(--behoss-ink) 46%, transparent);
  --behoss-content-lift-shadow:
    0 22px 44px rgba(21, 23, 26, 0.15), 0 8px 18px rgba(21, 23, 26, 0.11),
    0 2px 6px rgba(21, 23, 26, 0.08);
  --behoss-content-active-shadow:
    0 8px 20px rgba(21, 23, 26, 0.14), 0 3px 8px rgba(21, 23, 26, 0.09);
  --behoss-motion-content: 260ms;

  /* Stable compatibility aliases for the existing Astro-theme layer. */
  --astro-canvas: var(--behoss-canvas);
  --astro-surface: var(--behoss-surface);
  --astro-ink: var(--behoss-ink);
  --astro-muted: var(--behoss-muted);
  --astro-line: var(--behoss-line);
  --astro-soft: var(--behoss-soft);
  --astro-accent: var(--behoss-accent);
  --astro-accent-strong: var(--behoss-accent-strong);
  --astro-dark: #15171a;
  --astro-dark-muted: #a8acb2;
  --astro-tool-hover-bg: var(--behoss-interaction-hover-surface);
  --astro-tool-hover-shadow: var(--behoss-interaction-hover-shadow);
  --astro-tool-active-shadow: var(--behoss-interaction-active-shadow);
  --background: var(--astro-canvas);
  --foreground: var(--astro-ink);
  --accent: var(--astro-accent);
  --accent-foreground: #ffffff;
  --muted: var(--astro-soft);
  --muted-foreground: var(--astro-muted);
  --border: var(--astro-line);
  --astro-header-height: 81px;
  --astro-header-height-condensed: 64px;
  --astro-control-height: 32px;
  --astro-frame-max: 1400px;
  --astro-content-max: 1180px;
  --astro-frame-inset: 48px;
  --astro-shell-max: var(--astro-content-max);
  --astro-shell-inset: 48px;
  --astro-reading-shell-max: 896px;
  --astro-reading-measure-max: 736px;
  color-scheme: light;
  background: var(--astro-canvas);
  font-family: var(--behoss-font-sans);
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"] {
  --behoss-canvas: #111315;
  --behoss-surface: #181b1e;
  --behoss-ink: #f0f1ed;
  --behoss-muted: #9ca3aa;
  --behoss-line: #30353a;
  --behoss-soft: #24282c;
  --behoss-accent: #69a6ff;
  --behoss-accent-strong: #8bb9ff;
  --behoss-action-accent: #356fae;
  --behoss-brand-navy: #061a3f;
  --behoss-brand-blue: #0753d8;
  --behoss-brand-cyan: #1598f5;
  --behoss-brand-white: #edf4ff;
  --astro-dark: #090b0d;
  --astro-dark-muted: #9ca3aa;
  --behoss-interaction-hover-surface: #202428;
  --behoss-interaction-hover-shadow:
    0 10px 24px rgba(0, 0, 0, 0.38), 0 2px 6px rgba(0, 0, 0, 0.28);
  --behoss-interaction-active-shadow: 0 2px 8px rgba(0, 0, 0, 0.34);
  --behoss-content-lift-shadow:
    0 24px 52px rgba(0, 0, 0, 0.5), 0 9px 22px rgba(0, 0, 0, 0.36),
    0 2px 7px rgba(0, 0, 0, 0.3);
  --behoss-content-active-shadow:
    0 10px 24px rgba(0, 0, 0, 0.42), 0 3px 10px rgba(0, 0, 0, 0.28);
  --behoss-dialog-shadow: 0 30px 100px rgba(0, 0, 0, 0.58);
  --behoss-dialog-backdrop: rgba(0, 0, 0, 0.58);
  color-scheme: dark;
}

html[data-site-visual-theme="astro"],
html[data-site-visual-theme="astro"] body {
  min-height: 100%;
  background: var(--astro-canvas) !important;
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"] body.home-landing-page,
html[data-site-visual-theme="astro"] body.apple-preview-page {
  padding-top: var(--astro-header-height);
}

html[data-site-visual-theme="astro"] body,
html[data-site-visual-theme="astro"] button,
html[data-site-visual-theme="astro"] input,
html[data-site-visual-theme="astro"] select,
html[data-site-visual-theme="astro"] textarea {
  font-family: inherit !important;
}

html[data-site-visual-theme="astro"] *,
html[data-site-visual-theme="astro"] *::before,
html[data-site-visual-theme="astro"] *::after {
  box-sizing: border-box;
}

html[data-site-visual-theme="astro"] a {
  color: inherit;
  text-underline-offset: 0.18em;
}

html[data-site-visual-theme="astro"] a,
html[data-site-visual-theme="astro"] button,
html[data-site-visual-theme="astro"] select {
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(7, 95, 216, 0.12);
}

html[data-site-visual-theme="astro"] [id] {
  scroll-margin-top: 88px;
}

html[data-site-visual-theme="astro"] :focus-visible {
  outline: 2px solid var(--behoss-focus-ring) !important;
  outline-offset: 4px !important;
}

/* Canonical dismiss control: shared by dialogs, media previews and lightboxes. */
html[data-site-visual-theme="astro"] .behoss-close-control {
  display: inline-grid !important;
  width: var(--behoss-close-size) !important;
  min-width: var(--behoss-close-size) !important;
  height: var(--behoss-close-size) !important;
  min-height: var(--behoss-close-size) !important;
  flex: 0 0 var(--behoss-close-size) !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid var(--astro-line) !important;
  border-radius: 50% !important;
  outline: none !important;
  color: var(--astro-ink) !important;
  background: color-mix(
    in srgb,
    var(--astro-surface) 92%,
    transparent
  ) !important;
  box-shadow: 0 8px 24px color-mix(in srgb, #000000 12%, transparent) !important;
  cursor: pointer;
  text-decoration: none;
  touch-action: manipulation;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  transition:
    border-color var(--behoss-motion-fast) var(--behoss-ease),
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease),
    transform var(--behoss-motion-fast) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"] .behoss-close-control svg {
  width: var(--behoss-close-icon-size) !important;
  height: var(--behoss-close-icon-size) !important;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}

html[data-site-visual-theme="astro"] .behoss-close-control::before,
html[data-site-visual-theme="astro"] .behoss-close-control::after {
  content: none !important;
}

html[data-site-visual-theme="astro"]
  :is(.menu-button, .ap-menu-button).behoss-close-control {
  position: relative;
  width: var(--behoss-close-size) !important;
  height: var(--behoss-close-size) !important;
  border: 1px solid var(--astro-line) !important;
  border-radius: 50% !important;
  background: color-mix(
    in srgb,
    var(--astro-surface) 92%,
    transparent
  ) !important;
  box-shadow: 0 8px 24px color-mix(in srgb, #000000 12%, transparent) !important;
}

html[data-site-visual-theme="astro"]
  :is(.menu-button, .ap-menu-button).behoss-close-control
  span {
  position: absolute !important;
  width: 17px !important;
  height: 1px !important;
  margin: 0 !important;
}

html[data-site-visual-theme="astro"]
  :is(
    .site-header.menu-open .menu-button,
    .ap-header.is-open .ap-menu-button
  ).behoss-close-control
  span:first-child {
  transform: rotate(45deg) !important;
}

html[data-site-visual-theme="astro"]
  :is(
    .site-header.menu-open .menu-button,
    .ap-header.is-open .ap-menu-button
  ).behoss-close-control
  span:last-child {
  transform: rotate(-45deg) !important;
}

html[data-site-visual-theme="astro"]
  :is(.menu-button, .ap-menu-button).behoss-close-control:hover {
  background: var(--astro-surface) !important;
}

html[data-site-visual-theme="astro"] .behoss-dialog-focus-root:focus {
  outline: none !important;
}

/*
 * Canonical non-note dialog card.
 * Operational layers stay square; content-viewing layers opt into the shared
 * viewing radius. Page styles own only their internal content composition.
 */
html[data-site-visual-theme="astro"] .behoss-dialog-card {
  max-width: none;
  max-height: calc(100dvh - var(--behoss-dialog-viewport-inset));
  margin: auto;
  padding: 0;
  overflow: hidden;
  border: var(--behoss-dialog-border);
  border-radius: 0;
  color: var(--astro-ink);
  background: var(--astro-surface);
  box-shadow: var(--behoss-dialog-shadow);
}

html[data-site-visual-theme="astro"]
  .behoss-dialog-card.behoss-dialog-card-compact {
  width: min(
    var(--behoss-dialog-width-compact),
    calc(100vw - var(--behoss-dialog-viewport-inset))
  );
}

html[data-site-visual-theme="astro"]
  .behoss-dialog-card.behoss-dialog-card-standard {
  width: min(
    var(--behoss-dialog-width-standard),
    calc(100vw - var(--behoss-dialog-viewport-inset))
  );
}

html[data-site-visual-theme="astro"]
  .behoss-dialog-card.behoss-dialog-card-standard.is-payment-mode {
  width: min(
    var(--behoss-dialog-width-compact),
    calc(100vw - var(--behoss-dialog-viewport-inset))
  );
}

html[data-site-visual-theme="astro"]
  .behoss-dialog-card.behoss-dialog-card-wide {
  width: min(
    var(--behoss-dialog-width-wide),
    calc(100vw - var(--behoss-dialog-viewport-inset))
  );
}

html[data-site-visual-theme="astro"] .behoss-dialog-card.behoss-dialog-viewing {
  border-radius: var(--behoss-radius-modal);
}

html[data-site-visual-theme="astro"] .behoss-dialog-card::backdrop {
  background: var(--behoss-dialog-backdrop);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

html[data-site-visual-theme="astro"] .behoss-dialog-card[open] {
  animation: behoss-dialog-card-enter var(--behoss-motion-state)
    var(--behoss-ease);
}

html[data-site-visual-theme="astro"] .behoss-dialog-card.is-closing[open] {
  pointer-events: none;
  animation: behoss-dialog-card-exit var(--behoss-motion-dialog-exit)
    var(--behoss-ease-exit) forwards !important;
}

html[data-site-visual-theme="astro"] .behoss-dialog-card.is-closing::backdrop {
  animation: behoss-dialog-backdrop-exit var(--behoss-motion-dialog-exit)
    var(--behoss-ease-exit) forwards !important;
}

html[data-site-visual-theme="astro"] .behoss-dialog-surface {
  min-width: 0;
  max-height: calc(100dvh - var(--behoss-dialog-viewport-inset) - 2px);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}

@keyframes behoss-dialog-card-enter {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.985);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes behoss-dialog-card-exit {
  to {
    opacity: 0;
    transform: translateY(6px) scale(0.99);
  }
}

@keyframes behoss-dialog-backdrop-exit {
  to {
    opacity: 0;
  }
}

html[data-site-visual-theme="astro"] .behoss-close-control:hover {
  border-color: color-mix(
    in srgb,
    var(--astro-ink) 36%,
    var(--astro-line)
  ) !important;
  background: var(--astro-surface) !important;
  box-shadow: 0 10px 26px color-mix(in srgb, #000000 16%, transparent) !important;
  transform: translateY(-1px) !important;
}

html[data-site-visual-theme="astro"] .behoss-close-control:focus-visible {
  border-color: color-mix(
    in srgb,
    var(--astro-ink) 52%,
    var(--astro-line)
  ) !important;
  outline: none !important;
  box-shadow:
    0 0 0 3px var(--astro-surface),
    0 0 0 5px color-mix(in srgb, var(--astro-ink) 52%, transparent),
    0 8px 24px color-mix(in srgb, #000000 12%, transparent) !important;
}

html[data-site-visual-theme="astro"] .behoss-close-control:active {
  transform: scale(0.96) !important;
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] .behoss-dialog-card[open],
  html[data-site-visual-theme="astro"] .behoss-dialog-card.is-closing,
  html[data-site-visual-theme="astro"] .behoss-dialog-card.is-closing::backdrop,
  html[data-site-visual-theme="astro"] .behoss-close-control {
    animation: none !important;
    transition: none !important;
  }
}

html[data-site-visual-theme="astro"]
  :where(
    input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),
    textarea
  ):focus-visible {
  outline: none !important;
  border-color: color-mix(
    in srgb,
    var(--astro-ink) 58%,
    var(--astro-line)
  ) !important;
  box-shadow: none !important;
}

/* Header and controls */
html[data-site-visual-theme="astro"] .site-header,
html[data-site-visual-theme="astro"] .ap-header {
  position: fixed !important;
  top: 0;
  right: 0;
  left: 0;
  z-index: 60;
  width: 100% !important;
  height: var(--astro-header-height) !important;
  min-height: var(--astro-header-height);
  margin-inline: auto !important;
  border: 0 !important;
  background: var(--astro-canvas) !important;
  box-shadow: none !important;
  color: var(--astro-ink) !important;
  font-family:
    "SF Pro Text", "SF Pro Display", "PingFang SC", "Noto Sans CJK SC",
    system-ui, sans-serif !important;
  isolation: isolate;
  transition:
    height 360ms cubic-bezier(0.22, 1, 0.36, 1),
    min-height 360ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 260ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 260ms cubic-bezier(0.22, 1, 0.36, 1);
  -webkit-backdrop-filter: saturate(140%) blur(0);
  backdrop-filter: saturate(140%) blur(0);
}

html[data-site-visual-theme="astro"] .site-header::before,
html[data-site-visual-theme="astro"] .site-header::after,
html[data-site-visual-theme="astro"] .ap-header::before,
html[data-site-visual-theme="astro"] .ap-header::after {
  display: none !important;
}

html[data-site-visual-theme="astro"] .nav-shell,
html[data-site-visual-theme="astro"] .ap-nav {
  width: min(
    calc(100% - var(--astro-shell-inset)),
    var(--astro-content-max)
  ) !important;
  max-width: none !important;
  height: var(--astro-header-height) !important;
  min-height: var(--astro-header-height) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--astro-line) !important;
  transition:
    height 360ms cubic-bezier(0.22, 1, 0.36, 1),
    min-height 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

html[data-site-visual-theme="astro"] .site-header.is-scrolled,
html[data-site-visual-theme="astro"] .ap-header.is-scrolled {
  height: var(--astro-header-height-condensed) !important;
  min-height: var(--astro-header-height-condensed) !important;
  background: color-mix(
    in srgb,
    var(--astro-canvas) 88%,
    transparent
  ) !important;
  box-shadow: 0 10px 30px color-mix(in srgb, var(--astro-ink) 7%, transparent) !important;
  -webkit-backdrop-filter: saturate(155%) blur(18px);
  backdrop-filter: saturate(155%) blur(18px);
}

html[data-site-visual-theme="astro"] .site-header.is-scrolled::after,
html[data-site-visual-theme="astro"] .ap-header.is-scrolled::after {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  display: block !important;
  height: 22px;
  background: linear-gradient(
    to bottom,
    color-mix(in srgb, var(--astro-canvas) 72%, transparent),
    transparent
  );
  content: "";
  pointer-events: none;
}

html[data-site-visual-theme="astro"] .site-header.is-scrolled .nav-shell,
html[data-site-visual-theme="astro"] .ap-header.is-scrolled .ap-nav {
  height: var(--astro-header-height-condensed) !important;
  min-height: var(--astro-header-height-condensed) !important;
}

html[data-site-visual-theme="astro"] .brand,
html[data-site-visual-theme="astro"] .ap-brand {
  gap: 9px;
  color: var(--astro-ink) !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
}

html[data-site-visual-theme="astro"] .site-header .brand {
  min-height: 44px;
  margin-left: -10px;
  padding: 7px 10px;
  border-radius: var(--behoss-radius-compact);
  background-color: transparent;
  box-shadow: none;
  transform: translateY(0);
  transition:
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease),
    transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"] .site-header .brand > span {
  display: inline-block;
  transform: translateY(0);
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  .site-header
  .brand:is(:hover, :focus-visible) {
  background-color: var(--behoss-interaction-hover-surface);
  box-shadow: var(--behoss-interaction-hover-shadow);
  color: var(--astro-accent) !important;
  transform: translateY(var(--behoss-interaction-lift));
}

html[data-site-visual-theme="astro"]
  .site-header
  .brand:is(:hover, :focus-visible)
  .brand-logo {
  transform: rotate(-6deg) scale(1.04);
}

html[data-site-visual-theme="astro"]
  .site-header
  .brand:is(:hover, :focus-visible)
  > span {
  transform: translateY(-1px);
}

html[data-site-visual-theme="astro"] .site-header .brand:active {
  box-shadow: var(--behoss-interaction-active-shadow);
  transform: translateY(0);
}

html[data-site-visual-theme="astro"]
  .site-header
  .brand:active
  :is(.brand-logo, span) {
  transform: none;
}

html[data-site-visual-theme="astro"] .brand::before,
html[data-site-visual-theme="astro"] .ap-brand::before {
  display: none !important;
  content: none !important;
}

html[data-site-visual-theme="astro"] .brand-logo,
html[data-site-visual-theme="astro"] .ap-brand .brand-logo {
  display: block !important;
  flex: 0 0 30px;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.28),
    0 0 18px rgba(36, 107, 255, 0.22) !important;
  transition:
    width 360ms cubic-bezier(0.22, 1, 0.36, 1),
    height 360ms cubic-bezier(0.22, 1, 0.36, 1),
    flex-basis 360ms cubic-bezier(0.22, 1, 0.36, 1),
    transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"] .site-header.is-scrolled .brand-logo,
html[data-site-visual-theme="astro"]
  .ap-header.is-scrolled
  .ap-brand
  .brand-logo {
  flex-basis: 27px;
  width: 27px !important;
  height: 27px !important;
}

html[data-site-visual-theme="astro"] .nav-links,
html[data-site-visual-theme="astro"] .ap-links {
  gap: 4px !important;
}

html[data-site-visual-theme="astro"] .nav-links > a,
html[data-site-visual-theme="astro"] .ap-links > a {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  padding: 4px 10px !important;
  border: 0 !important;
  color: var(--astro-ink) !important;
  font-family: var(--behoss-font-ui-cjk) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 24px !important;
  letter-spacing: 0.02em !important;
  opacity: 1 !important;
  transition: color 140ms ease !important;
}

html[data-site-visual-theme="astro"] .nav-item-beta {
  color: var(--astro-muted);
  font-size: 0.62rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .nav-links > a::after,
html[data-site-visual-theme="astro"] .ap-links > a::after {
  position: absolute;
  right: 7px;
  bottom: -4px;
  left: 7px;
  height: 7px;
  /* The Spark underline is the active-page marker; keep its brand gradient stable. */
  background: linear-gradient(
    90deg,
    var(--behoss-pink),
    var(--apple-blue),
    var(--apple-link)
  );
  -webkit-mask: url("/behoss/assets/spark-underline.svg") center / 100% 100%
    no-repeat;
  mask: url("/behoss/assets/spark-underline.svg") center / 100% 100% no-repeat;
  content: "";
  opacity: 0;
  transform: translateY(2px) scaleX(0.88);
  transform-origin: center;
  transition:
    opacity 140ms ease,
    transform 180ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

html[data-site-visual-theme="astro"] .nav-links > a:hover,
html[data-site-visual-theme="astro"] .ap-links > a:hover,
html[data-site-visual-theme="astro"] .nav-links > a:focus-visible,
html[data-site-visual-theme="astro"] .ap-links > a:focus-visible {
  color: var(--astro-accent) !important;
}

@media (hover: hover) and (min-width: 901px) {
  html[data-site-visual-theme="astro"] :is(.nav-links, .ap-links) > a {
    border-radius: var(--behoss-radius-compact) !important;
    background-color: transparent !important;
    box-shadow: none !important;
    transform: translateY(0);
    transition:
      background-color var(--behoss-motion-fast) ease,
      box-shadow var(--behoss-motion-fast) ease,
      color var(--behoss-motion-fast) ease,
      transform var(--behoss-motion-standard) var(--behoss-ease) !important;
  }

  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a
    > span:first-child {
    display: inline-block;
    transform: translateY(0) rotate(0deg);
    transform-origin: center;
    transition: transform var(--behoss-motion-standard) var(--behoss-ease);
  }

  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a:is(:hover, :focus-visible) {
    background-color: var(--behoss-interaction-hover-surface) !important;
    box-shadow: var(--behoss-interaction-hover-shadow) !important;
    color: var(--astro-accent) !important;
    transform: translateY(var(--behoss-interaction-lift));
  }

  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a:is(:hover, :focus-visible)
    > span:first-child {
    transform: translateY(-1px) rotate(-1.5deg);
  }

  html[data-site-visual-theme="astro"] :is(.nav-links, .ap-links) > a:active {
    box-shadow: var(--behoss-interaction-active-shadow) !important;
    transform: translateY(0);
  }

  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a:active
    > span:first-child {
    transform: translateY(0) rotate(0deg);
  }
}

html[data-site-visual-theme="astro"] .nav-links > a.is-current::after,
html[data-site-visual-theme="astro"] .ap-links > a.is-current::after {
  opacity: 1;
  transform: translateY(0) scaleX(1);
}

html[data-site-visual-theme="astro"] .site-tools {
  display: grid !important;
  grid-template-columns: repeat(2, 44px) auto;
  align-items: center !important;
  justify-items: center;
  gap: 0 !important;
  margin-left: 0 !important;
}

html[data-site-visual-theme="astro"] .site-account-control {
  position: relative;
  min-width: 44px;
  justify-self: end;
}

/* Reserve the account slot while its verified identity is being restored. */
@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] .site-tools {
    grid-template-columns: repeat(2, 44px) 144px;
  }

  html[data-site-visual-theme="astro"] .site-account-control,
  html[data-site-visual-theme="astro"]
    .site-account-control
    .site-account-link:not(.is-signed-out) {
    max-width: 136px;
  }
}

/* Center compact navigation in the space between the brand and utilities. */
@media (min-width: 901px) and (max-width: 1180px) {
  html[data-site-visual-theme="astro"] :is(.nav-shell, .ap-nav) {
    gap: 8px;
  }

  html[data-site-visual-theme="astro"]
    :is(.site-header, .ap-header)
    :is(.nav-links, .ap-links) {
    position: static !important;
    transform: none !important;
    margin-inline: auto !important;
    gap: 4px !important;
  }

  html[data-site-visual-theme="astro"]
    :is(.site-header, .ap-header)
    :is(.nav-links, .ap-links)
    > a {
    padding-inline: 4px !important;
  }
}

@media (min-width: 901px) and (max-width: 1000px) {
  html[data-site-visual-theme="astro"] :is(.nav-shell, .ap-nav) {
    gap: 6px;
  }

  html[data-site-visual-theme="astro"] .site-tools {
    grid-template-columns: repeat(2, 44px) 124px;
  }

  html[data-site-visual-theme="astro"] .site-account-control,
  html[data-site-visual-theme="astro"]
    .site-account-control
    .site-account-link:not(.is-signed-out) {
    max-width: 116px;
  }

  html[data-site-visual-theme="astro"]
    :is(.site-header, .ap-header)
    :is(.nav-links, .ap-links) {
    gap: 2px !important;
  }

  html[data-site-visual-theme="astro"]
    :is(.site-header, .ap-header)
    :is(.nav-links, .ap-links)
    > a {
    padding-inline: 2px !important;
  }
}

html[data-site-visual-theme="astro"] .site-color-mode-toggle,
html[data-site-visual-theme="astro"] .site-language-control,
html[data-site-visual-theme="astro"] .site-language-select,
html[data-site-visual-theme="astro"] .site-account-link {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--astro-muted) !important;
  cursor: pointer;
  font: inherit;
  transition:
    background-color 140ms ease,
    box-shadow 160ms ease,
    color 140ms ease !important;
}

html[data-site-visual-theme="astro"] .site-account-link[hidden] {
  display: none !important;
}

html[data-site-visual-theme="astro"] .site-color-mode-toggle,
html[data-site-visual-theme="astro"] .site-language-control,
html[data-site-visual-theme="astro"] .site-account-link {
  position: relative;
  display: inline-grid;
  place-items: center;
  align-self: center;
  justify-self: center;
  flex: 0 0 44px;
}

html[data-site-visual-theme="astro"] .site-color-mode-toggle:hover,
html[data-site-visual-theme="astro"] .site-color-mode-toggle:focus-visible,
html[data-site-visual-theme="astro"] .site-language-control:hover,
html[data-site-visual-theme="astro"] .site-language-control:focus-within,
html[data-site-visual-theme="astro"] .site-account-link:hover,
html[data-site-visual-theme="astro"] .site-account-link:focus-visible {
  background-color: var(--astro-tool-hover-bg) !important;
  box-shadow: var(--astro-tool-hover-shadow) !important;
  color: var(--astro-accent) !important;
}

html[data-site-visual-theme="astro"] .site-color-mode-toggle:active,
html[data-site-visual-theme="astro"] .site-language-control:active,
html[data-site-visual-theme="astro"] .site-account-link:active {
  box-shadow: var(--astro-tool-active-shadow) !important;
}

html.account-navigation-pending {
  overflow: hidden;
}

html[data-site-visual-theme="astro"] .account-navigation-cover {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: color-mix(in srgb, var(--astro-canvas) 94%, transparent);
  backdrop-filter: blur(12px) saturate(72%);
  cursor: progress;
}

html[data-site-visual-theme="astro"] .site-color-mode-icon,
html[data-site-visual-theme="astro"] .site-language-icon {
  display: block;
  width: 24px;
  height: 24px;
  background: currentColor;
  transform-origin: center;
  transition: transform 180ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

html[data-site-visual-theme="astro"]
  .site-color-mode-toggle:hover
  .site-color-mode-icon,
html[data-site-visual-theme="astro"]
  .site-color-mode-toggle:focus-visible
  .site-color-mode-icon,
html[data-site-visual-theme="astro"]
  .site-language-control:hover
  .site-language-icon,
html[data-site-visual-theme="astro"]
  .site-language-control:focus-within
  .site-language-icon {
  transform: rotate(6deg);
}

html[data-site-visual-theme="astro"] .site-account-icon {
  display: block;
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

html[data-site-visual-theme="astro"] .site-account-login-label {
  display: none;
  line-height: 1;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .site-account-identity {
  display: none;
  min-width: 0;
  align-items: center;
  gap: 0.62rem;
}

html[data-site-visual-theme="astro"] .site-account-link:not(.is-signed-out) {
  width: auto !important;
  max-width: 184px;
  min-width: 44px !important;
  padding: 0 8px 0 4px !important;
  border-radius: 4px !important;
}

html[data-site-visual-theme="astro"]
  .site-account-link:not(.is-signed-out)
  .site-account-identity {
  display: inline-flex;
}

html[data-site-visual-theme="astro"]
  .site-account-link:not(.is-signed-out)
  .site-account-icon {
  display: none;
}

html[data-site-visual-theme="astro"] .site-account-avatar {
  display: block;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border: 1px solid color-mix(in srgb, var(--astro-ink) 13%, transparent);
  border-radius: 50%;
  background: var(--astro-soft);
  object-fit: cover;
}

html[data-site-visual-theme="astro"] .site-account-copy {
  display: grid;
  min-width: 0;
  justify-items: end;
  gap: 3px;
  text-align: right;
}

html[data-site-visual-theme="astro"] .site-account-name {
  min-width: 0;
  overflow: hidden;
  color: var(--astro-ink);
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: 0.01em;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .site-account-tier {
  min-height: 0.72rem;
  overflow: hidden;
  color: var(--astro-muted);
  font-size: 0.66rem;
  font-weight: 520;
  letter-spacing: 0.025em;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .site-account-menu {
  position: absolute;
  z-index: 90;
  top: calc(100% + 6px);
  right: 0;
  display: grid;
  width: 204px;
  padding: 6px;
  border: 1px solid var(--astro-line);
  border-radius: 4px;
  background: var(--astro-surface);
  box-shadow: 0 12px 32px color-mix(in srgb, #000000 14%, transparent);
}

html[data-site-visual-theme="astro"] .site-account-menu[hidden] {
  display: none;
}

html[data-site-visual-theme="astro"] .site-account-menu-divider {
  height: 1px;
  margin: 6px 4px;
  background: var(--astro-line);
}

html[data-site-visual-theme="astro"] .site-account-help-menu {
  position: absolute;
  top: 57px;
  right: calc(100% + 6px);
  display: grid;
  width: 196px;
  padding: 6px;
  border: 1px solid var(--astro-line);
  border-radius: 4px;
  background: var(--astro-surface);
  box-shadow: 0 12px 32px color-mix(in srgb, #000000 14%, transparent);
}

html[data-site-visual-theme="astro"] .site-account-help-menu[hidden] {
  display: none;
}

html[data-site-visual-theme="astro"] .site-account-menu-item {
  display: flex;
  width: 100%;
  min-height: 44px;
  align-items: center;
  gap: 11px;
  padding: 0 10px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: var(--astro-ink);
  font: inherit;
  font-size: 0.8rem;
  font-weight: 580;
  line-height: 1;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color 140ms ease,
    color 140ms ease;
}

html[data-site-visual-theme="astro"] .site-account-menu-icon {
  width: 19px;
  height: 19px;
  flex: 0 0 19px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.65;
}

html[data-site-visual-theme="astro"] .site-account-menu-chevron {
  width: 16px;
  height: 16px;
  margin-left: auto;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
  transition: transform 140ms ease;
}

html[data-site-visual-theme="astro"]
  .site-account-menu-item[aria-expanded="true"]
  .site-account-menu-chevron {
  transform: rotate(180deg);
}

html[data-site-visual-theme="astro"] .site-account-menu-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .site-account-menu-item:hover,
html[data-site-visual-theme="astro"] .site-account-menu-item:focus-visible {
  background: var(--astro-soft);
  color: var(--astro-accent);
}

html[data-site-visual-theme="astro"] .site-account-menu-item:disabled {
  opacity: 0.48;
  cursor: wait;
}

@media (max-width: 900px) {
  html[data-site-visual-theme="astro"] .site-account-menu {
    top: auto;
    bottom: calc(100% + 16px);
    width: min(280px, calc(100vw - 48px));
    max-height: calc(100dvh - 112px);
    padding: 10px;
    overflow-y: auto;
    box-shadow: 0 16px 40px color-mix(in srgb, #000 24%, transparent);
  }

  html[data-site-visual-theme="astro"] .site-account-menu-item {
    min-height: 48px;
    padding-inline: 14px;
    font-size: 0.9rem;
  }

  html[data-site-visual-theme="astro"] .site-account-menu-divider {
    margin-block: 8px;
  }

  html[data-site-visual-theme="astro"] .site-account-help-menu {
    position: static;
    width: auto;
    margin: 0;
    padding: 4px 0 4px 28px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  html[data-site-visual-theme="astro"]
    .site-account-help-menu
    .site-account-menu-item {
    min-height: 40px;
  }

  html[data-site-visual-theme="astro"]
    .site-account-menu-item[aria-expanded="true"]
    .site-account-menu-chevron {
    transform: rotate(90deg);
  }
}

html[data-site-visual-theme="astro"] .site-account-link.is-signed-out {
  width: auto !important;
  min-width: 64px !important;
  padding: 0 15px !important;
  border: 1px solid var(--astro-ink) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--astro-ink) !important;
  font-size: 0.87rem;
  font-weight: 650;
  text-align: center;
  transform: translateY(0);
  transition:
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    border-color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease),
    transform var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"] .site-account-link.is-signed-out:hover,
html[data-site-visual-theme="astro"]
  .site-account-link.is-signed-out:focus-visible {
  border-color: color-mix(
    in srgb,
    var(--astro-accent) 34%,
    var(--astro-line)
  ) !important;
  background: var(--behoss-interaction-hover-surface) !important;
  box-shadow: var(--behoss-interaction-hover-shadow) !important;
  color: var(--astro-accent) !important;
  transform: translateY(var(--behoss-interaction-lift));
}

html[data-site-visual-theme="astro"]
  .site-account-link.is-signed-out
  .site-account-login-label {
  display: inline-block;
  transform: translateY(0);
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  .site-account-link.is-signed-out:is(:hover, :focus-visible)
  .site-account-login-label {
  transform: translateY(-1px);
}

html[data-site-visual-theme="astro"] .site-account-link.is-signed-out:active {
  box-shadow: var(--behoss-interaction-active-shadow) !important;
  transform: translateY(0);
}

html[data-site-visual-theme="astro"]
  .site-account-link.is-signed-out:active
  .site-account-login-label {
  transform: translateY(0);
}

html[data-site-visual-theme="astro"]
  .site-account-link.is-signed-out
  .site-account-icon {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] .site-account-link.is-signed-out,
  html[data-site-visual-theme="astro"]
    .site-account-link.is-signed-out
    .site-account-login-label {
    transition: none !important;
  }

  html[data-site-visual-theme="astro"]
    .site-account-link.is-signed-out:is(:hover, :focus-visible),
  html[data-site-visual-theme="astro"]
    .site-account-link.is-signed-out:is(:hover, :focus-visible)
    .site-account-login-label {
    transform: none !important;
  }
}

html[data-site-visual-theme="astro"]
  [data-site-color-mode-option="light"]
  .site-color-mode-icon {
  -webkit-mask: url("/behoss/assets/spark-sun.svg") center / contain no-repeat;
  mask: url("/behoss/assets/spark-sun.svg") center / contain no-repeat;
}

html[data-site-visual-theme="astro"]
  [data-site-color-mode-option="dark"]
  .site-color-mode-icon {
  -webkit-mask: url("/behoss/assets/spark-moon.svg") center / contain no-repeat;
  mask: url("/behoss/assets/spark-moon.svg") center / contain no-repeat;
}

html[data-site-visual-theme="astro"]
  [data-site-color-mode-option="system"]
  .site-color-mode-icon {
  -webkit-mask: url("/behoss/assets/spark-system.svg") center / contain
    no-repeat;
  mask: url("/behoss/assets/spark-system.svg") center / contain no-repeat;
}

html[data-site-visual-theme="astro"] .site-language-select {
  position: absolute;
  inset: 0;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  appearance: none;
  opacity: 0;
  color: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  font-size: 0 !important;
  cursor: pointer;
}

html[data-site-visual-theme="astro"] .site-language-icon {
  -webkit-mask: url("/behoss/assets/spark-language.svg") center / contain
    no-repeat;
  mask: url("/behoss/assets/spark-language.svg") center / contain no-repeat;
}

html[data-site-visual-theme="astro"] .site-language-select option {
  color: var(--astro-ink);
  background: var(--astro-surface);
  font-size: 0.82rem;
}

html[data-site-visual-theme="astro"] .menu-button,
html[data-site-visual-theme="astro"] .ap-menu-button {
  width: 44px !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: transparent !important;
  box-shadow: none !important;
  transition:
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease),
    transform var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"] .menu-button:is(:hover, :focus-visible),
html[data-site-visual-theme="astro"]
  .ap-menu-button:is(:hover, :focus-visible) {
  background: var(--behoss-interaction-hover-surface) !important;
  box-shadow: var(--behoss-interaction-hover-shadow) !important;
  transform: translateY(var(--behoss-interaction-lift));
}

html[data-site-visual-theme="astro"] .menu-button:active,
html[data-site-visual-theme="astro"] .ap-menu-button:active {
  box-shadow: var(--behoss-interaction-active-shadow) !important;
  transform: translateY(0);
}

html[data-site-visual-theme="astro"] .menu-button span,
html[data-site-visual-theme="astro"] .ap-menu-button span {
  background: var(--astro-ink) !important;
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] .nav-shell,
  html[data-site-visual-theme="astro"] .ap-nav {
    position: relative !important;
  }

  html[data-site-visual-theme="astro"] .nav-links,
  html[data-site-visual-theme="astro"] .ap-links {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    margin: 0 !important;
    transform: translate(-50%, -50%) !important;
  }

  html[data-site-visual-theme="astro"] .site-tools {
    margin-left: auto !important;
  }

  html[data-site-visual-theme="astro"] .site-account-control {
    margin-left: 8px;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  html[data-site-visual-theme="astro"][lang="en"] :is(.nav-links, .ap-links) {
    gap: 4px !important;
  }

  html[data-site-visual-theme="astro"][lang="en"]
    :is(.nav-links, .ap-links)
    > a {
    padding-inline: 6px !important;
  }
}

html[data-site-visual-theme="astro"] .nav-service-preview,
html[data-site-visual-theme="astro"] .ap-service-preview {
  border: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-surface) !important;
  box-shadow: 0 18px 60px rgba(21, 23, 26, 0.09) !important;
  color: var(--astro-ink) !important;
}

/* Page canvas and typography */
html[data-site-visual-theme="astro"] .ap-main,
html[data-site-visual-theme="astro"] main {
  padding-top: 0 !important;
  background: var(--astro-canvas) !important;
}

html[data-site-visual-theme="astro"] body::before,
html[data-site-visual-theme="astro"] body::after,
html[data-site-visual-theme="astro"] body.apple-preview-page::before,
html[data-site-visual-theme="astro"] body.apple-preview-page::after,
html[data-site-visual-theme="astro"] .ap-main::before,
html[data-site-visual-theme="astro"] .ap-main::after,
html[data-site-visual-theme="astro"] body.apple-preview-page .ap-main::before,
html[data-site-visual-theme="astro"] body.apple-preview-page .ap-main::after {
  display: none !important;
  content: none !important;
}

html[data-site-visual-theme="astro"] .ap-section {
  position: relative;
  overflow: clip;
  border: 0 !important;
  border-bottom: 1px solid var(--astro-line) !important;
  background: var(--astro-canvas) !important;
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"] .ap-section::before,
html[data-site-visual-theme="astro"] .ap-section::after {
  box-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-inner {
  width: min(
    calc(100% - var(--astro-shell-inset)),
    var(--astro-shell-max)
  ) !important;
  margin-inline: auto !important;
}

/* Shared page shell: broad layouts align to one rail while reading surfaces
   retain their narrower measures below. */
html[data-site-visual-theme="astro"]
  body.behoss-insights-page
  #main-content.app-layout,
html[data-site-visual-theme="astro"]
  body.behoss-insight-page
  #main-content.media-note,
html[data-site-visual-theme="astro"] body.groups-page .market-width,
html[data-site-visual-theme="astro"] body.tools-page .tools-main {
  width: min(
    calc(100% - var(--astro-shell-inset)),
    var(--astro-shell-max)
  ) !important;
  max-width: none !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.behoss-insight-page
  #main-content.app-layout.max-w-4xl {
  width: min(
    calc(100% - var(--astro-shell-inset)),
    var(--astro-reading-shell-max)
  ) !important;
}

html[data-site-visual-theme="astro"] body.behoss-insight-page .app-prose {
  max-width: var(--astro-reading-measure-max);
}

.app-prose .movie-catalog-group {
  margin-block: 1.5rem 2rem;
  color: var(--astro-ink);
}

.app-prose .movie-catalog-heading {
  margin: 0 0 0.75rem;
  color: var(--astro-ink);
  font-size: 1rem;
  font-weight: 650;
}

.app-prose .movie-catalog-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
  align-items: start;
  gap: 0 1.5rem;
}

.app-prose .movie-catalog table {
  display: table !important;
  width: 100% !important;
  max-width: 100%;
  margin: 0;
  table-layout: fixed;
  border-collapse: collapse;
  color: inherit;
  font-size: 0.875rem;
  line-height: 1.6;
  font-variant-numeric: tabular-nums;
}

.app-prose .movie-catalog :is(th, td) {
  padding: 0.55rem 0.25rem;
  border: 0;
  border-bottom: 1px solid var(--astro-line);
  vertical-align: top;
}

.app-prose .movie-catalog th {
  color: var(--astro-muted);
  font-size: 0.75rem;
  font-weight: 500;
  white-space: nowrap;
}

.app-prose .movie-catalog :is(th, td):first-child {
  padding-left: 0;
  text-align: left !important;
  overflow-wrap: anywhere;
}

.app-prose .movie-catalog :is(th, td):not(:first-child) {
  width: 3rem;
  text-align: right !important;
  white-space: nowrap;
}

.app-prose .movie-catalog :is(th, td):last-child {
  width: 2.5rem;
  padding-right: 0;
}

.app-prose .movie-catalog th:not(:first-child) {
  white-space: normal;
  overflow-wrap: anywhere;
}

:is(html[lang="en"], html[lang="ja"])
  .app-prose
  .movie-catalog
  :is(th, td):nth-child(3) {
  width: 5rem;
}

:is(html[lang="en"], html[lang="ja"])
  .app-prose
  .movie-catalog
  :is(th, td):last-child {
  width: 3.25rem;
}

.app-prose .movie-catalog a {
  color: inherit;
  text-decoration: none;
}

.app-prose .movie-catalog a:is(:hover, :focus-visible) {
  color: var(--astro-accent);
  text-decoration: underline;
}

.app-prose .movie-catalog-group.is-offline,
.app-prose .movie-catalog-group.is-offline .movie-catalog-heading {
  color: var(--astro-muted);
}

html[data-site-visual-theme="astro"] .ap-kicker {
  margin-bottom: 22px !important;
  color: var(--astro-accent) !important;
  font-size: 0.73rem !important;
  font-weight: 760 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
}

html[data-site-visual-theme="astro"] .ap-title,
html[data-site-visual-theme="astro"] .ap-about-heading {
  max-width: 13ch;
  color: var(--astro-ink) !important;
  font-size: clamp(3rem, 6.2vw, 6.4rem) !important;
  font-weight: 620 !important;
  letter-spacing: -0.064em !important;
  line-height: 0.96 !important;
  text-wrap: balance;
  text-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-lede,
html[data-site-visual-theme="astro"] .ap-about-copy {
  color: var(--astro-muted) !important;
  font-size: clamp(1rem, 1.35vw, 1.22rem) !important;
  font-weight: 420 !important;
  letter-spacing: -0.012em !important;
  line-height: 1.75 !important;
  text-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-metrics span {
  border-color: var(--astro-line) !important;
  background: transparent !important;
  color: var(--astro-muted) !important;
  box-shadow: none !important;
}

/* Buttons */
html[data-site-visual-theme="astro"] .bh-cta,
html[data-site-visual-theme="astro"] .home-primary-link,
html[data-site-visual-theme="astro"] body .bh-cta,
html[data-site-visual-theme="astro"] body.home-landing-page .home-primary-link {
  min-height: 44px;
  border: 1px solid var(--astro-ink) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--astro-ink) !important;
  font-size: 0.87rem !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transform: none !important;
  transition:
    background-color var(--behoss-motion-fast) ease,
    border-color var(--behoss-motion-fast) ease,
    box-shadow var(--behoss-motion-fast) ease,
    color var(--behoss-motion-fast) ease,
    transform var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"] .bh-cta::before,
html[data-site-visual-theme="astro"] .bh-cta::after,
html[data-site-visual-theme="astro"] .home-primary-link::before,
html[data-site-visual-theme="astro"] .home-primary-link::after {
  display: none !important;
}

html[data-site-visual-theme="astro"] .bh-cta.is-primary,
html[data-site-visual-theme="astro"] .home-primary-link.is-primary,
html[data-site-visual-theme="astro"] body .bh-cta.is-primary,
html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-primary-link.is-primary {
  border-color: var(--astro-ink) !important;
  background: var(--astro-ink) !important;
  color: var(--astro-canvas) !important;
}

html[data-site-visual-theme="astro"] .bh-cta:is(:hover, :focus-visible),
html[data-site-visual-theme="astro"]
  .home-primary-link:is(:hover, :focus-visible) {
  border-color: color-mix(
    in srgb,
    var(--astro-accent) 34%,
    var(--astro-line)
  ) !important;
  background: var(--behoss-interaction-hover-surface) !important;
  box-shadow: var(--behoss-interaction-hover-shadow) !important;
  color: var(--astro-accent) !important;
  transform: translateY(var(--behoss-interaction-lift)) !important;
}

html[data-site-visual-theme="astro"]
  .bh-cta.is-primary:is(:hover, :focus-visible),
html[data-site-visual-theme="astro"]
  .home-primary-link.is-primary:is(:hover, :focus-visible) {
  border-color: var(--astro-accent) !important;
  background: var(--astro-accent) !important;
  color: #fff !important;
}

html[data-site-visual-theme="astro"] :is(.bh-cta, .home-primary-link):active {
  box-shadow: var(--behoss-interaction-active-shadow) !important;
  transform: translateY(0) !important;
}

@media (hover: hover) and (min-width: 901px) {
  html[data-site-visual-theme="astro"]
    body.tools-page
    .benefit-login-cta.bh-cta.is-primary {
    border-color: var(--astro-ink) !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--astro-ink) !important;
    transform: translateY(0) !important;
  }

  html[data-site-visual-theme="astro"]
    body.tools-page
    .benefit-login-cta.bh-cta.is-primary:is(:hover, :focus-visible) {
    border-color: color-mix(
      in srgb,
      var(--astro-accent) 34%,
      var(--astro-line)
    ) !important;
    background: var(--behoss-interaction-hover-surface) !important;
    box-shadow: var(--behoss-interaction-hover-shadow) !important;
    color: var(--astro-accent) !important;
    transform: translateY(var(--behoss-interaction-lift)) !important;
  }

  html[data-site-visual-theme="astro"]
    body.tools-page
    .benefit-login-cta.bh-cta.is-primary:active {
    box-shadow: var(--behoss-interaction-active-shadow) !important;
    transform: translateY(0) !important;
  }

  html[data-site-visual-theme="astro"]
    :is(body.tools-page, body.subscription-page)
    .benefit-purchase-pay:not(:disabled) {
    border-color: var(--astro-ink) !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--astro-ink) !important;
    opacity: 1 !important;
    transition:
      background-color var(--behoss-motion-fast) var(--behoss-ease),
      border-color var(--behoss-motion-fast) var(--behoss-ease),
      box-shadow var(--behoss-motion-fast) var(--behoss-ease),
      color var(--behoss-motion-fast) var(--behoss-ease),
      transform var(--behoss-motion-standard) var(--behoss-ease) !important;
  }

  html[data-site-visual-theme="astro"]
    :is(body.tools-page, body.subscription-page)
    .benefit-purchase-actions {
    transition:
      border-color var(--behoss-motion-fast) var(--behoss-ease),
      box-shadow var(--behoss-motion-fast) var(--behoss-ease),
      transform var(--behoss-motion-standard) var(--behoss-ease);
  }

  html[data-site-visual-theme="astro"]
    :is(body.tools-page, body.subscription-page)
    .benefit-purchase-actions:has(
      .benefit-purchase-pay:not(:disabled):is(:hover, :focus-visible)
    ) {
    border-color: color-mix(
      in srgb,
      var(--astro-accent) 34%,
      var(--astro-line)
    );
    box-shadow: var(--behoss-interaction-hover-shadow);
    transform: translateY(var(--behoss-interaction-lift));
  }

  html[data-site-visual-theme="astro"]
    :is(body.tools-page, body.subscription-page)
    .benefit-purchase-actions
    .benefit-purchase-pay:not(:disabled):is(:hover, :focus-visible),
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .benefit-purchase-pay:not(:disabled):is(:hover, :focus-visible) {
    border-color: color-mix(
      in srgb,
      var(--astro-accent) 34%,
      var(--astro-line)
    ) !important;
    background: var(--behoss-interaction-hover-surface) !important;
    color: var(--astro-accent) !important;
  }

  html[data-site-visual-theme="astro"]
    :is(body.tools-page, body.subscription-page)
    .benefit-purchase-actions
    .benefit-purchase-pay:not(:disabled):is(:hover, :focus-visible) {
    box-shadow: none !important;
    transform: none !important;
  }

  html[data-site-visual-theme="astro"]
    body.tools-page
    .benefit-purchase-actions
    .benefit-purchase-pay:not(:disabled):is(:hover, :focus-visible)
    > span {
    transform: translate3d(0, -1px, 0);
  }

  html[data-site-visual-theme="astro"]
    :is(body.tools-page, body.subscription-page)
    .benefit-purchase-pay:not(:disabled):active {
    box-shadow: var(--behoss-interaction-active-shadow) !important;
    transform: translateY(0) !important;
  }
}

html[data-site-visual-theme="astro"] body.home-landing-page .home-notes-link {
  gap: 8px;
  overflow: hidden;
  transform: translateY(0) !important;
  transition:
    background-color var(--behoss-motion-fast) ease,
    border-color var(--behoss-motion-fast) ease,
    box-shadow 160ms ease,
    color var(--behoss-motion-fast) ease,
    transform var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-notes-link
  .home-notes-link-icon {
  position: relative;
  z-index: 1;
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  stroke-width: 1.8;
  transform: translate3d(0, 0, 0) rotate(-45deg);
  transform-origin: center;
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-notes-link:is(:hover, :focus-visible) {
  border-color: color-mix(
    in srgb,
    var(--astro-accent) 34%,
    var(--astro-line)
  ) !important;
  background: var(--behoss-interaction-hover-surface) !important;
  box-shadow: var(--behoss-interaction-hover-shadow) !important;
  color: var(--astro-accent) !important;
  transform: translateY(-1px) !important;
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  #top
  .home-notes-link:is(:hover, :focus-visible)
  .home-primary-label {
  transform: translate3d(0, -1px, 0);
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-notes-link:is(:hover, :focus-visible)
  .home-notes-link-icon {
  transform: translate3d(var(--behoss-interaction-icon-shift), -1px, 0)
    rotate(0deg);
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-notes-link:active {
  box-shadow: var(--behoss-interaction-active-shadow) !important;
  transform: translateY(0) !important;
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-notes-link:active
  :is(.home-primary-label, .home-notes-link-icon) {
  transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] :is(.nav-links, .ap-links) > a,
  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a
    > span:first-child,
  html[data-site-visual-theme="astro"] :is(.bh-cta, .home-primary-link),
  html[data-site-visual-theme="astro"]
    :is(.bh-cta, .home-primary-link)
    :is(.bh-cta__label, .home-primary-label),
  html[data-site-visual-theme="astro"] body.home-landing-page .home-notes-link,
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-notes-link
    :is(.home-primary-label, .home-notes-link-icon) {
    transition: none !important;
  }

  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a:is(:hover, :focus-visible),
  html[data-site-visual-theme="astro"]
    :is(.nav-links, .ap-links)
    > a:is(:hover, :focus-visible)
    > span:first-child,
  html[data-site-visual-theme="astro"]
    :is(.bh-cta, .home-primary-link):is(:hover, :focus-visible),
  html[data-site-visual-theme="astro"]
    :is(.bh-cta, .home-primary-link):is(:hover, :focus-visible)
    :is(.bh-cta__label, .home-primary-label),
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-notes-link:is(:hover, :focus-visible),
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-notes-link:is(:hover, :focus-visible)
    :is(.home-primary-label, .home-notes-link-icon) {
    transform: none !important;
  }
}

html[data-site-visual-theme="astro"] .bh-cta .bh-cta__label,
html[data-site-visual-theme="astro"] .home-primary-link .home-primary-label {
  display: inline-block;
  color: inherit !important;
  text-shadow: none !important;
  transform: translate3d(0, 0, 0);
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  :is(.bh-cta, .home-primary-link):is(:hover, :focus-visible)
  :is(.bh-cta__label, .home-primary-label) {
  transform: translate3d(0, -1px, 0);
}

html[data-site-visual-theme="astro"]
  :is(.bh-cta, .home-primary-link):active
  :is(.bh-cta__label, .home-primary-label) {
  transform: translate3d(0, 0, 0);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta
  .bh-cta__label,
html[data-site-visual-theme="astro"]
  .member-verification-subscribe
  .bh-cta__label {
  display: inline-block;
  position: relative;
  z-index: 1;
  pointer-events: none;
  transition:
    transform 180ms ease,
    color 180ms ease;
  will-change: transform;
  backface-visibility: hidden;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta:hover
  .bh-cta__label,
html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta:focus-visible
  .bh-cta__label,
html[data-site-visual-theme="astro"]
  .member-verification-subscribe:hover
  .bh-cta__label,
html[data-site-visual-theme="astro"]
  .member-verification-subscribe:focus-visible
  .bh-cta__label {
  transform: translate3d(0, -1px, 0);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta:active
  .bh-cta__label,
html[data-site-visual-theme="astro"]
  .member-verification-subscribe:active
  .bh-cta__label {
  transform: translate3d(0, 0, 0);
}

html[data-site-visual-theme="astro"] .bh-cta[aria-disabled="true"],
html[data-site-visual-theme="astro"] .bh-cta:disabled {
  border-color: var(--astro-line) !important;
  background: var(--astro-soft) !important;
  color: var(--astro-muted) !important;
  cursor: not-allowed;
  opacity: 1;
  box-shadow: none !important;
  transform: none !important;
}

/* Home */
html[data-site-visual-theme="astro"] body.home-landing-page {
  background-image: none !important;
}

html[data-site-visual-theme="astro"] .home-page-section {
  padding: 0 !important;
  background: var(--astro-canvas) !important;
  background-image: none !important;
}

html[data-site-visual-theme="astro"] .home-page-section::before,
html[data-site-visual-theme="astro"] .home-page-section::after,
html[data-site-visual-theme="astro"] .ap-about-system::before,
html[data-site-visual-theme="astro"] .ap-about-system::after,
html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-page-section::before,
html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-page-section::after,
html[data-site-visual-theme="astro"] body.about-page .ap-about-system::before,
html[data-site-visual-theme="astro"] body.about-page .ap-about-system::after {
  display: none !important;
  content: none !important;
}

html[data-site-visual-theme="astro"] .home-page-section .ap-inner {
  padding: 0 0 clamp(112px, 17vh, 164px) !important;
}

html[data-site-visual-theme="astro"] .home-page-section .ap-about-intro {
  position: relative;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto;
  width: 100% !important;
  height: 100%;
  max-width: none !important;
  min-height: 100%;
  margin: 0 !important;
  text-align: left !important;
}

html[data-site-visual-theme="astro"] .home-hero-scan-field {
  display: none;
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-field {
    --home-scan-x: 30%;
    --home-scan-y: 28%;
    --home-scan-ball-offset-x: 0px;
    --home-scan-ball-offset-y: 0px;
    position: absolute;
    z-index: 0;
    inset: -55px 0 139px;
    display: block;
    overflow: hidden;
    contain: paint;
    pointer-events: none;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 640px;
    height: 640px;
    opacity: 0.9;
    pointer-events: none;
    transform: translate3d(
      calc(var(--home-scan-x) - 320px),
      calc(var(--home-scan-y) - 320px),
      0
    );
    will-change: transform;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-lens {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(
      circle,
      color-mix(in srgb, var(--astro-ink) 3.5%, transparent),
      color-mix(in srgb, var(--astro-ink) 1.2%, transparent) 42%,
      color-mix(in srgb, var(--astro-ink) 0.3%, transparent) 72%,
      transparent 100%
    );
    opacity: 0.72;
    transform: translate3d(
      calc(var(--home-scan-x) - 210px),
      calc(var(--home-scan-y) - 210px),
      0
    );
    will-change: transform;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-lens::before,
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-lens::after {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    content: "";
    pointer-events: none;
    transform: translate(
      calc(-50% + var(--home-scan-ball-offset-x)),
      calc(-50% + var(--home-scan-ball-offset-y))
    );
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-lens::before {
    width: 76px;
    height: 56px;
    background: conic-gradient(
      from 138deg,
      color-mix(in srgb, var(--astro-ink) 5%, transparent),
      transparent 29%,
      color-mix(in srgb, white 30%, transparent) 44%,
      transparent 61%,
      color-mix(in srgb, var(--astro-ink) 4%, transparent)
    );
    filter: blur(2.2px);
    -webkit-mask-image: radial-gradient(
      ellipse,
      transparent 0 10%,
      rgb(0 0 0 / 18%) 28%,
      rgb(0 0 0 / 42%) 43%,
      rgb(0 0 0 / 18%) 60%,
      transparent 88%
    );
    mask-image: radial-gradient(
      ellipse,
      transparent 0 10%,
      rgb(0 0 0 / 18%) 28%,
      rgb(0 0 0 / 42%) 43%,
      rgb(0 0 0 / 18%) 60%,
      transparent 88%
    );
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-lens::after {
    width: 12px;
    height: 12px;
    background:
      radial-gradient(
        ellipse 48% 30% at 32% 25%,
        white 0 22%,
        color-mix(in srgb, white 42%, transparent) 38%,
        transparent 72%
      ),
      linear-gradient(
        145deg,
        color-mix(in srgb, var(--astro-canvas) 86%, white) 4%,
        color-mix(in srgb, var(--astro-ink) 18%, var(--astro-canvas)) 34%,
        color-mix(in srgb, var(--astro-ink) 46%, var(--astro-canvas)) 68%,
        color-mix(in srgb, var(--astro-ink) 72%, var(--astro-canvas)) 100%
      );
    box-shadow:
      inset 1px 1px 1px color-mix(in srgb, white 78%, transparent),
      inset -1px -1px 1px color-mix(in srgb, var(--astro-ink) 46%, transparent),
      0 0 4px 1px color-mix(in srgb, var(--astro-canvas) 70%, transparent),
      0 0 8px 3px color-mix(in srgb, var(--astro-ink) 10%, transparent),
      0 0 18px 7px color-mix(in srgb, var(--astro-ink) 5%, transparent),
      0 0 30px 12px color-mix(in srgb, var(--astro-ink) 2.5%, transparent);
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-grid {
    opacity: 0.66;
    will-change: auto;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-hero-scan-lens {
    opacity: 0.66;
    will-change: auto;
  }
}

html[data-site-visual-theme="astro"] .home-hero-core {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  align-self: end;
  justify-items: center;
  isolation: isolate;
  margin-bottom: clamp(126px, 14.5vh, 146px);
  text-align: center;
}

html[data-site-visual-theme="astro"] .home-hero-core .ap-about-copy,
html[data-site-visual-theme="astro"] .home-hero-core .home-actions {
  position: relative;
  z-index: 1;
}

html[data-site-visual-theme="astro"] .home-page-section .ap-about-copy {
  display: flex !important;
  width: min(100%, 1120px) !important;
  max-width: 1120px !important;
  min-height: 1.08em;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  color: var(--astro-ink) !important;
  font-size: clamp(2.35rem, 3.5vw, 2.65rem) !important;
  font-weight: 610 !important;
  letter-spacing: -0.064em !important;
  line-height: 1.08 !important;
}

html[data-site-visual-theme="astro"]
  .home-page-section
  .ap-about-copy[data-slogan-language="en"] {
  letter-spacing: -0.052em !important;
  word-spacing: 0.13em;
}

html[data-site-visual-theme="astro"] .home-page-section .ap-about-copy span {
  display: block;
}

html[data-site-visual-theme="astro"]
  .home-page-section
  .ap-about-copy
  .home-slogan-visual {
  position: relative;
  z-index: 1;
  display: block !important;
  width: 100%;
  max-width: 100%;
  overflow-wrap: normal;
  text-align: center;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .home-slogan-warp {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

html[data-site-visual-theme="astro"] .home-slogan-selection {
  position: absolute;
  z-index: 3;
  display: none;
  pointer-events: none;
  border-radius: 0.04em;
  background: color-mix(in srgb, var(--astro-accent) 22%, transparent);
  transform: scaleX(0);
  transform-origin: right center;
  will-change: transform;
}

html[data-site-visual-theme="astro"] .home-slogan-selection[hidden] {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  .home-page-section
  .ap-about-copy.is-slogan-selecting
  .home-slogan-selection {
  display: block;
  animation: none;
  transform: none;
}

html[data-site-visual-theme="astro"]
  .home-page-section
  .ap-about-copy.is-slogan-selecting
  .home-slogan-visual::after {
  display: none !important;
  animation: none !important;
}

html[data-site-visual-theme="astro"]
  .ap-about-copy.is-slogan-pressured
  .home-slogan-visual {
  -webkit-mask-image: radial-gradient(
    circle 88px at var(--home-slogan-pressure-x) var(--home-slogan-pressure-y),
    transparent 0 60%,
    rgb(0 0 0 / 18%) 72%,
    rgb(0 0 0 / 62%) 86%,
    #000 100%
  );
  mask-image: radial-gradient(
    circle 88px at var(--home-slogan-pressure-x) var(--home-slogan-pressure-y),
    transparent 0 60%,
    rgb(0 0 0 / 18%) 72%,
    rgb(0 0 0 / 62%) 86%,
    #000 100%
  );
}

html[data-site-visual-theme="astro"]
  .home-page-section
  .ap-about-copy.is-typewriting
  .home-slogan-visual::after {
  display: inline-block;
  width: 0.075em;
  height: 0.86em;
  margin-left: 0.09em;
  background: currentColor;
  content: "";
  vertical-align: -0.04em;
  animation: slogan-cursor-blink 900ms steps(1, end) infinite;
}

@keyframes slogan-cursor-blink {
  0%,
  46% {
    opacity: 1;
  }

  47%,
  100% {
    opacity: 0;
  }
}

html[data-site-visual-theme="astro"] .ap-quote-actions {
  justify-content: center !important;
  margin-top: clamp(34px, 4.4vh, 44px) !important;
}

html[data-site-visual-theme="astro"] .home-feature-links {
  position: relative !important;
  z-index: 1;
  inset: auto !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  width: 100% !important;
  margin-top: 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--astro-line) !important;
  border-bottom: 1px solid var(--astro-line) !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

html[data-site-visual-theme="astro"] .home-feature-card,
html[data-site-visual-theme="astro"] .about-qr-card,
html[data-site-visual-theme="astro"] body.home-landing-page .home-feature-card,
html[data-site-visual-theme="astro"] body.about-page .home-feature-card {
  position: relative !important;
  min-height: 190px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-right: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  color: var(--astro-ink) !important;
  isolation: isolate;
  transform: none !important;
  transition:
    background-color var(--behoss-motion-standard) var(--behoss-ease),
    border-color var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"] .home-feature-card:last-child,
html[data-site-visual-theme="astro"] .about-qr-card:last-child {
  border-right: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-feature-links
  > .home-feature-card:last-child {
  border-right: 0 !important;
}

html[data-site-visual-theme="astro"] .home-feature-card:hover {
  background: color-mix(
    in srgb,
    var(--astro-surface) 72%,
    transparent
  ) !important;
}

html[data-site-visual-theme="astro"] .home-feature-card::before,
html[data-site-visual-theme="astro"] .home-feature-card::after {
  position: absolute;
  z-index: 6;
  right: 0;
  left: 0;
  height: 1px;
  background: transparent;
  content: "";
  pointer-events: none;
  transition: background-color var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"] .home-feature-card::before {
  top: 0;
}
html[data-site-visual-theme="astro"] .home-feature-card::after {
  bottom: 0;
}

html[data-site-visual-theme="astro"] .home-feature-card:hover::before,
html[data-site-visual-theme="astro"] .home-feature-card:hover::after,
html[data-site-visual-theme="astro"] .home-feature-card:focus-visible::before,
html[data-site-visual-theme="astro"] .home-feature-card:focus-visible::after,
html[data-site-visual-theme="astro"] .home-feature-card:focus-within::before,
html[data-site-visual-theme="astro"] .home-feature-card:focus-within::after {
  background: color-mix(in srgb, var(--astro-ink) 30%, var(--astro-line));
}

html[data-site-visual-theme="astro"] .home-feature-card-surface {
  position: relative !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: column !important;
  width: auto !important;
  height: auto !important;
  min-height: inherit !important;
  padding: 24px 26px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  color: var(--astro-ink) !important;
  transform: translateY(0) !important;
  transition: transform var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"]
  .home-feature-card:hover
  .home-feature-card-surface,
html[data-site-visual-theme="astro"]
  .home-feature-card:focus-visible
  .home-feature-card-surface,
html[data-site-visual-theme="astro"]
  .home-feature-card:focus-within
  .home-feature-card-surface {
  transform: translateY(-3px) !important;
}

html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note:hover
  .home-feature-card-surface,
html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note:focus-visible
  .home-feature-card-surface {
  transform: translateY(0) !important;
}

html[data-site-visual-theme="astro"] .home-feature-card-surface::before,
html[data-site-visual-theme="astro"] .home-feature-card-surface::after,
html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-feature-card-surface::before,
html[data-site-visual-theme="astro"]
  body.home-landing-page
  .home-feature-card-surface::after,
html[data-site-visual-theme="astro"]
  body.about-page
  .home-feature-card-surface::before,
html[data-site-visual-theme="astro"]
  body.about-page
  .home-feature-card-surface::after {
  display: none !important;
  content: none !important;
}

html[data-site-visual-theme="astro"] .home-feature-card span,
html[data-site-visual-theme="astro"] .home-feature-card b {
  color: var(--astro-ink) !important;
  font-size: 0.98rem !important;
  font-weight: 680 !important;
  letter-spacing: -0.018em;
  line-height: 1.25;
  text-shadow: none !important;
}

html[data-site-visual-theme="astro"] .home-feature-card p {
  max-width: 24ch;
  margin-top: 12px !important;
  color: var(--astro-muted) !important;
  font-size: 0.9rem !important;
  line-height: 1.62 !important;
  text-wrap: pretty;
  text-shadow: none !important;
}

html[data-site-visual-theme="astro"] .home-signal-card {
  gap: 0;
  overflow: hidden;
}

html[data-site-visual-theme="astro"] .home-note-cover {
  position: absolute;
  inset: -2px;
  overflow: hidden;
  clip-path: inset(0 0 5px 0);
  pointer-events: none;
}

html[data-site-visual-theme="astro"] .home-note-aperture {
  position: absolute;
  z-index: 2;
  inset: -2px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  pointer-events: none;
}

html[data-site-visual-theme="astro"] .home-note-aperture-fill {
  fill: var(--astro-canvas);
}

html[data-site-visual-theme="astro"] .home-note-cover img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: var(--home-note-object-x, 50%) var(--home-note-object-y, 50%);
  filter: saturate(1.15) contrast(1.03);
  transform-origin: center;
  transform: translate3d(
      var(--home-note-image-x, 77.48px),
      var(--home-note-image-y, 11.64px),
      0
    )
    scale(var(--home-note-image-scale, 1.36));
}

html.cover-image-editing[data-site-visual-theme="astro"] .is-popular-note {
  cursor: grab;
  touch-action: none;
}

html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note:active {
  cursor: grabbing;
}

html[data-site-visual-theme="astro"] .is-popular-note .home-note-kicker,
html[data-site-visual-theme="astro"] .is-popular-note .home-card-main,
html[data-site-visual-theme="astro"] .is-popular-note .home-card-footer {
  position: relative;
  z-index: 3;
  transform: translateY(0);
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  .is-popular-note
  .home-feature-card-surface,
html[data-site-visual-theme="astro"]
  .is-popular-note:focus-within
  .home-feature-card-surface {
  transform: translateY(0) !important;
}

html[data-site-visual-theme="astro"]
  .is-popular-note:hover
  .home-feature-card-surface,
html[data-site-visual-theme="astro"]
  .is-popular-note:focus-visible
  .home-feature-card-surface,
html[data-site-visual-theme="astro"]
  .is-popular-note:focus-within
  .home-feature-card-surface {
  transform: translateY(-3px) !important;
}

html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note:hover
  .home-feature-card-surface,
html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note:focus-visible
  .home-feature-card-surface {
  transform: translateY(0) !important;
}

html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note
  .home-note-kicker,
html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note
  .home-card-main,
html.cover-image-editing[data-site-visual-theme="astro"]
  .is-popular-note
  .home-card-footer {
  transform: translateY(0);
}

html[data-site-visual-theme="astro"] .is-popular-note::after {
  height: 4px;
  background: var(--astro-canvas) !important;
}

html[data-site-visual-theme="astro"] .is-popular-note:hover::after,
html[data-site-visual-theme="astro"] .is-popular-note:focus-visible::after {
  background: linear-gradient(
    to bottom,
    var(--astro-canvas) 0 calc(100% - 1px),
    color-mix(in srgb, var(--astro-ink) 30%, var(--astro-line)) calc(100% - 1px)
  ) !important;
}

html[data-site-visual-theme="astro"] .is-popular-note .home-card-main {
  width: 58%;
  margin-top: 2px;
}

html[data-site-visual-theme="astro"] .home-note-kicker {
  display: flex;
  align-items: flex-start;
  height: 24px;
  margin-top: 4px;
}

html[data-site-visual-theme="astro"] .home-note-kicker > span {
  color: var(--astro-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 650 !important;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

html[data-site-visual-theme="astro"] .is-popular-note .home-card-main > b {
  display: block;
  overflow: visible;
  font-size: 1.08rem !important;
  line-height: 1.16 !important;
  text-wrap: balance;
  -webkit-line-clamp: unset;
}

html[data-site-visual-theme="astro"]
  .is-featured-service
  .home-feature-card-surface {
  padding: 24px 24px 15px !important;
}

html[data-site-visual-theme="astro"] .home-service-heading,
html[data-site-visual-theme="astro"] .home-service-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

html[data-site-visual-theme="astro"] .home-service-heading > span,
html[data-site-visual-theme="astro"] .home-service-footer > span {
  color: var(--astro-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.05em !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

html[data-site-visual-theme="astro"] .home-service-heading {
  align-items: flex-start;
  height: 24px;
  margin-top: 4px;
}

html[data-site-visual-theme="astro"] .home-service-list {
  display: grid;
  gap: 4px;
  margin-top: 5px;
}

html[data-site-visual-theme="astro"] .home-service-item {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 30px;
}

html[data-site-visual-theme="astro"] .home-service-icon {
  display: grid;
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  place-items: center;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--astro-ink);
  border-radius: 50%;
  background: transparent;
}

html[data-site-visual-theme="astro"] .home-service-icon > svg {
  display: block;
  width: 100%;
  height: 100%;
}

html[data-site-visual-theme="astro"] .home-service-icon > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

html[data-site-visual-theme="astro"]
  .home-service-item[data-home-product-slug="apple-tv-f1-live"]
  .home-service-icon
  > img {
  transform: scale(1.5);
  transform-origin: 50% 44%;
}

html[data-site-visual-theme="astro"] .home-service-item > b {
  overflow: hidden;
  color: var(--astro-ink) !important;
  font-size: 0.78rem !important;
  font-weight: 680 !important;
  letter-spacing: -0.015em !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .home-service-footer {
  margin-top: 14px;
  padding-top: 11px;
  border-top: 1px solid color-mix(in srgb, var(--astro-line) 72%, transparent);
}

html[data-site-visual-theme="astro"] .home-service-footer-icon {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  color: var(--astro-ink) !important;
  stroke-width: 1.8;
  transform: translate3d(0, 0, 0) rotate(-45deg);
  transform-origin: center;
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  .is-featured-service:hover
  .home-service-footer
  .home-service-footer-icon,
html[data-site-visual-theme="astro"]
  .is-featured-service:focus-visible
  .home-service-footer
  .home-service-footer-icon {
  transform: translate3d(var(--behoss-interaction-icon-shift), -1px, 0)
    rotate(0deg);
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] .home-service-footer-icon {
    transition: none !important;
  }
}

@media (hover: hover) and (min-width: 901px) {
  html[data-site-visual-theme="astro"] .home-service-footer-icon {
    transition:
      color var(--behoss-motion-fast) var(--behoss-ease),
      transform var(--behoss-motion-standard) var(--behoss-ease);
  }

  html[data-site-visual-theme="astro"]
    .is-featured-service:is(:hover, :focus-visible)
    .home-service-footer-icon {
    color: var(--astro-accent) !important;
  }
}

html[data-site-visual-theme="astro"] .home-service-price {
  display: inline-flex;
  align-items: baseline;
  gap: 3px;
  color: var(--astro-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .home-service-price strong {
  color: var(--astro-ink) !important;
  font-size: 0.8125rem !important;
  font-weight: 680 !important;
  letter-spacing: -0.02em !important;
  line-height: 1 !important;
}

html[data-site-visual-theme="astro"] .home-service-price small {
  color: var(--astro-muted) !important;
  font-size: 0.75rem !important;
  font-weight: 680 !important;
  letter-spacing: 0.06em;
  line-height: 1 !important;
  text-transform: uppercase;
}

html[data-site-visual-theme="astro"]
  .home-service-price
  .behoss-plus-mark--home {
  color: transparent !important;
  font-weight: 650 !important;
  letter-spacing: 0.09em;
}

html[data-site-visual-theme="astro"] .home-card-header,
html[data-site-visual-theme="astro"] .home-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

html[data-site-visual-theme="astro"] .home-card-footer .home-note-social {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  letter-spacing: 0.06em !important;
}

html[data-site-visual-theme="astro"] .home-note-social img {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  object-fit: contain;
}

html[data-site-visual-theme="astro"] .home-card-kicker,
html[data-site-visual-theme="astro"] .home-card-index,
html[data-site-visual-theme="astro"] .home-card-footer span {
  color: var(--astro-muted) !important;
  font-size: 0.75rem !important;
  font-weight: 650 !important;
  letter-spacing: 0.1em !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

html[data-site-visual-theme="astro"] .home-card-index {
  font-variant-numeric: tabular-nums;
}

html[data-site-visual-theme="astro"] .home-card-main {
  margin-top: 28px;
}

html[data-site-visual-theme="astro"] .home-card-main > b {
  display: -webkit-box;
  overflow: hidden;
  color: var(--astro-ink) !important;
  font-size: 1.05rem !important;
  font-weight: 690 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.22 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

html[data-site-visual-theme="astro"] .home-card-main > p {
  display: -webkit-box;
  overflow: hidden;
  max-width: none;
  margin-top: 8px !important;
  font-size: 0.78rem !important;
  line-height: 1.48 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

html[data-site-visual-theme="astro"] .home-card-footer {
  margin-top: auto;
  padding-top: 15px;
  border-top: 1px solid color-mix(in srgb, var(--astro-line) 72%, transparent);
}

html[data-site-visual-theme="astro"] .is-popular-note .home-card-footer {
  width: 58%;
}

html[data-site-visual-theme="astro"] .home-x-author {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 4px;
}

html[data-site-visual-theme="astro"] .home-x-avatar {
  display: block;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: var(--astro-surface);
  object-fit: cover;
}

html[data-site-visual-theme="astro"] .home-x-avatar.is-avatar-loading {
  opacity: 0;
}

html[data-site-visual-theme="astro"] .home-x-identity {
  display: grid;
  gap: 1px;
}

html[data-site-visual-theme="astro"] .home-x-identity b {
  font-size: 0.78rem !important;
  line-height: 1.2;
}

html[data-site-visual-theme="astro"] .home-x-identity small {
  color: var(--astro-muted);
  font-size: 0.75rem;
}

html[data-site-visual-theme="astro"] .home-signal-card blockquote {
  display: -webkit-box;
  overflow: hidden;
  margin: 13px 0 0;
  color: var(--astro-ink);
  font-size: 0.84rem;
  font-weight: 590;
  letter-spacing: -0.012em;
  line-height: 1.48;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

html[data-site-visual-theme="astro"] .is-x-post .home-feature-card-surface {
  isolation: isolate;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

html[data-site-visual-theme="astro"] .home-x-slide {
  display: flex;
  flex: 1;
  min-height: 0;
  flex-direction: column;
  opacity: 1;
  transition: opacity var(--behoss-motion-carousel) var(--behoss-ease);
  will-change: opacity;
}

html[data-site-visual-theme="astro"] .home-x-slide.is-next {
  position: absolute;
  inset: 24px 26px;
  opacity: 0;
  transition: none;
}

html[data-site-visual-theme="astro"]
  .is-x-post
  .home-feature-card-surface.is-x-sliding
  .home-x-slide.is-current {
  opacity: 0;
}

html[data-site-visual-theme="astro"]
  .is-x-post
  .home-feature-card-surface.is-x-sliding
  .home-x-slide.is-next {
  opacity: 1;
  transition: opacity var(--behoss-motion-carousel) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  .is-x-post
  .home-feature-card-surface.is-x-resetting
  .home-x-slide {
  transition: none;
}

html[data-site-visual-theme="astro"]
  .is-x-post
  .home-feature-card-surface.is-x-resetting
  .home-x-slide.is-next {
  opacity: 0;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-meta {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--astro-muted);
  font-size: 0.75rem;
  font-weight: 650;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-date {
  letter-spacing: 0.08em;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-meta-separator {
  opacity: 0.72;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-like {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #f91880 !important;
  letter-spacing: 0;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-like span {
  color: inherit !important;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-like-icon {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  fill: currentColor;
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-source {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 15px;
  height: 15px;
  color: var(--astro-muted);
  transition:
    color 180ms var(--behoss-ease),
    transform 180ms var(--behoss-ease);
}

html[data-site-visual-theme="astro"] .is-x-post .home-x-source svg {
  width: 100%;
  height: 100%;
}

html[data-site-visual-theme="astro"] .is-x-post:hover .home-x-source,
html[data-site-visual-theme="astro"] .is-x-post:focus-visible .home-x-source {
  color: var(--astro-ink);
  transform: translate3d(1px, -1px, 0);
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] .home-x-slide {
    transition: none !important;
  }
}

html[data-site-visual-theme="astro"] .home-model-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

html[data-site-visual-theme="astro"] .home-model-list li {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  min-height: 28px;
  padding: 3px 0;
  border-bottom: 1px solid
    color-mix(in srgb, var(--astro-line) 72%, transparent);
}

html[data-site-visual-theme="astro"] .home-model-list img {
  display: block;
  width: 16px;
  height: 16px;
  justify-self: center;
  object-fit: contain;
}

html[data-site-visual-theme="astro"]
  .is-model-ranking
  .home-feature-card-surface {
  display: flex;
  flex-direction: column;
  padding-top: 15px !important;
  padding-bottom: 13px !important;
}

html[data-site-visual-theme="astro"] .home-model-list .model-provider-mark {
  display: grid;
  width: 17px;
  height: 17px;
  place-items: center;
  justify-self: center;
  border: 1px solid var(--astro-line);
  border-radius: 50%;
  color: var(--astro-muted) !important;
  font-size: 0.58rem !important;
  font-weight: 680 !important;
}

html[data-site-visual-theme="astro"] .home-model-list li > span,
html[data-site-visual-theme="astro"] .home-model-list small {
  color: var(--astro-muted) !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em;
}

html[data-site-visual-theme="astro"] .home-model-list .model-score {
  justify-self: end;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.04em;
}

html[data-site-visual-theme="astro"] .page-editor-toggle {
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 82;
  display: grid;
  place-items: center;
  min-width: 34px;
  padding: 13px 8px;
  border: 1px solid color-mix(in srgb, var(--astro-ink) 24%, transparent);
  border-right: 0;
  border-radius: 8px 0 0 8px;
  background: var(--astro-ink);
  color: var(--astro-canvas);
  box-shadow: 0 10px 30px rgb(0 0 0 / 12%);
  font: inherit;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
  transition:
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease);
  writing-mode: vertical-rl;
}

html[data-site-visual-theme="astro"] .page-editor-toggle:hover,
html[data-site-visual-theme="astro"] .page-editor-toggle:focus-visible,
html[data-site-visual-theme="astro"] .page-editor-toggle[aria-pressed="true"] {
  background: var(--astro-accent);
  color: #fff;
  box-shadow: 0 12px 34px
    color-mix(in srgb, var(--astro-accent) 28%, transparent);
}

html[data-site-visual-theme="astro"].page-editor-active .home-feature-card {
  cursor: default;
}

html[data-site-visual-theme="astro"] .cover-calibrator {
  position: fixed;
  z-index: 80;
  right: 50px;
  bottom: 24px;
  display: grid;
  width: 310px;
  max-height: min(780px, calc(100vh - 48px));
  gap: 10px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--astro-ink) 20%, transparent);
  border-radius: 12px;
  background: color-mix(in srgb, var(--astro-canvas) 94%, transparent);
  box-shadow: 0 18px 50px rgb(0 0 0 / 18%);
  color: var(--astro-ink);
  backdrop-filter: blur(18px);
  overscroll-behavior: contain;
  overflow-y: auto;
  transform-origin: right bottom;
}

html[data-site-visual-theme="astro"] .cover-calibrator[hidden] {
  display: none;
}

html[data-site-visual-theme="astro"] .cover-calibrator header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 2px;
  margin-bottom: 4px;
}

html[data-site-visual-theme="astro"] .cover-calibrator header > div {
  display: grid;
  gap: 2px;
}

html[data-site-visual-theme="astro"] .cover-calibrator header strong {
  font-size: 0.84rem;
}
html[data-site-visual-theme="astro"] .cover-calibrator header span,
html[data-site-visual-theme="astro"] .cover-calibrator label,
html[data-site-visual-theme="astro"] .cover-calibrator output {
  font-size: 0.68rem;
}
html[data-site-visual-theme="astro"] .cover-calibrator header span,
html[data-site-visual-theme="astro"] .cover-calibrator output {
  color: var(--astro-muted);
}

html[data-site-visual-theme="astro"] .cover-calibrator fieldset {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 12px 0 3px;
  border: 0;
  border-top: 1px solid var(--astro-line);
}

html[data-site-visual-theme="astro"] .cover-calibrator legend {
  padding: 0 8px 0 0;
  color: var(--astro-ink);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

html[data-site-visual-theme="astro"] .cover-calibrator .cover-editor-hint {
  color: var(--astro-muted);
  font-size: 0.66rem;
}

html[data-site-visual-theme="astro"] .cover-image-direct-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

html[data-site-visual-theme="astro"] .cover-image-scale-status {
  color: var(--astro-muted);
  font-size: 0.68rem;
}

html[data-site-visual-theme="astro"]
  .cover-calibrator
  [data-cover-image-edit-toggle][aria-pressed="true"] {
  border-color: var(--astro-accent);
  background: var(--astro-accent);
  color: #fff;
}

html[data-site-visual-theme="astro"] .cover-calibrator label {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 5px 10px;
}

html[data-site-visual-theme="astro"] .cover-calibrator input {
  grid-column: 1 / -1;
  width: 100%;
}
html[data-site-visual-theme="astro"] .cover-calibrator label.is-disabled {
  opacity: 0.38;
}
html[data-site-visual-theme="astro"] .cover-calibrator label.is-disabled input {
  cursor: not-allowed;
}
html[data-site-visual-theme="astro"] .cover-calibrator .cover-select {
  grid-template-columns: 76px 1fr;
}
html[data-site-visual-theme="astro"] .cover-calibrator select {
  width: 100%;
  min-height: 28px;
  border: 1px solid var(--astro-line);
  border-radius: 3px;
  background: var(--astro-surface);
  color: var(--astro-ink);
  font: inherit;
  font-size: 0.68rem;
}
html[data-site-visual-theme="astro"] .cover-calibrator footer {
  display: flex;
  justify-content: flex-end;
}
html[data-site-visual-theme="astro"] .cover-calibrator button {
  padding: 7px 11px;
  border: 1px solid var(--astro-line);
  border-radius: 3px;
  background: var(--astro-surface);
  color: var(--astro-ink);
  font: inherit;
  font-size: 0.68rem;
  cursor: pointer;
}

html[data-site-visual-theme="astro"] .cover-calibrator button:hover,
html[data-site-visual-theme="astro"] .cover-calibrator button:focus-visible,
html[data-site-visual-theme="astro"] .cover-calibrator input:focus-visible,
html[data-site-visual-theme="astro"] .cover-calibrator textarea:focus-visible,
html[data-site-visual-theme="astro"] .cover-calibrator select:focus-visible {
  border-color: var(--astro-accent);
  outline: 2px solid color-mix(in srgb, var(--astro-accent) 45%, transparent);
  outline-offset: 2px;
}

html[data-site-visual-theme="astro"]
  .cover-calibrator
  :is([data-home-editor-save], [data-editor-save]):not(:disabled) {
  border-color: var(--astro-accent);
  background: var(--astro-accent);
  color: #fff;
}

html[data-site-visual-theme="astro"] .home-model-list a {
  min-width: 0;
  overflow: hidden;
  color: var(--astro-ink);
  font-size: 0.76rem;
  font-weight: 660;
  letter-spacing: -0.01em;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .home-model-list a:hover,
html[data-site-visual-theme="astro"] .home-model-list a:focus-visible {
  color: var(--astro-accent);
}

html[data-site-visual-theme="astro"] .home-model-source {
  align-self: flex-end;
  margin-top: auto;
  padding-top: 4px;
}

html[data-site-visual-theme="astro"] .home-model-source {
  color: var(--astro-muted);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .home-model-source:hover,
html[data-site-visual-theme="astro"] .home-model-source:focus-visible {
  color: var(--astro-ink);
}

@media (hover: hover) and (min-width: 901px) {
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card {
    z-index: 1;
    overflow: hidden !important;
    background-color: transparent !important;
    box-shadow: none !important;
    perspective: 900px;
    transform: translate3d(0, 0, 0) scale(1) !important;
    transform-origin: center bottom;
    transform-style: preserve-3d;
    transition:
      background-color var(--behoss-motion-standard) var(--behoss-ease),
      border-color var(--behoss-motion-standard) var(--behoss-ease),
      box-shadow var(--behoss-motion-content) var(--behoss-ease),
      transform var(--behoss-motion-content) var(--behoss-ease) !important;
    will-change: transform;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within) {
    z-index: 8;
    background-color: var(--behoss-interaction-hover-surface) !important;
    box-shadow: var(--behoss-content-lift-shadow) !important;
    transform: translate3d(0, -5px, 0) scale(1.008) !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within)::before {
    background: var(--astro-accent) !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card
    .home-feature-card-surface {
    transform: translate3d(0, 0, 0) !important;
    transform-style: preserve-3d;
    transition: transform var(--behoss-motion-content) var(--behoss-ease) !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within)
    .home-feature-card-surface {
    transform: translate3d(0, -2px, 8px) !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:active {
    box-shadow: var(--behoss-content-active-shadow) !important;
    transform: translate3d(0, -2px, 0) scale(1.003) !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:active
    .home-feature-card-surface {
    transform: translate3d(0, -1px, 3px) !important;
  }

  html.cover-image-editing[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within),
  html[data-site-visual-theme="astro"].page-editor-active
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within) {
    box-shadow: none !important;
    transform: none !important;
  }

  html.cover-image-editing[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within)
    .home-feature-card-surface,
  html[data-site-visual-theme="astro"].page-editor-active
    body.home-landing-page
    .home-feature-card:is(:hover, :focus-visible, :focus-within)
    .home-feature-card-surface {
    transform: none !important;
  }
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.home-landing-page main,
  html[data-site-visual-theme="astro"] .home-page-section,
  html[data-site-visual-theme="astro"] .home-page-section .ap-inner {
    min-height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    ) !important;
  }

  html[data-site-visual-theme="astro"] .home-page-section {
    height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    ) !important;
  }

  html[data-site-visual-theme="astro"] .home-feature-links {
    transform: translateY(clamp(40px, 5.5vh, 54px)) !important;
  }
}

/* Service page */
html[data-site-visual-theme="astro"] .ap-service-section {
  min-height: min(860px, calc(100vh - var(--astro-header-height))) !important;
  padding-block: clamp(84px, 10vw, 150px) !important;
}

html[data-site-visual-theme="astro"] .ap-service-section:nth-of-type(even) {
  background: var(--astro-soft) !important;
}

html[data-site-visual-theme="astro"] .ap-agent-stage,
html[data-site-visual-theme="astro"] .ap-device-stage,
html[data-site-visual-theme="astro"] .ap-network-stage {
  border: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-surface) !important;
  box-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-agent-stage::before,
html[data-site-visual-theme="astro"] .ap-agent-stage::after,
html[data-site-visual-theme="astro"] .ap-device-stage::before,
html[data-site-visual-theme="astro"] .ap-device-stage::after,
html[data-site-visual-theme="astro"] .ap-network-stage::before,
html[data-site-visual-theme="astro"] .ap-network-stage::after {
  display: none !important;
}

html[data-site-visual-theme="astro"] .ap-agent-icon {
  border: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-canvas) !important;
  box-shadow: none !important;
  transform: none !important;
}

html[data-site-visual-theme="astro"] .ap-agent-icon figcaption,
html[data-site-visual-theme="astro"] .ap-network-list span,
html[data-site-visual-theme="astro"] .ap-network-list b {
  color: var(--astro-ink) !important;
  text-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-network-list li {
  border-color: var(--astro-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Service page: keep the editorial scale inside the two-column layout. */
html[data-site-visual-theme="astro"]
  body.support-page
  .ap-service-section
  .ap-copy {
  width: 100%;
  max-width: 32rem;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .ap-service-section
  .ap-lede {
  max-width: 32rem;
  margin-top: 28px;
  text-align: left;
  text-wrap: pretty;
}

html[data-site-visual-theme="astro"] body.support-page .ap-service-actions {
  margin-top: 32px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .ap-service-section
  .ap-metrics {
  gap: 8px;
}

html[data-site-visual-theme="astro"] body.support-page .ap-agent-stage,
html[data-site-visual-theme="astro"] body.support-page .ap-network-panel {
  border: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-surface) !important;
  box-shadow: none !important;
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"] body.support-page .ap-agent-icon {
  width: 96px;
  border: 0 !important;
  background: transparent !important;
}

html[data-site-visual-theme="astro"] body.support-page .ap-agent-logo {
  width: 76px;
  height: 76px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .ap-agent-icon
  figcaption {
  min-height: 1.25rem;
  font-size: 0.84rem;
  font-weight: 620;
  line-height: 1.25;
}

html[data-site-visual-theme="astro"]
  body.support-page
  #mac-ecosystem
  .ap-device-stage {
  border: 0 !important;
  background: transparent !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  #network-config
  .ap-network-panel
  h3,
html[data-site-visual-theme="astro"]
  body.support-page
  #network-config
  .ap-network-list
  b {
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  #network-config
  .ap-network-list
  li {
  color: var(--astro-muted) !important;
  border-color: var(--astro-line) !important;
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.support-page .ap-service-section {
    min-height: calc(100svh - var(--astro-header-height)) !important;
    padding-block: clamp(76px, 8vw, 112px) !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .ap-service-section
    .ap-split,
  html[data-site-visual-theme="astro"]
    body.support-page
    #mac-ecosystem
    .ap-split.is-reversed {
    min-height: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(56px, 7vw, 88px);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .ap-service-section
    .ap-title {
    max-width: 100%;
    font-size: clamp(3.25rem, 5.1vw, 4.35rem) !important;
    letter-spacing: -0.05em !important;
    line-height: 1.02 !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .ap-service-section
    .ap-lede {
    font-size: clamp(1rem, 1.25vw, 1.12rem) !important;
    line-height: 1.72 !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    #ai-agent
    .ap-agent-stage,
  html[data-site-visual-theme="astro"]
    body.support-page
    #mac-ecosystem
    .ap-device-stage,
  html[data-site-visual-theme="astro"]
    body.support-page
    #network-config
    .ap-network-panel {
    width: 100%;
    max-width: 32.5rem;
    min-height: 360px;
    height: 360px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    #ai-agent
    .ap-agent-stage {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px 38px;
    padding: 36px 32px 32px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    #mac-ecosystem
    .ap-copy {
    justify-self: end;
    transform: none;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    #network-config
    .ap-network-panel {
    padding: 42px 48px;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  html[data-site-visual-theme="astro"]
    body.support-page
    .ap-service-section
    .ap-split,
  html[data-site-visual-theme="astro"]
    body.support-page
    #mac-ecosystem
    .ap-split.is-reversed {
    gap: 44px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    #ai-agent
    .ap-agent-stage {
    gap: 24px 20px;
    padding-inline: 22px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    #network-config
    .ap-network-panel {
    padding-inline: 36px;
  }
}

/* Solutions: single-screen horizontal service carousel. */
html[data-site-visual-theme="astro"] body.support-page .ap-main {
  min-height: calc(
    100svh - var(--astro-header-height) - var(--behoss-footer-height)
  );
  overflow: visible;
}

html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
  display: grid;
  min-height: calc(
    100svh - var(--astro-header-height) - var(--behoss-footer-height)
  );
  grid-template-rows: auto auto auto;
  align-items: start;
  align-content: start;
  gap: 24px;
  padding: 18px 0 20px;
  background: var(--astro-canvas);
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-viewport {
  width: min(calc(100% - var(--astro-shell-inset)), var(--astro-shell-max));
  height: clamp(500px, 61vh, 585px);
  min-height: 0;
  grid-row: 2;
  margin-inline: auto;
  overflow: hidden;
  border-block: 1px solid var(--astro-line);
  background: var(--astro-surface);
  touch-action: pan-y;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-viewport:focus-visible {
  outline: 1px solid var(--astro-ink);
  outline-offset: 4px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-track {
  display: flex;
  width: 100%;
  height: 100%;
  visibility: hidden;
  transform: translate3d(calc(var(--solutions-position, 1) * -100%), 0, 0);
  transition: transform var(--behoss-motion-carousel) var(--behoss-ease);
  will-change: transform;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-track[data-solutions-ready="true"] {
  visibility: visible;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-track.is-jumping {
  transition: none;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section {
  display: grid;
  flex: 0 0 100%;
  min-height: 0 !important;
  height: 100%;
  align-items: center;
  padding: clamp(46px, 5.2vw, 68px) !important;
  background: var(--astro-surface) !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section.ap-gray {
  background: var(--astro-soft) !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section.ap-light {
  background: var(--astro-soft) !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section
  .ap-split {
  width: 100%;
  min-height: 0;
  grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
  gap: clamp(46px, 5.4vw, 72px);
  transform: none;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section
  .ap-copy {
  display: flex;
  width: 100%;
  max-width: 27rem;
  min-height: clamp(336px, 40vh, 390px);
  flex-direction: column;
  justify-content: center;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section
  .ap-kicker {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 10px;
  margin-bottom: 0 !important;
  color: var(--astro-ink) !important;
  font-size: 0.74rem !important;
  letter-spacing: 0.2em !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section
  .ap-kicker::before {
  width: 18px;
  height: 1px;
  flex: 0 0 18px;
  background: var(--astro-accent);
  content: "";
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section
  .ap-title {
  max-width: 100%;
  margin-top: 10px !important;
  font-size: clamp(2.95rem, 4.4vw, 3.9rem) !important;
  letter-spacing: -0.05em !important;
  line-height: 1.01 !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-section
  .ap-lede {
  width: min(26.25rem, 100%);
  max-width: 26.25rem;
  margin-top: 22px;
  font-family: "PingFang SC", "Hiragino Sans GB", sans-serif !important;
  font-size: clamp(0.95rem, 1.12vw, 1.04rem) !important;
  font-weight: 400 !important;
  font-kerning: none;
  line-height: 1.64 !important;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-character;
  text-wrap: wrap;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-service-actions {
  width: fit-content;
  margin-top: 24px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-metrics {
  flex-wrap: nowrap;
  gap: 0;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-metrics
  span {
  min-height: 22px;
  padding: 0 12px;
  border: 0;
  border-radius: 0;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.015em;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-metrics
  span:first-child {
  padding-left: 0;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-metrics
  span
  + span {
  border-left: 1px solid var(--astro-line);
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .bh-cta--major {
  min-height: 44px;
  padding-inline: 30px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-agent-stage,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-device-stage,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-panel {
  width: 100%;
  max-width: 33rem;
  min-height: 336px;
  height: clamp(336px, 40vh, 390px);
  justify-self: end;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-agent-stage {
  max-width: 29rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 10px;
  padding: 16px 6px;
  border-inline: 0 !important;
  border-block: 1px solid var(--astro-line) !important;
  background: linear-gradient(
    to bottom,
    transparent calc(50% - 0.5px),
    var(--astro-line) calc(50% - 0.5px),
    var(--astro-line) calc(50% + 0.5px),
    transparent calc(50% + 0.5px)
  ) !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-agent-icon {
  width: 100%;
  height: 100%;
  min-width: 0;
  align-content: center;
  border: 0 !important;
  background: transparent !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-agent-logo {
  width: 60px;
  height: 60px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-copy,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-copy,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-copy {
  justify-content: flex-start;
  padding-top: 8px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-title,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-title,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-title {
  margin-top: 14px !important;
  font-size: clamp(3.05rem, 4.65vw, 4rem) !important;
  line-height: 1.02 !important;
}

@media (min-width: 900px) {
  html[lang="en"][data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-title,
  html[lang="ja"][data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-title,
  html[lang="ja"][data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-title {
    font-size: clamp(2.85rem, 3.85vw, 3.25rem) !important;
    letter-spacing: -0.035em !important;
  }
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-lede,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-lede,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-lede {
  width: min(25rem, 100%);
  max-width: 25rem;
  margin-top: 30px;
  font-size: clamp(0.98rem, 1.18vw, 1.08rem) !important;
  line-height: 1.68 !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-service-actions,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-service-actions,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-service-actions {
  margin-top: 30px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #ai-agent
  .ap-metrics
  span,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-metrics
  span,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-metrics
  span {
  min-height: 24px;
  font-size: 0.8rem;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .ap-agent-icon
  figcaption {
  width: 100%;
  min-height: 1.9rem;
  font-size: 0.76rem;
  font-weight: 600;
  text-align: center;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-copy {
  justify-self: start;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-device-stage {
  justify-self: end;
  justify-items: center;
  transform: none;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #mac-ecosystem
  .ap-device-stage
  img {
  width: min(82%, 430px);
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-panel {
  display: grid;
  max-width: 29rem;
  align-content: stretch;
  padding: 0;
  border-inline: 0 !important;
  border-block: 1px solid var(--astro-line) !important;
  background: transparent !important;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-list {
  display: grid;
  width: 100%;
  height: 100%;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  background:
    linear-gradient(
      to right,
      transparent calc(50% - 0.5px),
      var(--astro-line) calc(50% - 0.5px),
      var(--astro-line) calc(50% + 0.5px),
      transparent calc(50% + 0.5px)
    ),
    linear-gradient(
      to bottom,
      transparent calc(50% - 0.5px),
      var(--astro-line) calc(50% - 0.5px),
      var(--astro-line) calc(50% + 0.5px),
      transparent calc(50% + 0.5px)
    );
  list-style: none;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-list
  li {
  display: flex;
  min-width: 0;
  align-items: stretch;
  justify-content: center;
  flex-direction: column;
  padding: clamp(18px, 2vw, 26px);
  border: 0 !important;
  text-align: left;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-value {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 9px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-value
  b {
  font-size: clamp(1.5rem, 2.05vw, 1.82rem);
  font-weight: 650;
  letter-spacing: -0.035em;
  line-height: 1;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  #network-config
  .ap-network-value
  > span {
  color: var(--astro-muted) !important;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.08em;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-controls {
  width: min(calc(100% - var(--astro-shell-inset)), var(--astro-shell-max));
  grid-row: 1;
  margin-inline: auto;
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    width: min(calc(100% - var(--astro-shell-inset)), var(--astro-content-max));
    margin-inline: auto;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-viewport,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-controls {
    width: 100%;
  }
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel
  .solutions-carousel-cta {
  min-width: 142px;
  padding-inline: 23px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-actions {
  display: flex;
  grid-row: 3;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 10px;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-actions
  .solutions-carousel-cta {
  grid-row: auto;
  margin-top: 0;
  place-self: auto;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-actions
  .solutions-carousel-cta:not(.is-primary):hover,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-actions
  .solutions-carousel-cta:not(.is-primary):focus-visible {
  border-color: var(--astro-ink) !important;
  background: var(--astro-canvas) !important;
  color: var(--astro-ink) !important;
  transform: translateY(-2px) !important;
}

@media (min-width: 1101px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    gap: clamp(24px, 2.7vh, 28px);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-actions {
    margin-top: clamp(8px, 1.2vh, 12px);
  }
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  transform: translateY(-2px);
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-tabs
  button {
  display: grid;
  place-items: center;
  min-height: 2.75rem;
  padding: 0 0.25rem;
  border: 0;
  border-bottom: 1px solid var(--astro-line);
  background: transparent;
  color: var(--astro-muted);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 620;
  letter-spacing: 0.02em;
  line-height: 1.2;
  cursor: pointer;
  transition:
    border-color var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-tabs
  button[aria-selected="true"] {
  border-bottom: 2px solid var(--astro-ink);
  color: var(--astro-ink);
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-tabs
  button:not([aria-selected="true"]):hover,
html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-tabs
  button:not([aria-selected="true"]):focus-visible {
  border-bottom-color: var(--astro-ink);
  background: transparent;
  box-shadow: none;
  color: var(--astro-ink);
  transform: none;
}

html[data-site-visual-theme="astro"]
  body.support-page
  .solutions-carousel-tabs
  button:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--astro-ink) 34%, transparent);
  outline-offset: 3px;
}

/* Full-window desktop: preserve the established vertical scale inside the
   shared 1180px project rail. This remains scoped to the solutions page. */
@media (min-width: 1500px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    gap: 26px;
    padding-block: 20px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-viewport {
    height: clamp(560px, 61vh, 600px);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section {
    padding: 52px !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section
    .ap-split {
    max-width: 1180px;
    margin-inline: auto;
    gap: 96px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section
    .ap-copy {
    max-width: 31rem;
    min-height: 410px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section
    .ap-title {
    font-size: clamp(3.9rem, 3.35vw, 4.3rem) !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section
    .ap-lede {
    width: min(29rem, 100%);
    max-width: 29rem;
    font-size: 1.08rem !important;
    line-height: 1.68 !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-copy,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-copy,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-copy {
    justify-self: end;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-agent-stage,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-network-panel {
    max-width: 32rem;
    min-height: 410px;
    height: 410px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-agent-stage {
    max-width: 30rem;
    justify-self: end;
    transform: translateX(18px);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-copy,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-copy,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-copy {
    padding-top: 26px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-network-panel {
    justify-self: start;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-agent-stage {
    column-gap: 12px;
    padding-inline: 8px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-title,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-title,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-title {
    margin-top: 16px !important;
    font-size: clamp(4rem, 3.45vw, 4.45rem) !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-title {
    font-size: 3.9rem !important;
    min-height: clamp(8.16rem, 7.04vw, 9.08rem);
  }

  html[lang="ja"][data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-title,
  html[lang="ja"][data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-title {
    font-size: clamp(3.55rem, 3.15vw, 3.85rem) !important;
  }

  html[lang="en"][data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-title {
    font-size: clamp(3.25rem, 2.95vw, 3.55rem) !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-lede,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-lede,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-lede {
    width: min(29rem, 100%);
    max-width: 29rem;
    margin-top: 34px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-service-actions,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-service-actions,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-service-actions {
    margin-top: 36px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-metrics
    span,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-metrics
    span,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-metrics
    span {
    min-height: 26px;
    font-size: 0.82rem;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-agent-logo {
    width: 64px;
    height: 64px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-agent-icon
    figcaption {
    font-size: 0.8rem;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .solutions-carousel-cta {
    margin-top: 10px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-device-stage {
    max-width: 32rem;
    min-height: 410px;
    height: 410px;
    justify-self: end;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-copy {
    justify-self: end;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-network-panel {
    max-width: 30rem;
    padding: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-track {
    transition: none;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    gap: 12px;
    padding-block: 6px;
  }
}

@media (max-width: 900px) {
  html[data-site-visual-theme="astro"] body.support-page .ap-main,
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    min-height: auto;
  }

  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    grid-template-rows: auto auto auto;
    gap: 16px;
    padding-block: 28px 24px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-viewport {
    height: auto;
    max-height: none;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section {
    height: auto;
    min-height: 720px !important;
    padding: 34px 24px !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section
    .ap-split {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-agent-stage,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-device-stage,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-network-panel {
    max-width: 100%;
    min-height: 250px;
    height: 250px;
    justify-self: stretch;
  }
}

/* Consulting form and dialogs */
html[data-site-visual-theme="astro"] .ap-consult-hero,
html[data-site-visual-theme="astro"] .ap-paid-section,
html[data-site-visual-theme="astro"] .ap-tool-library,
html[data-site-visual-theme="astro"] .ap-about-system {
  padding-block: clamp(80px, 10vw, 144px) !important;
  background: var(--astro-canvas) !important;
  background-image: none !important;
}

html[data-site-visual-theme="astro"] .ap-consult-panel,
html[data-site-visual-theme="astro"] .ap-result,
html[data-site-visual-theme="astro"] .ap-paid-card,
html[data-site-visual-theme="astro"] .ap-note-dialog {
  border: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-surface) !important;
  background-image: none !important;
  box-shadow: 0 24px 80px rgba(21, 23, 26, 0.08) !important;
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"] .ap-note-dialog {
  overscroll-behavior: contain;
}

html[data-site-visual-theme="astro"] .ap-consult-panel::before,
html[data-site-visual-theme="astro"] .ap-consult-panel::after,
html[data-site-visual-theme="astro"] .ap-paid-card::before,
html[data-site-visual-theme="astro"] .ap-paid-card::after {
  display: none !important;
}

html[data-site-visual-theme="astro"] .ap-select-field,
html[data-site-visual-theme="astro"] .ap-select-field select,
html[data-site-visual-theme="astro"] .ap-email-capture input,
html[data-site-visual-theme="astro"] .ap-note-dialog textarea {
  border-color: var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-canvas) !important;
  box-shadow: none !important;
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"] .ap-select-field span,
html[data-site-visual-theme="astro"] .ap-result h2,
html[data-site-visual-theme="astro"] .ap-result h3,
html[data-site-visual-theme="astro"] .ap-paid-card h3 {
  color: var(--astro-ink) !important;
  text-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-result p,
html[data-site-visual-theme="astro"] .ap-paid-card p {
  color: var(--astro-muted) !important;
}

html[data-site-visual-theme="astro"] .ap-result-block {
  border-color: var(--astro-line) !important;
  border-radius: 0 !important;
  background: var(--astro-canvas) !important;
  box-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-note-modal {
  background: rgba(21, 23, 26, 0.62) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

html[data-site-visual-theme="astro"] .ap-note-dialog::backdrop {
  background: rgba(21, 23, 26, 0.62) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

/* Workshop */
html[data-site-visual-theme="astro"] body.workshop-page .ap-tool-library {
  --workshop-tab-height: 44px;
  --workshop-top-space: 18px;
  --workshop-min-space: 10px;
  --workshop-card-height: clamp(
    480px,
    calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height) -
        var(--workshop-top-space) - var(--workshop-tab-height) -
        (var(--workshop-min-space) * 2)
    ),
    680px
  );
  --workshop-balanced-space: max(
    var(--workshop-min-space),
    calc(
      (
          100svh - var(--astro-header-height) - var(--behoss-footer-height) -
            var(--workshop-top-space) - var(--workshop-tab-height) -
            var(--workshop-card-height)
        ) /
        2
    )
  );
  box-sizing: border-box !important;
  min-height: calc(
    100svh - var(--astro-header-height) - var(--behoss-footer-height)
  ) !important;
  padding: var(--workshop-top-space) 0 var(--workshop-balanced-space) !important;
  align-items: start !important;
  overflow: visible !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-tool-library
  > .ap-inner {
  display: grid !important;
  gap: var(--workshop-balanced-space) !important;
  transform: none !important;
}

html[data-site-visual-theme="astro"] body.workshop-page .workshop-category-nav {
  width: 100% !important;
  margin: 0 auto 1.1rem !important;
  transform: translateY(-2px);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0 0.25rem;
  border: 0;
  border-bottom: 1px solid var(--astro-line);
  background: transparent;
  color: var(--astro-muted);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 620;
  letter-spacing: 0.02em;
  line-height: 1.2;
  cursor: pointer;
  transition:
    border-color var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button:not([aria-selected="true"]):not(:disabled):hover,
html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button:not([aria-selected="true"]):not(:disabled):focus-visible {
  border-bottom-color: var(--astro-ink);
  background: transparent;
  box-shadow: none;
  color: var(--astro-ink);
  transform: none;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button[aria-selected="true"] {
  border-bottom: 2px solid var(--astro-ink);
  color: var(--astro-ink);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--astro-ink) 34%, transparent);
  outline-offset: 3px;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button:disabled {
  cursor: default;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button:disabled:hover,
html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-tabs
  button:disabled:focus-visible {
  border-bottom-color: var(--astro-line);
  color: var(--astro-muted);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .workshop-category-status {
  margin-left: 0.125rem;
  color: var(--astro-muted);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 0.85rem;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .ap-project-showcase {
  display: grid !important;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.85fr) !important;
  gap: clamp(16px, 2vw, 28px) !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
  min-height: 0 !important;
  height: var(--workshop-card-height, 680px);
  border: 1px solid var(--astro-line) !important;
  background: var(--astro-soft) !important;
}

@media (min-width: 1121px) {
  html[data-site-visual-theme="astro"]
    body.workshop-page
    .workshop-category-nav {
    margin-bottom: 0 !important;
  }

  html[data-site-visual-theme="astro"] .ap-project-showcase {
    grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.6fr) !important;
    gap: 0 !important;
  }

  html[data-site-visual-theme="astro"] .ap-project-picker-viewport {
    grid-auto-rows: calc(100% / 3) !important;
  }
}

@media (min-width: 901px) and (min-height: 708px) {
  html[data-site-visual-theme="astro"] body.workshop-page .ap-tool-library {
    height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    ) !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-tool-library
    > .ap-inner {
    height: 100%;
  }
}

html[data-site-visual-theme="astro"] .ap-project-showcase[hidden] {
  display: none !important;
}

html[data-site-visual-theme="astro"] .ap-project-feature,
html[data-site-visual-theme="astro"] .ap-project-picker,
html[data-site-visual-theme="astro"] .workshop-empty-panel {
  min-width: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--astro-soft) !important;
  box-shadow: none !important;
}

html[data-site-visual-theme="astro"] .workshop-empty-panel {
  border: 1px solid var(--astro-line) !important;
  border-top-width: 2px !important;
}

html[data-site-visual-theme="astro"] .ap-project-feature {
  display: flex !important;
  position: relative;
  min-height: 0 !important;
  width: 100% !important;
  height: 100% !important;
  align-self: stretch !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: clamp(26px, 4vw, 54px) !important;
  color: var(--astro-ink) !important;
  transition:
    background-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
    color 180ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

html[data-site-visual-theme="astro"] .ap-project-feature-link {
  position: absolute;
  z-index: 2;
  inset: 0;
}

html[data-site-visual-theme="astro"] .ap-project-feature-link[hidden] {
  display: none;
}

html[data-site-visual-theme="astro"] .ap-project-feature-link:focus-visible {
  outline: 2px solid var(--astro-accent);
  outline-offset: -2px;
}

html[data-site-visual-theme="astro"] .ap-project-feature-meta,
html[data-site-visual-theme="astro"] .ap-project-picker-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  color: var(--astro-muted) !important;
  font-size: 0.76rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase;
}

html[data-site-visual-theme="astro"] .ap-project-feature-copy {
  max-width: 620px !important;
  margin-block: auto !important;
  padding-block: 28px !important;
}

html[data-site-visual-theme="astro"] .ap-project-feature-label {
  margin: 0 0 12px !important;
  color: var(--astro-muted) !important;
  font-size: 0.76rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase;
}

html[data-site-visual-theme="astro"] .ap-project-feature h2 {
  margin: 0 !important;
  color: var(--astro-ink) !important;
  font-size: clamp(2rem, 4vw, 3.7rem) !important;
  font-weight: 650 !important;
  letter-spacing: -0.05em !important;
  line-height: 1.05 !important;
}

html[data-site-visual-theme="astro"] .ap-project-feature-copy > p:last-child {
  max-width: 42ch !important;
  margin: 18px 0 0 !important;
  color: var(--astro-muted) !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
}

html[data-site-visual-theme="astro"] .ap-project-state {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid var(--astro-line);
  border-radius: 0;
  color: var(--astro-muted);
  background: var(--astro-soft);
  font-size: 0.74rem;
  font-weight: 650;
  letter-spacing: 0.04em;
  line-height: 1;
}

html[data-site-visual-theme="astro"] .ap-project-picker {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-left: 1px solid var(--astro-line) !important;
  background: var(--astro-soft) !important;
  transition:
    background-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 180ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

html[data-site-visual-theme="astro"] .workshop-empty-panel {
  display: grid;
  min-height: 640px;
  place-items: center;
  color: var(--astro-muted);
  font-size: 0.9rem;
}

html[data-site-visual-theme="astro"] .workshop-empty-panel p {
  margin: 0;
}

html[data-site-visual-theme="astro"] .workshop-empty-panel[hidden] {
  display: none !important;
}

html[data-site-visual-theme="astro"] .ap-project-picker-header {
  min-height: 56px !important;
  padding: 0 18px !important;
  border-bottom: 1px solid var(--astro-line) !important;
}

html[data-site-visual-theme="astro"] .ap-project-picker-header h2 {
  margin: 0 !important;
  color: var(--astro-ink) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}

html[data-site-visual-theme="astro"] .ap-project-picker-viewport {
  display: grid !important;
  grid-auto-rows: minmax(160px, 1fr) !important;
  gap: 0 !important;
  height: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  align-self: stretch !important;
  padding: 0 !important;
  background: var(--astro-soft) !important;
  overflow-y: hidden !important;
  overscroll-behavior: contain;
  scrollbar-color: var(--astro-line) transparent;
  scrollbar-width: thin;
}

@media (min-width: 1121px) {
  html[data-site-visual-theme="astro"] .ap-project-picker-viewport {
    grid-auto-rows: calc(100% / 3) !important;
  }

  html[data-site-visual-theme="astro"] .ap-project-option {
    min-height: 0 !important;
  }
}

html[data-site-visual-theme="astro"] .ap-project-option {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 160px !important;
  padding: 16px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  color: var(--astro-ink) !important;
  background: var(--astro-soft) !important;
  font: inherit !important;
  text-align: left !important;
  cursor: pointer;
  transition:
    background-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

html[data-site-visual-theme="astro"] .ap-project-option:first-child {
  border-top: 1px solid var(--astro-line) !important;
}

html[data-site-visual-theme="astro"] .ap-project-option:hover,
html[data-site-visual-theme="astro"] .ap-project-option:focus-visible,
html[data-site-visual-theme="astro"] .ap-project-option[aria-selected="true"] {
  background: color-mix(
    in srgb,
    var(--astro-surface) 32%,
    var(--astro-soft)
  ) !important;
}

html[data-site-visual-theme="astro"] .ap-project-option[aria-selected="true"] {
  box-shadow: inset 2px 0 0
    color-mix(in srgb, var(--astro-ink) 45%, transparent);
}

html[data-site-visual-theme="astro"] .ap-project-option:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--astro-ink) 34%, transparent);
  outline-offset: -3px;
}

html[data-site-visual-theme="astro"] .ap-project-option.ap-project-option-empty,
html[data-site-visual-theme="astro"]
  .ap-project-option.ap-project-option-empty:hover,
html[data-site-visual-theme="astro"]
  .ap-project-option.ap-project-option-empty:focus-visible,
html[data-site-visual-theme="astro"]
  .ap-project-option.ap-project-option-empty[aria-selected="true"] {
  position: relative;
  isolation: isolate;
  display: block !important;
  overflow: hidden;
  min-height: 0 !important;
  padding: 0 !important;
  border-bottom-color: var(--astro-line) !important;
  color: #fff !important;
  background-color: #d8d6d2 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 0%) 28%, rgb(8 8 10 / 66%) 100%),
    url("/behoss/assets/workshop/published/more-coming-card.jpg") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
  box-shadow: none !important;
  cursor: default;
  outline: none;
}

html[data-site-visual-theme="astro"]
  .ap-project-option.ap-project-option-empty
  .ap-project-option-copy-image {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  display: block !important;
  min-width: 0 !important;
  text-align: center;
  transform: translate(-50%, -50%);
}

html[data-site-visual-theme="astro"]
  .ap-project-option.ap-project-option-empty
  .ap-project-option-copy-image
  strong {
  display: block;
  overflow: visible;
  color: #fff !important;
  font-size: 1.35rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
  text-shadow: 0 2px 18px rgb(0 0 0 / 54%);
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .ap-project-option-index {
  color: var(--astro-muted) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
}

html[data-site-visual-theme="astro"] .ap-project-option-copy {
  display: grid !important;
  min-width: 0 !important;
  align-content: start !important;
  gap: 8px !important;
}

html[data-site-visual-theme="astro"] .ap-project-option-copy strong {
  overflow: hidden;
  color: var(--astro-ink) !important;
  font-size: 1rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .ap-project-option-copy small {
  display: -webkit-box;
  overflow: hidden;
  color: var(--astro-muted) !important;
  font-size: 0.78rem !important;
  line-height: 1.5 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"] {
  position: relative;
  isolation: isolate;
  display: block !important;
  overflow: hidden;
  padding: 0 !important;
  border-bottom-color: rgb(255 255 255 / 18%) !important;
  color: #fff !important;
  background-color: #24131d !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 8%) 18%, rgb(8 8 10 / 78%) 100%),
    url("/behoss/assets/workshop/published/surge-sentry-card.jpg") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"]::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(115deg, rgb(255 67 158 / 14%), transparent 58%);
  content: "";
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"]
  .ap-project-option-copy-image,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"]
  .ap-project-option-copy-image {
  position: absolute;
  inset: auto 16px 16px;
  z-index: 1;
  display: block !important;
  min-width: 0 !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"]
  .ap-project-option-copy-image
  strong,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"]
  .ap-project-option-copy-image
  strong {
  display: block;
  overflow: visible;
  color: #fff !important;
  font-size: 1.35rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
  text-overflow: clip;
  text-shadow: 0 2px 18px rgb(0 0 0 / 45%);
  white-space: nowrap;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"]:hover,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"]:focus-visible,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="surge-sentry"][aria-selected="true"] {
  background-color: #24131d !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 2%) 18%, rgb(8 8 10 / 78%) 100%),
    url("/behoss/assets/workshop/published/surge-sentry-card.jpg") !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"] {
  position: relative;
  isolation: isolate;
  display: block !important;
  overflow: hidden;
  padding: 0 !important;
  border-bottom-color: rgb(255 255 255 / 18%) !important;
  color: #fff !important;
  background-color: #b9b3b2 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 2%) 18%, rgb(8 8 10 / 72%) 100%),
    url("/behoss/assets/workshop/published/apple-video-subtitles-card.jpg") !important;
  background-position:
    center center,
    72% center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"]::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(115deg, rgb(255 255 255 / 16%), transparent 58%);
  content: "";
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"]:hover,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"]:focus-visible,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="apple-video-subtitles"][aria-selected="true"] {
  background-color: #b9b3b2 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 2%) 18%, rgb(8 8 10 / 72%) 100%),
    url("/behoss/assets/workshop/published/apple-video-subtitles-card.jpg") !important;
  background-position:
    center center,
    72% center !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="agent-memory"] {
  position: relative;
  isolation: isolate;
  display: block !important;
  overflow: hidden;
  padding: 0 !important;
  border-bottom-color: rgb(76 82 64 / 24%) !important;
  color: #fff !important;
  background-color: #f3ead7 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 2%) 18%, rgb(8 8 10 / 52%) 100%),
    url("/behoss/assets/workshop/published/tapir-memory-card.jpg") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="agent-memory"]
  .ap-project-option-copy-image {
  position: absolute;
  inset: auto 16px 16px;
  z-index: 1;
  display: block !important;
  min-width: 0 !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="agent-memory"]
  .ap-project-option-copy-image
  strong {
  display: block;
  overflow: visible;
  color: #fff !important;
  font-size: 1.35rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
  text-overflow: clip;
  text-shadow: 0 2px 18px rgb(0 0 0 / 54%);
  white-space: nowrap;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="agent-memory"]:hover,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="agent-memory"]:focus-visible,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="agent-memory"][aria-selected="true"] {
  background-color: #f3ead7 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 2%) 18%, rgb(8 8 10 / 52%) 100%),
    url("/behoss/assets/workshop/published/tapir-memory-card.jpg") !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="dnspeed"] {
  position: relative;
  isolation: isolate;
  display: block !important;
  overflow: hidden;
  padding: 0 !important;
  border-bottom: 0 !important;
  color: #fff !important;
  background-color: #f5f4f1 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 0%) 44%, rgb(8 8 10 / 56%) 100%),
    url("/behoss/assets/workshop/published/dnspeed-card.png") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="dnspeed"]
  .ap-project-option-copy-image {
  position: absolute;
  inset: auto 16px 16px;
  z-index: 1;
  display: block !important;
  min-width: 0 !important;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="dnspeed"]
  .ap-project-option-copy-image
  strong {
  display: block;
  overflow: visible;
  color: #fff !important;
  font-size: 1.35rem !important;
  font-weight: 650 !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
  text-overflow: clip;
  text-shadow: 0 2px 18px rgb(0 0 0 / 54%);
  white-space: nowrap;
}

html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="dnspeed"]:hover,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="dnspeed"]:focus-visible,
html[data-site-visual-theme="astro"]
  .ap-project-option[data-project-key="dnspeed"][aria-selected="true"] {
  background-color: #f5f4f1 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 0%) 44%, rgb(8 8 10 / 56%) 100%),
    url("/behoss/assets/workshop/published/dnspeed-card.png") !important;
}

/* Reuse this state when Surge Sentry is promoted to the large project card. */
html[data-site-visual-theme="astro"]
  .ap-project-feature[data-project-key="surge-sentry"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff !important;
  background-color: #24131d !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 3%) 18%, rgb(8 8 10 / 58%) 100%),
    url("/behoss/assets/workshop/published/wizard-feature.jpg") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="surge-sentry"]
  .ap-project-feature-meta,
html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="surge-sentry"]
  .ap-project-feature-label {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="surge-sentry"]
  .ap-project-feature-copy {
  position: relative;
  z-index: 1;
  display: block !important;
  max-width: min(34rem, 82%) !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="surge-sentry"]
  h2 {
  display: block !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(3.75rem, 5.6vw, 4.8rem) !important;
  font-weight: 650;
  letter-spacing: -0.06em;
  line-height: 1;
  text-shadow: 0 3px 26px rgb(0 0 0 / 62%);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="surge-sentry"]
  .ap-project-feature-copy
  > p:last-child {
  display: block !important;
  max-width: 34em !important;
  margin: 16px 0 0 !important;
  color: rgb(255 255 255 / 84%) !important;
  font-size: clamp(1rem, 1.35vw, 1.15rem) !important;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.45 !important;
  text-shadow: 0 2px 16px rgb(0 0 0 / 64%);
}

html[data-site-visual-theme="astro"]
  .ap-project-feature[data-project-key="apple-video-subtitles"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff !important;
  background-color: #1a1714 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 3%) 18%, rgb(8 8 10 / 62%) 100%),
    url("/behoss/assets/workshop/published/apple-video-subtitles-feature-f1-apple-tv.png") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="apple-video-subtitles"]
  .ap-project-feature-meta,
html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="apple-video-subtitles"]
  .ap-project-feature-label {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="apple-video-subtitles"]
  .ap-project-feature-copy {
  position: relative;
  z-index: 1;
  display: block !important;
  max-width: min(34rem, 82%) !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="apple-video-subtitles"]
  h2 {
  display: block !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(3.75rem, 5.6vw, 4.8rem) !important;
  font-weight: 650;
  letter-spacing: -0.06em;
  line-height: 1;
  text-shadow: 0 3px 26px rgb(0 0 0 / 62%);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="apple-video-subtitles"]
  .ap-project-feature-copy
  > p:last-child {
  display: block !important;
  max-width: 34em !important;
  margin: 16px 0 0 !important;
  color: rgb(255 255 255 / 84%) !important;
  font-size: clamp(1rem, 1.35vw, 1.15rem) !important;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.45 !important;
  text-shadow: 0 2px 16px rgb(0 0 0 / 64%);
}

html[data-site-visual-theme="astro"]
  .ap-project-feature[data-project-key="agent-memory"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff !important;
  background-color: #d8d6d2 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 0%) 42%, rgb(8 8 10 / 64%) 100%),
    url("/behoss/assets/workshop/published/tapir-memory-feature.jpg") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="agent-memory"]
  .ap-project-feature-meta,
html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="agent-memory"]
  .ap-project-feature-label {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="agent-memory"]
  .ap-project-feature-copy {
  position: relative;
  z-index: 1;
  display: block !important;
  max-width: min(34rem, 82%) !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="agent-memory"]
  h2 {
  display: block !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(3.75rem, 5.6vw, 4.8rem) !important;
  font-weight: 650;
  letter-spacing: -0.06em;
  line-height: 1;
  text-shadow: 0 3px 26px rgb(0 0 0 / 62%);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="agent-memory"]
  .ap-project-feature-copy
  > p:last-child {
  display: block !important;
  max-width: 34em !important;
  margin: 16px 0 0 !important;
  color: rgb(255 255 255 / 84%) !important;
  font-size: clamp(1rem, 1.35vw, 1.15rem) !important;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.45 !important;
  text-shadow: 0 2px 16px rgb(0 0 0 / 64%);
}

html[data-site-visual-theme="astro"]
  .ap-project-feature[data-project-key="dnspeed"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: #fff !important;
  background-color: #f5f4f1 !important;
  background-image:
    linear-gradient(180deg, rgb(8 8 10 / 0%) 58%, rgb(8 8 10 / 68%) 100%),
    url("/behoss/assets/workshop/published/dnspeed-feature-tv-v5-16x9-perspective.png") !important;
  background-position:
    center center,
    center center !important;
  background-size: cover, cover !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="dnspeed"]
  .ap-project-feature-meta,
html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="dnspeed"]
  .ap-project-feature-label {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="dnspeed"]
  .ap-project-feature-copy {
  position: relative;
  z-index: 1;
  display: block !important;
  max-width: min(34rem, 82%) !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="dnspeed"]
  h2 {
  display: block !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: clamp(3.75rem, 5.6vw, 4.8rem) !important;
  font-weight: 650;
  letter-spacing: -0.06em;
  line-height: 1;
  text-shadow: 0 3px 26px rgb(0 0 0 / 62%);
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-feature[data-project-key="dnspeed"]
  .ap-project-feature-copy
  > p:last-child {
  display: block !important;
  max-width: 34em !important;
  margin: 16px 0 0 !important;
  color: rgb(255 255 255 / 84%) !important;
  font-size: clamp(1rem, 1.35vw, 1.15rem) !important;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.45 !important;
  text-shadow: 0 2px 16px rgb(0 0 0 / 64%);
}

html[data-site-visual-theme="astro"] body.workshop-page .ap-project-feature,
html[data-site-visual-theme="astro"] body.workshop-page .ap-project-option {
  transition:
    transform 170ms cubic-bezier(0.18, 0.86, 0.22, 1),
    opacity 110ms ease,
    background-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
    border-color 180ms cubic-bezier(0.22, 1, 0.36, 1),
    color 180ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-option:not(:disabled):not(.ap-project-option-empty) {
  border-bottom: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .ap-project-option:not(:disabled):not(
    .ap-project-option-empty
  ):focus-visible {
  outline: 2px solid var(--astro-accent) !important;
  outline-offset: -3px !important;
}

@media (hover: hover) and (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-feature {
    position: relative;
    z-index: 1;
    perspective: 900px;
    transform: translate3d(0, 0, 0) scale(1);
    transform-origin: center;
    transform-style: preserve-3d;
    box-shadow: 0 0 0 transparent !important;
    transition:
      background-color var(--behoss-motion-standard) var(--behoss-ease),
      border-color var(--behoss-motion-standard) var(--behoss-ease),
      box-shadow var(--behoss-motion-content) var(--behoss-ease),
      color var(--behoss-motion-standard) var(--behoss-ease),
      transform var(--behoss-motion-content) var(--behoss-ease) !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-feature:hover {
    z-index: 8;
    box-shadow: var(--behoss-content-lift-shadow) !important;
    transform: translate3d(0, -2px, 0) scale(1.012) !important;
  }

  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-picker {
    position: relative;
    z-index: 2;
    overflow: visible !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-picker-viewport {
    overflow: visible !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty) {
    position: relative;
    z-index: 1;
    perspective: 900px;
    transform: translate3d(0, 0, 0) scale(1);
    transform-origin: center;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    box-shadow: 0 0 0 transparent;
    transition:
      background-color var(--behoss-motion-standard) var(--behoss-ease),
      border-color var(--behoss-motion-standard) var(--behoss-ease),
      box-shadow var(--behoss-motion-content) var(--behoss-ease),
      transform var(--behoss-motion-content) var(--behoss-ease) !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty):is(
      :hover,
      :focus-visible
    ) {
    z-index: 8;
    box-shadow: var(--behoss-content-lift-shadow) !important;
    transform: perspective(900px) translate3d(-2px, -3px, 18px) rotateX(1.4deg)
      rotateY(-1.6deg) scale(1.012) !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty)
    .ap-project-option-copy-image {
    transform: translate3d(0, 0, 0);
    transition: transform var(--behoss-motion-content) var(--behoss-ease);
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty):is(
      :hover,
      :focus-visible
    )
    .ap-project-option-copy-image {
    transform: translate3d(0, -1px, 24px);
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty):active {
    box-shadow: var(--behoss-content-active-shadow) !important;
    transform: perspective(900px) translate3d(0, -1px, 8px) rotateX(0.4deg)
      rotateY(-0.5deg) scale(1.004) !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty):active
    .ap-project-option-copy-image {
    transform: translate3d(0, 0, 10px);
  }
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .is-project-swap-exiting {
  opacity: 0 !important;
  transform: translate3d(var(--project-swap-exit-x), 0, 0) !important;
}

html[data-site-visual-theme="astro"]
  body.workshop-page
  .is-project-swap-entering {
  opacity: 0 !important;
  transform: translate3d(var(--project-swap-enter-x), 0, 0) !important;
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-feature,
  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-option {
    transition: none;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-feature:hover,
  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty):is(
      :hover,
      :focus-visible,
      :active
    ) {
    box-shadow: none !important;
    transform: none !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-option:not(:disabled):not(.ap-project-option-empty)
    .ap-project-option-copy-image {
    transition: none !important;
    transform: none !important;
  }
}

/* Knowledge library */
html[data-site-visual-theme="astro"] .library-page .ap-library-section {
  min-height: calc(100vh - var(--astro-header-height)) !important;
}

html[data-site-visual-theme="astro"] .ap-library-intro {
  max-width: 900px;
  margin-bottom: clamp(48px, 6vw, 80px);
}

html[data-site-visual-theme="astro"] .ap-library-intro .ap-title {
  max-width: 11ch;
}

html[data-site-visual-theme="astro"] .ap-library-intro .ap-lede {
  max-width: 680px;
  margin-top: 24px;
}

html[data-site-visual-theme="astro"] .ap-library-grid article {
  min-height: 210px !important;
}

/* About */
html[data-site-visual-theme="astro"] .about-page .ap-about-hero {
  display: grid !important;
  min-height: 100% !important;
  position: relative;
  isolation: isolate;
  overflow: visible;
  place-items: center;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  transform: none !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-intro {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  position: relative;
  z-index: 1;
  width: min(100%, 39rem) !important;
  max-width: 39rem !important;
  margin: 0 auto !important;
  background: transparent;
  justify-self: center !important;
  text-align: left !important;
  transform: translateY(-28px) !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-copy {
  max-width: none !important;
  margin: 0 !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-portrait {
  align-self: center;
  width: clamp(6.9rem, 9vw, 7.85rem);
  margin: 0 auto clamp(1.9rem, 3vw, 2.55rem) !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-portrait img {
  display: block;
  width: 100%;
  height: auto !important;
  aspect-ratio: 1;
  border: 1px solid var(--astro-line);
  border-radius: 50%;
  object-fit: cover;
  object-position: center 32%;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-manifesto {
  display: grid;
  gap: clamp(1.35rem, 2vw, 1.7rem);
  color: color-mix(
    in srgb,
    var(--astro-ink) 70%,
    var(--astro-canvas)
  ) !important;
  font-family: var(--behoss-font-ui-cjk);
  font-size: clamp(1.06rem, 1.34vw, 1.15rem) !important;
  font-weight: 430 !important;
  letter-spacing: 0.006em !important;
  line-height: 1.92 !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-manifesto p {
  margin: 0 !important;
  color: inherit !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-manifesto p + p {
  padding-top: 0 !important;
  border-top: 0 !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-signature {
  align-self: end;
  margin: clamp(1.4rem, 2.1vw, 1.85rem) 0 0 !important;
  color: var(--astro-ink) !important;
  font-size: clamp(2.15rem, 3.65vw, 2.85rem) !important;
  font-weight: 400 !important;
  letter-spacing: -0.075em !important;
  line-height: 0.8 !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-signature--snell {
  font-family: "Snell Roundhand", "Apple Chancery", "Segoe Script", cursive;
}

html[data-site-visual-theme="astro"] .about-page .about-pressure-text {
  display: block;
  color: inherit !important;
}

html[data-site-visual-theme="astro"] .about-page .ap-about-manifesto p,
html[data-site-visual-theme="astro"] .about-page .ap-about-signature {
  position: relative;
}

html[data-site-visual-theme="astro"] .about-page .about-text-warp {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

html[data-site-visual-theme="astro"]
  .about-page
  .about-pressure-text.is-about-pressured {
  -webkit-mask-image: radial-gradient(
    circle 88px at var(--about-text-pressure-x) var(--about-text-pressure-y),
    transparent 0 60%,
    rgb(0 0 0 / 18%) 72%,
    rgb(0 0 0 / 62%) 86%,
    #000 100%
  );
  mask-image: radial-gradient(
    circle 88px at var(--about-text-pressure-x) var(--about-text-pressure-y),
    transparent 0 60%,
    rgb(0 0 0 / 18%) 72%,
    rgb(0 0 0 / 62%) 86%,
    #000 100%
  );
}

@media (max-width: 560px) {
  html[data-site-visual-theme="astro"] .about-page .ap-about-signature {
    font-size: clamp(1.75rem, 9vw, 2rem) !important;
  }
}

html[data-site-visual-theme="astro"] .about-hero-scan-field {
  display: none;
}

html[data-site-visual-theme="astro"] .about-contact-links {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] .about-page .about-hero-scan-field {
    --about-scan-x: 28%;
    --about-scan-y: 30%;
    --about-scan-ball-offset-x: 0px;
    --about-scan-ball-offset-y: 0px;
    position: fixed;
    z-index: 0;
    top: var(--astro-header-height);
    bottom: var(--behoss-footer-height);
    left: 50%;
    width: min(calc(100% - var(--astro-shell-inset)), var(--astro-content-max));
    display: block;
    overflow: hidden;
    contain: paint;
    pointer-events: none;
    transform: translateX(-50%);
  }

  html[data-site-visual-theme="astro"] .about-page .about-hero-scan-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 640px;
    height: 640px;
    opacity: 0.9;
    pointer-events: none;
    transform: translate3d(
      calc(var(--about-scan-x) - 320px),
      calc(var(--about-scan-y) - 320px),
      0
    );
    will-change: transform;
  }

  html[data-site-visual-theme="astro"] .about-page .about-hero-scan-lens {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: radial-gradient(
      circle,
      color-mix(in srgb, var(--astro-ink) 3.5%, transparent),
      color-mix(in srgb, var(--astro-ink) 1.2%, transparent) 42%,
      color-mix(in srgb, var(--astro-ink) 0.3%, transparent) 72%,
      transparent 100%
    );
    opacity: 0.72;
    transform: translate3d(
      calc(var(--about-scan-x) - 210px),
      calc(var(--about-scan-y) - 210px),
      0
    );
    will-change: transform;
  }

  html[data-site-visual-theme="astro"]
    .about-page
    .about-hero-scan-lens::before,
  html[data-site-visual-theme="astro"]
    .about-page
    .about-hero-scan-lens::after {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    content: "";
    pointer-events: none;
    transform: translate(
      calc(-50% + var(--about-scan-ball-offset-x)),
      calc(-50% + var(--about-scan-ball-offset-y))
    );
  }

  html[data-site-visual-theme="astro"]
    .about-page
    .about-hero-scan-lens::before {
    width: 76px;
    height: 56px;
    background: conic-gradient(
      from 138deg,
      color-mix(in srgb, var(--astro-ink) 5%, transparent),
      transparent 29%,
      color-mix(in srgb, white 30%, transparent) 44%,
      transparent 61%,
      color-mix(in srgb, var(--astro-ink) 4%, transparent)
    );
    filter: blur(2.2px);
    -webkit-mask-image: radial-gradient(
      ellipse,
      transparent 0 10%,
      rgb(0 0 0 / 18%) 28%,
      rgb(0 0 0 / 42%) 43%,
      rgb(0 0 0 / 18%) 60%,
      transparent 88%
    );
    mask-image: radial-gradient(
      ellipse,
      transparent 0 10%,
      rgb(0 0 0 / 18%) 28%,
      rgb(0 0 0 / 42%) 43%,
      rgb(0 0 0 / 18%) 60%,
      transparent 88%
    );
  }

  html[data-site-visual-theme="astro"]
    .about-page
    .about-hero-scan-lens::after {
    width: 12px;
    height: 12px;
    background:
      radial-gradient(
        ellipse 48% 30% at 32% 25%,
        white 0 22%,
        color-mix(in srgb, white 42%, transparent) 38%,
        transparent 72%
      ),
      linear-gradient(
        145deg,
        color-mix(in srgb, var(--astro-canvas) 86%, white) 4%,
        color-mix(in srgb, var(--astro-ink) 18%, var(--astro-canvas)) 34%,
        color-mix(in srgb, var(--astro-ink) 46%, var(--astro-canvas)) 68%,
        color-mix(in srgb, var(--astro-ink) 72%, var(--astro-canvas)) 100%
      );
    box-shadow:
      inset 1px 1px 1px color-mix(in srgb, white 78%, transparent),
      inset -1px -1px 1px color-mix(in srgb, var(--astro-ink) 46%, transparent),
      0 0 4px 1px color-mix(in srgb, var(--astro-canvas) 70%, transparent),
      0 0 8px 3px color-mix(in srgb, var(--astro-ink) 10%, transparent),
      0 0 18px 7px color-mix(in srgb, var(--astro-ink) 5%, transparent),
      0 0 30px 12px color-mix(in srgb, var(--astro-ink) 2.5%, transparent);
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] .about-page .about-hero-scan-grid,
  html[data-site-visual-theme="astro"] .about-page .about-hero-scan-lens {
    opacity: 0.66;
    will-change: auto;
  }
}

@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.about-page {
    overflow-y: hidden;
  }

  html[data-site-visual-theme="astro"] body.about-page .ap-main {
    min-height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    );
    overflow: clip;
  }

  html[data-site-visual-theme="astro"] body.about-page .ap-about-system {
    height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    );
    min-height: 0;
    padding-block: clamp(48px, 6vw, 80px) !important;
  }

  html[data-site-visual-theme="astro"] body.about-page .ap-about-hero {
    min-height: 100% !important;
  }
}

html[data-site-visual-theme="astro"] .about-qr-card {
  padding: 22px !important;
}

html[data-site-visual-theme="astro"] .about-qr-card img {
  width: 100% !important;
  max-width: 210px !important;
  aspect-ratio: 1;
  border: 1px solid var(--astro-line) !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

html[data-site-visual-theme="astro"] .about-qr-label,
html[data-site-visual-theme="astro"] .about-contact-email {
  color: var(--astro-ink) !important;
}

/* Footer */
html[data-site-visual-theme="astro"] .ap-footer {
  width: min(
    calc(100% - var(--astro-shell-inset)),
    var(--astro-content-max)
  ) !important;
  margin: auto auto 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: var(--astro-canvas) !important;
  color: var(--astro-ink) !important;
  font-size: 0.875rem !important;
  box-shadow: none !important;
}

html[data-site-visual-theme="astro"] .ap-footer .ap-footer-inner {
  width: 100% !important;
  min-height: var(--behoss-footer-height);
  margin: 0 !important;
  padding: 16px 0 !important;
  flex-direction: row-reverse;
  border-top: 1px solid var(--astro-line) !important;
  color: var(--astro-ink) !important;
}

html[data-site-visual-theme="astro"] .ap-footer-socials {
  display: inline-flex;
  align-items: center;
  gap: 0;
  --astro-footer-icon-size: 22px;
}

html[data-site-visual-theme="astro"]
  body.home-landing-page
  .ap-footer
  .ap-footer-inner {
  border-top: 0 !important;
}

html[data-site-visual-theme="astro"] .ap-footer-social {
  display: inline-flex;
  width: 44px;
  height: 44px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 4px;
  color: var(--astro-ink) !important;
  background: transparent;
  font: inherit;
  cursor: pointer;
  transition:
    color 140ms ease,
    background-color 140ms ease,
    box-shadow 140ms ease,
    transform 180ms ease !important;
}

html[data-site-visual-theme="astro"] .ap-footer-social-icon {
  display: block;
  flex: 0 0 var(--astro-footer-icon-size);
  width: var(--astro-footer-icon-size);
  height: var(--astro-footer-icon-size);
  min-width: var(--astro-footer-icon-size);
  min-height: var(--astro-footer-icon-size);
  box-sizing: border-box;
  line-height: 0;
}

html[data-site-visual-theme="astro"]
  .ap-footer-social:is(:hover, :focus-visible) {
  color: var(--astro-accent) !important;
  background: var(--behoss-interaction-hover-surface);
  box-shadow: var(--behoss-interaction-hover-shadow);
  transform: rotate(6deg);
}

html[data-site-visual-theme="astro"] .ap-footer-social:active {
  box-shadow: var(--behoss-interaction-active-shadow);
  transform: rotate(0deg);
}

@media (hover: hover) and (min-width: 901px) {
  html[data-site-visual-theme="astro"] .ap-footer-social {
    transform: translateY(0) !important;
  }

  html[data-site-visual-theme="astro"] .ap-footer-social-icon {
    transform: rotate(0deg);
    transform-origin: center;
    transition: transform var(--behoss-motion-standard) var(--behoss-ease);
  }

  html[data-site-visual-theme="astro"]
    .ap-footer-social:is(:hover, :focus-visible) {
    transform: translateY(var(--behoss-interaction-lift)) !important;
  }

  html[data-site-visual-theme="astro"]
    .ap-footer-social:is(:hover, :focus-visible)
    .ap-footer-social-icon {
    transform: rotate(6deg);
  }

  html[data-site-visual-theme="astro"] .ap-footer-social:active {
    transform: translateY(0) !important;
  }

  html[data-site-visual-theme="astro"]
    .ap-footer-social:active
    .ap-footer-social-icon {
    transform: rotate(0deg);
  }
}

html[data-site-visual-theme="astro"] .behoss-utility-control {
  min-width: 44px;
  min-height: 44px;
  border-color: transparent;
  background-color: transparent;
  box-shadow: none;
  color: var(--astro-ink);
  transition:
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease),
    transform var(--behoss-motion-standard) var(--behoss-ease) !important;
}

html[data-site-visual-theme="astro"] .behoss-share-control {
  width: 44px;
  height: 44px;
  padding: 0 !important;
  justify-content: center;
}

html[data-site-visual-theme="astro"]
  .behoss-utility-control:is(:hover, :focus-visible) {
  background-color: var(--behoss-interaction-hover-surface);
  box-shadow: var(--behoss-interaction-hover-shadow);
  color: var(--astro-accent) !important;
  transform: translateY(var(--behoss-interaction-lift));
}

html[data-site-visual-theme="astro"]
  .behoss-share-control:is(:hover, :focus-visible)
  svg {
  transform: rotate(6deg);
  transform-origin: center;
  transition: transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"] .behoss-utility-control:active {
  box-shadow: var(--behoss-interaction-active-shadow);
  transform: translateY(0);
}

html[data-site-visual-theme="astro"] .behoss-share-control:active svg {
  transform: rotate(0deg);
}

html[data-site-visual-theme="astro"] .ap-footer-social svg {
  width: var(--astro-footer-icon-size);
  height: var(--astro-footer-icon-size);
  padding: 0;
  opacity: 1;
}

html[data-site-visual-theme="astro"] .ap-footer-social img {
  display: block;
  width: var(--astro-footer-icon-size);
  height: var(--astro-footer-icon-size);
  border-radius: 7px;
  object-fit: contain;
  opacity: 1;
}

html[data-site-visual-theme="astro"] .ap-footer-mail-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 5px;
}

html[data-site-visual-theme="astro"] .ap-footer-mail-icon img {
  /* The official Mail artwork occupies 80.5% of its transparent canvas. */
  width: calc(var(--astro-footer-icon-size) / 0.805);
  height: calc(var(--astro-footer-icon-size) / 0.805);
  max-width: none;
  flex: none;
}

html[data-site-visual-theme="astro"] .ap-footer-monochrome-icon {
  filter: brightness(0);
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  .ap-footer-monochrome-icon {
  filter: none;
}

html[data-site-visual-theme="astro"] .ap-footer-copyright {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  color: var(--astro-ink) !important;
  font-family: var(--behoss-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 20.58px !important;
}

html[data-site-visual-theme="astro"] .ap-footer-legal {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"] .ap-footer-cookie-settings {
  display: inline-flex;
  padding: 0 12px;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 4px;
  font: inherit;
  text-decoration: underline;
  text-decoration-color: var(--astro-line);
  text-underline-offset: 0.2em;
  white-space: nowrap;
  cursor: pointer;
}

html[data-site-visual-theme="astro"] .ap-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Page shells fill a standard viewport through min-height only. Content may
   extend the document on shorter desktop windows instead of being clipped. */

/* Motion: crisp and restrained */
html[data-site-visual-theme="astro"] .reveal,
html[data-site-visual-theme="astro"] .ap-reveal {
  transition:
    opacity 520ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 520ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

@media (max-width: 900px) {
  html[data-site-visual-theme="astro"] {
    --astro-frame-inset: 32px;
    --astro-shell-inset: 32px;
  }

  html[data-site-visual-theme="astro"] .site-header.menu-open,
  html[data-site-visual-theme="astro"] .ap-header.is-open {
    height: 100dvh !important;
    min-height: 100dvh !important;
    background: var(--astro-canvas) !important;
    transition: none !important;
  }

  html[data-site-visual-theme="astro"] .site-header.menu-open .nav-shell,
  html[data-site-visual-theme="astro"] .ap-header.is-open .ap-nav {
    height: var(--astro-header-height) !important;
    min-height: var(--astro-header-height) !important;
  }

  html[data-site-visual-theme="astro"] .site-tools {
    top: auto !important;
    right: max(24px, env(safe-area-inset-right)) !important;
    bottom: max(20px, env(safe-area-inset-bottom)) !important;
    left: max(24px, env(safe-area-inset-left)) !important;
    grid-template-columns: 44px 44px minmax(0, 1fr) !important;
    column-gap: 12px !important;
    width: auto !important;
    justify-content: start !important;
    transform: none;
  }

  html[data-site-visual-theme="astro"] .site-tools::before {
    position: absolute;
    top: -16px;
    right: 0;
    left: 0;
    height: 1px;
    background: var(--astro-line);
    content: "";
  }

  html[data-site-visual-theme="astro"] .nav-shell,
  html[data-site-visual-theme="astro"] .ap-nav,
  html[data-site-visual-theme="astro"] .ap-inner {
    width: min(
      calc(100% - var(--astro-shell-inset)),
      var(--astro-shell-max)
    ) !important;
  }

  html[data-site-visual-theme="astro"] .ap-footer {
    padding: 0 !important;
  }

  html[data-site-visual-theme="astro"] .ap-footer .ap-footer-inner {
    min-height: 112px;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
  }

  html[data-site-visual-theme="astro"] .ap-footer-copyright {
    flex-direction: column;
    gap: 8px;
  }

  html[data-site-visual-theme="astro"] .ap-footer-legal {
    justify-content: center;
  }

  html[data-site-visual-theme="astro"] .nav-links,
  html[data-site-visual-theme="astro"] .ap-links {
    position: fixed !important;
    top: var(--astro-header-height) !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    align-content: start !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    gap: 0 !important;
    padding: 16px max(24px, env(safe-area-inset-right))
      calc(92px + env(safe-area-inset-bottom))
      max(24px, env(safe-area-inset-left)) !important;
    overflow-x: hidden;
    overflow-y: auto;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--astro-canvas) !important;
    box-shadow: none !important;
    overscroll-behavior: contain;
  }

  html[data-site-visual-theme="astro"] .nav-links > a,
  html[data-site-visual-theme="astro"] .ap-links > a {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 52px !important;
    justify-content: flex-start !important;
    padding: 14px 0 !important;
    border: 0 !important;
    font-size: 1rem !important;
    line-height: 24px !important;
    text-align: left !important;
  }

  html[data-site-visual-theme="astro"] .nav-links > a::after,
  html[data-site-visual-theme="astro"] .ap-links > a::after {
    right: auto;
    bottom: 8px;
    left: 0;
    width: 64px;
  }

  html[data-site-visual-theme="astro"] .site-header.menu-open .nav-shell,
  html[data-site-visual-theme="astro"] .ap-header.is-open .ap-nav {
    border-bottom-color: transparent !important;
  }

  html[data-site-visual-theme="astro"] .ap-menu-button span {
    transition: transform 180ms ease;
  }

  html[data-site-visual-theme="astro"]
    .ap-header.is-open
    .ap-menu-button
    span:first-child {
    transform: translateY(3px) rotate(45deg);
  }

  html[data-site-visual-theme="astro"]
    .ap-header.is-open
    .ap-menu-button
    span:last-child {
    transform: translateY(-3px) rotate(-45deg);
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .site-header
    .nav-links,
  html[data-site-visual-theme="astro"]
    body.apple-preview-page
    .ap-header
    .ap-links {
    padding: 16px max(24px, env(safe-area-inset-right))
      calc(92px + env(safe-area-inset-bottom))
      max(24px, env(safe-area-inset-left)) !important;
    justify-items: stretch !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .site-header
    .nav-links
    > a,
  html[data-site-visual-theme="astro"]
    body.apple-preview-page
    .ap-header
    .ap-links
    > a {
    width: 100% !important;
    min-height: 52px !important;
    padding: 14px 0 !important;
    line-height: 24px !important;
    justify-self: stretch !important;
  }

  html[data-site-visual-theme="astro"] .home-feature-links,
  html[data-site-visual-theme="astro"] .about-contact-links {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html[data-site-visual-theme="astro"] .home-feature-card,
  html[data-site-visual-theme="astro"] .about-qr-card {
    border-right: 1px solid var(--astro-line) !important;
    border-bottom: 1px solid var(--astro-line) !important;
  }

  html[data-site-visual-theme="astro"] .ap-project-matrix {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  html[data-site-visual-theme="astro"] {
    --astro-header-height: 64px;
    --astro-header-height-condensed: 56px;
    --astro-frame-inset: 24px;
    --astro-shell-inset: 24px;
  }

  html[data-site-visual-theme="astro"] .site-header,
  html[data-site-visual-theme="astro"] .ap-header,
  html[data-site-visual-theme="astro"] .nav-shell,
  html[data-site-visual-theme="astro"] .ap-nav {
    height: var(--astro-header-height) !important;
    min-height: var(--astro-header-height) !important;
  }

  html[data-site-visual-theme="astro"] .nav-links,
  html[data-site-visual-theme="astro"] .ap-links {
    top: var(--astro-header-height) !important;
  }

  html[data-site-visual-theme="astro"]
    .site-header.is-scrolled:not(.menu-open)
    .nav-links,
  html[data-site-visual-theme="astro"]
    .ap-header.is-scrolled:not(.is-open)
    .ap-links {
    top: var(--astro-header-height-condensed) !important;
  }

  html[data-site-visual-theme="astro"] .nav-shell,
  html[data-site-visual-theme="astro"] .ap-nav,
  html[data-site-visual-theme="astro"] .ap-inner {
    width: min(
      calc(100% - var(--astro-shell-inset)),
      var(--astro-shell-max)
    ) !important;
  }

  html[data-site-visual-theme="astro"] .home-page-section,
  html[data-site-visual-theme="astro"] .home-page-section .ap-inner {
    min-height: calc(100svh - var(--astro-header-height)) !important;
  }

  html[data-site-visual-theme="astro"] .home-page-section .ap-inner,
  html[data-site-visual-theme="astro"] .ap-consult-hero,
  html[data-site-visual-theme="astro"] .ap-paid-section,
  html[data-site-visual-theme="astro"] .ap-tool-library,
  html[data-site-visual-theme="astro"] .ap-about-system,
  html[data-site-visual-theme="astro"] .ap-service-section {
    padding-block: 64px !important;
  }

  html[data-site-visual-theme="astro"] .ap-tool-library {
    min-height: auto !important;
    padding-block: 40px !important;
  }

  html[data-site-visual-theme="astro"] .home-page-section .ap-about-copy,
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-page-section
    .ap-about-copy {
    max-width: 100% !important;
    min-height: 2.16em;
    font-size: clamp(2rem, 8vw, 2.35rem) !important;
    line-height: 1.08 !important;
  }

  html[data-site-visual-theme="astro"]
    .home-page-section
    .ap-about-copy
    .home-slogan-visual {
    width: 100%;
    white-space: normal;
  }

  html[data-site-visual-theme="astro"] .ap-title,
  html[data-site-visual-theme="astro"] .ap-about-heading {
    font-size: clamp(2.55rem, 13vw, 4.25rem) !important;
  }

  html[data-site-visual-theme="astro"] .home-feature-links,
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-links,
  html[data-site-visual-theme="astro"] .about-contact-links,
  html[data-site-visual-theme="astro"] .ap-project-matrix {
    grid-template-columns: 1fr !important;
    overflow: visible !important;
  }

  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-showcase {
    grid-template-columns: minmax(0, 1fr) !important;
    height: auto !important;
  }

  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-feature {
    min-height: min(
      520px,
      calc(100svh - var(--astro-header-height) - 48px)
    ) !important;
    height: auto !important;
    padding: 28px 24px !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-feature[data-project-key="dnspeed"] {
    background-position:
      center center,
      right center !important;
    background-size:
      cover,
      auto 112% !important;
  }

  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-picker {
    height: auto !important;
    border-top: 1px solid var(--astro-line) !important;
    border-left: 0 !important;
  }

  html[data-site-visual-theme="astro"]
    body.workshop-page
    .ap-project-picker-viewport {
    grid-auto-rows: minmax(128px, auto) !important;
    height: auto !important;
    overflow: visible !important;
  }

  html[data-site-visual-theme="astro"] body.workshop-page .ap-project-option {
    min-height: 128px !important;
  }

  html[data-site-visual-theme="astro"] .about-page .ap-about-intro {
    transform: translateY(-18px) !important;
  }

  html[data-site-visual-theme="astro"]
    body.apple-preview-page.workshop-page
    .ap-project-matrix {
    gap: 0 !important;
  }

  html[data-site-visual-theme="astro"] .home-feature-card,
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card,
  html[data-site-visual-theme="astro"] .about-qr-card,
  html[data-site-visual-theme="astro"] .ap-project-matrix article {
    min-height: 138px !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--astro-line) !important;
  }

  html[data-site-visual-theme="astro"] .home-feature-card-surface,
  html[data-site-visual-theme="astro"] .ap-project-matrix article {
    padding: 22px !important;
  }

  html[data-site-visual-theme="astro"] .ap-quote-actions,
  html[data-site-visual-theme="astro"] .ap-service-actions,
  html[data-site-visual-theme="astro"] .about-contact-actions {
    align-items: stretch !important;
  }

  html[data-site-visual-theme="astro"] .bh-cta--major {
    width: 100% !important;
    justify-content: center !important;
    border-radius: 0 !important;
  }

  html[data-site-visual-theme="astro"]
    body.behoss-insight-page
    #main-content.app-layout.max-w-4xl
    > .flex.w-full.items-center.justify-between.gap-6 {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  html[data-site-visual-theme="astro"]
    body.behoss-insight-page
    #main-content.app-layout.max-w-4xl
    > .flex.w-full.items-center.justify-between.gap-6
    > .ms-auto.flex-none {
    max-width: 100%;
    margin-inline-start: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] .site-header,
  html[data-site-visual-theme="astro"] .ap-header,
  html[data-site-visual-theme="astro"] .nav-shell,
  html[data-site-visual-theme="astro"] .ap-nav,
  html[data-site-visual-theme="astro"] .site-header .brand,
  html[data-site-visual-theme="astro"] .site-header .brand > span,
  html[data-site-visual-theme="astro"] .brand-logo,
  html[data-site-visual-theme="astro"] .ap-brand .brand-logo {
    transition: none !important;
    transform: none !important;
  }
}

html[data-site-visual-theme="astro"] body.subscription-page {
  font-family: var(--behoss-font-ui-cjk) !important;
}

html[data-site-visual-theme="astro"] body.subscription-page .ap-subscription {
  display: grid;
  min-height: calc(
    100svh - var(--astro-header-height) - var(--behoss-footer-height)
  ) !important;
  border-bottom: 0 !important;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-subscription-shell {
  display: grid;
  align-items: center;
  padding-block: clamp(34px, 5.4vh, 58px);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-title {
  margin: 0;
  color: var(--astro-ink);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-intro {
  display: grid;
  justify-items: center;
  gap: 8px;
  margin-bottom: 24px;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-subtitle {
  margin: 0;
  color: var(--astro-muted);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  max-width: 960px;
  margin-inline: auto;
  min-height: min(510px, calc(100svh - 224px));
  border: 0;
  background: transparent;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-plan {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
  padding: clamp(28px, 3vw, 40px);
  border: 1px solid var(--astro-line);
  color: var(--astro-ink);
  background: var(--astro-surface);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-plan.is-plus {
  color: var(--astro-ink);
  border-color: color-mix(
    in srgb,
    var(--behoss-brand-cyan) 32%,
    var(--astro-line) 68%
  );
  background:
    radial-gradient(
      circle at 100% 0%,
      color-mix(in srgb, var(--behoss-brand-white) 72%, transparent),
      transparent 52%
    ),
    linear-gradient(
      45deg,
      color-mix(in srgb, var(--astro-surface) 97%, var(--behoss-brand-blue) 3%)
        0%,
      color-mix(in srgb, var(--astro-surface) 96%, var(--behoss-brand-cyan) 4%)
        52%,
      color-mix(in srgb, var(--astro-surface) 94%, var(--behoss-brand-cyan) 6%)
        100%
    );
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--behoss-brand-cyan) 12%, transparent),
    0 14px 34px color-mix(in srgb, var(--behoss-brand-blue) 10%, transparent);
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  body.subscription-page
  .ap-membership-plan.is-plus {
  color: var(--astro-ink);
  border-color: color-mix(
    in srgb,
    var(--behoss-brand-white) 68%,
    var(--behoss-brand-cyan) 32%
  );
  background:
    radial-gradient(
      circle at 100% 0%,
      color-mix(in srgb, var(--behoss-brand-white) 10%, transparent),
      transparent 52%
    ),
    linear-gradient(
      45deg,
      color-mix(in srgb, #182437 90%, var(--behoss-brand-navy) 10%) 0%,
      color-mix(in srgb, #293c50 84%, var(--behoss-brand-blue) 16%) 52%,
      color-mix(in srgb, #506879 82%, var(--behoss-brand-cyan) 18%) 100%
    );
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--behoss-brand-cyan) 20%, transparent),
    0 14px 34px color-mix(in srgb, var(--behoss-brand-blue) 18%, transparent);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-heading {
  min-height: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-plan.is-plus
  .ap-membership-heading {
  border-bottom-color: color-mix(in srgb, var(--astro-canvas) 26%, transparent);
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  body.subscription-page
  .ap-membership-plan.is-plus
  .ap-membership-heading {
  border-bottom-color: var(--astro-line);
}

html[data-site-visual-theme="astro"]
  .behoss-tier-mark[data-membership-tier="free"],
html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-heading
  h2 {
  margin: 0;
  color: inherit;
  font-family: var(--behoss-font-ui-cjk);
  font-size: clamp(1.5rem, 1.9vw, 1.75rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -0.045em;
}

html[data-site-visual-theme="astro"] :is(.behoss-tier-mark, .behoss-plus-mark),
html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-heading
  :is(.ap-membership-free-mark, .ap-membership-plus-mark) {
  display: inline-block;
  background-clip: text;
  color: transparent;
  font-family: Futura, "Avenir Next", var(--behoss-font-sans);
  font-weight: 650;
  letter-spacing: 0.11em;
  line-height: 1;
  text-transform: uppercase;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

html[data-site-visual-theme="astro"]
  .behoss-tier-mark[data-membership-tier="free"],
html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-heading
  .ap-membership-free-mark {
  background-image: linear-gradient(
    112deg,
    color-mix(in srgb, var(--astro-ink) 90%, var(--astro-muted)) 0%,
    color-mix(in srgb, var(--astro-ink) 58%, var(--astro-muted)) 52%,
    color-mix(in srgb, var(--astro-ink) 75%, var(--astro-muted)) 100%
  );
}

html[data-site-visual-theme="astro"]
  :is(.behoss-plus-mark, .behoss-tier-mark[data-membership-tier="plus"]),
html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-heading
  .ap-membership-plus-mark {
  background-image: linear-gradient(
    112deg,
    var(--behoss-brand-navy) 0%,
    var(--behoss-brand-blue) 48%,
    var(--behoss-brand-cyan) 100%
  );
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  .behoss-tier-mark[data-membership-tier="free"],
html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  body.subscription-page
  .ap-membership-heading
  .ap-membership-free-mark {
  background-image: linear-gradient(
    112deg,
    color-mix(in srgb, var(--astro-ink) 82%, var(--astro-muted)) 0%,
    var(--astro-muted) 52%,
    color-mix(in srgb, var(--astro-ink) 66%, var(--astro-muted)) 100%
  );
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  :is(.behoss-plus-mark, .behoss-tier-mark[data-membership-tier="plus"]),
html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  body.subscription-page
  .ap-membership-heading
  .ap-membership-plus-mark {
  background-image: linear-gradient(
    112deg,
    var(--behoss-brand-white) 0%,
    var(--behoss-accent-strong) 42%,
    var(--behoss-brand-cyan) 100%
  );
}

@media (forced-colors: active) {
  html[data-site-visual-theme="astro"]
    :is(.behoss-tier-mark, .behoss-plus-mark),
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-heading
    :is(.ap-membership-free-mark, .ap-membership-plus-mark) {
    background: none;
    color: CanvasText;
    -webkit-text-fill-color: currentColor;
  }
}

html[data-site-visual-theme="astro"] .site-account-tier.behoss-tier-mark {
  color: transparent;
  font-size: 0.64rem;
  font-weight: 650;
  letter-spacing: 0.09em;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-heading-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  min-height: 28px;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 22px 0 0;
  color: inherit;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-price-symbol {
  align-self: flex-start;
  margin-top: 0.38em;
  color: var(--astro-muted);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-price-value {
  font-family: var(--behoss-font-ui-cjk);
  font-size: clamp(3.25rem, 4.1vw, 3.5rem);
  font-weight: 700;
  line-height: 0.92;
  letter-spacing: -0.07em;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-price-unit {
  font-family: var(--behoss-font-ui-cjk);
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-price-note {
  color: var(--astro-muted);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 0.85rem;
  font-weight: 400;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-description {
  margin: 18px 0 0;
  color: inherit;
  font-family: var(--behoss-font-ui-cjk);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-plan.is-plus
  .ap-membership-price-note {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  flex: 0 0 auto;
  min-width: 46px;
  min-height: 28px;
  padding: 0 10px;
  border: 1px solid
    color-mix(in srgb, var(--behoss-brand-blue) 58%, var(--astro-line) 42%);
  border-radius: 0;
  color: var(--behoss-brand-blue);
  background: color-mix(in srgb, var(--behoss-brand-blue) 10%, transparent);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"][data-site-color-mode="dark"]
  body.subscription-page
  .ap-membership-plan.is-plus
  .ap-membership-price-note {
  border-color: var(--behoss-brand-cyan);
  color: var(--behoss-brand-white);
  background: color-mix(
    in srgb,
    var(--behoss-brand-cyan) 26%,
    var(--astro-surface) 74%
  );
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-benefits {
  --membership-benefit-lead: 24px;
  --membership-feature-gap: clamp(14px, 1.7vh, 20px);
  display: flex;
  flex-direction: column;
  min-width: 0;
}

html[data-site-visual-theme="astro"] body.subscription-page .ap-membership-cta {
  display: flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 44px;
  min-height: 44px;
  margin: 24px 0 0;
  padding: 0 18px;
  border: 1px solid var(--astro-line);
  border-radius: var(--behoss-radius-control);
  color: var(--astro-ink);
  background: transparent;
  font: inherit;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  opacity: 1;
  cursor: default;
  transition:
    background-color var(--behoss-motion-fast) var(--behoss-ease),
    border-color var(--behoss-motion-fast) var(--behoss-ease),
    box-shadow var(--behoss-motion-fast) var(--behoss-ease),
    color var(--behoss-motion-fast) var(--behoss-ease),
    transform var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta
  > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta:not(:disabled) {
  cursor: pointer;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta:not(:disabled):is(:hover, :focus-visible) {
  border-color: color-mix(in srgb, var(--astro-accent) 34%, var(--astro-line));
  color: var(--astro-accent);
  background: var(--behoss-interaction-hover-surface);
  box-shadow: var(--behoss-interaction-hover-shadow);
  transform: translateY(var(--behoss-interaction-lift));
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta:not(:disabled):active {
  box-shadow: var(--behoss-interaction-active-shadow);
  transform: translateY(0);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta.is-primary {
  border-color: var(--behoss-action-accent);
  color: #fff;
  background-color: var(--behoss-action-accent);
  background-image: none;
  -webkit-text-fill-color: #fff;
  box-shadow: none;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta.is-primary:not(:disabled) {
  cursor: pointer;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta.is-primary:not(:disabled):is(:hover, :focus-visible) {
  border-color: var(--astro-accent);
  background: var(--astro-accent);
  box-shadow: var(--behoss-interaction-hover-shadow);
  transform: translateY(var(--behoss-interaction-lift));
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta.is-primary:not(:disabled):active {
  box-shadow: var(--behoss-interaction-active-shadow);
  transform: translateY(0);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog {
  width: min(
    var(--behoss-dialog-width-standard),
    calc(100vw - var(--behoss-dialog-viewport-inset))
  );
  max-width: none;
  max-height: calc(100dvh - var(--behoss-dialog-viewport-inset));
  padding: 0;
  border: var(--behoss-dialog-border);
  border-radius: 0;
  background: var(--astro-surface);
  color: var(--astro-ink);
  box-shadow: var(--behoss-dialog-shadow);
  transition: width var(--behoss-motion-standard) var(--behoss-ease);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog.is-payment-mode {
  width: min(
    var(--behoss-dialog-width-compact),
    calc(100vw - var(--behoss-dialog-viewport-inset))
  );
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog::backdrop {
  background: var(--behoss-dialog-backdrop);
  backdrop-filter: blur(8px);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal {
  display: grid;
  gap: 0;
  padding: var(--behoss-dialog-padding);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1.45rem;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-header
  h2 {
  margin: 0;
  font-size: clamp(1.35rem, 3vw, 1.8rem);
  line-height: 1.1;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-product {
  display: grid;
  gap: 0.9rem;
  padding: 0 0 1.35rem;
  border-bottom: 1px solid var(--astro-line);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-product-top {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  align-items: start;
  gap: 0.85rem;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-product-icon {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-icon-image {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 0.75rem;
  object-fit: contain;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-product-name {
  display: grid;
  gap: 0.35rem;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-product-name
  > span {
  color: var(--astro-muted);
  font-size: 0.72rem;
  letter-spacing: 0.04em;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-product-name
  > strong {
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  line-height: 1.12;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-description {
  margin-left: 3.85rem;
  max-width: 35rem;
  color: var(--astro-muted);
  font-size: 0.88rem;
  line-height: 1.6;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-benefits {
  display: grid;
  gap: 0.3rem;
  margin: -0.35rem 0 0 3.85rem;
  padding-left: 1.1rem;
  color: var(--astro-muted);
  font-size: 0.82rem;
  line-height: 1.5;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-settlement {
  display: grid;
  grid-template-columns: 1fr;
  align-items: end;
  padding: 1.2rem 0 1.1rem;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-inline-price {
  display: grid;
  position: relative;
  justify-items: end;
  gap: 0.15rem;
  text-align: right;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-inline-price
  > span {
  color: var(--astro-muted);
  font-size: 0.72rem;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-inline-price
  > strong {
  color: var(--astro-ink);
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
  line-height: 1;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-inline-price
  > strong.is-price-revealing {
  animation: subscription-benefit-price-reveal var(--behoss-motion-price-reveal)
    cubic-bezier(0.22, 1, 0.36, 1) both;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .subscription-purchase-price-ghost,
html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .subscription-purchase-price-particle {
  position: absolute;
  z-index: 2;
  pointer-events: none;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .subscription-purchase-price-ghost {
  color: var(--astro-ink);
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
  line-height: 1;
  animation: subscription-benefit-price-dissolve
    var(--behoss-motion-price-dissolve) cubic-bezier(0.32, 0, 0.67, 0) both;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .subscription-purchase-price-particle {
  color: var(--astro-ink);
  font-size: 0.62rem;
  font-weight: 700;
  line-height: 1;
  transform: translate(-50%, -50%);
  animation: subscription-benefit-price-particle
    var(--behoss-motion-price-particle) cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes subscription-benefit-price-reveal {
  from {
    opacity: 0;
    transform: translateY(0.2rem) scale(0.88);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes subscription-benefit-price-dissolve {
  from {
    opacity: 1;
    transform: scale(1);
  }

  to {
    opacity: 0;
    transform: scale(0.84);
  }
}

@keyframes subscription-benefit-price-particle {
  from {
    opacity: 0.9;
    transform: translate(-50%, -50%) scale(0.8);
  }

  to {
    opacity: 0;
    transform: translate(
        calc(-50% + var(--subscription-price-particle-x)),
        calc(-50% + var(--subscription-price-particle-y))
      )
      rotate(var(--subscription-price-particle-rotate)) scale(0.35);
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .benefit-purchase-inline-price
    > strong.is-price-revealing,
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .subscription-purchase-price-ghost,
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .subscription-purchase-price-particle {
    animation: none;
  }
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-pay {
  width: 100%;
  min-height: 3.15rem;
  border: 1px solid var(--astro-ink);
  border-radius: 0;
  background: transparent;
  color: var(--astro-ink);
  font: inherit;
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 650;
  cursor: pointer;
  opacity: 1;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-payment-view {
  display: grid;
  justify-items: center;
  gap: 0.75rem;
  padding: 0.1rem 0 0.15rem;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-payment-view[hidden] {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view
  .benefit-purchase-product,
html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view
  .benefit-purchase-settlement {
  display: none !important;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view {
  min-height: 0;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view
  .benefit-payment-view {
  display: grid !important;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-payment-view
  img {
  display: block;
  width: min(100%, 14rem);
  height: auto;
  border: 1px solid var(--astro-line);
  background: #fff;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-payment-instruction {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.18rem;
  margin: 0;
  color: var(--astro-muted);
  font-size: 0.86rem;
  line-height: 1;
  text-align: center;
  transform: translateY(-0.1rem);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-payment-instruction-copy {
  line-height: 1.45;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-payment-instruction-price {
  display: inline-block;
  color: var(--astro-ink);
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
  line-height: 1;
  vertical-align: middle;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-actions {
  display: block;
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--astro-ink);
  border-radius: 0;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-actions
  button {
  width: 100%;
  min-height: 3.15rem;
  padding: 0 0.65rem;
  border: 0;
  border-radius: 0;
  font: inherit;
  font-size: 1rem;
  line-height: 1.25;
  font-weight: 650;
  cursor: pointer;
  letter-spacing: 0.01em;
  transition:
    background-color 160ms ease,
    color 160ms ease,
    opacity 160ms ease;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-actions
  button
  > span {
  display: inline-block;
  backface-visibility: hidden;
  transition: transform 180ms ease;
  will-change: transform;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-actions
  .benefit-purchase-pay:focus-visible {
  outline: 2px solid var(--astro-ink);
  outline-offset: -3px;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view
  .benefit-purchase-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  height: calc(3.15rem + 2px);
  min-height: calc(3.15rem + 2px);
  margin-inline: auto;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view
  .benefit-purchase-remind:not([hidden]) {
  display: grid;
  place-items: center;
  padding-left: 0.65rem;
  background: var(--astro-ink);
  color: var(--astro-canvas);
  clip-path: polygon(9% 0, 100% 0, 100% 100%, 0 100%);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-modal.is-payment-view
  .benefit-purchase-remind:is(:hover, :focus-visible) {
  background: color-mix(in srgb, var(--astro-ink) 82%, var(--astro-canvas));
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .subscription-purchase-dialog
  .benefit-purchase-actions
  button:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

@media (max-width: 560px) {
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .benefit-purchase-product-top {
    grid-template-columns: 2.6rem minmax(0, 1fr);
    gap: 0.7rem;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .benefit-purchase-product-icon {
    width: 2.6rem;
    height: 2.6rem;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .benefit-purchase-description,
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .subscription-purchase-dialog
    .benefit-purchase-benefits {
    margin-left: 3.3rem;
  }
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta
  + .ap-membership-features {
  padding-top: var(--membership-benefit-lead);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-cta
  + .ap-membership-includes {
  margin-top: var(--membership-benefit-lead);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-features {
  display: grid;
  align-content: start;
  gap: var(--membership-feature-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-includes {
  margin: 0;
  color: inherit;
  font-family: var(--behoss-font-ui-cjk);
  font-size: clamp(0.9rem, 1.12vw, 0.96rem);
  font-weight: 600;
  line-height: 1.45;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-includes
  + .ap-membership-features {
  padding-top: var(--membership-feature-gap);
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-plan-note {
  margin: auto 0 0;
  padding-top: 28px;
  color: var(--astro-muted);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-features
  li {
  position: relative;
  margin: 0;
  padding-left: 28px;
  color: inherit;
  font-family: var(--behoss-font-ui-cjk);
  font-size: clamp(0.9rem, 1.12vw, 0.96rem);
  font-weight: 400;
  line-height: 1.45;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-icon-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-feature-icon {
  position: absolute;
  top: 0.12em;
  left: 0;
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-feature-main,
html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-feature-note {
  display: inline;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-feature-note {
  margin-left: 8px;
  color: var(--astro-muted);
  font-family: var(--behoss-font-ui-cjk);
  font-size: 0.85rem;
  font-weight: 400;
}

html[data-site-visual-theme="astro"]
  body.subscription-page
  .ap-membership-plan.is-plus
  .ap-membership-feature-note {
  color: var(--astro-dark-muted);
}

/* Subscription: share the same fixed-height budget as the other desktop
   pages. The shell consumes spare whitespace first, then continuously
   tightens the plans until their readable floor is reached. */
@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.subscription-page {
    display: flex;
    min-height: 100svh !important;
    flex-direction: column;
  }

  html[data-site-visual-theme="astro"] body.subscription-page .ap-main {
    display: flex;
    flex-direction: column;
    min-height: 0;
    flex: 1 1 auto;
  }

  html[data-site-visual-theme="astro"] body.subscription-page .ap-subscription {
    --subscription-shell-space: clamp(10px, calc(12.9svh - 99px), 34px);
    --subscription-intro-space: clamp(12px, calc(6.45svh - 34.4px), 24px);
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-height: 0 !important;
    flex: 1 0 auto;
    overflow: visible !important;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-subscription-shell {
    display: grid;
    box-sizing: border-box;
    grid-template-rows: auto minmax(0, 1fr);
    align-content: center;
    width: 100%;
    min-height: 0;
    padding-block: var(--subscription-shell-space);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-intro {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: var(--subscription-intro-space);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-intro.is-compact {
    flex-direction: row;
    gap: clamp(10px, calc(2.15svh - 5.5px), 16px);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-intro:not(.is-compact) {
    flex-direction: column;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-title,
  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-subtitle {
    flex: 0 0 auto;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-grid {
    width: min(100%, 960px);
    height: 100%;
    min-height: 544px;
    max-height: 654px;
    align-self: center;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-plan {
    box-sizing: border-box;
    grid-template-rows: 134px minmax(0, 1fr);
    min-height: 0;
    height: 100%;
    padding: clamp(20px, calc(5.38svh - 21px), 30px) clamp(24px, 2.2vw, 30px);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-price {
    margin-top: clamp(14px, calc(4.3svh - 17px), 22px);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-description {
    margin-top: clamp(12px, calc(3.23svh - 11px), 18px);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-benefits {
    --membership-benefit-lead: clamp(14px, calc(5.38svh - 25px), 24px);
    --membership-feature-gap: clamp(6px, calc(3.77svh - 21px), 14px);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-cta {
    margin-top: clamp(14px, calc(5.38svh - 25px), 24px);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-features {
    gap: var(--membership-feature-gap);
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-plan-note {
    padding-top: clamp(12px, calc(8.6svh - 54px), 28px);
  }
}

@media (min-width: 901px) and (min-height: 770px) {
  html[data-site-visual-theme="astro"] body.subscription-page .ap-subscription {
    height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    );
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-subscription-shell {
    height: 100%;
  }
}

@media (min-width: 901px) and (max-height: 769px) {
  html[data-site-visual-theme="astro"] body.subscription-page .ap-main,
  html[data-site-visual-theme="astro"] body.subscription-page .ap-subscription,
  html[data-site-visual-theme="astro"] body.subscription-page .ap-footer {
    flex: 0 0 auto;
  }
}

/* Professional services: use the same viewport budget as the home page.
   The tab rail keeps its shared position; spare vertical space is distributed
   around the service card before the card itself is reduced. */
@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    --solutions-tab-height: 44px;
    --solutions-actions-height: 44px;
    --solutions-top-space: 18px;
    --solutions-min-space: 10px;
    --solutions-card-height: clamp(
      438px,
      calc(
        100svh - var(--astro-header-height) - var(--behoss-footer-height) -
          var(--solutions-tab-height) - var(--solutions-actions-height) -
          var(--solutions-top-space) - (var(--solutions-min-space) * 3)
      ),
      585px
    );
    --solutions-balanced-space: max(
      var(--solutions-min-space),
      calc(
        (
            100svh - var(--astro-header-height) - var(--behoss-footer-height) -
              var(--solutions-tab-height) - var(--solutions-actions-height) -
              var(--solutions-top-space) - var(--solutions-card-height)
          ) /
          3
      )
    );
    --solutions-card-padding: clamp(
      51px,
      calc((var(--solutions-card-height) - 336px) / 2),
      68px
    );
    box-sizing: border-box;
    min-height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    );
    gap: var(--solutions-balanced-space);
    padding: var(--solutions-top-space) 0 var(--solutions-balanced-space);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-viewport {
    height: var(--solutions-card-height);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-actions {
    min-height: var(--solutions-actions-height);
    margin-top: 0;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section {
    padding-block: var(--solutions-card-padding) !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #mac-ecosystem
    .ap-device-stage
    img {
    width: auto;
    height: calc(
      var(--solutions-card-height) - (var(--solutions-card-padding) * 2)
    );
    max-width: 82%;
    max-height: 100%;
    object-fit: contain;
  }
}

@media (min-width: 901px) and (min-height: 720px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    height: calc(
      100svh - var(--astro-header-height) - var(--behoss-footer-height)
    );
  }
}

@media (min-width: 1500px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    --solutions-card-content-height: min(
      410px,
      calc(var(--solutions-card-height) - (var(--solutions-card-padding) * 2))
    );
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section
    .ap-copy {
    min-height: var(--solutions-card-content-height);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #ai-agent
    .ap-agent-stage,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    #network-config
    .ap-network-panel {
    min-height: var(--solutions-card-content-height);
    height: var(--solutions-card-content-height);
  }
}

@media (min-width: 1500px) and (min-height: 820px) and (max-height: 950px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    gap: 16px;
    padding-block: 12px;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-viewport {
    height: clamp(480px, calc(100svh - 346px), 560px);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section {
    padding: 40px !important;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-copy {
    min-height: 0;
    padding-top: 0;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-lede,
  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-actions {
    margin-top: 20px;
  }
}

@media (min-width: 901px) and (max-width: 1499px) and (min-height: 820px) and (max-height: 950px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    gap: 22px;
  }
}

/* Keep the viewport budget above as the final desktop geometry source. */
@media (min-width: 901px) {
  html[data-site-visual-theme="astro"] body.support-page .solutions-carousel {
    gap: var(--solutions-balanced-space);
    padding: var(--solutions-top-space) 0 var(--solutions-balanced-space);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-viewport {
    height: var(--solutions-card-height);
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-actions {
    margin-top: 0;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel-actions
    .solutions-carousel-cta {
    margin-top: 0;
  }

  html[data-site-visual-theme="astro"]
    body.support-page
    .solutions-carousel
    .ap-service-section {
    padding-block: var(--solutions-card-padding) !important;
  }
}

@media (max-width: 900px) {
  html[data-site-visual-theme="astro"] body.subscription-page .ap-subscription {
    min-height: auto !important;
    padding-block: 0 !important;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-subscription-shell {
    align-items: start;
    padding-block: 24px 48px;
  }

  html[data-site-visual-theme="astro"]
    body.subscription-page
    .ap-membership-grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-site-visual-theme="astro"] *,
  html[data-site-visual-theme="astro"] *::before,
  html[data-site-visual-theme="astro"] *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  html[data-site-visual-theme="astro"]
    .home-page-section
    .ap-about-copy
    .home-slogan-visual::after {
    display: none !important;
  }

  html[data-site-visual-theme="astro"] .home-slogan-selection {
    display: none !important;
  }

  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card,
  html[data-site-visual-theme="astro"]
    body.home-landing-page
    .home-feature-card
    .home-feature-card-surface {
    transition: none !important;
    transform: none !important;
  }

  html[data-site-visual-theme="astro"]
    :is(
      .menu-button,
      .ap-menu-button,
      .ap-footer-social,
      .behoss-utility-control,
      .ap-membership-cta,
      .site-color-mode-icon,
      .site-language-icon
    ) {
    transition: none !important;
  }

  html[data-site-visual-theme="astro"]
    :is(
      .menu-button,
      .ap-menu-button,
      .ap-footer-social,
      .behoss-utility-control,
      .ap-membership-cta,
      .site-color-mode-icon,
      .site-language-icon
    ):is(:hover, :focus-visible, :active) {
    transform: none !important;
  }

  html[data-site-visual-theme="astro"] .ap-footer-social-icon,
  html[data-site-visual-theme="astro"]
    .ap-footer-social:is(:hover, :focus-visible, :active)
    .ap-footer-social-icon {
    transition: none !important;
    transform: none !important;
  }
}

/* Page content is ready before the swap. Keep the full-page snapshots opaque;
   local controls and dialogs own their short state transitions. */
::view-transition-old(root),
::view-transition-new(root) {
  animation: none;
  mix-blend-mode: normal;
}

/* Lock background during transition so CSS-switch doesn't flash white */
html[data-site-color-mode="light"]::view-transition-old(root),
html[data-site-color-mode="light"]::view-transition-new(root) {
  background-color: #f7f7f3;
}

html[data-site-color-mode="dark"]::view-transition-old(root),
html[data-site-color-mode="dark"]::view-transition-new(root) {
  background-color: #111315;
}

/* Root snapshots are not descendants of html, so the universal reduced-motion
   rule above does not cover their animations. */
@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*) {
    animation: none !important;
  }
}
