/*! tailwindcss v4.1.3 | MIT License | https://tailwindcss.com */
@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: rotateX(0);
      --tw-rotate-y: rotateY(0);
      --tw-rotate-z: rotateZ(0);
      --tw-skew-x: skewX(0);
      --tw-skew-y: skewY(0);
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --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-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@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-red-600: oklch(.577 .245 27.325);
    --color-blue-500: oklch(.623 .214 259.815);
    --color-blue-600: oklch(.546 .245 262.881);
    --color-gray-50: oklch(.985 .002 247.839);
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-font-feature-settings: var(--font-sans--font-feature-settings);
    --default-font-variation-settings: var(--font-sans--font-variation-settings);
    --default-mono-font-family: var(--font-mono);
    --default-mono-font-feature-settings: var(--font-mono--font-feature-settings);
    --default-mono-font-variation-settings: var(--font-mono--font-variation-settings);
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    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;
  }

  body {
    line-height: inherit;
  }

  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;
    -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 {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.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 {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    --lightningcss-light: initial;
    --lightningcss-dark: ;
    color-scheme: light;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    --lightningcss-light: initial;
    --lightningcss-dark: ;
    color-scheme: light;
    background-color: #0000;
    border-radius: 0;
  }

  :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;
    color: currentColor;
  }

  @supports (color: color-mix(in lab, red, red)) {
    ::placeholder {
      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 {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }

  * {
    border-color: var(--border);
    outline-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    * {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  * {
    border-color: var(--border);
    outline-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    * {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  body {
    background-color: var(--background);
    color: var(--foreground);
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) h1 {
    font-size: var(--text-2xl);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) h2 {
    font-size: var(--text-xl);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) h3 {
    font-size: var(--text-lg);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) h4 {
    font-size: var(--text-base);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) p {
    font-size: var(--text-base);
    font-weight: var(--font-weight-normal);
    line-height: 1.5;
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) label, :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) button {
    font-size: var(--text-base);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }

  :where(:not(:has([class*=" text-"]), :not(:has([class^="text-"])))) input {
    font-size: var(--text-base);
    font-weight: var(--font-weight-normal);
    line-height: 1.5;
  }
}

@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }

  .visible {
    visibility: visible;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }

  .top-0 {
    top: calc(var(--spacing) * 0);
  }

  .top-4 {
    top: calc(var(--spacing) * 4);
  }

  .top-12 {
    top: calc(var(--spacing) * 12);
  }

  .top-\[-0\.515\%\] {
    top: -.515%;
  }

  .top-\[-3\.385\%\] {
    top: -3.385%;
  }

  .top-\[-4\.167\%\] {
    top: -4.167%;
  }

  .top-\[-6\.667\%\] {
    top: -6.667%;
  }

  .top-\[-41px\] {
    top: -41px;
  }

  .top-\[-105px\] {
    top: -105px;
  }

  .top-\[16\.667\%\] {
    top: 16.667%;
  }

  .top-\[18px\] {
    top: 18px;
  }

  .top-\[50\%\] {
    top: 50%;
  }

  .top-\[57px\] {
    top: 57px;
  }

  .top-\[62px\] {
    top: 62px;
  }

  .top-\[126px\] {
    top: 126px;
  }

  .top-\[127px\] {
    top: 127px;
  }

  .top-\[143px\] {
    top: 143px;
  }

  .top-\[179px\] {
    top: 179px;
  }

  .top-\[246px\] {
    top: 246px;
  }

  .top-\[345px\] {
    top: 345px;
  }

  .top-\[374px\] {
    top: 374px;
  }

  .top-\[651px\] {
    top: 651px;
  }

  .top-\[720px\] {
    top: 720px;
  }

  .top-\[876px\] {
    top: 876px;
  }

  .top-\[1129px\] {
    top: 1129px;
  }

  .top-\[1703px\] {
    top: 1703px;
  }

  .top-\[2196px\] {
    top: 2196px;
  }

  .right-0 {
    right: calc(var(--spacing) * 0);
  }

  .right-1\/4 {
    right: 25%;
  }

  .right-\[-0\.153\%\] {
    right: -.153%;
  }

  .right-\[-0\.532\%\] {
    right: -.532%;
  }

  .right-\[-8\.333\%\] {
    right: -8.333%;
  }

  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }

  .bottom-\[-0\.36\%\] {
    bottom: -.36%;
  }

  .bottom-\[-3\.385\%\] {
    bottom: -3.385%;
  }

  .bottom-\[-4\.167\%\] {
    bottom: -4.167%;
  }

  .bottom-\[-6\.667\%\] {
    bottom: -6.667%;
  }

  .bottom-\[20\.833\%\] {
    bottom: 20.833%;
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

  .left-1\/2 {
    left: 50%;
  }

  .left-1\/4 {
    left: 25%;
  }

  .left-2 {
    left: calc(var(--spacing) * 2);
  }

  .left-6 {
    left: calc(var(--spacing) * 6);
  }

  .left-\[-0\.153\%\] {
    left: -.153%;
  }

  .left-\[-0\.532\%\] {
    left: -.532%;
  }

  .left-\[-8\.333\%\] {
    left: -8.333%;
  }

  .left-\[-35px\] {
    left: -35px;
  }

  .left-\[-51px\] {
    left: -51px;
  }

  .left-\[-169px\] {
    left: -169px;
  }

  .left-\[23px\] {
    left: 23px;
  }

  .left-\[27px\] {
    left: 27px;
  }

  .left-\[35px\] {
    left: 35px;
  }

  .left-\[84px\] {
    left: 84px;
  }

  .left-\[119px\] {
    left: 119px;
  }

  .left-\[122px\] {
    left: 122px;
  }

  .left-\[187px\] {
    left: 187px;
  }

  .left-\[918px\] {
    left: 918px;
  }

  .z-0 {
    z-index: 0;
  }

  .z-10 {
    z-index: 10;
  }

  .z-15 {
    z-index: 15;
  }

  .z-20 {
    z-index: 20;
  }

  .z-30 {
    z-index: 30;
  }

  .z-50 {
    z-index: 50;
  }

  .z-\[-1\] {
    z-index: -1;
  }

  .z-\[200\] {
    z-index: 200;
  }

  .z-\[300\] {
    z-index: 300;
  }

  .z-\[9999\] {
    z-index: 9999;
  }

  .container {
    width: 100%;
  }

  @media (width >= 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (width >= 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (width >= 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (width >= 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (width >= 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .m-0 {
    margin: calc(var(--spacing) * 0);
  }

  .mx-\[0px\] {
    margin-inline: 0;
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-\[32px\] {
    margin-block: 32px;
  }

  .-mt-7\.5 {
    margin-top: calc(var(--spacing) * -7.5);
  }

  .-mt-16 {
    margin-top: calc(var(--spacing) * -16);
  }

  .mt-0 {
    margin-top: calc(var(--spacing) * 0);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }

  .mt-\[-30px\] {
    margin-top: -30px;
  }

  .mt-\[0\.5px\] {
    margin-top: .5px;
  }

  .mt-\[29px\] {
    margin-top: 29px;
  }

  .mt-\[114px\] {
    margin-top: 114px;
  }

  .mt-\[120px\] {
    margin-top: 120px;
  }

  .mt-auto {
    margin-top: auto;
  }

  .mr-\[0px\] {
    margin-right: 0;
  }

  .mr-\[calc\(-50vw\+50\%\)\] {
    margin-right: calc(50% - 50vw);
  }

  .mb-0 {
    margin-bottom: calc(var(--spacing) * 0);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .mb-\[0px\] {
    margin-bottom: 0;
  }

  .mb-\[1\.4px\] {
    margin-bottom: 1.4px;
  }

  .mb-\[52px\] {
    margin-bottom: 52px;
  }

  .ml-0 {
    margin-left: calc(var(--spacing) * 0);
  }

  .ml-\[0px\] {
    margin-left: 0;
  }

  .ml-\[calc\(-50vw\+50\%\)\] {
    margin-left: calc(50% - 50vw);
  }

  .ml-px {
    margin-left: 1px;
  }

  .box-border {
    box-sizing: border-box;
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline-grid {
    display: inline-grid;
  }

  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }

  .size-12 {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
  }

  .size-\[41px\] {
    width: 41px;
    height: 41px;
  }

  .size-full {
    width: 100%;
    height: 100%;
  }

  .h-3 {
    height: calc(var(--spacing) * 3);
  }

  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }

  .h-7 {
    height: calc(var(--spacing) * 7);
  }

  .h-12 {
    height: calc(var(--spacing) * 12);
  }

  .h-\[14\.45px\] {
    height: 14.45px;
  }

  .h-\[35px\] {
    height: 35px;
  }

  .h-\[43px\] {
    height: 43px;
  }

  .h-\[54\.5px\] {
    height: 54.5px;
  }

  .h-\[54\.6px\] {
    height: 54.6px;
  }

  .h-\[78px\] {
    height: 78px;
  }

  .h-\[89px\] {
    height: 89px;
  }

  .h-\[105\.5px\] {
    height: 105.5px;
  }

  .h-\[133px\] {
    height: 133px;
  }

  .h-\[139px\] {
    height: 139px;
  }

  .h-\[165\.101px\] {
    height: 165.101px;
  }

  .h-\[186px\] {
    height: 186px;
  }

  .h-\[204px\] {
    height: 204px;
  }

  .h-\[212\.511px\] {
    height: 212.511px;
  }

  .h-\[221px\] {
    height: 221px;
  }

  .h-\[222px\] {
    height: 222px;
  }

  .h-\[235px\] {
    height: 235px;
  }

  .h-\[256px\] {
    height: 256px;
  }

  .h-\[273\.33px\] {
    height: 273.33px;
  }

  .h-\[273px\] {
    height: 273px;
  }

  .h-\[285\.712px\] {
    height: 285.712px;
  }

  .h-\[311px\] {
    height: 311px;
  }

  .h-\[320px\] {
    height: 320px;
  }

  .h-\[321px\] {
    height: 321px;
  }

  .h-\[327\.585px\] {
    height: 327.585px;
  }

  .h-\[332\.311px\] {
    height: 332.311px;
  }

  .h-\[342\.401px\] {
    height: 342.401px;
  }

  .h-\[358\.5px\] {
    height: 358.5px;
  }

  .h-\[358px\] {
    height: 358px;
  }

  .h-\[599px\] {
    height: 599px;
  }

  .h-\[812px\] {
    height: 812px;
  }

  .h-auto {
    height: auto;
  }

  .h-full {
    height: 100%;
  }

  .min-h-\[900px\] {
    min-height: 900px;
  }

  .min-h-\[2220px\] {
    min-height: 2220px;
  }

  .min-h-px {
    min-height: 1px;
  }

  .min-h-screen {
    min-height: 100vh;
  }

  .w-\[52px\] {
    width: 52px;
  }

  .w-\[67\.982px\] {
    width: 67.982px;
  }

  .w-\[70px\] {
    width: 70px;
  }

  .w-\[76px\] {
    width: 76px;
  }

  .w-\[80\.5px\] {
    width: 80.5px;
  }

  .w-\[83px\] {
    width: 83px;
  }

  .w-\[87px\] {
    width: 87px;
  }

  .w-\[94px\] {
    width: 94px;
  }

  .w-\[103px\] {
    width: 103px;
  }

  .w-\[112px\] {
    width: 112px;
  }

  .w-\[143px\] {
    width: 143px;
  }

  .w-\[159px\] {
    width: 159px;
  }

  .w-\[164\.39px\] {
    width: 164.39px;
  }

  .w-\[180px\] {
    width: 180px;
  }

  .w-\[195px\] {
    width: 195px;
  }

  .w-\[238px\] {
    width: 238px;
  }

  .w-\[282px\] {
    width: 282px;
  }

  .w-\[283px\] {
    width: 283px;
  }

  .w-\[327px\] {
    width: 327px;
  }

  .w-\[328px\] {
    width: 328px;
  }

  .w-\[343px\] {
    width: 343px;
  }

  .w-\[358px\] {
    width: 358px;
  }

  .w-\[375px\] {
    width: 375px;
  }

  .w-\[384px\] {
    width: 384px;
  }

  .w-\[400px\] {
    width: 400px;
  }

  .w-\[402px\] {
    width: 402px;
  }

  .w-\[409\.883px\] {
    width: 409.883px;
  }

  .w-\[433\.3px\] {
    width: 433.3px;
  }

  .w-\[448\.298px\] {
    width: 448.298px;
  }

  .w-\[450\.065px\] {
    width: 450.065px;
  }

  .w-\[452\.785px\] {
    width: 452.785px;
  }

  .w-\[600px\] {
    width: 600px;
  }

  .w-\[792px\] {
    width: 792px;
  }

  .w-\[825px\] {
    width: 825px;
  }

  .w-\[892px\] {
    width: 892px;
  }

  .w-\[894px\] {
    width: 894px;
  }

  .w-\[1192px\] {
    width: 1192px;
  }

  .w-\[1194px\] {
    width: 1194px;
  }

  .w-\[1199px\] {
    width: 1199px;
  }

  .w-\[1200px\] {
    width: 1200px;
  }

  .w-\[1202px\] {
    width: 1202px;
  }

  .w-\[1320px\] {
    width: 1320px;
  }

  .w-full {
    width: 100%;
  }

  .w-px {
    width: 1px;
  }

  .w-screen {
    width: 100vw;
  }

  .max-w-\[375px\] {
    max-width: 375px;
  }

  .max-w-\[1200px\] {
    max-width: 1200px;
  }

  .max-w-\[1440px\] {
    max-width: 1440px;
  }

  .min-w-\[1440px\] {
    min-width: 1440px;
  }

  .min-w-full {
    min-width: 100%;
  }

  .min-w-px {
    min-width: 1px;
  }

  .flex-none {
    flex: none;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .flex-grow, .grow {
    flex-grow: 1;
  }

  .basis-0 {
    flex-basis: calc(var(--spacing) * 0);
  }

  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-\[-50\%\] {
    --tw-translate-x: -50%;
    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);
  }

  .rotate-\[18\.229deg\] {
    rotate: 18.229deg;
  }

  .rotate-\[19\.302deg\] {
    rotate: 19.302deg;
  }

  .rotate-\[44\.36deg\] {
    rotate: 44.36deg;
  }

  .rotate-\[342\.554deg\] {
    rotate: 342.554deg;
  }

  .rotate-\[350\.435deg\] {
    rotate: 350.435deg;
  }

  .transform {
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-not-allowed {
    cursor: not-allowed;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .resize {
    resize: both;
  }

  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .grid-cols-\[max-content\] {
    grid-template-columns: max-content;
  }

  .grid-rows-\[max-content\] {
    grid-template-rows: max-content;
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-row {
    flex-direction: row;
  }

  .place-items-start {
    place-items: start;
  }

  .content-stretch {
    align-content: stretch;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-start {
    justify-content: flex-start;
  }

  .justify-items-center {
    justify-items: center;
  }

  .gap-0 {
    gap: calc(var(--spacing) * 0);
  }

  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }

  .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-32 {
    gap: calc(var(--spacing) * 32);
  }

  .gap-\[3px\] {
    gap: 3px;
  }

  .gap-\[18px\] {
    gap: 18px;
  }

  .gap-\[24px\] {
    gap: 24px;
  }

  .gap-\[25px\] {
    gap: 25px;
  }

  .gap-\[27px\] {
    gap: 27px;
  }

  .gap-\[42px\] {
    gap: 42px;
  }

  .gap-\[52px\] {
    gap: 52px;
  }

  .overflow-clip {
    overflow: clip;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-x-hidden {
    overflow-x: hidden;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-\[80px\] {
    border-radius: 80px;
  }

  .rounded-\[300px\] {
    border-radius: 300px;
  }

  .rounded-none {
    border-radius: 0;
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-\[1px_0px_0px\] {
    border-style: var(--tw-border-style);
    border-width: 1px 0 0;
  }

  .border-solid {
    --tw-border-style: solid;
    border-style: solid;
  }

  .border-\[\#000000\] {
    border-color: #000;
  }

  .border-\[\#1d1d1d\] {
    border-color: #1d1d1d;
  }

  .border-\[\#6a6a6a\] {
    border-color: #6a6a6a;
  }

  .border-\[\#b7b7b7\] {
    border-color: #b7b7b7;
  }

  .border-\[\#c9c9c9\] {
    border-color: #c9c9c9;
  }

  .border-\[\#ffffff\] {
    border-color: #fff;
  }

  .bg-\[\#1D1D1D\], .bg-\[\#1d1d1d\] {
    background-color: #1d1d1d;
  }

  .bg-\[\#3e3e3e\] {
    background-color: #3e3e3e;
  }

  .bg-\[\#C9C9C9\] {
    background-color: #c9c9c9;
  }

  .bg-\[\#ffffff\] {
    background-color: #fff;
  }

  .bg-\[rgba\(29\,29\,29\,1\)\] {
    background-color: #1d1d1d;
  }

  .bg-black\/0 {
    background-color: #0000;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/0 {
      background-color: color-mix(in oklab, var(--color-black) 0%, transparent);
    }
  }

  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }

  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .\[background-size\:100\.22\%_100\%\] {
    background-size: 100.22% 100%;
  }

  .\[background-size\:103\.62\%_109\.22\%\] {
    background-size: 103.62% 109.22%;
  }

  .\[background-size\:147\.21\%_100\%\] {
    background-size: 147.21% 100%;
  }

  .bg-cover {
    background-size: cover;
  }

  .bg-\[50\%_53\.72\%\] {
    background-position: 50% 53.72%;
  }

  .bg-center {
    background-position: center;
  }

  .bg-top-right {
    background-position: 100% 0;
  }

  .bg-no-repeat {
    background-repeat: no-repeat;
  }

  .p-0 {
    padding: calc(var(--spacing) * 0);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-16 {
    padding: calc(var(--spacing) * 16);
  }

  .p-\[0px\] {
    padding: 0;
  }

  .p-\[24px\] {
    padding: 24px;
  }

  .px-0 {
    padding-inline: calc(var(--spacing) * 0);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }

  .px-14 {
    padding-inline: calc(var(--spacing) * 14);
  }

  .px-16 {
    padding-inline: calc(var(--spacing) * 16);
  }

  .px-\[0px\] {
    padding-inline: 0;
  }

  .px-\[28px\] {
    padding-inline: 28px;
  }

  .px-\[65px\] {
    padding-inline: 65px;
  }

  .px-\[96px\] {
    padding-inline: 96px;
  }

  .py-0 {
    padding-block: calc(var(--spacing) * 0);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }

  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }

  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }

  .py-32 {
    padding-block: calc(var(--spacing) * 32);
  }

  .py-40 {
    padding-block: calc(var(--spacing) * 40);
  }

  .py-\[8px\] {
    padding-block: 8px;
  }

  .py-\[30px\] {
    padding-block: 30px;
  }

  .py-\[40px\] {
    padding-block: 40px;
  }

  .py-\[130px\] {
    padding-block: 130px;
  }

  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }

  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }

  .pt-16 {
    padding-top: calc(var(--spacing) * 16);
  }

  .pt-\[0px\] {
    padding-top: 0;
  }

  .pt-\[8px\] {
    padding-top: 8px;
  }

  .pt-\[16px\] {
    padding-top: 16px;
  }

  .pr-0 {
    padding-right: calc(var(--spacing) * 0);
  }

  .pr-\[0px\] {
    padding-right: 0;
  }

  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }

  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }

  .pb-\[0px\] {
    padding-bottom: 0;
  }

  .pb-\[24px\] {
    padding-bottom: 24px;
  }

  .pb-\[112px\] {
    padding-bottom: 112px;
  }

  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }

  .pl-8 {
    padding-left: calc(var(--spacing) * 8);
  }

  .pl-\[0px\] {
    padding-left: 0;
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .font-\[\'Cabin\:Bold\'\,_sans-serif\] {
    font-family: Cabin\:Bold, sans-serif;
  }

  .font-\[\'Cabin\:Regular\'\,_sans-serif\] {
    font-family: Cabin\:Regular, sans-serif;
  }

  .font-\[\'Noto_Sans_JP\:Bold\'\,_sans-serif\] {
    font-family: Noto Sans JP\:Bold, sans-serif;
  }

  .font-\[\'Noto_Sans_JP\:Medium\'\,_sans-serif\] {
    font-family: Noto Sans JP\:Medium, sans-serif;
  }

  .font-\[\'Noto_Sans_JP\:Regular\'\,_sans-serif\] {
    font-family: Noto Sans JP\:Regular, sans-serif;
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[12px\] {
    font-size: 12px;
  }

  .text-\[16px\] {
    font-size: 16px;
  }

  .text-\[20px\] {
    font-size: 20px;
  }

  .text-\[24px\] {
    font-size: 24px;
  }

  .text-\[32px\] {
    font-size: 32px;
  }

  .text-\[36px\] {
    font-size: 36px;
  }

  .text-\[40px\] {
    font-size: 40px;
  }

  .text-\[48px\] {
    font-size: 48px;
  }

  .text-\[96px\] {
    font-size: 96px;
  }

  .text-\[128px\] {
    font-size: 128px;
  }

  .text-\[300px\] {
    font-size: 300px;
  }

  .leading-\[0\] {
    --tw-leading: 0;
    line-height: 0;
  }

  .leading-\[1\.08\] {
    --tw-leading: 1.08;
    line-height: 1.08;
  }

  .leading-\[1\.8\] {
    --tw-leading: 1.8;
    line-height: 1.8;
  }

  .leading-\[2\.4\] {
    --tw-leading: 2.4;
    line-height: 2.4;
  }

  .leading-\[normal\] {
    --tw-leading: normal;
    line-height: normal;
  }

  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .tracking-\[0\.3px\] {
    --tw-tracking: .3px;
    letter-spacing: .3px;
  }

  .tracking-\[0\.8px\] {
    --tw-tracking: .8px;
    letter-spacing: .8px;
  }

  .tracking-\[0\.64px\] {
    --tw-tracking: .64px;
    letter-spacing: .64px;
  }

  .tracking-\[0\.96px\] {
    --tw-tracking: .96px;
    letter-spacing: .96px;
  }

  .tracking-\[1\.6px\] {
    --tw-tracking: 1.6px;
    letter-spacing: 1.6px;
  }

  .tracking-\[1\.28px\] {
    --tw-tracking: 1.28px;
    letter-spacing: 1.28px;
  }

  .tracking-\[1\.44px\] {
    --tw-tracking: 1.44px;
    letter-spacing: 1.44px;
  }

  .tracking-\[1\.92px\] {
    --tw-tracking: 1.92px;
    letter-spacing: 1.92px;
  }

  .tracking-\[2\.88px\] {
    --tw-tracking: 2.88px;
    letter-spacing: 2.88px;
  }

  .tracking-\[3\.2px\] {
    --tw-tracking: 3.2px;
    letter-spacing: 3.2px;
  }

  .tracking-\[3\.84px\] {
    --tw-tracking: 3.84px;
    letter-spacing: 3.84px;
  }

  .tracking-\[7\.68px\] {
    --tw-tracking: 7.68px;
    letter-spacing: 7.68px;
  }

  .tracking-\[10\.24px\] {
    --tw-tracking: 10.24px;
    letter-spacing: 10.24px;
  }

  .tracking-\[24px\] {
    --tw-tracking: 24px;
    letter-spacing: 24px;
  }

  .text-nowrap {
    text-wrap: nowrap;
  }

  .whitespace-pre {
    white-space: pre;
  }

  .text-\[\#1d1d1d\] {
    color: #1d1d1d;
  }

  .text-\[\#4e4f52\] {
    color: #4e4f52;
  }

  .text-\[\#5a5959\] {
    color: #5a5959;
  }

  .text-\[\#6a6a6a\] {
    color: #6a6a6a;
  }

  .text-\[\#212121\] {
    color: #212121;
  }

  .text-\[\#c9c9c9\] {
    color: #c9c9c9;
  }

  .text-\[\#ffffff\] {
    color: #fff;
  }

  .text-red-600 {
    color: var(--color-red-600);
  }

  .text-white {
    color: var(--color-white);
  }

  .opacity-0 {
    opacity: 0;
  }

  .opacity-50 {
    opacity: .5;
  }

  .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, );
  }

  .sepia {
    --tw-sepia: sepia(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;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    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-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }

  .\[grid-area\:1_\/_1\] {
    grid-area: 1 / 1;
  }

  .fade-in {
    --tw-enter-opacity: 0;
  }

  .fade-out {
    --tw-exit-opacity: 0;
  }

  @media (hover: hover) {
    .group-hover\:border-\[\#333\]:is(:where(.group):hover *) {
      border-color: #333;
    }
  }

  @media (hover: hover) {
    .group-hover\:border-\[\#ffffff\]:is(:where(.group):hover *) {
      border-color: #fff;
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-black\/70:is(:where(.group):hover *) {
      background-color: #000000b3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-black\/70:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-black) 70%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:fill-\[\#ffffff\]:is(:where(.group):hover *) {
      fill: #fff;
    }
  }

  @media (hover: hover) {
    .group-hover\:text-\[\#ffffff\]:is(:where(.group):hover *) {
      color: #fff;
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 1;
    }
  }

  @media (hover: hover) {
    .group-hover\:backdrop-blur-\[4px\]:is(:where(.group):hover *) {
      --tw-backdrop-blur: blur(4px);
      -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
      backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    }
  }

  @media (hover: hover) {
    .hover\:scale-105:hover {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .hover\:bg-\[\#1d1d1d\]:hover {
      background-color: #1d1d1d;
    }
  }

  @media (hover: hover) {
    .hover\:bg-\[\#2d2d2d\]:hover {
      background-color: #2d2d2d;
    }
  }

  @media (hover: hover) {
    .hover\:bg-\[\#333333\]:hover {
      background-color: #333;
    }
  }

  @media (hover: hover) {
    .hover\:bg-\[\#f5f5f5\]:hover {
      background-color: #f5f5f5;
    }
  }

  @media (hover: hover) {
    .hover\:bg-blue-600:hover {
      background-color: var(--color-blue-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-50:hover {
      background-color: var(--color-gray-50);
    }
  }

  @media (hover: hover) {
    .hover\:text-\[\#5a5959\]:hover {
      color: #5a5959;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-75:hover {
      opacity: .75;
    }
  }

  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }

  .disabled\:opacity-50:disabled {
    opacity: .5;
  }
}

:root {
  --font-size: 14px;
  --background: #fff;
  --foreground: oklch(.145 0 0);
  --card: #fff;
  --card-foreground: oklch(.145 0 0);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(.145 0 0);
  --primary: #030213;
  --primary-foreground: oklch(1 0 0);
  --secondary: oklch(.95 .0058 264.53);
  --secondary-foreground: #030213;
  --muted: #ececf0;
  --muted-foreground: #717182;
  --accent: #e9ebef;
  --accent-foreground: #030213;
  --destructive: #d4183d;
  --destructive-foreground: #fff;
  --border: #0000001a;
  --input: transparent;
  --input-background: #f3f3f5;
  --switch-background: #cbced4;
  --font-weight-medium: 500;
  --font-weight-normal: 400;
  --ring: oklch(.708 0 0);
  --chart-1: oklch(.646 .222 41.116);
  --chart-2: oklch(.6 .118 184.704);
  --chart-3: oklch(.398 .07 227.392);
  --chart-4: oklch(.828 .189 84.429);
  --chart-5: oklch(.769 .188 70.08);
  --radius: .625rem;
  --sidebar: oklch(.985 0 0);
  --sidebar-foreground: oklch(.145 0 0);
  --sidebar-primary: #030213;
  --sidebar-primary-foreground: oklch(.985 0 0);
  --sidebar-accent: oklch(.97 0 0);
  --sidebar-accent-foreground: oklch(.205 0 0);
  --sidebar-border: oklch(.922 0 0);
  --sidebar-ring: oklch(.708 0 0);
}

.dark {
  --background: oklch(.145 0 0);
  --foreground: oklch(.985 0 0);
  --card: oklch(.145 0 0);
  --card-foreground: oklch(.985 0 0);
  --popover: oklch(.145 0 0);
  --popover-foreground: oklch(.985 0 0);
  --primary: oklch(.985 0 0);
  --primary-foreground: oklch(.205 0 0);
  --secondary: oklch(.269 0 0);
  --secondary-foreground: oklch(.985 0 0);
  --muted: oklch(.269 0 0);
  --muted-foreground: oklch(.708 0 0);
  --accent: oklch(.269 0 0);
  --accent-foreground: oklch(.985 0 0);
  --destructive: oklch(.396 .141 25.723);
  --destructive-foreground: oklch(.637 .237 25.331);
  --border: oklch(.269 0 0);
  --input: oklch(.269 0 0);
  --ring: oklch(.439 0 0);
  --font-weight-medium: 500;
  --font-weight-normal: 400;
  --chart-1: oklch(.488 .243 264.376);
  --chart-2: oklch(.696 .17 162.48);
  --chart-3: oklch(.769 .188 70.08);
  --chart-4: oklch(.627 .265 303.9);
  --chart-5: oklch(.645 .246 16.439);
  --sidebar: oklch(.205 0 0);
  --sidebar-foreground: oklch(.985 0 0);
  --sidebar-primary: oklch(.488 .243 264.376);
  --sidebar-primary-foreground: oklch(.985 0 0);
  --sidebar-accent: oklch(.269 0 0);
  --sidebar-accent-foreground: oklch(.985 0 0);
  --sidebar-border: oklch(.269 0 0);
  --sidebar-ring: oklch(.439 0 0);
}

html {
  font-size: var(--font-size);
}

.animate-rain-variable {
  opacity: 0;
  transform: translateY(-150vh);
}

@keyframes rain-early-fade {
  0% {
    opacity: 0;
    transform: translateY(-150vh);
  }

  5% {
    opacity: 0;
    transform: translateY(-100vh);
  }

  8% {
    opacity: .9;
  }

  70% {
    opacity: .9;
  }

  73% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    transform: translateY(100vh);
  }
}

@keyframes rain-mid-fade {
  0% {
    opacity: 0;
    transform: translateY(-150vh);
  }

  15% {
    opacity: 0;
    transform: translateY(-100vh);
  }

  18% {
    opacity: .85;
  }

  80% {
    opacity: .85;
  }

  83% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    transform: translateY(100vh);
  }
}

@keyframes rain-late-fade {
  0% {
    opacity: 0;
    transform: translateY(-150vh);
  }

  25% {
    opacity: 0;
    transform: translateY(-100vh);
  }

  28% {
    opacity: .8;
  }

  85% {
    opacity: .8;
  }

  88% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    transform: translateY(100vh);
  }
}

@keyframes rain-super-quick-fade {
  0% {
    opacity: 0;
    transform: translateY(-150vh);
  }

  10% {
    opacity: 0;
    transform: translateY(-100vh);
  }

  12% {
    opacity: .9;
  }

  88% {
    opacity: .9;
  }

  90% {
    opacity: 0;
  }

  100% {
    opacity: 0;
    transform: translateY(100vh);
  }
}

.animate-rain-variable {
  animation: linear infinite rain-early-fade;
}

.animate-rain-variable:nth-child(4n+1) {
  animation-name: rain-early-fade;
}

.animate-rain-variable:nth-child(4n+2) {
  animation-name: rain-mid-fade;
}

.animate-rain-variable:nth-child(4n+3) {
  animation-name: rain-late-fade;
}

.animate-rain-variable:nth-child(4n+4), .animate-rain-variable:nth-child(7n+1) {
  animation-name: rain-super-quick-fade;
}

.animate-rain-variable:nth-child(11n+3) {
  animation-name: rain-early-fade;
}

@keyframes rain {
  0% {
    opacity: 0;
    transform: translateY(-100vh);
  }

  10% {
    opacity: .6;
  }

  90% {
    opacity: .6;
  }

  100% {
    opacity: 0;
    transform: translateY(100vh);
  }
}

.animate-rain {
  animation: linear infinite rain;
}

.animated-arrow {
  backface-visibility: hidden;
  perspective: 1000px;
  will-change: transform, opacity;
  z-index: 50;
  position: relative;
  transform: translateZ(0);
}

.arrow-high-z {
  z-index: 50;
  isolation: isolate;
  position: relative;
}

@media (prefers-reduced-motion: no-preference) {
  .arrow-smooth-transform {
    transition: transform .1s cubic-bezier(.23, 1, .32, 1), opacity .2s ease-out;
  }
}

@media (prefers-reduced-motion: reduce) {
  .arrow-smooth-transform {
    transition: none;
  }

  .animated-arrow {
    opacity: 1 !important;
    transform: none !important;
  }
}

@keyframes arrow-slide {
  0% {
    opacity: 1;
    transform: translateX(0);
  }

  45% {
    opacity: 0;
    transform: translateX(120px);
  }

  55% {
    opacity: 0;
    transform: translateX(-120px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.animate-arrow-slide {
  animation: 1.5s ease-in-out infinite arrow-slide;
}

.z-rain {
  z-index: 10;
}

.z-arrow {
  z-index: 50;
}

.z-content {
  z-index: 1;
}

.fade-in, .fade-in-up, .fade-in-down, .fade-in-left, .fade-in-right {
  opacity: 0;
  animation-timing-function: cubic-bezier(.25, .46, .45, .94);
  animation-fill-mode: both;
}

.fade-in-up {
  transform: translateY(30px);
}

.fade-in-down {
  transform: translateY(-30px);
}

.fade-in-left {
  transform: translateX(-30px);
}

.fade-in-right {
  transform: translateX(30px);
}

.fade-in {
  transform: none;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeIn {
  to {
    opacity: 1;
    transform: none;
  }
}

.fade-in-up.fade-in-visible {
  animation-name: fadeInUp;
}

.fade-in-down.fade-in-visible {
  animation-name: fadeInDown;
}

.fade-in-left.fade-in-visible {
  animation-name: fadeInLeft;
}

.fade-in-right.fade-in-visible {
  animation-name: fadeInRight;
}

.fade-in.fade-in-visible {
  animation-name: fadeIn;
}

@media (prefers-reduced-motion: reduce) {
  .fade-in, .fade-in-up, .fade-in-down, .fade-in-left, .fade-in-right {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
  }
}

.slide-in-left, .slide-in-right {
  opacity: 1;
  animation-duration: .8s;
  animation-timing-function: cubic-bezier(.25, .46, .45, .94);
  animation-fill-mode: both;
}

.slide-in-left {
  transform: translateX(-100vw);
}

.slide-in-right {
  transform: translateX(100vw);
}

@keyframes slideInLeft {
  from {
    transform: translateX(-100vw);
  }

  to {
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  from {
    transform: translateX(100vw);
  }

  to {
    transform: translateX(0);
  }
}

.slide-in-left.slide-in-visible {
  animation-name: slideInLeft;
}

.slide-in-right.slide-in-visible {
  animation-name: slideInRight;
}

.slide-delay-0 {
  animation-delay: .2s;
}

.slide-delay-1 {
  animation-delay: .4s;
}

.slide-delay-2 {
  animation-delay: .6s;
}

.slide-delay-3 {
  animation-delay: .8s;
}

@media (prefers-reduced-motion: reduce) {
  .slide-in-left, .slide-in-right {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
  }
}

@media (width <= 1198px) {
  body {
    overflow-x: hidden;
  }

  .group:hover .group-hover\\:invert {
    filter: invert();
  }

  .group:hover {
    --group-hover-filter: invert(1);
  }
}

@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;
  initial-value: rotateX(0);
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
  initial-value: rotateY(0);
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
  initial-value: rotateZ(0);
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false;
  initial-value: skewX(0);
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false;
  initial-value: skewY(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-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-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-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;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
