/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --spacing: 0.25rem;
    --default-font-family: var(--font-sans);
    --font-serif: "Albaro", serif;
    --font-sans: "ZTNature", sans-serif;
    --font-weight-extralight: 200;
    --font-weight-light: 300;
    --text-10: 0.625rem;
    --text-11: 0.6875rem;
    --text-14: 0.875rem;
    --text-15: 0.9375rem;
    --text-16: 1rem;
    --text-17: 1.0625rem;
    --text-19: 1.1875rem;
    --text-20: 1.25rem;
    --text-22: 1.375rem;
    --text-23: 1.4375rem;
    --text-24: 1.5rem;
    --text-27: 1.6875rem;
    --text-28: 1.75rem;
    --text-29: 1.8125rem;
    --text-31: 1.9375rem;
    --leading-tight: 1.2;
    --leading-normal: 1.4375;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --color-white: #fff;
    --color-off-white: #f2ede8;
    --color-dark: #38162a;
    --color-hero-placeholder: #ceaabb;
    --container-960: 63.75rem;
    --animate-hero-bg: hero-bg 7.5s cubic-bezier(0.2, 0, 0.8, 1) infinite
    alternate;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .relative {
    position: relative;
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .inset-y-22\.5 {
    inset-block: calc(var(--spacing) * 22.5);
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-7 {
    top: calc(var(--spacing) * 7);
  }
  .right-7 {
    right: calc(var(--spacing) * 7);
  }
  .right-full {
    right: 100%;
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .col-start-3 {
    grid-column-start: 3;
  }
  .col-start-4 {
    grid-column-start: 4;
  }
  .col-start-6 {
    grid-column-start: 6;
  }
  .col-start-7 {
    grid-column-start: 7;
  }
  .col-start-\[content\] {
    grid-column-start: content;
  }
  .-col-end-4 {
    grid-column-end: calc(4 * -1);
  }
  .col-end-12 {
    grid-column-end: 12;
  }
  .col-end-\[content\] {
    grid-column-end: content;
  }
  .mx-\[0\.2em\] {
    margin-inline: 0.2em;
  }
  .mx-auto {
    margin-inline: auto;
  }
  .-mt-\[50vh\] {
    margin-top: calc(50vh * -1);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mr-6 {
    margin-right: calc(var(--spacing) * 6);
  }
  .mb-14 {
    margin-bottom: calc(var(--spacing) * 14);
  }
  .mb-20 {
    margin-bottom: calc(var(--spacing) * 20);
  }
  .-ml-px {
    margin-left: -1px;
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-flex {
    display: inline-flex;
  }
  .aspect-11\/7 {
    aspect-ratio: 11/7;
  }
  .aspect-109\/120 {
    aspect-ratio: 109/120;
  }
  .aspect-260\/312 {
    aspect-ratio: 260/312;
  }
  .aspect-\[13\.841\/9\.012\] {
    aspect-ratio: 13.841/9.012;
  }
  .aspect-\[95\/104\.74\] {
    aspect-ratio: 95/104.74;
  }
  .aspect-\[210\/78\.42\] {
    aspect-ratio: 210/78.42;
  }
  .h-1\/2 {
    height: calc(1 / 2 * 100%);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-\[93\%\] {
    height: 93%;
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .min-h-\[50vh\] {
    min-height: 50vh;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\/2 {
    width: calc(1 / 2 * 100%);
  }
  .w-2\.25 {
    width: calc(var(--spacing) * 2.25);
  }
  .w-2\.75 {
    width: calc(var(--spacing) * 2.75);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-\[0\.81em\] {
    width: 0.81em;
  }
  .w-\[90px\] {
    width: 90px;
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .max-w-50 {
    max-width: calc(var(--spacing) * 50);
  }
  .max-w-65 {
    max-width: calc(var(--spacing) * 65);
  }
  .max-w-85 {
    max-width: calc(var(--spacing) * 85);
  }
  .min-w-250 {
    min-width: calc(var(--spacing) * 250);
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .grid-flow-dense {
    grid-auto-flow: dense;
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-\[auto_auto\] {
    grid-template-columns: auto auto;
  }
  .flex-col {
    flex-direction: column;
  }
  .items-center {
    align-items: center;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-x-5 {
    column-gap: calc(var(--spacing) * 5);
  }
  .gap-y-20 {
    row-gap: calc(var(--spacing) * 20);
  }
  .gap-y-40 {
    row-gap: calc(var(--spacing) * 40);
  }
  .gap-y-\[7vh\] {
    row-gap: 7vh;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded-\[200px\] {
    border-radius: 200px;
  }
  .rounded-t-\[20px\] {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }
  .rounded-b-\[50vh\] {
    border-bottom-right-radius: 50vh;
    border-bottom-left-radius: 50vh;
  }
  .bg-current {
    background-color: currentcolor;
  }
  .bg-dark {
    background-color: var(--color-dark);
  }
  .bg-hero-placeholder {
    background-color: var(--color-hero-placeholder);
  }
  .bg-linear-to-b {
    --tw-gradient-position: to bottom;
    @supports (background-image: linear-gradient(in lab, red, red)) {
      --tw-gradient-position: to bottom in oklab;
    }
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-off-white {
    --tw-gradient-from: var(--color-off-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-white {
    --tw-gradient-via: var(--color-white);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-62\% {
    --tw-gradient-via-position: 62%;
  }
  .to-off-white {
    --tw-gradient-to: var(--color-off-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .object-cover {
    object-fit: cover;
  }
  .object-\[0\%_32\%\] {
    object-position: 0% 32%;
  }
  .object-top {
    object-position: top;
  }
  .py-7 {
    padding-block: calc(var(--spacing) * 7);
  }
  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
  .pt-20 {
    padding-top: calc(var(--spacing) * 20);
  }
  .pt-28 {
    padding-top: calc(var(--spacing) * 28);
  }
  .pt-\[50vh\] {
    padding-top: 50vh;
  }
  .pr-\[0\.6em\] {
    padding-right: 0.6em;
  }
  .pb-14 {
    padding-bottom: calc(var(--spacing) * 14);
  }
  .pb-40 {
    padding-bottom: calc(var(--spacing) * 40);
  }
  .pl-\[1em\] {
    padding-left: 1em;
  }
  .pl-\[2\.075em\] {
    padding-left: 2.075em;
  }
  .text-right {
    text-align: right;
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .text-10 {
    font-size: var(--text-10);
  }
  .text-20 {
    font-size: var(--text-20);
  }
  .text-22 {
    font-size: var(--text-22);
  }
  .text-23 {
    font-size: var(--text-23);
  }
  .leading-9 {
    --tw-leading: calc(var(--spacing) * 9);
    line-height: calc(var(--spacing) * 9);
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-current {
    color: currentcolor;
  }
  .text-off-white {
    color: var(--color-off-white);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .before\:absolute {
    &::before {
      content: var(--tw-content);
      position: absolute;
    }
  }
  .before\:top-full {
    &::before {
      content: var(--tw-content);
      top: 100%;
    }
  }
  .before\:left-1\/2 {
    &::before {
      content: var(--tw-content);
      left: calc(1 / 2 * 100%);
    }
  }
  .before\:hidden {
    &::before {
      content: var(--tw-content);
      display: none;
    }
  }
  .before\:aspect-13\/11 {
    &::before {
      content: var(--tw-content);
      aspect-ratio: 13/11;
    }
  }
  .before\:w-9 {
    &::before {
      content: var(--tw-content);
      width: calc(var(--spacing) * 9);
    }
  }
  .before\:-translate-x-1\/2 {
    &::before {
      content: var(--tw-content);
      --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .before\:rounded-full {
    &::before {
      content: var(--tw-content);
      border-radius: calc(infinity * 1px);
    }
  }
  .before\:bg-off-white {
    &::before {
      content: var(--tw-content);
      background-color: var(--color-off-white);
    }
  }
  .before\:duration-200 {
    &::before {
      content: var(--tw-content);
      --tw-duration: 200ms;
      transition-duration: 200ms;
    }
  }
  .hover\:translate-y-3 {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * 3);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:before\:-translate-y-1 {
    &:hover {
      @media (hover: hover) {
        &::before {
          content: var(--tw-content);
          --tw-translate-y: calc(var(--spacing) * -1);
          translate: var(--tw-translate-x) var(--tw-translate-y);
        }
      }
    }
  }
  .focus-visible\:before\:-translate-y-1 {
    &:focus-visible {
      &::before {
        content: var(--tw-content);
        --tw-translate-y: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .xs\:col-start-3 {
    @media (width >= 32rem) {
      grid-column-start: 3;
    }
  }
  .xs\:col-start-4 {
    @media (width >= 32rem) {
      grid-column-start: 4;
    }
  }
  .xs\:col-start-5 {
    @media (width >= 32rem) {
      grid-column-start: 5;
    }
  }
  .xs\:col-start-7 {
    @media (width >= 32rem) {
      grid-column-start: 7;
    }
  }
  .xs\:-col-end-4 {
    @media (width >= 32rem) {
      grid-column-end: calc(4 * -1);
    }
  }
  .xs\:col-end-11 {
    @media (width >= 32rem) {
      grid-column-end: 11;
    }
  }
  .sm\:col-start-6 {
    @media (width >= 40rem) {
      grid-column-start: 6;
    }
  }
  .sm\:col-start-8 {
    @media (width >= 40rem) {
      grid-column-start: 8;
    }
  }
  .sm\:h-12 {
    @media (width >= 40rem) {
      height: calc(var(--spacing) * 12);
    }
  }
  .sm\:text-11 {
    @media (width >= 40rem) {
      font-size: var(--text-11);
    }
  }
  .sm\:text-31 {
    @media (width >= 40rem) {
      font-size: var(--text-31);
    }
  }
  .sm\:leading-12 {
    @media (width >= 40rem) {
      --tw-leading: calc(var(--spacing) * 12);
      line-height: calc(var(--spacing) * 12);
    }
  }
  .md\:absolute {
    @media (width >= 48rem) {
      position: absolute;
    }
  }
  .md\:bottom-0 {
    @media (width >= 48rem) {
      bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:left-1\/2 {
    @media (width >= 48rem) {
      left: calc(1 / 2 * 100%);
    }
  }
  .md\:col-start-7 {
    @media (width >= 48rem) {
      grid-column-start: 7;
    }
  }
  .md\:col-start-9 {
    @media (width >= 48rem) {
      grid-column-start: 9;
    }
  }
  .md\:col-start-10 {
    @media (width >= 48rem) {
      grid-column-start: 10;
    }
  }
  .md\:col-start-\[content\] {
    @media (width >= 48rem) {
      grid-column-start: content;
    }
  }
  .md\:col-end-7 {
    @media (width >= 48rem) {
      grid-column-end: 7;
    }
  }
  .md\:col-end-10 {
    @media (width >= 48rem) {
      grid-column-end: 10;
    }
  }
  .md\:col-end-\[content\] {
    @media (width >= 48rem) {
      grid-column-end: content;
    }
  }
  .md\:mt-0 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .md\:ml-auto {
    @media (width >= 48rem) {
      margin-left: auto;
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:h-12\.5 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 12.5);
    }
  }
  .md\:h-full {
    @media (width >= 48rem) {
      height: 100%;
    }
  }
  .md\:w-auto {
    @media (width >= 48rem) {
      width: auto;
    }
  }
  .md\:max-w-52\.5 {
    @media (width >= 48rem) {
      max-width: calc(var(--spacing) * 52.5);
    }
  }
  .md\:-translate-x-1\/2 {
    @media (width >= 48rem) {
      --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .md\:animate-hero-bg {
    @media (width >= 48rem) {
      animation: var(--animate-hero-bg);
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:items-center {
    @media (width >= 48rem) {
      align-items: center;
    }
  }
  .md\:justify-center {
    @media (width >= 48rem) {
      justify-content: center;
    }
  }
  .md\:px-3 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .md\:py-0 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 0);
    }
  }
  .md\:pt-40 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 40);
    }
  }
  .md\:pb-56 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 56);
    }
  }
  .md\:before\:block {
    @media (width >= 48rem) {
      &::before {
        content: var(--tw-content);
        display: block;
      }
    }
  }
  .lg\:px-4 {
    @media (width >= 56rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .xl\:col-start-1 {
    @media (width >= 62rem) {
      grid-column-start: 1;
    }
  }
  .xl\:col-start-2 {
    @media (width >= 62rem) {
      grid-column-start: 2;
    }
  }
  .xl\:col-start-4 {
    @media (width >= 62rem) {
      grid-column-start: 4;
    }
  }
  .xl\:col-start-5 {
    @media (width >= 62rem) {
      grid-column-start: 5;
    }
  }
  .xl\:col-start-11 {
    @media (width >= 62rem) {
      grid-column-start: 11;
    }
  }
  .xl\:col-end-6 {
    @media (width >= 62rem) {
      grid-column-end: 6;
    }
  }
  .xl\:row-start-1 {
    @media (width >= 62rem) {
      grid-row-start: 1;
    }
  }
  .xl\:row-start-2 {
    @media (width >= 62rem) {
      grid-row-start: 2;
    }
  }
  .xl\:mt-0 {
    @media (width >= 62rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .xl\:w-\[111px\] {
    @media (width >= 62rem) {
      width: 111px;
    }
  }
  .xl\:-translate-y-7 {
    @media (width >= 62rem) {
      --tw-translate-y: calc(var(--spacing) * -7);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .xl\:grid-cols-\[auto_auto_1fr_auto_auto\] {
    @media (width >= 62rem) {
      grid-template-columns: auto auto 1fr auto auto;
    }
  }
  .xl\:grid-rows-2 {
    @media (width >= 62rem) {
      grid-template-rows: repeat(2, minmax(0, 1fr));
    }
  }
  .xl\:gap-y-48 {
    @media (width >= 62rem) {
      row-gap: calc(var(--spacing) * 48);
    }
  }
  .xl\:rounded-full {
    @media (width >= 62rem) {
      border-radius: calc(infinity * 1px);
    }
  }
  .xl\:pt-56 {
    @media (width >= 62rem) {
      padding-top: calc(var(--spacing) * 56);
    }
  }
  .xl\:pb-20 {
    @media (width >= 62rem) {
      padding-bottom: calc(var(--spacing) * 20);
    }
  }
  .xl\:text-27 {
    @media (width >= 62rem) {
      font-size: var(--text-27);
    }
  }
  .\32 xl\:top-0 {
    @media (width >= 70rem) {
      top: calc(var(--spacing) * 0);
    }
  }
  .\32 xl\:bottom-auto {
    @media (width >= 70rem) {
      bottom: auto;
    }
  }
  .\32 xl\:col-start-5 {
    @media (width >= 70rem) {
      grid-column-start: 5;
    }
  }
  .\32 xl\:col-start-10 {
    @media (width >= 70rem) {
      grid-column-start: 10;
    }
  }
  .\32 xl\:col-start-\[content\] {
    @media (width >= 70rem) {
      grid-column-start: content;
    }
  }
  .\32 xl\:-col-end-5 {
    @media (width >= 70rem) {
      grid-column-end: calc(5 * -1);
    }
  }
  .\32 xl\:col-end-6 {
    @media (width >= 70rem) {
      grid-column-end: 6;
    }
  }
  .\32 xl\:col-end-8 {
    @media (width >= 70rem) {
      grid-column-end: 8;
    }
  }
  .\32 xl\:col-end-\[content\] {
    @media (width >= 70rem) {
      grid-column-end: content;
    }
  }
  .\32 xl\:mb-8 {
    @media (width >= 70rem) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .\32 xl\:mb-20 {
    @media (width >= 70rem) {
      margin-bottom: calc(var(--spacing) * 20);
    }
  }
  .\32 xl\:mb-28 {
    @media (width >= 70rem) {
      margin-bottom: calc(var(--spacing) * 28);
    }
  }
  .\32 xl\:gap-y-32 {
    @media (width >= 70rem) {
      row-gap: calc(var(--spacing) * 32);
    }
  }
  .\32 xl\:py-32 {
    @media (width >= 70rem) {
      padding-block: calc(var(--spacing) * 32);
    }
  }
  .\32 xl\:pt-20 {
    @media (width >= 70rem) {
      padding-top: calc(var(--spacing) * 20);
    }
  }
}
@font-face {
  font-family: "Albaro";
  font-style: normal;
  font-weight: 300;
  src: local(""), url("/fonts/AlbaroDisplayWeb-BookTall.woff2") format("woff2");
}
@font-face {
  font-family: "ZTNature";
  font-style: normal;
  font-weight: 200;
  src: local(""), url("/fonts/ZTNature-ExtraLight.woff2") format("woff2"), url("/fonts/ZTNature-ExtraLight.woff") format("woff");
}
@layer base {
  html, body {
    background-color: var(--color-off-white);
    font-family: var(--font-sans);
    font-size: var(--text-16);
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
    --tw-font-weight: var(--font-weight-extralight);
    font-weight: var(--font-weight-extralight);
    color: var(--color-dark);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth;
  }
  body {
    overflow-y: scroll;
  }
  ::selection {
    background-color: var(--color-dark);
    color: var(--color-off-white);
  }
  [x-cloak] {
    display: none !important;
  }
  [x-cloak="visibility"] {
    visibility: hidden !important;
  }
  address {
    display: block;
    font-style: normal;
  }
  body:not(.no-sal) [data-sal]:not(.sal-animate) {
    visibility: hidden;
  }
}
.richtext {
  & :is(p, address, pre, table) {
    margin-bottom: 1.4em;
    @media (width >= 40rem) {
      margin-bottom: 1.7em;
    }
  }
  & hr {
    margin-block: 2.8em;
    @media (width >= 40rem) {
      margin-block: 3.4em;
    }
  }
  & blockquote {
    margin-block: 2.8em;
    @media (width >= 40rem) {
      margin-block: 3.4em;
    }
    & > :first-child {
      margin-top: 0;
    }
    & > :last-child {
      margin-bottom: 0;
    }
  }
  & h1, & .headline--h1 {
    margin-block: 1.4em;
    @media (width >= 40rem) {
      margin-block: 1.7em;
    }
  }
  & h2, & .headline--h2 {
    margin-block: 1.4em;
    @media (width >= 40rem) {
      margin-block: 1.7em;
    }
  }
  & h3, & .headline--h3 {
    margin-block: 1.4em;
    @media (width >= 40rem) {
      margin-block: 1.7em;
    }
  }
  & h4, & .headline--h4 {
    margin-block: 1.4em;
    @media (width >= 40rem) {
      margin-block: 1.7em;
    }
  }
  & h5, & .headline--h5 {
    margin-top: 1.4em;
    @media (width >= 40rem) {
      margin-top: 1.7em;
    }
  }
  & ul, & ol {
    margin-bottom: 0.7em;
    @media (width >= 40rem) {
      margin-bottom: 0.85em;
    }
  }
  & .richtext__ul--fancy {
    margin-block: 0.7em;
    @media (width >= 40rem) {
      margin-block: 0.85em;
    }
    & li {
      &:not(:last-of-type) {
        margin-bottom: 0.5em;
      }
    }
  }
  & > :first-child {
    margin-top: 0;
  }
  & > :last-child {
    margin-bottom: 0;
  }
}
.richtext {
  & ul, & ol {
    grid-area: sublist;
    & > li {
      display: grid;
      align-items: flex-start;
      justify-content: flex-start;
      column-gap: 1em;
      grid-template-columns: max-content 1fr;
      grid-template-areas: "bullet content" "bullet sublist";
      &::before {
        content: var(--tw-content);
        flex-shrink: 0;
      }
      &::before {
        grid-area: bullet;
      }
    }
  }
  & ul:not(.richtext__ul--fancy) {
    & > li {
      &::before {
        content: var(--tw-content);
        height: 0.3em;
      }
      &::before {
        content: var(--tw-content);
        width: 0.3em;
      }
      &::before {
        content: var(--tw-content);
        --tw-translate-y: 0.625em;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
      &::before {
        content: var(--tw-content);
        border-radius: calc(infinity * 1px);
      }
      &::before {
        content: var(--tw-content);
        background-color: currentcolor;
      }
    }
  }
  & ul.richtext__ul--fancy {
    font-size: var(--text-17);
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
    @media (width >= 40rem) {
      font-size: var(--text-19);
    }
    small {
      font-size: var(--text-14);
      @media (width >= 40rem) {
        font-size: var(--text-17);
      }
    }
    li {
      &::before {
        content: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Ebene_2' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38.26 11.1'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:currentColor;%7D%3C/style%3E%3C/defs%3E%3Cg id='Ebene_1-2'%3E%3Cpath class='cls-1' d='M31.26,11.1v-.46c1.76-2.03,3.33-3.73,4.68-5.09-1.36-1.37-2.92-3.07-4.68-5.09v-.46c2.39,1.52,4.72,2.81,6.99,3.88v3.35c-2.27,1.06-4.6,2.36-6.99,3.88Z'/%3E%3Cpath class='cls-1' d='M0,10.2V.79s1.26.18,1.26.18v9.41s-1.26-.18-1.26-.18Z'/%3E%3Cpath class='cls-1' d='M37.07,6.22H.63s.18-1.26.18-1.26h36.44s-.18,1.26-.18,1.26Z'/%3E%3C/g%3E%3C/svg%3E%0A");
        aspect-ratio: 38.26 / 11.1;
        width: 1.7em;
        height: auto;
      }
    }
  }
  & ol {
    counter-reset: ol;
    & > li {
      &::before {
        counter-increment: ol;
        content: counters(ol, ".") ".";
      }
    }
  }
}
.richtext {
  --text-color: #38162a;
  color: var(--text-color);
  font-size: var(--text-14);
  @media (width >= 40rem) {
    font-size: var(--text-16);
  }
  & small {
    font-size: var(--text-10);
    @media (width >= 40rem) {
      font-size: var(--text-11);
    }
  }
  & strong {
    text-decoration-line: underline;
  }
  & a {
    overflow-wrap: anywhere;
    color: var(--text-color);
    &:hover, &:focus-visible {
      text-decoration-line: underline;
    }
  }
  & abbr {
    text-decoration: none;
    border-bottom: 1px dashed currentColor;
    cursor: help;
  }
  & hr {
    height: calc(var(--spacing) * 0.5);
    background-color: var(--color-dark);
    border: 0 none;
  }
  & blockquote {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
    padding-block: calc(var(--spacing) * 1);
    padding-left: calc(var(--spacing) * 4);
    border-color: var(--text-color);
  }
  & h1, & .headline--h1 {
    font-family: var(--font-serif);
    font-size: var(--text-29);
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
    @media (width >= 40rem) {
      font-size: var(--text-31);
    }
  }
  & h2, & .headline--h2 {
    font-family: var(--font-serif);
    font-size: var(--text-22);
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
    @media (width >= 40rem) {
      font-size: var(--text-28);
    }
  }
  & h3, & .headline--h3 {
    font-family: var(--font-serif);
    font-size: var(--text-22);
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
    @media (width >= 40rem) {
      font-size: var(--text-24);
    }
  }
  & h4, & .headline--h4 {
    font-family: var(--font-serif);
    font-size: var(--text-15);
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
    @media (width >= 40rem) {
      font-size: var(--text-17);
    }
  }
  & h5, & .headline--h5 {
    font-family: var(--font-serif);
    font-size: var(--text-15);
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
    @media (width >= 40rem) {
      font-size: var(--text-17);
    }
  }
  & :is( h1, .headline--h1, h2, .headline--h2, h3, .headline--h3, h4, .headline--h4, h5, .headline--h5 ) a {
    color: currentcolor;
  }
}
.richtext--on-dark {
  --text-color: #f2ede8;
  ::selection {
    background-color: var(--color-off-white);
    color: var(--color-dark);
  }
}
@layer components {
  .container-grid {
    --padding: 1.875rem;
    --columns: 12;
    --center-columns-size: calc(var(--container-960) / var(--columns));
    display: grid;
    grid-template-columns: [full-start] minmax(var(--padding), 1fr) [content-start] repeat(var(--columns), minmax(0, var(--center-columns-size))) [content-end] minmax(var(--padding), 1fr) [full-end];
    @media (width >= 40rem) {
      --padding: 3.75rem;
    }
    @media (width >= 48rem) {
      --padding: 5.625rem;
    }
    @media (width >= 56rem) {
      --padding: 7.5rem;
    }
  }
}
.headline-notch {
  @supports not (clip-path: shape(from 0 0, close)) {
    border-radius: calc(infinity * 1px);
    background-color: var(--color-dark);
  }
}
.headline-notch__text {
  @supports (clip-path: shape(from 0 0, close)) {
    border-top-left-radius: calc(infinity * 1px);
    border-bottom-left-radius: calc(infinity * 1px);
    background-color: var(--color-dark);
  }
}
.headline-notch__notch {
  aspect-ratio: 131.6 / 70.24;
  @supports (clip-path: shape(from 0 0, close)) {
    background-color: var(--color-dark);
    clip-path: shape( from 0% 0%, curve to 22.79% 20.08% with 9.04% 0%/17.34% 7.32%, curve to 35.78% 31.48% with 25.85% 27.26%/30.67% 31.48%, smooth to 48.76% 20.08% with 45.69% 27.26%, curve to 71.54% 0% with 54.22% 7.32%/62.52% 0%, curve to 100% 50% with 87.24% 0%/100% 22.42%, smooth to 71.54% 100% with 87.24% 100%, curve to 71.53% 100% with 71.54% 100%/71.54% 100%, curve to 48.75% 79.92% with 62.5% 100%/54.21% 92.68%, curve to 35.77% 68.52% with 45.69% 72.74%/40.88% 68.52%, curve to 22.78% 79.92% with 30.65% 68.52%/25.85% 72.74%, curve to 0% 100% with 17.32% 92.68%/9.03% 100%, close );
  }
}
@layer components {
  .hero__nav {
    height: calc(min(100vw, 100vh) / 2);
    max-height: 250px;
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@keyframes hero-bg {
  0% {
    object-position: 0% 30%;
    transform: scale(1);
  }
  100% {
    object-position: 0% 35%;
    transform: scale(1.1);
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-duration: initial;
      --tw-content: "";
      --tw-font-weight: initial;
      --tw-border-style: solid;
    }
  }
}
