@layer base, area;
@layer base {
  :root {
    color-scheme: dark;
    --brand: #ea3323;
    --brand-900: #b8261a;
    --highlight: #ea3323;
    --highlight-600: #f0564a;
    --highlight-700: #ff7a6e;
    --ink: #ededea;
    --slate: #9a9a96;
    --grey-400: #5c5c59;
    --grey-300: #3a3a38;
    --grey-200: #262424;
    --grey-100: #17171d;
    --white: #ffffff;
    --black: #0b0b0b;
    --bg: var(--black);
    --surface-1: var(--grey-100);
    --surface-2: var(--grey-200);
    --text: var(--ink);
    --text-muted: var(--slate);
    --text-disabled: var(--grey-400);
    --text-on-dark-muted: var(--grey-300);
    --border: var(--grey-200);
    --border-strong: var(--grey-300);
    --border-hover: var(--grey-400);
    --primary: var(--brand);
    --primary-hover: var(--brand-900);
    --on-primary: var(--black);
    --accent: var(--highlight);
    --accent-hover: var(--highlight-600);
    --on-accent: var(--black);
    --accent-text: var(--highlight-700);
    --success: #15803d;
    --success-bg: #e7f6ec;
    --warning: #8a5a00;
    --warning-bg: #fff3d6;
    --warning-dot: #e5a400;
    --error: #b42318;
    --error-bg: #fde8e6;
    --error-bg-soft: #fff7f6;
    --focus: var(--accent-text);
    --overlay: rgb(0 0 0 / 60%);
    --font-ui: Montserrat, system-ui, -apple-system, "Segoe UI", sans-serif;
    --font-display: Outfit, Montserrat, system-ui, sans-serif;
    --font-title: "Climate Crisis", sans-serif;
    --font-pixel: "Silkscreen", monospace;
    --font-comic: "Comic Sans MS", "Comic Sans", "Comic Neue", cursive;
    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;
    --fs-display-xl: clamp(3.6rem, 2.6rem + 2.6vw, 5.6rem);
    --fs-display-l: clamp(2.8rem, 2.2rem + 1.6vw, 4rem);
    --fs-display-m: clamp(2.2rem, 1.9rem + 0.8vw, 2.8rem);
    --fs-number: clamp(2.6rem, 2.2rem + 1vw, 3.2rem);
    --fs-price: 2.2rem;
    --fs-title: 1.8rem;
    --fs-body: 1.6rem;
    --fs-label: 1.4rem;
    --fs-small: 1.3rem;
    --fs-caption: 1.2rem;
    --fs-overline: 1.2rem;
    --fs-micro: 1.1rem;
    --lh-display-xl: 1.05;
    --lh-display-l: 1.1;
    --lh-display-m: 1.2;
    --lh-title: 1.35;
    --lh-body: 1.6;
    --lh-ui: 1.5;
    --lh-tight: 1;
    --ls-display: -0.01em;
    --ls-overline: 0.08em;
    --space-1: 0.4rem;
    --space-2: 0.8rem;
    --space-3: 1.2rem;
    --space-4: 1.6rem;
    --space-5: 2.4rem;
    --space-6: 3.2rem;
    --space-7: 4.8rem;
    --space-8: 6.4rem;
    --space-9: 9.6rem;
    --whitespace: clamp(4.8rem, 3rem + 4.5vw, 9.6rem);
    --container: 136rem;
    --gutter: 1.6rem;
    --layout-gap: var(--space-6);
    --radius-s: 0.6rem;
    --radius-m: 0.8rem;
    --radius-l: 1.2rem;
    --radius-pill: 999px;
    --border-width: 1px;
    --control-border-width: 1.5px;
    --shadow-hover: 0 8px 24px rgb(15 23 42 / 10%);
    --shadow-overlay: 0 16px 40px rgb(15 23 42 / 16%);
    --control-h-s: 4rem;
    --control-h: 4.8rem;
    --control-h-l: 5.6rem;
    --tap-min: 4.4rem;
    --duration-fast: 0.15s;
    --duration: 0.25s;
    --duration-slow: 0.45s;
    --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --z-sticky: 10;
    --z-header: 50;
    --z-dropdown: 60;
    --z-drawer: 80;
    --z-overlay: 90;
    --z-toast: 100;
  }
  @media (width >= 600px) {
    :root {
      --gutter: 2.4rem;
    }
  }
  @media (width >= 1024px) {
    :root {
      --fs-body: 1.5rem;
    }
  }
  *,
  *::before,
  *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  html {
    font-size: 62.5%;
    text-size-adjust: 100%;
    overflow-x: clip;
    scrollbar-color: var(--border-strong) transparent;
  }
  @media (prefers-reduced-motion: no-preference) {
    html {
      scroll-behavior: smooth;
    }
  }
  body {
    overflow-x: clip;
    background-color: var(--bg);
    color: var(--text);
    font-family: var(--font-ui);
    line-height: var(--lh-ui);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  ul,
  ol {
    list-style: none;
  }
  img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
    height: auto;
  }
  input, button, textarea, select {
    font: inherit;
    color: inherit;
    background-color: transparent;
    border: 0;
  }
  button, label, select, summary {
    cursor: pointer;
  }
  a {
    color: inherit;
    text-decoration: none;
  }
  table {
    border-collapse: collapse;
  }
  @media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
    }
  }
  p, li, dt, dd, td, th, label, legend, blockquote, figcaption,
  input, select, textarea, button {
    font-size: var(--fs-body);
  }
  p, dd, blockquote {
    line-height: var(--lh-body);
  }
  h1, h2, h3, h4, h5, h6 {
    color: var(--primary);
    text-wrap: balance;
  }
  h1, h2 {
    font-family: var(--font-display);
    font-weight: var(--fw-bold);
    letter-spacing: var(--ls-display);
  }
  h1 {
    font-size: var(--fs-display-l);
    line-height: var(--lh-display-l);
  }
  h2 {
    font-size: var(--fs-display-m);
    line-height: var(--lh-display-m);
  }
  h3 {
    font-size: var(--fs-title);
    font-weight: var(--fw-semibold);
    line-height: var(--lh-title);
  }
  h4, h5, h6 {
    font-size: var(--fs-label);
    font-weight: var(--fw-semibold);
    line-height: var(--lh-ui);
  }
  b, strong {
    font-weight: var(--fw-bold);
  }
  :where(p, li, dd, td) a:not([class]) {
    color: var(--primary);
    font-weight: var(--fw-semibold);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.3em;
  }
  :where(p, li, dd, td) a:not([class]):hover {
    color: var(--accent-text);
  }
  :focus-visible {
    outline: 2px solid var(--focus);
    outline-offset: 2px;
  }
  ::selection {
    background-color: var(--white);
    color: var(--primary);
  }
  ::placeholder {
    color: var(--text-disabled);
    opacity: 1;
  }
  .display-xl, .display-l, .display-m, .number, .price {
    font-family: var(--font-display);
    font-weight: var(--fw-bold);
  }
  .display-xl {
    font-size: var(--fs-display-xl);
    line-height: var(--lh-display-xl);
    letter-spacing: var(--ls-display);
  }
  .display-l {
    font-size: var(--fs-display-l);
    line-height: var(--lh-display-l);
    letter-spacing: var(--ls-display);
  }
  .display-m {
    font-size: var(--fs-display-m);
    line-height: var(--lh-display-m);
  }
  .number {
    font-size: var(--fs-number);
    line-height: var(--lh-tight);
    font-variant-numeric: tabular-nums;
  }
  .price {
    font-size: var(--fs-price);
    line-height: var(--lh-tight);
    font-variant-numeric: tabular-nums;
  }
  .title {
    font-size: var(--fs-title);
    font-weight: var(--fw-semibold);
    line-height: var(--lh-title);
  }
  .body {
    font-size: var(--fs-body);
    line-height: var(--lh-body);
  }
  .label {
    font-size: var(--fs-label);
    font-weight: var(--fw-semibold);
    line-height: var(--lh-ui);
  }
  .small {
    font-size: var(--fs-small);
    line-height: var(--lh-ui);
  }
  .caption {
    font-size: var(--fs-caption);
    line-height: var(--lh-ui);
    color: var(--text-muted);
  }
  .overline {
    font-size: var(--fs-overline);
    font-weight: var(--fw-bold);
    line-height: var(--lh-ui);
    letter-spacing: var(--ls-overline);
    text-transform: uppercase;
    color: var(--accent-text);
  }
  .muted {
    color: var(--text-muted);
  }
  .squares {
    display: inline-flex;
    gap: 0.5rem;
  }
  .squares > span {
    width: 0.8rem;
    height: 0.8rem;
    border: 2px solid var(--accent);
  }
  .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    min-height: var(--control-h);
    padding-inline: 2.2rem;
    border: var(--control-border-width) solid transparent;
    border-radius: var(--radius-m);
    font-size: 1.5rem;
    font-weight: var(--fw-semibold);
    line-height: 1.2;
    cursor: pointer;
    transition: background-color var(--duration-fast), border-color var(--duration-fast), color var(--duration-fast);
  }
  .button svg {
    flex-shrink: 0;
    width: 1.8rem;
    height: 1.8rem;
  }
  .button.primary {
    background-color: var(--primary);
    color: var(--on-primary);
  }
  .button.primary:hover {
    background-color: var(--primary-hover);
  }
  .button.secondary {
    border-color: var(--primary);
    background-color: var(--bg);
    color: var(--primary);
  }
  .button.secondary:hover {
    background-color: var(--surface-1);
  }
  .button.accent {
    background-color: var(--accent);
    color: var(--on-accent);
    font-weight: var(--fw-bold);
  }
  .button.accent:hover {
    background-color: var(--accent-hover);
  }
  .button.large {
    min-height: var(--control-h-l);
    padding-inline: 2.8rem;
    font-size: 1.6rem;
  }
  .tabular {
    font-variant-numeric: tabular-nums;
  }
  .wrapper {
    width: min(100% - 2 * var(--gutter), var(--container));
    margin-inline: auto;
  }
  .section {
    padding-block: var(--whitespace);
  }
  .section-s {
    padding-block: calc(var(--whitespace) * 2 / 3);
  }
  .section-s:not(.section-contrast) + .section-s:not(.section-contrast) {
    padding-top: 0;
  }
  .section-contrast {
    --text: var(--on-primary);
    --text-muted: var(--text-on-dark-muted);
    --focus: var(--accent);
    --diagonal: 88%;
    position: relative;
    overflow: hidden;
    background-color: var(--primary);
    color: var(--on-primary);
  }
  .section-contrast::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, transparent var(--diagonal), var(--accent) var(--diagonal), var(--accent) calc(var(--diagonal) + 3px), transparent calc(var(--diagonal) + 3px));
    pointer-events: none;
  }
  @media (width >= 1024px) {
    .section-contrast {
      --diagonal: 30%;
    }
  }
  .section-contrast > * {
    position: relative;
  }
  .section-contrast :where(h1, h2, h3) {
    color: inherit;
  }
  .section-contrast .overline {
    color: var(--accent);
  }
  .layout-aside-left,
  .layout-aside-right {
    display: grid;
    gap: var(--layout-gap);
    align-items: start;
  }
  @media (width >= 1024px) {
    .layout-aside-left {
      grid-template-columns: var(--aside-width, 28rem) minmax(0, 1fr);
    }
    .layout-aside-right {
      grid-template-columns: minmax(0, 1fr) var(--aside-width, 40rem);
    }
  }
  .layout-narrow {
    width: min(100%, var(--narrow-width, 88rem));
    margin-inline: auto;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
}
@layer area {
  @font-face {
    font-family: "Climate Crisis";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/fonts/ClimateCrisis/ClimateCrisis-latin-ext.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
  }
  @font-face {
    font-family: "Climate Crisis";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/fonts/ClimateCrisis/ClimateCrisis-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  }
  .landing-page {
    padding-bottom: 100px;
  }
  .landing {
    display: flex;
    flex-direction: column;
  }
  @media (width >= 600px) {
    .landing {
      flex-direction: row-reverse;
      align-items: center;
      width: min(100%, 1300px);
      margin: 0 auto;
    }
  }
  .landing-media {
    width: 100%;
    aspect-ratio: 2/1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid #17171d;
  }
  @media (width >= 600px) {
    .landing-media {
      border-left: 1px solid #17171d;
      border-bottom: none;
    }
  }
  @media (width >= 600px) {
    .landing-copy {
      width: 100%;
    }
  }
  .landing-title {
    padding: 40px 20px 60px;
    font-family: var(--font-title);
    font-size: 42px;
    font-weight: 100;
    line-height: 1.2;
    letter-spacing: normal;
    text-wrap: wrap;
    color: #ea3323;
  }
  .eye-strip {
    height: 72px;
    background: url("/images/eye/eye-strip-white.webp") repeat-x;
    background-size: auto 100%;
    image-rendering: pixelated;
  }
  .notice {
    padding: 40px 20px 10px;
  }
  .notice-title {
    font-family: "Times New Roman", Times, serif;
    font-size: 20px;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: #ea3323;
  }
  @font-face {
    font-family: "Silkscreen";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/fonts/Silkscreen/Silkscreen-latin-ext.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
  }
  @font-face {
    font-family: "Silkscreen";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/fonts/Silkscreen/Silkscreen-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  }
  .webbuttons {
    --px: 3px;
  }
  @media (width < 420px) {
    .webbuttons {
      --px: 1.8px;
    }
  }
  .webbuttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: calc(var(--px) * 4);
    padding: 40px 20px;
  }
  .webbutton {
    --bg: #0a0a0a;
    --ink: #29854D;
    --light: #3aa565;
    --dark: #0e2418;
    position: relative;
    overflow: hidden;
    width: calc(var(--px) * 88);
    height: calc(var(--px) * 31);
    padding: 0 calc(var(--px) * 3);
    display: flex;
    align-items: center;
    gap: calc(var(--px) * 3);
    background-color: var(--bg);
    color: var(--ink);
    border: var(--px) solid;
    border-color: var(--light) var(--dark) var(--dark) var(--light);
    box-shadow: inset var(--px) var(--px) 0 rgba(255, 255, 255, 0.12), inset calc(var(--px) * -1) calc(var(--px) * -1) 0 rgba(0, 0, 0, 0.5);
    font-family: var(--font-pixel);
    font-size: calc(var(--px) * 8);
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .webbutton:hover, .webbutton:focus-visible {
    border-color: var(--dark) var(--light) var(--light) var(--dark);
    box-shadow: inset var(--px) var(--px) 0 rgba(0, 0, 0, 0.5), inset calc(var(--px) * -1) calc(var(--px) * -1) 0 rgba(255, 255, 255, 0.12);
  }
  .webbutton:active {
    transform: translate(var(--px), var(--px));
  }
  .webbutton-varage {
    --bg: #0e2418;
    --ink: #4cc07c;
    --light: #4cc07c;
    --dark: #050505;
  }
  .webbutton-k2integris {
    --bg: #0f0f0f;
    --ink: #BC976F;
    --light: #e0c39f;
    --dark: #5e4a35;
  }
  .webbutton-k2integris::after {
    content: "";
    position: absolute;
    top: 0;
    left: calc(var(--px) * -20);
    width: calc(var(--px) * 10);
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.8), transparent);
    transform: skewX(-20deg);
    animation: webbutton-shine 4s ease-in-out infinite;
    pointer-events: none;
  }
  .webbutton-icon {
    position: relative;
    flex: none;
    width: calc(var(--px) * 23);
    height: calc(var(--px) * 23);
    display: grid;
    place-items: center;
  }
  .webbutton-icon svg {
    width: 100%;
    height: auto;
  }
  .webbutton-rings .ring {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .webbutton-rings .exterior {
    width: 100%;
    height: 100%;
    animation: ring-cw 2.6s linear infinite;
  }
  .webbutton-rings .interior {
    width: 58.7%;
    height: 58.7%;
    animation: ring-ccw 2.6s linear infinite;
  }
  .webbutton-text {
    flex: 1;
    text-align: center;
  }
  @keyframes ring-cw {
    from {
      transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
      transform: translate(-50%, -50%) rotate(360deg);
    }
  }
  @keyframes ring-ccw {
    from {
      transform: translate(-50%, -50%) rotate(0deg);
    }
    to {
      transform: translate(-50%, -50%) rotate(-360deg);
    }
  }
  @keyframes webbutton-shine {
    0%, 70% {
      left: calc(var(--px) * -20);
    }
    100% {
      left: calc(var(--px) * 100);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .webbutton-rings .ring,
    .webbutton-k2integris::after {
      animation: none;
    }
  }
  @font-face {
    font-family: "Comic Neue";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("/fonts/ComicNeue/ComicNeue-latin.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  }
  .contact {
    padding: 40px 20px;
  }
  .contact address {
    font-style: normal;
  }
  .contact dl {
    max-width: 480px;
    margin: 0 auto;
    display: grid;
    gap: 18px;
    font-family: var(--font-comic);
    color: #ededea;
  }
  .contact dl div {
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 12px;
    padding-bottom: 18px;
    border-bottom: 1px dashed #262424;
  }
  .contact dl div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .contact dt,
  .contact dd {
    font-size: 16px;
    line-height: 1.5;
  }
  .contact dt {
    color: #ea3323;
  }
  .contact dd {
    overflow-wrap: anywhere;
  }
  .contact a {
    color: inherit;
    text-decoration: underline;
    text-decoration-color: #ea3323;
    text-underline-offset: 3px;
  }
  .contact a:hover, .contact a:focus-visible {
    color: #ea3323;
  }
  .contact-title {
    margin-bottom: 30px;
    font-family: "Times New Roman", Times, serif;
    font-size: 20px;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    color: #ea3323;
  }
  .sound-toggle {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 100;
    width: 64px;
  }
  .sound-toggle-x {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: none;
    pointer-events: none;
  }
  .sound-toggle.is-off .sound-toggle-x {
    display: block;
  }
}

/*# sourceMappingURL=home.css.map */
