/* [next]/internal/font/google/space_grotesk_8eb9cff2.module.css [app-client] (css) */
@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Space Grotesk Fallback;
  src: local(Arial);
  ascent-override: 89.71%;
  descent-override: 26.62%;
  line-gap-override: 0.0%;
  size-adjust: 109.69%;
}

.space_grotesk_8eb9cff2-module__1LcxMG__className {
  font-family: Space Grotesk, Space Grotesk Fallback;
  font-style: normal;
}

.space_grotesk_8eb9cff2-module__1LcxMG__variable {
  --font-display: "Space Grotesk", "Space Grotesk Fallback";
}

/* [next]/internal/font/google/ibm_plex_sans_48be08e8.module.css [app-client] (css) */
@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/57215795b8570f5c-s.2rixgazldzomk.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/57215795b8570f5c-s.2rixgazldzomk.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/7fea77d1d19108bf-s.2y65deuc30pmy.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/1bcd0e671759a44c-s.2qt3tdwt-y9x_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/e15f58668ad64cb8-s.3cvcemwuzoywn.woff2") format("woff2");
  unicode-range: U+370-377, U+37A-37F, U+384-38A, U+38C, U+38E-3A1, U+3A3-3FF;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/90c51ce8fb754fe8-s.02z5rrbg5nt92.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/57215795b8570f5c-s.2rixgazldzomk.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Sans;
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("../media/03fc1b4a8d284b5e-s.p.0wiir8udbzjvx.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Sans Fallback;
  src: local(Arial);
  ascent-override: 101.32%;
  descent-override: 27.18%;
  line-gap-override: 0.0%;
  size-adjust: 101.17%;
}

.ibm_plex_sans_48be08e8-module__sHi4qW__className {
  font-family: IBM Plex Sans, IBM Plex Sans Fallback;
  font-style: normal;
}

.ibm_plex_sans_48be08e8-module__sHi4qW__variable {
  --font-body: "IBM Plex Sans", "IBM Plex Sans Fallback";
}

/* [next]/internal/font/google/ibm_plex_mono_3d32714f.module.css [app-client] (css) */
@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/99e609270109b47d-s.p.40sczeszzbjw1.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/68757d6cddeff913-s.1i-sca43-qwng.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: IBM Plex Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: IBM Plex Mono Fallback;
  src: local(Arial);
  ascent-override: 76.16%;
  descent-override: 20.43%;
  line-gap-override: 0.0%;
  size-adjust: 134.59%;
}

.ibm_plex_mono_3d32714f-module__BqeOpa__className {
  font-family: IBM Plex Mono, IBM Plex Mono Fallback;
  font-style: normal;
}

.ibm_plex_mono_3d32714f-module__BqeOpa__variable {
  --font-mono: "IBM Plex Mono", "IBM Plex Mono Fallback";
}

/* [project]/app/globals.css [app-client] (css) */
@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-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: 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-outline-style: solid;
    }
  }
}

@layer theme {
  :root, :host {
    --font-mono: var(--font-mono);
    --spacing: .25rem;
    --container-xl: 36rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .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);
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --leading-snug: 1.375;
    --radius-md: .375rem;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-body);
    --default-mono-font-family: var(--font-mono);
  }
}

