@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700&display=swap";

/* src/design-system/clinic-seed-design-system.css */
:root {
  color-scheme: light;
  --seed-palette-gray-00: #ffffff;
  --seed-palette-gray-100: #f7f8f9;
  --seed-palette-gray-200: #f3f4f5;
  --seed-palette-gray-300: #eeeff1;
  --seed-palette-gray-400: #dcdee3;
  --seed-palette-gray-500: #d1d3d8;
  --seed-palette-gray-600: #b0b3ba;
  --seed-palette-gray-650: #8c929c;
  --seed-palette-gray-700: #686f7b;
  --seed-palette-gray-800: #555d6d;
  --seed-palette-gray-900: #2a3038;
  --seed-palette-gray-1000: #1a1c20;
  --seed-palette-carrot-100: #fff2ec;
  --seed-palette-carrot-200: #ffe8db;
  --seed-palette-carrot-300: #ffd5c0;
  --seed-palette-carrot-500: #ff9364;
  --seed-palette-carrot-600: #ff6f0f;
  --seed-palette-carrot-700: #b84300;
  --seed-palette-blue-100: #eaf4ff;
  --seed-palette-blue-700: #2467d1;
  --seed-palette-green-100: #e9f9ef;
  --seed-palette-green-700: #11733f;
  --seed-palette-yellow-100: #fff7d6;
  --seed-palette-yellow-300: #ffe27a;
  --seed-palette-yellow-700: #8b6200;
  --seed-palette-red-100: #fff0f1;
  --seed-palette-red-700: #bd2636;
  --seed-palette-static-black-alpha-100: rgb(0 0 0 / 5%);
  --seed-palette-static-black-alpha-200: rgb(0 0 0 / 8%);
  --seed-palette-static-black-alpha-300: rgb(0 0 0 / 12%);
  --seed-palette-static-black-alpha-700: rgb(0 0 0 / 46%);
  --seed-color-fg-brand: var(--seed-palette-carrot-700);
  --seed-color-fg-neutral: var(--seed-palette-gray-1000);
  --seed-color-fg-neutral-muted: var(--seed-palette-gray-800);
  --seed-color-fg-neutral-subtle: var(--seed-palette-gray-700);
  --seed-color-fg-placeholder: var(--seed-palette-gray-700);
  --seed-color-fg-disabled: var(--seed-palette-gray-600);
  --seed-color-fg-positive: var(--seed-palette-green-700);
  --seed-color-fg-warning: var(--seed-palette-yellow-700);
  --seed-color-fg-critical: var(--seed-palette-red-700);
  --seed-color-fg-informative: var(--seed-palette-blue-700);
  --seed-color-fg-on-solid: var(--seed-palette-gray-1000);
  --seed-color-bg-brand-solid: var(--seed-palette-carrot-600);
  --seed-color-bg-brand-solid-pressed: #e05a00;
  --seed-color-bg-brand-weak: var(--seed-palette-carrot-100);
  --seed-color-bg-brand-weak-pressed: var(--seed-palette-carrot-200);
  --seed-color-bg-layer-basement: var(--seed-palette-gray-200);
  --seed-color-bg-layer-default: var(--seed-palette-gray-00);
  --seed-color-bg-layer-default-pressed: var(--seed-palette-gray-100);
  --seed-color-bg-layer-floating: var(--seed-palette-gray-00);
  --seed-color-bg-neutral-weak: var(--seed-palette-gray-200);
  --seed-color-bg-neutral-weak-pressed: var(--seed-palette-gray-300);
  --seed-color-bg-positive-weak: var(--seed-palette-green-100);
  --seed-color-bg-warning-weak: var(--seed-palette-yellow-100);
  --seed-color-bg-critical-weak: var(--seed-palette-red-100);
  --seed-color-bg-informative-weak: var(--seed-palette-blue-100);
  --seed-color-bg-disabled: var(--seed-palette-gray-200);
  --seed-color-bg-overlay: var(--seed-palette-static-black-alpha-700);
  --seed-color-stroke-brand-solid: var(--seed-palette-carrot-700);
  --seed-color-stroke-brand-weak: var(--seed-palette-carrot-300);
  --seed-color-stroke-neutral-subtle: var(--seed-palette-static-black-alpha-200);
  --seed-color-stroke-neutral-muted: var(--seed-palette-static-black-alpha-300);
  --seed-color-stroke-neutral-weak: var(--seed-palette-gray-650);
  --seed-color-stroke-focus-ring: #3977e8;
  --seed-color-stroke-positive-weak: #9bd8b4;
  --seed-color-stroke-warning-weak: #edd37a;
  --seed-color-stroke-critical-weak: #efb5bb;
  --seed-font-family-sans:
    -apple-system,
    BlinkMacSystemFont,
    "Apple SD Gothic Neo",
    "Segoe UI",
    Roboto,
    "Helvetica Neue",
    Arial,
    "Noto Sans KR",
    sans-serif,
    "Apple Color Emoji",
    "Segoe UI Emoji";
  --seed-font-family-mono:
    "SFMono-Regular",
    Consolas,
    "Liberation Mono",
    monospace;
  --seed-font-size-t1: 0.75rem;
  --seed-font-size-t2: 0.75rem;
  --seed-font-size-t3: 0.8125rem;
  --seed-font-size-t4: 0.875rem;
  --seed-font-size-t5: 1rem;
  --seed-font-size-t6: 1.125rem;
  --seed-font-size-t7: 1.25rem;
  --seed-font-size-t8: 1.375rem;
  --seed-font-size-t9: 1.5rem;
  --seed-font-size-t10: 1.625rem;
  --seed-font-size-t11: 1.75rem;
  --seed-font-size-t12: 2rem;
  --seed-line-height-t1: 0.9375rem;
  --seed-line-height-t2: 1rem;
  --seed-line-height-t3: 1.125rem;
  --seed-line-height-t4: 1.1875rem;
  --seed-line-height-t5: 1.375rem;
  --seed-line-height-t6: 1.5rem;
  --seed-line-height-t7: 1.6875rem;
  --seed-line-height-t8: 1.875rem;
  --seed-line-height-t9: 2rem;
  --seed-line-height-t10: 2.1875rem;
  --seed-line-height-t11: 2.375rem;
  --seed-line-height-t12: 2.625rem;
  --seed-font-weight-regular: 400;
  --seed-font-weight-medium: 500;
  --seed-font-weight-bold: 700;
  --seed-dimension-x0-5: 2px;
  --seed-dimension-x1: 4px;
  --seed-dimension-x1-5: 6px;
  --seed-dimension-x2: 8px;
  --seed-dimension-x2-5: 10px;
  --seed-dimension-x3: 12px;
  --seed-dimension-x4: 16px;
  --seed-dimension-x5: 20px;
  --seed-dimension-x6: 24px;
  --seed-dimension-x7: 28px;
  --seed-dimension-x8: 32px;
  --seed-dimension-x10: 40px;
  --seed-dimension-x12: 48px;
  --seed-dimension-x14: 56px;
  --seed-dimension-x16: 64px;
  --seed-radius-r1: 4px;
  --seed-radius-r0-5: 2px;
  --seed-radius-r2: 8px;
  --seed-radius-r2-5: 10px;
  --seed-radius-r3: 12px;
  --seed-radius-r4: 16px;
  --seed-radius-full: 9999px;
  --seed-shadow-floating: 0 12px 32px rgb(35 44 59 / 12%), 0 2px 8px rgb(35 44 59 / 6%);
  --seed-duration-d2: 100ms;
  --seed-duration-d3: 150ms;
  --seed-duration-d4: 200ms;
  --seed-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --clinic-color-bg-canvas: var(--seed-palette-gray-200);
  --clinic-color-bg-surface: var(--seed-palette-gray-00);
  --clinic-color-bg-section: var(--seed-palette-gray-300);
  --clinic-color-bg-section-subtle: var(--seed-palette-gray-100);
  --clinic-color-bg-floating: var(--seed-palette-gray-00);
  --clinic-color-bg-selected: var(--seed-palette-carrot-100);
  --clinic-color-stroke-surface: var(--seed-palette-gray-400);
  --clinic-color-stroke-divider: var(--seed-palette-static-black-alpha-200);
  --clinic-color-stroke-control: var(--seed-palette-gray-650);
  --clinic-surface-radius: var(--seed-radius-r4);
  --clinic-control-radius: var(--seed-radius-r2-5);
  --clinic-row-height: 44px;
  --clinic-sidebar-width: 232px;
  --clinic-sidebar-collapsed-width: 64px;
  --clinic-font-size-meta: var(--seed-font-size-t2);
  --clinic-line-height-meta: var(--seed-line-height-t2);
  --clinic-font-size-label: var(--seed-font-size-t3);
  --clinic-line-height-label: var(--seed-line-height-t3);
  --clinic-font-size-body: var(--seed-font-size-t4);
  --clinic-line-height-body: var(--seed-line-height-t4);
  --clinic-font-size-panel-title: var(--seed-font-size-t5);
  --clinic-line-height-panel-title: var(--seed-line-height-t5);
  --clinic-font-size-section-title: var(--seed-font-size-t7);
  --clinic-line-height-section-title: var(--seed-line-height-t7);
  --clinic-font-size-metric: var(--seed-font-size-t9);
  --clinic-line-height-metric: var(--seed-line-height-t9);
  --clinic-font-size-page-title: var(--seed-font-size-t10);
  --clinic-line-height-page-title: var(--seed-line-height-t10);
  --clinic-layout-standard-max: 90rem;
  --clinic-layout-wide-max: 120rem;
  --clinic-layout-support-rail-max: 30rem;
  --clinic-readable-measure: 72ch;
  --clinic-page-gutter: 0.75rem;
  --clinic-focus-ring-width: 0.1875rem;
  --clinic-control-min-size: 2.5rem;
  --clinic-touch-control-min-size: 2.75rem;
}
[data-theme=dark] {
  color-scheme: dark;
  --seed-color-fg-brand: #ff9c6b;
  --seed-color-fg-neutral: #f4f5f6;
  --seed-color-fg-neutral-muted: #c8cbd0;
  --seed-color-fg-neutral-subtle: #989da6;
  --seed-color-fg-placeholder: #989da6;
  --seed-color-fg-disabled: #666d78;
  --seed-color-fg-positive: #61d493;
  --seed-color-fg-warning: #ffd26a;
  --seed-color-fg-critical: #ff8e98;
  --seed-color-fg-informative: #85b5ff;
  --seed-color-fg-on-solid: var(--seed-palette-gray-1000);
  --seed-color-bg-brand-solid: #f36a10;
  --seed-color-bg-brand-solid-pressed: #e05a00;
  --seed-color-bg-brand-weak: #3d291f;
  --seed-color-bg-brand-weak-pressed: #513122;
  --seed-color-bg-layer-basement: #15171b;
  --seed-color-bg-layer-default: #1d2025;
  --seed-color-bg-layer-default-pressed: #262a30;
  --seed-color-bg-layer-floating: #272b31;
  --seed-color-bg-neutral-weak: #282c32;
  --seed-color-bg-neutral-weak-pressed: #32363e;
  --seed-color-bg-positive-weak: #173224;
  --seed-color-bg-warning-weak: #3a3018;
  --seed-color-bg-critical-weak: #3b2226;
  --seed-color-bg-informative-weak: #1d2c43;
  --seed-color-bg-disabled: #292d33;
  --seed-color-bg-overlay: rgb(0 0 0 / 66%);
  --seed-color-stroke-brand-solid: #ff8a4b;
  --seed-color-stroke-brand-weak: #76442c;
  --seed-color-stroke-neutral-subtle: rgb(255 255 255 / 8%);
  --seed-color-stroke-neutral-muted: rgb(255 255 255 / 13%);
  --seed-color-stroke-neutral-weak: #666d78;
  --seed-color-stroke-focus-ring: #76a9ff;
  --seed-color-stroke-positive-weak: #305e43;
  --seed-color-stroke-warning-weak: #6e5c28;
  --seed-color-stroke-critical-weak: #704047;
  --seed-shadow-floating: 0 14px 36px rgb(0 0 0 / 34%), 0 2px 8px rgb(0 0 0 / 22%);
  --clinic-color-bg-canvas: #15171b;
  --clinic-color-bg-surface: #1d2025;
  --clinic-color-bg-section: #282c32;
  --clinic-color-bg-section-subtle: #262a30;
  --clinic-color-bg-floating: #272b31;
  --clinic-color-bg-selected: #3d291f;
  --clinic-color-stroke-surface: #3e444d;
  --clinic-color-stroke-divider: rgb(255 255 255 / 8%);
  --clinic-color-stroke-control: #666d78;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
[hidden] {
  display: none !important;
}
html {
  font-family: var(--seed-font-family-sans);
  background: var(--clinic-color-bg-canvas);
}
body {
  margin: 0;
  min-inline-size: 0;
  background: var(--clinic-color-bg-canvas);
  color: var(--seed-color-fg-neutral);
}
button,
input,
select,
textarea {
  font: inherit;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
button {
  color: inherit;
}
:focus-visible {
  outline: var(--clinic-focus-ring-width) solid var(--seed-color-stroke-focus-ring);
  outline-offset: var(--seed-dimension-x0-5);
}
::selection {
  background: var(--seed-color-bg-brand-weak-pressed);
}
.seed-text-t1 {
  font-size: var(--seed-font-size-t1);
  line-height: var(--seed-line-height-t1);
}
.seed-text-t2 {
  font-size: var(--seed-font-size-t2);
  line-height: var(--seed-line-height-t2);
}
.seed-text-t3 {
  font-size: var(--seed-font-size-t3);
  line-height: var(--seed-line-height-t3);
}
.seed-text-t4 {
  font-size: var(--seed-font-size-t4);
  line-height: var(--seed-line-height-t4);
}
.seed-text-t5 {
  font-size: var(--seed-font-size-t5);
  line-height: var(--seed-line-height-t5);
}
.seed-text-t6 {
  font-size: var(--seed-font-size-t6);
  line-height: var(--seed-line-height-t6);
}
.seed-text-t7 {
  font-size: var(--seed-font-size-t7);
  line-height: var(--seed-line-height-t7);
}
.seed-text-t10 {
  font-size: var(--seed-font-size-t10);
  line-height: var(--seed-line-height-t10);
}
.seed-text-bold {
  font-weight: var(--seed-font-weight-bold);
}
.seed-text-medium {
  font-weight: var(--seed-font-weight-medium);
}
.seed-mono {
  font-family: var(--seed-font-family-mono);
  font-variant-numeric: tabular-nums;
}
.clinic-text-meta {
  font-size: var(--clinic-font-size-meta);
  line-height: var(--clinic-line-height-meta);
  font-weight: var(--seed-font-weight-regular);
}
.clinic-text-label {
  font-size: var(--clinic-font-size-label);
  line-height: var(--clinic-line-height-label);
  font-weight: var(--seed-font-weight-medium);
}
.clinic-text-body {
  font-size: var(--clinic-font-size-body);
  line-height: var(--clinic-line-height-body);
  font-weight: var(--seed-font-weight-regular);
}
.clinic-text-body-strong {
  font-size: var(--clinic-font-size-body);
  line-height: var(--clinic-line-height-body);
  font-weight: var(--seed-font-weight-bold);
}
.clinic-text-panel-title {
  font-size: var(--clinic-font-size-panel-title);
  line-height: var(--clinic-line-height-panel-title);
  font-weight: var(--seed-font-weight-bold);
}
.clinic-text-section-title {
  font-size: var(--clinic-font-size-section-title);
  line-height: var(--clinic-line-height-section-title);
  font-weight: var(--seed-font-weight-bold);
}
.clinic-text-metric {
  font-family: var(--seed-font-family-mono);
  font-size: var(--clinic-font-size-metric);
  line-height: var(--clinic-line-height-metric);
  font-weight: var(--seed-font-weight-bold);
  font-variant-numeric: tabular-nums;
}
.clinic-text-page-title {
  font-size: var(--clinic-font-size-page-title);
  line-height: var(--clinic-line-height-page-title);
  font-weight: var(--seed-font-weight-bold);
}
.clinic-page-container {
  width: 100%;
  max-inline-size: var(--clinic-layout-standard-max);
  margin-inline: auto;
  padding-inline: var(--clinic-page-gutter);
}
.clinic-page-container--standard {
  max-inline-size: var(--clinic-layout-standard-max);
}
.clinic-page-container--wide {
  max-inline-size: var(--clinic-layout-wide-max);
}
.clinic-page-container--data,
.clinic-page-container--workspace {
  max-inline-size: var(--clinic-page-content-max, none);
}
.clinic-readable {
  max-inline-size: var(--clinic-readable-measure);
}
.clinic-query-container {
  container-type: inline-size;
}
.seed-button {
  min-height: var(--clinic-control-min-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--seed-dimension-x2);
  border: 0;
  border-radius: var(--clinic-control-radius);
  padding: 0 var(--seed-dimension-x4);
  font-size: var(--clinic-font-size-body);
  line-height: 1;
  font-weight: var(--seed-font-weight-bold);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background var(--seed-duration-d3) var(--seed-easing-standard),
    transform var(--seed-duration-d2) var(--seed-easing-standard),
    color var(--seed-duration-d3) var(--seed-easing-standard);
}
.seed-button:active {
  transform: translateY(1px);
}
.seed-button:disabled {
  cursor: not-allowed;
  color: var(--seed-color-fg-disabled);
  background: var(--seed-color-bg-disabled);
}
.seed-button--brand {
  color: var(--seed-color-fg-on-solid);
  background: var(--seed-color-bg-brand-solid);
}
.seed-button--brand:hover {
  background: var(--seed-color-bg-brand-solid-pressed);
}
.seed-button--neutral {
  border: 1px solid var(--clinic-color-stroke-control);
  color: var(--seed-color-fg-neutral);
  background: var(--clinic-color-bg-surface);
}
.seed-button--neutral:hover {
  background: var(--seed-color-bg-neutral-weak-pressed);
}
.seed-button--ghost {
  color: var(--seed-color-fg-neutral-muted);
  background: transparent;
}
.seed-button--ghost:hover {
  color: var(--seed-color-fg-neutral);
  background: var(--seed-color-bg-neutral-weak);
}
.seed-button--small {
  min-height: 32px;
  padding-inline: var(--seed-dimension-x3);
  font-size: var(--clinic-font-size-label);
}
.seed-button--icon {
  width: 40px;
  padding: 0;
}
.seed-button--icon.seed-button--small {
  width: 32px;
}
.seed-chip {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  gap: var(--seed-dimension-x1-5);
  border: 1px solid var(--clinic-color-stroke-control);
  border-radius: var(--seed-radius-full);
  padding: 0 var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral-muted);
  background: var(--clinic-color-bg-surface);
  font-size: var(--clinic-font-size-label);
  line-height: 1;
  font-weight: var(--seed-font-weight-medium);
  white-space: nowrap;
}
button.seed-chip {
  cursor: pointer;
}
button.seed-chip:hover {
  background: var(--seed-color-bg-layer-default-pressed);
}
.seed-chip[aria-pressed=true] {
  color: var(--seed-color-fg-brand);
  border-color: var(--seed-color-stroke-brand-solid);
  background: var(--clinic-color-bg-selected);
}
.seed-badge {
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  gap: var(--seed-dimension-x1);
  border-radius: var(--seed-radius-full);
  padding: 0 var(--seed-dimension-x2);
  font-size: var(--clinic-font-size-meta);
  line-height: 1;
  font-weight: var(--seed-font-weight-bold);
  white-space: nowrap;
}
.seed-badge--brand {
  color: var(--seed-color-fg-brand);
  background: var(--seed-color-bg-brand-weak);
}
.seed-badge--positive {
  color: var(--seed-color-fg-positive);
  background: var(--seed-color-bg-positive-weak);
}
.seed-badge--warning {
  color: var(--seed-color-fg-warning);
  background: var(--seed-color-bg-warning-weak);
}
.seed-badge--critical {
  color: var(--seed-color-fg-critical);
  background: var(--seed-color-bg-critical-weak);
}
.seed-badge--informative {
  color: var(--seed-color-fg-informative);
  background: var(--seed-color-bg-informative-weak);
}
.seed-badge--neutral {
  color: var(--seed-color-fg-neutral-muted);
  background: var(--seed-color-bg-neutral-weak);
}
.seed-surface {
  border: 1px solid var(--clinic-color-stroke-surface);
  border-radius: var(--clinic-surface-radius);
  background: var(--clinic-color-bg-surface);
}
.seed-input {
  height: var(--clinic-control-min-size);
  width: 100%;
  border: 1px solid var(--clinic-color-stroke-control);
  border-radius: var(--clinic-control-radius);
  padding: 0 var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral);
  background: var(--clinic-color-bg-surface);
  font-size: var(--clinic-font-size-body);
}
.seed-input::placeholder {
  color: var(--seed-color-fg-placeholder);
}
.seed-input:hover {
  border-color: var(--seed-color-fg-neutral-muted);
}
.seed-select {
  height: var(--clinic-control-min-size);
  width: 100%;
  border: 1px solid var(--clinic-color-stroke-control);
  border-radius: var(--clinic-control-radius);
  padding: 0 var(--seed-dimension-x10) 0 var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral);
  background: var(--clinic-color-bg-surface);
  font-size: var(--clinic-font-size-body);
}
.seed-select:hover {
  border-color: var(--seed-color-fg-neutral-muted);
}
.seed-select-root {
  position: relative;
  display: inline-block;
}
.seed-select-trigger {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--seed-dimension-x2);
  border: 1px solid var(--clinic-color-stroke-control);
  border-radius: var(--seed-radius-r2);
  padding: 0 var(--seed-dimension-x2) 0 var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral);
  background: var(--clinic-color-bg-surface);
  font-size: var(--clinic-font-size-label);
  font-weight: var(--seed-font-weight-bold);
  cursor: pointer;
}
.seed-select-trigger:hover,
.seed-select-trigger[aria-expanded=true] {
  background: var(--seed-color-bg-neutral-weak);
}
.seed-select-content {
  position: absolute;
  right: 0;
  bottom: calc(100% + var(--seed-dimension-x2));
  z-index: 30;
  min-width: max(100%, 8rem);
  display: grid;
  gap: var(--seed-dimension-x1);
  border-radius: var(--seed-radius-r3);
  padding: var(--seed-dimension-x2);
  background: var(--clinic-color-bg-floating);
  box-shadow: var(--seed-shadow-floating);
}
.seed-select-option {
  min-height: var(--seed-dimension-x10);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--seed-dimension-x3);
  border: 0;
  border-radius: var(--seed-radius-r2);
  padding-inline: var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral);
  background: transparent;
  text-align: left;
  font-size: var(--clinic-font-size-label);
  cursor: pointer;
}
.seed-select-option:hover,
.seed-select-option:focus-visible {
  background: var(--seed-color-bg-neutral-weak);
}
.seed-select-option[aria-selected=true] {
  color: var(--seed-color-fg-brand);
  background: var(--clinic-color-bg-selected);
  font-weight: var(--seed-font-weight-bold);
}
.seed-select-option i {
  opacity: 0;
}
.seed-select-option[aria-selected=true] i {
  opacity: 1;
}
.seed-textarea {
  min-height: 6rem;
  width: 100%;
  resize: vertical;
  border: 1px solid var(--clinic-color-stroke-control);
  border-radius: var(--clinic-control-radius);
  padding: var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral);
  background: var(--clinic-color-bg-surface);
  font-size: var(--clinic-font-size-body);
  line-height: var(--clinic-line-height-body);
}
.seed-textarea::placeholder {
  color: var(--seed-color-fg-placeholder);
}
.seed-textarea:hover {
  border-color: var(--seed-color-fg-neutral-muted);
}
.seed-field {
  display: grid;
  gap: var(--seed-dimension-x2);
}
.seed-field > label,
.seed-field > .seed-field-label {
  color: var(--seed-color-fg-neutral-muted);
  font-size: var(--clinic-font-size-label);
  line-height: var(--clinic-line-height-label);
  font-weight: var(--seed-font-weight-bold);
}
.seed-field-hint {
  margin: 0;
  color: var(--seed-color-fg-neutral-subtle);
  font-size: var(--clinic-font-size-meta);
  line-height: var(--clinic-line-height-meta);
}
.seed-segmented {
  display: inline-flex;
  gap: var(--seed-dimension-x0-5);
  padding: var(--seed-dimension-x1);
  border-radius: var(--seed-radius-r3);
  background: var(--clinic-color-bg-section-subtle);
}
.seed-segmented button {
  min-height: 32px;
  border: 0;
  border-radius: var(--seed-radius-r2);
  padding: 0 var(--seed-dimension-x3);
  color: var(--seed-color-fg-neutral-subtle);
  background: transparent;
  font-size: var(--clinic-font-size-label);
  font-weight: var(--seed-font-weight-bold);
  cursor: pointer;
}
.seed-segmented button[aria-selected=true] {
  color: var(--seed-color-fg-neutral);
  background: var(--clinic-color-bg-surface);
  box-shadow: 0 1px 3px rgb(35 44 59 / 12%);
}
.seed-avatar {
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  color: var(--seed-color-fg-brand);
  background: var(--seed-color-bg-brand-weak);
  font-size: var(--clinic-font-size-label);
  font-weight: var(--seed-font-weight-bold);
}
.seed-divider {
  height: 1px;
  background: var(--clinic-color-stroke-divider);
}
.seed-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.seed-skeleton {
  border-radius: var(--seed-radius-r2);
  background: var(--seed-color-bg-neutral-weak);
  overflow: hidden;
  position: relative;
}
.seed-toast {
  position: fixed;
  left: 50%;
  bottom: var(--seed-dimension-x6);
  z-index: 40;
  max-width: calc(100vw - 32px);
  display: flex;
  align-items: center;
  gap: var(--seed-dimension-x2);
  border-radius: var(--seed-radius-r3);
  padding: var(--seed-dimension-x3) var(--seed-dimension-x4);
  color: var(--seed-palette-gray-00);
  background: var(--seed-palette-gray-900);
  box-shadow: var(--seed-shadow-floating);
  font-size: var(--clinic-font-size-body);
  font-weight: var(--seed-font-weight-medium);
  transform: translate(-50%, 24px);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--seed-duration-d4) var(--seed-easing-standard), transform var(--seed-duration-d4) var(--seed-easing-standard);
}
.seed-toast[data-open=true] {
  opacity: 1;
  transform: translate(-50%, 0);
}
@media (min-width: 48rem) {
  :root {
    --clinic-page-gutter: 1.5rem;
  }
}
@media (min-width: 80rem) {
  :root {
    --clinic-page-gutter: 2rem;
  }
}
@media (max-width: 47.99rem) {
  :root {
    --clinic-row-height: 3rem;
  }
  .seed-button {
    min-height: var(--clinic-touch-control-min-size);
  }
  .seed-button--small {
    min-height: 2.25rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* src/design-system/tokens.css */
:root {
  --landing-font-family: var(--seed-font-family-sans);
  --landing-heading-1-size: clamp( 2.5rem, calc(1.2103175rem + 5.2910053vw), 3.75rem );
  --landing-heading-1-line-height: clamp( 3.2rem, calc(1.8587302rem + 5.5026455vw), 4.5rem );
  --landing-heading-1-letter-spacing: -0.035em;
  --landing-heading-2-size: clamp( 2.25rem, calc(0rem + 4.6875vw), 3rem );
  --landing-heading-2-line-height: 1.28;
  --landing-heading-2-letter-spacing: -0.03em;
  --landing-heading-3-size: clamp( 1.75rem, calc(1rem + 1.5625vw), 2rem );
  --landing-heading-3-line-height: 1.4;
  --landing-heading-3-letter-spacing: -0.025em;
  --landing-heading-4-size: clamp( 1.125rem, calc(0.8173077rem + 0.4807692vw), 1.25rem );
  --landing-heading-4-line-height: 1.48;
  --landing-heading-4-letter-spacing: -0.018em;
  --landing-body-1-size: clamp( 1.125rem, calc(0.8173077rem + 0.4807692vw), 1.25rem );
  --landing-body-1-line-height: 1.48;
  --landing-body-1-measure: 30em;
  --landing-body-2-size: clamp( 1rem, calc(0.625rem + 0.4166667vw), 1.125rem );
  --landing-body-2-line-height: 1.6;
  --landing-body-2-measure: 36em;
  --landing-body-3-size: clamp( 1rem, calc(0.625rem + 0.4166667vw), 1.125rem );
  --landing-body-3-line-height: 1.6;
  --landing-body-3-measure: 40em;
  --landing-body-4-size: clamp( 0.875rem, calc(0.7460317rem + 0.5291005vw), 1rem );
  --landing-body-4-line-height: 1.6;
  --landing-body-4-measure: 26em;
  --landing-ui-control-size: 1rem;
  --landing-ui-control-line-height: 1.375rem;
  --landing-ui-label-size: 0.875rem;
  --landing-ui-label-line-height: 1.1875rem;
  --landing-ui-meta-size: 0.75rem;
  --landing-ui-meta-line-height: 1rem;
  --landing-font-weight-regular: 400;
  --landing-font-weight-medium: 500;
  --landing-font-weight-bold: 700;
  --landing-color-text: var(--seed-color-fg-neutral);
  --landing-color-text-muted: var(--seed-color-fg-neutral-muted);
  --landing-color-text-subtle: var(--seed-color-fg-neutral-subtle);
  --landing-color-text-on-solid: var(--seed-color-fg-on-solid);
  --landing-color-link: var(--seed-color-fg-brand);
  --landing-color-canvas: var(--seed-color-bg-layer-default);
  --landing-color-section: var(--clinic-color-bg-section-subtle);
  --landing-color-card: var(--clinic-color-bg-surface);
  --landing-color-brand: var(--seed-color-bg-brand-solid);
  --landing-color-brand-weak: var(--seed-color-bg-brand-weak);
  --landing-color-divider: var(--clinic-color-stroke-divider);
  --landing-color-control: var(--clinic-color-stroke-control);
  --landing-color-focus: var(--seed-color-stroke-focus-ring);
  --landing-content-max: 80rem;
  --landing-page-gutter: 1rem;
  --landing-section-space: clamp(4rem, calc(3rem + 5vw), 8rem);
  --landing-grid-gap: clamp(1rem, calc(0.75rem + 1.25vw), 2rem);
  --landing-radius-surface: var(--seed-radius-r4);
  --landing-radius-control: var(--seed-radius-r2-5);
  --landing-radius-pill: var(--seed-radius-full);
  --landing-control-min-size: 2.75rem;
  --landing-focus-ring-width: 0.1875rem;
  --landing-motion-duration: var(--seed-duration-d4);
  --landing-motion-easing: var(--seed-easing-standard);
}
@supports (max-inline-size: 1ic) {
  :root {
    --landing-body-1-measure: 30ic;
    --landing-body-2-measure: 36ic;
    --landing-body-3-measure: 40ic;
    --landing-body-4-measure: 26ic;
  }
}
@media (min-width: 48rem) {
  :root {
    --landing-page-gutter: 1.5rem;
  }
}
@media (min-width: 64rem) {
  :root {
    --landing-heading-1-size: clamp( 3.75rem, calc(0.6730769rem + 4.8076923vw), 5rem );
    --landing-heading-1-line-height: clamp( 4.5rem, calc(0.8076923rem + 5.7692308vw), 6rem );
  }
}
@media (min-width: 80rem) {
  :root {
    --landing-page-gutter: 2rem;
  }
}
@media (min-width: 90rem) {
  :root {
    --landing-heading-1-size: clamp( 5rem, calc(2.75rem + 2.5vw), 5.75rem );
    --landing-heading-1-line-height: clamp( 6rem, calc(3.3rem + 3vw), 6.9rem );
    --landing-heading-2-size: clamp( 3rem, calc(0rem + 3.3333vw), 4rem );
    --landing-heading-3-size: clamp( 2rem, calc(0.5rem + 1.6667vw), 2.5rem );
    --landing-heading-4-size: clamp( 1.25rem, calc(0.5rem + 0.8333vw), 1.5rem );
    --landing-body-1-size: clamp( 1.25rem, calc(0.5rem + 0.8333vw), 1.5rem );
    --landing-body-4-size: clamp( 1rem, calc(0.625rem + 0.4166667vw), 1.125rem );
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  font-family: var(--landing-font-family);
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
  overflow-wrap: break-word;
  background: var(--landing-color-canvas);
  color: var(--landing-color-text);
}
img,
picture,
video {
  display: block;
  max-inline-size: 100%;
  block-size: auto;
}
button,
input,
select,
textarea {
  font: inherit;
}
:focus-visible {
  outline: var(--landing-focus-ring-width) solid var(--landing-color-focus);
  outline-offset: 0.125rem;
}
.landing-container {
  inline-size: min(calc(100% - var(--landing-page-gutter) * 2), var(--landing-content-max));
  margin-inline: auto;
}
.landing-section {
  padding-block: var(--landing-section-space);
}
.landing-heading-1,
.landing-heading-2,
.landing-heading-3,
.landing-heading-4 {
  margin: 0;
  font-weight: var(--landing-font-weight-bold);
  text-wrap: balance;
  word-break: keep-all;
}
.landing-heading-1 {
  font-size: var(--landing-heading-1-size);
  line-height: var(--landing-heading-1-line-height);
  letter-spacing: var(--landing-heading-1-letter-spacing);
}
.landing-heading-2 {
  font-size: var(--landing-heading-2-size);
  line-height: var(--landing-heading-2-line-height);
  letter-spacing: var(--landing-heading-2-letter-spacing);
}
.landing-heading-3 {
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
  letter-spacing: var(--landing-heading-3-letter-spacing);
}
.landing-heading-4 {
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
  letter-spacing: var(--landing-heading-4-letter-spacing);
}
.landing-body-1,
.landing-body-2,
.landing-body-3,
.landing-body-4 {
  margin: 0;
  color: var(--landing-color-text-muted);
  font-weight: var(--landing-font-weight-regular);
  word-break: keep-all;
  overflow-wrap: break-word;
  text-wrap: pretty;
}
.landing-body-1 {
  max-inline-size: var(--landing-body-1-measure);
  font-size: var(--landing-body-1-size);
  line-height: var(--landing-body-1-line-height);
}
.landing-body-2 {
  max-inline-size: var(--landing-body-2-measure);
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
}
.landing-body-3 {
  max-inline-size: var(--landing-body-3-measure);
  font-size: var(--landing-body-3-size);
  line-height: var(--landing-body-3-line-height);
}
.landing-body-4 {
  max-inline-size: var(--landing-body-4-measure);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.landing-ui-control,
.landing-ui-label,
.landing-ui-meta {
  margin: 0;
  word-break: keep-all;
  overflow-wrap: break-word;
}
.landing-ui-control {
  font-size: var(--landing-ui-control-size);
  line-height: var(--landing-ui-control-line-height);
}
.landing-ui-label {
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
}
.landing-ui-meta {
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
}
.landing-button {
  min-block-size: var(--landing-control-min-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding-inline: 1.25rem;
  border: 0.0625rem solid transparent;
  border-radius: var(--landing-radius-control);
  font-size: 1rem;
  font-weight: var(--landing-font-weight-bold);
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color var(--landing-motion-duration) var(--landing-motion-easing),
    border-color var(--landing-motion-duration) var(--landing-motion-easing),
    color var(--landing-motion-duration) var(--landing-motion-easing),
    transform var(--landing-motion-duration) var(--landing-motion-easing);
}
.landing-button--primary {
  background: var(--landing-color-brand);
  color: var(--landing-color-text-on-solid);
}
.landing-button--secondary {
  border-color: var(--landing-color-control);
  background: var(--landing-color-card);
  color: var(--landing-color-text);
}
.landing-card {
  border: 0.0625rem solid var(--landing-color-divider);
  border-radius: var(--landing-radius-surface);
  background: var(--landing-color-card);
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* src/styles.css */
:root {
  --landing-font-family: "Noto Sans KR", var(--seed-font-family-sans);
  --color-brand: #2763ea;
  --color-concern-canvas: #abc1d1;
  --color-concern-bubble: #fde404;
  --color-concern-ink: #191919;
  --color-concern-meta: #444d54;
  --color-text: #101615;
  --color-text-muted: #59615f;
  --color-line: #d9dddc;
  --color-white: #ffffff;
  --color-gray: #f3f5f4;
  --color-black: #050807;
  --color-keyword: color-mix(in srgb, var(--color-text) 58%, var(--color-white));
  --color-keyword-on-dark: color-mix(in srgb, var(--color-white) 68%, transparent);
  --feature-card-surface: #f6f8fb;
  --feature-card-border: #e9edf5;
  --feature-scene-cost: #f7f9fc;
  --feature-scene-lab: #f5f7fa;
  --feature-scene-sterile: #f2f5fa;
  --feature-inner-sterile: #f4f7fa;
  --feature-inner-lab: #fff;
  --feature-scene-quality: #f7f8ff;
  --feature-scene-care: #f4f7fb;
  --space-page: clamp(1.25rem, 4vw, 4rem);
  --space-section: clamp(6rem, 11vw, 10rem);
  --content-max: 80rem;
  --radius-card: 1.5rem;
  --header-height: 4rem;
  --header-height-mobile: 3.5rem;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-height) + 1rem);
}
body {
  margin: 0;
  color: var(--color-text);
  background: var(--color-white);
  font-family: var(--landing-font-family);
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
  word-break: keep-all;
}
body.menu-open {
  overflow: hidden;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input {
  font: inherit;
}
picture {
  display: block;
}
img {
  display: block;
  width: 100%;
  height: auto;
}
h1,
h2,
h3,
p {
  margin-top: 0;
}
h1,
h2,
h3 {
  letter-spacing: -.025em;
}
button,
a {
  -webkit-tap-highlight-color: transparent;
}
:focus-visible {
  outline: 3px solid var(--color-brand);
  outline-offset: 4px;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
}
.skip-link {
  position: fixed;
  z-index: 1000;
  left: 1rem;
  top: -5rem;
  padding: .75rem 1rem;
  background: var(--color-black);
  color: var(--color-white);
}
.skip-link:focus {
  top: 1rem;
}
.landing-container {
  width: min(100% - (var(--space-page) * 2), var(--content-max));
  margin-inline: auto;
}
.eyebrow {
  margin-bottom: .75rem;
  color: var(--color-keyword);
  font-size: var(--landing-body-3-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-3-line-height);
  letter-spacing: -.01em;
}
.section {
  padding-block: var(--space-section);
  background: var(--color-white);
}
.section-gray {
  background: var(--color-gray);
}
.section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 3rem;
  margin-bottom: clamp(3rem, 7vw, 6rem);
}
.section-heading h2 {
  max-width: 16ch;
  margin-bottom: 0;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
}
.section-heading > p {
  max-width: 32rem;
  margin-bottom: .4rem;
  color: var(--color-text-muted);
}
.compact-heading h2 {
  max-width: 17ch;
}
.button {
  display: inline-flex;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: .75rem 1.25rem;
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-control-line-height);
}
.button-primary {
  background: var(--color-brand);
  color: var(--color-white);
}
.button-primary:hover {
  background: color-mix(in srgb, var(--color-brand) 82%, var(--color-black));
}
.button-ghost {
  border-color: rgba(255, 255, 255, .5);
  color: var(--color-white);
}
.site-header {
  position: fixed;
  z-index: 50;
  inset: 0 0 auto;
  display: grid;
  width: 100%;
  height: var(--header-height);
  grid-template-columns: auto 1fr auto;
  align-items: center;
  padding-inline: var(--space-page);
  border-bottom: 0;
  color: var(--color-white);
  background:
    linear-gradient(
      to bottom,
      rgba(0, 0, 0, .5),
      transparent);
  transition:
    transform .28s cubic-bezier(.2, .75, .2, 1),
    color .25s,
    background .25s;
  will-change: transform;
}
.site-header[data-hidden] {
  transform: translateY(calc(-100% - 1px));
}
.site-header[data-on-light],
.site-header[data-treatment-open] {
  color: var(--color-text);
  background: rgba(255, 255, 255, .92);
  backdrop-filter: blur(12px);
}
.site-header[data-menu-open] {
  color: var(--color-text);
  background: var(--color-white);
  backdrop-filter: none;
}
.site-header[data-on-light] .header-cta,
.site-header[data-treatment-open] .header-cta {
  border-color: var(--color-line);
}
.wordmark {
  display: flex;
  align-items: center;
  gap: .65rem;
}
.wordmark strong {
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
  letter-spacing: -.08em;
}
.wordmark span {
  font-size: var(--landing-ui-label-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-label-line-height);
}
.site-nav {
  display: flex;
  height: 100%;
  justify-content: center;
  gap: clamp(1.25rem, 3vw, 3rem);
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-ui-control-line-height);
}
.site-nav > a,
.nav-disclosure {
  display: flex;
  height: 100%;
  align-items: center;
  border: 0;
  padding: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  cursor: pointer;
}
.nav-group {
  position: relative;
  display: flex;
  height: 100%;
  align-items: stretch;
}
.nav-disclosure {
  gap: .65rem;
}
.nav-disclosure-indicator {
  position: relative;
  display: inline-block;
  width: .5625rem;
  height: .5625rem;
  flex: 0 0 .5625rem;
  opacity: .72;
}
.nav-disclosure-indicator::before {
  content: "";
  position: absolute;
  top: .0625rem;
  left: .0625rem;
  width: .375rem;
  height: .375rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
}
.nav-submenu {
  position: absolute;
  top: calc(100% + .35rem);
  left: 50%;
  display: block;
  width: 24rem;
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, -.5rem);
  transition:
    opacity .16s ease,
    transform .2s ease,
    visibility 0s linear .2s;
  pointer-events: none;
}
.nav-group[data-open] .nav-submenu {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, 0);
  transition-delay: 0s;
  pointer-events: auto;
}
.nav-submenu-inner {
  display: flex;
  min-height: 3rem;
  align-items: center;
  justify-content: space-evenly;
  overflow: hidden;
  border-radius: 999px;
  padding-inline: .75rem;
  color: var(--color-white);
  background: var(--color-black);
}
.nav-submenu a {
  display: flex;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  padding-inline: .75rem;
  color: inherit;
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-regular);
  line-height: var(--landing-ui-control-line-height);
  white-space: nowrap;
  transition: font-weight .16s ease, opacity .16s ease;
}
.nav-submenu a:hover,
.nav-submenu a:focus-visible {
  color: inherit;
  font-weight: var(--landing-font-weight-bold);
  opacity: 1;
}
.header-cta {
  display: inline-flex;
  height: 2.25rem;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: .75rem;
  padding-inline: .75rem;
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-ui-control-line-height);
}
.menu-button {
  display: none;
  width: 2.5rem;
  height: 2.5rem;
  place-items: center;
  border: 0;
  padding: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
}
.menu-lines {
  position: relative;
  display: block;
  width: 1.375rem;
  height: 1rem;
}
.menu-lines > span {
  position: absolute;
  left: 0;
  display: block;
  width: 1.375rem;
  height: .1875rem;
  border-radius: 999px;
  background: currentColor;
  transform-origin: center;
  transition:
    top .22s ease,
    transform .22s ease,
    opacity .14s ease,
    width .16s ease,
    left .16s ease;
}
.menu-lines > span:nth-child(1) {
  top: 0;
}
.menu-lines > span:nth-child(2) {
  top: .4375rem;
}
.menu-lines > span:nth-child(3) {
  top: .875rem;
}
.menu-button[aria-expanded=true] .menu-lines > span:nth-child(1) {
  top: .4375rem;
  transform: rotate(45deg);
}
.menu-button[aria-expanded=true] .menu-lines > span:nth-child(2) {
  left: .6875rem;
  width: 0;
  opacity: 0;
}
.menu-button[aria-expanded=true] .menu-lines > span:nth-child(3) {
  top: .4375rem;
  transform: rotate(-45deg);
}
.hero {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  background: var(--color-black) url(../assets/images/webp/clinic-hero-poster-1920.webp) center / cover no-repeat;
}
.hero h1 {
  font-size: var(--landing-heading-1-size);
  line-height: var(--landing-heading-1-line-height);
}
.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.concern-section {
  --concern-scroll-extension: 6.25rem;
  position: relative;
  height: calc(400svh + var(--concern-scroll-extension));
  min-height: calc(400svh + var(--concern-scroll-extension));
  background: var(--color-concern-canvas);
}
.concern-sticky {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 100svh;
  overflow: hidden;
  background: var(--color-concern-canvas);
}
.concern-stage {
  position: absolute;
  z-index: 2;
  inset: var(--header-height) var(--space-page) 0;
  display: grid;
  align-items: start;
  justify-items: center;
}
.concern-section[data-pin-disabled] {
  height: auto;
  min-height: var(--pin-fallback-min-height);
}
.concern-section[data-pin-disabled] .concern-sticky {
  position: absolute;
  inset: 0 0 auto;
  height: var(--pin-fallback-min-height);
  min-height: 0;
  visibility: hidden;
  pointer-events: none;
}
.concern-fallback-list {
  display: none;
}
.concern-section[data-pin-disabled] .concern-fallback-list {
  display: grid;
  width: min(calc(100% - (var(--space-page) * 2)), 46rem);
  min-height: max(100svh, var(--pin-fallback-min-height));
  place-items: center;
  margin-inline: auto;
  padding-block: calc(var(--header-height) + 2rem) 3rem;
}
.concern-fallback-copy {
  container: concern-copy / inline-size;
  position: relative;
  z-index: 2;
  display: grid;
  width: 100%;
  justify-items: center;
  gap: clamp(1rem, 2svh, 1.5rem);
  text-align: center;
}
.concern-copy {
  container: concern-copy / inline-size;
  display: grid;
  width: min(100%, 46rem);
  gap: clamp(1rem, 2svh, 1.5rem);
  padding-top: 1rem;
  text-align: center;
}
.concern-chat-header {
  width: min(100%, 42rem);
  min-height: 3.5rem;
  margin-inline: auto;
}
.concern-dialogue {
  display: grid;
  width: min(100%, 42rem);
  justify-items: stretch;
  row-gap: .625rem;
  margin-inline: auto;
  text-align: left;
}
.concern-message {
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: flex-end;
  gap: .5rem;
  transform-origin: right center;
}
.concern-message:nth-child(even) {
  flex-direction: row-reverse;
  justify-content: flex-end;
  transform-origin: left center;
}
.concern-time {
  flex: none;
  margin-bottom: .125rem;
  color: var(--color-concern-meta);
  font-size: var(--landing-ui-control-size);
  font-style: normal;
  line-height: var(--landing-ui-control-line-height);
  font-variant-numeric: tabular-nums;
}
.concern-bubble {
  position: relative;
  isolation: isolate;
  width: fit-content;
  min-width: min(17rem, 82%);
  max-width: min(82%, 34rem);
  margin: 0;
  border-radius: 1.25rem;
  padding: 1rem;
  color: var(--color-concern-ink);
  background: var(--color-concern-bubble);
  font-size: var(--landing-body-1-size);
  font-weight: var(--landing-font-weight-regular);
  line-height: var(--landing-body-1-line-height);
  text-align: left;
  text-wrap: pretty;
  white-space: pre-line;
}
.concern-bubble::before {
  display: none;
}
.concern-bubble::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: -.25rem;
  width: 1.5rem;
  height: 1.25rem;
  background: var(--color-concern-bubble);
  clip-path: path("M 0 0 H 24 C 19 2 15 6 13 10 C 10 14 9 18 9 20 C 7 12 4 4 0 0 Z");
}
.concern-message:nth-child(even) .concern-bubble::after {
  right: auto;
  left: -.25rem;
  transform: scaleX(-1);
}
.concern-bubble:empty {
  display: none;
}
.brand-reveal {
  position: relative;
  height: 320svh;
  overflow: clip;
  background: var(--color-white);
}
.brand-sticky {
  position: sticky;
  top: 0;
  min-height: 100svh;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.brand-title {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  gap: clamp(.8rem, 2svh, 1.5rem);
  margin: 0;
  padding-inline: var(--space-page);
  font-size: var(--landing-heading-2-size);
  line-height: var(--landing-heading-2-line-height);
  text-align: center;
}
.brand-title > span {
  display: block;
  font: inherit;
}
.brand-accent {
  color: var(--color-brand);
}
.brand-mask {
  --reveal: 0;
  --reveal-width: calc(1rem + ((100% - 1rem) * var(--reveal)));
  --reveal-height: calc(3.8rem + ((100% - 3.8rem) * var(--reveal)));
  position: absolute;
  z-index: 2;
  left: calc(50% + clamp(-.3rem, -.35vw, 0rem));
  top: calc(50% + var(--pin-visible-center-offset, 0px));
  width: 145vw;
  height: calc(var(--pin-visible-height, 100svh) * 1.45);
  overflow: hidden;
  visibility: hidden;
  border-radius: calc(1rem + (3rem * var(--reveal)));
  opacity: 0;
  background: var(--color-black);
  clip-path: inset(calc((100% - var(--reveal-height)) / 2) calc((100% - var(--reveal-width)) / 2) round calc(1rem + (3rem * var(--reveal))));
  translate: -50% -50%;
  transform: translateZ(0);
  backface-visibility: hidden;
  contain: paint;
  will-change: clip-path, opacity;
}
.brand-mask.is-visible {
  visibility: visible;
  opacity: 1;
}
.brand-mask picture {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.brand-mask img {
  position: absolute;
  inset: 0;
  height: 100%;
  object-fit: cover;
  opacity: clamp(0, calc((var(--reveal) - .08) * 2.5), .8);
  filter: brightness(.48);
}
.brand-mask-copy {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: grid;
  place-content: center;
  padding: 2rem;
  color: var(--color-white);
  text-align: center;
  opacity: clamp(0, calc((var(--reveal) - .42) * 4), 1);
}
.brand-mask-copy p {
  margin-bottom: .35rem;
  font-size: var(--landing-body-1-size);
  line-height: var(--landing-body-1-line-height);
}
.brand-mask-copy strong {
  max-width: 24ch;
  font-size: var(--landing-heading-2-size);
  line-height: var(--landing-heading-2-line-height);
}
.brand-mask-copy .brand-accent {
  color: var(--color-brand);
}
.brand-reveal[data-pin-disabled] {
  height: auto;
}
.brand-reveal[data-pin-disabled] .brand-sticky {
  position: relative;
  min-height: 0;
  align-content: start;
  gap: 3rem;
  padding-top: calc(var(--header-height) + 4rem);
}
.brand-reveal[data-pin-disabled] .brand-mask {
  --reveal: 1;
  position: relative;
  top: auto;
  left: auto;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 770 / 501;
  visibility: visible;
  border-radius: 0;
  opacity: 1;
  clip-path: none;
  translate: none;
  transform: none;
  contain: none;
  will-change: auto;
}
.brand-reveal[data-pin-disabled] .brand-mask picture {
  position: absolute;
  inset: 0;
}
.brand-reveal[data-pin-disabled] .brand-mask img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: .8;
}
.brand-reveal[data-pin-disabled] .brand-mask-copy {
  padding: var(--space-page);
  opacity: 1;
}
.case-section {
  --case-backdrop: var(--color-gray);
  overflow: hidden;
}
.case-heading h2 {
  max-width: 22ch;
}
.coverflow {
  position: relative;
  min-height: 0;
  padding-bottom: 5rem;
}
.coverflow-track {
  position: relative;
  height: 36rem;
  perspective: 1200px;
  touch-action: pan-y;
}
.case-card {
  --offset: 0;
  --abs-offset: 0;
  --case-dim: .5;
  position: absolute;
  left: 50%;
  top: 0;
  width: min(78vw, 37rem);
  isolation: isolate;
  opacity: 0;
  pointer-events: none;
  transform: translateX(calc(-50% + (var(--offset) * min(38vw, 28rem)))) translateZ(calc(var(--abs-offset) * -190px)) rotateY(calc(var(--offset) * -15deg)) scale(calc(1 - (min(var(--abs-offset), 2) * .09)));
  transition: transform .6s cubic-bezier(.2, .75, .2, 1), opacity .35s;
  cursor: pointer;
  backface-visibility: hidden;
}
.case-card::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -2px;
  background: var(--case-backdrop);
  pointer-events: none;
}
.case-card-surface {
  position: relative;
  z-index: 1;
  height: 100%;
  overflow: hidden;
  border-radius: var(--radius-card);
  background: var(--color-white);
  clip-path: inset(0 round var(--radius-card));
  isolation: isolate;
}
.case-card-surface::before {
  content: "";
  position: absolute;
  z-index: 7;
  inset: 0;
  border: 1px solid var(--color-line);
  border-radius: inherit;
  pointer-events: none;
}
.case-card[data-visible]:not([data-active]) .case-card-surface::after {
  content: "";
  position: absolute;
  z-index: 6;
  inset: 0;
  border-radius: inherit;
  background: rgb(255 255 255 / var(--case-dim));
  pointer-events: none;
}
.case-card[data-neighbor] {
  opacity: 1;
  pointer-events: auto;
}
.case-card[data-active] {
  filter: none;
  opacity: 1;
  pointer-events: auto;
  cursor: default;
}
.coverflow--five .coverflow-track {
  height: 32rem;
}
.coverflow[data-coverflow-snap] .case-card {
  transition: none;
}
.coverflow--five .case-card {
  width: min(78vw, 37rem);
  transform: translateX(calc(-50% + (var(--offset) * 25vw))) translateZ(calc(var(--abs-offset) * -150px)) rotateY(calc(var(--offset) * -8deg));
}
.coverflow--five .case-card[data-visible]:not([data-active]) {
  opacity: 1;
  pointer-events: auto;
}
.coverflow--five .case-card[data-distance="1"] {
  --case-dim: .32;
}
.coverflow--five .case-card[data-distance="2"] {
  --case-dim: .68;
}
.case-card:not([data-active]) .image-compare input {
  pointer-events: none;
}
.image-compare {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0;
  background: var(--color-white);
  clip-path: inset(0 round calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0);
  isolation: isolate;
}
.compare-half {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.compare-half picture {
  position: absolute;
  inset: 0;
}
.compare-half img {
  position: absolute;
  top: -2px;
  width: calc(200% + 4px);
  max-width: none;
  height: calc(100% + 4px);
  object-fit: cover;
}
.compare-before img {
  left: -2px;
}
.compare-after {
  clip-path: inset(0 0 0 var(--compare));
}
.compare-after img {
  right: -2px;
}
.compare-line {
  position: absolute;
  z-index: 3;
  left: var(--compare);
  top: 0;
  bottom: 0;
  width: 2px;
  translate: -1px;
  background: var(--color-white);
}
.compare-line span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  translate: -50% -50%;
  border-radius: 50%;
  background: var(--color-white);
  color: var(--color-text);
  box-shadow: 0 5px 20px rgba(0, 0, 0, .18);
}
.image-compare input {
  position: absolute;
  z-index: 4;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: ew-resize;
}
.compare-label {
  position: absolute;
  z-index: 3;
  top: 1rem;
  border-radius: 999px;
  padding: .25rem .6rem;
  color: var(--color-white);
  background: rgba(0, 0, 0, .48);
  font-size: var(--landing-ui-meta-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-meta-line-height);
}
.compare-label-before {
  left: 1rem;
}
.compare-label-after {
  right: 1rem;
}
.case-copy {
  padding: 1.5rem 1.75rem 1.75rem;
}
.case-copy span {
  color: var(--color-brand);
  font-size: var(--landing-ui-meta-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-meta-line-height);
}
.case-copy h3 {
  margin: .5rem 0 .7rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.case-copy p {
  max-width: 52ch;
  margin-bottom: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.coverflow-controls {
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  gap: 1rem;
  translate: -50%;
}
.coverflow-controls button {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  border: 1px solid var(--color-line);
  border-radius: 50%;
  background: var(--color-white);
  font-size: var(--landing-ui-control-size);
  line-height: var(--landing-ui-control-line-height);
  cursor: pointer;
}
.coverflow-controls button:last-child {
  border-color: var(--color-black);
  color: var(--color-white);
  background: var(--color-black);
}
.coverflow-controls span {
  min-width: 4.5rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.coverflow-controls strong {
  color: var(--color-text);
}
.faq-section {
  position: relative;
  z-index: 4;
  padding-block: var(--space-section);
  background: var(--color-white);
}
.faq-section-inner {
  width: min(100% - (var(--space-page) * 2), 42.5rem);
  margin-inline: auto;
}
.faq-section-heading {
  display: grid;
  justify-items: center;
  margin-bottom: clamp(3rem, 7vw, 5rem);
  text-align: center;
}
.faq-section-label {
  margin: 0 0 1rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-ui-label-line-height);
  letter-spacing: .15em;
  text-transform: uppercase;
}
.faq-section-heading h2 {
  max-width: 18ch;
  white-space: pre-line;
}
.faq-section-subtitle {
  max-width: 24rem;
  margin: 1rem 0 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.faq-list {
  display: grid;
  gap: .75rem;
}
.faq-item {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--color-line) 72%, var(--color-white));
  border-radius: 1rem;
  background: var(--color-white);
  transition: border-color .2s ease;
}
.faq-item:hover,
.faq-item[data-open] {
  border-color: var(--color-line);
}
.faq-trigger {
  display: flex;
  width: 100%;
  min-height: 4.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 0;
  padding: 1.15rem 1.25rem;
  color: var(--color-text);
  background: transparent;
  font-size: var(--landing-body-4-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-body-4-line-height);
  text-align: left;
  cursor: pointer;
}
.faq-trigger:focus-visible {
  border-radius: calc(1rem - 1px);
  outline-offset: -3px;
}
.faq-icon {
  position: relative;
  display: grid;
  width: 1.75rem;
  height: 1.75rem;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: var(--color-black);
}
.faq-icon::before,
.faq-icon::after {
  content: "";
  position: absolute;
  width: .7rem;
  height: 1px;
  background: var(--color-white);
  transition: transform .2s ease;
}
.faq-icon::after {
  transform: rotate(90deg);
}
.faq-trigger[aria-expanded=true] .faq-icon::after {
  transform: rotate(90deg) scaleX(0);
}
.faq-panel {
  overflow: hidden;
}
.faq-answer {
  margin: 0;
  padding: 0 1.25rem 1.25rem;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.review-heading {
  display: block;
}
.review-heading h2 {
  max-width: 18ch;
}
.review-heading > p {
  max-width: 44rem;
  margin: 1.5rem 0 0;
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
}
.review-window {
  min-height: 14.125rem;
  overflow: hidden;
  -webkit-mask-image:
    linear-gradient(
      90deg,
      transparent,
      black 8%,
      black 92%,
      transparent);
  mask-image:
    linear-gradient(
      90deg,
      transparent,
      black 8%,
      black 92%,
      transparent);
}
.review-track {
  --infinite-gap: 1rem;
  --infinite-half-gap: .5rem;
  display: flex;
  width: max-content;
  gap: var(--infinite-gap);
}
.review-track[data-infinite-ready] {
  animation: infinite-marquee var(--infinite-duration) linear infinite;
  animation-direction: var(--infinite-direction);
  will-change: transform;
}
.review-window:hover .review-track[data-pause-on-hover] {
  animation-play-state: paused;
}
.review-card {
  width: min(86vw, 27rem);
  flex: none;
  border: 1px solid #e5e8e7;
  border-radius: .85rem;
  padding: 1.25rem 1.25rem 1rem;
  background: var(--color-white);
}
.review-card-header {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  gap: .75rem;
  align-items: center;
}
.review-card-header > picture {
  width: 2.75rem;
  height: 2.75rem;
}
.review-avatar {
  display: block;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  object-fit: cover;
  background: #eef0ef;
}
.review-card-header > span:nth-child(2) {
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.review-card-header strong {
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.review-card-header small {
  overflow: hidden;
  color: #8a918f;
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.review-card > p {
  min-height: 7.5rem;
  margin: 1.25rem 0 .25rem;
  font-size: var(--landing-body-4-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-body-4-line-height);
}
@keyframes infinite-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(calc(-50% - var(--infinite-half-gap)), 0, 0);
  }
}
.treatment-layout {
  display: grid;
  grid-template-columns: minmax(15rem, 1fr) minmax(0, 3fr);
  gap: clamp(2rem, 5vw, 6rem);
}
.treatment-intro {
  align-self: center;
  display: flex;
  flex-direction: column;
}
.treatment-intro h2 {
  margin-bottom: 1.5rem;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
}
.treatment-intro > p {
  color: var(--color-text-muted);
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
}
.treatment-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(.75rem, 2vw, 1.5rem);
}
.treatment-card {
  display: block;
}
.treatment-card picture {
  margin-bottom: 1.25rem;
  overflow: hidden;
}
.treatment-card img {
  aspect-ratio: .72;
  object-fit: cover;
  margin: 0;
  filter: saturate(.82);
  transition: transform .5s, filter .5s;
}
.treatment-card:hover img {
  transform: translateY(-.5rem);
  filter: saturate(1);
}
.treatment-card h3 {
  margin: 0 0 .6rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.treatment-card p {
  max-width: 25rem;
  margin-bottom: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.evidence-heading {
  margin-bottom: clamp(5rem, 12vw, 10rem);
}
.evidence-heading > p {
  margin: 0 0 .15rem;
  color: var(--color-brand);
  font-size: var(--landing-heading-3-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-heading-3-line-height);
  letter-spacing: -.025em;
}
.evidence-heading h2 {
  max-width: 17ch;
  margin-bottom: 0;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
}
.evidence-flow {
  display: grid;
  grid-template-columns: minmax(16rem, .78fr) minmax(0, 1.55fr);
  gap: clamp(3rem, 8vw, 8rem);
}
.evidence-nav {
  position: sticky;
  top: 50svh;
  align-self: start;
  display: grid;
  gap: 1.35rem;
  margin: 0;
  padding: 0;
  translate: 0 -50%;
  list-style: none;
}
.evidence-nav li {
  color: #a1a7a5;
  font-size: var(--landing-body-1-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-1-line-height);
  transition: color .25s, transform .25s;
}
.evidence-nav li[aria-current=true] {
  color: var(--color-text);
  transform: translateX(.5rem);
}
.evidence-nav span {
  display: inline-block;
  width: 2rem;
  color: var(--color-keyword);
  font-size: var(--landing-body-3-size);
  line-height: var(--landing-body-3-line-height);
  font-variant-numeric: tabular-nums;
  vertical-align: .15rem;
}
.evidence-panels {
  display: grid;
}
.evidence-panels article {
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.5rem;
  padding-block: 7rem;
}
.evidence-panels img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: var(--radius-card);
}
.evidence-panel-copy {
  display: grid;
  gap: 1.5rem;
}
.evidence-kicker {
  margin: 0;
  color: var(--color-keyword);
  font-size: var(--landing-body-3-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-3-line-height);
}
.evidence-title {
  max-width: none;
  margin: 0;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.evidence-prose {
  display: grid;
  gap: 1rem;
  max-width: 43rem;
  color: var(--color-text-muted);
}
.evidence-prose p {
  margin: 0;
  font-size: var(--landing-body-3-size);
  line-height: var(--landing-body-3-line-height);
}
.anesthesia-steps {
  --step-gap: clamp(2rem, 5vw, 4rem);
  counter-reset: anesthesia-step;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--step-gap);
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}
.anesthesia-steps li {
  counter-increment: anesthesia-step;
  position: relative;
  display: flex;
  min-height: 12rem;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding-top: 2.75rem;
}
.anesthesia-steps li::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: -.3rem;
  left: 0;
  width: .6rem;
  height: .6rem;
  border-radius: 50%;
  background: var(--color-brand);
}
.anesthesia-steps li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  left: .3rem;
  width: calc(100% + var(--step-gap));
  height: 1px;
  background: var(--color-line);
}
.anesthesia-steps span {
  margin-bottom: .85rem;
  color: var(--color-brand);
  font-size: var(--landing-ui-label-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-label-line-height);
}
.anesthesia-steps strong {
  margin-bottom: .75rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.anesthesia-steps p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.equipment-evidence-panel {
  min-height: 520svh !important;
  justify-content: flex-start !important;
}
.equipment-sticky-content {
  position: sticky;
  top: 6rem;
  display: grid;
  width: 100%;
  gap: 1.5rem;
}
.equipment-static-intro,
.equipment-sticky-anchor {
  display: grid;
  gap: 1.5rem;
}
.equipment-evidence-panel[data-pin-disabled] {
  min-height: 0 !important;
}
.equipment-evidence-panel[data-pin-disabled] .equipment-sticky-content,
.equipment-evidence-panel[data-pin-disabled] .equipment-sticky-anchor {
  position: relative;
  top: auto;
}
.equipment-card-stack {
  position: relative;
  width: 100%;
  margin-inline: auto;
  container: equipment-stack / inline-size;
}
.equipment-stack-stage {
  position: relative;
  height: clamp(26rem, calc(100svh - 18rem), 27.5rem);
  touch-action: pan-y;
  user-select: none;
}
.equipment-card {
  position: absolute;
  inset: 0;
  display: grid !important;
  min-height: 0 !important;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0 !important;
  overflow: hidden;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-card);
  padding: 0 !important;
  background: var(--color-white);
  box-shadow: 0 1.4rem 3rem rgba(16, 22, 21, .09);
  opacity: 0;
  transform: translateX(var(--drag-x, 0)) translateY(var(--stack-y, 0)) scale(var(--stack-scale, 1)) rotate(calc(var(--stack-rotate, 0deg) + var(--drag-rotate, 0deg)));
  transform-origin: center bottom;
  transition: transform .38s cubic-bezier(.2, .75, .2, 1), opacity .28s;
  pointer-events: none;
}
.equipment-card[data-active] {
  cursor: grab;
  pointer-events: auto;
}
.equipment-card[data-dragging] {
  cursor: grabbing;
  transition: none;
}
.equipment-card-media {
  height: clamp(11.5rem, calc(100svh - 32.5rem), 13rem);
  overflow: hidden;
}
.equipment-card-media picture {
  height: 100%;
}
.equipment-card-media img {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  border-radius: 0;
  object-fit: contain;
  object-position: center;
  pointer-events: none;
}
.equipment-card:nth-child(1) .equipment-card-media img {
  scale: 1.15;
}
.equipment-card:nth-child(2) .equipment-card-media img {
  scale: 1.4;
}
.equipment-card:nth-child(3) .equipment-card-media img {
  scale: 1.4;
}
.equipment-card:nth-child(4) .equipment-card-media img {
  scale: 1.25;
}
.equipment-card:nth-child(5) .equipment-card-media img {
  scale: 1.25;
}
.equipment-card:nth-child(6) .equipment-card-media img {
  scale: 1.45;
}
.equipment-card-copy {
  padding: .75rem 1.5rem;
}
.equipment-card h5 {
  margin: 0 0 .55rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
  letter-spacing: -.035em;
}
.equipment-card p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.equipment-card p + p {
  margin-top: .35rem;
}
.equipment-stack-status {
  position: absolute;
  z-index: 10;
  right: 1.5rem;
  bottom: .75rem;
  display: flex;
  gap: .35rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}
.equipment-stack-status span:first-child {
  color: var(--color-text);
  font-weight: var(--landing-font-weight-bold);
}
.evidence-question {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
}
.doctor-gallery {
  background: transparent;
}
.doctors-heading {
  max-width: 64rem;
  margin: 0 auto clamp(3rem, 7vw, 6rem);
}
.doctors-eyebrow {
  margin: 0 0 .5rem;
  color: var(--color-keyword);
  font-size: var(--landing-body-3-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-3-line-height);
}
.doctors-heading h2 {
  max-width: none;
  margin: 0;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
  white-space: nowrap;
}
.doctors-heading > p:not(.doctors-eyebrow) {
  max-width: 38rem;
  margin: 1rem 0 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
}
.doctor-main {
  width: min(100%, 64rem);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(19rem, 26rem) minmax(20rem, 1fr);
  gap: clamp(2.5rem, 6vw, 6rem);
  align-items: stretch;
  transition: opacity .2s;
}
.doctor-gallery.is-changing .doctor-main {
  opacity: .45;
}
.doctor-media {
  min-width: 0;
}
.doctor-portrait {
  height: 35rem;
  overflow: hidden;
  border-radius: .75rem;
  background: var(--color-white);
}
.doctor-portrait picture {
  height: 100%;
}
.doctor-portrait img {
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.doctor-content {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  justify-content: center;
  padding-block: 1rem;
}
.doctor-content > p {
  margin-bottom: .25rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-ui-label-line-height);
}
.doctor-content h3 {
  margin-bottom: 1.5rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.doctor-content blockquote {
  min-height: 7.7rem;
  max-width: 16ch;
  margin: 0 0 2rem;
  font-size: var(--landing-body-1-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-1-line-height);
  letter-spacing: -.03em;
}
.doctor-content ul {
  min-height: 4.75rem;
  margin: 0 0 2rem;
  padding: 0;
  list-style: none;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.doctor-content li::before {
  content: "\2014  ";
}
.doctor-media-footer {
  margin-top: .75rem;
}
.doctor-thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .45rem;
  min-width: 0;
}
.doctor-thumb {
  width: 100%;
  height: 5.25rem;
  min-width: 0;
  overflow: hidden;
  border: 0;
  border-radius: .55rem;
  padding: 0;
  background: var(--color-white);
  cursor: pointer;
  opacity: .5;
  transition: opacity .25s, outline-color .25s;
}
.doctor-thumb picture {
  width: 100%;
  height: 100%;
}
.doctor-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: var(--color-white);
}
.doctor-thumb span {
  display: none;
}
.doctor-thumb[aria-current=true] {
  outline: 2px solid var(--color-brand);
  outline-offset: -2px;
  opacity: 1;
}
.doctor-controls {
  display: flex;
  justify-content: flex-end;
  gap: .45rem;
  margin-top: auto;
  padding-top: 2rem;
}
.doctor-controls button {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  border: 1px solid var(--color-line);
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}
.doctor-controls button:last-child {
  border-color: var(--color-black);
  color: var(--color-white);
  background: var(--color-black);
}
.features-section {
  --feature-surface: var(--feature-card-surface);
  --feature-content-max: 81.5rem;
  --feature-copy-padding: 1.25rem;
  --feature-status-running: color-mix(in srgb, var(--color-brand) 34%, var(--color-text));
  --feature-status-complete: #4f6658;
}
.features-section .landing-container {
  width: min(100% - (var(--space-page) * 2), var(--feature-content-max));
}
.features-heading {
  display: grid;
  max-width: 58rem;
  gap: 1rem;
  margin-bottom: clamp(3rem, 6vw, 5rem);
}
.features-heading h2 {
  max-width: none;
  margin: 0;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
  letter-spacing: -.045em;
}
.features-heading p {
  max-width: 42rem;
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
}
.feature-bento {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1.5rem;
}
.feature-card {
  position: relative;
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: 30.1875rem;
  overflow: hidden;
  flex-direction: column;
  border: 1px solid var(--feature-card-border);
  border-radius: 1.25rem;
  background: var(--feature-surface);
  isolation: isolate;
}
.feature-card-hours,
.feature-card-cost {
  grid-column: span 6;
  aspect-ratio: 644 / 483;
}
.feature-card-lab,
.feature-card-sterile,
.feature-card-quality {
  height: 31.25rem;
  min-height: 31.25rem;
  grid-column: span 4;
}
.feature-card-care {
  min-height: 32.5rem;
  grid-column: span 12;
}
.feature-card-cost {
  background: var(--feature-scene-cost);
}
.feature-card-lab {
  background: var(--feature-scene-lab);
}
.feature-card-sterile {
  background: var(--feature-scene-sterile);
}
.feature-card-quality {
  background: var(--feature-scene-quality);
}
.feature-card-care {
  background: var(--feature-scene-care);
}
.feature-card:not(.feature-card-hours)::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background:
    linear-gradient(
      to bottom,
      color-mix(in srgb, var(--color-white) 32%, transparent),
      transparent 42%);
  pointer-events: none;
}
.feature-visual {
  position: relative;
  z-index: 1;
  min-height: 0;
  flex: 1 1 auto;
  overflow: hidden;
  background: transparent;
  isolation: isolate;
}
.feature-copy {
  position: relative;
  z-index: 4;
  order: -1;
  width: 100%;
  min-width: 0;
  min-height: 0;
  padding: var(--feature-copy-padding);
  background: transparent;
}
.feature-copy h3 {
  width: 100%;
  max-width: none;
  margin: 0 0 .4rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
  letter-spacing: -.035em;
  text-wrap: balance;
}
.feature-copy p {
  max-width: 42rem;
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.scene-window-bar {
  display: flex;
  min-height: 2.5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-bottom: 1px solid var(--color-line);
  padding: 0 1rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
}
.scene-window-bar strong {
  color: var(--color-brand);
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
}
.feature-card-hours {
  position: relative;
  background: var(--feature-card-surface);
}
.feature-card-hours .feature-copy {
  isolation: isolate;
  text-shadow: 0 1px 12px color-mix(in srgb, var(--color-black) 24%, transparent);
}
.feature-card-hours .feature-copy::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -1px -1px -4rem;
  background: transparent;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  -webkit-mask-image:
    linear-gradient(
      to bottom,
      #000 0%,
      #000 48%,
      transparent 100%);
  mask-image:
    linear-gradient(
      to bottom,
      #000 0%,
      #000 48%,
      transparent 100%);
}
.hours-visual {
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: transparent;
}
.hours-celestial-wheel {
  position: absolute;
  z-index: 1;
  top: 27%;
  left: 105%;
  width: 250%;
  max-width: none;
  aspect-ratio: 1;
  object-fit: contain;
  transform: translate(-50%, -50%) rotate(0deg);
  transform-origin: center;
  will-change: transform;
}
.hours-building {
  position: absolute;
  z-index: 2;
  right: -1px;
  bottom: -1px;
  width: calc(100% + 2px);
  height: 72%;
  max-width: none;
  object-fit: contain;
  object-position: right bottom;
  filter: drop-shadow(0 .8rem 1rem rgba(4, 10, 22, .2));
}
.lab-visual {
  display: grid;
  place-items: center;
  padding: .5rem;
}
.lab-queue {
  display: grid;
  width: min(78%, 20rem);
  height: 116px;
  flex: 0 0 auto;
  grid-template-columns: 32px minmax(0, 1fr) 36px;
  grid-template-rows: 32px 36px;
  gap: 14px 12px;
  border: 1px solid var(--color-line);
  border-radius: 16px;
  padding: 16px;
  color: var(--color-text);
  background: var(--feature-inner-lab);
  box-shadow: 0 14px 28px rgba(16, 22, 21, .1);
  transform: scale(1.24);
}
.lab-queue-icon {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 1px solid var(--color-line);
  border-radius: 50%;
  color: var(--color-brand);
  background: var(--feature-inner-sterile);
}
.lab-queue-icon svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}
.lab-queue-copy {
  display: grid;
  align-content: center;
}
.lab-queue-copy strong {
  font-size: var(--landing-ui-meta-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-meta-line-height);
}
.lab-queue-copy span {
  height: 1rem;
  overflow: hidden;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-meta-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-ui-meta-line-height);
  transition: opacity .16s ease, transform .16s ease;
}
.lab-queue-percent {
  display: flex;
  height: 1.25rem;
  min-width: 36px;
  align-items: center;
  justify-content: flex-end;
  align-self: center;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  font-weight: var(--landing-font-weight-medium);
  font-variant-numeric: tabular-nums;
  line-height: var(--landing-ui-label-line-height);
}
.lab-queue-blocks {
  display: flex;
  height: 36px;
  grid-column: 1 / -1;
  align-items: stretch;
  gap: 4px;
}
.lab-queue-blocks i {
  flex: 1;
  overflow: hidden;
  border: 1px solid var(--color-line);
  border-radius: 6px;
  background: var(--feature-inner-sterile);
}
.lab-queue-blocks i span {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--color-brand);
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .42s cubic-bezier(.2, .8, .2, 1), opacity .2s ease;
}
.lab-queue-blocks i[data-filled] span {
  opacity: .7;
  transform: scaleX(1);
}
.lab-queue-blocks i[data-latest] span {
  opacity: 1;
}
.cost-visual {
  display: grid;
  place-items: center;
  padding: 1.5rem;
}
.comparison-chart {
  display: grid;
  width: min(100%, 31rem);
  gap: 1.35rem;
}
.comparison-chart-head {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  padding-left: 2.25rem;
  text-align: center;
}
.comparison-chart-head strong,
.comparison-chart-head span {
  color: var(--color-text);
  font-size: var(--landing-ui-meta-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-meta-line-height);
}
.comparison-chart-plot {
  position: relative;
  height: 13rem;
  padding-left: 2.25rem;
}
.comparison-y-axis {
  position: absolute;
  inset: 0 auto 0 0;
  width: 1.75rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-meta-size);
  font-variant-numeric: tabular-nums;
  line-height: var(--landing-ui-meta-line-height);
  text-align: right;
}
.comparison-y-axis span {
  position: absolute;
  right: 0;
  transform: translateY(-50%);
}
.comparison-y-axis span:nth-child(1) {
  top: 0;
}
.comparison-y-axis span:nth-child(2) {
  top: 25%;
}
.comparison-y-axis span:nth-child(3) {
  top: 50%;
}
.comparison-y-axis span:nth-child(4) {
  top: 75%;
}
.comparison-y-axis span:nth-child(5) {
  top: 100%;
}
.comparison-grid {
  position: absolute;
  inset: 0 0 0 2.25rem;
}
.comparison-grid i {
  position: absolute;
  right: 0;
  left: 0;
  display: block;
  border-top: 1px solid var(--color-line);
}
.comparison-grid i:nth-child(1) {
  top: 0;
}
.comparison-grid i:nth-child(2) {
  top: 25%;
}
.comparison-grid i:nth-child(3) {
  top: 50%;
}
.comparison-grid i:nth-child(4) {
  top: 75%;
}
.comparison-grid i:nth-child(5) {
  top: 100%;
}
.comparison-groups {
  position: absolute;
  z-index: 1;
  inset: 0 0 0 2.25rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
  padding-inline: 1.25rem;
}
.comparison-group {
  display: grid;
  min-width: 0;
  grid-template-rows: minmax(0, 1fr);
  justify-items: center;
}
.comparison-bars {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: end;
  justify-content: center;
  gap: .65rem;
}
.comparison-bar {
  position: relative;
  width: clamp(2rem, 30%, 3.25rem);
  height: calc(var(--bar-current, 0) * 1%);
  min-height: 1px;
}
.comparison-bar > span {
  position: absolute;
  inset: 0;
  border-radius: .35rem .35rem 0 0;
  background: #c8ccd3;
}
.comparison-bar-brand > span {
  background: var(--color-brand);
}
.comparison-legend {
  display: flex;
  justify-content: center;
  gap: 1rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
}
.comparison-legend span {
  display: flex;
  align-items: center;
  gap: .3rem;
}
.comparison-legend i {
  width: .55rem;
  height: .55rem;
  border-radius: .15rem;
  background: #c8ccd3;
}
.comparison-legend span:last-child i {
  background: var(--color-brand);
}
.sterile-visual {
  display: grid;
  place-items: center;
}
.circuit-board {
  --circuit-glow: #34d399;
  width: 120%;
  max-width: 45rem;
  color: color-mix(in srgb, var(--color-brand) 26%, var(--color-line));
}
.circuit-board > svg {
  display: block;
  width: 100%;
  height: auto;
}
.circuit-board foreignObject {
  overflow: visible;
}
.circuit-traces path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1;
  opacity: .38;
}
.circuit-pulses path {
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  opacity: 1;
}
.circuit-pins circle {
  fill: currentColor;
  opacity: .25;
}
.circuit-chip {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  gap: .2rem;
  border: 1px solid color-mix(in srgb, var(--circuit-glow) 44%, var(--color-line));
  border-radius: .75rem;
  color: var(--color-text-muted);
  background: var(--feature-inner-sterile);
  box-shadow:
    0 2px 8px rgba(16, 22, 21, .08),
    0 0 16px color-mix(in srgb, var(--circuit-glow) 32%, transparent),
    0 0 38px color-mix(in srgb, var(--circuit-glow) 20%, transparent),
    inset 0 1px 0 rgba(255, 255, 255, .72);
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-ui-control-line-height);
}
.circuit-chip > svg {
  width: 1.65rem;
  flex: 0 0 auto;
  fill: none;
  stroke: var(--color-brand);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.circuit-chip strong {
  color: var(--color-text);
}
.feature-card-quality {
  position: relative;
}
.feature-card-quality .feature-copy {
  z-index: 2;
  order: -1;
  background: transparent;
}
.quality-visual {
  position: relative;
  z-index: 1;
  width: 100%;
  flex: 1 1 auto;
}
.quality-logo-cloud {
  position: absolute;
  inset: 0;
  overflow: hidden;
  contain: layout paint;
  pointer-events: none;
  user-select: none;
  -webkit-mask-image:
    radial-gradient(
      ellipse 60% 55% at 50% 53%,
      var(--color-black) 50%,
      color-mix(in srgb, var(--color-black) 90%, transparent) 50%,
      color-mix(in srgb, var(--color-black) 15%, transparent) 80%,
      transparent 100%);
  mask-image:
    radial-gradient(
      ellipse 60% 55% at 50% 53%,
      var(--color-black) 50%,
      color-mix(in srgb, var(--color-black) 90%, transparent) 50%,
      color-mix(in srgb, var(--color-black) 15%, transparent) 80%,
      transparent 100%);
}
.quality-logo-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity .2s ease;
}
.quality-logo-cloud[data-quality-ready] .quality-logo-canvas {
  opacity: 1;
}
.quality-logo-fallback {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(34rem, 126%);
  transform: translate(-50%, -50%);
  transition: opacity .2s ease;
}
.quality-logo-cloud[data-quality-ready] .quality-logo-fallback {
  opacity: 0;
}
.quality-logo-source-set {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .7rem;
}
.quality-logo-rows {
  display: none;
}
.quality-logo-tile {
  display: flex;
  min-width: 0;
  height: 3.5rem;
  align-items: center;
  justify-content: center;
  gap: .25rem;
  border: 1px solid color-mix(in srgb, var(--color-line) 62%, transparent);
  border-radius: .75rem;
  padding: .55rem;
  color: var(--color-text);
  background: color-mix(in srgb, var(--color-white) 90%, transparent);
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
  text-align: center;
}
.quality-logo-tile img {
  display: block;
  width: auto;
  max-width: 72%;
  height: auto;
  max-height: 54%;
  object-fit: contain;
}
.quality-logo-emblem img {
  max-width: 48%;
  max-height: 52%;
}
.quality-logo-tile img[src*="/dio."],
.quality-logo-tile img[src*="/straumann."],
.quality-logo-tile img[src*="/dentsply-sirona."] {
  filter: brightness(0);
  opacity: .72;
}
.quality-logo-soft {
  opacity: .58;
}
.quality-logo-faint {
  opacity: .2;
}
@media (hover: hover) and (pointer: fine) {
  .quality-logo-cloud {
    pointer-events: auto;
  }
}
.care-visual {
  display: grid;
  place-items: center;
  padding: 1.25rem;
}
.care-workflow {
  width: min(100%, 50rem);
  overflow: hidden;
  border: 1px solid #e4e4e7;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 16px 48px rgba(24, 24, 27, .08);
}
.care-workflow-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  border-bottom: 1px solid #e4e4e7;
  padding: .875rem 1rem;
}
.care-workflow-header > span:first-child {
  display: grid;
  min-width: 0;
}
.care-workflow-header strong {
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
}
.care-workflow-header small {
  overflow: hidden;
  color: #71717a;
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.care-workflow-header em {
  display: flex;
  min-width: 4.75rem;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  border: 1px solid color-mix(in srgb, var(--feature-status-running) 26%, var(--color-line));
  border-radius: 999px;
  padding: .3rem .625rem;
  color: var(--feature-status-running);
  background: color-mix(in srgb, var(--feature-status-running) 7%, var(--color-white));
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
  font-style: normal;
  font-weight: var(--landing-font-weight-bold);
}
.care-workflow-header em i {
  width: .4rem;
  height: .4rem;
  border-radius: 50%;
  background: var(--feature-status-running);
}
.care-workflow-header em[data-state=complete] {
  border-color: color-mix(in srgb, var(--feature-status-complete) 24%, var(--color-line));
  color: var(--feature-status-complete);
  background: color-mix(in srgb, var(--feature-status-complete) 7%, var(--color-white));
}
.care-workflow-header em[data-state=complete] i {
  background: var(--feature-status-complete);
}
.care-workflow-header em[data-state=idle] {
  border-color: #e4e4e7;
  color: #71717a;
  background: #fafafa;
}
.care-workflow-header em[data-state=idle] i {
  background: #a1a1aa;
}
.care-workflow-body {
  padding: 1.25rem;
}
.care-workflow-stage {
  position: relative;
  width: 100%;
  height: 226px;
  overflow: hidden;
  border: 1px solid #f4f4f5;
  border-radius: .75rem;
  background-color: #fbfbfb;
  background-image: radial-gradient(rgba(24, 24, 27, .07) 1px, transparent 1px);
  background-size: 18px 18px;
}
.care-workflow-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 736px;
  height: 226px;
  transform: scale(var(--care-scale, 1));
  transform-origin: top left;
}
.care-workflow-canvas > svg {
  position: absolute;
  inset: 0;
  width: 736px;
  height: 226px;
}
.care-link-base,
.care-link {
  fill: none;
  stroke-width: 1.5;
}
.care-link-base {
  stroke: #e4e4e7;
}
.care-link {
  stroke: #a1a1aa;
  stroke-linecap: round;
  stroke-dasharray: 5 7;
  opacity: .6;
  animation: workflow-dash 1.4s linear infinite;
}
.care-link[data-state=active] {
  stroke: #18181b;
  opacity: 1;
  animation-duration: .55s;
}
.care-link[data-state=done] {
  stroke: #18181b;
  opacity: 1;
}
.care-node {
  position: absolute;
  top: var(--node-y);
  left: var(--node-x);
  display: grid;
  width: 146px;
  height: 72px;
  grid-template-columns: 36px 1fr;
  gap: 10px;
  align-items: center;
  border: 1px solid #e4e4e7;
  border-radius: 12px;
  padding: 12px;
  background: #fff;
  transition:
    border-color .3s ease,
    box-shadow .3s ease,
    background-color .3s ease;
}
.care-node::before {
  content: "";
  position: absolute;
  inset: -6px;
  border: 2px solid transparent;
  border-radius: 16px;
  opacity: 0;
  pointer-events: none;
}
.care-node > i {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 8px;
  color: #71717a;
  background: #f4f4f5;
  font-style: normal;
  transition: color .3s ease, background-color .3s ease;
}
.care-node > i svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
  stroke: none;
}
.care-node > span {
  display: grid;
  min-width: 0;
}
.care-node strong {
  overflow: hidden;
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.care-node small {
  color: #71717a;
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
}
.care-node > em {
  position: absolute;
  top: -10px;
  right: 12px;
  display: flex;
  align-items: center;
  gap: 4px;
  border: 1px solid #e4e4e7;
  border-radius: 999px;
  padding: 2px 6px;
  color: #71717a;
  background: #fff;
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
  font-style: normal;
  font-weight: var(--landing-font-weight-bold);
}
.care-node::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  z-index: 5;
  width: max-content;
  max-width: 180px;
  border: 1px solid #e4e4e7;
  border-radius: 8px;
  padding: 6px 8px;
  color: #52525b;
  background: #fff;
  box-shadow: 0 8px 24px rgba(24, 24, 27, .08);
  font-size: var(--landing-ui-meta-size);
  line-height: var(--landing-ui-meta-line-height);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 4px);
  transition: opacity .18s ease, transform .18s ease;
}
.care-node-top::after {
  top: calc(100% + 8px);
}
.care-node-bottom::after {
  bottom: calc(100% + 8px);
}
.care-node:hover::after {
  opacity: 1;
  transform: translate(-50%, 0);
}
.care-node[data-status=running] {
  border-color: #18181b;
  background: #fff;
  box-shadow: 0 0 26px -4px #18181b73;
}
.care-node[data-status=running]::before {
  border-color: #18181b;
  animation: care-node-halo .9s ease-out both;
}
.care-node[data-status=running] > i {
  color: #18181b;
  background: #18181b1f;
}
.care-node[data-status=running] > em {
  border-color: #18181b66;
  color: #18181b;
  background: #fff;
  animation: care-chip-pop .48s cubic-bezier(.2, 1.55, .35, 1) both;
}
.care-node[data-status=running] > em::before {
  content: "";
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: care-spinner .8s linear infinite;
}
.care-node[data-status=done] {
  border-color: #10b98180;
}
.care-node[data-status=done] > i {
  color: #18181b;
  background: #18181b1f;
}
.care-node[data-status=done] > em {
  border-color: #e4e4e7;
  color: #3f3f46;
}
.care-travel-pulse {
  position: absolute;
  z-index: 4;
  top: 0;
  left: 0;
  display: none;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  opacity: 0;
  background: #18181b;
  box-shadow: 0 0 14px 3px #18181b59;
  offset-rotate: 0deg;
}
.care-travel-pulse[data-active] {
  display: block;
  animation: care-travel .7s cubic-bezier(.5, 0, .5, 1) both;
}
.feature-card-hours[data-visual-active] .hours-celestial-wheel {
  animation: celestial-orbit 16s linear infinite;
}
.feature-card-hours[data-visual-active] .feature-copy h3 {
  animation: hours-title-color 16s linear infinite;
}
.feature-card-hours[data-visual-active] .feature-copy p {
  animation: hours-body-color 16s linear infinite;
}
@keyframes celestial-orbit {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@keyframes hours-title-color {
  0%, 12%, 88%, 100% {
    color: var(--color-text);
  }
  38%, 62% {
    color: var(--color-white);
  }
}
@keyframes hours-body-color {
  0%, 12%, 88%, 100% {
    color: var(--color-text-muted);
  }
  38%, 62% {
    color: color-mix(in srgb, var(--color-white) 76%, transparent);
  }
}
@keyframes workflow-dash {
  to {
    stroke-dashoffset: -24;
  }
}
@keyframes care-travel {
  0% {
    offset-distance: 0%;
    opacity: 0;
  }
  25.714% {
    opacity: 1;
  }
  100% {
    offset-distance: 100%;
    opacity: 1;
  }
}
@keyframes care-node-halo {
  from {
    opacity: .65;
    transform: scale(.98);
  }
  to {
    opacity: 0;
    transform: scale(1.1);
  }
}
@keyframes care-chip-pop {
  from {
    opacity: 0;
    transform: translateY(5px) scale(.5);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes care-spinner {
  to {
    transform: rotate(360deg);
  }
}
.showcase {
  --showcase-supporting-text: color-mix(in srgb, var(--color-white) 68%, transparent);
  position: relative;
  height: 550svh;
  min-height: 550svh;
  overflow: clip;
  color: var(--color-white);
  background: var(--color-black);
}
.showcase-sticky {
  position: sticky;
  top: 0;
  width: 100%;
  height: 100svh;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
}
.showcase-depth-field {
  position: absolute;
  z-index: 0;
  inset: 0;
  overflow: hidden;
  background: var(--color-black);
}
.showcase-depth-field::before,
.showcase-depth-field::after {
  display: none;
}
.showcase-scene {
  position: absolute;
  z-index: 2;
  inset: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  perspective: 75rem;
  transform-style: preserve-3d;
}
.showcase-scene-referral {
  visibility: visible;
  opacity: 1;
}
.showcase-scene-referral::before,
.showcase-scene-referral::after {
  display: none;
}
.showcase-static-title {
  display: none;
}
.showcase-referral-media,
.showcase-scramble-field,
.showcase-region-field {
  position: absolute;
  inset: 0;
  transform-style: preserve-3d;
}
.showcase-referral-media {
  z-index: 2;
}
.showcase-scramble-field {
  z-index: 4;
}
.showcase-region-field {
  z-index: 5;
}
.showcase-motion-item {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0;
  will-change: transform, opacity;
}
.showcase-photo {
  width: clamp(8rem, 15vw, 14rem);
  color: var(--color-text-muted);
}
.showcase-photo-wide {
  width: clamp(10rem, 20vw, 18rem);
}
.showcase-photo img {
  width: 100%;
  height: auto;
  border: 1px solid color-mix(in srgb, var(--color-white) 20%, transparent);
  border-radius: 1rem;
  background: var(--color-black);
  object-fit: cover;
  box-shadow: 0 1.25rem 3.5rem color-mix(in srgb, var(--color-black) 76%, transparent);
}
.showcase-photo-landscape img {
  aspect-ratio: 3 / 2;
}
.showcase-photo-portrait {
  width: clamp(7rem, 11vw, 10rem);
}
.showcase-photo-portrait img {
  aspect-ratio: 4 / 5;
}
.showcase-scramble-item {
  color: var(--showcase-supporting-text);
  font-size: var(--landing-body-2-size);
  font-weight: var(--landing-font-weight-medium);
  line-height: var(--landing-body-2-line-height);
  white-space: nowrap;
}
.showcase-metric {
  color: var(--showcase-supporting-text);
  font-size: var(--landing-body-1-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-1-line-height);
  letter-spacing: -.035em;
  font-variant-numeric: tabular-nums;
}
.showcase-metric-secondary {
  color: var(--showcase-supporting-text);
  font-size: var(--landing-body-2-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-2-line-height);
  letter-spacing: -.025em;
  font-variant-numeric: tabular-nums;
}
.showcase-title-lock {
  position: absolute;
  z-index: 30;
  top: 50%;
  left: 50%;
  display: grid;
  width: calc(100% - (var(--space-page) * 2));
  place-items: center;
  text-align: center;
  translate: -50% -50%;
  container: showcase-title / inline-size;
}
.showcase-title-lock h3 {
  display: flex;
  min-block-size: 2lh;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  contain: layout paint;
  width: 100%;
  max-width: none;
  margin: 0;
  color: var(--color-white);
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
  letter-spacing: var(--landing-heading-3-letter-spacing);
  text-align: center;
}
.showcase-title-variable,
.showcase-title-variable > span,
.showcase-title-fixed {
  display: block;
  width: 100%;
  text-align: center;
}
.showcase-title-variable > span {
  white-space: normal;
  text-wrap: balance;
  word-break: keep-all;
}
.showcase-title-fixed {
  white-space: nowrap;
}
.showcase-static-title > span {
  display: block;
  text-align: center;
}
.showcase-korea-map {
  position: absolute;
  z-index: 3;
  top: 50%;
  left: 50%;
  width: clamp(24rem, 45vw, 38rem);
  opacity: 0;
  translate: -50% -49%;
  transform-origin: center;
  will-change: transform, opacity;
}
.showcase-korea-map svg {
  width: 100%;
  height: auto;
  overflow: visible;
  shape-rendering: geometricPrecision;
}
.showcase-korea-map pattern circle {
  fill: color-mix(in srgb, var(--color-text-muted) 48%, var(--color-brand));
  stroke: none;
}
.showcase-map-land path {
  fill: url(#showcase-korea-dots);
  stroke: none;
}
.showcase-map-routes path {
  fill: none;
  stroke: var(--color-brand);
  stroke-width: 1.35;
  stroke-dasharray: 1 1;
  stroke-dashoffset: 1;
  stroke-linecap: round;
  filter: url(#showcase-route-glow);
}
.showcase-map-hubs circle {
  fill: var(--color-brand);
  stroke: none;
}
.showcase-map-destination-halo {
  fill: color-mix(in srgb, var(--color-brand) 14%, transparent);
  stroke: none;
  filter: url(#showcase-destination-glow);
}
.showcase-map-destination {
  fill: var(--color-brand);
  stroke: none;
  filter: url(#showcase-destination-glow);
}
.showcase-map-destination-label {
  fill: var(--showcase-supporting-text);
  font-family: var(--landing-font-family);
  font-size: var(--landing-ui-meta-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-meta-line-height);
  letter-spacing: -.02em;
}
.showcase-region {
  color: color-mix(in srgb, var(--color-white) 84%, transparent);
  font-size: var(--landing-body-2-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-2-line-height);
  letter-spacing: .04em;
  white-space: nowrap;
  transform-origin: center;
}
.showcase-image-reveal {
  --showcase-reveal: 0;
  --reveal-width: calc(1rem + ((100% - 1rem) * var(--showcase-reveal)));
  --reveal-height: calc(3.8rem + ((100% - 3.8rem) * var(--showcase-reveal)));
  position: absolute;
  z-index: 36;
  top: calc(50% + var(--pin-visible-center-offset, 0px));
  left: 50%;
  width: 145vw;
  height: calc(var(--pin-visible-height, 100svh) * 1.45);
  overflow: hidden;
  visibility: hidden;
  border-radius: calc(1rem + (3rem * var(--showcase-reveal)));
  opacity: 0;
  background: var(--color-white);
  clip-path: inset(calc((100% - var(--reveal-height)) / 2) calc((100% - var(--reveal-width)) / 2) round calc(1rem + (3rem * var(--showcase-reveal))));
  translate: -50% -50%;
  transform: translateZ(0);
  backface-visibility: hidden;
  contain: paint;
  will-change: clip-path, opacity;
}
.showcase-image-reveal.is-visible {
  visibility: visible;
  opacity: 1;
}
.showcase-image-reveal > picture {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.showcase-image-reveal > picture > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: clamp(0, calc((var(--showcase-reveal) - .08) * 2.5), .8);
  filter: brightness(.48);
}
.showcase-image-copy {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: grid;
  place-content: center;
  padding: 2rem;
  color: var(--color-white);
  text-align: center;
  opacity: clamp(0, calc((var(--showcase-reveal) - .42) * 4), 1);
}
.showcase-image-copy strong {
  max-width: 22ch;
  font-size: var(--landing-heading-2-size);
  line-height: var(--landing-heading-2-line-height);
}
.showcase-image-copy span {
  color: var(--color-brand);
}
.showcase-static-final {
  display: none;
}
.showcase[data-pin-disabled] {
  height: auto;
  min-height: 0;
}
.showcase[data-pin-disabled] .showcase-sticky {
  position: relative;
  height: auto;
  min-height: 0;
  overflow: visible;
}
.showcase[data-pin-disabled] .showcase-depth-field {
  pointer-events: none;
}
.showcase[data-pin-disabled] .showcase-title-lock,
.showcase[data-pin-disabled] .showcase-image-reveal {
  display: none;
}
.showcase[data-pin-disabled] .showcase-scene {
  position: relative;
  display: grid;
  min-height: max(35rem, 92svh);
  align-content: center;
  gap: 2rem;
  overflow: hidden;
  padding: calc(var(--header-height) + 2.5rem) var(--space-page) 3rem;
  visibility: visible;
  opacity: 1 !important;
  transform: none !important;
}
.showcase[data-pin-disabled] .showcase-static-title {
  position: relative;
  z-index: 10;
  display: block;
  max-width: 15ch;
  margin: 0 auto;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
  letter-spacing: var(--landing-heading-3-letter-spacing);
  text-align: center;
}
.showcase[data-pin-disabled] .showcase-referral-media,
.showcase[data-pin-disabled] .showcase-scramble-field,
.showcase[data-pin-disabled] .showcase-region-field {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  align-items: center;
}
.showcase[data-pin-disabled] .showcase-motion-item {
  position: relative;
  top: auto;
  left: auto;
  width: auto;
  max-width: 15rem;
  margin-inline: auto;
  opacity: 1;
  filter: none;
  transform: none;
}
.showcase[data-pin-disabled] .showcase-photo-wide {
  max-width: 19rem;
}
.showcase[data-pin-disabled] .showcase-scramble-field,
.showcase[data-pin-disabled] .showcase-region-field {
  grid-template-columns: repeat(4, auto);
  justify-content: center;
}
.showcase[data-pin-disabled] .showcase-metric {
  grid-column: 1 / -1;
}
.showcase[data-pin-disabled] .showcase-korea-map {
  position: relative;
  top: auto;
  left: auto;
  width: min(100%, 31rem);
  margin-inline: auto;
  opacity: .78 !important;
  translate: none;
  transform: none !important;
}
.showcase[data-pin-disabled] .showcase-map-routes path {
  opacity: 1;
  stroke-dashoffset: 0;
}
.showcase[data-pin-disabled] .showcase-static-final {
  position: relative;
  display: grid;
  min-height: max(34rem, 86svh);
  align-content: center;
  gap: 3rem;
  padding: calc(var(--header-height) + 2.5rem) var(--space-page) 3rem;
}
.showcase[data-pin-disabled] .showcase-static-final h3 {
  max-width: 15ch;
  margin: 0 auto;
  font-size: var(--landing-heading-2-size);
  line-height: var(--landing-heading-2-line-height);
  text-align: center;
}
.showcase-static-final-line {
  display: block;
}
.showcase[data-pin-disabled] .showcase-static-final-accent {
  color: var(--color-brand);
}
.showcase[data-pin-disabled] .showcase-static-final > picture {
  width: min(100%, 86rem);
  margin-inline: auto;
}
.showcase[data-pin-disabled] .showcase-static-final img {
  width: 100%;
  height: auto;
  aspect-ratio: 1387 / 560;
  object-fit: contain;
}
.visit-section {
  padding-block: clamp(5rem, 9vw, 8rem);
  color: var(--color-text);
  background: #f3f3f3;
}
.visit-information {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr) minmax(0, .8fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}
.visit-information h2 {
  max-width: 14ch;
  margin: 0;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
}
.visit-information h3 {
  margin: 0 0 .5rem;
  color: var(--color-text);
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
}
.visit-address p {
  margin: 0 0 .75rem;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.visit-address a {
  display: inline-block;
  color: var(--color-text);
  font-size: var(--landing-heading-4-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-heading-4-line-height);
}
.visit-hours dl {
  margin: 0;
}
.visit-hours dl div {
  display: grid;
  grid-template-columns: minmax(5rem, auto) 1fr;
  gap: .75rem;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.visit-hours dt,
.visit-hours dd {
  margin: 0;
}
.visit-hours dd {
  font-variant-numeric: tabular-nums;
}
.visit-divider {
  height: 1px;
  margin-block: 2.5rem 2rem;
  background: var(--color-line);
}
.visit-map-picture {
  display: block;
}
.visit-map {
  aspect-ratio: 16 / 7;
  border-radius: 1.25rem;
  object-fit: cover;
}
.site-footer {
  padding-block: clamp(4.5rem, 8vw, 7rem) 2rem;
  color: var(--color-text-muted);
  background: var(--color-white);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.footer-main {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.85fr);
  gap: clamp(3rem, 7vw, 8rem);
  padding-bottom: 3rem;
}
.footer-wordmark {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  color: var(--color-text);
}
.footer-wordmark strong {
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
  letter-spacing: -.06em;
}
.footer-wordmark span {
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-control-line-height);
}
.footer-brand > p {
  max-width: 24rem;
  margin: 1.25rem 0;
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.footer-social {
  display: flex;
  gap: .75rem;
}
.footer-social a {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border-radius: 50%;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-label-line-height);
}
.footer-navigation {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.5rem, 4vw, 4rem);
}
.footer-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .65rem;
}
.footer-column h2 {
  margin: 0 0 .35rem;
  color: var(--color-text);
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
}
.footer-column h2 a {
  color: inherit;
}
.footer-column > a:not(:only-child) {
  color: var(--color-text-muted);
}
.footer-column a:hover,
.footer-column a:focus-visible,
.footer-bottom a:hover,
.footer-bottom a:focus-visible {
  color: var(--color-brand);
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  border-top: 1px solid var(--color-line);
  padding-top: 2rem;
}
.footer-bottom p {
  margin: 0;
}
.footer-bottom div {
  display: flex;
  gap: 1rem;
}
@media (max-width: 64rem) {
  :root {
    --header-height: var(--header-height-mobile);
  }
  .site-header {
    height: var(--header-height-mobile);
  }
  .hours-celestial-wheel {
    left: 118%;
    width: 295%;
  }
  .wordmark,
  .menu-button {
    position: relative;
    z-index: 2;
  }
  .site-nav {
    position: fixed;
    z-index: 1;
    inset: 0;
    display: flex;
    min-height: 100svh;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    flex-direction: column;
    overflow-y: auto;
    padding: calc(var(--header-height) + 2rem) var(--space-page) 2rem;
    visibility: hidden;
    color: var(--color-text);
    background: var(--color-white);
    opacity: 0;
    transform: translateY(-.75rem);
    transition:
      opacity .18s ease,
      transform .22s ease,
      visibility 0s linear .22s;
    pointer-events: none;
  }
  .site-nav[data-open] {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0s;
    pointer-events: auto;
  }
  .site-nav > a,
  .nav-disclosure {
    width: 100%;
    height: auto;
    min-height: 4rem;
    flex: 0 0 auto;
    justify-content: flex-start;
    border: 0;
    padding: 0;
  }
  .nav-group {
    display: block;
    width: 100%;
    height: auto;
  }
  .nav-disclosure-indicator {
    width: .75rem;
    height: .75rem;
    flex-basis: .75rem;
    margin-left: .25rem;
  }
  .nav-disclosure-indicator::before {
    top: .0625rem;
    left: .0625rem;
    width: .5rem;
    height: .5rem;
    border-width: 2px;
  }
  .nav-submenu {
    position: static;
    display: block;
    width: 100%;
    max-height: 0;
    overflow: hidden;
    visibility: hidden;
    border: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    transform: none;
    transition: max-height .22s ease, visibility 0s linear .22s;
    pointer-events: none;
  }
  .nav-group[data-open] .nav-submenu {
    max-height: 13rem;
    visibility: visible;
    transform: none;
    transition-delay: 0s;
    pointer-events: auto;
  }
  .nav-submenu-inner {
    display: flex;
    min-height: 0;
    align-items: flex-start;
    justify-content: flex-start;
    overflow: visible;
    flex-direction: column;
    gap: .75rem;
    border-radius: 0;
    padding: .5rem 0 1.5rem;
    color: var(--color-text);
    background: transparent;
  }
  .nav-submenu a {
    width: fit-content;
    min-height: 2.5rem;
    justify-content: flex-start;
    border: 0;
    border-radius: 999px;
    padding: .5rem 1rem;
    color: var(--color-text);
    background: var(--color-gray);
    font-size: var(--landing-ui-control-size);
    font-weight: var(--landing-font-weight-regular);
    line-height: var(--landing-ui-control-line-height);
  }
  .nav-submenu a:hover,
  .nav-submenu a:focus-visible {
    color: var(--color-text);
    background: var(--color-gray);
    font-weight: var(--landing-font-weight-bold);
  }
  .header-cta {
    display: none;
  }
  .menu-button {
    display: grid;
    justify-self: end;
  }
  .treatment-layout {
    grid-template-columns: 1fr;
  }
  .treatment-intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }
  .treatment-cards {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .treatment-card {
    display: grid;
    grid-template-columns: minmax(15rem, .95fr) 1.05fr;
    grid-template-rows: auto auto 1fr;
    gap: .25rem 2rem;
    align-items: start;
  }
  .treatment-card picture {
    grid-column: 1;
    grid-row: 1 / 4;
    margin: 0;
  }
  .treatment-card img {
    aspect-ratio: 16 / 10;
    margin: 0;
  }
  .treatment-card h3,
  .treatment-card p {
    grid-column: 2;
  }
  .evidence-heading {
    margin-bottom: 4rem;
  }
  .evidence-flow {
    grid-template-columns: 1fr;
  }
  .evidence-nav {
    display: none;
  }
  .evidence-panels {
    gap: 7rem;
  }
  .evidence-panels article {
    min-height: 0;
    padding: 0;
  }
  .equipment-evidence-panel {
    min-height: 440svh !important;
  }
  .evidence-question {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    margin: 0;
    clip: auto;
    color: var(--color-brand);
    font-size: var(--landing-heading-3-size);
    font-weight: var(--landing-font-weight-bold);
    line-height: var(--landing-heading-3-line-height);
    letter-spacing: var(--landing-heading-3-letter-spacing);
    white-space: normal;
    clip-path: none;
  }
  .doctor-main {
    grid-template-columns: minmax(16rem, 1fr) 1fr;
    gap: 2rem;
  }
  .doctor-portrait {
    height: 30rem;
  }
  .features-section {
    --feature-copy-padding: 1rem;
  }
  .feature-bento {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
  }
  .feature-card-hours,
  .feature-card-lab,
  .feature-card-cost,
  .feature-card-sterile,
  .feature-card-quality,
  .feature-card-care {
    grid-column: auto;
  }
  .feature-card,
  .feature-card-hours,
  .feature-card-cost,
  .feature-card-lab,
  .feature-card-sterile,
  .feature-card-quality,
  .feature-card-care {
    height: 30rem;
    min-height: 30rem;
    aspect-ratio: auto;
  }
  .feature-card-care {
    height: 30rem;
    min-height: 30rem;
  }
  .care-visual {
    padding: .5rem;
  }
  .care-workflow-body {
    padding: 0;
  }
  .care-workflow-header {
    gap: .5rem;
    padding: .75rem;
  }
  .care-workflow-header em {
    min-width: 4.125rem;
    padding-inline: .45rem;
  }
  .care-workflow-stage {
    height: 17rem !important;
  }
  .care-workflow-canvas {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    padding: .5rem;
    transform: none;
  }
  .care-workflow-canvas > svg {
    display: none;
  }
  .care-travel-pulse,
  .care-travel-pulse[data-active] {
    display: none;
  }
  .care-node {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    height: auto;
    min-height: 0;
    grid-template-columns: 1.5rem minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-content: start;
    gap: .3rem .4rem;
    padding: .5rem;
  }
  .care-node > i {
    width: 1.5rem;
    height: 1.5rem;
    grid-column: 1;
    grid-row: 1;
  }
  .care-node > i svg {
    width: 1rem;
    height: 1rem;
  }
  .care-node > span {
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .care-node > em {
    position: static;
    grid-column: 3;
    grid-row: 1;
    align-self: center;
    justify-self: end;
    padding: 1px 5px;
  }
  .care-node::after {
    display: none;
  }
  .visit-information {
    grid-template-columns: 1fr 1fr;
  }
  .visit-information h2 {
    grid-column: 1 / -1;
  }
  .footer-main {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: 2rem;
  }
}
@media (max-width: 48rem) {
  :root {
    --header-height: var(--header-height-mobile);
  }
  .site-header {
    height: var(--header-height-mobile);
    min-height: var(--header-height-mobile);
    padding-inline: var(--space-page);
  }
  .wordmark {
    gap: .5rem;
  }
  .menu-button {
    margin-right: -.5rem;
  }
  .site-nav {
    padding-top: calc(var(--header-height-mobile) + 1.5rem);
  }
  .evidence-nav {
    position: static;
  }
  .section-heading {
    align-items: start;
    flex-direction: column;
    gap: 1.25rem;
  }
  .section-heading > p br {
    display: none;
  }
  .concern-section {
    height: calc(300svh + var(--concern-scroll-extension));
    min-height: calc(300svh + var(--concern-scroll-extension));
  }
  .concern-section[data-pin-disabled] {
    height: auto;
    min-height: 0;
  }
  .concern-section[data-pin-disabled] .concern-fallback-list {
    width: 100%;
    padding: calc(var(--header-height-mobile) + 2rem) var(--space-page) 3rem;
  }
  .concern-fallback-copy {
    gap: 1rem;
  }
  .concern-copy {
    gap: 1rem;
  }
  .concern-dialogue {
    width: min(100%, 31rem);
    margin-top: 0;
  }
  .concern-message {
    gap: .375rem;
  }
  .concern-bubble {
    min-width: min(14rem, 86%);
    max-width: 86%;
  }
  .brand-title {
    max-width: none;
  }
  .brand-sticky,
  .showcase-sticky {
    overflow: visible;
  }
  .case-section {
    padding-block: 4rem;
  }
  .case-heading {
    margin-bottom: 2rem;
  }
  .coverflow {
    padding-bottom: 4.25rem;
  }
  .coverflow-track {
    height: clamp(24rem, calc(28vw + 17.1875rem), 27.5rem);
  }
  .case-card {
    width: min(84vw, 31rem);
    height: clamp(24rem, calc(28vw + 17.1875rem), 27.5rem);
    transform: translateX(calc(-50% + (var(--offset) * 72vw))) translateZ(calc(var(--abs-offset) * -150px)) rotateY(calc(var(--offset) * -9deg)) scale(calc(1 - (var(--abs-offset) * .08)));
  }
  .coverflow--five .coverflow-track {
    height: clamp(24rem, calc(28vw + 17.1875rem), 27.5rem);
  }
  .coverflow--five .case-card {
    width: min(84vw, 31rem);
    transform: translateX(calc(-50% + (var(--offset) * 72vw))) translateZ(calc(var(--abs-offset) * -150px)) rotateY(calc(var(--offset) * -9deg)) scale(calc(1 - (var(--abs-offset) * .08)));
  }
  .case-copy {
    padding: 1rem 1.25rem 1.25rem;
  }
  .case-copy h3 {
    margin: .375rem 0 .5rem;
  }
  .faq-section-inner {
    width: min(100% - 2.5rem, 42.5rem);
  }
  .faq-section-heading {
    justify-items: start;
    text-align: left;
  }
  .faq-section-heading h2,
  .faq-section-subtitle {
    max-width: 100%;
  }
  .faq-trigger {
    min-height: 4.75rem;
  }
  .treatment-intro {
    display: block;
  }
  .treatment-intro h2 {
    margin-bottom: .75rem;
    overflow: visible;
  }
  .treatment-intro > p {
    margin-bottom: 2rem;
  }
  .treatment-card {
    display: block;
  }
  .treatment-card picture {
    margin-bottom: 1rem;
  }
  .treatment-card img {
    aspect-ratio: 16 / 10;
    margin: 0;
  }
  .evidence-heading {
    margin-bottom: 3rem;
  }
  .evidence-panels {
    gap: 4rem;
  }
  .evidence-panels article {
    width: 100%;
    gap: 1.5rem;
  }
  .evidence-panel-copy {
    width: 100%;
    gap: 1rem;
  }
  .evidence-prose {
    width: 100%;
    max-width: none;
    gap: .75rem;
  }
  .anesthesia-steps {
    position: relative;
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 0;
  }
  .anesthesia-steps::before {
    display: none;
  }
  .anesthesia-steps li {
    display: grid;
    min-height: 0;
    grid-template-columns: 1.5rem minmax(0, 1fr);
    padding-block: .75rem;
  }
  .anesthesia-steps li::before {
    top: 1.05rem;
    left: 0;
  }
  .anesthesia-steps li:not(:last-child)::after {
    top: 1.35rem;
    left: .3rem;
    display: block;
    width: 1px;
    height: 100%;
    background: var(--color-line);
  }
  .anesthesia-steps span,
  .anesthesia-steps strong,
  .anesthesia-steps p {
    grid-column: 2;
  }
  .anesthesia-steps span {
    margin-bottom: .25rem;
  }
  .anesthesia-steps strong {
    margin-bottom: .25rem;
  }
  .equipment-sticky-content {
    position: static;
    display: contents;
  }
  .equipment-static-intro {
    gap: .75rem;
  }
  .equipment-sticky-anchor {
    position: sticky;
    top: calc(var(--header-height-mobile) + 1rem);
    gap: 1.25rem;
  }
  .equipment-stack-stage {
    height: clamp(27rem, 64svh, 30rem);
  }
  .equipment-card-media {
    height: clamp(15.5rem, 38svh, 18rem);
  }
  .equipment-card-copy {
    padding: .5rem 1.25rem 2rem;
  }
  .equipment-stack-status {
    right: 1.25rem;
    bottom: .5rem;
  }
  .doctors-heading {
    margin-bottom: 2rem;
  }
  .doctors-heading h2 {
    white-space: normal;
  }
  .doctors-heading > p:not(.doctors-eyebrow) {
    margin-top: .75rem;
  }
  .doctor-main {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .doctor-portrait {
    height: auto;
    aspect-ratio: 4 / 3;
  }
  .doctor-portrait img {
    object-position: center 16%;
  }
  .doctor-media-footer {
    display: none;
  }
  .doctor-content {
    width: 100%;
    padding: 0;
  }
  .doctor-content > p {
    margin: 0 0 .125rem;
  }
  .doctor-content h3 {
    margin-bottom: 1rem;
  }
  .doctor-content blockquote {
    min-height: 3lh;
    max-width: none;
    margin-bottom: 1rem;
  }
  .doctor-content ul {
    min-height: 4lh;
    margin-bottom: 0;
  }
  .doctor-controls {
    align-self: flex-end;
    margin-top: .75rem;
    padding-top: 0;
  }
  .features-heading {
    gap: .75rem;
    margin-bottom: 2rem;
  }
  .features-heading h2 {
    max-width: none;
  }
  .features-heading p br {
    display: none;
  }
  .features-section {
    --feature-copy-padding: 1.5rem 1rem 1rem;
  }
  .feature-bento {
    grid-template-columns: 1fr;
  }
  .feature-card,
  .feature-card-hours,
  .feature-card-cost,
  .feature-card-lab,
  .feature-card-sterile,
  .feature-card-quality,
  .feature-card-care {
    height: 28.125rem;
    min-height: 28.125rem;
    aspect-ratio: auto;
  }
  .feature-card-care {
    height: 32rem;
    min-height: 32rem;
  }
  .feature-copy {
    min-height: 0;
  }
  .hours-celestial-wheel {
    top: 30%;
    left: 125%;
    width: 340%;
  }
  .hours-building {
    right: -1px;
    width: calc(100% + 2px);
    height: 72%;
  }
  .lab-visual {
    padding: .5rem;
  }
  .lab-queue {
    transform: scale(1.24);
  }
  .cost-visual {
    padding: 1rem;
  }
  .comparison-chart-plot {
    height: 12.5rem;
  }
  .comparison-groups {
    gap: 1rem;
    padding-inline: .75rem;
  }
  .circuit-board {
    width: 124%;
  }
  .quality-logo-cloud {
    -webkit-mask-image:
      linear-gradient(
        90deg,
        transparent,
        var(--color-black) 9%,
        var(--color-black) 91%,
        transparent);
    mask-image:
      linear-gradient(
        90deg,
        transparent,
        var(--color-black) 9%,
        var(--color-black) 91%,
        transparent);
  }
  .quality-logo-canvas {
    display: none;
  }
  .quality-logo-cloud[data-quality-ready] .quality-logo-fallback {
    opacity: 1;
  }
  .quality-logo-fallback {
    inset: 0;
    display: block;
    width: 100%;
    transform: none;
  }
  .quality-logo-source-set {
    display: none;
  }
  .quality-logo-rows {
    --quality-mobile-tile-size: clamp(4.5rem, 12vw, 5rem);
    position: absolute;
    inset: 0;
    display: grid;
    box-sizing: border-box;
    grid-auto-rows: var(--quality-mobile-tile-size);
    align-content: start;
    gap: .75rem;
    padding-top: 2.5rem;
  }
  .quality-logo-row {
    width: 100%;
    height: var(--quality-mobile-tile-size);
    overflow: hidden;
  }
  .quality-logo-track {
    --infinite-gap: .75rem;
    --infinite-half-gap: .375rem;
    display: flex;
    width: max-content;
    gap: var(--infinite-gap);
  }
  .quality-logo-track[data-infinite-ready] {
    animation: infinite-marquee var(--infinite-duration) linear infinite;
    animation-direction: var(--infinite-direction);
    will-change: transform;
  }
  .quality-logo-track .quality-logo-tile {
    width: var(--quality-mobile-tile-size);
    height: var(--quality-mobile-tile-size);
    flex: none;
    padding: .45rem;
  }
  .care-visual {
    padding: .75rem;
  }
  .care-workflow-header {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .5rem;
    padding: .75rem;
  }
  .care-workflow-header em {
    min-width: 4.25rem;
    padding-inline: .5rem;
  }
  .care-workflow-body {
    padding: 0;
  }
  .care-workflow-stage {
    height: 17rem !important;
  }
  .care-workflow-canvas {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    padding: .5rem;
    transform: none;
  }
  .care-workflow-canvas > svg {
    display: none;
  }
  .care-travel-pulse,
  .care-travel-pulse[data-active] {
    display: none;
  }
  .care-node {
    position: relative;
    top: auto;
    left: auto;
    width: auto;
    height: auto;
    min-height: 0;
    grid-template-columns: 2rem minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    align-content: start;
    gap: .35rem .5rem;
    padding: .625rem;
  }
  .care-node > i {
    width: 2rem;
    height: 2rem;
    grid-column: 1;
    grid-row: 1;
  }
  .care-node > i svg {
    width: 1rem;
    height: 1rem;
  }
  .care-node > span {
    grid-column: 1 / -1;
    grid-row: 2;
    align-self: start;
  }
  .care-node > em {
    position: static;
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    align-self: center;
    padding: 1px 5px;
  }
  .care-node::after {
    display: none;
  }
  .showcase-photo {
    width: clamp(7rem, 23vw, 11rem);
  }
  .showcase-photo-wide {
    width: clamp(9rem, 31vw, 14rem);
  }
  .showcase-photo-portrait {
    width: clamp(6rem, 18vw, 8rem);
  }
  .showcase-korea-map {
    width: min(90vw, 30rem);
  }
  .showcase {
    height: 820svh;
    min-height: 820svh;
  }
  .showcase[data-pin-disabled] .showcase-scene {
    min-height: max(33rem, 88svh);
  }
  .showcase[data-pin-disabled] .showcase-static-title {
    max-width: none;
    white-space: nowrap;
  }
  .showcase[data-pin-disabled] .showcase-static-final h3 {
    max-width: min(15ch, 100%);
    white-space: normal;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral {
    position: relative;
    display: block;
    min-height: max(42rem, 100svh);
    overflow: hidden;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral::before {
    transform: translate3d(-2%, 1%, 0) scale(1.08);
  }
  .showcase[data-pin-disabled] .showcase-scene-referral .showcase-static-title {
    position: absolute;
    z-index: 12;
    top: 50%;
    left: 50%;
    width: max-content;
    max-width: calc(100% - (var(--space-page) * 2));
    transform: translate(-50%, -50%);
  }
  .showcase[data-pin-disabled] .showcase-referral-media {
    position: absolute;
    inset: calc(var(--header-height-mobile) + 1rem) 0 1.5rem;
    display: block;
    height: auto;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral .showcase-motion-item {
    position: absolute;
    max-width: none;
    margin: 0;
    transform-origin: center;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral [data-referral-item]:nth-child(1) {
    top: 1%;
    left: -20%;
    width: min(43%, 10.5rem);
    rotate: -4deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral [data-referral-item]:nth-child(2) {
    top: 4%;
    right: -12%;
    width: min(38%, 9rem);
    rotate: 4deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral [data-referral-item]:nth-child(3) {
    top: 34%;
    left: -35%;
    width: min(45%, 11rem);
    rotate: -3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral [data-referral-item]:nth-child(4) {
    top: 61%;
    right: -8%;
    width: min(44%, 10.75rem);
    rotate: 3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral [data-referral-item]:nth-child(5) {
    top: 67%;
    left: 10%;
    width: min(46%, 11rem);
    translate: -50% 0;
    rotate: -3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit {
    position: relative;
    display: block;
    min-height: max(38rem, 92svh);
    overflow: hidden;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit .showcase-static-title {
    position: absolute;
    z-index: 12;
    top: 50%;
    left: 50%;
    width: max-content;
    transform: translate(-50%, -50%) !important;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit .showcase-scramble-field {
    position: absolute;
    inset: calc(var(--header-height-mobile) + 1rem) 0 1.5rem;
    display: block;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit .showcase-motion-item {
    position: absolute;
    width: max-content;
    max-width: 56%;
    margin: 0;
    text-align: center;
    transform-origin: center;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit [data-motion=revisit] {
    top: 7%;
    left: 8%;
    rotate: -3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit [data-motion=longterm] {
    top: 18%;
    right: 4%;
    rotate: 3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit [data-motion=checkup-count] {
    top: 34%;
    left: -2%;
    rotate: -2deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit [data-motion=next] {
    top: 62%;
    right: 6%;
    rotate: 3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit [data-motion=checkup] {
    bottom: 17%;
    left: 8%;
    rotate: -3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit [data-motion=aftercare] {
    right: 12%;
    bottom: 4%;
    rotate: 3deg;
  }
  .showcase[data-pin-disabled] .showcase-scene-revisit .showcase-scramble-item {
    color: var(--showcase-supporting-text);
  }
  .showcase[data-pin-disabled] .showcase-scene-nationwide .showcase-region-field {
    display: none;
  }
  .showcase[data-pin-disabled] .showcase-scene-nationwide .showcase-korea-map {
    opacity: .86 !important;
    transform: none !important;
  }
  .showcase[data-pin-disabled] .showcase-scene-nationwide .showcase-map-routes path {
    opacity: 1;
    stroke-dashoffset: 1;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral .showcase-photo-landscape img {
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: cover;
  }
  .showcase[data-pin-disabled] .showcase-scene-referral .showcase-photo-portrait img {
    height: auto;
    aspect-ratio: 4 / 5;
    object-fit: cover;
  }
  .showcase[data-pin-disabled] .showcase-photo img {
    height: auto;
    object-fit: contain;
  }
  .showcase[data-pin-disabled] .showcase-static-final {
    padding-inline: 0;
  }
  .showcase[data-pin-disabled] .showcase-static-final h3 {
    display: grid;
    gap: .2rem;
    padding-inline: var(--space-page);
  }
  .showcase[data-pin-disabled] .showcase-static-final-line {
    white-space: normal;
  }
  .showcase[data-pin-disabled] .showcase-static-final > picture {
    width: 100%;
    max-width: none;
    margin-inline: 0;
  }
  .showcase[data-pin-disabled] .showcase-static-final img {
    width: 100%;
    height: auto !important;
    aspect-ratio: 1387 / 560;
    object-fit: contain;
  }
  .visit-information {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .visit-information h2 {
    grid-column: auto;
  }
  .visit-map {
    width: calc(100% + (var(--space-page) * 2));
    max-width: none;
    aspect-ratio: 4 / 3;
    margin-inline: calc(var(--space-page) * -1);
    border-radius: 0;
  }
  .footer-main {
    grid-template-columns: 1fr 1fr;
  }
  .footer-brand,
  .footer-navigation {
    grid-column: 1 / -1;
  }
  .footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}
@media (prefers-reduced-motion: reduce) {
  .faq-item,
  .faq-icon::before,
  .faq-icon::after {
    transition: none;
  }
}
@container equipment-stack (min-width: 40rem) {
  .equipment-card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: minmax(0, 1fr);
  }
  .equipment-card-media {
    height: 100%;
    min-height: 0;
  }
  .equipment-card-copy {
    align-self: center;
    padding: 2rem 1.5rem 3.5rem 1rem;
  }
  .equipment-stack-status {
    right: 1.5rem;
    bottom: 1.5rem;
  }
}
@container showcase-title (min-width: 58rem) {
  .showcase-title-lock h3 {
    width: auto;
    min-block-size: 1lh;
    flex-direction: row;
    gap: .28em;
    white-space: nowrap;
  }
  .showcase-title-variable,
  .showcase-title-variable > span,
  .showcase-title-fixed {
    display: inline-flex;
    width: auto;
    min-block-size: 1lh;
    align-items: center;
    white-space: nowrap;
  }
}
@media (max-width: 37.5rem) {
  :root {
    --space-section: 4rem;
  }
  .quality-logo-tile {
    border-radius: .7rem;
  }
  .doctor-controls {
    gap: .3rem;
  }
  .doctor-controls button {
    width: 2.75rem;
    height: 2.75rem;
  }
  .footer-main {
    grid-template-columns: 1fr;
  }
  .footer-brand,
  .footer-navigation {
    grid-column: auto;
  }
  .footer-navigation {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
  }
}
@media (max-width: 30rem) {
  .showcase-image-copy {
    padding: var(--space-page);
  }
  .showcase-image-copy strong {
    max-width: 18ch;
  }
}
@media (max-width: 20rem) {
  .footer-navigation {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  .hero-video {
    display: none;
  }
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .review-track[data-infinite-ready],
  .quality-logo-track[data-infinite-ready] {
    animation: none !important;
    transform: none !important;
  }
  .features-section *,
  .features-section *::before,
  .features-section *::after {
    animation: none !important;
    transition: none !important;
  }
  .concern-section {
    height: auto;
    min-height: 100svh;
  }
  .brand-reveal {
    height: auto;
  }
  .concern-sticky,
  .brand-sticky {
    position: relative;
  }
  .brand-sticky {
    min-height: 0;
    align-content: start;
    gap: 3rem;
    padding-top: calc(var(--header-height) + 4rem);
  }
  .brand-title {
    padding-inline: var(--space-page);
  }
  .brand-mask {
    --reveal: 1;
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 770 / 501;
    visibility: visible;
    border-radius: 0;
    opacity: 1;
    clip-path: none;
    translate: none;
    transform: none;
    contain: none;
    will-change: auto;
  }
  .brand-mask img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    opacity: .8;
  }
  .brand-mask-copy {
    opacity: 1;
  }
  .circuit-pulses {
    display: none;
  }
  .showcase[data-pin-disabled] .showcase-scene-nationwide .showcase-map-routes path {
    stroke-dashoffset: 0 !important;
  }
}

/* src/general.css */
.general-page {
  overflow-x: clip;
  background: var(--color-white);
}
.hyuk-hero {
  display: grid;
  min-height: 100svh;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .75rem;
  padding: calc(var(--header-height) + .75rem) .75rem .75rem;
  background: var(--color-white);
}
.hyuk-hero-main {
  position: relative;
  min-height: calc(100svh - var(--header-height) - 1.5rem);
  overflow: visible;
  border-radius: var(--radius-card);
  color: var(--color-white);
  background: var(--color-white);
  isolation: isolate;
}
.hyuk-hero-video,
.hyuk-hero-shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
}
.hyuk-hero-video {
  object-fit: cover;
}
.hyuk-hero-shade {
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb, var(--color-black) 70%, transparent),
      color-mix(in srgb, var(--color-black) 12%, transparent) 72%);
}
.hyuk-hero-corner {
  --hyuk-corner-curve: clamp(1.25rem, 1.7vw, 1.5rem);
  position: absolute;
  z-index: 3;
  display: flex;
  width: auto;
  height: clamp(4.75rem, 13.5%, 7rem);
  aspect-ratio: 1;
  align-items: flex-start;
  justify-content: flex-start;
  background: var(--color-white);
  border-radius: 0 0 var(--radius-card);
}
.hyuk-hero-corner::before,
.hyuk-hero-corner::after {
  position: absolute;
  width: var(--hyuk-corner-curve);
  height: var(--hyuk-corner-curve);
  background:
    radial-gradient(
      circle at 100% 100%,
      transparent 0 calc(70.71% - 1px),
      var(--color-white) calc(70.71% + 1px));
  content: "";
}
.hyuk-hero-corner::before {
  top: 0;
  right: calc(var(--hyuk-corner-curve) * -1);
}
.hyuk-hero-corner::after {
  bottom: calc(var(--hyuk-corner-curve) * -1);
  left: 0;
}
.hyuk-hero-corner > span {
  display: none;
}
.hyuk-hero-corner--top-left {
  top: 0;
  left: 0;
}
.hyuk-hero-corner.hyuk-hero-corner--bottom-right {
  right: 0;
  bottom: 0;
  border-radius: var(--radius-card) 0 0;
}
.hyuk-hero-corner--bottom-right::before,
.hyuk-hero-corner--bottom-right::after {
  background:
    radial-gradient(
      circle at 0 0,
      transparent 0 calc(70.71% - 1px),
      var(--color-white) calc(70.71% + 1px));
}
.hyuk-hero-corner--bottom-right::before {
  top: auto;
  right: auto;
  bottom: 0;
  left: calc(var(--hyuk-corner-curve) * -1);
}
.hyuk-hero-corner--bottom-right::after {
  top: calc(var(--hyuk-corner-curve) * -1);
  right: 0;
  bottom: auto;
  left: auto;
}
.hyuk-hero-copy {
  position: absolute;
  z-index: 2;
  left: clamp(1.5rem, 5vw, 5.5rem);
  bottom: clamp(2rem, 8vw, 7rem);
  width: min(42rem, calc(100% - 3rem));
}
.hyuk-hero-copy h1 {
  max-width: 34rem;
  margin: 0 0 1.5rem;
  font-size: var(--landing-heading-3-size);
  line-height: var(--landing-heading-3-line-height);
  letter-spacing: var(--landing-heading-3-letter-spacing);
}
.hyuk-hero-copy strong {
  display: block;
  margin-bottom: .5rem;
  font-size: var(--landing-heading-4-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-heading-4-line-height);
}
.hyuk-hero-copy p {
  max-width: 34rem;
  margin: 0;
  color: color-mix(in srgb, var(--color-white) 82%, transparent);
  font-size: var(--landing-body-2-size);
  line-height: var(--landing-body-2-line-height);
}
.hyuk-hero-actions {
  display: grid;
  height: calc(100svh - var(--header-height) - 1.5rem);
  width: clamp(10.5rem, 12vw, 12.625rem);
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}
.hyuk-action {
  display: flex;
  min-height: 0;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  border-radius: var(--radius-card);
  padding: 1.25rem;
  transition: transform .2s ease, filter .2s ease;
}
.hyuk-action:hover,
.hyuk-action:focus-visible {
  transform: translateY(-.25rem);
  filter: brightness(.96);
}
.hyuk-action-icon,
.hyuk-action-icon svg {
  display: block;
  width: 1.75rem;
  height: 1.75rem;
}
.hyuk-action-footer {
  position: relative;
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
  gap: .75rem;
  font-size: var(--landing-ui-control-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-ui-control-line-height);
}
.hyuk-action-footer > span:first-child {
  white-space: nowrap;
}
.hyuk-action-footer > span:last-child,
.hyuk-action-footer svg {
  display: block;
  width: 1.35rem;
  height: 1.35rem;
  flex: 0 0 1.35rem;
}
.hyuk-action-footer > span:last-child {
  position: absolute;
  right: 0;
  bottom: 0;
}
.hyuk-action--booking {
  color: var(--color-white);
  background: var(--color-brand);
}
.hyuk-action--consult {
  color: var(--color-concern-ink);
  background: var(--color-concern-bubble);
}
.hyuk-action--visit {
  color: var(--color-white);
  background: var(--color-black);
}
.care-features {
  --care-section-space: clamp(2rem, calc(1.5rem + 2.5vw), 4rem);
  overflow: hidden;
  background: var(--color-white);
}
.care-feature-chapter {
  display: grid;
  width: min(calc(100% - (var(--space-page) * 2)), var(--content-max));
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas: "copy main";
  column-gap: clamp(1.5rem, 3vw, 2.5rem);
  align-items: center;
  margin-inline: auto;
  padding-block: var(--care-section-space);
}
.care-feature-copy {
  grid-area: copy;
}
.care-feature-chapter:nth-child(even) {
  grid-template-areas: "main copy";
}
.care-feature-copy .eyebrow,
.care-feature-copy h2,
.care-feature-copy > .landing-body-2 {
  margin: 0;
}
.care-feature-copy h2 {
  margin-top: .75rem;
}
.care-feature-copy > .landing-body-2 {
  max-width: 35rem;
  margin-top: 1rem;
  color: var(--color-text-muted);
}
.care-main-panel {
  min-width: 0;
  grid-area: main;
  margin: 0;
}
.care-main-panel picture {
  display: block;
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-card);
}
.care-main-panel img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
.equipment-bento {
  background: var(--color-gray);
}
.general-section-heading {
  margin-bottom: clamp(2.5rem, 6vw, 5rem);
}
.general-section-heading .eyebrow,
.general-section-heading h2,
.general-section-heading > p {
  margin: 0;
}
.general-section-heading h2 {
  margin-top: .75rem;
}
.general-section-heading > p {
  max-width: 42rem;
  margin-top: 1rem;
  color: var(--color-text-muted);
}
.equipment-bento-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 1rem;
}
.equipment-bento-card {
  display: flex;
  min-height: 0;
  grid-column: span 3;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-card);
  padding: .75rem;
  background: var(--color-white);
  box-shadow: 0 .75rem 2rem color-mix(in srgb, var(--color-black) 6%, transparent);
}
.equipment-bento-card--wide {
  grid-column: span 6;
}
.equipment-bento-card picture {
  display: block;
  height: clamp(12.5rem, 17vw, 14.5rem);
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: calc(var(--radius-card) - .5rem);
  background: var(--color-white);
}
.equipment-bento-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.equipment-card-body {
  min-height: 0;
  padding: 1.75rem .75rem .75rem;
  color: var(--color-text);
  text-align: left;
}
.equipment-meta {
  display: flex;
  align-items: center;
  gap: .75rem;
  color: var(--color-text-muted);
  font-size: var(--landing-ui-label-size);
  line-height: var(--landing-ui-label-line-height);
}
.equipment-meta span {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  border-radius: 999px;
  padding-inline: .875rem;
  background: var(--color-gray);
  font-weight: var(--landing-font-weight-bold);
}
.equipment-bento-card h3 {
  margin: 1rem 0 .5rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.equipment-bento-card .equipment-card-body > p {
  max-width: 28rem;
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.process-section {
  background: var(--color-white);
}
.process-intro {
  padding-block: var(--landing-section-space) 2rem;
}
.process-intro .eyebrow,
.process-intro h2,
.process-intro > p:last-child {
  margin: 0;
}
.process-intro h2 {
  max-width: 22ch;
  margin-top: .75rem;
}
.process-intro > p:last-child {
  max-width: 42rem;
  margin-top: 1rem;
  color: var(--color-text-muted);
}
.process-timeline-wrap {
  position: relative;
  padding-bottom: var(--landing-section-space);
}
.process-timeline {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  list-style: none;
}
.process-entry {
  display: flex;
  justify-content: flex-start;
  gap: 2.5rem;
  padding-top: 10rem;
}
.process-sticky-title {
  position: sticky;
  z-index: 2;
  top: calc(var(--header-height) + 6rem);
  display: flex;
  width: 100%;
  max-width: 24rem;
  height: fit-content;
  flex-direction: row;
  align-items: center;
  align-self: flex-start;
}
.process-sticky-title strong {
  padding-left: 5rem;
  color: color-mix(in srgb, var(--color-text-muted) 72%, var(--color-white));
  font-size: var(--landing-heading-2-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-heading-2-line-height);
}
.process-dot {
  position: absolute;
  left: .75rem;
  display: grid;
  width: 2.5rem;
  height: 2.5rem;
  place-items: center;
  border-radius: 50%;
  background: var(--color-white);
}
.process-dot-number {
  display: none;
}
.process-dot i {
  width: 1rem;
  height: 1rem;
  border: 1px solid var(--color-line);
  border-radius: 50%;
  background: var(--color-gray);
}
.process-content {
  position: relative;
  width: 100%;
  padding-inline: 1rem;
}
.process-content h3 {
  margin: 0 0 .75rem;
  font-size: var(--landing-heading-4-size);
  line-height: var(--landing-heading-4-line-height);
}
.process-content > p {
  max-width: 42rem;
  margin: 0 0 2rem;
  color: var(--color-text-muted);
  font-size: var(--landing-body-4-size);
  line-height: var(--landing-body-4-line-height);
}
.process-image {
  display: block;
  width: 80%;
  overflow: hidden;
  border-radius: .5rem;
  clip-path: inset(0 round .5rem);
}
.process-image img {
  width: 100%;
  height: clamp(18rem, 32vw, 29rem);
  object-fit: cover;
  box-shadow: 0 0 1.5rem color-mix(in srgb, var(--color-black) 6%, transparent);
}
.general-case-section {
  padding-block: var(--landing-section-space);
}
.general-case-section .case-heading {
  display: block;
  margin-bottom: 2.5rem;
}
.general-section-label {
  color: var(--color-keyword);
  font-size: var(--landing-body-3-size);
  font-weight: var(--landing-font-weight-bold);
  line-height: var(--landing-body-3-line-height);
}
.general-case-section .general-section-label {
  margin: 0 0 .5rem;
}
.general-case-section .case-heading h2 {
  margin: 0;
}
@media (max-width: 64rem) {
  .hyuk-hero {
    min-height: 0;
    grid-template-columns: 1fr;
    grid-template-rows: minmax(36rem, 78svh) auto;
    padding-top: calc(var(--header-height-mobile) + .75rem);
  }
  .hyuk-hero-main {
    min-height: 0;
  }
  .hyuk-hero-actions {
    height: auto;
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: 1fr;
    gap: .5rem;
    justify-self: stretch;
  }
  .hyuk-action {
    aspect-ratio: 3 / 1;
  }
  .equipment-bento-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .equipment-bento-card,
  .equipment-bento-card--wide {
    grid-column: span 1;
  }
  .process-sticky-title {
    max-width: 17rem;
  }
  .process-entry {
    gap: 1.5rem;
  }
}
@media (max-width: 48rem) {
  .hyuk-hero {
    grid-template-rows: minmax(22rem, 48svh) auto;
    gap: .25rem;
    padding: calc(var(--header-height-mobile) + .25rem) .25rem .25rem;
  }
  .hyuk-hero-main,
  .hyuk-action {
    border-radius: .875rem;
  }
  .hyuk-hero-main {
    border-radius: .875rem;
  }
  .hyuk-hero-shade {
    background:
      linear-gradient(
        0deg,
        color-mix(in srgb, var(--color-black) 76%, transparent),
        transparent 78%);
  }
  .hyuk-hero-corner {
    --hyuk-corner-curve: clamp(.625rem, 2.75vw, .875rem);
    width: auto;
    height: clamp(2rem, 6vw, 2.5rem);
    aspect-ratio: 1;
    border-radius: 0 0 .875rem;
  }
  .hyuk-hero-corner.hyuk-hero-corner--bottom-right {
    border-radius: .875rem 0 0;
  }
  .hyuk-hero-copy {
    right: calc(1.25rem + clamp(2rem, 6vw, 2.5rem));
    bottom: 1.25rem;
    left: 1.25rem;
    width: auto;
  }
  .hyuk-hero-copy h1 {
    margin-bottom: .75rem;
  }
  .hyuk-hero-copy strong {
    margin-bottom: .25rem;
  }
  .hyuk-hero-copy p br {
    display: none;
  }
  .hyuk-hero-actions {
    gap: .25rem;
  }
  .hyuk-action {
    padding: .625rem .75rem;
  }
  .hyuk-action-icon,
  .hyuk-action-icon svg {
    width: 1.375rem;
    height: 1.375rem;
  }
  .hyuk-action-footer {
    gap: .125rem;
  }
  .hyuk-action-footer > span:last-child,
  .hyuk-action-footer svg {
    width: 1rem;
    height: 1rem;
    flex-basis: 1rem;
  }
  .hyuk-action-footer > span:last-child {
    position: static;
  }
  .equipment-bento-grid {
    grid-template-columns: 1fr;
  }
  .equipment-card-body {
    padding: 1.5rem .5rem .5rem;
  }
  .process-intro {
    padding-bottom: 0;
  }
  .process-entry {
    gap: 0;
    padding-top: 5rem;
  }
  .process-sticky-title {
    position: sticky;
    top: calc(var(--header-height-mobile) + 2rem);
    width: 4rem;
    max-width: 4rem;
    flex: 0 0 4rem;
  }
  .process-sticky-title strong {
    display: none;
  }
  .process-dot {
    left: .625rem;
    width: 2.75rem;
    height: 2.75rem;
    border: 0;
    color: var(--color-text);
    background: transparent;
  }
  .process-dot i {
    display: none;
  }
  .process-dot-number {
    display: block;
    font-size: var(--landing-body-3-size);
    font-weight: var(--landing-font-weight-bold);
    line-height: var(--landing-body-3-line-height);
  }
  .process-content {
    padding: 0 .25rem 0 1rem;
  }
  .process-image img {
    height: 14rem;
  }
}
@media (max-width: 35rem) {
  .hyuk-action {
    min-height: 4.5rem;
    aspect-ratio: auto;
    padding: .625rem;
  }
  .care-feature-chapter {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr;
    grid-template-areas: "copy" "main";
    gap: 2.5rem;
    padding: var(--care-section-space) var(--space-page);
  }
  .care-feature-chapter:nth-child(even) {
    grid-template-areas: "copy" "main";
  }
  .care-main-panel picture {
    border-radius: 1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hyuk-action {
    transition: none;
  }
}
