/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-black: #202020;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --container-xl: 36rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 4px;
    --radius-lg: 0.5rem;
    --radius-xl: 8px;
    --radius-2xl: 16px;
    --radius-3xl: 1.5rem;
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-primary-300: #4a69a8;
    --color-primary-400: #b8d0ff;
    --color-primary-500: #3377ff;
    --color-primary-600: #0077ff;
    --color-primary-700: #0050aa;
    --color-primary-800: #1d4492;
    --color-primary-900: #00102e;
    --color-naver: #09aa5c;
    --color-kakao: #ffcd00;
    --color-google: #f2f2f2;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .\!visible {
    visibility: visible !important;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: 0;
  }
  .inset-y-0 {
    inset-block: 0;
  }
  .-top-2\.5 {
    top: calc(var(--spacing) * -2.5);
  }
  .top-0 {
    top: 0;
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-6 {
    top: calc(var(--spacing) * 6);
  }
  .top-22\.5 {
    top: calc(var(--spacing) * 22.5);
  }
  .top-full {
    top: 100%;
  }
  .right-0 {
    right: 0;
  }
  .right-1\/2 {
    right: calc(1 / 2 * 100%);
  }
  .bottom-0 {
    bottom: 0;
  }
  .bottom-16 {
    bottom: calc(var(--spacing) * 16);
  }
  .left-0 {
    left: 0;
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .-z-10 {
    z-index: calc(10 * -1);
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-50 {
    z-index: 50;
  }
  .z-500 {
    z-index: 500;
  }
  .z-1000 {
    z-index: 1000;
  }
  .z-1250 {
    z-index: 1250;
  }
  .z-1500 {
    z-index: 1500;
  }
  .order-1 {
    order: 1;
  }
  .order-2 {
    order: 2;
  }
  .\!container {
    width: 100% !important;
    @media (width >= 640px) {
      max-width: 640px !important;
    }
    @media (width >= 820px) {
      max-width: 820px !important;
    }
    @media (width >= 1080px) {
      max-width: 1080px !important;
    }
    @media (width >= 1440px) {
      max-width: 1440px !important;
    }
    @media (width >= 1820px) {
      max-width: 1820px !important;
    }
  }
  .container {
    width: 100%;
    @media (width >= 640px) {
      max-width: 640px;
    }
    @media (width >= 820px) {
      max-width: 820px;
    }
    @media (width >= 1080px) {
      max-width: 1080px;
    }
    @media (width >= 1440px) {
      max-width: 1440px;
    }
    @media (width >= 1820px) {
      max-width: 1820px;
    }
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: var(--spacing);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mt-14 {
    margin-top: calc(var(--spacing) * 14);
  }
  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-30 {
    margin-top: calc(var(--spacing) * 30);
  }
  .mt-\[33px\] {
    margin-top: 33px;
  }
  .mt-auto {
    margin-top: auto;
  }
  .-mr-\[50vw\] {
    margin-right: calc(50vw * -1);
  }
  .mr-1 {
    margin-right: var(--spacing);
  }
  .mb-1 {
    margin-bottom: var(--spacing);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .mb-20 {
    margin-bottom: calc(var(--spacing) * 20);
  }
  .-ml-\[50vw\] {
    margin-left: calc(50vw * -1);
  }
  .ml-auto {
    margin-left: auto;
  }
  .\!block {
    display: block !important;
  }
  .\!grid {
    display: grid !important;
  }
  .\!table {
    display: table !important;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .aspect-2\/1 {
    aspect-ratio: 2/1;
  }
  .aspect-3\/4 {
    aspect-ratio: 3/4;
  }
  .aspect-4\/5 {
    aspect-ratio: 4/5;
  }
  .aspect-5\/3 {
    aspect-ratio: 5/3;
  }
  .aspect-5\/4 {
    aspect-ratio: 5/4;
  }
  .aspect-7\/5 {
    aspect-ratio: 7/5;
  }
  .aspect-8\/9 {
    aspect-ratio: 8/9;
  }
  .aspect-386\/263 {
    aspect-ratio: 386/263;
  }
  .aspect-406\/280 {
    aspect-ratio: 406/280;
  }
  .aspect-672\/437 {
    aspect-ratio: 672/437;
  }
  .aspect-750\/550 {
    aspect-ratio: 750/550;
  }
  .aspect-1280\/347 {
    aspect-ratio: 1280/347;
  }
  .aspect-\[406\/280\] {
    aspect-ratio: 406/280;
  }
  .aspect-\[600\/400\] {
    aspect-ratio: 600/400;
  }
  .aspect-\[624\/280\] {
    aspect-ratio: 624/280;
  }
  .aspect-\[662\/354\] {
    aspect-ratio: 662/354;
  }
  .aspect-\[750\/550\] {
    aspect-ratio: 750/550;
  }
  .aspect-\[1280\/347\] {
    aspect-ratio: 1280/347;
  }
  .aspect-\[1280\/446\] {
    aspect-ratio: 1280/446;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-2 {
    width: calc(var(--spacing) * 2);
    height: calc(var(--spacing) * 2);
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .size-3\.5 {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-6\.5 {
    width: calc(var(--spacing) * 6.5);
    height: calc(var(--spacing) * 6.5);
  }
  .size-7 {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
  }
  .size-7\.5 {
    width: calc(var(--spacing) * 7.5);
    height: calc(var(--spacing) * 7.5);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-11 {
    width: calc(var(--spacing) * 11);
    height: calc(var(--spacing) * 11);
  }
  .size-12 {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
  }
  .size-14 {
    width: calc(var(--spacing) * 14);
    height: calc(var(--spacing) * 14);
  }
  .size-18 {
    width: calc(var(--spacing) * 18);
    height: calc(var(--spacing) * 18);
  }
  .size-35 {
    width: calc(var(--spacing) * 35);
    height: calc(var(--spacing) * 35);
  }
  .size-\[30px\] {
    width: 30px;
    height: 30px;
  }
  .size-\[140px\] {
    width: 140px;
    height: 140px;
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-0\.5 {
    height: calc(var(--spacing) * 0.5);
  }
  .h-1 {
    height: var(--spacing);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-12\.5 {
    height: calc(var(--spacing) * 12.5);
  }
  .h-13\.5 {
    height: calc(var(--spacing) * 13.5);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-18\.75 {
    height: calc(var(--spacing) * 18.75);
  }
  .h-22\.5 {
    height: calc(var(--spacing) * 22.5);
  }
  .h-\[220px\] {
    height: 220px;
  }
  .h-\[320px\] {
    height: 320px;
  }
  .h-\[calc\(100dvh-3\.5rem\)\] {
    height: calc(100dvh - 3.5rem);
  }
  .h-\[calc\(100vh-131px\)\] {
    height: calc(100vh - 131px);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .max-h-\[85\%\] {
    max-height: 85%;
  }
  .max-h-\[90\%\] {
    max-height: 90%;
  }
  .max-h-\[calc\(100vh-32px\)\] {
    max-height: calc(100vh - 32px);
  }
  .max-h-full {
    max-height: 100%;
  }
  .min-h-0 {
    min-height: 0;
  }
  .min-h-16 {
    min-height: calc(var(--spacing) * 16);
  }
  .min-h-60 {
    min-height: calc(var(--spacing) * 60);
  }
  .min-h-65 {
    min-height: calc(var(--spacing) * 65);
  }
  .min-h-\[104px\] {
    min-height: 104px;
  }
  .min-h-\[114px\] {
    min-height: 114px;
  }
  .min-h-\[280px\] {
    min-height: 280px;
  }
  .min-h-\[290px\] {
    min-height: 290px;
  }
  .min-h-\[300px\] {
    min-height: 300px;
  }
  .min-h-\[320px\] {
    min-height: 320px;
  }
  .w-11 {
    width: calc(var(--spacing) * 11);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-17\.5 {
    width: calc(var(--spacing) * 17.5);
  }
  .w-26 {
    width: calc(var(--spacing) * 26);
  }
  .w-30 {
    width: calc(var(--spacing) * 30);
  }
  .w-37\.5 {
    width: calc(var(--spacing) * 37.5);
  }
  .w-445 {
    width: calc(var(--spacing) * 445);
  }
  .w-\[12\.5\%\] {
    width: 12.5%;
  }
  .w-\[49px\] {
    width: 49px;
  }
  .w-\[87\%\] {
    width: 87%;
  }
  .w-\[280px\] {
    width: 280px;
  }
  .w-\[calc\(100\%-32px\)\] {
    width: calc(100% - 32px);
  }
  .w-\[calc\(100\%-48px\)\] {
    width: calc(100% - 48px);
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .w-screen {
    width: 100vw;
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-45 {
    max-width: calc(var(--spacing) * 45);
  }
  .max-w-50 {
    max-width: calc(var(--spacing) * 50);
  }
  .max-w-52 {
    max-width: calc(var(--spacing) * 52);
  }
  .max-w-75 {
    max-width: calc(var(--spacing) * 75);
  }
  .max-w-85 {
    max-width: calc(var(--spacing) * 85);
  }
  .max-w-87 {
    max-width: calc(var(--spacing) * 87);
  }
  .max-w-125 {
    max-width: calc(var(--spacing) * 125);
  }
  .max-w-128 {
    max-width: calc(var(--spacing) * 128);
  }
  .max-w-150 {
    max-width: calc(var(--spacing) * 150);
  }
  .max-w-154 {
    max-width: calc(var(--spacing) * 154);
  }
  .max-w-160 {
    max-width: calc(var(--spacing) * 160);
  }
  .max-w-170 {
    max-width: calc(var(--spacing) * 170);
  }
  .max-w-196 {
    max-width: calc(var(--spacing) * 196);
  }
  .max-w-225 {
    max-width: calc(var(--spacing) * 225);
  }
  .max-w-320 {
    max-width: calc(var(--spacing) * 320);
  }
  .max-w-\[55\%\] {
    max-width: 55%;
  }
  .max-w-\[85\%\] {
    max-width: 85%;
  }
  .max-w-\[90\%\] {
    max-width: 90%;
  }
  .max-w-\[342px\] {
    max-width: 342px;
  }
  .max-w-\[465px\] {
    max-width: 465px;
  }
  .max-w-\[467px\] {
    max-width: 467px;
  }
  .max-w-\[489px\] {
    max-width: 489px;
  }
  .max-w-\[514px\] {
    max-width: 514px;
  }
  .max-w-\[560px\] {
    max-width: 560px;
  }
  .max-w-\[580px\] {
    max-width: 580px;
  }
  .max-w-\[616px\] {
    max-width: 616px;
  }
  .max-w-\[620px\] {
    max-width: 620px;
  }
  .max-w-\[640px\] {
    max-width: 640px;
  }
  .max-w-\[711px\] {
    max-width: 711px;
  }
  .max-w-\[713px\] {
    max-width: 713px;
  }
  .max-w-\[800px\] {
    max-width: 800px;
  }
  .max-w-\[896px\] {
    max-width: 896px;
  }
  .max-w-\[920px\] {
    max-width: 920px;
  }
  .max-w-\[946px\] {
    max-width: 946px;
  }
  .max-w-\[1100px\] {
    max-width: 1100px;
  }
  .max-w-\[1120px\] {
    max-width: 1120px;
  }
  .max-w-\[1123px\] {
    max-width: 1123px;
  }
  .max-w-\[1139px\] {
    max-width: 1139px;
  }
  .max-w-\[1165px\] {
    max-width: 1165px;
  }
  .max-w-\[1280px\] {
    max-width: 1280px;
  }
  .max-w-\[1307px\] {
    max-width: 1307px;
  }
  .max-w-\[calc\(50\%-2\.5rem\)\] {
    max-width: calc(50% - 2.5rem);
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: 0;
  }
  .min-w-45 {
    min-width: calc(var(--spacing) * 45);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink {
    flex-shrink: 1;
  }
  .shrink {
    flex-shrink: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .origin-left {
    transform-origin: 0;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-full {
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .scrollbar-none {
    scrollbar-width: none;
  }
  .\!list-none {
    list-style-type: none !important;
  }
  .list-decimal {
    list-style-type: decimal;
  }
  .list-disc {
    list-style-type: disc;
  }
  .appearance-none {
    appearance: none;
  }
  .auto-rows-fr {
    grid-auto-rows: minmax(0, 1fr);
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .grid-cols-\[auto_1fr\] {
    grid-template-columns: auto 1fr;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .\!gap-3 {
    gap: calc(var(--spacing) * 3) !important;
  }
  .gap-0 {
    gap: 0;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: var(--spacing);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }
  .gap-20 {
    gap: calc(var(--spacing) * 20);
  }
  .space-y-1\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }
  .gap-x-10 {
    column-gap: calc(var(--spacing) * 10);
  }
  .gap-y-1 {
    row-gap: var(--spacing);
  }
  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }
  .gap-y-8 {
    row-gap: calc(var(--spacing) * 8);
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-black\/10 {
    :where(& > :not(:last-child)) {
      border-color: color-mix(in srgb, #202020 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
      }
    }
  }
  .self-stretch {
    align-self: stretch;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-visible {
    overflow: visible;
  }
  .overflow-visible\! {
    overflow: visible !important;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .overscroll-contain {
    overscroll-behavior: contain;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }
  .rounded-\[2px\] {
    border-radius: 2px;
  }
  .rounded-\[5px\] {
    border-radius: 5px;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-t-lg {
    border-top-left-radius: var(--radius-lg);
    border-top-right-radius: var(--radius-lg);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-t-2 {
    border-top-style: var(--tw-border-style);
    border-top-width: 2px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-\[\#222\] {
    border-color: #222;
  }
  .border-black {
    border-color: var(--color-black);
  }
  .border-black\/10 {
    border-color: color-mix(in srgb, #202020 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
  }
  .border-black\/20 {
    border-color: color-mix(in srgb, #202020 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }
  .border-black\/80 {
    border-color: color-mix(in srgb, #202020 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
  }
  .border-primary-500 {
    border-color: var(--color-primary-500);
  }
  .border-primary-500\/20 {
    border-color: color-mix(in srgb, #3377ff 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-primary-500) 20%, transparent);
    }
  }
  .border-primary-700 {
    border-color: var(--color-primary-700);
  }
  .bg-\[\#37f\] {
    background-color: #37f;
  }
  .bg-\[\#202020\]\/5 {
    background-color: color-mix(in oklab, #202020 5%, transparent);
  }
  .bg-\[\#eff6fd\] {
    background-color: #eff6fd;
  }
  .bg-black {
    background-color: var(--color-black);
  }
  .bg-black\/2 {
    background-color: color-mix(in srgb, #202020 2%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 2%, transparent);
    }
  }
  .bg-black\/3 {
    background-color: color-mix(in srgb, #202020 3%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 3%, transparent);
    }
  }
  .bg-black\/5 {
    background-color: color-mix(in srgb, #202020 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
    }
  }
  .bg-black\/10 {
    background-color: color-mix(in srgb, #202020 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
  }
  .bg-black\/40 {
    background-color: color-mix(in srgb, #202020 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }
  .bg-black\/50 {
    background-color: color-mix(in srgb, #202020 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .bg-black\/55 {
    background-color: color-mix(in srgb, #202020 55%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 55%, transparent);
    }
  }
  .bg-black\/60 {
    background-color: color-mix(in srgb, #202020 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }
  .bg-black\/\[0\.02\] {
    background-color: color-mix(in srgb, #202020 2%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 2%, transparent);
    }
  }
  .bg-black\/\[0\.03\] {
    background-color: color-mix(in srgb, #202020 3%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 3%, transparent);
    }
  }
  .bg-black\/\[0\.04\] {
    background-color: color-mix(in srgb, #202020 4%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 4%, transparent);
    }
  }
  .bg-google {
    background-color: var(--color-google);
  }
  .bg-kakao {
    background-color: var(--color-kakao);
  }
  .bg-naver {
    background-color: var(--color-naver);
  }
  .bg-primary-400 {
    background-color: var(--color-primary-400);
  }
  .bg-primary-500 {
    background-color: var(--color-primary-500);
  }
  .bg-primary-500\/5 {
    background-color: color-mix(in srgb, #3377ff 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
    }
  }
  .bg-primary-600 {
    background-color: var(--color-primary-600);
  }
  .bg-primary-700 {
    background-color: var(--color-primary-700);
  }
  .bg-primary-800 {
    background-color: var(--color-primary-800);
  }
  .bg-primary-800\/5 {
    background-color: color-mix(in srgb, #1d4492 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary-800) 5%, transparent);
    }
  }
  .bg-primary-900 {
    background-color: var(--color-primary-900);
  }
  .bg-primary-900\/3 {
    background-color: color-mix(in srgb, #00102e 3%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary-900) 3%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/20 {
    background-color: color-mix(in srgb, #fff 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }
  .bg-white\/30 {
    background-color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .bg-white\/40 {
    background-color: color-mix(in srgb, #fff 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }
  .stroke-3 {
    stroke-width: 3;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .object-\[center_12\%\] {
    object-position: center 12%;
  }
  .object-bottom {
    object-position: bottom;
  }
  .object-center {
    object-position: center;
  }
  .object-left {
    object-position: left;
  }
  .p-1 {
    padding: var(--spacing);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-\[18px\] {
    padding-inline: 18px;
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-15 {
    padding-block: calc(var(--spacing) * 15);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
  .py-\[13px\] {
    padding-block: 13px;
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }
  .pt-10 {
    padding-top: calc(var(--spacing) * 10);
  }
  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }
  .pt-16 {
    padding-top: calc(var(--spacing) * 16);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-6 {
    padding-right: calc(var(--spacing) * 6);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }
  .pb-16 {
    padding-bottom: calc(var(--spacing) * 16);
  }
  .pb-22\.5 {
    padding-bottom: calc(var(--spacing) * 22.5);
  }
  .pb-25 {
    padding-bottom: calc(var(--spacing) * 25);
  }
  .\!pl-0 {
    padding-left: 0 !important;
  }
  .pl-2\.5 {
    padding-left: calc(var(--spacing) * 2.5);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .text-\[16px\] {
    font-size: 16px;
  }
  .text-\[18px\] {
    font-size: 18px;
  }
  .text-\[20px\] {
    font-size: 20px;
  }
  .text-\[24px\] {
    font-size: 24px;
  }
  .text-\[28px\] {
    font-size: 28px;
  }
  .text-\[32px\] {
    font-size: 32px;
  }
  .text-\[40px\] {
    font-size: 40px;
  }
  .text-\[48px\] {
    font-size: 48px;
  }
  .leading-9 {
    --tw-leading: calc(var(--spacing) * 9);
    line-height: calc(var(--spacing) * 9);
  }
  .leading-\[1\.4\] {
    --tw-leading: 1.4;
    line-height: 1.4;
  }
  .leading-\[1\.5\] {
    --tw-leading: 1.5;
    line-height: 1.5;
  }
  .leading-\[1\.6\] {
    --tw-leading: 1.6;
    line-height: 1.6;
  }
  .leading-\[1\.7\] {
    --tw-leading: 1.7;
    line-height: 1.7;
  }
  .leading-\[1\.8\] {
    --tw-leading: 1.8;
    line-height: 1.8;
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }
  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .text-nowrap {
    text-wrap: nowrap;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .break-all {
    word-break: break-all;
  }
  .whitespace-pre {
    white-space: pre;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .text-\[\#9e9e9e\] {
    color: #9e9e9e;
  }
  .text-\[\#222\] {
    color: #222;
  }
  .text-\[\#3377FF\] {
    color: #3377FF;
  }
  .text-\[\#202020\] {
    color: #202020;
  }
  .text-\[\#202020\]\/80 {
    color: color-mix(in oklab, #202020 80%, transparent);
  }
  .text-\[\#aeaeae\] {
    color: #aeaeae;
  }
  .text-black {
    color: var(--color-black);
  }
  .text-black\/20 {
    color: color-mix(in srgb, #202020 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }
  .text-black\/30 {
    color: color-mix(in srgb, #202020 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
  }
  .text-black\/40 {
    color: color-mix(in srgb, #202020 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }
  .text-black\/50 {
    color: color-mix(in srgb, #202020 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .text-black\/60 {
    color: color-mix(in srgb, #202020 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }
  .text-black\/70 {
    color: color-mix(in srgb, #202020 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 70%, transparent);
    }
  }
  .text-black\/80 {
    color: color-mix(in srgb, #202020 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
  }
  .text-black\/90 {
    color: color-mix(in srgb, #202020 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 90%, transparent);
    }
  }
  .text-primary-500 {
    color: var(--color-primary-500);
  }
  .text-primary-600 {
    color: var(--color-primary-600);
  }
  .text-primary-700 {
    color: var(--color-primary-700);
  }
  .text-primary-800 {
    color: var(--color-primary-800);
  }
  .text-transparent {
    color: transparent;
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/30 {
    color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .text-white\/70 {
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .text-white\/80 {
    color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .text-white\/90 {
    color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .lowercase {
    text-transform: lowercase;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .not-italic {
    font-style: normal;
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .underline {
    text-decoration-line: underline;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-20 {
    opacity: 20%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-70 {
    opacity: 70%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-90 {
    opacity: 90%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[0_0_6px_0_rgba\(0\,0\,0\,0\.1\)\] {
    --tw-shadow: 0 0 6px 0 var(--tw-shadow-color, rgba(0,0,0,0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[0_0_10px_rgba\(0\,80\,170\,0\.2\)\] {
    --tw-shadow: 0 0 10px var(--tw-shadow-color, rgba(0,80,170,0.2));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-4 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-white {
    --tw-ring-color: var(--color-white);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-1 {
    --tw-brightness: brightness(1%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-2 {
    --tw-brightness: brightness(2%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-3 {
    --tw-brightness: brightness(3%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-4 {
    --tw-brightness: brightness(4%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[width\] {
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-all {
    -webkit-user-select: all;
    user-select: all;
  }
  .\[-webkit-overflow-scrolling\:touch\] {
    -webkit-overflow-scrolling: touch;
  }
  .group-open\:bg-primary-500 {
    &:is(:where(.group):is([open], :popover-open, :open) *) {
      background-color: var(--color-primary-500);
    }
  }
  .group-open\:text-primary-500 {
    &:is(:where(.group):is([open], :popover-open, :open) *) {
      color: var(--color-primary-500);
    }
  }
  .group-open\:text-white {
    &:is(:where(.group):is([open], :popover-open, :open) *) {
      color: var(--color-white);
    }
  }
  .group-hover\:scale-105 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:text-primary-600 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-primary-600);
      }
    }
  }
  .group-aria-expanded\:rotate-180 {
    &:is(:where(.group)[aria-expanded="true"] *) {
      rotate: 180deg;
    }
  }
  .peer-checked\:border-primary-600 {
    &:is(:where(.peer):checked ~ *) {
      border-color: var(--color-primary-600);
    }
  }
  .peer-checked\:bg-primary-600 {
    &:is(:where(.peer):checked ~ *) {
      background-color: var(--color-primary-600);
    }
  }
  .peer-checked\:text-white {
    &:is(:where(.peer):checked ~ *) {
      color: var(--color-white);
    }
  }
  .placeholder\:text-black\/20 {
    &::placeholder {
      color: color-mix(in srgb, #202020 20%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-black) 20%, transparent);
      }
    }
  }
  .last\:border-b {
    &:last-child {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
    }
  }
  .last\:border-black\/10 {
    &:last-child {
      border-color: color-mix(in srgb, #202020 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
      }
    }
  }
  .open\:bg-black\/\[0\.02\] {
    &:is([open], :popover-open, :open) {
      background-color: color-mix(in srgb, #202020 2%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-black) 2%, transparent);
      }
    }
  }
  .hover\:bg-black\/5 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #202020 5%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
        }
      }
    }
  }
  .hover\:bg-primary-500\/5 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #3377ff 5%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
        }
      }
    }
  }
  .hover\:bg-primary-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary-700);
      }
    }
  }
  .hover\:bg-primary-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary-800);
      }
    }
  }
  .hover\:text-black {
    &:hover {
      @media (hover: hover) {
        color: var(--color-black);
      }
    }
  }
  .hover\:text-primary-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary-600);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:opacity-80 {
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .hover\:opacity-100 {
    &:hover {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .max-md\:-mx-4 {
    @media (width < 820px) {
      margin-inline: calc(var(--spacing) * -4);
    }
  }
  .max-md\:w-\[calc\(100\%\+2rem\)\] {
    @media (width < 820px) {
      width: calc(100% + 2rem);
    }
  }
  .sm\:top-10 {
    @media (width >= 640px) {
      top: calc(var(--spacing) * 10);
    }
  }
  .sm\:mt-4 {
    @media (width >= 640px) {
      margin-top: calc(var(--spacing) * 4);
    }
  }
  .sm\:mt-6 {
    @media (width >= 640px) {
      margin-top: calc(var(--spacing) * 6);
    }
  }
  .sm\:mt-8 {
    @media (width >= 640px) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .sm\:mt-10 {
    @media (width >= 640px) {
      margin-top: calc(var(--spacing) * 10);
    }
  }
  .sm\:mt-12 {
    @media (width >= 640px) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .sm\:mt-14 {
    @media (width >= 640px) {
      margin-top: calc(var(--spacing) * 14);
    }
  }
  .sm\:aspect-1280\/658 {
    @media (width >= 640px) {
      aspect-ratio: 1280/658;
    }
  }
  .sm\:size-14 {
    @media (width >= 640px) {
      width: calc(var(--spacing) * 14);
      height: calc(var(--spacing) * 14);
    }
  }
  .sm\:min-h-\[114px\] {
    @media (width >= 640px) {
      min-height: 114px;
    }
  }
  .sm\:min-h-\[360px\] {
    @media (width >= 640px) {
      min-height: 360px;
    }
  }
  .sm\:w-\[49px\] {
    @media (width >= 640px) {
      width: 49px;
    }
  }
  .sm\:max-w-85\.5 {
    @media (width >= 640px) {
      max-width: calc(var(--spacing) * 85.5);
    }
  }
  .sm\:max-w-\[calc\(50\%-3rem\)\] {
    @media (width >= 640px) {
      max-width: calc(50% - 3rem);
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 640px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:gap-3 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .sm\:gap-4 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .sm\:gap-5 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .sm\:gap-6 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .sm\:gap-8 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .sm\:gap-12 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .sm\:gap-14 {
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 14);
    }
  }
  .sm\:rounded-2xl {
    @media (width >= 640px) {
      border-radius: var(--radius-2xl);
    }
  }
  .sm\:p-4 {
    @media (width >= 640px) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .sm\:p-6 {
    @media (width >= 640px) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .sm\:p-20 {
    @media (width >= 640px) {
      padding: calc(var(--spacing) * 20);
    }
  }
  .sm\:px-3 {
    @media (width >= 640px) {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .sm\:px-4 {
    @media (width >= 640px) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .sm\:py-10 {
    @media (width >= 640px) {
      padding-block: calc(var(--spacing) * 10);
    }
  }
  .sm\:py-12 {
    @media (width >= 640px) {
      padding-block: calc(var(--spacing) * 12);
    }
  }
  .sm\:pt-4 {
    @media (width >= 640px) {
      padding-top: calc(var(--spacing) * 4);
    }
  }
  .sm\:pt-14 {
    @media (width >= 640px) {
      padding-top: calc(var(--spacing) * 14);
    }
  }
  .sm\:text-2xl {
    @media (width >= 640px) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .sm\:text-base {
    @media (width >= 640px) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .sm\:text-lg {
    @media (width >= 640px) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .sm\:text-sm {
    @media (width >= 640px) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .sm\:text-\[28px\] {
    @media (width >= 640px) {
      font-size: 28px;
    }
  }
  .sm\:text-\[32px\] {
    @media (width >= 640px) {
      font-size: 32px;
    }
  }
  .sm\:font-bold {
    @media (width >= 640px) {
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
  }
  .sm\:whitespace-pre-line {
    @media (width >= 640px) {
      white-space: pre-line;
    }
  }
  .sm\:max-md\:-mx-8 {
    @media (width >= 640px) {
      @media (width < 820px) {
        margin-inline: calc(var(--spacing) * -8);
      }
    }
  }
  .sm\:max-md\:w-\[calc\(100\%\+4rem\)\] {
    @media (width >= 640px) {
      @media (width < 820px) {
        width: calc(100% + 4rem);
      }
    }
  }
  .md\:top-10 {
    @media (width >= 820px) {
      top: calc(var(--spacing) * 10);
    }
  }
  .md\:row-span-2 {
    @media (width >= 820px) {
      grid-row: span 2 / span 2;
    }
  }
  .md\:mt-4 {
    @media (width >= 820px) {
      margin-top: calc(var(--spacing) * 4);
    }
  }
  .md\:mt-6 {
    @media (width >= 820px) {
      margin-top: calc(var(--spacing) * 6);
    }
  }
  .md\:mt-10 {
    @media (width >= 820px) {
      margin-top: calc(var(--spacing) * 10);
    }
  }
  .md\:mt-12 {
    @media (width >= 820px) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .md\:mt-16 {
    @media (width >= 820px) {
      margin-top: calc(var(--spacing) * 16);
    }
  }
  .md\:mb-2 {
    @media (width >= 820px) {
      margin-bottom: calc(var(--spacing) * 2);
    }
  }
  .md\:mb-4 {
    @media (width >= 820px) {
      margin-bottom: calc(var(--spacing) * 4);
    }
  }
  .md\:mb-10 {
    @media (width >= 820px) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .md\:mb-12 {
    @media (width >= 820px) {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }
  .md\:mb-14 {
    @media (width >= 820px) {
      margin-bottom: calc(var(--spacing) * 14);
    }
  }
  .md\:mb-16 {
    @media (width >= 820px) {
      margin-bottom: calc(var(--spacing) * 16);
    }
  }
  .md\:block {
    @media (width >= 820px) {
      display: block;
    }
  }
  .md\:grid {
    @media (width >= 820px) {
      display: grid;
    }
  }
  .md\:hidden {
    @media (width >= 820px) {
      display: none;
    }
  }
  .md\:aspect-3\/1 {
    @media (width >= 820px) {
      aspect-ratio: 3/1;
    }
  }
  .md\:aspect-auto {
    @media (width >= 820px) {
      aspect-ratio: auto;
    }
  }
  .md\:size-6 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  .md\:size-6\.5 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 6.5);
      height: calc(var(--spacing) * 6.5);
    }
  }
  .md\:size-7\.5 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 7.5);
      height: calc(var(--spacing) * 7.5);
    }
  }
  .md\:size-10 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 10);
      height: calc(var(--spacing) * 10);
    }
  }
  .md\:size-11 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 11);
      height: calc(var(--spacing) * 11);
    }
  }
  .md\:h-80 {
    @media (width >= 820px) {
      height: calc(var(--spacing) * 80);
    }
  }
  .md\:h-\[62px\] {
    @media (width >= 820px) {
      height: 62px;
    }
  }
  .md\:h-\[72px\] {
    @media (width >= 820px) {
      height: 72px;
    }
  }
  .md\:h-\[320px\] {
    @media (width >= 820px) {
      height: 320px;
    }
  }
  .md\:h-full {
    @media (width >= 820px) {
      height: 100%;
    }
  }
  .md\:min-h-72\.5 {
    @media (width >= 820px) {
      min-height: calc(var(--spacing) * 72.5);
    }
  }
  .md\:w-20 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 20);
    }
  }
  .md\:w-45 {
    @media (width >= 820px) {
      width: calc(var(--spacing) * 45);
    }
  }
  .md\:w-\[70px\] {
    @media (width >= 820px) {
      width: 70px;
    }
  }
  .md\:w-auto {
    @media (width >= 820px) {
      width: auto;
    }
  }
  .md\:w-full {
    @media (width >= 820px) {
      width: 100%;
    }
  }
  .md\:max-w-7xl {
    @media (width >= 820px) {
      max-width: var(--container-7xl);
    }
  }
  .md\:max-w-119 {
    @media (width >= 820px) {
      max-width: calc(var(--spacing) * 119);
    }
  }
  .md\:max-w-\[260px\] {
    @media (width >= 820px) {
      max-width: 260px;
    }
  }
  .md\:max-w-full {
    @media (width >= 820px) {
      max-width: 100%;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 820px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 820px) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-\[420fr_409fr\] {
    @media (width >= 820px) {
      grid-template-columns: 420fr 409fr;
    }
  }
  .md\:flex-row {
    @media (width >= 820px) {
      flex-direction: row;
    }
  }
  .md\:items-center {
    @media (width >= 820px) {
      align-items: center;
    }
  }
  .md\:justify-between {
    @media (width >= 820px) {
      justify-content: space-between;
    }
  }
  .md\:justify-center {
    @media (width >= 820px) {
      justify-content: center;
    }
  }
  .md\:gap-4 {
    @media (width >= 820px) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .md\:gap-5 {
    @media (width >= 820px) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .md\:gap-6 {
    @media (width >= 820px) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .md\:gap-8 {
    @media (width >= 820px) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .md\:gap-10 {
    @media (width >= 820px) {
      gap: calc(var(--spacing) * 10);
    }
  }
  .md\:gap-12 {
    @media (width >= 820px) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .md\:gap-x-8 {
    @media (width >= 820px) {
      column-gap: calc(var(--spacing) * 8);
    }
  }
  .md\:gap-x-\[21px\] {
    @media (width >= 820px) {
      column-gap: 21px;
    }
  }
  .md\:gap-y-6 {
    @media (width >= 820px) {
      row-gap: calc(var(--spacing) * 6);
    }
  }
  .md\:rounded-2xl {
    @media (width >= 820px) {
      border-radius: var(--radius-2xl);
    }
  }
  .md\:rounded-lg {
    @media (width >= 820px) {
      border-radius: var(--radius-lg);
    }
  }
  .md\:rounded-md {
    @media (width >= 820px) {
      border-radius: var(--radius-md);
    }
  }
  .md\:p-8 {
    @media (width >= 820px) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .md\:px-6 {
    @media (width >= 820px) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:px-8 {
    @media (width >= 820px) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .md\:py-0 {
    @media (width >= 820px) {
      padding-block: 0;
    }
  }
  .md\:py-6 {
    @media (width >= 820px) {
      padding-block: calc(var(--spacing) * 6);
    }
  }
  .md\:py-15 {
    @media (width >= 820px) {
      padding-block: calc(var(--spacing) * 15);
    }
  }
  .md\:py-20 {
    @media (width >= 820px) {
      padding-block: calc(var(--spacing) * 20);
    }
  }
  .md\:py-25 {
    @media (width >= 820px) {
      padding-block: calc(var(--spacing) * 25);
    }
  }
  .md\:py-30 {
    @media (width >= 820px) {
      padding-block: calc(var(--spacing) * 30);
    }
  }
  .md\:pt-6 {
    @media (width >= 820px) {
      padding-top: calc(var(--spacing) * 6);
    }
  }
  .md\:pt-8 {
    @media (width >= 820px) {
      padding-top: calc(var(--spacing) * 8);
    }
  }
  .md\:pt-10 {
    @media (width >= 820px) {
      padding-top: calc(var(--spacing) * 10);
    }
  }
  .md\:pt-30 {
    @media (width >= 820px) {
      padding-top: calc(var(--spacing) * 30);
    }
  }
  .md\:pt-px {
    @media (width >= 820px) {
      padding-top: 1px;
    }
  }
  .md\:pb-6 {
    @media (width >= 820px) {
      padding-bottom: calc(var(--spacing) * 6);
    }
  }
  .md\:pb-8 {
    @media (width >= 820px) {
      padding-bottom: calc(var(--spacing) * 8);
    }
  }
  .md\:pb-12 {
    @media (width >= 820px) {
      padding-bottom: calc(var(--spacing) * 12);
    }
  }
  .md\:pb-15 {
    @media (width >= 820px) {
      padding-bottom: calc(var(--spacing) * 15);
    }
  }
  .md\:pb-24 {
    @media (width >= 820px) {
      padding-bottom: calc(var(--spacing) * 24);
    }
  }
  .md\:pb-30 {
    @media (width >= 820px) {
      padding-bottom: calc(var(--spacing) * 30);
    }
  }
  .md\:pl-3\.5 {
    @media (width >= 820px) {
      padding-left: calc(var(--spacing) * 3.5);
    }
  }
  .md\:pl-5 {
    @media (width >= 820px) {
      padding-left: calc(var(--spacing) * 5);
    }
  }
  .md\:text-left {
    @media (width >= 820px) {
      text-align: left;
    }
  }
  .md\:text-2xl {
    @media (width >= 820px) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .md\:text-base {
    @media (width >= 820px) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .md\:text-lg {
    @media (width >= 820px) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .md\:text-sm {
    @media (width >= 820px) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .md\:text-xs {
    @media (width >= 820px) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .md\:text-\[18px\] {
    @media (width >= 820px) {
      font-size: 18px;
    }
  }
  .md\:text-\[20px\] {
    @media (width >= 820px) {
      font-size: 20px;
    }
  }
  .md\:text-\[24px\] {
    @media (width >= 820px) {
      font-size: 24px;
    }
  }
  .md\:text-\[26px\] {
    @media (width >= 820px) {
      font-size: 26px;
    }
  }
  .md\:text-\[28px\] {
    @media (width >= 820px) {
      font-size: 28px;
    }
  }
  .md\:text-\[32px\] {
    @media (width >= 820px) {
      font-size: 32px;
    }
  }
  .md\:text-\[40px\] {
    @media (width >= 820px) {
      font-size: 40px;
    }
  }
  .md\:text-\[48px\] {
    @media (width >= 820px) {
      font-size: 48px;
    }
  }
  .md\:font-medium {
    @media (width >= 820px) {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }
  .md\:whitespace-pre {
    @media (width >= 820px) {
      white-space: pre;
    }
  }
  .lg\:absolute {
    @media (width >= 1080px) {
      position: absolute;
    }
  }
  .lg\:relative {
    @media (width >= 1080px) {
      position: relative;
    }
  }
  .lg\:-top-92\.5 {
    @media (width >= 1080px) {
      top: calc(var(--spacing) * -92.5);
    }
  }
  .lg\:top-full {
    @media (width >= 1080px) {
      top: 100%;
    }
  }
  .lg\:left-1\/2 {
    @media (width >= 1080px) {
      left: calc(1 / 2 * 100%);
    }
  }
  .lg\:z-10 {
    @media (width >= 1080px) {
      z-index: 10;
    }
  }
  .lg\:order-1 {
    @media (width >= 1080px) {
      order: 1;
    }
  }
  .lg\:order-2 {
    @media (width >= 1080px) {
      order: 2;
    }
  }
  .lg\:order-3 {
    @media (width >= 1080px) {
      order: 3;
    }
  }
  .lg\:order-4 {
    @media (width >= 1080px) {
      order: 4;
    }
  }
  .lg\:mx-0 {
    @media (width >= 1080px) {
      margin-inline: 0;
    }
  }
  .lg\:mt-0 {
    @media (width >= 1080px) {
      margin-top: 0;
    }
  }
  .lg\:mt-6 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 6);
    }
  }
  .lg\:mt-8 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .lg\:mt-10 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 10);
    }
  }
  .lg\:mt-12 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .lg\:mt-14 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 14);
    }
  }
  .lg\:mt-16 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 16);
    }
  }
  .lg\:mt-18 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 18);
    }
  }
  .lg\:mt-24 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 24);
    }
  }
  .lg\:mt-56 {
    @media (width >= 1080px) {
      margin-top: calc(var(--spacing) * 56);
    }
  }
  .lg\:mb-0 {
    @media (width >= 1080px) {
      margin-bottom: 0;
    }
  }
  .lg\:mb-8 {
    @media (width >= 1080px) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .lg\:mb-10 {
    @media (width >= 1080px) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .lg\:mb-20 {
    @media (width >= 1080px) {
      margin-bottom: calc(var(--spacing) * 20);
    }
  }
  .lg\:block {
    @media (width >= 1080px) {
      display: block;
    }
  }
  .lg\:flex {
    @media (width >= 1080px) {
      display: flex;
    }
  }
  .lg\:hidden {
    @media (width >= 1080px) {
      display: none;
    }
  }
  .lg\:aspect-3\/4 {
    @media (width >= 1080px) {
      aspect-ratio: 3/4;
    }
  }
  .lg\:aspect-\[845\/300\] {
    @media (width >= 1080px) {
      aspect-ratio: 845/300;
    }
  }
  .lg\:size-4 {
    @media (width >= 1080px) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .lg\:size-6 {
    @media (width >= 1080px) {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  .lg\:size-14 {
    @media (width >= 1080px) {
      width: calc(var(--spacing) * 14);
      height: calc(var(--spacing) * 14);
    }
  }
  .lg\:size-50 {
    @media (width >= 1080px) {
      width: calc(var(--spacing) * 50);
      height: calc(var(--spacing) * 50);
    }
  }
  .lg\:size-\[200px\] {
    @media (width >= 1080px) {
      width: 200px;
      height: 200px;
    }
  }
  .lg\:h-\[62px\] {
    @media (width >= 1080px) {
      height: 62px;
    }
  }
  .lg\:h-\[72px\] {
    @media (width >= 1080px) {
      height: 72px;
    }
  }
  .lg\:h-\[119px\] {
    @media (width >= 1080px) {
      height: 119px;
    }
  }
  .lg\:h-\[392px\] {
    @media (width >= 1080px) {
      height: 392px;
    }
  }
  .lg\:h-\[405px\] {
    @media (width >= 1080px) {
      height: 405px;
    }
  }
  .lg\:h-\[410px\] {
    @media (width >= 1080px) {
      height: 410px;
    }
  }
  .lg\:h-\[432px\] {
    @media (width >= 1080px) {
      height: 432px;
    }
  }
  .lg\:h-full {
    @media (width >= 1080px) {
      height: 100%;
    }
  }
  .lg\:max-h-\[405px\] {
    @media (width >= 1080px) {
      max-height: 405px;
    }
  }
  .lg\:max-h-\[808px\] {
    @media (width >= 1080px) {
      max-height: 808px;
    }
  }
  .lg\:min-h-0 {
    @media (width >= 1080px) {
      min-height: 0;
    }
  }
  .lg\:min-h-\[480px\] {
    @media (width >= 1080px) {
      min-height: 480px;
    }
  }
  .lg\:min-h-\[624px\] {
    @media (width >= 1080px) {
      min-height: 624px;
    }
  }
  .lg\:w-\[70px\] {
    @media (width >= 1080px) {
      width: 70px;
    }
  }
  .lg\:w-\[231px\] {
    @media (width >= 1080px) {
      width: 231px;
    }
  }
  .lg\:w-\[350px\] {
    @media (width >= 1080px) {
      width: 350px;
    }
  }
  .lg\:max-w-\[55\%\] {
    @media (width >= 1080px) {
      max-width: 55%;
    }
  }
  .lg\:max-w-none {
    @media (width >= 1080px) {
      max-width: none;
    }
  }
  .lg\:flex-1 {
    @media (width >= 1080px) {
      flex: 1;
    }
  }
  .lg\:shrink-0 {
    @media (width >= 1080px) {
      flex-shrink: 0;
    }
  }
  .lg\:-translate-x-1\/2 {
    @media (width >= 1080px) {
      --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .lg\:auto-rows-fr {
    @media (width >= 1080px) {
      grid-auto-rows: minmax(0, 1fr);
    }
  }
  .lg\:grid-cols-1 {
    @media (width >= 1080px) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 1080px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 1080px) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[7fr_3fr\] {
    @media (width >= 1080px) {
      grid-template-columns: 7fr 3fr;
    }
  }
  .lg\:grid-cols-\[minmax\(0\,7fr\)_minmax\(0\,3fr\)\] {
    @media (width >= 1080px) {
      grid-template-columns: minmax(0,7fr) minmax(0,3fr);
    }
  }
  .lg\:flex-col {
    @media (width >= 1080px) {
      flex-direction: column;
    }
  }
  .lg\:flex-row {
    @media (width >= 1080px) {
      flex-direction: row;
    }
  }
  .lg\:items-center {
    @media (width >= 1080px) {
      align-items: center;
    }
  }
  .lg\:items-end {
    @media (width >= 1080px) {
      align-items: flex-end;
    }
  }
  .lg\:items-start {
    @media (width >= 1080px) {
      align-items: flex-start;
    }
  }
  .lg\:justify-center {
    @media (width >= 1080px) {
      justify-content: center;
    }
  }
  .lg\:gap-0 {
    @media (width >= 1080px) {
      gap: 0;
    }
  }
  .lg\:gap-4 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .lg\:gap-5 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .lg\:gap-5\.75 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 5.75);
    }
  }
  .lg\:gap-6 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .lg\:gap-8 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .lg\:gap-9 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 9);
    }
  }
  .lg\:gap-10 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 10);
    }
  }
  .lg\:gap-12 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .lg\:gap-20 {
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .lg\:gap-x-\[21px\] {
    @media (width >= 1080px) {
      column-gap: 21px;
    }
  }
  .lg\:gap-y-6 {
    @media (width >= 1080px) {
      row-gap: calc(var(--spacing) * 6);
    }
  }
  .lg\:overflow-y-auto {
    @media (width >= 1080px) {
      overflow-y: auto;
    }
  }
  .lg\:rounded-2xl {
    @media (width >= 1080px) {
      border-radius: var(--radius-2xl);
    }
  }
  .lg\:rounded-3xl {
    @media (width >= 1080px) {
      border-radius: var(--radius-3xl);
    }
  }
  .lg\:rounded-full {
    @media (width >= 1080px) {
      border-radius: calc(infinity * 1px);
    }
  }
  .lg\:rounded-lg {
    @media (width >= 1080px) {
      border-radius: var(--radius-lg);
    }
  }
  .lg\:rounded-md {
    @media (width >= 1080px) {
      border-radius: var(--radius-md);
    }
  }
  .lg\:bg-white {
    @media (width >= 1080px) {
      background-color: var(--color-white);
    }
  }
  .lg\:p-6 {
    @media (width >= 1080px) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .lg\:p-8 {
    @media (width >= 1080px) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .lg\:p-25 {
    @media (width >= 1080px) {
      padding: calc(var(--spacing) * 25);
    }
  }
  .lg\:px-0 {
    @media (width >= 1080px) {
      padding-inline: 0;
    }
  }
  .lg\:px-6 {
    @media (width >= 1080px) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .lg\:px-8 {
    @media (width >= 1080px) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .lg\:px-10 {
    @media (width >= 1080px) {
      padding-inline: calc(var(--spacing) * 10);
    }
  }
  .lg\:py-0 {
    @media (width >= 1080px) {
      padding-block: 0;
    }
  }
  .lg\:py-4 {
    @media (width >= 1080px) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .lg\:py-5 {
    @media (width >= 1080px) {
      padding-block: calc(var(--spacing) * 5);
    }
  }
  .lg\:py-6 {
    @media (width >= 1080px) {
      padding-block: calc(var(--spacing) * 6);
    }
  }
  .lg\:py-16 {
    @media (width >= 1080px) {
      padding-block: calc(var(--spacing) * 16);
    }
  }
  .lg\:py-24 {
    @media (width >= 1080px) {
      padding-block: calc(var(--spacing) * 24);
    }
  }
  .lg\:py-30 {
    @media (width >= 1080px) {
      padding-block: calc(var(--spacing) * 30);
    }
  }
  .lg\:py-\[120px\] {
    @media (width >= 1080px) {
      padding-block: 120px;
    }
  }
  .lg\:pt-0 {
    @media (width >= 1080px) {
      padding-top: 0;
    }
  }
  .lg\:pt-10 {
    @media (width >= 1080px) {
      padding-top: calc(var(--spacing) * 10);
    }
  }
  .lg\:pt-12 {
    @media (width >= 1080px) {
      padding-top: calc(var(--spacing) * 12);
    }
  }
  .lg\:pt-30 {
    @media (width >= 1080px) {
      padding-top: calc(var(--spacing) * 30);
    }
  }
  .lg\:pt-92\.5 {
    @media (width >= 1080px) {
      padding-top: calc(var(--spacing) * 92.5);
    }
  }
  .lg\:pt-\[88px\] {
    @media (width >= 1080px) {
      padding-top: 88px;
    }
  }
  .lg\:pr-20 {
    @media (width >= 1080px) {
      padding-right: calc(var(--spacing) * 20);
    }
  }
  .lg\:pr-32 {
    @media (width >= 1080px) {
      padding-right: calc(var(--spacing) * 32);
    }
  }
  .lg\:pr-40 {
    @media (width >= 1080px) {
      padding-right: calc(var(--spacing) * 40);
    }
  }
  .lg\:pb-0 {
    @media (width >= 1080px) {
      padding-bottom: 0;
    }
  }
  .lg\:pb-10 {
    @media (width >= 1080px) {
      padding-bottom: calc(var(--spacing) * 10);
    }
  }
  .lg\:pb-16 {
    @media (width >= 1080px) {
      padding-bottom: calc(var(--spacing) * 16);
    }
  }
  .lg\:pb-20 {
    @media (width >= 1080px) {
      padding-bottom: calc(var(--spacing) * 20);
    }
  }
  .lg\:pb-24 {
    @media (width >= 1080px) {
      padding-bottom: calc(var(--spacing) * 24);
    }
  }
  .lg\:pb-30 {
    @media (width >= 1080px) {
      padding-bottom: calc(var(--spacing) * 30);
    }
  }
  .lg\:pb-75 {
    @media (width >= 1080px) {
      padding-bottom: calc(var(--spacing) * 75);
    }
  }
  .lg\:pb-\[120px\] {
    @media (width >= 1080px) {
      padding-bottom: 120px;
    }
  }
  .lg\:pl-40 {
    @media (width >= 1080px) {
      padding-left: calc(var(--spacing) * 40);
    }
  }
  .lg\:text-left {
    @media (width >= 1080px) {
      text-align: left;
    }
  }
  .lg\:text-2xl {
    @media (width >= 1080px) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .lg\:text-base {
    @media (width >= 1080px) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .lg\:text-lg {
    @media (width >= 1080px) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .lg\:text-xl {
    @media (width >= 1080px) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .lg\:text-\[28px\] {
    @media (width >= 1080px) {
      font-size: 28px;
    }
  }
  .lg\:text-\[32px\] {
    @media (width >= 1080px) {
      font-size: 32px;
    }
  }
  .lg\:text-\[40px\] {
    @media (width >= 1080px) {
      font-size: 40px;
    }
  }
  .lg\:text-\[64px\] {
    @media (width >= 1080px) {
      font-size: 64px;
    }
  }
  .lg\:whitespace-nowrap {
    @media (width >= 1080px) {
      white-space: nowrap;
    }
  }
  .lg\:whitespace-pre-line {
    @media (width >= 1080px) {
      white-space: pre-line;
    }
  }
  .lg\:\[-webkit-overflow-scrolling\:touch\] {
    @media (width >= 1080px) {
      -webkit-overflow-scrolling: touch;
    }
  }
  .xl\:pointer-events-none {
    @media (width >= 1440px) {
      pointer-events: none;
    }
  }
  .xl\:absolute {
    @media (width >= 1440px) {
      position: absolute;
    }
  }
  .xl\:inset-0 {
    @media (width >= 1440px) {
      inset: 0;
    }
  }
  .xl\:top-0 {
    @media (width >= 1440px) {
      top: 0;
    }
  }
  .xl\:top-16 {
    @media (width >= 1440px) {
      top: calc(var(--spacing) * 16);
    }
  }
  .xl\:left-0 {
    @media (width >= 1440px) {
      left: 0;
    }
  }
  .xl\:row-span-2 {
    @media (width >= 1440px) {
      grid-row: span 2 / span 2;
    }
  }
  .xl\:mx-0 {
    @media (width >= 1440px) {
      margin-inline: 0;
    }
  }
  .xl\:mt-3 {
    @media (width >= 1440px) {
      margin-top: calc(var(--spacing) * 3);
    }
  }
  .xl\:mt-10 {
    @media (width >= 1440px) {
      margin-top: calc(var(--spacing) * 10);
    }
  }
  .xl\:mt-12 {
    @media (width >= 1440px) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .xl\:mt-16 {
    @media (width >= 1440px) {
      margin-top: calc(var(--spacing) * 16);
    }
  }
  .xl\:mt-20 {
    @media (width >= 1440px) {
      margin-top: calc(var(--spacing) * 20);
    }
  }
  .xl\:mt-\[18px\] {
    @media (width >= 1440px) {
      margin-top: 18px;
    }
  }
  .xl\:mt-\[22px\] {
    @media (width >= 1440px) {
      margin-top: 22px;
    }
  }
  .xl\:mb-0 {
    @media (width >= 1440px) {
      margin-bottom: 0;
    }
  }
  .xl\:block {
    @media (width >= 1440px) {
      display: block;
    }
  }
  .xl\:flex {
    @media (width >= 1440px) {
      display: flex;
    }
  }
  .xl\:grid {
    @media (width >= 1440px) {
      display: grid;
    }
  }
  .xl\:hidden {
    @media (width >= 1440px) {
      display: none;
    }
  }
  .xl\:size-6 {
    @media (width >= 1440px) {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  .xl\:size-8 {
    @media (width >= 1440px) {
      width: calc(var(--spacing) * 8);
      height: calc(var(--spacing) * 8);
    }
  }
  .xl\:h-8 {
    @media (width >= 1440px) {
      height: calc(var(--spacing) * 8);
    }
  }
  .xl\:min-h-\[550px\] {
    @media (width >= 1440px) {
      min-height: 550px;
    }
  }
  .xl\:w-\[580px\] {
    @media (width >= 1440px) {
      width: 580px;
    }
  }
  .xl\:w-\[620px\] {
    @media (width >= 1440px) {
      width: 620px;
    }
  }
  .xl\:w-\[662px\] {
    @media (width >= 1440px) {
      width: 662px;
    }
  }
  .xl\:grid-cols-3 {
    @media (width >= 1440px) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-4 {
    @media (width >= 1440px) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-\[58fr_42fr\] {
    @media (width >= 1440px) {
      grid-template-columns: 58fr 42fr;
    }
  }
  .xl\:grid-cols-\[auto_720px\] {
    @media (width >= 1440px) {
      grid-template-columns: auto 720px;
    }
  }
  .xl\:grid-cols-\[minmax\(0\,1fr\)_662px\] {
    @media (width >= 1440px) {
      grid-template-columns: minmax(0,1fr) 662px;
    }
  }
  .xl\:flex-row {
    @media (width >= 1440px) {
      flex-direction: row;
    }
  }
  .xl\:items-center {
    @media (width >= 1440px) {
      align-items: center;
    }
  }
  .xl\:items-start {
    @media (width >= 1440px) {
      align-items: flex-start;
    }
  }
  .xl\:items-stretch {
    @media (width >= 1440px) {
      align-items: stretch;
    }
  }
  .xl\:justify-center {
    @media (width >= 1440px) {
      justify-content: center;
    }
  }
  .xl\:gap-1 {
    @media (width >= 1440px) {
      gap: var(--spacing);
    }
  }
  .xl\:gap-2 {
    @media (width >= 1440px) {
      gap: calc(var(--spacing) * 2);
    }
  }
  .xl\:gap-6 {
    @media (width >= 1440px) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .xl\:gap-8 {
    @media (width >= 1440px) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .xl\:gap-16 {
    @media (width >= 1440px) {
      gap: calc(var(--spacing) * 16);
    }
  }
  .xl\:gap-20 {
    @media (width >= 1440px) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .xl\:gap-25 {
    @media (width >= 1440px) {
      gap: calc(var(--spacing) * 25);
    }
  }
  .xl\:gap-x-24 {
    @media (width >= 1440px) {
      column-gap: calc(var(--spacing) * 24);
    }
  }
  .xl\:self-stretch {
    @media (width >= 1440px) {
      align-self: stretch;
    }
  }
  .xl\:px-0 {
    @media (width >= 1440px) {
      padding-inline: 0;
    }
  }
  .xl\:pt-20 {
    @media (width >= 1440px) {
      padding-top: calc(var(--spacing) * 20);
    }
  }
  .xl\:pt-\[51px\] {
    @media (width >= 1440px) {
      padding-top: 51px;
    }
  }
  .xl\:text-base {
    @media (width >= 1440px) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .xl\:text-lg {
    @media (width >= 1440px) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .xl\:text-\[28px\] {
    @media (width >= 1440px) {
      font-size: 28px;
    }
  }
  .xl\:text-\[32px\] {
    @media (width >= 1440px) {
      font-size: 32px;
    }
  }
  .xl\:text-\[40px\] {
    @media (width >= 1440px) {
      font-size: 40px;
    }
  }
  .xl\:break-normal {
    @media (width >= 1440px) {
      overflow-wrap: normal;
      word-break: normal;
    }
  }
  .xl\:whitespace-pre-line {
    @media (width >= 1440px) {
      white-space: pre-line;
    }
  }
  .\32 xl\:top-1\/2 {
    @media (width >= 1820px) {
      top: calc(1 / 2 * 100%);
    }
  }
  .\32 xl\:right-12 {
    @media (width >= 1820px) {
      right: calc(var(--spacing) * 12);
    }
  }
  .\32 xl\:bottom-auto {
    @media (width >= 1820px) {
      bottom: auto;
    }
  }
  .\32 xl\:left-auto {
    @media (width >= 1820px) {
      left: auto;
    }
  }
  .\32 xl\:mt-8 {
    @media (width >= 1820px) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .\32 xl\:mt-10 {
    @media (width >= 1820px) {
      margin-top: calc(var(--spacing) * 10);
    }
  }
  .\32 xl\:mt-12 {
    @media (width >= 1820px) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .\32 xl\:mt-16 {
    @media (width >= 1820px) {
      margin-top: calc(var(--spacing) * 16);
    }
  }
  .\32 xl\:mt-20 {
    @media (width >= 1820px) {
      margin-top: calc(var(--spacing) * 20);
    }
  }
  .\32 xl\:mt-\[42px\] {
    @media (width >= 1820px) {
      margin-top: 42px;
    }
  }
  .\32 xl\:mb-30 {
    @media (width >= 1820px) {
      margin-bottom: calc(var(--spacing) * 30);
    }
  }
  .\32 xl\:block {
    @media (width >= 1820px) {
      display: block;
    }
  }
  .\32 xl\:flex {
    @media (width >= 1820px) {
      display: flex;
    }
  }
  .\32 xl\:hidden {
    @media (width >= 1820px) {
      display: none;
    }
  }
  .\32 xl\:size-6 {
    @media (width >= 1820px) {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  .\32 xl\:h-22\.5 {
    @media (width >= 1820px) {
      height: calc(var(--spacing) * 22.5);
    }
  }
  .\32 xl\:h-\[calc\(100vh-90px\)\] {
    @media (width >= 1820px) {
      height: calc(100vh - 90px);
    }
  }
  .\32 xl\:h-auto {
    @media (width >= 1820px) {
      height: auto;
    }
  }
  .\32 xl\:w-55 {
    @media (width >= 1820px) {
      width: calc(var(--spacing) * 55);
    }
  }
  .\32 xl\:w-auto {
    @media (width >= 1820px) {
      width: auto;
    }
  }
  .\32 xl\:-translate-y-1\/2 {
    @media (width >= 1820px) {
      --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .\32 xl\:grid-cols-1 {
    @media (width >= 1820px) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .\32 xl\:grid-cols-2 {
    @media (width >= 1820px) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .\32 xl\:items-center {
    @media (width >= 1820px) {
      align-items: center;
    }
  }
  .\32 xl\:justify-center {
    @media (width >= 1820px) {
      justify-content: center;
    }
  }
  .\32 xl\:gap-6 {
    @media (width >= 1820px) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .\32 xl\:gap-8 {
    @media (width >= 1820px) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .\32 xl\:gap-14 {
    @media (width >= 1820px) {
      gap: calc(var(--spacing) * 14);
    }
  }
  .\32 xl\:gap-\[70px\] {
    @media (width >= 1820px) {
      gap: 70px;
    }
  }
  .\32 xl\:gap-x-10 {
    @media (width >= 1820px) {
      column-gap: calc(var(--spacing) * 10);
    }
  }
  .\32 xl\:rounded-full {
    @media (width >= 1820px) {
      border-radius: calc(infinity * 1px);
    }
  }
  .\32 xl\:bg-primary-300 {
    @media (width >= 1820px) {
      background-color: var(--color-primary-300);
    }
  }
  .\32 xl\:p-6 {
    @media (width >= 1820px) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .\32 xl\:p-8 {
    @media (width >= 1820px) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .\32 xl\:px-0 {
    @media (width >= 1820px) {
      padding-inline: 0;
    }
  }
  .\32 xl\:px-16 {
    @media (width >= 1820px) {
      padding-inline: calc(var(--spacing) * 16);
    }
  }
  .\32 xl\:py-8 {
    @media (width >= 1820px) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .\32 xl\:py-20 {
    @media (width >= 1820px) {
      padding-block: calc(var(--spacing) * 20);
    }
  }
  .\32 xl\:py-24 {
    @media (width >= 1820px) {
      padding-block: calc(var(--spacing) * 24);
    }
  }
  .\32 xl\:py-28 {
    @media (width >= 1820px) {
      padding-block: calc(var(--spacing) * 28);
    }
  }
  .\32 xl\:py-\[120px\] {
    @media (width >= 1820px) {
      padding-block: 120px;
    }
  }
  .\32 xl\:pt-20 {
    @media (width >= 1820px) {
      padding-top: calc(var(--spacing) * 20);
    }
  }
  .\32 xl\:pt-24 {
    @media (width >= 1820px) {
      padding-top: calc(var(--spacing) * 24);
    }
  }
  .\32 xl\:pb-16 {
    @media (width >= 1820px) {
      padding-bottom: calc(var(--spacing) * 16);
    }
  }
  .\32 xl\:pb-24 {
    @media (width >= 1820px) {
      padding-bottom: calc(var(--spacing) * 24);
    }
  }
  .\32 xl\:pb-30 {
    @media (width >= 1820px) {
      padding-bottom: calc(var(--spacing) * 30);
    }
  }
  .\32 xl\:text-2xl {
    @media (width >= 1820px) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .\32 xl\:text-base {
    @media (width >= 1820px) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .\32 xl\:text-xl {
    @media (width >= 1820px) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .\32 xl\:text-\[28px\] {
    @media (width >= 1820px) {
      font-size: 28px;
    }
  }
  .\32 xl\:text-\[32px\] {
    @media (width >= 1820px) {
      font-size: 32px;
    }
  }
  .\32 xl\:text-\[40px\] {
    @media (width >= 1820px) {
      font-size: 40px;
    }
  }
  .\32 xl\:text-\[64px\] {
    @media (width >= 1820px) {
      font-size: 64px;
    }
  }
}
html, body {
  color: var(--color-black);
}
#wrap {
  overflow-x: clip;
}
#header {
  height: 0;
}
.top-scroll-btn-mobile {
  position: fixed !important;
  top: auto !important;
  right: 1rem !important;
  bottom: 6rem !important;
  left: auto !important;
  z-index: 1100 !important;
  display: inline-flex !important;
  box-sizing: border-box !important;
  width: 3rem !important;
  height: 3rem !important;
  min-width: 3rem !important;
  max-width: 3rem !important;
  min-height: 3rem !important;
  max-height: 3rem !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 9999px !important;
  align-items: center;
  justify-content: center;
  background-color: #fff !important;
  color: #0050aa !important;
  box-shadow: 0 0 10px rgba(0, 80, 170, 0.2);
  -webkit-appearance: none;
  appearance: none;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.top-scroll-btn-mobile.is-visible {
  pointer-events: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.top-scroll-btn-mobile svg {
  width: 1.5rem !important;
  height: 1.5rem !important;
  flex-shrink: 0;
}
@media (width >= 1820px) {
  .top-scroll-btn-mobile {
    display: none !important;
  }
}
img, .drag-none {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-select: none;
}
@layer utilities {
  .header-nav-sub, .lang-dropdown {
    display: none;
    &.active {
      display: flex;
    }
  }
  @media (width >= 1820px) {
    #header-nav {
      --header-nav-duration: 0.35s;
      --header-nav-ease: cubic-bezier(0.4, 0, 0.2, 1);
    }
    #header-nav .header-nav-sub-panel {
      display: grid;
      grid-template-rows: 0fr;
      grid-template-columns: 0fr;
      overflow: hidden;
      transition: none;
    }
    #header-nav.is-open:not(.is-closing) .header-nav-sub-panel {
      grid-template-rows: 1fr;
      grid-template-columns: 1fr;
      transition: grid-template-rows var(--header-nav-duration) var(--header-nav-ease), grid-template-columns var(--header-nav-duration) var(--header-nav-ease);
    }
    #header-nav.is-closing .header-nav-sub-panel {
      grid-template-rows: 0fr;
      grid-template-columns: 0fr;
      transition: grid-template-rows var(--header-nav-duration) var(--header-nav-ease), grid-template-columns var(--header-nav-duration) var(--header-nav-ease);
    }
    #header-nav .header-nav-sub-panel__inner {
      overflow: hidden;
      min-height: 0;
      min-width: 0;
      opacity: 0;
      transition: none;
    }
    #header-nav.is-open:not(.is-closing) .header-nav-sub-panel__inner {
      opacity: 1;
      transition: opacity var(--header-nav-duration) var(--header-nav-ease);
    }
    #header-nav.is-closing .header-nav-sub-panel__inner {
      opacity: 0;
      transition: opacity var(--header-nav-duration) var(--header-nav-ease);
    }
    #header-nav .header-nav-sub-panel .header-nav-sub {
      display: flex;
    }
    #header-line {
      opacity: 0;
      transition: opacity var(--header-nav-duration) var(--header-nav-ease);
    }
    #header-line.is-visible {
      opacity: 1;
    }
    #header-dropdown-bg {
      height: 0;
      opacity: 0;
      transition: none;
    }
    #header-dropdown-bg.is-visible {
      height: 17.5rem;
      opacity: 1;
      transition: height var(--header-nav-duration) var(--header-nav-ease), opacity var(--header-nav-duration) var(--header-nav-ease);
    }
    #header-dropdown-bg.is-visible.is-closing {
      height: 0;
      opacity: 0;
      transition: height var(--header-nav-duration) var(--header-nav-ease), opacity var(--header-nav-duration) var(--header-nav-ease);
    }
    @media (prefers-reduced-motion: reduce) {
      #header-nav {
        --header-nav-duration: 0.01ms;
      }
    }
  }
  #booking-privacy-modal.booking-privacy-modal {
    padding-top: max(1rem, env(safe-area-inset-top, 0px));
    padding-right: max(1.25rem, env(safe-area-inset-right, 0px));
    padding-bottom: max(1rem, env(safe-area-inset-bottom, 0px));
    padding-left: max(1.25rem, env(safe-area-inset-left, 0px));
    box-sizing: border-box;
  }
  #booking-privacy-modal .booking-privacy-modal-panel {
    box-sizing: border-box;
    width: 100%;
    max-width: min(42.5rem, 100%);
    min-width: 0;
    min-height: 0;
    max-height: 80vh;
    max-height: 80dvh;
    max-height: 80svh;
    margin-inline: auto;
    overflow: hidden;
  }
  #booking-privacy-modal .booking-privacy-modal-header, #booking-privacy-modal .booking-privacy-modal-body {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  @media (width >= 768px) {
    #booking-privacy-modal .booking-privacy-modal-header, #booking-privacy-modal .booking-privacy-modal-body {
      padding-left: 2rem !important;
      padding-right: 2rem !important;
    }
  }
  #booking-privacy-modal .booking-privacy-modal-body {
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    overflow-wrap: anywhere;
    word-break: break-word;
  }
  html.mobile-nav-open {
    overflow: hidden;
  }
  html.mobile-nav-open body {
    overflow: hidden;
  }
  #mobile-nav .mobile-nav-list {
    -webkit-overflow-scrolling: touch;
  }
  #main {
    margin-top: calc(var(--spacing) * 14);
    @media (width >= 1820px) {
      margin-top: calc(var(--spacing) * 22.5);
    }
  }
  .main-banner-progress-bar {
    transform: scaleX(0);
    will-change: transform;
  }
  .scrollbar-hidden {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .scrollbar-hidden::-webkit-scrollbar {
    display: none;
  }
  .whitespace-pre-line {
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: break-word;
    @media (width >= 1080px) {
      white-space: pre-line;
    }
  }
  .i18n-pre-line-lg {
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: break-word;
    @media (width >= 1080px) {
      white-space: pre-line;
    }
  }
  .i18n-pre-line-desc {
    word-break: keep-all;
    overflow-wrap: break-word;
    @media (width >= 1080px) {
      max-width: 1171px;
    }
  }
  .image-hotspot-wrap {
    --hotspot-dot: 6px;
    --hotspot-pulse: 12px;
    --hotspot-ring: 16px;
    --hotspot-pulse-end: 1.85;
    position: relative;
  }
  @media (width >= 1080px) {
    .image-hotspot-wrap {
      --hotspot-dot: 0.75rem;
      --hotspot-pulse: 1.5rem;
      --hotspot-ring: 2rem;
      --hotspot-pulse-end: 2.1;
    }
    .image-hotspot-marker::after {
      border-width: 2px;
    }
    .image-hotspot-marker-ring {
      border-color: rgb(51 119 255 / 0.45);
    }
  }
  .image-hotspot-marker {
    --hotspot-x: 50%;
    --hotspot-y: 50%;
    --hotspot-color: var(--color-primary-800);
    --hotspot-ring-color: var(--color-primary-500);
    position: absolute;
    left: var(--hotspot-x);
    top: var(--hotspot-y);
    z-index: 1;
    width: var(--hotspot-dot);
    height: var(--hotspot-dot);
    transform: translate(-50%, -50%);
    pointer-events: none;
  }
  .image-hotspot-marker::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 9999px;
    background: var(--hotspot-color);
    animation: image-hotspot-twinkle 2s ease-in-out infinite;
  }
  .image-hotspot-marker::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: var(--hotspot-pulse);
    height: var(--hotspot-pulse);
    margin-left: calc(var(--hotspot-pulse) / -2);
    margin-top: calc(var(--hotspot-pulse) / -2);
    border-radius: 9999px;
    border: 2px solid var(--hotspot-ring-color);
    animation: image-hotspot-pulse 2s ease-out infinite;
  }
  .image-hotspot-marker-ring {
    position: absolute;
    left: var(--hotspot-x);
    top: var(--hotspot-y);
    z-index: 1;
    width: var(--hotspot-ring);
    height: var(--hotspot-ring);
    transform: translate(-50%, -50%);
    border-radius: 9999px;
    border: 1.5px solid rgb(51 119 255 / 0.5);
    pointer-events: none;
    animation: image-hotspot-pulse-ring 2s ease-out 1s infinite;
  }
  .image-hotspot-marker-ring--offset {
    animation-delay: 1.5s;
  }
  .image-hotspot-marker--offset::before {
    animation-delay: 0.35s;
  }
  @keyframes image-hotspot-pulse-ring {
    0% {
      transform: translate(-50%, -50%) scale(0.45);
      opacity: 0.95;
    }
    100% {
      transform: translate(-50%, -50%) scale(var(--hotspot-pulse-end, 1.85));
      opacity: 0;
    }
  }
  @keyframes image-hotspot-pulse {
    0% {
      transform: scale(0.45);
      opacity: 0.95;
    }
    100% {
      transform: scale(var(--hotspot-pulse-end, 1.85));
      opacity: 0;
    }
  }
  @keyframes image-hotspot-twinkle {
    0%, 100% {
      opacity: 1;
      transform: scale(1);
    }
    50% {
      opacity: 0.65;
      transform: scale(0.88);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .image-hotspot-marker::before, .image-hotspot-marker::after, .image-hotspot-marker-ring {
      animation: none;
    }
    .image-hotspot-marker::after {
      opacity: 0.55;
    }
  }
  nav[aria-label="breadcrumb"] {
    max-width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    overflow-x: auto;
    padding-bottom: calc(var(--spacing) * 0.5);
    @media (width >= 640px) {
      gap: calc(var(--spacing) * 3);
    }
    -ms-overflow-style: none;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  nav[aria-label="breadcrumb"]::-webkit-scrollbar {
    display: none;
  }
  nav[aria-label="breadcrumb"] img {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    flex-shrink: 0;
    @media (width >= 640px) {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  nav[aria-label="breadcrumb"] .breadcrumb-text {
    flex-shrink: 0;
    white-space: nowrap;
  }
  @media (width >= 1080px) {
    nav[aria-label="breadcrumb"] {
      flex-wrap: wrap;
      gap: calc(var(--spacing) * 4);
      overflow: visible;
      padding-bottom: 0;
    }
  }
  .breadcrumb-text {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    @media (width >= 640px) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
    @media (width >= 1080px) {
      font-size: 18px;
    }
  }
  .breadcrumb-divider {
    width: 3px;
    height: 3px;
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    background-color: color-mix(in srgb, #202020 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
    @media (width >= 640px) {
      width: 5px;
      height: 5px;
    }
  }
  .doctor-profile-list {
    list-style-type: none;
    padding: 0;
  }
  .doctor-profile-list li {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: 1.4;
    line-height: 1.4;
    @media (width >= 1080px) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .doctor-profile-list li::before {
    content: "·";
    flex-shrink: 0;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: 1.4;
    line-height: 1.4;
    color: var(--color-black);
    @media (width >= 1080px) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .doctor-profile-list li + li {
    margin-top: calc(var(--spacing) * 4);
  }
  .list-custom li::marker {
    content: "※ ";
  }
  .marquee-style {
    width: 100%;
    overflow: hidden;
    font-size: 24px;
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
    color: #16307b;
    text-transform: uppercase;
    opacity: 10%;
    @media (width >= 820px) {
      font-size: 48px;
    }
    .animate-marquee {
      animation: marquee linear infinite;
      will-change: transform;
      display: inline-flex;
      gap: calc(var(--spacing) * 12);
    }
  }
  @keyframes marquee {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-50%);
    }
  }
  .care-prev, .care-next {
    &.swiper-button-disabled {
      pointer-events: none;
      opacity: 20%;
    }
  }
  .facility-accordion {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
    @media (width >= 1080px) {
      height: calc(var(--spacing) * 135);
    }
    @media (width >= 1080px) {
      flex-direction: row;
    }
    @media (width >= 1080px) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .facility-panel {
    position: relative;
    height: calc(var(--spacing) * 20);
    cursor: pointer;
    overflow: hidden;
    border-radius: var(--radius-2xl);
    color: var(--color-white);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 800ms;
    transition-duration: 800ms;
    @media (width >= 1080px) {
      height: 100%;
    }
    @media (width >= 1080px) {
      min-width: 0;
    }
    @media (width >= 1080px) {
      flex: 0.55;
    }
    &.is-active {
      height: calc(var(--spacing) * 100);
      @media (width >= 1080px) {
        height: 100%;
      }
      @media (width >= 1080px) {
        flex: 3.2;
      }
    }
    .facility-panel__dim {
      position: absolute;
      inset: 0;
      background-color: color-mix(in srgb, #202020 55%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-black) 55%, transparent);
      }
      transition-property: all;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 800ms;
      transition-duration: 800ms;
    }
    &.is-active .facility-panel__dim {
      background-color: color-mix(in srgb, #202020 25%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-black) 25%, transparent);
      }
    }
    .facility-panel__content {
      position: relative;
      z-index: 10;
      display: flex;
      height: 100%;
      flex-direction: column;
      justify-content: space-between;
      padding: calc(var(--spacing) * 4);
      transition-property: all;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 800ms;
      transition-duration: 800ms;
      @media (width >= 1080px) {
        padding: calc(var(--spacing) * 6);
      }
    }
    &.is-active .facility-panel__content {
      padding: calc(var(--spacing) * 6);
      @media (width >= 1080px) {
        padding: calc(var(--spacing) * 10);
      }
    }
    .facility-panel__body {
      pointer-events: none;
      max-height: 0;
      --tw-translate-y: calc(var(--spacing) * 2);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      overflow: hidden;
      opacity: 0%;
      transition-property: all;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 800ms;
      transition-duration: 800ms;
    }
    &.is-active .facility-panel__body {
      max-height: calc(var(--spacing) * 80);
      --tw-translate-y: 0;
      translate: var(--tw-translate-x) var(--tw-translate-y);
      opacity: 100%;
      --tw-duration: 800ms;
      transition-duration: 800ms;
    }
    .facility-panel__plus {
      position: absolute;
      right: calc(var(--spacing) * 6);
      bottom: calc(var(--spacing) * 6);
      display: none;
      width: calc(var(--spacing) * 10);
      height: calc(var(--spacing) * 10);
      align-items: center;
      justify-content: center;
      border-radius: calc(infinity * 1px);
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: color-mix(in srgb, #fff 80%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-white) 80%, transparent);
      }
      color: var(--color-white);
      transition-property: all;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 800ms;
      transition-duration: 800ms;
      @media (width >= 1080px) {
        display: flex;
      }
    }
    &.is-active .facility-panel__plus {
      pointer-events: none;
      --tw-scale-x: 75%;
      --tw-scale-y: 75%;
      --tw-scale-z: 75%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
      opacity: 0%;
    }
  }
  .facility-progress {
    margin-top: calc(var(--spacing) * 5);
    display: none;
    height: 1px;
    width: 100%;
    max-width: calc(var(--spacing) * 82.5);
    overflow: hidden;
    background-color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
    @media (width >= 1080px) {
      display: block;
    }
  }
  .facility-progress-bar {
    height: 100%;
    width: 100%;
    transform-origin: 0;
    background-color: var(--color-white);
    transform: scaleX(0);
  }
  .facility-progress-bar.is-running {
    animation: facility-progress 4.8s linear forwards;
  }
  @keyframes facility-progress {
    from {
      transform: scaleX(0);
    }
    to {
      transform: scaleX(1);
    }
  }
  .diagnosis-more {
    position: relative;
    display: inline-flex;
    width: fit-content;
    align-items: center;
    .diagnosis-more__bg {
      pointer-events: none;
      position: absolute;
      top: calc(1 / 2 * 100%);
      left: 0;
      height: calc(var(--spacing) * 10);
      width: calc(var(--spacing) * 10);
      --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      border-radius: calc(infinity * 1px);
      transition: width 0.4s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .diagnosis-more__bg--lg {
      width: calc(var(--spacing) * 12);
      height: calc(var(--spacing) * 12);
    }
    .diagnosis-more__icon {
      position: relative;
      z-index: 10;
      display: flex;
      width: calc(var(--spacing) * 12);
      height: calc(var(--spacing) * 12);
      flex-shrink: 0;
      align-items: center;
      justify-content: center;
    }
    .diagnosis-more__chevron {
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 300ms;
      transition-duration: 300ms;
    }
    .diagnosis-more__arrow {
      position: absolute;
      --tw-scale-x: 75%;
      --tw-scale-y: 75%;
      --tw-scale-z: 75%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
      opacity: 0%;
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 300ms;
      transition-duration: 300ms;
    }
    .diagnosis-more__label {
      position: relative;
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: center;
      padding-inline: calc(var(--spacing) * 4);
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      --tw-leading: 1;
      line-height: 1;
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
      --tw-duration: 300ms;
      transition-duration: 300ms;
    }
    &.is-hot, &:focus-visible {
      .diagnosis-more__bg {
        width: 100%;
      }
      .diagnosis-more__chevron {
        --tw-scale-x: 75%;
        --tw-scale-y: 75%;
        --tw-scale-z: 75%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
        opacity: 0%;
      }
      .diagnosis-more__arrow {
        --tw-scale-x: 100%;
        --tw-scale-y: 100%;
        --tw-scale-z: 100%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
        opacity: 100%;
      }
    }
    &.diagnosis-more--white {
      .diagnosis-more__bg {
        background-color: var(--color-white);
      }
      .diagnosis-more__chevron, .diagnosis-more__arrow {
        color: var(--color-primary-800);
      }
      .diagnosis-more__label {
        color: var(--color-white);
      }
      &.is-hot, &:focus-visible {
        .diagnosis-more__label {
          color: var(--color-primary-800);
        }
      }
    }
    &.diagnosis-more--primary {
      .diagnosis-more__bg {
        background-color: var(--color-primary-800);
      }
      .diagnosis-more__chevron, .diagnosis-more__arrow {
        color: var(--color-white);
      }
      .diagnosis-more__label {
        color: var(--color-primary-800);
      }
      &.is-hot, &:focus-visible {
        .diagnosis-more__label {
          color: var(--color-white);
        }
      }
    }
  }
  .tech-neck-causes-swiper .swiper-wrapper {
    align-items: stretch;
  }
  .tech-neck-causes-swiper .swiper-slide {
    height: auto !important;
    display: flex;
  }
}
.greeting-clinic-viewport {
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.welcome-hero-reveal-wrap {
  position: relative;
  display: flex;
  width: 100vw;
  justify-content: center;
  overflow: hidden;
  height: 640px;
  --hero-logo-center-y: 320px;
  --hero-logo-size: 160px;
  --hero-text-gap: 2rem;
}
.welcome-hero-reveal-wrap.is-expanded {
  height: 960px;
}
.welcome-hero-reveal {
  position: relative;
  margin-inline: auto;
  overflow: hidden;
  width: 640px;
  height: 640px;
}
.welcome-hero-reveal__frame {
  pointer-events: none;
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: 56px;
}
.welcome-hero-reveal__inner {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background-color: var(--color-primary-700);
  border-radius: 56px;
  will-change: border-radius;
}
.welcome-hero-reveal.is-expanded, .welcome-hero-reveal.is-expanded .welcome-hero-reveal__frame, .welcome-hero-reveal.is-expanded .welcome-hero-reveal__inner {
  border-radius: 0;
}
.welcome-hero-reveal__logo {
  pointer-events: none;
  z-index: 10;
  display: block;
  flex-shrink: 0;
  -webkit-user-select: none;
  user-select: none;
  position: absolute;
  left: 50%;
  top: var(--hero-logo-center-y);
  width: var(--hero-logo-size);
  transform: translate3d(-50%, -50%, 0);
  will-change: auto;
}
.welcome-hero-reveal__text {
  z-index: 10;
  padding-inline: calc(var(--spacing) * 4);
  text-align: center;
  color: var(--color-white);
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    padding-inline: calc(var(--spacing) * 10);
  }
  position: absolute;
  left: 0;
  right: 0;
  top: calc(var(--hero-logo-center-y) + var(--hero-logo-size) / 2 + var(--hero-text-gap));
  width: 100%;
  max-width: 920px;
  margin-inline: auto;
  visibility: hidden;
  opacity: 0;
  transform: none;
}
.welcome-hero-reveal-wrap.is-expanded .welcome-hero-reveal__text {
  visibility: visible;
  opacity: 1;
  transform: none;
}
.welcome-page .welcome-hero-reveal-wrap {
  display: block;
  width: 100vw;
  overflow: hidden;
  height: 100svh;
}
.welcome-page .welcome-hero-reveal {
  position: absolute;
  inset: 0;
  margin-inline: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.welcome-page .welcome-hero-reveal__frame {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: 0;
}
.welcome-page .welcome-hero-reveal__inner {
  position: absolute;
  top: 0;
  overflow: hidden;
  background-color: var(--color-primary-700);
  height: 100%;
  left: 30%;
  width: 40%;
  border-radius: 56px;
  will-change: left, width, border-radius;
}
.welcome-page .welcome-hero-reveal__content {
  pointer-events: none;
  position: absolute;
  z-index: 10;
  width: 100%;
  padding-inline: calc(var(--spacing) * 4);
  text-align: center;
  color: var(--color-white);
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    padding-inline: calc(var(--spacing) * 10);
  }
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.welcome-page .welcome-hero-reveal__logo {
  position: relative;
  margin-inline: auto;
  display: block;
  position: static;
  left: auto;
  top: auto;
  width: var(--hero-logo-size);
  transform: none;
}
.welcome-page .welcome-hero-reveal__text {
  position: relative;
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 8);
  max-width: 920px;
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 10);
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 12);
  }
  position: static;
  left: auto;
  right: auto;
  top: auto;
  width: 100%;
  transform: none;
}
.welcome-page .welcome-hero-reveal-wrap.is-expanded .welcome-hero-reveal__inner {
  left: 0;
  width: 100%;
  border-radius: 0;
}
@media (width < 640px) {
  .welcome-page .welcome-hero-reveal__inner {
    left: 20%;
    width: 60%;
    border-radius: 24px;
  }
}
.international-page .welcome-hero-reveal-wrap {
  margin-top: calc(var(--spacing) * 8);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 10);
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 12);
  }
}
.international-page .welcome-hero-reveal-wrap.is-expanded {
  margin-top: 0;
  height: auto;
  min-height: 1120px;
  overflow: visible;
}
.welcome-page .welcome-hero-reveal-wrap.is-expanded {
  overflow: visible;
}
.welcome-page .welcome-hero-reveal-wrap.is-expanded .welcome-hero-reveal__text {
  visibility: visible;
  opacity: 1;
  transform: none;
}
.international-page .welcome-hero-reveal.is-expanded, .welcome-page .welcome-hero-reveal.is-expanded {
  height: 100%;
}
.international-page .welcome-hero-reveal__text h2, .welcome-page .welcome-hero-reveal__text h2 {
  text-wrap: balance;
  white-space: normal;
}
@media (width < 640px) {
  .welcome-hero-reveal-wrap {
    --hero-logo-size: 120px;
    --hero-text-gap: 1.5rem;
  }
  .international-page .welcome-hero-reveal-wrap.is-expanded {
    min-height: 637px;
  }
  .international-page .welcome-hero-reveal-wrap.is-expanded .welcome-hero-reveal, .international-page .welcome-hero-reveal.is-expanded {
    min-height: 637px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .welcome-hero-reveal-wrap {
    height: 960px;
  }
  .welcome-hero-reveal {
    width: 100%;
    height: 960px;
  }
  .welcome-hero-reveal__frame, .welcome-hero-reveal__inner {
    border-radius: 0;
  }
  .welcome-hero-reveal__text {
    visibility: visible;
    opacity: 1;
    transform: none;
  }
  .welcome-page .welcome-hero-reveal-wrap {
    height: 100svh;
  }
  .welcome-page .welcome-hero-reveal__inner {
    left: 0;
    width: 100%;
    border-radius: 0;
  }
}
.longevity-scroll-hero {
  --hero-bottom-nav-height: 0px;
  position: relative;
  margin-top: 0;
  width: 100%;
}
@media (width < 1536px) {
  .longevity-scroll-hero {
    --hero-bottom-nav-height: calc(var(--spacing) * 18.75);
  }
  .longevity-scroll-hero__visual {
    height: 75vh;
    min-height: max(75vh, 500px);
    max-height: calc(100svh - var(--hero-bottom-nav-height) - 1.5rem);
  }
  .longevity-scroll-hero__text {
    bottom: 5.5rem;
  }
}
.longevity-scroll-hero__visual {
  position: relative;
  display: flex;
  height: auto;
  width: 100%;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  color: var(--color-white);
  min-height: 100vh;
}
.longevity-scroll-hero__text {
  pointer-events: none;
  position: absolute;
  inset-inline: 0;
  top: 0;
  z-index: 2;
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-inline: calc(var(--spacing) * 4);
  bottom: calc(5.5rem + var(--hero-bottom-nav-height));
}
.longevity-scroll-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  transform: scale(0.6);
  transform-origin: center center;
  border-radius: 24px;
  will-change: transform;
}
.longevity-scroll-hero__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.longevity-scroll-hero__overlay {
  pointer-events: none;
  position: absolute;
  inset: 0;
  opacity: 0%;
  background-color: #202020;
}
.longevity-scroll-hero__msg {
  width: 100%;
  max-width: 1220px;
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-leading: 1.5;
  line-height: 1.5;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  opacity: 0%;
  @media (width >= 1080px) {
    font-size: 48px;
  }
}
.longevity-scroll-hero__msg-line {
  display: block;
  max-width: 1220px;
  background: linear-gradient(to right, rgb(255 255 255) 50%, rgb(255 255 255 / 0.12) 50%);
  background-size: 200% 100%;
  background-position-x: 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.longevity-scroll-hero__msg-line + .longevity-scroll-hero__msg-line {
  margin-top: calc(var(--spacing) * 2);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 3);
  }
}
.longevity-scroll-hero__scroll-down {
  pointer-events: none;
  visibility: visible;
  position: absolute;
  left: calc(1 / 2 * 100%);
  z-index: 5;
  display: flex;
  height: auto;
  --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: calc(var(--spacing) * 4);
  opacity: 80%;
  bottom: 0;
  padding-bottom: calc(var(--spacing) * 16);
}
.longevity-scroll-hero__scroll-down-icon {
  --mouse-wheel-duration: 1.1s;
  width: calc(var(--spacing) * 6);
  height: calc(var(--spacing) * 6);
  flex-shrink: 0;
  color: var(--color-white);
}
.longevity-scroll-hero__mouse-wheel {
  transform-box: fill-box;
  transform-origin: center;
  animation: longevity-mouse-wheel var(--mouse-wheel-duration) ease-in-out infinite;
  will-change: transform;
}
@keyframes longevity-mouse-wheel {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(4px);
  }
}
.longevity-scroll-hero__scroll-down-label {
  text-align: center;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  color: var(--color-white);
}
.longevity-scroll-hero.is-static .longevity-scroll-hero__media {
  inset: 0;
  transform: none;
  border-radius: 0;
  will-change: auto;
}
.longevity-scroll-hero.is-static .longevity-scroll-hero__overlay {
  opacity: 0.5;
}
.longevity-scroll-hero.is-static .longevity-scroll-hero__msg {
  opacity: 1;
  transform: none;
}
.longevity-scroll-hero.is-static .longevity-scroll-hero__msg-line {
  background-position-x: 0;
  color: #fff;
  background: none;
  -webkit-background-clip: unset;
  background-clip: unset;
}
@media (width < 768px) {
  .longevity-scroll-hero__text {
    bottom: 4.5rem;
  }
  .longevity-scroll-hero__msg {
    font-size: 30px;
  }
  .longevity-scroll-hero__media {
    border-radius: 16px;
  }
  .longevity-scroll-hero__scroll-down {
    gap: calc(var(--spacing) * 3);
  }
  .longevity-scroll-hero__scroll-down-label {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
@media (width < 640px) {
  .longevity-scroll-hero__msg {
    font-size: 22px;
  }
  .longevity-scroll-hero__scroll-down-label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
@media (prefers-reduced-motion: reduce) {
  .longevity-scroll-hero__mouse-wheel {
    animation: none;
    transform: none;
  }
}
.greeting-clinic-viewport::-webkit-scrollbar {
  display: none;
}
.greeting-clinics .careSwiper .swiper-slide {
  width: auto;
  height: auto;
}
.greeting-clinic-stage {
  position: relative;
  margin-right: calc(-50vw + 50%);
}
.greeting-clinic-track {
  padding-right: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    padding-right: calc(var(--spacing) * 8);
  }
}
@media (width >= 1659px) {
  .greeting-clinic-track {
    padding-right: max(0px, calc((100vw - 1280px) / 2));
  }
}
.greeting-clinic-card-media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.greeting-clinic-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.greeting-clinic-card-overlay {
  position: absolute;
  inset: 0;
  background-color: color-mix(in oklab, #202020 50%, transparent);
}
.greeting-clinic-card-body {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  padding: calc(var(--spacing) * 6);
  color: var(--color-white);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 8);
  }
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 8);
  }
}
.greeting-clinic-card-body h3 {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 1080px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.greeting-clinic-card-body p {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  white-space: pre-line;
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.greeting-clinic-card--specialized .greeting-clinic-card-media img {
  object-position: center center;
}
.greeting-timeline-item {
  display: grid;
  grid-template-columns: 72px minmax(0,1fr);
  column-gap: calc(var(--spacing) * 4);
  row-gap: calc(var(--spacing) * 2);
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  padding-block: calc(var(--spacing) * 8);
  &:first-child {
    padding-top: 0;
  }
  &:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  &:last-child {
    padding-bottom: 0;
  }
  @media (width >= 640px) {
    grid-template-columns: 100px minmax(0,1fr);
  }
  @media (width >= 640px) {
    column-gap: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    padding-block: calc(var(--spacing) * 10);
  }
  @media (width >= 1080px) {
    grid-template-columns: 120px minmax(0,1fr);
  }
  @media (width >= 1080px) {
    column-gap: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  @media (width >= 1080px) {
    padding-block: 0;
  }
}
.greeting-timeline-year {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 640px) {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: 40px;
  }
}
.greeting-timeline-body {
  min-width: 0;
}
.greeting-timeline-image {
  margin-top: calc(var(--spacing) * 4);
  aspect-ratio: 485/240;
  width: 100%;
  border-radius: var(--radius-lg);
  object-fit: cover;
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    max-width: 485px;
  }
}
.greeting-timeline-list {
  display: flex;
  min-width: 0;
  list-style-type: none;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  padding: 0;
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 10);
  }
}
.greeting-timeline-list li {
  position: relative;
  padding-left: calc(var(--spacing) * 5);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  &::before {
    content: var(--tw-content);
    position: absolute;
  }
  &::before {
    content: var(--tw-content);
    top: 0;
  }
  &::before {
    content: var(--tw-content);
    left: 0;
  }
  &::before {
    content: var(--tw-content);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  &::before {
    content: var(--tw-content);
    --tw-leading: 1.6;
    line-height: 1.6;
  }
  &::before {
    content: var(--tw-content);
    color: var(--color-black);
  }
  &::before {
    --tw-content: '·';
    content: var(--tw-content);
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.greeting-history-grid {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: calc(var(--spacing) * 12);
}
@media (width >= 1080px) {
  .greeting-history-grid {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
  }
  .greeting-history-grid > h2 {
    width: 520px;
    flex-shrink: 0;
  }
  .greeting-history-grid > .greeting-timeline {
    width: 637px;
    max-width: 637px;
    flex-shrink: 0;
    margin-left: auto;
  }
}
.health-guide-page {
  min-width: 0;
  overflow-x: clip;
}
.health-guide-title {
  margin-top: calc(var(--spacing) * 8);
  font-size: 28px;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 10);
  }
  @media (width >= 640px) {
    font-size: 32px;
  }
  @media (width >= 1820px) {
    margin-top: calc(var(--spacing) * 12);
  }
  @media (width >= 1820px) {
    font-size: 48px;
  }
}
.health-guide-tabs {
  margin-top: calc(var(--spacing) * 10);
  display: flex;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: flex-start;
  column-gap: calc(var(--spacing) * 5);
  overflow-x: auto;
  padding-bottom: var(--spacing);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 12);
  }
  @media (width >= 640px) {
    flex-wrap: wrap;
  }
  @media (width >= 640px) {
    column-gap: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    row-gap: calc(var(--spacing) * 3);
  }
  @media (width >= 640px) {
    overflow: visible;
  }
  @media (width >= 1820px) {
    margin-top: calc(var(--spacing) * 20);
  }
  @media (width >= 1820px) {
    column-gap: calc(var(--spacing) * 8);
  }
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.health-guide-tabs::-webkit-scrollbar {
  display: none;
}
.health-guide-tab {
  flex-shrink: 0;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: color-mix(in srgb, #202020 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 1820px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.health-guide-tab.is-active {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  color: var(--color-primary-500);
}
.health-guide-tab.is-active::after {
  content: "";
  height: var(--spacing);
  width: 100%;
  background-color: var(--color-primary-500);
}
.health-guide-toolbar {
  margin-top: calc(var(--spacing) * 6);
  display: flex;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: calc(var(--spacing) * 3);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 8);
  }
  @media (width >= 640px) {
    flex-direction: row;
  }
  @media (width >= 640px) {
    align-items: center;
  }
  @media (width >= 640px) {
    justify-content: space-between;
  }
  @media (width >= 1820px) {
    margin-top: calc(var(--spacing) * 10);
  }
}
.health-guide-search {
  display: flex;
  height: calc(var(--spacing) * 11);
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 3);
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #202020 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 30%, transparent);
  }
  padding-inline: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    height: calc(var(--spacing) * 12);
  }
  @media (width >= 640px) {
    width: auto;
  }
  @media (width >= 640px) {
    min-width: 256px;
  }
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 5);
  }
}
.health-guide-card-grid {
  margin-top: calc(var(--spacing) * 4);
  display: grid;
  min-width: 0;
  gap: calc(var(--spacing) * 6);
  @media (width >= 640px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 1820px) {
    margin-top: calc(var(--spacing) * 6);
  }
  @media (width >= 1820px) {
    column-gap: calc(var(--spacing) * 8);
  }
  @media (width >= 1820px) {
    row-gap: 50px;
  }
}
.health-guide-card-grid > li {
  min-width: 0;
}
.health-guide-card-link {
  display: flex;
  max-width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 6);
  }
}
.health-guide-card-link > div:first-child {
  aspect-ratio: 406/280;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-xl);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
}
.health-guide-card-link > div:first-child img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  &:is(:where(.group):hover *) {
    @media (hover: hover) {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
}
.health-guide-card-link > div:last-child {
  max-width: 100%;
  min-width: 0;
}
.health-guide-card-title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 640px) {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 640px) {
    white-space: normal;
  }
  @media (width >= 1820px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.health-guide-card-desc {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  min-width: 0;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: color-mix(in srgb, #202020 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 70%, transparent);
  }
}
.health-guide-notice-list {
  margin-top: calc(var(--spacing) * 6);
  border-top-style: var(--tw-border-style);
  border-top-width: 2px;
  border-color: var(--color-black);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 8);
  }
  @media (width >= 1820px) {
    margin-top: calc(var(--spacing) * 10);
  }
}
.health-guide-notice-item {
  display: flex;
  min-height: calc(var(--spacing) * 14);
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 3);
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  padding-block: calc(var(--spacing) * 3);
  @media (width >= 640px) {
    min-height: 80px;
  }
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 4);
  }
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    padding-block: 0;
  }
}
.health-guide-notice-item-body {
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 6);
  }
}
.health-guide-notice-pin {
  display: flex;
  height: calc(var(--spacing) * 7);
  width: calc(var(--spacing) * 14);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #3377ff 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
  }
  padding-inline: calc(var(--spacing) * 3);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-500);
  @media (width >= 640px) {
    height: calc(var(--spacing) * 8);
  }
  @media (width >= 640px) {
    width: 65px;
  }
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 5);
  }
  @media (width >= 640px) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.health-guide-notice-num {
  display: flex;
  width: calc(var(--spacing) * 10);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: color-mix(in srgb, #202020 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
  @media (width >= 640px) {
    width: 65px;
  }
}
.health-guide-notice-title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 640px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.health-guide-notice-item time {
  flex-shrink: 0;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: color-mix(in srgb, #202020 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
  @media (width >= 640px) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.health-guide-faq-list {
  margin-top: calc(var(--spacing) * 6);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 8);
  }
  @media (width >= 1820px) {
    margin-top: calc(var(--spacing) * 10);
  }
}
.health-guide-faq-list details summary {
  display: flex;
  cursor: pointer;
  list-style-type: none;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 4);
  }
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 6);
  }
  &::-webkit-details-marker {
    display: none;
  }
}
.health-guide-faq-list details summary > span {
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 4);
  }
}
.health-guide-faq-list details summary > span > span:first-child {
  flex-shrink: 0;
  align-self: center;
}
.health-guide-faq-list details summary > span > span:last-child {
  min-width: 0;
  align-self: center;
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
}
.health-guide-faq-list details summary > i {
  width: calc(var(--spacing) * 6);
  height: calc(var(--spacing) * 6);
  flex-shrink: 0;
  align-self: center;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 180deg;
  }
}
.health-guide-faq-list details .health-guide-faq-answer {
  padding-inline: calc(var(--spacing) * 2);
  padding-bottom: calc(var(--spacing) * 4);
  padding-left: calc(var(--spacing) * 10);
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    padding-bottom: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    padding-left: 72px;
  }
}
.health-guide-faq-list details .health-guide-faq-answer p {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.6;
  line-height: 1.6;
  color: var(--color-black);
  @media (width >= 640px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  @media (width >= 640px) {
    --tw-leading: 1.4;
    line-height: 1.4;
  }
}
.process-timeline-line {
  pointer-events: none;
  position: absolute;
  z-index: 0;
  overflow: hidden;
  top: var(--process-timeline-line-top);
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  height: 1px;
}
.process-timeline-section, .process-timeline {
  position: relative;
  --process-timeline-line-top: calc(200px + 2.5rem + 0.4375rem);
}
.process-timeline-section > .grid:has(> .process-timeline-step), .process-timeline > .grid:has(> .process-timeline-step) {
  position: relative;
  z-index: 10;
}
@media (width >= 1280px) {
  .process-timeline-section:has(.process-timeline-step .size-35), .process-timeline:has(.process-timeline-step .size-35) {
    --process-timeline-line-top: calc(var(--spacing) * 50 + 2.5rem + 0.4375rem);
  }
}
.process-timeline-line-fill {
  display: block;
  height: 100%;
  width: 100%;
  background-color: color-mix(in srgb, #3377ff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 20%, transparent);
  }
}
@media (width >= 1280px) {
  .process-timeline-step:first-child .process-timeline-dot::before {
    display: none;
  }
}
@media (width < 820px) {
  .iv-therapy-stats .process-timeline {
    --process-timeline-line-top: calc(var(--benefit-circle-size, 200px) + 2.5rem + 0.4375rem);
  }
  .process-timeline-section .process-timeline-step p {
    margin-top: calc(var(--spacing) * 4);
    max-width: 100%;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: 1.4;
    line-height: 1.4;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .process-timeline-section .process-timeline-step .size-35, .process-timeline-section .process-timeline-step .process-timeline-icon {
    width: var(--benefit-circle-size, 200px);
    height: var(--benefit-circle-size, 200px);
  }
  .process-timeline-section .grid.md\:grid-cols-3:has(> .process-timeline-step) {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: calc(var(--spacing) * 12);
  }
}
@media (width < 1439px) {
  .process-timeline-step {
    opacity: 100%;
  }
}
@media (width >= 1439px) {
  .process-timeline-section:not(.process-timeline-section--aos) .process-timeline-line-fill, .process-timeline-section:not(.process-timeline-section--aos) .process-timeline-step {
    opacity: 20%;
  }
  .process-timeline.is-animated .process-timeline-line-fill, .process-timeline.is-animated .process-timeline-step {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 700ms;
    transition-duration: 700ms;
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .process-timeline.is-visible .process-timeline-line-fill {
    opacity: 1;
    transition-delay: 0ms;
  }
  .process-timeline.is-visible .process-timeline-step:nth-child(1) {
    opacity: 1;
    transition-delay: 0ms;
  }
  .process-timeline.is-visible .process-timeline-step:nth-child(2) {
    opacity: 1;
    transition-delay: 600ms;
  }
  .process-timeline.is-visible .process-timeline-step:nth-child(3) {
    opacity: 1;
    transition-delay: 800ms;
  }
  .process-timeline.is-visible .process-timeline-step:nth-child(4) {
    opacity: 1;
    transition-delay: 1200ms;
  }
}
.process-timeline-section--aos .process-timeline-line-fill {
  background-color: var(--color-primary-500);
}
.process-timeline-section--aos .physical-therapy-benefits-grid::before {
  display: none;
}
.process-timeline-section--aos .physical-therapy-benefit-item {
  position: relative;
  z-index: 10;
}
@media (width >= 1439px) {
  .process-timeline-section--aos [data-aos] {
    opacity: 0.2 !important;
    transition-property: opacity !important;
    transition-duration: 700ms !important;
    transition-timing-function: ease-out !important;
    transition-delay: 0ms !important;
  }
  .process-timeline-section--aos [data-aos].aos-animate {
    opacity: 1 !important;
  }
  .process-timeline-section--aos .process-timeline-line-fill.aos-animate {
    transition-delay: 0ms !important;
  }
  .process-timeline-section--aos .process-timeline-step:nth-child(1).aos-animate {
    transition-delay: 0ms !important;
  }
  .process-timeline-section--aos .process-timeline-step:nth-child(2).aos-animate {
    transition-delay: 600ms !important;
  }
  .process-timeline-section--aos .process-timeline-step:nth-child(3).aos-animate {
    transition-delay: 800ms !important;
  }
  .process-timeline-section--aos .process-timeline-step:nth-child(4).aos-animate {
    transition-delay: 1200ms !important;
  }
}
@media (width < 1439px) {
  .process-timeline-section--aos [data-aos] {
    opacity: 1 !important;
  }
}
.process-timeline-dot {
  position: relative;
  z-index: 10;
  width: 100%;
}
.greeting-standards-nav-btn {
  background-color: color-mix(in srgb, #1d4492 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-800) 20%, transparent);
  }
  color: var(--color-white);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.greeting-standards-nav-btn:hover {
  background-color: var(--color-primary-800);
  color: var(--color-white);
}
.greeting-standards-prev.swiper-button-disabled, .greeting-standards-next.swiper-button-disabled {
  background-color: color-mix(in srgb, #1d4492 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-800) 20%, transparent);
  }
  color: var(--color-white);
  opacity: 100%;
}
.greeting-standards-nav-aside {
  pointer-events: none;
}
.greeting-standards-nav-aside .greeting-standards-nav-btn {
  pointer-events: auto;
}
@media (width >= 1280px) {
  .greeting-standards-panel {
    min-height: 22rem;
  }
  .greeting-standards-panel > p {
    min-height: 4.5rem;
  }
  .greeting-standards-panel > div.mt-6 {
    min-height: 2.5rem;
  }
}
.shoulder-diagnosis-nav-btn {
  background-color: color-mix(in srgb, #1d4492 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-800) 20%, transparent);
  }
  color: var(--color-primary-800);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.shoulder-diagnosis-nav-btn:hover:not(.swiper-button-disabled) {
  background-color: var(--color-primary-800);
  color: var(--color-white);
}
.shoulder-diagnosis-prev.swiper-button-disabled, .shoulder-diagnosis-next.swiper-button-disabled {
  background-color: color-mix(in srgb, #1d4492 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-800) 20%, transparent);
  }
  color: var(--color-primary-800);
  opacity: 100%;
}
.greeting-standards, .shoulder-diagnosis {
  --greeting-standards-spv: 1;
  --greeting-standards-gap: 16px;
}
.greeting-standards-swiper .swiper-slide, .shoulder-diagnosis-swiper .swiper-slide {
  box-sizing: border-box;
  height: auto;
}
@media (width >= 1280px) {
  .greeting-standards-swiper .swiper-slide > div {
    min-height: 550px;
  }
  .greeting-standards-aside {
    min-height: 550px;
  }
}
@media (width >= 1439px) {
  .greeting-standards, .shoulder-diagnosis {
    --greeting-standards-spv: 1.18;
    --greeting-standards-gap: 96px;
  }
  .greeting-standards-stage, .shoulder-diagnosis-stage {
    width: calc(100% + max(0px, (100vw - 1280px) / 2) + 2rem);
  }
  .greeting-standards-nav {
    width: calc((100% - 17.28px) / 1.18);
    pointer-events: none;
  }
  .shoulder-diagnosis-nav {
    width: calc((100% - 17.28px) / 1.18);
    pointer-events: none;
  }
  .shoulder-diagnosis-nav > div:last-child {
    pointer-events: auto;
  }
}
@media (width >= 1659px) {
  .greeting-standards-stage, .shoulder-diagnosis-stage {
    width: calc(100% + max(0px, (100vw - 1280px) / 2));
  }
}
.tour-equipment-swiper {
  --tour-card-h: 480px;
  --tour-nav-gap: 41px;
  --tour-nav-size: 48px;
}
.tour-equipment-swiper .swiper-slide {
  box-sizing: border-box;
  height: auto;
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
}
.tour-equipment-card {
  height: 100%;
  width: 100%;
  @media (width >= 1080px) {
    height: 480px;
  }
  @media (width >= 1080px) {
    min-height: 480px;
  }
}
.tour-equipment-card-media {
  height: 180px;
  @media (width >= 1080px) {
    height: 432px;
  }
  @media (width >= 1080px) {
    width: 364px;
  }
  @media (width >= 1080px) {
    border-radius: var(--radius-xl);
  }
}
@media (width < 640px) {
  .tour-equipment-swiper-inner {
    padding-inline: 0;
  }
  .tour-equipment-swiper .swiper-slide {
    width: calc(100% - 32px);
    max-width: calc(100vw - 32px);
  }
  .tour-equipment-card {
    min-height: auto !important;
  }
}
@media (width >= 640px) and (width < 1079px) {
  .tour-equipment-card-media {
    height: 220px;
  }
}
@media (width < 1079px) {
  .tour-equipment-swiper .swiper-slide {
    display: flex;
  }
}
.tour-equipment-prev, .tour-equipment-next {
  background-color: color-mix(in srgb, #fff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
  }
  color: var(--color-white);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.tour-equipment-prev:hover, .tour-equipment-next:hover {
  background-color: var(--color-white);
  color: var(--color-primary-800);
}
.tour-equipment-prev:hover svg, .tour-equipment-next:hover svg {
  stroke: currentColor;
}
.tour-equipment-prev svg, .tour-equipment-next svg {
  display: block;
  flex-shrink: 0;
}
.tour-equipment-progress-fill {
  transform-origin: left center;
}
@media (width >= 1079px) {
  .tour-equipment-swiper {
    --tour-slide-w: min(787px, 100%);
  }
  .tour-equipment-swiper .swiper-slide {
    width: var(--tour-slide-w);
    max-width: 787px;
  }
  .tour-equipment-prev, .tour-equipment-next {
    top: calc(var(--tour-card-h) / 2);
    transform: translateY(-50%);
  }
  .tour-equipment-prev {
    left: calc(50% - (var(--tour-slide-w) / 2) - var(--tour-nav-gap) - var(--tour-nav-size));
    right: auto;
  }
  .tour-equipment-next {
    left: auto;
    right: calc(50% - (var(--tour-slide-w) / 2) - var(--tour-nav-gap) - var(--tour-nav-size));
  }
}
:lang(en) .tour-equipment-card h3 {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 1080px) {
    font-size: 26px;
  }
}
:lang(en) .tour-equipment-card p.whitespace-pre-line {
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 1080px) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
:lang(en) .tour-equipment-card ul {
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 1080px) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
:lang(en) .tour-equipment-card p.font-bold {
  @media (width >= 1080px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
@media (width < 640px) {
  .tour-consult-aside .tour-consult-link img {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
}
@media (width >= 1079px) {
  .tour-consult-fields {
    height: 148px;
    grid-template-rows: repeat(2, minmax(0, 1fr));
  }
}
.longevity-benefits-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: calc(var(--spacing) * 4);
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    grid-template-rows: auto auto;
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 5);
  }
}
.longevity-benefits-grid > *, .metabolic-causes-grid > * {
  max-width: 100%;
  min-width: 0;
}
.longevity-benefit-card-01 {
  @media (width >= 1080px) {
    grid-column-start: 1;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.longevity-benefit-card-02 {
  @media (width >= 1080px) {
    grid-column-start: 2;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.longevity-benefit-card-03 {
  @media (width >= 1080px) {
    grid-column-start: 3;
  }
  @media (width >= 1080px) {
    grid-row: span 2 / span 2;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.longevity-benefit-photo {
  @media (width >= 1080px) {
    grid-column: span 2 / span 2;
  }
  @media (width >= 1080px) {
    grid-column-start: 1;
  }
  @media (width >= 1080px) {
    grid-row-start: 2;
  }
}
.glp1-benefits-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: calc(var(--spacing) * 4);
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    grid-template-rows: minmax(300px,auto) minmax(300px,auto);
  }
  @media (width >= 1080px) {
    gap: 25px;
  }
}
.glp1-benefits-grid > * {
  max-width: 100%;
  min-width: 0;
}
.glp1-benefit-card-padding {
  padding-block: calc(var(--spacing) * 8);
  padding-right: 23px;
  padding-left: calc(var(--spacing) * 8);
}
.glp1-benefit-card-01 {
  @media (width >= 1080px) {
    grid-column-start: 1;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.glp1-benefit-card-02 {
  @media (width >= 1080px) {
    grid-column-start: 2;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.glp1-benefit-card-03 {
  min-height: 300px;
  @media (width >= 1080px) {
    grid-column-start: 3;
  }
  @media (width >= 1080px) {
    grid-row: span 2 / span 2;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
  @media (width >= 1080px) {
    min-height: 624px;
  }
}
.glp1-benefit-card-04 {
  min-height: 300px;
  @media (width >= 1080px) {
    grid-column: span 2 / span 2;
  }
  @media (width >= 1080px) {
    grid-column-start: 1;
  }
  @media (width >= 1080px) {
    grid-row-start: 2;
  }
}
.glp1-program-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 5);
  }
}
.weight-clinic-page {
  min-width: 0;
  overflow-x: clip;
}
.weight-clinic-page .aspect-\[1280\/721\], .weight-clinic-page .aspect-\[1280\/446\] {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}
@media (width < 1024px) {
  .weight-clinic-section {
    padding-block: 3rem;
  }
  .glp1-benefits-grid article[class*="min-h-"] {
    min-height: 240px;
  }
  .glp1-benefits-grid .glp1-benefit-card-padding {
    padding: 1.25rem;
  }
  .glp1-benefits-grid article h3 {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .glp1-benefits-grid article p.text-lg {
    margin-top: 1rem;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .glp1-benefits-grid article > p.text-\[48px\] {
    font-size: 2rem;
  }
  .glp1-program-card {
    min-height: 240px;
    padding: 1.25rem;
  }
  .glp1-program-card h3 {
    margin-top: 1.25rem;
    font-size: var(--text-xl);
    line-height: 1.4;
  }
  .glp1-program-card p {
    margin-top: 0.75rem;
    font-size: var(--text-sm);
    line-height: 1.4;
  }
  .glp1-program-link {
    margin-top: 1.25rem;
    padding: 0.625rem 0.875rem;
    font-size: var(--text-sm);
  }
  .weight-clinic-page .process-timeline-icon {
    width: 120px;
    height: 120px;
  }
  .weight-clinic-page .process-timeline-step p {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.glp1-program-card {
  position: relative;
  display: flex;
  min-height: 290px;
  flex-direction: column;
  overflow: hidden;
  border-radius: var(--radius-lg);
  padding: calc(var(--spacing) * 8);
}
.glp1-program-card--muscle {
  background-color: #eff6fb;
}
.glp1-program-card--joint {
  background-color: #eef4fa;
}
.glp1-program-badge {
  display: inline-flex;
  max-height: calc(var(--spacing) * 8);
  width: fit-content;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  border-radius: 100px;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #3377ff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-primary-500) 20%, transparent);
  }
  background-color: #eff6fd;
  padding-inline: 14px;
  padding-block: 8px;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  white-space: nowrap;
  color: var(--color-primary-500);
}
.glp1-program-link {
  margin-top: calc(var(--spacing) * 8);
  display: inline-flex;
  width: fit-content;
  flex-shrink: 0;
  align-items: center;
  gap: calc(var(--spacing) * 2.5);
  border-radius: 0.25rem;
  background-color: var(--color-primary-500);
  padding-inline: 18px;
  padding-block: 13px;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
}
.glp1-program-body {
  position: relative;
  z-index: 10;
  display: flex;
  flex: 1;
  flex-direction: column;
}
.glp1-program-body > p {
  flex: 1;
}
.joint-health-programs .glp1-program-card__gradient {
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 1;
  background-image: linear-gradient(-86.31deg, rgb(255 255 255 / 0) 24.19%, #f4f8fb 57.12%);
}
.joint-health-programs .glp1-program-card--joint {
  background-color: #f4f8fb;
}
.glp1-stat-value {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: normal;
  color: var(--color-primary-500);
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.longevity-process-section, .spray-stretch-process-section, .physical-therapy-process-section, .sports-elbow-process-section, .english-speaking-process-section, .insurance-documents-process-section, .shockwave-process-section {
  overflow: visible;
}
.longevity-process-track [data-aos="fade-up"], .injection-process-track [data-aos="fade-up"], .sports-elbow-process-track [data-aos="fade-up"], .international-booking-track [data-aos="fade-up"] {
  transform: translate3d(0, 40px, 0);
}
.longevity-process-track [data-aos="fade-up"].aos-animate, .injection-process-track [data-aos="fade-up"].aos-animate, .sports-elbow-process-track [data-aos="fade-up"].aos-animate, .international-booking-track [data-aos="fade-up"].aos-animate {
  transform: translate3d(0, 0, 0);
}
.longevity-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  background-image: url("/images/contents/longevity-process-bg.jpg");
}
.longevity-process-section--no-bg::before {
  content: none;
  display: none;
}
.spray-stretch-process-section {
  background-color: var(--color-primary-500);
}
.spray-stretch-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/spray-stretch-process-bg.jpg");
}
.english-speaking-process-section {
  background-color: var(--color-primary-500);
}
.english-speaking-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/english-speaking-care-process-bg.jpg");
}
.insurance-documents-process-section {
  background-color: var(--color-primary-500);
}
.insurance-documents-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/insurance-documents-process-bg.jpg");
}
.international-insurance-notice {
  margin-inline: auto;
  display: flex;
  width: 100%;
  max-width: 992px;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  border-radius: 50px;
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 8);
  padding-block: 18px;
  text-align: left;
}
.international-insurance-notice i, .international-insurance-notice svg {
  width: calc(var(--spacing) * 6);
  height: calc(var(--spacing) * 6);
  flex-shrink: 0;
  align-self: center;
  color: #202020;
}
.international-insurance-notice p {
  min-width: 0;
  flex: 1;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  white-space: pre-line;
  color: #202020;
}
.international-payment-image {
  position: relative;
  aspect-ratio: 1280/347;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
}
.international-payment-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.international-payment-content {
  margin-top: calc(var(--spacing) * 10);
  display: grid;
  gap: calc(var(--spacing) * 8);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
  @media (width >= 1080px) {
    grid-template-columns: minmax(0,289px) minmax(0,1fr);
  }
  @media (width >= 1080px) {
    column-gap: calc(var(--spacing) * 16);
  }
  @media (width >= 1440px) {
    column-gap: 241px;
  }
}
.international-payment-title {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: pre-line;
  color: #202020;
  @media (width >= 1080px) {
    font-size: 40px;
  }
}
.international-payment-copy {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: var(--color-black);
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.international-payment-copy a {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: inherit;
  text-decoration-line: underline;
  text-underline-offset: 2px;
  &:hover {
    @media (hover: hover) {
      opacity: 80%;
    }
  }
}
.international-booking-circle--records h3, .international-booking-circle--records p {
  max-width: 280px;
}
.international-page .injection-subnav {
  max-width: calc(var(--spacing) * 320);
  column-gap: calc(var(--spacing) * 8);
  @media (width >= 1080px) {
    column-gap: calc(var(--spacing) * 12);
  }
}
.international-guide-panel {
  background-color: color-mix(in srgb, #3377ff 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
  }
}
.international-guide-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 8);
  }
}
.international-guide-grid .metabolic-exam-card {
  width: 100%;
  max-width: none;
  flex-shrink: 1;
}
.international-guide-cards .metabolic-exam-card-image {
  background-color: var(--color-white);
}
.international-guide-cards .metabolic-exam-card-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: calc(var(--spacing) * 4);
}
.international-guide-cards--visit .metabolic-exam-card-image img {
  object-fit: cover;
  padding: 0;
}
.international-guide-cards .metabolic-exam-card-body {
  min-height: 135px;
}
.international-guide-cards--visit .metabolic-exam-card-body {
  min-height: 157px;
}
.international-location-section {
  margin-inline: auto;
  width: 100%;
  max-width: calc(var(--spacing) * 320);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 16);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    padding-block: calc(var(--spacing) * 24);
  }
  @media (width >= 1820px) {
    padding-inline: 0;
  }
}
.international-location-title {
  text-align: left;
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #202020;
  @media (width >= 1080px) {
    font-size: 40px;
  }
}
.international-location-map {
  position: relative;
  margin-top: calc(var(--spacing) * 12);
  min-height: 280px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
  @media (width >= 640px) {
    min-height: 360px;
  }
  @media (width >= 1080px) {
    margin-top: 4.75rem;
  }
  @media (width >= 1080px) {
    aspect-ratio: 1280/500;
  }
  @media (width >= 1080px) {
    min-height: 0;
  }
}
.international-location-map iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-style: var(--tw-border-style);
  border-width: 0px;
}
.international-location-list {
  margin-top: calc(var(--spacing) * 12);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 16);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 20);
  }
}
.international-location-item {
  display: grid;
  align-items: flex-start;
  column-gap: calc(var(--spacing) * 4);
  row-gap: calc(var(--spacing) * 2);
  @media (width >= 640px) {
    grid-template-columns: 238px minmax(0,1fr);
  }
  @media (width >= 640px) {
    column-gap: 0;
  }
  @media (width >= 640px) {
    row-gap: 0;
  }
}
.international-location-label {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 4);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #202020;
}
.international-location-label i, .international-location-label svg {
  width: calc(var(--spacing) * 6);
  height: calc(var(--spacing) * 6);
  flex-shrink: 0;
  color: #202020;
}
.international-location-value {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in oklab, #202020 80%, transparent);
  @media (width >= 640px) {
    padding-top: calc(var(--spacing) * 0.5);
  }
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.international-location-value a {
  color: inherit;
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      text-decoration-line: underline;
    }
  }
}
.international-booking-phone {
  margin-top: calc(var(--spacing) * 10);
  text-align: center;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-700);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 12);
  }
  @media (width >= 1080px) {
    font-size: 18px;
  }
}
.international-booking-track {
  position: relative;
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 12);
  display: flex;
  max-width: none;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
  width: 100svw;
  margin-inline: calc(50% - 50svw);
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  @media (width >= 1440px) {
    margin-inline: auto;
  }
  @media (width >= 1440px) {
    width: max-content;
  }
  @media (width >= 1440px) {
    max-width: 1280px;
  }
  @media (width >= 1440px) {
    scroll-snap-type: none;
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
  @media (width >= 1440px) {
    padding-inline: 0;
  }
  @media (width >= 1440px) {
    padding-bottom: 0;
  }
}
.international-booking-track.is-drag-scrollable {
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
  &::-webkit-scrollbar {
    display: none;
  }
}
.international-booking-track.is-drag-scrollable.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
}
.international-booking-circle {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-shrink: 0;
  scroll-snap-align: center;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  align-self: center;
  overflow: hidden;
  border-radius: calc(infinity * 1px);
  text-align: center;
  --booking-circle-size: calc(100vw - 2rem);
  --booking-overlap: calc(var(--booking-circle-size) * 24 / 338);
  flex: 0 0 var(--booking-circle-size);
  width: var(--booking-circle-size);
  height: var(--booking-circle-size);
  min-width: 0;
  min-height: 0;
  max-width: none;
  max-height: var(--booking-circle-size);
  aspect-ratio: 1 / 1;
  padding-top: calc(var(--booking-circle-size) * 76 / 338);
  padding-right: calc(var(--booking-circle-size) * 24 / 338);
  padding-bottom: calc(var(--booking-circle-size) * 32 / 338);
  padding-left: calc(var(--booking-circle-size) * 24 / 338);
  &:not(:first-child) {
    margin-left: calc(var(--booking-overlap) * -1);
  }
  @media (width >= 1440px) {
    width: 338px;
    height: 338px;
  }
  @media (width >= 1440px) {
    max-height: 338px;
  }
  @media (width >= 1440px) {
    min-height: 0;
  }
  @media (width >= 1440px) {
    max-width: 338px;
  }
  @media (width >= 1440px) {
    min-width: 338px;
  }
  @media (width >= 1440px) {
    flex: 0 0 338px;
  }
  @media (width >= 1280px) {
    --booking-circle-size: 338px;
  }
  &:nth-child(1) {
    z-index: 1;
  }
  &:nth-child(2) {
    z-index: 2;
  }
  &:nth-child(3) {
    z-index: 3;
  }
  &:nth-child(4) {
    z-index: 4;
  }
}
.international-booking-circle--outline {
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-primary-500);
  background-color: var(--color-white);
}
.international-booking-circle--filled {
  background-color: var(--color-primary-400);
}
.international-booking-badge {
  display: flex;
  width: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 8);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary-500);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.international-booking-circle h3 {
  margin-top: calc(var(--spacing) * 6);
  width: 100%;
  max-width: 267px;
  font-size: clamp(1rem, 2.6vw, 1.5rem);
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  white-space: pre-line;
  color: #202020;
}
.international-booking-circle p {
  margin-top: calc(var(--spacing) * 4);
  width: 100%;
  max-width: 267px;
  font-size: clamp(0.875rem, 2.2vw, 1rem);
  --tw-leading: 1.4;
  line-height: 1.4;
  color: #202020;
}
.international-booking-circle--phone {
  padding-bottom: calc(var(--booking-circle-size) * 70 / 338);
}
.international-booking-circle__phone {
  position: absolute;
  left: calc(1 / 2 * 100%);
  --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  white-space: nowrap;
  color: var(--color-primary-700);
  top: calc(var(--booking-circle-size) * 268 / 338);
  font-size: clamp(0.9375rem, 2.4vw, 1.125rem);
}
.shockwave-body-parts-grid {
  margin-inline: calc(var(--spacing) * -4);
  display: flex;
  min-width: 0;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 3);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: var(--spacing);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 4);
  }
  @media (width >= 820px) {
    margin-inline: calc(var(--spacing) * -8);
  }
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    margin-inline: 0;
  }
  @media (width >= 1080px) {
    display: grid;
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 5);
  }
  @media (width >= 1080px) {
    overflow: visible;
  }
  @media (width >= 1080px) {
    padding-inline: 0;
  }
  @media (width >= 1080px) {
    padding-bottom: 0;
  }
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.shockwave-body-parts-grid::-webkit-scrollbar {
  display: none;
}
.shockwave-body-part-card {
  position: relative;
  width: 14rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  background-color: color-mix(in srgb, #fff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
  }
  @media (width >= 640px) {
    width: 15rem;
  }
  @media (width >= 1080px) {
    width: auto;
  }
  @media (width >= 1080px) {
    min-width: 0;
  }
  height: 17.5rem;
}
@media (width >= 640px) {
  .shockwave-body-part-card {
    height: 18.125rem;
  }
}
.shockwave-body-part-card__gradient {
  pointer-events: none;
  position: absolute;
  inset-inline: 0;
  top: 46%;
  bottom: 0;
  background-image: linear-gradient( 180deg, rgb(255 255 255 / 0) 0%, rgb(255 255 255 / 0.75) 25%, #fff 45%, #fff 100% );
}
.shockwave-body-part-card__content {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  padding: calc(var(--spacing) * 3);
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 4);
  }
  @media (width >= 1080px) {
    padding: calc(var(--spacing) * 6);
  }
}
.shockwave-body-part-card__part {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-500);
  @media (width >= 640px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.shockwave-body-part-card__conditions {
  margin-top: var(--spacing);
  min-height: 2.7em;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.35;
  line-height: 1.35;
  color: var(--color-black);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 2);
  }
  @media (width >= 640px) {
    min-height: 2.8em;
  }
  @media (width >= 640px) {
    --tw-leading: 1.4;
    line-height: 1.4;
  }
  @media (width >= 1080px) {
    min-height: 2.8em;
  }
  @media (width >= 1080px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.shockwave-process-section {
  background-color: var(--color-primary-500);
}
.shockwave-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/shockwave-process-bg.jpg");
}
.physical-therapy-process-section {
  background-color: var(--color-primary-500);
}
.physical-therapy-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/physical-therapy-process-bg.jpg");
}
.process-timeline-section:has(.physical-therapy-benefits-grid), .process-timeline:has(.physical-therapy-benefits-grid), .physical-therapy-benefits-grid {
  --benefit-circle-size: 200px;
  --process-timeline-line-top: calc(var(--benefit-circle-size) + 1rem + 0.4375rem);
}
.physical-therapy-benefits-grid {
  position: relative;
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 12);
  overflow: visible;
  @media (width >= 820px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 8);
  }
}
@media (width >= 820px) {
  .physical-therapy-benefits-grid::before {
    content: "";
    pointer-events: none;
    position: absolute;
    z-index: 0;
    display: block;
    height: 1px;
    background-color: color-mix(in srgb, #3377ff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary-500) 30%, transparent);
    }
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    top: var(--process-timeline-line-top);
  }
  .physical-therapy-benefits-grid .physical-therapy-benefit-item:first-child .physical-therapy-benefit-dot-row::before {
    display: none;
  }
}
.physical-therapy-benefit-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.physical-therapy-benefit-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--benefit-circle-size, 200px);
  height: var(--benefit-circle-size, 200px);
}
.physical-therapy-benefit-circle img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.physical-therapy-benefit-highlight {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: normal;
  color: var(--color-primary-500);
  @media (width >= 820px) {
    white-space: pre-line;
  }
}
.physical-therapy-benefit-dot-row {
  position: relative;
  margin-top: calc(var(--spacing) * 4);
  display: none;
  width: 100%;
  justify-content: center;
  @media (width >= 820px) {
    display: flex;
  }
}
.physical-therapy-benefit-dot {
  position: relative;
  z-index: 10;
  width: calc(var(--spacing) * 3.5);
  height: calc(var(--spacing) * 3.5);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary-500);
}
@media (width < 820px) {
  .physical-therapy-benefit-desc {
    margin-top: calc(var(--spacing) * 4);
  }
}
.physical-therapy-methods-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1440px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.physical-therapy-method-card {
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 6);
}
.physical-therapy-method-card h3 {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-500);
}
.physical-therapy-method-card p {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: var(--color-black);
}
.physical-therapy-benefit-desc {
  margin-top: calc(var(--spacing) * 6);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  white-space: normal;
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.sports-injury-compare-note {
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 12);
  max-width: 1019px;
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  padding-top: calc(var(--spacing) * 8);
  text-align: center;
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: normal;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
}
.sports-injury-compare-card {
  text-align: center;
}
.sports-injury-compare-card-heading {
  margin-top: calc(var(--spacing) * 8);
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  column-gap: calc(var(--spacing) * 3);
  row-gap: calc(var(--spacing) * 2);
}
.sports-injury-compare-card-title {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  @media (width >= 640px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: 32px;
  }
}
.sports-injury-compare-card-label {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-800);
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.sports-injury-compare-card-desc {
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 4);
  max-width: 460px;
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: var(--color-black);
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.sports-elbow-tab-section {
  position: relative;
  overflow: hidden;
  padding-block: calc(var(--spacing) * 12);
  color: var(--color-white);
  @media (width >= 640px) {
    padding-block: calc(var(--spacing) * 16);
  }
  @media (width >= 1080px) {
    padding-block: 120px;
  }
}
.sports-elbow-tab-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  background-image: url("/images/contents/golfers-elbow-tab-bg.jpg");
}
.sports-knee-tab-section::before {
  background-image: url("/images/contents/jumpers-knee-tab-bg.jpg?v=2");
}
.sports-elbow-tab-intro h2 {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: normal;
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    font-size: 40px;
  }
  line-height: 1.05;
}
.sports-elbow-tab-intro p {
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 6);
  max-width: 1280px;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  white-space: normal;
  color: color-mix(in srgb, #fff 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 90%, transparent);
  }
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 10);
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.sports-elbow-tab-button {
  display: inline-flex;
  height: 38px;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: transparent;
  padding-inline: 0;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #202020;
  transition-property: color,background-color,padding;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.sports-elbow-tab-button.is-active {
  background-color: var(--color-primary-800);
  padding-inline: calc(var(--spacing) * 6);
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-white);
}
.sports-elbow-tab-button:focus-visible {
  outline-style: var(--tw-outline-style);
  outline-width: 2px;
  outline-offset: 2px;
  outline-color: var(--color-primary-800);
}
.sports-elbow-tab-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-3xl);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 4);
  padding-top: calc(var(--spacing) * 6);
  padding-bottom: 0;
  color: #202020;
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    padding-top: calc(var(--spacing) * 10);
  }
  @media (width >= 1440px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1820px) {
    padding-inline: calc(var(--spacing) * 12);
  }
}
.sports-elbow-tab-body {
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 6);
  width: 100%;
  max-width: var(--tab-layout-max-w);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 10);
  }
}
.sports-elbow-tab-buttons {
  margin-inline: auto;
  margin-bottom: 0;
  display: flex;
  width: 100%;
  max-width: var(--tab-layout-max-w);
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
}
.sports-elbow-tab-layout {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 6);
}
.sports-elbow-tab-visual {
  --tab-visual-w: 409;
  --tab-visual-h: 530;
  position: relative;
  margin-inline: auto;
  flex-shrink: 0;
  width: min(100%, calc(var(--tab-visual-w) * 1px));
  aspect-ratio: var(--tab-visual-w) / var(--tab-visual-h);
  height: auto;
  overflow: visible;
}
.sports-elbow-tab-visual.image-hotspot-wrap {
  --hotspot-dot: 10px;
  --hotspot-pulse: 21px;
  --hotspot-ring: 26px;
}
@media (width >= 1080px) {
  .sports-elbow-tab-visual.image-hotspot-wrap {
    --hotspot-dot: 0.75rem;
    --hotspot-pulse: 1.5rem;
    --hotspot-ring: 2rem;
  }
}
.sports-elbow-tab-checklist-wrap {
  margin-inline: auto;
  display: flex;
  width: 100%;
  flex-direction: column;
  justify-content: center;
}
.sports-elbow-tab-checklist {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 3);
  }
}
.sports-elbow-tab-checklist li {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 3%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 3%, transparent);
  }
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 4);
  }
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    padding-block: calc(var(--spacing) * 5);
  }
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.sports-elbow-tab-image {
  --tab-img-w: var(--tab-visual-w);
  --tab-img-h: var(--tab-visual-h);
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: fill;
  opacity: 0;
  transition: opacity 0.45s ease;
}
.sports-elbow-tab-image.is-active {
  opacity: 1;
}
.sports-elbow-tab-image.hidden {
  display: none !important;
}
@media (prefers-reduced-motion: reduce) {
  .sports-elbow-tab-image {
    transition: none;
  }
}
@media (width < 1320px) {
  .sports-elbow-tab-checklist-wrap {
    order: 1;
  }
  .sports-elbow-tab-visual {
    order: 2;
  }
}
@media (width >= 1024px) {
  .sports-elbow-tab-visual {
    width: calc(var(--tab-visual-w) * 1px);
    max-width: 100%;
    height: auto;
    max-height: none;
    aspect-ratio: var(--tab-visual-w) / var(--tab-visual-h);
  }
}
@media (width >= 1320px) {
  .sports-elbow-tab-layout {
    height: 530px;
    grid-template-columns: calc(var(--tab-visual-w) * 1px) 500px;
    gap: 129px;
    align-items: end;
    justify-content: center;
  }
  .sports-elbow-tab-visual {
    margin-inline: 0;
    flex-shrink: 0;
    width: calc(var(--tab-visual-w) * 1px);
    max-width: calc(var(--tab-visual-w) * 1px);
    height: auto;
    max-height: none;
    aspect-ratio: var(--tab-visual-w) / var(--tab-visual-h);
  }
  .sports-elbow-tab-checklist-wrap {
    margin-inline: 0;
    height: 530px;
    width: 500px;
    max-width: 500px;
    flex-shrink: 0;
    justify-content: center;
  }
  :lang(en) .sports-elbow-tab-layout {
    height: auto;
    min-height: 530px;
  }
  :lang(en) .sports-elbow-tab-checklist-wrap {
    height: auto;
    min-height: 0;
    padding-bottom: 2.5rem;
  }
}
.sports-golfers-tab-section {
  --tab-visual-w: 570;
  --tab-visual-h: 530;
  --tab-layout-gap: 30px;
  --tab-layout-max-w: 1100px;
}
@media (width >= 1320px) {
  .sports-golfers-tab-section .sports-elbow-tab-layout {
    gap: var(--tab-layout-gap);
  }
}
.sports-golfers-tab-section .sports-elbow-tab-image[data-tab="tennis"].lang-only-ko {
  --tab-img-w: 478;
  --tab-img-h: 530;
}
.sports-golfers-tab-section .sports-elbow-tab-image[data-tab="tennis"].lang-only-en {
  --tab-img-w: 569;
  --tab-img-h: 530;
}
.sports-golfers-tab-section .sports-elbow-tab-image[data-tab="golf"].lang-only-ko {
  --tab-img-w: 471;
  --tab-img-h: 530;
}
.sports-golfers-tab-section .sports-elbow-tab-image[data-tab="golf"].lang-only-en {
  --tab-img-w: 570;
  --tab-img-h: 530;
}
.sports-knee-tab-section {
  --tab-visual-w: 460;
  --tab-visual-h: 530;
  --tab-layout-max-w: 1089px;
}
.sports-knee-tab-section .sports-elbow-tab-image[data-tab="runners"] {
  --tab-img-w: 387;
  --tab-img-h: 530;
}
.sports-knee-tab-section .sports-elbow-tab-image[data-tab="jumpers"] {
  --tab-img-w: 460;
  --tab-img-h: 530;
}
.sports-shoulder-tab-section {
  --tab-visual-w: 409;
  --tab-visual-h: 530;
  --tab-layout-max-w: 1038px;
}
.sports-shoulder-tab-section .sports-elbow-tab-image[data-tab="rotator"] {
  --tab-img-w: 380;
  --tab-img-h: 530;
}
.sports-shoulder-tab-section .sports-elbow-tab-image[data-tab="impingement"] {
  --tab-img-w: 409;
  --tab-img-h: 530;
}
.sports-elbow-tab-badge {
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 2.5);
  border-radius: 20px;
  background-color: var(--color-primary-800);
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.sports-elbow-process-section {
  position: relative;
  overflow: visible;
  background-color: var(--color-primary-500);
  padding-block: calc(var(--spacing) * 16);
  color: var(--color-white);
  @media (width >= 1080px) {
    padding-block: 120px;
  }
}
.sports-elbow-process-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/golfers-elbow-process-bg.jpg");
}
.sports-knee-process-section::before {
  background-image: url("/images/contents/jumpers-knee-process-bg.jpg");
}
.sports-shoulder-tab-section::before {
  background-image: url("/images/contents/rotator-cuff-tab-bg.jpg");
}
.sports-shoulder-process-section::before {
  background-image: url("/images/contents/rotator-cuff-process-bg.jpg");
}
.sports-elbow-process-track {
  position: relative;
  margin-inline: auto;
  display: flex;
  max-width: none;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  width: 100svw;
  margin-inline: calc(50% - 50svw);
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
  --tw-scroll-snap-strictness: mandatory;
  @media (width >= 1440px) {
    position: relative;
  }
  @media (width >= 1440px) {
    margin-inline: auto;
  }
  @media (width >= 1440px) {
    width: 100%;
  }
  @media (width >= 1440px) {
    max-width: 1280px;
  }
  @media (width >= 1440px) {
    scroll-snap-type: none;
  }
  @media (width >= 1440px) {
    justify-content: center;
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
  @media (width >= 1440px) {
    padding-inline: 0;
  }
  @media (width >= 1440px) {
    padding-bottom: 0;
  }
}
@media (width >= 820px) {
  .sports-elbow-process-track, .longevity-process-track, .injection-process-track {
    scroll-padding-inline: 2rem;
  }
}
.sports-elbow-process-circle {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-shrink: 0;
  scroll-snap-align: center;
  flex-direction: column;
  align-items: center;
  align-self: center;
  overflow: visible;
  border-radius: calc(infinity * 1px);
  border-color: transparent;
  background-color: transparent;
  padding-inline: calc(var(--spacing) * 9);
  padding-block: calc(var(--spacing) * 6);
  text-align: center;
  color: #202020;
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 10);
  }
  @media (width >= 640px) {
    padding-block: calc(var(--spacing) * 8);
  }
  --process-circle-size: clamp(280px, 80vw, 338px);
  flex: 0 0 var(--process-circle-size);
  width: var(--process-circle-size);
  height: var(--process-circle-size);
  min-width: 280px;
  min-height: 0;
  max-width: 338px;
  max-height: var(--process-circle-size);
  aspect-ratio: 1 / 1;
  &::before {
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-primary-500);
    background-color: var(--color-white);
  }
  &.is-alt::before {
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-primary-400);
  }
  & > * {
    position: relative;
    z-index: 2;
  }
  &:not(:first-child) {
    margin-inline-start: calc(var(--spacing) * -6);
    @media (width >= 1440px) {
      margin-inline-start: calc(var(--spacing) * -6);
    }
  }
  @media (width >= 1440px) {
    width: 338px;
    height: 338px;
  }
  @media (width >= 1440px) {
    max-height: 338px;
  }
  @media (width >= 1440px) {
    min-height: 0;
  }
  @media (width >= 1440px) {
    max-width: 338px;
  }
  @media (width >= 1440px) {
    min-width: 338px;
  }
  @media (width >= 1440px) {
    flex: 0 0 338px;
  }
  @media (width >= 1440px) {
    padding-inline: calc(var(--spacing) * 14);
  }
  @media (width >= 1440px) {
    padding-block: calc(var(--spacing) * 10);
  }
}
.sports-elbow-process-circle.is-alt {
  border-color: transparent;
  background-color: transparent;
}
.sports-elbow-process-badge {
  display: flex;
  width: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 8);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary-500);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.sports-elbow-diagnosis-grid {
  margin-inline: auto;
  display: grid;
  max-width: 1280px;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 8);
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 5);
  }
}
.sports-elbow-diagnosis-card img {
  aspect-ratio: 410/255;
  width: 100%;
  border-radius: var(--radius-lg);
  object-fit: cover;
}
.sports-injury-why-list li span {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.sports-elbow-diagnosis-card h3 {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  @media (width >= 1080px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.sports-elbow-diagnosis-card p {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  white-space: normal;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.longevity-process-track {
  position: relative;
  margin-inline: auto;
  display: flex;
  max-width: none;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  width: 100svw;
  margin-inline: calc(50% - 50svw);
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
  --tw-scroll-snap-strictness: mandatory;
  @media (width >= 1440px) {
    margin-inline: auto;
  }
  @media (width >= 1440px) {
    display: grid;
  }
  @media (width >= 1440px) {
    width: 100%;
  }
  @media (width >= 1440px) {
    max-width: 100%;
  }
  @media (width >= 1440px) {
    scroll-snap-type: none;
  }
  @media (width >= 1440px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 1440px) {
    align-items: center;
  }
  @media (width >= 1440px) {
    justify-content: center;
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
  @media (width >= 1440px) {
    padding-inline: 0;
  }
  @media (width >= 1440px) {
    padding-bottom: 0;
  }
}
@media (width < 1280px) {
  .longevity-process-track, .injection-process-track, .sports-elbow-process-track, .international-booking-track {
    touch-action: pan-x pan-y pinch-zoom;
    overscroll-behavior-x: contain;
    overflow-y: hidden;
    width: calc(100% + 2rem);
    max-width: none;
    margin-inline: -1rem;
    padding-top: 0;
    padding-bottom: 2.75rem;
    margin-bottom: -2.75rem;
  }
  .longevity-process-track.is-drag-scrollable, .injection-process-track.is-drag-scrollable, .sports-elbow-process-track.is-drag-scrollable, .international-booking-track.is-drag-scrollable, .injection-condition-track.is-drag-scrollable, .pain-care-imaging-track.is-drag-scrollable, .shockwave-body-parts-grid.is-drag-scrollable, .shingles-step-grid.is-drag-scrollable, .growth-process-grid.is-drag-scrollable, .growth-lifestyle-grid.is-drag-scrollable, .shoulder-diseases-scroll.is-drag-scrollable, .joint-diseases-scroll.is-drag-scrollable, .metabolic-exam-grid.is-drag-scrollable {
    touch-action: pan-x pan-y pinch-zoom;
  }
  .longevity-process-track.is-drag-scrollable .longevity-process-circle, .injection-process-track.is-drag-scrollable .longevity-process-circle, .sports-elbow-process-track.is-drag-scrollable .sports-elbow-process-circle, .international-booking-track.is-drag-scrollable .international-booking-circle, .injection-condition-track.is-drag-scrollable .injection-condition-card, .pain-care-imaging-track.is-drag-scrollable .pain-care-imaging-card, .shockwave-body-parts-grid.is-drag-scrollable .shockwave-body-part-card, .shingles-step-grid.is-drag-scrollable .shingles-step-card, .growth-process-grid.is-drag-scrollable .growth-process-card, .growth-lifestyle-grid.is-drag-scrollable .growth-lifestyle-card, .shoulder-diseases-scroll.is-drag-scrollable .shoulder-diseases-card, .joint-diseases-scroll.is-drag-scrollable .joint-diseases-card, .metabolic-exam-grid.is-drag-scrollable .metabolic-exam-card {
    touch-action: inherit;
  }
}
@media (width >= 768px) and (width < 1280px) {
  .longevity-process-track, .injection-process-track, .sports-elbow-process-track, .international-booking-track {
    width: calc(100% + 4rem);
    margin-inline: -2rem;
  }
  .international-booking-circle {
    --booking-circle-size: calc(100vw - 4rem);
  }
}
.longevity-process-track:has(> :nth-child(5):last-child) {
  @media (width >= 1440px) {
    display: flex;
  }
  @media (width >= 1440px) {
    width: max-content;
  }
  @media (width >= 1440px) {
    max-width: none;
  }
  @media (width >= 1440px) {
    flex-wrap: nowrap;
  }
  @media (width >= 1440px) {
    justify-content: center;
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
}
.longevity-process-section:has(.longevity-process-track > :nth-child(5):last-child), .longevity-process-section:has(.injection-process-track > :nth-child(5):last-child) {
  @media (width >= 1440px) {
    overflow-x: visible;
  }
  > .relative {
    @media (width >= 1440px) {
      max-width: none;
    }
    @media (width >= 1440px) {
      overflow-x: visible;
    }
  }
}
.longevity-process-track.is-drag-scrollable, .injection-process-track.is-drag-scrollable, .sports-elbow-process-track.is-drag-scrollable, .international-booking-track.is-drag-scrollable, .injection-condition-track.is-drag-scrollable, .pain-care-imaging-track.is-drag-scrollable, .shockwave-body-parts-grid.is-drag-scrollable, .shingles-step-grid.is-drag-scrollable, .growth-process-grid.is-drag-scrollable, .growth-lifestyle-grid.is-drag-scrollable, .shoulder-diseases-scroll.is-drag-scrollable, .joint-diseases-scroll.is-drag-scrollable, .metabolic-exam-grid.is-drag-scrollable {
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  &::-webkit-scrollbar {
    display: none;
  }
}
.longevity-process-track.is-drag-scrollable.is-dragging, .injection-process-track.is-drag-scrollable.is-dragging, .sports-elbow-process-track.is-drag-scrollable.is-dragging, .international-booking-track.is-drag-scrollable.is-dragging, .injection-condition-track.is-drag-scrollable.is-dragging, .pain-care-imaging-track.is-drag-scrollable.is-dragging, .shockwave-body-parts-grid.is-drag-scrollable.is-dragging, .shingles-step-grid.is-drag-scrollable.is-dragging, .growth-process-grid.is-drag-scrollable.is-dragging, .growth-lifestyle-grid.is-drag-scrollable.is-dragging, .shoulder-diseases-scroll.is-drag-scrollable.is-dragging, .joint-diseases-scroll.is-drag-scrollable.is-dragging, .metabolic-exam-grid.is-drag-scrollable.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  touch-action: none;
}
.shockwave-body-parts-grid.is-drag-scrollable img, .shingles-step-grid.is-drag-scrollable img, .growth-process-grid.is-drag-scrollable img, .growth-lifestyle-grid.is-drag-scrollable img, .shoulder-diseases-scroll.is-drag-scrollable img, .joint-diseases-scroll.is-drag-scrollable img, .metabolic-exam-grid.is-drag-scrollable img {
  -webkit-user-drag: none;
  user-select: none;
}
.longevity-process-circle {
  position: relative;
  margin-inline: 0;
  box-sizing: border-box;
  display: flex;
  flex-shrink: 0;
  scroll-snap-align: center;
  flex-direction: column;
  align-items: center;
  align-self: center;
  overflow: visible;
  border-radius: calc(infinity * 1px);
  background-color: transparent;
  padding-inline: calc(var(--spacing) * 9);
  padding-block: calc(var(--spacing) * 5);
  text-align: center;
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 10);
  }
  @media (width >= 640px) {
    padding-block: calc(var(--spacing) * 8);
  }
  --process-circle-size: clamp(280px, 80vw, 340px);
  flex: 0 0 var(--process-circle-size);
  width: var(--process-circle-size);
  height: var(--process-circle-size);
  min-width: 280px;
  min-height: 0;
  max-width: 340px;
  max-height: var(--process-circle-size);
  aspect-ratio: 1 / 1;
  &::before {
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: calc(infinity * 1px);
    border-color: var(--color-primary-500);
  }
  &.bg-white::before {
    border-style: var(--tw-border-style);
    border-width: 1px;
    background-color: var(--color-white);
  }
  &.bg-primary-400::before {
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--color-primary-400);
  }
  &.bg-white, &.bg-primary-400, &.border-primary-500 {
    border-color: transparent;
  }
  & > * {
    position: relative;
    z-index: 2;
  }
  &:not(:first-child) {
    margin-inline-start: calc(var(--spacing) * -6);
    @media (width >= 1440px) {
      margin-inline-start: 0;
    }
  }
  @media (width >= 1440px) {
    margin-inline: auto;
  }
  @media (width >= 1440px) {
    aspect-ratio: 1 / 1;
  }
  @media (width >= 1440px) {
    width: 340px;
    height: 340px;
  }
  @media (width >= 1440px) {
    max-height: 340px;
  }
  @media (width >= 1440px) {
    min-height: 0;
  }
  @media (width >= 1440px) {
    max-width: 340px;
  }
  @media (width >= 1440px) {
    min-width: 340px;
  }
  @media (width >= 1440px) {
    flex: 0 0 340px;
  }
  @media (width >= 1440px) {
    padding-inline: calc(var(--spacing) * 14);
  }
  @media (width >= 1440px) {
    padding-block: calc(var(--spacing) * 8);
  }
  &:nth-child(1) {
    z-index: 1;
    @media (width >= 1440px) {
      --tw-translate-x: calc(var(--spacing) * 12);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:nth-child(2) {
    z-index: 2;
    @media (width >= 1440px) {
      --tw-translate-x: calc(var(--spacing) * 4.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:nth-child(3) {
    z-index: 3;
    @media (width >= 1440px) {
      --tw-translate-x: calc(var(--spacing) * -4.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:nth-child(4) {
    z-index: 4;
    @media (width >= 1440px) {
      --tw-translate-x: calc(var(--spacing) * -12);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:nth-child(5) {
    z-index: 5;
  }
}
.longevity-process-track:has(> :nth-child(5):last-child) .longevity-process-circle {
  --process-circle-size: clamp(280px, 80vw, 340px);
  flex: 0 0 var(--process-circle-size);
  width: var(--process-circle-size);
  height: var(--process-circle-size);
  min-width: 280px;
  min-height: 0;
  max-width: 340px;
  max-height: var(--process-circle-size);
  @media (width >= 1440px) {
    margin-inline: 0;
  }
  @media (width >= 1440px) {
    width: 340px;
    height: 340px;
  }
  @media (width >= 1440px) {
    max-height: 340px;
  }
  @media (width >= 1440px) {
    min-height: 0;
  }
  @media (width >= 1440px) {
    max-width: 340px;
  }
  @media (width >= 1440px) {
    min-width: 340px;
  }
  @media (width >= 1440px) {
    flex: 0 0 340px;
  }
  @media (width >= 1440px) {
    padding-inline: calc(var(--spacing) * 14);
  }
  @media (width >= 1440px) {
    padding-block: calc(var(--spacing) * 8);
  }
  &:not(:first-child) {
    margin-inline-start: calc(var(--spacing) * -6);
    @media (width >= 1440px) {
      margin-left: calc(var(--spacing) * -8);
    }
  }
  &:nth-child(1), &:nth-child(2), &:nth-child(3), &:nth-child(4), &:nth-child(5) {
    @media (width >= 1440px) {
      --tw-translate-x: 0;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
}
.longevity-process-badge {
  display: flex;
  width: calc(var(--spacing) * 8);
  height: calc(var(--spacing) * 8);
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary-500);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
}
.injection-subnav-wrap {
  position: relative;
  right: calc(1 / 2 * 100%);
  left: calc(1 / 2 * 100%);
  margin-right: calc(50vw * -1);
  margin-left: calc(50vw * -1);
  width: 100vw;
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  padding-top: calc(var(--spacing) * 6);
  @media (width >= 1080px) {
    padding-top: calc(var(--spacing) * 8);
  }
}
.injection-subnav {
  margin-inline: auto;
  display: flex;
  max-width: var(--container-4xl);
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  column-gap: calc(var(--spacing) * 6);
  row-gap: calc(var(--spacing) * 3);
  padding-inline: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    column-gap: calc(var(--spacing) * 12);
  }
  @media (width >= 1820px) {
    padding-inline: 0;
  }
}
.injection-subnav-link {
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  white-space: pre-line;
  color: color-mix(in srgb, #202020 40%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 40%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:hover {
    @media (hover: hover) {
      color: var(--color-black);
    }
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.injection-subnav-link.is-active {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
:lang(en) .injection-subnav-link {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 1080px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.injection-content-grid {
  display: grid;
  min-width: 0;
  gap: calc(var(--spacing) * 8);
  @media (width >= 1080px) {
    grid-template-columns: minmax(0,1fr) 750px;
  }
  @media (width >= 1080px) {
    align-items: flex-start;
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 20);
  }
}
.injection-content-grid > * {
  min-width: 0;
}
.pain-care-page {
  min-width: 0;
  overflow-x: clip;
}
.pain-care-hero-media {
  aspect-ratio: 1280/580;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
  @media (width >= 1080px) {
    aspect-ratio: 1280/446;
  }
  @media (width >= 1080px) {
    border-radius: var(--radius-2xl);
  }
}
.pain-care-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.pain-care-hero-subtitle {
  margin-inline: auto;
  max-width: 896px;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 640px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: 32px;
  }
}
.pain-care-intro-desc {
  margin-inline: auto;
  max-width: calc(var(--spacing) * 320);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in srgb, #202020 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 90%, transparent);
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  white-space: pre-line;
  word-break: keep-all;
  overflow-wrap: break-word;
}
.pain-care-principle-media {
  aspect-ratio: 1280/580;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
  @media (width >= 1080px) {
    aspect-ratio: 1280/347;
  }
}
.pain-care-principle-media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.pain-care-swiper-wrap {
  margin-inline: auto;
  width: 100%;
  max-width: calc(var(--spacing) * 320);
  min-width: 0;
  padding-inline: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1820px) {
    padding-inline: 0;
  }
}
.pain-care-page .injection-subnav-wrap {
  min-width: 0;
  overflow-x: clip;
}
.pain-care-page .grid.lg\:grid-cols-2 {
  min-width: 0;
}
.pain-care-page .grid.lg\:grid-cols-2 > * {
  min-width: 0;
}
.pain-care-page .sports-injury-why-list li {
  align-items: flex-start;
  padding: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    align-items: center;
  }
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 6);
  }
}
@media (width < 820px) {
  .pain-care-page .injection-subnav-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    text-align: center;
    padding-bottom: 0.5rem;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .pain-care-page .injection-subnav-wrap::-webkit-scrollbar {
    display: none;
  }
  .pain-care-page .injection-subnav {
    display: inline-flex;
    flex-wrap: nowrap;
    width: max-content;
    justify-content: center;
    overflow-x: visible;
  }
  .pain-care-page .injection-subnav-link {
    flex-shrink: 0;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .pain-care-page .process-timeline-section:has(.physical-therapy-benefits-grid), .pain-care-page .process-timeline:has(.physical-therapy-benefits-grid), .pain-care-page .physical-therapy-benefits-grid {
    --benefit-circle-size: 140px;
  }
  .pain-care-page .physical-therapy-benefits-grid {
    gap: 2rem;
  }
  .pain-care-page .physical-therapy-benefit-desc {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .pain-care-page .physical-therapy-method-card {
    padding: 1rem;
  }
  .pain-care-page .physical-therapy-method-card h3 {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .pain-care-page .physical-therapy-method-card p {
    margin-top: 0.75rem;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .pain-care-page .injection-content-grid {
    margin-top: 1.5rem;
    gap: 1.5rem;
  }
  .pain-care-imaging-track {
    gap: 1.5rem;
  }
  .pain-care-imaging-card {
    min-width: 0;
  }
}
.injection-process-track {
  position: relative;
  margin-inline: auto;
  display: flex;
  max-width: none;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  width: 100svw;
  margin-inline: calc(50% - 50svw);
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
  --tw-scroll-snap-strictness: mandatory;
  @media (width >= 1440px) {
    margin-inline: auto;
  }
  @media (width >= 1440px) {
    width: 100%;
  }
  @media (width >= 1440px) {
    max-width: 100%;
  }
  @media (width >= 1440px) {
    scroll-snap-type: none;
  }
  @media (width >= 1440px) {
    flex-wrap: nowrap;
  }
  @media (width >= 1440px) {
    align-items: center;
  }
  @media (width >= 1440px) {
    justify-content: center;
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
  @media (width >= 1440px) {
    padding-inline: 0;
  }
  @media (width >= 1440px) {
    padding-bottom: 0;
  }
}
.injection-process-track .longevity-process-circle {
  box-sizing: border-box;
  flex-shrink: 0;
  scroll-snap-align: center;
  align-self: center;
  overflow: visible;
  @media (width >= 1440px) {
    margin-inline: 0;
  }
  --process-circle-size: clamp(280px, 80vw, 320px);
  flex: 0 0 var(--process-circle-size);
  width: var(--process-circle-size);
  height: var(--process-circle-size);
  min-width: 280px;
  min-height: 0;
  max-width: 320px;
  max-height: var(--process-circle-size);
  aspect-ratio: 1 / 1;
  padding-inline: calc(var(--spacing) * 8);
  padding-block: calc(var(--spacing) * 5);
  @media (width >= 640px) {
    padding-inline: calc(var(--spacing) * 10);
  }
  @media (width >= 640px) {
    padding-block: calc(var(--spacing) * 8);
  }
  @media (width >= 1440px) {
    width: 272px;
    height: 272px;
  }
  @media (width >= 1440px) {
    max-height: 272px;
  }
  @media (width >= 1440px) {
    min-height: 0;
  }
  @media (width >= 1440px) {
    max-width: 272px;
  }
  @media (width >= 1440px) {
    min-width: 272px;
  }
  @media (width >= 1440px) {
    flex: 0 0 272px;
  }
  @media (width >= 1440px) {
    padding-inline: calc(var(--spacing) * 12);
  }
  @media (width >= 1440px) {
    padding-block: calc(var(--spacing) * 10);
  }
  &:not(:first-child) {
    margin-inline-start: calc(var(--spacing) * -6);
    @media (width >= 1440px) {
      margin-inline-start: calc(var(--spacing) * -6);
    }
  }
}
.injection-pdrn-condition-image {
  overflow: hidden;
  img {
    height: 100%;
    width: 400%;
    max-width: none;
    object-fit: cover;
  }
  &--1 img {
    object-position: left;
  }
  &--2 img {
    object-position: 33% center;
  }
  &--3 img {
    object-position: 66% center;
  }
  &--4 img {
    object-position: right;
  }
}
.injection-botox-condition-image {
  overflow: hidden;
  img {
    height: 295%;
    width: 613%;
    max-width: none;
    object-fit: cover;
  }
  &--1 img {
    object-position: 4% 26%;
  }
  &--2 img {
    object-position: 20% 26%;
  }
  &--3 img {
    object-position: 36% 26%;
  }
}
.injection-condition-section {
  position: relative;
  overflow: hidden;
  padding-block: calc(var(--spacing) * 16);
  @media (width >= 1080px) {
    padding-top: 120px;
  }
  @media (width >= 1080px) {
    padding-bottom: 28px;
  }
}
.injection-condition-section::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  --tw-gradient-position: to bottom in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: color-mix(in oklab, var(--color-primary-500) 10%, transparent);
  --tw-gradient-to: transparent;
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
}
.injection-condition-image {
  margin-inline: auto;
  aspect-ratio: 308/360;
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
  @media (width >= 1080px) {
    height: 360px;
  }
  @media (width >= 1080px) {
    width: 308px;
  }
}
.injection-condition-track {
  --condition-card-width: 308px;
  position: relative;
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 12);
  display: flex;
  max-width: none;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(var(--spacing) * 3);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
  width: 100svw;
  margin-inline: calc(50% - 50svw);
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
  --tw-scroll-snap-strictness: mandatory;
  @media (width >= 1440px) {
    margin-inline: auto;
  }
  @media (width >= 1440px) {
    display: grid;
  }
  @media (width >= 1440px) {
    width: 100%;
  }
  @media (width >= 1440px) {
    max-width: 100%;
  }
  @media (width >= 1440px) {
    scroll-snap-type: none;
  }
  @media (width >= 1440px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 1440px) {
    gap: calc(var(--spacing) * 8);
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
  @media (width >= 1440px) {
    padding: 0;
  }
  @media (width >= 1440px) {
    padding-bottom: 0;
  }
  @media (width >= 1440px) {
    scroll-padding-inline: 0;
  }
}
.injection-condition-card {
  flex-shrink: 0;
  scroll-snap-align: start;
  flex: 0 0 var(--condition-card-width);
  width: var(--condition-card-width);
  @media (width >= 1440px) {
    width: auto;
  }
  @media (width >= 1440px) {
    min-width: 0;
  }
  @media (width >= 1440px) {
    flex-shrink: 1;
  }
  @media (width >= 1440px) {
    scroll-snap-align: none;
  }
}
.injection-condition-card .injection-condition-image {
  max-width: none;
  @media (width >= 1080px) {
    height: 360px;
  }
  @media (width >= 1080px) {
    width: 308px;
  }
}
@media (width < 1440px) {
  .injection-condition-track {
    touch-action: pan-y pinch-zoom;
    overscroll-behavior-x: contain;
    overflow-y: hidden;
    width: calc(100% + 2rem);
    max-width: none;
    margin-inline: -1rem;
  }
}
@media (width >= 480px) and (width < 1440px) {
  .injection-condition-track {
    width: calc(100% + 4rem);
    margin-inline: -2rem;
  }
}
.pain-care-imaging-track {
  --imaging-card-width: 624px;
  position: relative;
  margin-inline: auto;
  display: flex;
  max-width: none;
  min-width: 0;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: calc(var(--spacing) * 3);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 6);
  }
  width: 100svw;
  margin-inline: calc(50% - 50svw);
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
  --tw-scroll-snap-strictness: mandatory;
  @media (width >= 1080px) {
    margin-inline: auto;
  }
  @media (width >= 1080px) {
    display: grid;
  }
  @media (width >= 1080px) {
    width: 100%;
  }
  @media (width >= 1080px) {
    max-width: 100%;
  }
  @media (width >= 1080px) {
    scroll-snap-type: none;
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    overflow: visible;
  }
  @media (width >= 1080px) {
    padding: 0;
  }
  @media (width >= 1080px) {
    padding-bottom: 0;
  }
  @media (width >= 1080px) {
    scroll-padding-inline: 0;
  }
}
.pain-care-imaging-card {
  min-width: 0;
  flex-shrink: 0;
  scroll-snap-align: start;
  flex: 0 0 var(--imaging-card-width);
  width: var(--imaging-card-width);
  @media (width >= 1080px) {
    width: auto;
  }
  @media (width >= 1080px) {
    min-width: 0;
  }
  @media (width >= 1080px) {
    flex-shrink: 1;
  }
  @media (width >= 1080px) {
    scroll-snap-align: none;
  }
}
.pain-care-imaging-card .aspect-\[624\/280\] {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
@media (width < 1080px) {
  .pain-care-imaging-track {
    touch-action: pan-y pinch-zoom;
    overscroll-behavior-x: contain;
    overflow-y: hidden;
    width: calc(100% + 2rem);
    max-width: none;
    margin-inline: -1rem;
  }
}
@media (width >= 680px) and (width < 1080px) {
  .pain-care-imaging-track {
    width: calc(100% + 4rem);
    margin-inline: -2rem;
  }
}
.injection-related-section, .growth-management-section {
  position: relative;
  overflow: hidden;
  padding-block: calc(var(--spacing) * 12);
  @media (width >= 1080px) {
    padding-top: calc(var(--spacing) * 24);
  }
  @media (width >= 1080px) {
    padding-bottom: calc(var(--spacing) * 20);
  }
  background-color: #3377ff;
  background-image: url("/images/contents/injection-related-bg.jpg");
  background-size: cover;
  background-position: center;
}
.injection-related-grid {
  margin-top: calc(var(--spacing) * 10);
  display: grid;
  min-width: 0;
  gap: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    margin-top: calc(var(--spacing) * 12);
  }
  @media (width >= 820px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 5);
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.shoulder-diseases-mobile, .joint-diseases-mobile {
  position: relative;
  min-height: 300px;
  flex-direction: column;
}
.shoulder-diseases-title, .joint-diseases-title {
  flex-shrink: 0;
  padding-inline: calc(var(--spacing) * 4);
  padding-top: calc(var(--spacing) * 4);
  padding-bottom: var(--spacing);
  text-align: center;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
.shoulder-diseases-scroll-hint, .joint-diseases-scroll-hint {
  flex-shrink: 0;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 3);
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in srgb, #202020 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
}
.shoulder-diseases-scroll, .joint-diseases-scroll {
  display: flex;
  min-height: 0;
  min-width: 0;
  flex: 1;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: calc(var(--spacing) * 2);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-bottom: 0;
  scroll-padding-inline: 1rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.shoulder-diseases-scroll {
  padding-inline: calc(var(--spacing) * 4);
}
.joint-diseases-scroll {
  padding-inline: 0;
}
.shoulder-diseases-scroll::-webkit-scrollbar, .joint-diseases-scroll::-webkit-scrollbar {
  display: none;
}
.shoulder-diseases-card {
  position: relative;
  width: calc(100vw - 3rem);
  max-width: 17.75rem;
  flex-shrink: 0;
  overflow: hidden;
  --tw-leading: 0;
  line-height: 0;
  @media (width >= 640px) {
    max-width: 19rem;
  }
}
.joint-diseases-card {
  position: relative;
  flex-shrink: 0;
  overflow: hidden;
  --tw-leading: 0;
  line-height: 0;
}
.joint-diseases-card--wide {
  margin-inline: calc(var(--spacing) * 4);
  width: auto;
  max-width: none;
  flex-shrink: 0;
}
.joint-diseases-card--shoulder {
  aspect-ratio: 579 / 180;
  min-width: min(100%, 18.125rem);
}
.joint-diseases-card--shoulder-en {
  aspect-ratio: 726 / 180;
  min-width: min(100%, 22.6875rem);
}
.joint-diseases-card--knee {
  aspect-ratio: 487 / 180;
  min-width: min(100%, 15.25rem);
}
.joint-diseases-card--knee-en {
  aspect-ratio: 634 / 180;
  min-width: min(100%, 19.8125rem);
}
.joint-diseases-card--hip {
  aspect-ratio: 574 / 180;
  min-width: min(100%, 17.875rem);
}
.joint-diseases-card--hip-en {
  aspect-ratio: 739 / 180;
  min-width: min(100%, 23.09375rem);
}
.joint-diseases-card--neck {
  aspect-ratio: 510 / 180;
  min-width: min(100%, 15.9375rem);
}
.joint-diseases-card--neck-en {
  aspect-ratio: 625 / 180;
  min-width: min(100%, 19.53125rem);
}
.joint-diseases-card--elbow {
  aspect-ratio: 529 / 180;
  min-width: min(100%, 16.53125rem);
}
.joint-diseases-card--elbow-en {
  aspect-ratio: 600 / 180;
  min-width: min(100%, 18.75rem);
}
.joint-diseases-card--hand {
  aspect-ratio: 671 / 530;
  min-width: min(100%, 21rem);
}
.joint-diseases-card--hand-en {
  aspect-ratio: 464 / 180;
  min-width: min(100%, 14.5rem);
}
.joint-diseases-card--foot {
  aspect-ratio: 836 / 486;
  min-width: min(100%, 21rem);
}
.joint-diseases-card--foot-en {
  aspect-ratio: 418 / 180;
  min-width: min(100%, 13.0625rem);
}
.joint-diseases-card--pelvis {
  aspect-ratio: 596 / 181;
  min-width: min(100%, 18.625rem);
}
.joint-diseases-card--traffic {
  aspect-ratio: 597 / 190;
  min-width: min(100%, 18.65625rem);
}
.joint-diseases-card--traffic-en {
  aspect-ratio: 836 / 180;
  min-width: min(100%, 26.125rem);
}
.shoulder-diseases-card img, .joint-diseases-card img {
  display: block;
  height: auto;
  width: 100%;
}
.joint-diseases-card--wide .image-hotspot-wrap {
  --hotspot-dot: 10px;
  --hotspot-pulse: 21px;
  --hotspot-ring: 26px;
}
.joint-diseases-card--wide img {
  height: 12.5rem;
  width: auto;
  max-width: none;
  @media (width >= 640px) {
    height: 13.5rem;
  }
}
.joint-diseases-card--hand img {
  height: 18rem;
  width: auto;
  max-width: none;
  @media (width >= 640px) {
    height: 19rem;
  }
}
.joint-diseases-card--foot img {
  height: 14rem;
  width: auto;
  max-width: none;
  @media (width >= 640px) {
    height: 15rem;
  }
}
@media (width >= 640px) and (width < 820px) {
  .joint-diseases-scroll {
    justify-content: center;
    overflow-x: hidden;
    padding-inline: calc(var(--spacing) * 4);
  }
  .joint-diseases-card--wide {
    margin-inline: 0;
    width: 100%;
    max-width: 100%;
    min-width: 100%;
  }
  .joint-diseases-card--wide img {
    height: auto;
    width: 100%;
    max-width: 100%;
    min-width: 100%;
  }
}
.joint-diseases-pc {
  margin-inline: auto;
  aspect-ratio: 1280/658;
  width: 100%;
  max-width: 1280px;
}
.joint-diseases-pc img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
}
.growth-process-grid {
  margin-inline: calc(var(--spacing) * -4);
  display: flex;
  min-width: 0;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 4);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: var(--spacing);
  @media (width >= 820px) {
    margin-inline: calc(var(--spacing) * -8);
  }
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 5);
  }
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    margin-inline: 0;
  }
  @media (width >= 1080px) {
    display: grid;
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    overflow: visible;
  }
  @media (width >= 1080px) {
    padding-inline: 0;
  }
  @media (width >= 1080px) {
    padding-bottom: 0;
  }
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.growth-process-grid::-webkit-scrollbar {
  display: none;
}
.growth-process-card {
  width: 19rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  background-color: var(--color-white);
  @media (width >= 640px) {
    width: 20.5rem;
  }
  @media (width >= 1080px) {
    width: auto;
  }
  @media (width >= 1080px) {
    min-width: 0;
  }
  @media (width >= 1080px) {
    border-radius: var(--radius-2xl);
  }
}
.growth-lifestyle-grid {
  margin-inline: calc(var(--spacing) * -4);
  display: flex;
  min-width: 0;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 4);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: var(--spacing);
  text-align: center;
  @media (width >= 820px) {
    margin-inline: calc(var(--spacing) * -8);
  }
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 5);
  }
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    margin-inline: 0;
  }
  @media (width >= 1080px) {
    display: grid;
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    overflow: visible;
  }
  @media (width >= 1080px) {
    padding-inline: 0;
  }
  @media (width >= 1080px) {
    padding-bottom: 0;
  }
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.growth-lifestyle-grid::-webkit-scrollbar {
  display: none;
}
.growth-lifestyle-card {
  width: 15rem;
  flex-shrink: 0;
  @media (width >= 640px) {
    width: 17rem;
  }
  @media (width >= 1080px) {
    width: auto;
  }
  @media (width >= 1080px) {
    min-width: 0;
  }
}
.injection-related-card {
  position: relative;
  display: flex;
  min-width: 0;
  cursor: pointer;
  flex-direction: column;
  border-radius: var(--radius-lg);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 5);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  @media (width >= 640px) {
    min-height: calc(var(--spacing) * 59);
  }
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 8);
  }
}
.growth-management-card {
  position: relative;
  display: flex;
  min-height: calc(var(--spacing) * 59);
  flex-direction: column;
  border-radius: var(--radius-lg);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 8);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.injection-related-card:hover, .growth-management-card:hover {
  --tw-translate-y: calc(var(--spacing) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-shadow: 0 12px 32px var(--tw-shadow-color, rgba(0,0,0,0.18));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.injection-related-card:hover .injection-related-icon, .growth-management-card:hover .growth-management-icon {
  background-color: color-mix(in srgb, #3377ff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 20%, transparent);
  }
}
.injection-related-card:hover .injection-related-card__title, .growth-management-card:hover h3 {
  color: var(--color-primary-500);
}
.injection-related-icon {
  position: absolute;
  top: calc(var(--spacing) * 5);
  right: calc(var(--spacing) * 5);
  display: flex;
  width: calc(var(--spacing) * 15);
  height: calc(var(--spacing) * 15);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #3377ff 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 10%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  @media (width >= 640px) {
    top: calc(var(--spacing) * 8);
  }
  @media (width >= 640px) {
    right: calc(var(--spacing) * 8);
  }
  @media (width >= 640px) {
    width: calc(var(--spacing) * 20);
    height: calc(var(--spacing) * 20);
  }
}
.growth-management-icon {
  position: absolute;
  top: calc(var(--spacing) * 8);
  right: calc(var(--spacing) * 8);
  display: flex;
  width: calc(var(--spacing) * 20);
  height: calc(var(--spacing) * 20);
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #3377ff 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 10%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.injection-related-icon img {
  width: calc(var(--spacing) * 9);
  height: calc(var(--spacing) * 9);
  object-fit: contain;
  @media (width >= 640px) {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
  }
}
.growth-management-icon img {
  width: calc(var(--spacing) * 12);
  height: calc(var(--spacing) * 12);
  object-fit: contain;
}
.injection-related-card__title {
  margin-top: calc(var(--spacing) * 14);
  padding-right: calc(var(--spacing) * 16);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-black);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 16);
  }
  @media (width >= 640px) {
    padding-right: 0;
  }
  @media (width >= 640px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.injection-related-card__desc {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  white-space: pre-line;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 6);
  }
  @media (width >= 640px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.injection-imaging-caption {
  position: relative;
  display: flex;
  gap: calc(var(--spacing) * 4);
  border-bottom-right-radius: var(--radius-lg);
  border-bottom-left-radius: var(--radius-lg);
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 5);
  @media (width >= 1080px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    padding-block: calc(var(--spacing) * 6);
  }
}
.injection-imaging-caption::before {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  border-bottom-right-radius: var(--radius-lg);
  border-bottom-left-radius: var(--radius-lg);
  background-color: rgba(32,32,32,0.05);
  opacity: 0.22;
}
.injection-imaging-caption > * {
  position: relative;
  z-index: 1;
}
.longevity-process-circle h3 {
  width: 100%;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-black);
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.longevity-process-circle p {
  margin-top: calc(var(--spacing) * 4);
  width: 100%;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.45;
  line-height: 1.45;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  max-width: 16.5rem;
  margin-inline: auto;
}
@media (width >= 1440px) {
  .longevity-process-circle p {
    max-width: none;
  }
}
.injection-process-track .longevity-process-circle h3 {
  @media (width >= 1440px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.injection-process-track .longevity-process-circle p {
  @media (width >= 1440px) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  @media (width >= 1440px) {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
}
.sports-elbow-process-circle h3 {
  width: 100%;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  white-space: pre-line;
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.sports-elbow-process-circle p {
  margin-top: calc(var(--spacing) * 3);
  width: 100%;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.45;
  line-height: 1.45;
  white-space: pre-line;
  color: color-mix(in oklab, #202020 80%, transparent);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 4);
  }
  max-width: 15.5rem;
  margin-inline: auto;
}
:lang(en) .sports-elbow-process-circle h3 {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
:lang(en) .sports-elbow-process-circle p {
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 3);
  }
  max-width: 14.5rem;
}
:lang(en) .longevity-process-circle h3 {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 1440px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
:lang(en) .longevity-process-circle p {
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 3);
  }
  max-width: 14.5rem;
}
.shingles-step-grid {
  margin-inline: calc(var(--spacing) * -4);
  display: flex;
  min-width: 0;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 6);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: var(--spacing);
  @media (width >= 820px) {
    margin-inline: calc(var(--spacing) * -8);
  }
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 8);
  }
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1440px) {
    margin-inline: 0;
  }
  @media (width >= 1440px) {
    display: grid;
  }
  @media (width >= 1440px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 1440px) {
    overflow: visible;
  }
  @media (width >= 1440px) {
    padding-inline: 0;
  }
  @media (width >= 1440px) {
    padding-bottom: 0;
  }
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.shingles-step-grid::-webkit-scrollbar {
  display: none;
}
.shingles-step-card {
  display: flex;
  width: 296px;
  flex-shrink: 0;
  flex-direction: column;
  @media (width >= 1440px) {
    width: auto;
  }
  @media (width >= 1440px) {
    max-width: none;
  }
}
.shingles-step-card__media {
  position: relative;
  aspect-ratio: 296/280;
  width: 100%;
  overflow: hidden;
  border-top-left-radius: var(--radius-lg);
  border-top-right-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
}
.shingles-step-card__img {
  position: absolute;
  max-width: none;
  object-fit: cover;
}
.shingles-step-card__img--1 {
  height: 185.71%;
  width: 175.68%;
  left: -19.7%;
  top: -68.14%;
}
.shingles-step-card__img--2 {
  height: 173.57%;
  width: 164.19%;
  left: -29.12%;
  top: -58.25%;
}
.shingles-step-card__img--3 {
  height: 182.14%;
  width: 172.3%;
  left: -32.63%;
  top: -58.81%;
}
.shingles-step-card__img--4 {
  height: 206.43%;
  width: 195.27%;
  left: -72.54%;
  top: -97.86%;
}
.shingles-step-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding-top: calc(var(--spacing) * 8);
}
.shingles-step-card__label {
  display: flex;
  align-items: flex-start;
  gap: 22px;
}
.shingles-step-card__num {
  width: 23px;
  flex-shrink: 0;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  color: var(--color-primary-500);
  line-height: 20px;
}
.shingles-step-card__title {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #202020;
  line-height: 20px;
}
.shingles-step-card__desc {
  margin-top: 18px;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: #202020;
  @media (width >= 1440px) {
    padding-left: 45px;
  }
}
.shingles-process-grid {
  margin-top: calc(var(--spacing) * 10);
  display: grid;
  align-items: stretch;
  justify-content: center;
  gap: calc(var(--spacing) * 6);
  @media (width >= 640px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 14);
  }
  @media (width >= 1440px) {
    grid-template-columns: repeat(4,302px);
  }
}
.shingles-process-card {
  display: flex;
  height: 100%;
  min-height: 347px;
  width: 100%;
  flex-direction: column;
  overflow: hidden;
  border-radius: var(--radius-2xl);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in oklab, #202020 10%, transparent);
  @media (width >= 1440px) {
    width: 302px;
  }
}
.shingles-process-card__media {
  aspect-ratio: 302/200;
  width: 100%;
  flex-shrink: 0;
  overflow: hidden;
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
}
.shingles-process-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.shingles-process-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 8);
  padding-top: calc(var(--spacing) * 8);
  padding-bottom: calc(var(--spacing) * 8);
}
.shingles-process-card__header {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--spacing) * 2);
}
.shingles-process-card__step {
  display: inline-flex;
  width: 27px;
  height: 27px;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary-800);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  margin-top: 0.15em;
}
.shingles-process-card__label {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #202020;
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
@media (width >= 640px) {
  .shingles-process-card__label {
    min-height: calc(1.4em * 2);
  }
}
.shingles-process-card__desc {
  margin: 0;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in oklab, #202020 80%, transparent);
}
.shingles-tab-section {
  --tab-visual-w: 434;
  --tab-visual-h: 530;
  --tab-layout-max-w: 1048px;
}
.shingles-tab-section .sports-elbow-tab-intro h2 {
  --tw-leading: 1.4;
  line-height: 1.4;
}
.shingles-tab-section .sports-elbow-tab-intro p {
  margin-inline: auto;
  margin-top: calc(var(--spacing) * 3);
  max-width: 821px;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-white);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 3);
  }
}
.shingles-tab-label {
  text-align: center;
  font-size: 32px;
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #202020;
}
.shingles-tab-section .sports-elbow-tab-checklist li {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.shingles-tab-section .sports-elbow-tab-visual {
  --tab-visual-w: 434;
  --tab-visual-h: 530;
}
.shingles-tab-section .sports-elbow-tab-image {
  --tab-img-w: 434;
  --tab-img-h: 530;
  left: 100%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: right bottom;
}
@media (width >= 1024px) {
  .shingles-tab-section .sports-elbow-tab-visual {
    width: 434px;
    max-width: 434px;
    height: 530px;
    max-height: 530px;
    aspect-ratio: auto;
  }
  .shingles-tab-section .sports-elbow-tab-image {
    width: 434px;
    height: 530px;
    max-width: 434px;
    max-height: 530px;
  }
}
@media (width >= 1320px) {
  .shingles-tab-section .sports-elbow-tab-layout {
    grid-template-columns: 434px 500px;
    gap: 114px;
    height: 530px;
    align-items: end;
    justify-content: center;
  }
  .shingles-tab-section .sports-elbow-tab-visual {
    margin-inline: 0;
    height: 530px;
    max-height: 530px;
    flex-shrink: 0;
    width: 434px;
    max-width: 434px;
  }
  .shingles-tab-section .sports-elbow-tab-checklist-wrap {
    margin-inline: 0;
    height: 530px;
    flex-shrink: 0;
    justify-content: center;
    width: 500px;
    max-width: 500px;
  }
}
@media (width < 1320px) {
  .shingles-tab-section .sports-elbow-tab-visual {
    width: min(100%, 434px);
  }
}
html[lang^="en"] .shingles-tab-section {
  --tab-visual-w: 487;
  --tab-layout-max-w: 1101px;
}
html[lang^="en"] .shingles-tab-section .sports-elbow-tab-visual {
  --tab-visual-w: 487;
}
html[lang^="en"] .shingles-tab-section .sports-elbow-tab-image {
  --tab-img-w: 487;
}
@media (width >= 1024px) {
  html[lang^="en"] .shingles-tab-section .sports-elbow-tab-visual {
    width: 487px;
    max-width: 487px;
  }
  html[lang^="en"] .shingles-tab-section .sports-elbow-tab-image {
    width: 487px;
    max-width: 487px;
  }
}
@media (width >= 1320px) {
  html[lang^="en"] .shingles-tab-section .sports-elbow-tab-layout {
    grid-template-columns: 487px 500px;
  }
  html[lang^="en"] .shingles-tab-section .sports-elbow-tab-visual {
    width: 487px;
    max-width: 487px;
  }
}
@media (width < 1320px) {
  html[lang^="en"] .shingles-tab-section .sports-elbow-tab-visual {
    width: min(100%, 487px);
  }
}
.shingles-related-section {
  overflow: hidden;
}
.shingles-related-section__bg {
  pointer-events: none;
  position: absolute;
  inset: 0;
  background-color: var(--color-primary-500);
}
.shingles-related-section__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 10%;
  background-image: url("/images/contents/shingles-related-bg.jpg");
}
.shingles-related-intro {
  margin-inline: auto;
  width: 100%;
}
.shingles-related-banner {
  margin-top: 50px;
  width: 100%;
}
.shingles-related-banner__media {
  position: relative;
  aspect-ratio: 1276/480;
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-lg);
  @media (width >= 1080px) {
    aspect-ratio: 1276/272;
  }
  @media (width >= 1080px) {
    border-radius: var(--radius-2xl);
  }
}
.shingles-related-banner__img {
  position: absolute;
  max-width: none;
  object-fit: cover;
  height: 181.13%;
  width: 115.83%;
  left: -4.72%;
  top: -52.94%;
}
.shingles-related-banner__overlay {
  position: absolute;
  inset: 0;
  border-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
  }
  @media (width >= 1080px) {
    border-radius: var(--radius-2xl);
  }
}
.shingles-related-grid {
  margin-top: calc(var(--spacing) * 6);
  display: grid;
  align-items: stretch;
  justify-content: center;
  gap: calc(var(--spacing) * 6);
  @media (width >= 640px) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 1440px) {
    grid-template-columns: repeat(4,302px);
  }
}
.shingles-related-card {
  position: relative;
  box-sizing: border-box;
  display: flex;
  height: 100%;
  min-height: 200px;
  width: 100%;
  flex-direction: column;
  border-radius: var(--radius-lg);
  background-color: var(--color-white);
  padding-inline: calc(var(--spacing) * 6);
  padding-top: calc(var(--spacing) * 6);
  padding-bottom: calc(var(--spacing) * 6);
  @media (width >= 1440px) {
    width: 302px;
  }
}
.shingles-related-icon {
  position: absolute;
  top: calc(var(--spacing) * 6);
  right: calc(var(--spacing) * 6);
  display: flex;
  width: 60px;
  height: 60px;
  align-items: center;
  justify-content: center;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #3377ff 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 10%, transparent);
  }
}
.shingles-related-icon img {
  object-fit: contain;
}
.shingles-related-card__content {
  margin-top: 77px;
  display: flex;
  width: 100%;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}