@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, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;
    -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:where(:not(iframe)) {
    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;
    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;
    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;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      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;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

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

@layer components;

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

  .visible {
    visibility: visible;
  }

  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .absolute {
    position: absolute;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .inset-0 {
    inset: 0;
  }

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

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

  .container {
    width: 100%;
  }

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

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

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

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

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

  .mx-1\.5 {
    margin-inline: calc(var(--spacing) * 1.5);
  }

  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }

  .mx-3\.5 {
    margin-inline: calc(var(--spacing) * 3.5);
  }

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

  .mt-1 {
    margin-top: var(--spacing);
  }

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

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

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

  .mr-auto {
    margin-right: auto;
  }

  .mb-1 {
    margin-bottom: var(--spacing);
  }

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

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

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

  .ml-auto {
    margin-left: auto;
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

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

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

  .table {
    display: table;
  }

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

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

  .h-\[6\.5rem\] {
    height: 6.5rem;
  }

  .h-full {
    height: 100%;
  }

  .min-h-0 {
    min-height: 0;
  }

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

  .min-h-full {
    min-height: 100%;
  }

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

  .w-14 {
    width: calc(var(--spacing) * 14);
  }

  .w-auto {
    width: auto;
  }

  .w-full {
    width: 100%;
  }

  .max-w-\[20rem\] {
    max-width: 20rem;
  }

  .max-w-\[46rem\] {
    max-width: 46rem;
  }

  .max-w-xl {
    max-width: var(--container-xl);
  }

  .min-w-0 {
    min-width: 0;
  }

  .flex-1 {
    flex: 1;
  }

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

  .border-collapse {
    border-collapse: collapse;
  }

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

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

  .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-end {
    justify-content: flex-end;
  }

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

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

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

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

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

  :where(.space-y-3\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-4 > :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-y-2\.5 {
    row-gap: calc(var(--spacing) * 2.5);
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

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

  .rounded-md {
    border-radius: var(--radius-md);
  }

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

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

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

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

  .border-\[var\(--hh-border\)\] {
    border-color: var(--hh-border);
  }

  .border-\[var\(--hh-border-strong\)\] {
    border-color: var(--hh-border-strong);
  }

  .border-\[var\(--hh-danger\)\]\/55 {
    border-color: var(--hh-danger);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-\[var\(--hh-danger\)\]\/55 {
      border-color: color-mix(in oklab, var(--hh-danger) 55%, transparent);
    }
  }

  .border-\[var\(--hh-orange\)\] {
    border-color: var(--hh-orange);
  }

  .bg-\[rgba\(8\,5\,3\,0\.72\)\] {
    background-color: #080503b8;
  }

  .bg-\[rgba\(8\,5\,3\,0\.78\)\] {
    background-color: #080503c7;
  }

  .bg-\[rgba\(90\,20\,16\,0\.45\)\] {
    background-color: #5a141073;
  }

  .bg-\[rgba\(255\,101\,0\,0\.34\)\] {
    background-color: #ff650057;
  }

  .bg-\[var\(--hh-bg\)\] {
    background-color: var(--hh-bg);
  }

  .object-contain {
    object-fit: contain;
  }

  .object-center {
    object-position: center;
  }

  .object-left {
    object-position: left;
  }

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

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

  .p-5 {
    padding: calc(var(--spacing) * 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-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .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-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }

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

  .pt-2\.5 {
    padding-top: calc(var(--spacing) * 2.5);
  }

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

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

  .pb-3\.5 {
    padding-bottom: calc(var(--spacing) * 3.5);
  }

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

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

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

  .font-\[family-name\:var\(--font-display\)\] {
    font-family: var(--font-display);
  }

  .font-\[family-name\:var\(--font-mono\)\] {
    font-family: var(--font-mono);
  }

  .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-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[2\.75rem\] {
    font-size: 2.75rem;
  }

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

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

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

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

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

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

  .tracking-\[0\.1em\] {
    --tw-tracking: .1em;
    letter-spacing: .1em;
  }

  .tracking-\[0\.2em\] {
    --tw-tracking: .2em;
    letter-spacing: .2em;
  }

  .tracking-\[0\.04em\] {
    --tw-tracking: .04em;
    letter-spacing: .04em;
  }

  .tracking-\[0\.05em\] {
    --tw-tracking: .05em;
    letter-spacing: .05em;
  }

  .tracking-\[0\.06em\] {
    --tw-tracking: .06em;
    letter-spacing: .06em;
  }

  .tracking-\[0\.08em\] {
    --tw-tracking: .08em;
    letter-spacing: .08em;
  }

  .tracking-\[0\.12em\] {
    --tw-tracking: .12em;
    letter-spacing: .12em;
  }

  .tracking-\[0\.32em\] {
    --tw-tracking: .32em;
    letter-spacing: .32em;
  }

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

  .text-\[var\(--hh-border-strong\)\] {
    color: var(--hh-border-strong);
  }

  .text-\[var\(--hh-cream\)\] {
    color: var(--hh-cream);
  }

  .text-\[var\(--hh-crt\)\] {
    color: var(--hh-crt);
  }

  .text-\[var\(--hh-danger\)\] {
    color: var(--hh-danger);
  }

  .text-\[var\(--hh-hot\)\] {
    color: var(--hh-hot);
  }

  .text-\[var\(--hh-muted\)\] {
    color: var(--hh-muted);
  }

  .text-\[var\(--hh-orange\)\] {
    color: var(--hh-orange);
  }

  .text-\[var\(--hh-warm\)\] {
    color: var(--hh-warm);
  }

  .text-\[var\(--hh-warm\)\]\/95 {
    color: var(--hh-warm);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-\[var\(--hh-warm\)\]\/95 {
      color: color-mix(in oklab, var(--hh-warm) 95%, transparent);
    }
  }

  .uppercase {
    text-transform: uppercase;
  }

  .underline-offset-2 {
    text-underline-offset: 2px;
  }

  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .backdrop-blur-\[3px\] {
    --tw-backdrop-blur: blur(3px);
    -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, );
  }

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

  @media (hover: hover) {
    .hover\:bg-\[rgba\(255\,101\,0\,0\.48\)\]:hover {
      background-color: #ff65007a;
    }

    .hover\:text-\[var\(--hh-hot\)\]:hover {
      color: var(--hh-hot);
    }

    .hover\:underline:hover {
      text-decoration-line: underline;
    }
  }

  .focus-visible\:outline:focus-visible {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .focus-visible\:outline-2:focus-visible {
    outline-style: var(--tw-outline-style);
    outline-width: 2px;
  }

  .focus-visible\:outline-offset-2:focus-visible {
    outline-offset: 2px;
  }

  .focus-visible\:outline-\[var\(--hh-orange\)\]:focus-visible {
    outline-color: var(--hh-orange);
  }

  @media (min-width: 48rem) {
    .md\:mx-5 {
      margin-inline: calc(var(--spacing) * 5);
    }

    .md\:h-full {
      height: 100%;
    }

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

    :where(.md\:space-y-4 > :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)));
    }

    .md\:overflow-hidden {
      overflow: hidden;
    }

    .md\:p-4 {
      padding: calc(var(--spacing) * 4);
    }

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

    .md\:px-5 {
      padding-inline: calc(var(--spacing) * 5);
    }

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

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

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

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

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

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

    .md\:tracking-\[0\.16em\] {
      --tw-tracking: .16em;
      letter-spacing: .16em;
    }
  }

  @media (min-width: 64rem) {
    .lg\:h-\[7\.25rem\] {
      height: 7.25rem;
    }

    .lg\:max-w-\[22rem\] {
      max-width: 22rem;
    }

    .lg\:gap-6 {
      gap: calc(var(--spacing) * 6);
    }

    .lg\:p-6 {
      padding: calc(var(--spacing) * 6);
    }

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

    .lg\:text-\[3\.15rem\] {
      font-size: 3.15rem;
    }
  }
}

:root {
  --background: #1c1510;
  --foreground: #fff1dc;
  --hh-bg: #1c1510;
  --hh-bg-deep: #14100c;
  --hh-panel: #241c16;
  --hh-panel-2: #2e241c;
  --hh-metal: #3a2c22;
  --hh-orange: #ff7010;
  --hh-hot: #ff9a35;
  --hh-ember: #f50;
  --hh-warm: #ffe7c8;
  --hh-cream: #fff3df;
  --hh-muted: #c9ae93;
  --hh-danger: #c03939;
  --hh-crt: #8edf8a;
  --hh-phosphor: #ffc078;
  --hh-border: #ff8c3266;
  --hh-border-strong: #ff8c32a6;
  --hh-glow: #ff781e73;
  --font-sans: var(--font-body);
  --font-mono: var(--font-mono);
  --font-display: var(--font-display);
}

* {
  box-sizing: border-box;
}

html, body {
  height: 100%;
}

body {
  background: var(--hh-bg-deep);
  color: var(--hh-warm);
  font-family: var(--font-body), ui-sans-serif, sans-serif;
  margin: 0;
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.haunted-shell {
  min-height: 100dvh;
  color: var(--hh-warm);
  isolation: isolate;
  background: radial-gradient(900px 520px at 18% 20%, #ff6e1447, #0000 60%), radial-gradient(700px 480px at 88% 85%, #96320f52, #0000 55%), radial-gradient(1200px 800px at 50% 120%, #371c0cbf, #0000 50%), linear-gradient(165deg, #2a1d14 0%, #1a130e 42%, #14100c 100%);
  position: relative;
  overflow: hidden;
}

.haunted-shell--loading {
  filter: contrast(1.05) saturate(1.05) brightness(1.03);
}

.haunted-shell--burst {
  filter: contrast(1.1) saturate(1.08) brightness(1.06);
}

.hh-stage {
  z-index: 10;
  flex-direction: column;
  min-height: 100dvh;
  display: flex;
  position: relative;
  overflow-x: clip;
}

.hh-mobile-only {
  display: none !important;
}

.hh-crt-overlay, .hh-crt-sweep, .hh-noise-overlay, .hh-vignette, .hh-smoke, .hh-embers {
  position: fixed;
  inset: 0;
  pointer-events: none !important;
}

.hh-crt-overlay {
  z-index: 45;
  opacity: .72;
  mix-blend-mode: multiply;
  background-image: repeating-linear-gradient(#00000047 0 1px, #ffbe7812 2px, #ffbe7805 3px, #0000 4px 5px);
  background-size: 100% 5px;
  animation: 6.5s linear infinite hh-scanline-scroll;
}

.hh-crt-sweep {
  z-index: 46;
  mix-blend-mode: screen;
  opacity: .85;
  background: linear-gradient(#0000 0% 42%, #ffc8820d 46%, #ffa04629 50%, #ffc8820d 54%, #0000 58% 100%) 0 0 / 100% 250% no-repeat;
  animation: 8.5s ease-in-out infinite hh-phosphor-sweep;
}

.hh-noise-overlay {
  z-index: 44;
  opacity: .06;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E");
  background-size: 160px 160px;
  animation: 1.1s steps(2, end) infinite hh-grain;
}

.hh-vignette {
  z-index: 43;
  background: radial-gradient(#0000 38%, #140c0859 75%, #0c08059e 100%);
}

.hh-smoke {
  z-index: 6;
  filter: blur(2px);
  background: radial-gradient(40% 30% at 20% 70%, #c86e3224, #0000 70%), radial-gradient(35% 28% at 75% 30%, #9650281f, #0000 70%), radial-gradient(50% 40% at 50% 100%, #50281238, #0000 60%);
  animation: 18s ease-in-out infinite alternate hh-smoke-drift;
}

.hh-embers {
  z-index: 7;
  opacity: .42;
  mix-blend-mode: screen;
  background-image: radial-gradient(circle, #ffa03ce6 0 1px, #0000 2px), radial-gradient(circle, #ff641ebf 0 1px, #0000 2px), radial-gradient(circle, #ffc86499 0 1px, #0000 2px);
  background-position: 10% 80%, 70% 40%, 40% 20%;
  background-size: 180px 220px, 260px 300px, 140px 180px;
  animation: 12s linear infinite hh-ember-float;
}

.hh-header {
  border-bottom: 1px solid var(--hh-border);
  background: linear-gradient(#2a1e16f5, #120d0aeb);
  position: relative;
  box-shadow: 0 1px #ff8c3c1f, 0 18px 40px #00000073;
}

.hh-header:before {
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, #ff650014, #0000 35% 65%, #ff50140f);
  position: absolute;
  inset: 0;
}

.hh-brand-logo {
  filter: drop-shadow(0 0 22px #ff65008c);
  display: block;
}

.hh-brand-lockup {
  text-shadow: 0 2px 18px #000000a6;
}

.hh-status-dot {
  background: currentColor;
  border-radius: 999px;
  width: .55rem;
  height: .55rem;
  display: inline-block;
  box-shadow: 0 0 10px;
}

.hh-title-glitch {
  display: inline-block;
  position: relative;
}

.hh-title-glitch__main {
  z-index: 1;
  text-shadow: 0 0 22px #ff650073, 0 0 4px #ffa05059, 0 2px 10px #000000bf;
  position: relative;
}

.hh-title-glitch__layer {
  color: #0000;
  z-index: 0;
  position: absolute;
  inset: 0;
}

.hh-tech-hero {
  border-right: 1px solid var(--hh-border);
  background: #100b08;
  position: relative;
  overflow: hidden;
  box-shadow: inset -40px 0 60px #00000073;
}

.hh-tech-hero__banner {
  position: relative;
}

.hh-tech-hero__media {
  position: absolute;
  inset: 0;
}

.hh-tech-hero__image {
  object-fit: cover;
  object-position: 58% 18%;
  transform-origin: 50% 35%;
  filter: saturate(1.1) contrast(1.1) brightness(1.05);
  will-change: transform, filter;
}

.hh-tech-hero__scrim {
  pointer-events: none;
  background: linear-gradient(105deg, #080503d1 0%, #0805038c 28%, #0805032e 52%, #0000 70%), linear-gradient(#08050373 0%, #0000 28%, #08050347 62%, #080503e0 100%), radial-gradient(at 48% 28%, #0000 22%, #00000059 100%);
  position: absolute;
  inset: 0;
}

.hh-hero-copy {
  z-index: 2;
  text-shadow: 0 1px 2px #000000e6, 0 0 18px #0000008c;
  background: linear-gradient(#080503db, #0c0805c7);
  border: 1px solid #ff8c3c47;
  border-radius: .45rem;
  max-width: 19rem;
  margin: 1.25rem 1.25rem 0;
  padding: .7rem .85rem;
  position: relative;
  box-shadow: 0 10px 28px #00000073, inset 0 0 24px #00000040;
}

.hh-hero-copy__eyebrow {
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--hh-hot);
  font-size: .95rem;
  font-weight: 600;
}

.hh-hero-copy__headline {
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .02em;
  color: var(--hh-cream);
  margin-top: .35rem;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.15;
}

.hh-hero-panel {
  background: linear-gradient(#0a0705e0, #0c0805cc);
  box-shadow: 0 10px 28px #0006, inset 0 0 20px #0003;
}

.hh-tech-hero__frame {
  pointer-events: none;
  border: 1px solid #ff782833;
  position: absolute;
  inset: 10px;
  box-shadow: inset 0 0 40px #ff5a0014, 0 0 30px #ff500014;
}

.hh-tech-hero__glow {
  filter: blur(18px);
  pointer-events: none;
  background: radial-gradient(#ff5a0047, #0000 70%);
  height: 40%;
  position: absolute;
  bottom: -10%;
  left: 10%;
  right: 10%;
}

.hh-cta-compose {
  align-items: flex-end;
  gap: .85rem;
  display: flex;
}

.hh-pumpkin-cta {
  opacity: .95;
  filter: drop-shadow(0 0 18px #ff65008c);
  pointer-events: none;
  flex-shrink: 0;
  width: 4.75rem;
  height: 4.75rem;
  transform: translateY(.15rem);
}

.hh-pumpkin-accent {
  filter: drop-shadow(0 0 10px #ff650066);
}

.hh-pumpkin-accent--closed {
  filter: drop-shadow(0 0 16px #ff6500b3);
  animation: 2.4s ease-in-out infinite hh-pumpkin-pulse;
}

.hh-chat-stage {
  background: linear-gradient(#221812bf, #100b08e6);
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: .75rem .85rem .85rem;
  display: flex;
  position: relative;
}

.hh-monitor {
  background: linear-gradient(160deg, #3a2a20 0%, #1a120e 40%, #120d0a 100%);
  border-radius: 1.1rem;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: .7rem;
  display: flex;
  position: relative;
  box-shadow: 0 0 0 1px #ff8c3c2e, 0 0 40px #ff50001f, 0 24px 50px #0000008c, inset 0 1px #ffc88c1f;
}

.hh-monitor:before {
  content: "";
  pointer-events: none;
  z-index: 2;
  border: 1px solid #0000008c;
  border-radius: .9rem;
  position: absolute;
  inset: .35rem;
}

.hh-monitor__bezel-light {
  background: var(--hh-crt);
  z-index: 3;
  border-radius: 999px;
  width: .45rem;
  height: .45rem;
  position: absolute;
  top: .55rem;
  right: 1.1rem;
  box-shadow: 0 0 10px #7dce7acc;
}

.hh-chat {
  background: radial-gradient(120% 90% at 50% 18%, #5a30168c, #0000 55%), linear-gradient(#2a1c14 0%, #1c140f 55%, #17110d 100%);
  border-radius: .75rem;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 0 70px #ff781e24, inset 0 0 100px #00000059;
}

.hh-chat:after {
  content: "";
  border-radius: inherit;
  z-index: 1;
  background: linear-gradient(125deg, #ffe6b41f, #0000 28% 70%, #ff8c320f), radial-gradient(#0000 58%, #00000052 100%);
  position: absolute;
  inset: 0;
  pointer-events: none !important;
}

.hh-chat__scan {
  z-index: 2;
  border-radius: inherit;
  opacity: .55;
  mix-blend-mode: soft-light;
  background: repeating-linear-gradient(#0000002e 0 1px, #ffbe780d 2px, #0000 3px) 0 0 / 100% 4px;
  animation: 7.5s linear infinite hh-scanline-scroll;
  position: absolute;
  inset: 0;
  pointer-events: none !important;
}

.hh-chat > :not(.hh-chat__scan) {
  z-index: 3;
  position: relative;
}

.hh-chat-scroll {
  scrollbar-width: thin;
  scrollbar-color: #ff782873 transparent;
}

.hh-chat-scroll::-webkit-scrollbar {
  width: 8px;
}

.hh-chat-scroll::-webkit-scrollbar-thumb {
  background: #ff782859;
}

.hh-msg-assistant {
  color: var(--hh-cream);
  text-shadow: 0 0 12px #ff8c3c2e;
}

.hh-msg-user {
  background: linear-gradient(#ff650029, #ff650014);
  border: 1px solid #ff782859;
  box-shadow: 0 0 18px #ff65001f;
}

.hh-chat-toolbar {
  border-bottom: 1px solid var(--hh-border);
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: .75rem 1rem;
  display: flex;
}

.hh-chat-toolbar__identity {
  align-items: center;
  gap: .75rem;
  min-width: 0;
  display: flex;
}

.hh-chat-toolbar__logo {
  object-fit: contain;
  object-position: left;
  flex-shrink: 0;
  width: auto;
  height: 2.5rem;
}

.hh-chat-toolbar__title {
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .12em;
  color: var(--hh-cream);
  font-size: 1rem;
  font-weight: 600;
}

.hh-chat-toolbar__sub {
  font-family: var(--font-mono), ui-monospace, monospace;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--hh-muted);
  font-size: .7rem;
}

.hh-chat-toolbar__cta {
  border: 2px solid var(--hh-orange);
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
  background: #ff650047;
  justify-content: center;
  align-items: center;
  min-height: 2.5rem;
  padding: .45rem .85rem;
  font-size: .75rem;
  font-weight: 600;
  display: inline-flex;
}

.hh-chat-welcome__title {
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .05em;
  color: var(--hh-cream);
  font-size: 1.25rem;
  font-weight: 700;
}

.hh-chat-welcome__sub {
  color: var(--hh-phosphor);
  margin-top: .25rem;
  font-size: 1rem;
}

.hh-msg__label {
  font-family: var(--font-mono), ui-monospace, monospace;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--hh-muted);
  margin-bottom: .35rem;
  font-size: .72rem;
}

.hh-msg__body {
  overflow-wrap: anywhere;
  word-break: break-word;
  font-size: 1rem;
  line-height: 1.55;
}

.hh-msg-assistant a, .hh-msg__body a {
  color: var(--hh-hot);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.hh-loading-line {
  letter-spacing: .1em;
  font-size: .9rem;
}

.hh-prompt-block {
  padding: 0 .75rem .55rem;
}

.hh-prompt-block__label {
  font-family: var(--font-mono), ui-monospace, monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--hh-hot);
  margin: 0;
  font-size: .72rem;
}

.hh-prompt-block__sub {
  color: var(--hh-muted);
  margin: .15rem 0 .45rem;
  font-size: .9rem;
}

.hh-prompt-row {
  flex-wrap: wrap;
  gap: .5rem;
  display: flex;
}

.hh-composer__energy-hint {
  color: var(--hh-muted);
  margin: .35rem 0 0;
  font-size: .78rem;
  line-height: 1.35;
}

.hh-composer__how {
  color: var(--hh-muted);
  margin: .4rem 0 0;
  font-size: .8rem;
  line-height: 1.3;
}

.hh-composer__how .hh-link-btn {
  color: var(--hh-orange);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.hh-chat--signal-lock {
  animation: .52s ease-out hh-signal-lock;
}

@keyframes hh-signal-lock {
  0% {
    filter: brightness(1.12) contrast(1.08);
  }

  100% {
    filter: none;
  }
}

.hh-prompt {
  text-align: left;
  min-height: 2.75rem;
  color: var(--hh-cream);
  background: #ff6e1433;
  border: 2px solid #ff9646a6;
  padding: .55rem .9rem;
  font-size: .95rem;
  transition: background .12s, border-color .12s, box-shadow .12s;
}

.hh-composer__row {
  align-items: flex-end;
  gap: .65rem;
  display: flex;
}

.hh-chat-input {
  resize: none;
  border: 2px solid var(--hh-border-strong);
  width: 100%;
  min-height: 3.5rem;
  color: var(--hh-cream);
  background: #140e0af2;
  padding: .75rem .9rem;
  font-size: 1rem;
  line-height: 1.4;
}

.hh-chat-input::placeholder {
  color: var(--hh-muted);
}

.hh-chat-input:focus {
  border-color: var(--hh-orange);
  outline: none;
  box-shadow: 0 0 0 2px #ff701059;
}

.hh-chat-input:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.hh-composer__meta {
  font-family: var(--font-mono), ui-monospace, monospace;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--hh-muted);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .4rem;
  margin-top: .55rem;
  font-size: .72rem;
  display: flex;
}

.hh-footer {
  border-top: 1px solid var(--hh-border);
  background: linear-gradient(#16100cf2, #0c0907fa);
  padding: .65rem 1rem;
}

.hh-footer__row {
  color: var(--hh-muted);
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  font-size: .8rem;
  display: flex;
}

.hh-footer__brand {
  font-family: var(--font-mono), ui-monospace, monospace;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.hh-footer__privacy {
  max-width: 48rem;
  color: var(--hh-muted);
  margin-top: .5rem;
  font-size: .8rem;
  line-height: 1.5;
}

.hh-cta {
  cursor: pointer;
  color: var(--hh-cream);
  text-shadow: 0 0 12px #ffa05066;
  box-shadow: 0 0 0 1px #ffb46459, 0 0 26px #ff650061;
}

.hh-cta:hover {
  filter: brightness(1.08);
  box-shadow: 0 0 0 1px #ffc87880, 0 0 36px #ff65008c;
}

.hh-cta:focus-visible, .hh-prompt:focus-visible, .hh-summon:focus-visible, .hh-link-btn:focus-visible {
  outline: 2px solid var(--hh-orange);
  outline-offset: 2px;
}

.hh-prompt {
  cursor: pointer;
  text-shadow: 0 0 10px #ff8c3c40;
  box-shadow: 0 0 16px #ff6e142e;
}

.hh-prompt:hover {
  filter: brightness(1.06);
  background: #ff6e1457;
  border-color: #ffb45af2;
  box-shadow: 0 0 22px #ff6e1461;
}

.hh-prompt:active {
  background: #ff640f6b;
  transform: translateY(1px);
}

.hh-link-btn {
  cursor: pointer;
  font: inherit;
  background: none;
  border: 0;
  padding: 0;
}

.hh-summon {
  cursor: pointer;
  border: 2px solid var(--hh-hot);
  min-width: 6.5rem;
  height: 3.5rem;
  color: var(--hh-cream);
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .1em;
  text-shadow: 0 0 12px #ffb46480;
  background: #ff6e148c;
  justify-content: center;
  align-items: center;
  gap: .45rem;
  padding: 0 1.15rem;
  font-size: 1rem;
  font-weight: 600;
  transition: background .12s, box-shadow .12s, filter .12s;
  display: inline-flex;
  box-shadow: 0 0 0 1px #ffb4648c, 0 0 30px #ff6e148c;
}

.hh-summon:hover:not(:disabled) {
  filter: brightness(1.05);
  background: #ff7819b8;
  box-shadow: 0 0 0 1px #ffc878b3, 0 0 40px #ff7819b3;
}

.hh-summon:active:not(:disabled) {
  background: #ff5a0ac7;
  transform: translateY(1px);
}

.hh-summon:disabled {
  cursor: not-allowed;
  opacity: 1;
  color: #7a6a5a;
  box-shadow: none;
  filter: grayscale(.35);
  text-shadow: none;
  background: #30241cb8;
  border-color: #785f4b73;
}

.hh-loading-bars i {
  background: var(--hh-hot);
  opacity: .35;
  width: 4px;
  height: 12px;
  animation: .9s ease-in-out infinite hh-bar;
  display: inline-block;
}

.hh-loading-bars i:nth-child(2) {
  animation-delay: .15s;
}

.hh-loading-bars i:nth-child(3) {
  animation-delay: .3s;
}

.hh-static-burst {
  mix-blend-mode: screen;
  z-index: 8;
  background: repeating-linear-gradient(0deg, #ffdcb41f 0 1px, #0000 1px 3px), linear-gradient(90deg, #0000, #ff650033, #0000);
  animation: .26s linear hh-static-burst;
}

.haunted-shell--loading .hh-noise-overlay {
  opacity: .16;
}

.haunted-shell--loading .hh-monitor__bezel-light {
  animation: .42s linear infinite hh-flicker;
}

.haunted-glitch--rgb .hh-title-glitch__layer {
  color: #ff5028bf;
  text-shadow: -4px 0 #ff3c28e6, 4px 0 #50c878bf;
  transform: translate(3px);
}

.haunted-glitch--ghost .hh-title-glitch__layer {
  color: #f3e6d48c;
  filter: blur(.5px);
  transform: translate(6px, -2px);
}

.haunted-glitch--ghost .hh-tech-hero__image {
  opacity: .78;
  filter: blur(.8px) saturate(1.25) contrast(1.15);
  transform: translate(10px, -3px)scale(1.03);
}

.haunted-glitch--flicker {
  animation: .26s linear hh-flicker;
}

.haunted-glitch--tracking .hh-monitor, .haunted-glitch--tracking .hh-tech-hero, .haunted-glitch--tracking .hh-tech-hero__image {
  animation: .38s steps(2, end) hh-tracking;
}

.haunted-glitch--tracking .hh-status-dot, .haunted-glitch--tracking .hh-monitor__bezel-light {
  transform: translateX(3px);
}

.haunted-glitch--static .hh-noise-overlay {
  opacity: .38;
  animation: 60ms step-end infinite hh-grain;
}

.haunted-glitch--static .hh-tech-hero__image {
  filter: contrast(1.55) brightness(1.2) saturate(.55);
  transform: translate(-3px, 1px);
}

.haunted-glitch--corruption {
  animation: .56s steps(3, end) hh-corruption;
}

.haunted-glitch--corruption .hh-crt-overlay {
  opacity: .95;
}

.haunted-glitch--corruption .hh-tech-hero__image {
  animation: .56s steps(3, end) hh-tech-distort;
}

@media (min-width: 768px) {
  body {
    overflow: hidden;
  }

  .haunted-shell, .hh-stage {
    height: 100dvh;
    overflow: hidden;
  }

  .hh-tech-hero {
    flex-shrink: 0;
    width: clamp(320px, 40vw, 520px);
  }

  .hh-tech-hero__banner {
    position: absolute;
    inset: 0;
  }

  .hh-tech-hero__banner .hh-hero-copy {
    margin: 0;
    position: absolute;
    top: 1.25rem;
    left: 1.25rem;
  }

  .hh-desktop-hero-body {
    display: flex;
  }

  .hh-msg__body {
    font-size: 1.05rem;
  }

  .hh-chat-toolbar__title {
    font-size: 1.1rem;
  }

  .hh-chat-welcome__title {
    font-size: 1.5rem;
  }

  .hh-footer {
    padding: .65rem 1.5rem;
  }

  .hh-footer__row {
    font-size: .8125rem;
  }
}

@media (max-width: 767px) {
  html, body {
    overflow-x: clip;
  }

  body {
    overflow-y: auto;
  }

  .haunted-shell {
    height: auto;
    min-height: 100dvh;
    overflow: clip visible;
  }

  .hh-stage {
    height: auto;
    min-height: 100dvh;
    overflow-x: clip;
  }

  .hh-mobile-only {
    display: block !important;
  }

  .hh-desktop-only {
    display: none !important;
  }

  .hh-crt-overlay {
    opacity: .55;
    animation-duration: 8s;
  }

  .hh-crt-sweep {
    opacity: .65;
    animation-duration: 11s;
  }

  .hh-noise-overlay {
    opacity: .04;
    animation: none;
  }

  .hh-smoke {
    filter: none;
    opacity: .45;
  }

  .hh-embers {
    opacity: .3;
  }

  .haunted-shell--loading, .haunted-shell--burst {
    filter: none;
  }

  .haunted-glitch--tracking .hh-monitor, .haunted-glitch--tracking .hh-tech-hero {
    animation: none !important;
  }

  .haunted-glitch--ghost .hh-tech-hero__image {
    transform: translate(4px, -2px)scale(1.02);
  }

  .haunted-glitch--corruption .hh-tech-hero__image {
    animation: .48s steps(3, end) hh-tech-distort-mobile;
  }

  .haunted-glitch--rgb .hh-title-glitch__layer, .haunted-glitch--ghost .hh-title-glitch__layer {
    transform: translate(2px);
  }

  .hh-header-mobile {
    flex-direction: column;
    gap: .7rem;
    display: flex !important;
  }

  .hh-header-mobile__brand {
    align-items: flex-start;
    gap: .75rem;
    display: flex;
  }

  .hh-header-mobile__logo-img {
    object-fit: contain;
    object-position: left center;
    width: auto;
    max-width: 9rem;
    height: 4.5rem;
    display: block;
  }

  .hh-header-mobile__eyebrow {
    font-family: var(--font-display), ui-sans-serif, sans-serif;
    letter-spacing: .18em;
    color: var(--hh-hot);
    font-size: .85rem;
    font-weight: 700;
  }

  .hh-header-mobile__title {
    font-family: var(--font-display), ui-sans-serif, sans-serif;
    letter-spacing: .02em;
    color: var(--hh-cream);
    margin-top: .15rem;
    font-size: clamp(1.45rem, 7.2vw, 1.85rem);
    font-weight: 700;
    line-height: 1;
  }

  .hh-header-mobile__tagline {
    letter-spacing: 0;
    color: var(--hh-warm);
    margin-top: .35rem;
    font-size: .95rem;
    line-height: 1.35;
  }

  .hh-header-mobile__meta {
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: .5rem;
    display: flex;
  }

  .hh-header-mobile__energy {
    font-family: var(--font-mono), ui-monospace, monospace;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--hh-muted);
    font-size: .78rem;
  }

  .hh-meta-sep {
    color: var(--hh-border-strong);
    margin: 0 .35rem;
  }

  .hh-status-badge {
    letter-spacing: .08em;
    padding: .45rem .7rem;
    font-size: .72rem;
  }

  .hh-tech-hero {
    border-right: 0;
    border-bottom: 1px solid var(--hh-border);
    min-height: 0;
    box-shadow: none;
  }

  .hh-tech-hero__banner {
    height: 34vh;
    min-height: 11.5rem;
    max-height: 18rem;
    position: relative;
    overflow: hidden;
  }

  .hh-tech-hero__image {
    object-position: 46% 16%;
    filter: saturate(1.08) contrast(1.12) brightness(.98);
  }

  .hh-tech-hero__scrim {
    background: linear-gradient(#08050359 0%, #0000 28%, #0805038c 68%, #080503eb 100%), linear-gradient(90deg, #080503b8 0%, #08050340 45%, #0000 70%);
  }

  .hh-tech-hero__frame {
    inset: .55rem;
  }

  .hh-hero-copy {
    max-width: min(92%, 20rem);
    margin: 0;
    padding: .7rem .8rem;
    position: absolute;
    inset: auto auto .75rem .75rem;
  }

  .hh-hero-copy__eyebrow {
    letter-spacing: .14em;
    font-size: .8rem;
  }

  .hh-hero-copy__headline {
    letter-spacing: .01em;
    margin-top: .25rem;
    font-size: clamp(1.25rem, 5.6vw, 1.55rem);
    line-height: 1.2;
  }

  .hh-mobile-ask {
    border-bottom: 1px solid var(--hh-border);
    background: linear-gradient(#160e0afa, #0e0a08f5);
    gap: .55rem;
    padding: .75rem .75rem .55rem;
    display: grid !important;
  }

  .hh-mobile-ask__lead {
    color: var(--hh-warm);
    margin: 0;
    font-size: .98rem;
    line-height: 1.4;
  }

  .hh-mobile-ask__cta {
    cursor: pointer;
    border: 2px solid var(--hh-orange);
    width: 100%;
    min-height: 3rem;
    font-family: var(--font-display), ui-sans-serif, sans-serif;
    letter-spacing: .04em;
    color: var(--hh-cream);
    text-shadow: 0 0 12px #ffa05066;
    background: #ff65006b;
    justify-content: center;
    align-items: center;
    padding: .7rem .9rem;
    font-size: 1.05rem;
    font-weight: 700;
    display: inline-flex;
    box-shadow: 0 0 0 1px #ffb46466, 0 0 28px #ff650066;
  }

  .hh-mobile-ask__cta:active {
    background: #ff65008c;
    transform: translateY(1px);
  }

  .hh-mobile-ask__hint {
    color: var(--hh-muted);
    margin: 0;
    font-size: .88rem;
  }

  .hh-mobile-ask__preview {
    cursor: pointer;
    text-align: left;
    width: 100%;
    min-height: 2.85rem;
    color: var(--hh-cream);
    background: #140e0aeb;
    border: 2px solid #ff8c328c;
    justify-content: space-between;
    align-items: center;
    gap: .6rem;
    padding: .65rem .8rem;
    display: flex;
  }

  .hh-mobile-ask__preview-label {
    color: var(--hh-muted);
    font-size: .95rem;
  }

  .hh-mobile-ask__preview-go {
    font-family: var(--font-display), ui-sans-serif, sans-serif;
    color: var(--hh-hot);
    flex-shrink: 0;
    font-size: .95rem;
    font-weight: 650;
  }

  .hh-mobile-telemetry {
    background: linear-gradient(#120c09fa, #0e0a08f5);
    gap: .45rem;
    padding: .55rem .75rem .45rem;
    display: grid !important;
  }

  .hh-mobile-curse {
    border: 1px solid var(--hh-border-strong);
    background: #0a0705e6;
    border-radius: .4rem;
    padding: .65rem .75rem;
  }

  .hh-mobile-curse h2 {
    font-family: var(--font-mono), ui-monospace, monospace;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--hh-muted);
    margin: 0;
    font-size: .72rem;
    font-weight: 500;
  }

  .hh-mobile-curse p {
    font-family: var(--font-display), ui-sans-serif, sans-serif;
    letter-spacing: .02em;
    color: var(--hh-hot);
    margin: .3rem 0 0;
    font-size: 1.05rem;
    font-weight: 650;
    line-height: 1.2;
  }

  .hh-mobile-status-grid {
    grid-template-columns: 1fr 1fr;
    gap: .45rem;
    display: grid;
  }

  .hh-mobile-chip {
    border: 1px solid var(--hh-border);
    font-family: var(--font-mono), ui-monospace, monospace;
    background: #0c0806e0;
    border-radius: .35rem;
    padding: .55rem .65rem;
  }

  .hh-mobile-chip--wide {
    grid-column: 1 / -1;
  }

  .hh-mobile-chip span {
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--hh-muted);
    font-size: .68rem;
    display: block;
  }

  .hh-mobile-chip strong {
    letter-spacing: .04em;
    color: var(--hh-cream);
    margin-top: .2rem;
    font-size: .92rem;
    font-weight: 650;
    display: block;
  }

  .hh-mobile-chip strong.ok {
    color: var(--hh-crt);
  }

  .hh-mobile-chip strong.bad {
    color: var(--hh-danger);
  }

  .hh-main {
    flex: auto;
  }

  .hh-chat-stage {
    flex: auto;
    min-height: min(72dvh, 40rem);
    padding: .45rem .45rem .55rem;
    display: flex;
  }

  .hh-monitor {
    border-radius: .85rem;
    padding: .45rem;
  }

  .hh-chat {
    min-height: min(68dvh, 38rem);
  }

  .hh-chat-scroll {
    flex: auto;
    min-height: 10rem;
  }

  .hh-chat-toolbar {
    padding: .65rem .75rem;
  }

  .hh-chat-toolbar__logo {
    height: 2.15rem;
  }

  .hh-chat-toolbar__title {
    letter-spacing: .08em;
    font-size: .95rem;
  }

  .hh-chat-toolbar__cta {
    display: none;
  }

  .hh-mobile-chat-cta {
    border-bottom: 1px solid var(--hh-border);
    background: #0a070573;
    align-items: center;
    gap: .65rem;
    padding: .55rem .75rem .7rem;
    display: flex !important;
  }

  .hh-mobile-chat-cta__pumpkin {
    object-fit: contain;
    filter: drop-shadow(0 0 14px #ff65008c);
    flex-shrink: 0;
    width: 4.25rem;
    height: 4.25rem;
  }

  .hh-mobile-chat-cta__btn {
    border: 2px solid var(--hh-orange);
    min-height: 2.85rem;
    font-family: var(--font-display), ui-sans-serif, sans-serif;
    letter-spacing: .06em;
    text-align: center;
    background: #ff65005c;
    flex: 1;
    justify-content: center;
    align-items: center;
    padding: .65rem .85rem;
    font-size: 1rem;
    font-weight: 650;
    display: inline-flex;
  }

  .hh-chat-welcome__title {
    letter-spacing: .03em;
    font-size: 1.15rem;
  }

  .hh-chat-welcome__sub {
    font-size: .98rem;
  }

  .hh-msg__label {
    letter-spacing: .1em;
    font-size: .7rem;
  }

  .hh-msg__body {
    font-size: 1rem;
    line-height: 1.55;
  }

  .hh-loading-line {
    letter-spacing: .06em;
    font-size: .85rem;
  }

  .hh-prompt-row {
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    flex-wrap: nowrap;
    gap: .5rem;
    padding: 0 .75rem .7rem;
    display: flex;
    overflow-x: auto;
  }

  .hh-prompt-row::-webkit-scrollbar {
    display: none;
  }

  .hh-prompt {
    scroll-snap-align: start;
    white-space: nowrap;
    flex: none;
    max-width: 15.5rem;
    min-height: 2.85rem;
    padding: .65rem .9rem;
    font-size: .95rem;
    line-height: 1.25;
  }

  .hh-composer {
    padding: .7rem .75rem calc(.7rem + env(safe-area-inset-bottom, 0px));
    background: #080503eb;
    position: sticky;
    bottom: 0;
  }

  .hh-composer__row {
    gap: .55rem;
  }

  .hh-chat-input {
    border-color: #ff8c32bf;
    min-height: 3.25rem;
    padding: .8rem .85rem;
    font-size: 16px;
    box-shadow: 0 0 18px #ff65002e;
  }

  .hh-summon {
    letter-spacing: .08em;
    min-width: 5.75rem;
    height: 3.25rem;
    padding: 0 .85rem;
    font-size: .95rem;
  }

  .hh-composer__meta {
    letter-spacing: .06em;
    font-size: .7rem;
  }

  .hh-footer {
    padding: .7rem .85rem calc(.7rem + env(safe-area-inset-bottom, 0px));
  }

  .hh-footer__row {
    flex-direction: column;
    align-items: flex-start;
    gap: .35rem;
    font-size: .85rem;
    line-height: 1.4;
  }

  .hh-footer__brand {
    letter-spacing: .08em;
  }

  .hh-footer__privacy {
    font-size: .82rem;
  }

  .hh-link-btn {
    min-height: 2.5rem;
    padding: .35rem 0;
  }
}

@media (max-width: 360px), (max-width: 767px) and (max-height: 640px) {
  .hh-header-mobile {
    gap: .45rem;
    padding-top: .55rem;
    padding-bottom: .55rem;
  }

  .hh-header-mobile__logo-img {
    max-width: 7.25rem;
    height: 3.85rem;
  }

  .hh-header-mobile__title {
    font-size: 1.3rem;
  }

  .hh-header-mobile__tagline {
    font-size: .88rem;
  }

  .hh-tech-hero__banner {
    height: 28vh;
    min-height: 9.75rem;
    max-height: 12.5rem;
  }

  .hh-mobile-telemetry {
    gap: .4rem;
    padding: .5rem .65rem .4rem;
  }

  .hh-mobile-curse {
    padding: .5rem .65rem;
  }

  .hh-mobile-curse p {
    font-size: .95rem;
  }

  .hh-mobile-chip {
    padding: .4rem .55rem;
  }

  .hh-mobile-chat-cta {
    padding: .4rem .65rem .5rem;
  }

  .hh-mobile-chat-cta__pumpkin {
    width: 3.4rem;
    height: 3.4rem;
  }

  .hh-mobile-chat-cta__btn {
    min-height: 2.65rem;
    font-size: .95rem;
  }

  .hh-summon {
    min-width: 5.1rem;
    padding: 0 .65rem;
    font-size: .88rem;
  }
}

@media (max-width: 767px) and (min-height: 800px) {
  .hh-tech-hero__banner {
    height: 32vh;
  }

  .hh-chat-stage {
    min-height: min(74dvh, 44rem);
  }
}

@keyframes hh-tech-distort-mobile {
  0%, 100% {
    filter: none;
    transform: none;
  }

  35% {
    filter: contrast(1.25) saturate(1.2);
    transform: translate(-3px, 1px);
  }

  70% {
    filter: brightness(1.15);
    transform: translate(3px, -1px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hh-noise-overlay, .hh-smoke, .hh-embers, .hh-pumpkin-accent--closed, .hh-crt-overlay, .hh-crt-sweep, .hh-chat__scan {
    animation: none !important;
  }

  .haunted-shell--reduced .hh-noise-overlay {
    opacity: .04;
  }

  .haunted-shell--reduced .hh-embers {
    opacity: .12;
  }

  .haunted-shell--reduced .hh-crt-sweep {
    opacity: 0;
  }

  .haunted-shell--reduced .hh-crt-overlay {
    opacity: .45;
  }

  .haunted-glitch--flicker, .haunted-glitch--tracking .hh-monitor, .haunted-glitch--tracking .hh-tech-hero, .haunted-glitch--corruption, .haunted-glitch--corruption .hh-tech-hero__image, .hh-static-burst, .hh-loading-bars i {
    animation: none !important;
  }

  .haunted-glitch--rgb .hh-title-glitch__layer, .haunted-glitch--ghost .hh-title-glitch__layer, .haunted-glitch--ghost .hh-tech-hero__image, .haunted-glitch--static .hh-tech-hero__image {
    filter: none;
    text-shadow: none;
    color: #0000;
    opacity: 1;
    transform: none;
  }
}

@keyframes hh-scanline-scroll {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 5px;
  }
}

@keyframes hh-phosphor-sweep {
  0% {
    background-position: 0 -40%;
  }

  100% {
    background-position: 0 140%;
  }
}

@keyframes hh-grain {
  0% {
    transform: translate(0);
  }

  50% {
    transform: translate(-1.2%, 1%);
  }

  100% {
    transform: translate(1%, -1%);
  }
}

@keyframes hh-smoke-drift {
  0% {
    opacity: .7;
    transform: translate3d(0, 0, 0)scale(1);
  }

  100% {
    opacity: 1;
    transform: translate3d(2%, -3%, 0)scale(1.05);
  }
}

@keyframes hh-ember-float {
  0% {
    background-position: 10% 90%, 70%, 40% 30%;
  }

  50% {
    background-position: 14% 70%, 66% 35%, 44% 18%;
  }

  100% {
    background-position: 8% 55%, 74% 20%, 36% 8%;
  }
}

@keyframes hh-flicker {
  0%, 100% {
    filter: brightness();
  }

  20% {
    filter: brightness(1.14);
  }

  40% {
    filter: brightness(.86);
  }

  60% {
    filter: brightness(1.08);
  }

  80% {
    filter: brightness(.94);
  }
}

@keyframes hh-tracking {
  0%, 100% {
    transform: translateX(0);
  }

  20% {
    transform: translateX(-9px)skewX(-.6deg);
  }

  45% {
    transform: translateX(11px)skewX(.8deg);
  }

  70% {
    transform: translateX(-6px);
  }

  85% {
    transform: translateX(4px);
  }
}

@keyframes hh-corruption {
  0%, 100% {
    filter: none;
  }

  25% {
    filter: hue-rotate(-10deg) contrast(1.2) brightness(1.08);
  }

  50% {
    filter: brightness(1.18) contrast(1.25);
  }

  75% {
    filter: hue-rotate(8deg) contrast(1.1);
  }
}

@keyframes hh-tech-distort {
  0%, 100% {
    filter: none;
    transform: none;
  }

  25% {
    filter: contrast(1.4) saturate(1.4);
    transform: translate(-8px, 2px)skewX(-1.4deg);
  }

  55% {
    filter: brightness(1.25) hue-rotate(-10deg);
    transform: translate(9px, -3px)skewX(1.6deg);
  }

  80% {
    filter: contrast(1.2);
    transform: translate(-3px, 1px);
  }
}

@keyframes hh-static-burst {
  0% {
    opacity: 0;
  }

  25% {
    opacity: .95;
  }

  100% {
    opacity: 0;
  }
}

@keyframes hh-bar {
  0%, 100% {
    opacity: .25;
    transform: scaleY(.7);
  }

  50% {
    opacity: 1;
    transform: scaleY(1.2);
  }
}

@keyframes hh-pumpkin-pulse {
  0%, 100% {
    filter: drop-shadow(0 0 12px #ff650080);
    transform: scale(1);
  }

  50% {
    filter: drop-shadow(0 0 20px #ff6500cc);
    transform: scale(1.04);
  }
}

.hh-modal {
  z-index: 80;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: 0;
  filter: none !important;
  opacity: 1 !important;
  animation: none !important;
  transform: none !important;
}

.hh-modal .hh-contact-form, .hh-modal .hh-modal__panel, .hh-modal input, .hh-modal textarea, .hh-modal select, .hh-modal button {
  animation: none !important;
}

.hh-modal__backdrop {
  cursor: pointer;
  background: #040201c7;
  border: 0;
  position: absolute;
  inset: 0;
}

.hh-modal__panel {
  z-index: 1;
  background: linear-gradient(#1c100afa, #0c0806fa);
  border: 2px solid #ff78288c;
  flex-direction: column;
  width: min(100%, 34rem);
  max-height: min(92vh, 820px);
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 0 1px #ffa05033, 0 24px 60px #000000a6;
}

.hh-modal__panel--sheet {
  width: min(100%, 40rem);
}

.hh-modal__header {
  border-bottom: 1px solid var(--hh-border);
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: .9rem 1rem .75rem;
  display: flex;
}

.hh-modal__header h2 {
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .08em;
  color: var(--hh-hot);
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
}

.hh-modal__close {
  border: 1px solid var(--hh-border-strong);
  min-width: 2.5rem;
  min-height: 2.5rem;
  color: var(--hh-cream);
  background: #140c08e6;
  justify-content: center;
  align-items: center;
  font-size: 1.4rem;
  line-height: 1;
  display: inline-flex;
}

.hh-modal__close:focus-visible, .hh-modal__done:focus-visible, .hh-modal__submit:focus-visible, .hh-btn-secondary:focus-visible {
  outline: 2px solid var(--hh-orange);
  outline-offset: 2px;
}

.hh-modal__lead {
  color: var(--hh-warm);
  margin: 0;
  padding: .75rem 1rem 0;
  font-size: .95rem;
  line-height: 1.45;
}

.hh-modal__body {
  padding: .85rem 1rem 1.1rem;
  overflow-y: auto;
}

.hh-modal__body ul {
  color: var(--hh-cream);
  margin: 0;
  padding-left: 1.15rem;
  font-size: .92rem;
  line-height: 1.5;
}

.hh-modal__body li + li {
  margin-top: .55rem;
}

.hh-modal__success {
  padding: 1rem;
  overflow-y: auto;
}

.hh-modal__success-title {
  font-family: var(--font-display), ui-sans-serif, sans-serif;
  letter-spacing: .06em;
  color: var(--hh-hot);
  margin: 0 0 .5rem;
  font-size: 1.05rem;
}

.hh-modal__error {
  color: var(--hh-hot);
  margin: 0;
  font-size: .9rem;
}

.hh-modal__actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .6rem;
  padding-top: .25rem;
  display: flex;
}

.hh-modal__done, .hh-modal__submit {
  min-height: 2.75rem;
  padding: .65rem 1rem;
}

.hh-btn-secondary {
  border: 1px solid var(--hh-border-strong);
  min-height: 2.75rem;
  color: var(--hh-cream);
  background: #140c08e6;
  padding: .55rem .9rem;
}

.hh-contact-form {
  gap: .7rem;
  padding: .75rem 1rem 1rem;
  display: grid;
  overflow-y: auto;
}

.hh-field {
  color: var(--hh-muted);
  gap: .3rem;
  font-size: .88rem;
  display: grid;
}

.hh-field input, .hh-field textarea {
  width: 100%;
  color: var(--hh-cream);
  font: inherit;
  background: #080503d9;
  border: 1px solid #ff8c3c66;
  padding: .55rem .65rem;
}

.hh-field input:focus-visible, .hh-field textarea:focus-visible {
  outline: 2px solid var(--hh-orange);
  outline-offset: 1px;
}

.hh-field-row {
  gap: .65rem;
  display: grid;
}

@media (min-width: 640px) {
  .hh-field-row {
    grid-template-columns: 1fr 1fr;
  }
}

.hh-field-note {
  color: var(--hh-muted);
  margin: -.25rem 0 0;
  font-size: .78rem;
}

.hh-fieldset {
  border: 1px solid var(--hh-border);
  margin: 0;
  padding: .55rem .65rem .7rem;
}

.hh-fieldset legend {
  color: var(--hh-muted);
  padding: 0 .25rem;
  font-size: .85rem;
}

.hh-choice-grid {
  gap: .4rem;
  display: grid;
}

@media (min-width: 640px) {
  .hh-choice-grid {
    grid-template-columns: 1fr 1fr;
  }
}

.hh-choice-row {
  flex-wrap: wrap;
  gap: .4rem;
  display: flex;
}

.hh-choice {
  cursor: pointer;
  min-height: 2.4rem;
  color: var(--hh-cream);
  background: #120c08b3;
  border: 1px solid #ff8c3c59;
  align-items: center;
  gap: .45rem;
  padding: .4rem .55rem;
  font-size: .82rem;
  display: flex;
}

.hh-choice:has(input:checked) {
  border-color: var(--hh-orange);
  background: #ff65002e;
}

.hh-choice input {
  accent-color: var(--hh-orange);
}

@media (max-width: 767px) {
  .hh-modal {
    align-items: flex-end;
    padding: 0;
  }

  .hh-modal__panel, .hh-modal__panel--sheet {
    border-radius: .75rem .75rem 0 0;
    width: 100%;
    max-height: min(94vh, 920px);
  }
}

.hh-boot {
  z-index: 40;
  overscroll-behavior: none;
  pointer-events: auto;
  touch-action: none;
  width: 100vw;
  max-width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  padding: max(.5rem, env(safe-area-inset-top))
    max(.75rem, env(safe-area-inset-right))
    max(.5rem, env(safe-area-inset-bottom))
    max(.75rem, env(safe-area-inset-left));
  background: #050302;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.hh-boot--passthrough {
  background: none;
  pointer-events: none !important;
}

.hh-boot__void {
  background: radial-gradient(at 50% 42%, #46200c8c, #0000 58%), #050302;
  position: absolute;
  inset: 0;
}

.hh-boot__noise {
  opacity: .2;
  pointer-events: none;
  background-image: repeating-linear-gradient(0deg, #ffc88c0f 0, #0000 1px 3px);
  animation: .18s steps(2, end) infinite hh-boot-noise;
  position: absolute;
  inset: 0;
}

.hh-boot__tear {
  pointer-events: none;
  opacity: 0;
  z-index: 4;
  position: absolute;
  inset: 0;
}

.hh-boot__micro {
  bottom: max(1.4rem, env(safe-area-inset-bottom));
  z-index: 3;
  font-family: var(--font-mono), ui-monospace, monospace;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #ffaa64c7;
  white-space: nowrap;
  text-align: center;
  margin: 0;
  font-size: .72rem;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.hh-boot__logo-wrap, .hh-boot__pumpkin-wrap {
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  justify-content: center;
  align-items: center;
  transition: none;
  display: flex;
  position: absolute;
  inset: 0;
}

.hh-boot__logo-wrap.is-active, .hh-boot__pumpkin-wrap.is-active {
  opacity: 1;
  visibility: visible;
}

.hh-boot__logo {
  object-fit: contain;
  filter: drop-shadow(0 0 32px #ff65006b);
  width: min(42vw, 560px);
  max-width: 92vw;
  height: auto;
}

.hh-boot__pumpkin {
  object-fit: contain;
  filter: drop-shadow(0 0 40px #ff65009e);
  width: min(26vw, 300px);
  max-width: 70vw;
  height: auto;
}

.hh-boot__signal {
  z-index: 5;
  font-family: var(--font-mono), ui-monospace, monospace;
  letter-spacing: .22em;
  color: var(--hh-crt);
  text-shadow: 0 0 18px #8edf8a8c;
  margin: 0;
  font-size: clamp(.9rem, 2.6vw, 1.2rem);
  animation: 1.4s ease-out both hh-boot-signal;
  position: relative;
}

.hh-boot--black .hh-boot__noise {
  opacity: .12;
}

.hh-boot--burst .hh-boot__tear {
  opacity: 1;
  mix-blend-mode: screen;
  background: repeating-linear-gradient(90deg, #0000 0 12px, #ffdcb466 12px 14px, #0000 14px 28px), #ff782829;
  animation: .38s steps(3, end) both hh-boot-burst;
}

.hh-boot--logo .hh-boot__logo {
  animation: .9s cubic-bezier(.2, .8, .2, 1) both hh-boot-logo-in;
}

.hh-boot--logo-out .hh-boot__logo {
  animation: .32s steps(3, end) both hh-boot-logo-out;
}

.hh-boot--pumpkin .hh-boot__pumpkin {
  animation: .9s ease-out both hh-boot-pumpkin-in;
}

.hh-boot--pumpkin-out .hh-boot__pumpkin {
  animation: .32s steps(2, end) both hh-boot-pumpkin-out;
}

.hh-boot--gap-static .hh-boot__void, .hh-boot--static .hh-boot__void {
  animation: .32s steps(4, end) both hh-boot-static-flash;
}

.hh-boot--gap-static .hh-boot__tear, .hh-boot--static .hh-boot__tear {
  opacity: .9;
  background: repeating-linear-gradient(0deg, #000000eb 0 2px, #ffb46466 2px 3px, #0000 3px 6px);
  animation: .32s linear both hh-boot-static-roll;
}

.hh-boot--handoff {
  background: none;
}

.hh-boot--handoff .hh-boot__void {
  opacity: 0;
}

.hh-reveal {
  opacity: 0;
  filter: brightness(.7) contrast(1.1);
  pointer-events: none;
  will-change: opacity, transform;
  transition: opacity .16s, transform .18s, filter .2s;
  transform: translateY(8px);
}

.hh-reveal--in {
  opacity: 1;
  filter: none;
  pointer-events: auto;
  transform: translateY(0);
}

.hh-composer-wrap {
  width: 100%;
}

.hh-type-caret {
  color: var(--hh-hot);
  margin-left: .08em;
  animation: .7s step-end infinite hh-type-caret;
  display: inline-block;
}

.haunted-shell--stabilize {
  animation: 1.4s ease-out both hh-stabilize;
}

@media (max-width: 767px) {
  .haunted-shell--stabilize {
    animation: 1.4s ease-out both hh-stabilize-mobile;
  }
}

.haunted-shell--stabilize .hh-noise-overlay {
  opacity: .58 !important;
}

.haunted-shell--stabilize .hh-crt-overlay {
  opacity: .92;
  animation-duration: 2.4s;
}

.haunted-shell--stabilize .hh-stage {
  filter: contrast(1.14) saturate(1.1);
}

.haunted-shell--intro[data-hh-intro="booting"] .hh-stage {
  visibility: hidden;
}

@media (max-width: 767px) {
  .hh-boot__logo {
    width: 80vw;
    max-width: 80vw;
  }

  .hh-boot__pumpkin {
    width: 55vw;
    max-width: 55vw;
  }

  .hh-boot__micro {
    letter-spacing: .11em;
    white-space: normal;
    text-align: center;
    max-width: 88vw;
    font-size: .6rem;
    line-height: 1.35;
  }

  .hh-reveal {
    transform: translateY(5px);
  }
}

@media (max-width: 360px) {
  .hh-boot__logo {
    width: 84vw;
    max-width: 84vw;
  }

  .hh-boot__pumpkin {
    width: 58vw;
    max-width: 58vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hh-boot__noise, .hh-boot--burst .hh-boot__tear, .hh-boot--logo .hh-boot__logo, .hh-boot--logo-out .hh-boot__logo, .hh-boot--pumpkin .hh-boot__pumpkin, .hh-boot--pumpkin-out .hh-boot__pumpkin, .hh-boot--gap-static .hh-boot__void, .hh-boot--static .hh-boot__void, .hh-boot--gap-static .hh-boot__tear, .hh-boot--static .hh-boot__tear, .hh-boot__signal, .haunted-shell--stabilize, .hh-type-caret {
    animation: none !important;
  }

  .hh-boot--logo .hh-boot__logo-wrap.is-active, .hh-boot--pumpkin .hh-boot__pumpkin-wrap.is-active {
    opacity: 1;
    visibility: visible;
  }

  .hh-boot--logo .hh-boot__logo, .hh-boot--pumpkin .hh-boot__pumpkin {
    opacity: 1;
    filter: none;
    transform: none;
  }

  .hh-reveal {
    filter: none;
    transition: opacity .2s;
    transform: none;
  }
}

@keyframes hh-boot-noise {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(2px);
  }
}

@keyframes hh-boot-burst {
  0% {
    opacity: 0;
    transform: scaleY(1.4);
  }

  40% {
    opacity: 1;
    transform: scaleY(1)translateX(-12px);
  }

  70% {
    opacity: .8;
    transform: translateX(18px);
  }

  100% {
    opacity: 0;
    transform: none;
  }
}

@keyframes hh-boot-logo-in {
  0% {
    opacity: 0;
    filter: drop-shadow(0 0 #0000) contrast(2) saturate(2) hue-rotate(-20deg);
    transform: scale(1.06)translateX(-14px);
  }

  35% {
    opacity: 1;
    filter: drop-shadow(-3px 0 #ff28288c) drop-shadow(3px 0 #28b4ff73) contrast(1.4);
    transform: scale(1.02)translateX(10px);
  }

  70% {
    transform: scale(1)translateX(-3px);
  }

  100% {
    opacity: 1;
    filter: drop-shadow(0 0 28px #ff650059);
    transform: none;
  }
}

@keyframes hh-boot-logo-out {
  0% {
    opacity: 1;
    transform: none;
  }

  40% {
    opacity: 1;
    filter: drop-shadow(6px 0 #ff2828b3) drop-shadow(-6px 0 #28b4ff99);
    transform: translateX(-18px)skewX(-4deg);
  }

  100% {
    opacity: 0;
    filter: contrast(2) brightness(1.6);
    transform: translateX(22px)scaleY(1.2);
  }
}

@keyframes hh-boot-pumpkin-in {
  0% {
    opacity: 0;
    filter: drop-shadow(0 0 #0000) brightness(.2);
    transform: scale(.92);
  }

  55% {
    opacity: 1;
    filter: drop-shadow(0 0 48px #ff6500bf) brightness(1.15);
    transform: scale(1.03);
  }

  100% {
    opacity: 1;
    filter: drop-shadow(0 0 36px #ff65008c);
    transform: none;
  }
}

@keyframes hh-boot-pumpkin-out {
  0% {
    opacity: 1;
  }

  50% {
    opacity: .7;
    filter: drop-shadow(-8px 0 #ff282899) drop-shadow(8px 0 #28b4ff80);
    transform: translateX(12px);
  }

  100% {
    opacity: 0;
    filter: brightness(2);
    transform: scale(1.08);
  }
}

@keyframes hh-boot-static-flash {
  0%, 100% {
    filter: none;
  }

  30% {
    filter: contrast(1.8) brightness(1.4);
  }

  60% {
    filter: contrast(.7) brightness(.5);
  }
}

@keyframes hh-boot-static-roll {
  0% {
    opacity: .4;
    transform: translateY(-8%);
  }

  100% {
    opacity: .9;
    transform: translateY(8%);
  }
}

@keyframes hh-boot-signal {
  0% {
    opacity: 0;
    letter-spacing: .4em;
  }

  30% {
    opacity: 1;
  }

  75% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes hh-stabilize {
  0% {
    filter: contrast(1.35) brightness(1.15) saturate(1.2);
    transform: translateX(0);
  }

  18% {
    transform: translateX(-10px);
  }

  32% {
    filter: contrast(1.5) brightness(.85);
    transform: translateX(14px);
  }

  48% {
    transform: translateX(-6px)translateY(2px);
  }

  62% {
    transform: translateX(8px);
  }

  100% {
    filter: none;
    transform: none;
  }
}

@keyframes hh-stabilize-mobile {
  0% {
    filter: contrast(1.25) brightness(1.1);
  }

  40% {
    filter: contrast(1.4) brightness(.9);
  }

  100% {
    filter: none;
  }
}

@keyframes hh-type-caret {
  0%, 49% {
    opacity: 1;
  }

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

.hh-hp {
  width: 1px;
  height: 1px;
  position: absolute;
  top: auto;
  left: -10000px;
  overflow: hidden;
}

.hh-field-note--tight {
  margin: 0 0 .45rem;
}

.hh-modal__success-pumpkin {
  object-fit: contain;
  filter: drop-shadow(0 0 18px #ff65008c);
  width: 5.5rem;
  height: 5.5rem;
  margin: 0 auto .75rem;
  animation: 2.2s ease-in-out 2 hh-pumpkin-pulse;
  display: block;
}

@property --tw-space-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-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-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__0bp-d8_._.css.map*/