.shingles-related-card h3 {
  margin: 0;
  width: 100%;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #202020;
  @media (width >= 640px) {
    font-size: 20px;
  }
}
@media (width >= 640px) {
  .shingles-related-card h3 {
    min-height: calc(1.4em * 2);
  }
}
.shingles-related-card p {
  margin: 0;
  width: 100%;
  font-size: 14px;
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in oklab, #202020 80%, transparent);
}
:lang(ko) .shingles-related-card--char-break h3, :lang(ko) .shingles-related-card--char-break p {
  word-break: break-all;
  overflow-wrap: anywhere;
}
.shingles-hero-intro p {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in srgb, #202020 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 90%, transparent);
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.shingles-hero-intro p + p {
  margin-top: 0;
}
.shingles-hero-intro strong {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
.shingles-orthopedics-banner {
  aspect-ratio: 1280/347;
  width: 100%;
  overflow: hidden;
  border-radius: var(--radius-2xl);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
}
.shingles-orthopedics-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 20%;
}
.shingles-orthopedics-content {
  margin-top: calc(var(--spacing) * 10);
  display: grid;
  gap: calc(var(--spacing) * 10);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 16);
  }
  @media (width >= 1080px) {
    grid-template-columns: minmax(0,1fr) 750px;
  }
  @media (width >= 1080px) {
    align-items: flex-start;
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 16);
  }
}
.shingles-orthopedics-desc {
  width: 100%;
  max-width: 750px;
  @media (width >= 1080px) {
    width: 750px;
  }
}
.shingles-orthopedics-desc p {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.shingles-orthopedics-desc p + p {
  margin-top: calc(var(--spacing) * 6);
}
.shingles-orthopedics-desc strong {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
#treatment_slide > .longevity-treatment-section, .sports-injury-treatment-slide > .longevity-treatment-section, .longevity-treatment-slide > .longevity-treatment-section {
  padding-top: calc(var(--spacing) * 16);
  @media (width >= 820px) {
    padding-top: calc(var(--spacing) * 24);
  }
}
.longevity-treatment-section {
  overflow-x: hidden;
}
.longevity-treatment-swiper-wrap {
  width: 100%;
  overflow: visible;
  padding-left: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    padding-left: calc(var(--spacing) * 8);
  }
  @media (width >= 1440px) {
    padding-left: max(2rem, calc((100vw - 80rem) / 2));
  }
}
.longevity-treatment-panel {
  display: grid;
  align-items: center;
  gap: calc(var(--spacing) * 8);
  @media (width >= 1080px) {
    grid-template-columns: 672fr 535fr;
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 20);
  }
}
.longevity-treatment-tabs {
  display: flex;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 6);
  overflow-x: auto;
  @media (width >= 1080px) {
    gap: 23px;
  }
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  scroll-snap-type: x proximity;
}
.longevity-treatment-tabs::-webkit-scrollbar {
  display: none;
}
.longevity-treatment-tab {
  scroll-snap-align: center;
}
@media (width < 1024px) {
  .longevity-treatment-tabs {
    width: calc(100% + 2rem);
    max-width: none;
    margin-inline: -1rem;
    padding-inline: 1rem;
    scroll-padding-inline: 1rem;
    gap: 1.25rem;
  }
  .longevity-treatment-tab-label {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
@media (width >= 768px) and (width < 1024px) {
  .longevity-treatment-tabs {
    width: calc(100% + 4rem);
    margin-inline: -2rem;
    padding-inline: 2rem;
    scroll-padding-inline: 2rem;
  }
}
.longevity-treatment-panel > div:first-child {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}
.longevity-treatment-panel > div:first-child img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.longevity-treatment-panel > div:last-child {
  min-width: 0;
}
.longevity-treatment-tab-label {
  display: block;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 820px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
}
.longevity-treatment-slide-title {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  @media (width >= 820px) {
    font-size: 28px;
  }
  @media (width >= 1080px) {
    font-size: 32px;
  }
}
.longevity-treatment-slide-highlight {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-700);
  @media (width >= 820px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.longevity-treatment-slide-desc {
  margin-top: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.6;
  line-height: 1.6;
  white-space: normal;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  @media (width >= 820px) {
    margin-top: calc(var(--spacing) * 6);
  }
  @media (width >= 820px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  @media (width >= 820px) {
    white-space: pre-line;
  }
}
.longevity-treatment-swiper .swiper-slide {
  height: auto;
}
.longevity-treatment-tab.is-active {
  color: var(--color-primary-800);
  opacity: 100%;
}
.longevity-treatment-tab:not(.is-active) {
  color: color-mix(in srgb, #202020 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 20%, transparent);
  }
}
.longevity-treatment-indicator {
  height: calc(var(--spacing) * 0.5);
  width: 0;
  background-color: var(--color-primary-800);
  transition-property: width;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.longevity-treatment-tab.is-active .longevity-treatment-indicator {
  width: 100%;
}
.longevity-faq-item {
  overflow: hidden;
  border-radius: var(--radius-2xl);
  background-color: color-mix(in srgb, #202020 3%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 3%, transparent);
  }
}
.longevity-faq-trigger {
  display: grid;
  width: 100%;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  column-gap: calc(var(--spacing) * 3);
  padding: calc(var(--spacing) * 4);
  text-align: left;
  @media (width >= 820px) {
    column-gap: calc(var(--spacing) * 4);
  }
  @media (width >= 820px) {
    padding: calc(var(--spacing) * 6);
  }
}
.longevity-faq-q-row {
  display: contents;
}
.longevity-faq-q-badge {
  display: flex;
  width: calc(var(--spacing) * 6);
  height: calc(var(--spacing) * 6);
  flex-shrink: 0;
  --tw-translate-y: 1px;
  translate: var(--tw-translate-x) var(--tw-translate-y);
  align-items: center;
  justify-content: center;
  align-self: center;
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, #202020 4%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 4%, transparent);
  }
  font-size: 11px;
  --tw-leading: 1;
  line-height: 1;
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
  @media (width >= 820px) {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  @media (width >= 820px) {
    --tw-translate-y: 0;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  @media (width >= 820px) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.longevity-faq-question {
  min-width: 0;
  align-self: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 820px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.longevity-faq-chevron {
  width: calc(var(--spacing) * 5);
  height: calc(var(--spacing) * 5);
  flex-shrink: 0;
  align-self: center;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  @media (width >= 820px) {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
}
.longevity-faq-chevron svg {
  display: block;
  width: 100%;
  height: 100%;
}
.longevity-faq-panel {
  display: none;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 6);
  }
  @media (width >= 820px) {
    padding-bottom: calc(var(--spacing) * 6);
  }
}
.longevity-faq-answer {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  padding-top: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.6;
  line-height: 1.6;
  white-space: normal;
  color: color-mix(in srgb, #202020 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 80%, transparent);
  }
  @media (width >= 820px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  @media (width >= 820px) {
    --tw-leading: 1.5;
    line-height: 1.5;
  }
  @media (width >= 820px) {
    white-space: pre-line;
  }
}
.longevity-faq-item.is-open .longevity-faq-panel {
  display: block;
}
.longevity-faq-item.is-open .longevity-faq-chevron {
  rotate: 180deg;
}
.longevity-faq-item.is-open {
  background-color: var(--color-primary-800);
}
.longevity-faq-item.is-open .longevity-faq-trigger {
  color: var(--color-white);
}
.longevity-faq-item.is-open .longevity-faq-q-badge {
  background-color: var(--color-white);
  color: var(--color-primary-800);
}
.longevity-faq-item.is-open .longevity-faq-answer {
  border-color: color-mix(in srgb, #fff 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
  }
  color: color-mix(in srgb, #fff 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white) 90%, transparent);
  }
}
.metabolic-stat-value {
  margin-top: calc(var(--spacing) * 6);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: normal;
  color: var(--color-primary-500);
  @media (width >= 820px) {
    white-space: pre-line;
  }
  @media (width >= 1080px) {
    font-size: 20px;
  }
}
.metabolic-causes-grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    gap: calc(var(--spacing) * 5);
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    grid-template-rows: auto auto;
  }
}
.longevity-why-list li {
  align-items: flex-start;
  padding: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    align-items: center;
  }
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 6);
  }
}
.longevity-why-list li span {
  min-width: 0;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  @media (width >= 640px) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
@media (width < 1024px) {
  .longevity-benefits-grid article[class*="min-h-"], .metabolic-causes-grid article[class*="min-h-"] {
    min-height: 240px;
    padding: 1.25rem;
  }
  .longevity-benefits-grid article[class*="min-h-"] .pt-10, .metabolic-causes-grid article[class*="min-h-"] .pt-10 {
    padding-top: 1.5rem;
  }
  .longevity-benefits-grid article h3, .metabolic-causes-grid article h3 {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .longevity-benefits-grid article p.text-lg, .metabolic-causes-grid article p.text-lg {
    margin-top: 1rem;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .longevity-benefits-grid article > p.text-\[48px\], .longevity-benefits-grid article > div > p.text-\[48px\], .metabolic-causes-grid article > p.text-\[48px\], .metabolic-causes-grid article > div > p.text-\[48px\] {
    font-size: 2rem;
  }
  .metabolic-exam-card-image {
    height: 200px;
  }
  .metabolic-exam-card-body {
    min-height: 0;
    padding-inline: 1rem;
    padding-top: 1.5rem;
    padding-bottom: 1.25rem;
  }
  .metabolic-exam-card-title {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .muscle-program-banner .relative.z-10 {
    min-height: 240px;
    padding: 1.25rem;
  }
  .muscle-program-banner h3 {
    margin-top: 1.5rem;
    font-size: var(--text-xl);
    line-height: 1.4;
  }
}
.iv-about-block > div:first-child {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-lg);
}
.iv-about-block > div:first-child img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.iv-about-block {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.iv-about-content {
  margin-top: calc(var(--spacing) * 6);
  display: grid;
  min-width: 0;
  gap: calc(var(--spacing) * 6);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 12);
  }
  @media (width >= 1080px) {
    grid-template-columns: 461px 1fr;
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 16);
  }
}
.iv-about-content > div {
  min-width: 0;
}
.iv-about-block + .iv-about-block {
  margin-top: calc(var(--spacing) * 10);
  @media (width >= 1080px) {
    margin-top: calc(var(--spacing) * 24);
  }
}
.iv-therapy-page {
  min-width: 0;
  overflow-x: clip;
}
.iv-therapy-hero-media {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  border-radius: var(--radius-2xl);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
  @media (width >= 1080px) {
    border-radius: var(--radius-3xl);
  }
}
.iv-therapy-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.iv-therapy-intro {
  padding-block: calc(var(--spacing) * 8);
  @media (width >= 1080px) {
    padding-block: calc(var(--spacing) * 12);
  }
}
.iv-custom-grid {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.iv-custom-grid > article {
  max-width: 100%;
  min-width: 0;
}
.iv-custom-grid .aspect-\[624\/280\] {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}
.iv-custom-grid .aspect-\[624\/280\] img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: cover;
}
.iv-custom-card-body {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  border-bottom-right-radius: var(--radius-lg);
  border-bottom-left-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 2%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 2%, transparent);
  }
  padding: calc(var(--spacing) * 4);
  @media (width >= 640px) {
    padding: calc(var(--spacing) * 6);
  }
  @media (width >= 1080px) {
    min-height: 187px;
  }
  @media (width >= 1080px) {
    padding: calc(var(--spacing) * 8);
  }
}
.iv-custom-card-body > div {
  min-width: 0;
}
.iv-custom-card-body h3 {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  @media (width >= 640px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.iv-custom-card-body p {
  margin-top: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: var(--color-black);
  @media (width >= 640px) {
    margin-top: calc(var(--spacing) * 4);
  }
  @media (width >= 640px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
@media (width < 640px) {
  .iv-therapy-stats .process-timeline-icon {
    width: 120px;
    height: 120px;
  }
  .iv-therapy-stats .grid {
    gap: 2rem;
  }
  .iv-about-content {
    margin-top: 1.25rem;
    gap: 1.25rem;
  }
  .iv-custom-grid {
    margin-top: 2rem;
    gap: 1.5rem;
  }
  .iv-therapy-custom-subtitle {
    margin-top: 1.5rem;
  }
  .iv-therapy-why-desc {
    margin-top: 1.5rem;
  }
}
@media (width < 1024px) {
  .iv-therapy-section {
    padding-block: calc(var(--spacing) * 12);
  }
}
.metabolic-cause-card-01 {
  @media (width >= 1080px) {
    grid-column-start: 1;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.metabolic-cause-card-02 {
  @media (width >= 1080px) {
    grid-column-start: 2;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.metabolic-cause-card-03 {
  @media (width >= 1080px) {
    grid-column-start: 3;
  }
  @media (width >= 1080px) {
    grid-row: span 2 / span 2;
  }
  @media (width >= 1080px) {
    grid-row-start: 1;
  }
}
.metabolic-cause-card-04 {
  @media (width >= 1080px) {
    grid-column: span 2 / span 2;
  }
  @media (width >= 1080px) {
    grid-column-start: 1;
  }
  @media (width >= 1080px) {
    grid-row-start: 2;
  }
}
.metabolic-cause-card-03-image {
  position: absolute;
  max-width: none;
  object-fit: cover;
  width: 279%;
  height: 122%;
  left: -22%;
  top: -22%;
}
@media (width < 1024px) {
  .metabolic-cause-card-03-image {
    width: 220%;
    height: 130%;
    left: -55%;
    top: -15%;
  }
}
.metabolic-cause-card-04-image {
  position: absolute;
  max-width: none;
  object-fit: cover;
  width: 128%;
  height: 271%;
  left: -5%;
  top: -67%;
}
@media (width < 1024px) {
  .metabolic-cause-card-04-image {
    width: 145%;
    height: 280%;
    left: -25%;
    top: -70%;
  }
}
.metabolic-exam-grid {
  margin-inline: calc(var(--spacing) * -4);
  display: flex;
  min-width: 0;
  flex-wrap: nowrap;
  gap: calc(var(--spacing) * 4);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: var(--spacing);
  @media (width >= 820px) {
    margin-inline: calc(var(--spacing) * -8);
  }
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 1080px) {
    margin-inline: 0;
  }
  @media (width >= 1080px) {
    display: grid;
  }
  @media (width >= 1080px) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 4);
  }
  @media (width >= 1080px) {
    overflow: visible;
  }
  @media (width >= 1080px) {
    padding-inline: 0;
  }
  @media (width >= 1080px) {
    padding-bottom: 0;
  }
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.metabolic-exam-grid::-webkit-scrollbar {
  display: none;
}
.metabolic-exam-card {
  display: flex;
  height: 100%;
  width: 16.5rem;
  flex-shrink: 0;
  flex-direction: column;
  @media (width >= 640px) {
    width: 18rem;
  }
  @media (width >= 1080px) {
    width: auto;
  }
  @media (width >= 1080px) {
    min-width: 0;
  }
}
.metabolic-exam-card-image {
  height: 280px;
  flex-shrink: 0;
  overflow: hidden;
  border-top-left-radius: var(--radius-lg);
  border-top-right-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 5%, transparent);
  }
}
.metabolic-exam-card-body {
  display: flex;
  min-height: 267px;
  flex: 1;
  flex-direction: column;
  border-bottom-right-radius: var(--radius-lg);
  border-bottom-left-radius: var(--radius-lg);
  background-color: color-mix(in srgb, #202020 2%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 2%, transparent);
  }
  padding-inline: calc(var(--spacing) * 6);
  padding-top: calc(var(--spacing) * 8);
  padding-bottom: calc(var(--spacing) * 6);
}
.metabolic-exam-card-content {
  display: grid;
  flex: 1;
  grid-template-columns: auto 1fr;
  column-gap: calc(var(--spacing) * 3);
}
.metabolic-exam-card-number {
  flex-shrink: 0;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
  color: var(--color-primary-500);
}
.metabolic-exam-card-text {
  display: flex;
  min-width: 0;
  flex-direction: column;
}
.metabolic-exam-card-title {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: #202020;
}
.metabolic-exam-card-desc {
  margin-top: calc(var(--spacing) * 4);
  flex: 1;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: #202020;
}
.muscle-health-exams .metabolic-exam-card-body {
  min-height: 179px;
}
.body-contouring-exams .metabolic-exam-card-body {
  min-height: 179px;
}
.joint-health-exams .metabolic-exam-card-body {
  min-height: 201px;
}
.muscle-cause-card-03-image {
  position: absolute;
  max-width: none;
  object-fit: cover;
  width: 312%;
  height: 154%;
  left: -4%;
  top: -43%;
}
@media (width < 1024px) {
  .muscle-cause-card-03-image {
    width: 240%;
    height: 160%;
    left: -40%;
    top: -30%;
  }
}
.muscle-cause-card-04-image {
  position: absolute;
  max-width: none;
  object-fit: cover;
  width: 116%;
  height: 203%;
  left: -16%;
  top: -33%;
}
@media (width < 1024px) {
  .muscle-cause-card-04-image {
    width: 140%;
    height: 220%;
    left: -30%;
    top: -40%;
  }
}
.muscle-program-banner {
  background-color: #eef4fa;
}
.muscle-program-banner-image {
  position: absolute;
  max-width: none;
  object-fit: cover;
  right: 0;
  top: -31%;
  height: 173%;
  width: 64%;
  opacity: 0.8;
}
.muscle-program-banner-gradient {
  background: linear-gradient(to left, rgba(255, 255, 255, 0) 42.69%, #ffffff 103.93%);
}
.traffic-accident-hero-intro p {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  color: color-mix(in srgb, #202020 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 90%, transparent);
  }
  @media (width >= 1080px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.traffic-accident-hero-intro strong {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: color-mix(in srgb, #202020 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 90%, transparent);
  }
}
.traffic-accident-early-check-desc {
  word-break: break-all;
  overflow-wrap: anywhere;
}
@media (width >= 1280px) {
  .traffic-accident-early-check-desc {
    word-break: normal;
    overflow-wrap: normal;
  }
}
.traffic-accident-chart {
  --chart-plot-h: clamp(150px, 38vw, 220px);
  --chart-bar-w: clamp(44px, 12vw, 64px);
  --chart-bar-grow: 1s;
  --chart-bubble-delay: 1s;
  overflow: hidden;
}
@media (width >= 768px) {
  .traffic-accident-chart {
    --chart-plot-h: clamp(170px, 24vw, 280px);
    --chart-bar-w: clamp(48px, 7vw, 80px);
  }
}
@media (width >= 1024px) {
  .traffic-accident-chart {
    --chart-plot-h: clamp(180px, 28vw, 350px);
    --chart-bar-w: clamp(52px, 8vw, 100px);
  }
}
.traffic-accident-chart__inner {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 10);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 8);
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 12);
  }
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 8);
  }
  @media (width >= 820px) {
    padding-block: calc(var(--spacing) * 12);
  }
  @media (width >= 1080px) {
    flex-direction: row;
  }
  @media (width >= 1080px) {
    align-items: flex-start;
  }
  @media (width >= 1080px) {
    justify-content: center;
  }
  @media (width >= 1080px) {
    gap: calc(var(--spacing) * 20);
  }
  @media (width >= 1080px) {
    padding-inline: calc(var(--spacing) * 16);
  }
  @media (width >= 1080px) {
    padding-block: calc(var(--spacing) * 20);
  }
  @media (width >= 1440px) {
    min-height: 620px;
  }
}
.traffic-accident-chart__group {
  display: flex;
  width: 100%;
  max-width: 360px;
  flex-direction: column;
  align-items: center;
  @media (width >= 1080px) {
    max-width: none;
  }
  @media (width >= 1080px) {
    flex: 1;
  }
}
@media (width < 768px) {
  .traffic-accident-chart {
    --chart-plot-h: clamp(165px, 42vw, 250px);
    --chart-bar-w: clamp(56px, 16vw, 80px);
  }
  .traffic-accident-chart__group {
    max-width: 100%;
  }
  .traffic-accident-chart__bars {
    gap: calc(var(--spacing) * 10);
  }
  .traffic-accident-chart__bar-labels {
    gap: calc(var(--spacing) * 10);
  }
}
.traffic-accident-chart__title {
  margin-bottom: calc(var(--spacing) * 4);
  text-align: center;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #202020;
  @media (width >= 820px) {
    margin-bottom: calc(var(--spacing) * 8);
  }
  @media (width >= 820px) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  @media (width >= 1080px) {
    margin-bottom: calc(var(--spacing) * 10);
  }
  @media (width >= 1080px) {
    font-size: 32px;
  }
}
.traffic-accident-chart__plot {
  margin-inline: auto;
  width: 100%;
  max-width: 100%;
  @media (width >= 820px) {
    max-width: 360px;
  }
  @media (width >= 1080px) {
    max-width: 400px;
  }
}
.traffic-accident-chart__chart-body {
  display: flex;
  width: 100%;
  flex-direction: column;
}
.traffic-accident-chart__axis {
  margin-top: calc(var(--spacing) * 2);
  width: 100%;
  text-align: center;
  font-size: 10px;
  --tw-leading: 1.3;
  line-height: 1.3;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: color-mix(in srgb, #202020 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-black) 50%, transparent);
  }
  @media (width >= 820px) {
    margin-top: calc(var(--spacing) * 3);
  }
  @media (width >= 820px) {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  @media (width >= 820px) {
    --tw-leading: 1.4;
    line-height: 1.4;
  }
}
.traffic-accident-chart__bars {
  display: flex;
  min-height: var(--chart-plot-h);
  align-items: flex-end;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 14);
  }
}
.traffic-accident-chart__baseline {
  height: 1px;
  width: 100%;
  background-color: color-mix(in srgb, #202020 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
  }
}
.traffic-accident-chart__bar-labels {
  display: flex;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
  padding-top: calc(var(--spacing) * 2);
  @media (width >= 820px) {
    gap: calc(var(--spacing) * 14);
  }
  @media (width >= 820px) {
    padding-top: calc(var(--spacing) * 6);
  }
}
.traffic-accident-chart__bar-col {
  display: flex;
  width: var(--chart-bar-w);
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}
.traffic-accident-chart__bar-stack {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}
.traffic-accident-chart__bar {
  position: relative;
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
  overflow: hidden;
  border-top-left-radius: var(--radius-xl);
  border-top-right-radius: var(--radius-xl);
  padding-top: calc(var(--spacing) * 2);
  @media (width >= 820px) {
    border-top-left-radius: var(--radius-2xl);
    border-top-right-radius: var(--radius-2xl);
  }
  @media (width >= 820px) {
    padding-top: calc(var(--spacing) * 4);
  }
  height: calc(var(--chart-plot-h) * var(--bar-ratio));
}
.traffic-accident-chart__bar--before {
  background: linear-gradient(to bottom, #d9d9d9 0%, rgba(217, 217, 217, 0.4) 100%);
}
.traffic-accident-chart__bar--after {
  height: 0;
  transition: height var(--chart-bar-grow) cubic-bezier(0.22, 1, 0.36, 1);
}
.traffic-accident-chart:not(.is-visible) .traffic-accident-chart__bar--after {
  transition: none;
}
.traffic-accident-chart.is-visible .traffic-accident-chart__bar--after {
  height: calc(var(--chart-plot-h) * var(--bar-ratio));
  transition: height var(--chart-bar-grow) cubic-bezier(0.22, 1, 0.36, 1);
}
.traffic-accident-chart__bar--after-cyan {
  background: linear-gradient(to bottom, #30a0d2 0%, rgba(48, 160, 210, 0.3) 100%);
}
.traffic-accident-chart__bar--after-navy {
  background: linear-gradient(to bottom, #1d4492 0%, rgba(29, 68, 146, 0.3) 100%);
}
.traffic-accident-chart__bar-value {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #202020;
  @media (width >= 820px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.traffic-accident-chart__bar-value--light {
  color: var(--color-white);
}
.traffic-accident-chart__bar-label {
  width: var(--chart-bar-w);
  text-align: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: #202020;
  @media (width >= 820px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.traffic-accident-chart__bubble {
  --bubble-tail-overlap: 3px;
  --bubble-tail-height: 10px;
  --bubble-bar-gap: 12px;
  position: relative;
  display: inline-flex;
  width: fit-content;
  max-width: none;
  flex-shrink: 0;
  border-radius: calc(infinity * 1px);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1.5);
  text-align: center;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-leading: 1.3;
  line-height: 1.3;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  white-space: nowrap;
  color: var(--color-white);
  opacity: 0%;
  @media (width >= 820px) {
    padding-inline: calc(var(--spacing) * 5);
  }
  @media (width >= 820px) {
    padding-block: calc(var(--spacing) * 3);
  }
  @media (width >= 820px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  @media (width >= 820px) {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }
  margin-bottom: calc(var(--bubble-bar-gap) + var(--bubble-tail-height) - var(--bubble-tail-overlap));
  transform: translateY(8px);
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition-delay: var(--chart-bubble-delay);
}
.traffic-accident-chart:not(.is-visible) .traffic-accident-chart__bubble {
  transition: none;
}
.traffic-accident-chart__bubble::after {
  content: "";
  position: absolute;
  left: calc(1 / 2 * 100%);
  --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  top: calc(100% - var(--bubble-tail-overlap));
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top-width: var(--bubble-tail-height);
  border-top-style: solid;
}
@media (width >= 768px) {
  .traffic-accident-chart__bubble {
    --bubble-tail-overlap: 4px;
    --bubble-tail-height: 20px;
  }
  .traffic-accident-chart__bubble::after {
    border-left-width: 10px;
    border-right-width: 10px;
  }
}
.traffic-accident-chart__bubble--cyan {
  background-color: #30a0d2;
}
.traffic-accident-chart__bubble--cyan::after {
  border-top-color: #30a0d2;
}
.traffic-accident-chart__bubble--dark {
  background-color: #202020;
}
.traffic-accident-chart__bubble--dark::after {
  border-top-color: #202020;
}
.traffic-accident-chart.is-visible .traffic-accident-chart__bubble {
  opacity: 100%;
  transform: translateY(0);
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition-delay: var(--chart-bubble-delay);
}
.traffic-accident-chart.is-visible .traffic-accident-chart__group:last-child .traffic-accident-chart__bubble {
  transition-delay: calc(var(--chart-bubble-delay) + 0.25s);
}
.traffic-accident-chart.is-visible .traffic-accident-chart__group:last-child .traffic-accident-chart__bar--after {
  transition-delay: 0.25s;
}
@media (prefers-reduced-motion: reduce) {
  .traffic-accident-chart__bar--after, .traffic-accident-chart__bubble {
    transition: none;
  }
  .traffic-accident-chart .traffic-accident-chart__bar--after {
    height: calc(var(--chart-plot-h) * var(--bar-ratio));
  }
  .traffic-accident-chart .traffic-accident-chart__bubble {
    opacity: 100%;
    transform: none;
  }
}
.non-covered-table-wrap {
  width: 100%;
}
.non-covered-table-title {
  display: flex;
  height: calc(var(--spacing) * 14);
  align-items: center;
  justify-content: center;
  border-top-style: var(--tw-border-style);
  border-top-width: 2px;
  border-color: #202020;
  background-color: var(--color-primary-500);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  @media (width >= 820px) {
    height: 70px;
  }
  @media (width >= 820px) {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.non-covered-table-scroll {
  width: 100%;
  @media (width < 820px) {
    overflow: visible;
  }
  @media (width >= 820px) {
    overflow-x: auto;
  }
}
.non-covered-table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: #202020;
  @media (width >= 820px) {
    min-width: 840px;
  }
}
.non-covered-col-category {
  width: 12%;
}
.non-covered-col-item {
  width: 28%;
}
.non-covered-col-unit {
  width: 10%;
}
.non-covered-col-price {
  width: 22%;
}
.non-covered-col-note {
  width: 28%;
}
.non-covered-table thead th {
  height: 50px;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #3377ff 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-primary-500) 50%, transparent);
  }
  background-color: color-mix(in srgb, #3377ff 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
  }
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 5);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-500);
}
.non-covered-table tbody td {
  height: 50px;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, #202020 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
  }
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 5);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: 1.4;
  line-height: 1.4;
  color: color-mix(in oklab, #202020 80%, transparent);
}
.non-covered-table tbody td.non-covered-category {
  background-color: color-mix(in srgb, #3377ff 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
  }
  vertical-align: middle;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-500);
}
.non-covered-table tbody tr:nth-child(even) {
  background-color: color-mix(in srgb, #202020 3%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-black) 3%, transparent);
  }
}
@media (max-width: 819px) {
  .non-covered-table colgroup {
    display: none;
  }
  .non-covered-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .non-covered-table tbody {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
  }
  .non-covered-table tbody tr {
    display: block;
    overflow: hidden;
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, #202020 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
    background-color: var(--color-white);
    &:nth-child(even) {
      background-color: color-mix(in srgb, #202020 3%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-black) 3%, transparent);
      }
    }
  }
  .non-covered-table tbody td {
    display: flex;
    height: auto;
    min-height: 0;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 4);
    border-style: var(--tw-border-style);
    border-width: 0px;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: color-mix(in srgb, #202020 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3.5);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    &:last-child {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 0px;
    }
    &:nth-child(1) {
      justify-content: center;
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
      border-color: color-mix(in srgb, #202020 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
      }
      background-color: color-mix(in srgb, #3377ff 5%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-primary-500) 5%, transparent);
      }
      padding-inline: calc(var(--spacing) * 4);
      padding-block: calc(var(--spacing) * 2.5);
      text-align: center;
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      color: var(--color-primary-500);
    }
    &:nth-child(2) {
      display: block;
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
      border-color: color-mix(in srgb, #202020 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
      }
      padding-inline: calc(var(--spacing) * 4);
      padding-block: calc(var(--spacing) * 3.5);
      text-align: center;
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      color: #202020;
    }
    &:not(:nth-child(1)):not(:nth-child(2))::before {
      flex-shrink: 0;
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
      color: var(--color-primary-500);
    }
    &:nth-child(3)::before {
      content: '단위';
    }
    &:nth-child(4)::before {
      content: '가격 (단위:원)';
    }
    &:nth-child(5)::before {
      content: '비고';
    }
    &:nth-child(5):empty {
      display: none;
    }
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@property --tw-scroll-snap-strictness {
  syntax: "*";
  inherits: false;
  initial-value: proximity;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-content: "";
      --tw-scroll-snap-strictness: proximity;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
    }
  }
}
