/* [next]/internal/font/google/fraunces_9b1dab61.module.css [app-client] (css) */
@font-face {
  font-family: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/1e219c03c996efbd-s.2qo5md4hn_gum.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: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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: Fraunces;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/03bda585a99c6450-s.p.32sris142tqlb.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: Fraunces Fallback;
  src: local(Times New Roman);
  ascent-override: 84.71%;
  descent-override: 22.09%;
  line-gap-override: 0.0%;
  size-adjust: 115.45%;
}

.fraunces_9b1dab61-module__JGOFDG__className {
  font-family: Fraunces, Fraunces Fallback;
  font-style: normal;
}

.fraunces_9b1dab61-module__JGOFDG__variable {
  --font-fraunces: "Fraunces", "Fraunces Fallback";
}

/* [next]/internal/font/google/schibsted_grotesk_9cf6f78.module.css [app-client] (css) */
@font-face {
  font-family: Schibsted Grotesk;
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(fonts/481eac7be1c268b7-s.1shg3f9j2jih-.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: Schibsted Grotesk;
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(fonts/31a9145ccb84606d-s.p.3j3x29wbycqkn.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: Schibsted Grotesk Fallback;
  src: local(Arial);
  ascent-override: 93.46%;
  descent-override: 24.67%;
  line-gap-override: 0.0%;
  size-adjust: 104.49%;
}

.schibsted_grotesk_9cf6f78-module__C6DPJa__className {
  font-family: Schibsted Grotesk, Schibsted Grotesk Fallback;
  font-style: normal;
}

.schibsted_grotesk_9cf6f78-module__C6DPJa__variable {
  --font-schibsted: "Schibsted Grotesk", "Schibsted Grotesk Fallback";
}

/* [next]/internal/font/google/spline_sans_mono_7128cd22.module.css [app-client] (css) */
@font-face {
  font-family: Spline Sans Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/5e60c3e60a629e0e-s.185vq78hrw2dq.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: Spline Sans Mono;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/d2d62b05021c6286-s.p.2d9e_tvweuz-y.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: Spline Sans Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/5e60c3e60a629e0e-s.185vq78hrw2dq.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: Spline Sans Mono;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/d2d62b05021c6286-s.p.2d9e_tvweuz-y.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: Spline Sans Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/5e60c3e60a629e0e-s.185vq78hrw2dq.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: Spline Sans Mono;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/d2d62b05021c6286-s.p.2d9e_tvweuz-y.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: Spline Sans Mono Fallback;
  src: local(Arial);
  ascent-override: 71.59%;
  descent-override: 17.57%;
  line-gap-override: 0.0%;
  size-adjust: 134.59%;
}

.spline_sans_mono_7128cd22-module__fsCmEW__className {
  font-family: Spline Sans Mono, Spline Sans Mono Fallback;
  font-style: normal;
}

.spline_sans_mono_7128cd22-module__fsCmEW__variable {
  --font-spline-mono: "Spline Sans Mono", "Spline Sans Mono Fallback";
}

/* [project]/src/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-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-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-duration: initial;
      --tw-ease: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --color-white: #fff;
    --spacing: .25rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-2xl: 42rem;
    --container-5xl: 64rem;
    --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);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -.025em;
    --tracking-normal: 0em;
    --tracking-wider: .05em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --shadow-sm: 0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;
    --shadow-md: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;
    --shadow-lg: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --blur-sm: 8px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-schibsted);
    --default-mono-font-family: var(--font-spline-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, 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;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

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

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    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;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .inset-0 {
    inset: 0;
  }

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

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

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

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

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

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

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

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

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

  .right-0 {
    right: 0;
  }

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

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

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

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

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

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

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

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

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

  .order-1 {
    order: 1;
  }

  .order-2 {
    order: 2;
  }

  .col-span-2 {
    grid-column: span 2 / span 2;
  }

  .col-span-3 {
    grid-column: span 3 / span 3;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mt-\[var\(--section-y\)\] {
    margin-top: var(--section-y);
  }

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

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

  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }

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

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

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

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

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

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

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

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

  .ml-1 {
    margin-left: var(--spacing);
  }

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

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

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

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

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

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

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

  .table {
    display: table;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .h-auto {
    height: auto;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
  }

  .\!min-h-\[6rem\] {
    min-height: 6rem !important;
  }

  .\!min-h-\[9rem\] {
    min-height: 9rem !important;
  }

  .\!min-h-\[11rem\] {
    min-height: 11rem !important;
  }

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

  .\!w-44 {
    width: calc(var(--spacing) * 44) !important;
  }

  .\!w-auto {
    width: auto !important;
  }

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

  .w-2\.5 {
    width: calc(var(--spacing) * 2.5);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .w-auto {
    width: auto;
  }

  .w-full {
    width: 100%;
  }

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

  .max-w-5xl\! {
    max-width: var(--container-5xl) !important;
  }

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

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

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

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

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

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

  .min-w-\[12rem\] {
    min-width: 12rem;
  }

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

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

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

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

  .flex-1 {
    flex: 1;
  }

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

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

  .scale-125 {
    --tw-scale-x: 125%;
    --tw-scale-y: 125%;
    --tw-scale-z: 125%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .-rotate-90 {
    rotate: -90deg;
  }

  .rotate-180 {
    rotate: 180deg;
  }

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

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

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

  .cursor-pointer {
    cursor: pointer;
  }

  .list-none {
    list-style-type: none;
  }

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

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

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

  .grid-cols-\[1fr_auto\] {
    grid-template-columns: 1fr auto;
  }

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

  .flex-wrap {
    flex-wrap: wrap;
  }

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

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

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

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

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

  .\!justify-center {
    justify-content: center !important;
  }

  .\!justify-start {
    justify-content: flex-start !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }

  .gap-x-8 {
    column-gap: calc(var(--spacing) * 8);
  }

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

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

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

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

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-hidden {
    overflow: hidden;
  }

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

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

  .rounded-\[27\%\] {
    border-radius: 27%;
  }

  .rounded-\[var\(--radius\)\] {
    border-radius: var(--radius);
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

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

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

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

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

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

  .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-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }

  .border-l-4 {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
  }

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

  .\!border-coral {
    border-color: var(--coral) !important;
  }

  .\!border-coral\/50 {
    border-color: var(--coral) !important;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .\!border-coral\/50 {
      border-color: color-mix(in oklab, var(--coral) 50%, transparent) !important;
    }
  }

  .border-coral {
    border-color: var(--coral);
  }

  .border-coral\/40 {
    border-color: var(--coral);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-coral\/40 {
      border-color: color-mix(in oklab, var(--coral) 40%, transparent);
    }
  }

  .border-green {
    border-color: var(--green);
  }

  .border-line {
    border-color: var(--line);
  }

  .border-line-strong {
    border-color: var(--line-strong);
  }

  .border-red {
    border-color: var(--red);
  }

  .border-surface {
    border-color: var(--surface);
  }

  .border-white\/15 {
    border-color: #ffffff26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/15 {
      border-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }

  .\!border-l-coral {
    border-left-color: var(--coral) !important;
  }

  .\!bg-coral-soft {
    background-color: var(--coral-soft) !important;
  }

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

  .bg-coral-soft\/60 {
    background-color: var(--coral-soft);
  }

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

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

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

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

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

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

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

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

  .bg-surface-2\/60 {
    background-color: var(--surface-2);
  }

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

  .bg-surface\/60 {
    background-color: var(--surface);
  }

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

  .bg-surface\/90 {
    background-color: var(--surface);
  }

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

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

  .bg-white\/10 {
    background-color: #ffffff1a;
  }

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

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

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

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

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

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

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

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

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

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

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

  .\!px-1 {
    padding-inline: var(--spacing) !important;
  }

  .\!px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5) !important;
  }

  .\!px-3 {
    padding-inline: calc(var(--spacing) * 3) !important;
  }

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

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

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

  .\!px-7 {
    padding-inline: calc(var(--spacing) * 7) !important;
  }

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

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

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

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

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

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

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

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

  .\!py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5) !important;
  }

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

  .\!py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5) !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .pb-\[var\(--section-y\)\] {
    padding-bottom: var(--section-y);
  }

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

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

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

  .align-\[-2px\] {
    vertical-align: -2px;
  }

  .align-\[-3px\] {
    vertical-align: -3px;
  }

  .font-display {
    font-family: var(--font-fraunces);
  }

  .font-mono {
    font-family: var(--font-spline-mono);
  }

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

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

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

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

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

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

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

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

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

  .\!text-\[10\.5px\] {
    font-size: 10.5px !important;
  }

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

  .text-\[1\.7rem\] {
    font-size: 1.7rem;
  }

  .text-\[2\.6rem\] {
    font-size: 2.6rem;
  }

  .text-\[2\.7rem\] {
    font-size: 2.7rem;
  }

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

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

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

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

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

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

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

  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }

  .leading-\[1\.03\] {
    --tw-leading: 1.03;
    line-height: 1.03;
  }

  .leading-\[1\.05\] {
    --tw-leading: 1.05;
    line-height: 1.05;
  }

  .leading-\[1\.06\] {
    --tw-leading: 1.06;
    line-height: 1.06;
  }

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

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

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

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

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

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

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

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

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

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

  .tracking-normal {
    --tw-tracking: var(--tracking-normal);
    letter-spacing: var(--tracking-normal);
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

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

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

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

  .text-coral-ink {
    color: var(--coral-ink);
  }

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

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

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

  .text-ink-soft {
    color: var(--ink-soft);
  }

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

  .text-muted\/80 {
    color: var(--muted);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-muted\/80 {
      color: color-mix(in oklab, var(--muted) 80%, transparent);
    }
  }

  .text-pink-ink {
    color: var(--pink-ink);
  }

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

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

  .normal-case {
    text-transform: none;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
  }

  .line-through {
    text-decoration-line: line-through;
  }

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

  .opacity-10 {
    opacity: .1;
  }

  .opacity-60 {
    opacity: .6;
  }

  .shadow-\[var\(--shadow-md\)\] {
    --tw-shadow: var(--shadow-md);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

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

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -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));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

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

  .duration-700 {
    --tw-duration: .7s;
    transition-duration: .7s;
  }

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

  .group-open\:rotate-45:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 45deg;
  }

  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  @media (hover: hover) {
    .hover\:border-coral:hover {
      border-color: var(--coral);
    }
  }

  @media (hover: hover) {
    .hover\:bg-coral-soft\/40:hover {
      background-color: var(--coral-soft);
    }

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

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

  @media (hover: hover) {
    .hover\:text-coral-ink:hover {
      color: var(--coral-ink);
    }
  }

  @media (hover: hover) {
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
  }

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

  .disabled\:opacity-70:disabled {
    opacity: .7;
  }

  @media (min-width: 40rem) {
    .sm\:not-sr-only {
      clip-path: none;
      white-space: normal;
      width: auto;
      height: auto;
      margin: 0;
      padding: 0;
      position: static;
      overflow: visible;
    }
  }

  @media (min-width: 40rem) {
    .sm\:right-6 {
      right: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 40rem) {
    .sm\:block {
      display: block;
    }
  }

  @media (min-width: 40rem) {
    .sm\:hidden {
      display: none;
    }
  }

  @media (min-width: 40rem) {
    .sm\:inline {
      display: inline;
    }
  }

  @media (min-width: 40rem) {
    .sm\:h-20 {
      height: calc(var(--spacing) * 20);
    }
  }

  @media (min-width: 40rem) {
    .sm\:h-32 {
      height: calc(var(--spacing) * 32);
    }
  }

  @media (min-width: 40rem) {
    .sm\:h-44 {
      height: calc(var(--spacing) * 44);
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-2 {
      gap: calc(var(--spacing) * 2);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-10 {
      gap: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-5 {
      padding: calc(var(--spacing) * 5);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-6 {
      padding: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-8 {
      padding: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-9 {
      padding: calc(var(--spacing) * 9);
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-10 {
      padding: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-6 {
      padding-inline: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-8 {
      padding-inline: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:py-5 {
      padding-block: calc(var(--spacing) * 5);
    }
  }

  @media (min-width: 40rem) {
    .sm\:pt-6 {
      padding-top: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:pb-6 {
      padding-bottom: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-3xl {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-4xl {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-6xl {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:sticky {
      position: sticky;
    }
  }

  @media (min-width: 64rem) {
    .lg\:top-0 {
      top: 0;
    }
  }

  @media (min-width: 64rem) {
    .lg\:top-16 {
      top: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 64rem) {
    .lg\:order-1 {
      order: 1;
    }
  }

  @media (min-width: 64rem) {
    .lg\:order-2 {
      order: 2;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-3 {
      grid-column: span 3 / span 3;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-4 {
      grid-column: span 4 / span 4;
    }
  }

  @media (min-width: 64rem) {
    .lg\:mb-6 {
      margin-bottom: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 64rem) {
    .lg\:block {
      display: block;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex {
      display: flex;
    }
  }

  @media (min-width: 64rem) {
    .lg\:hidden {
      display: none;
    }
  }

  @media (min-width: 64rem) {
    .lg\:h-24 {
      height: calc(var(--spacing) * 24);
    }
  }

  @media (min-width: 64rem) {
    .lg\:h-28 {
      height: calc(var(--spacing) * 28);
    }
  }

  @media (min-width: 64rem) {
    .lg\:h-40 {
      height: calc(var(--spacing) * 40);
    }
  }

  @media (min-width: 64rem) {
    .lg\:h-screen {
      height: 100vh;
    }
  }

  @media (min-width: 64rem) {
    .lg\:w-60 {
      width: calc(var(--spacing) * 60);
    }
  }

  @media (min-width: 64rem) {
    .lg\:shrink-0 {
      flex-shrink: 0;
    }
  }

  @media (min-width: 64rem) {
    .lg\:-translate-y-2 {
      --tw-translate-y: calc(var(--spacing) * -2);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-\[\.9fr_1\.1fr\] {
      grid-template-columns: .9fr 1.1fr;
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-\[1\.06fr_\.94fr\] {
      grid-template-columns: 1.06fr .94fr;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-col {
      flex-direction: column;
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 64rem) {
    .lg\:items-start {
      align-items: flex-start;
    }
  }

  @media (min-width: 64rem) {
    .lg\:items-stretch {
      align-items: stretch;
    }
  }

  @media (min-width: 64rem) {
    .lg\:justify-start {
      justify-content: flex-start;
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-8 {
      gap: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-16 {
      gap: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-20 {
      gap: calc(var(--spacing) * 20);
    }
  }

  @media (min-width: 64rem) {
    .lg\:overflow-visible {
      overflow: visible;
    }
  }

  @media (min-width: 64rem) {
    .lg\:border-r {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }
  }

  @media (min-width: 64rem) {
    .lg\:px-5 {
      padding-inline: calc(var(--spacing) * 5);
    }
  }

  @media (min-width: 64rem) {
    .lg\:px-10 {
      padding-inline: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 64rem) {
    .lg\:py-6 {
      padding-block: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 64rem) {
    .lg\:py-10 {
      padding-block: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 64rem) {
    .lg\:pt-10 {
      padding-top: calc(var(--spacing) * 10);
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-6xl {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:text-\[4\.2rem\] {
      font-size: 4.2rem;
    }
  }

  @media (min-width: 80rem) {
    .xl\:flex {
      display: flex;
    }
  }

  @media (min-width: 80rem) {
    .xl\:hidden {
      display: none;
    }
  }

  .\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker {
    display: none;
  }

  @media (min-width: 40rem) {
    .sm\:\[\&\:nth-last-child\(2\)\]\:border-0:nth-last-child(2) {
      border-style: var(--tw-border-style);
      border-width: 0;
    }
  }
}

:root {
  --bg: #fdf6f3;
  --surface: #fff;
  --surface-2: #fdeeee;
  --ink: #2b2023;
  --ink-soft: #5c4650;
  --muted: #9c7f7f;
  --line: #f1e1df;
  --line-strong: #e6cdcb;
  --coral: #ef5e22;
  --coral-deep: #d9481a;
  --coral-ink: #b8430f;
  --coral-soft: #fde6d8;
  --pink: #d1327a;
  --pink-deep: #a5215d;
  --pink-ink: #9c2657;
  --pink-soft: #fbe1ec;
  --gold: #d9962b;
  --gold-soft: #faf0dc;
  --green: #3e8e5e;
  --green-soft: #e6f2ea;
  --red: #c8402e;
  --red-soft: #fbe9e6;
  --night: #131627;
  --night-2: #1d2140;
  --grad-smoke: linear-gradient(135deg, var(--coral) 0%, var(--pink) 55%, var(--pink-deep) 100%);
  --shadow-sm: 0 1px 2px #2a211c0d, 0 2px 8px #2a211c0a;
  --shadow-md: 0 2px 4px #2a211c0d, 0 10px 28px -6px #2a211c1a;
  --shadow-lg: 0 4px 10px #2a211c0f, 0 24px 48px -12px #2a211c2e;
  --radius: 1rem;
  --shell-max: clamp(72rem, 100vw - 20rem, 104rem);
  --shell-pad: 1.25rem;
  --section-y: 3.25rem;
  --stack: 1.5rem;
}

@media (min-width: 640px) {
  :root {
    --shell-pad: 1.75rem;
    --section-y: 4.25rem;
    --stack: 2rem;
  }
}

@media (min-width: 1024px) {
  :root {
    --shell-pad: 2.5rem;
    --section-y: 5.5rem;
    --stack: 2.5rem;
  }
}

.shell {
  width: 100%;
  max-width: var(--shell-max);
  padding-inline: var(--shell-pad);
  margin-inline: auto;
}

.measure {
  max-width: 62ch;
}

.measure-center {
  max-width: 62ch;
  margin-inline: auto;
}

.section {
  padding-block: var(--section-y);
}

.section-sm {
  padding-block: calc(var(--section-y) * .62);
}

.section-t {
  padding-top: var(--section-y);
}

.section-b {
  padding-bottom: var(--section-y);
}

[data-theme="dark"] {
  --bg: #1b1114;
  --surface: #24171a;
  --surface-2: #2d1c1f;
  --ink: #f5ebee;
  --ink-soft: #dcc5c9;
  --muted: #a88b8b;
  --line: #362225;
  --line-strong: #4a2e32;
  --coral-ink: #ff9a5c;
  --coral-soft: #3a2317;
  --pink-ink: #ff8fb8;
  --pink-soft: #3a1c2b;
  --gold-soft: #38290f;
  --green: #6fbd8f;
  --green-soft: #16301f;
  --red: #ef7f6b;
  --red-soft: #3a1b15;
  --shadow-sm: 0 1px 2px #0006;
  --shadow-md: 0 2px 4px #0006, 0 10px 28px -6px #00000080;
  --shadow-lg: 0 4px 10px #00000080, 0 24px 48px -12px #0009;
}

* {
  border-color: var(--line);
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 5rem;
}

body {
  background: var(--bg);
  color: var(--ink);
  font-family: var(--font-schibsted), system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  transition: background-color .3s, color .3s;
}

h1, h2, h3, .font-display {
  font-family: var(--font-fraunces), Georgia, serif;
  letter-spacing: -.015em;
}

::selection {
  background: var(--coral);
  color: #fff;
}

:focus-visible {
  outline: 2px solid var(--coral);
  outline-offset: 2px;
  border-radius: 4px;
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-thumb {
  background: var(--line-strong);
  border-radius: 8px;
}

::-webkit-scrollbar-track {
  background: none;
}

.grad-coral {
  background-image: var(--grad-smoke);
}

.grad-text {
  background-image: linear-gradient(120deg, var(--coral) 0%, var(--pink) 65%, var(--pink-deep) 100%);
  color: #0000;
  -webkit-background-clip: text;
  background-clip: text;
  margin-bottom: -.14em;
  margin-right: -.14em;
  padding-bottom: .14em;
  padding-right: .14em;
  display: inline-block;
}

.lwl-dot {
  background-image: var(--grad-smoke);
  border-radius: 27%;
  position: relative;
  box-shadow: 0 4px 14px -2px #d1327a73;
}

.lwl-dot:after {
  content: "";
  background: #fff;
  border-radius: 9999px;
  position: absolute;
  inset: 30%;
}

.smoke-field {
  pointer-events: none;
  z-index: 0;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.smoke-blob {
  filter: blur(64px);
  opacity: .5;
  border-radius: 9999px;
  position: absolute;
}

[data-theme="dark"] .smoke-blob {
  opacity: .32;
  filter: blur(80px);
}

.smoke-blob--orange {
  background: radial-gradient(circle, var(--coral) 0%, transparent 68%);
}

.smoke-blob--pink {
  background: radial-gradient(circle, var(--pink) 0%, transparent 68%);
}

.smoke-blob--deep {
  background: radial-gradient(circle, var(--pink-deep) 0%, transparent 70%);
}

.grain {
  position: relative;
}

.grain:before {
  content: "";
  pointer-events: none;
  opacity: .5;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='matrix' values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.035 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  position: absolute;
  inset: 0;
}

[data-theme="dark"] .grain:before {
  mix-blend-mode: overlay;
  opacity: .7;
}

.card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow-sm);
}

.card-accent {
  background: linear-gradient(var(--surface), var(--surface)) padding-box,
    var(--grad-smoke) border-box;
  box-shadow: var(--shadow-lg);
  border-width: 2px;
  border-color: #0000;
}

.card-hover {
  transition: transform .22s cubic-bezier(.2, .9, .3, 1.2), box-shadow .22s, border-color .22s;
}

.card-hover:hover {
  box-shadow: var(--shadow-md);
  border-color: var(--line-strong);
  transform: translateY(-2px);
}

.btn {
  cursor: pointer;
  white-space: nowrap;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  padding: .625rem 1.25rem;
  font-size: .875rem;
  font-weight: 600;
  transition: transform .15s, box-shadow .2s, background-color .2s, opacity .2s, filter .2s;
  display: inline-flex;
}

.btn:active {
  transform: scale(.97);
}

.btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.btn-primary {
  background-image: var(--grad-smoke);
  color: #fff;
  box-shadow: 0 4px 14px -4px #d1327a80;
}

.btn-primary:hover {
  box-shadow: 0 6px 20px -4px #d1327aa6;
}

.btn-ghost {
  color: var(--ink-soft);
  border: 1px solid var(--line-strong);
  background: none;
}

.btn-ghost:hover {
  background: var(--surface-2);
}

.btn-soft {
  background: var(--coral-soft);
  color: var(--coral-ink);
}

.btn-soft:hover {
  filter: brightness(.97);
}

.chip {
  border-radius: 9999px;
  align-items: center;
  gap: .375rem;
  padding: .2rem .65rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.4;
  display: inline-flex;
}

.input {
  background: var(--surface);
  border: 1px solid var(--line-strong);
  width: 100%;
  color: var(--ink);
  border-radius: .75rem;
  padding: .6rem .9rem;
  font-size: .9rem;
  transition: border-color .2s, box-shadow .2s;
}

.input:focus {
  border-color: var(--coral);
  outline: none;
  box-shadow: 0 0 0 3px #f0693c2e;
}

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

textarea.input {
  resize: vertical;
  min-height: 5.5rem;
}

select.input {
  appearance: auto;
}

.label {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--muted);
  margin-bottom: .35rem;
  font-size: .75rem;
  font-weight: 600;
  display: block;
}

.table-base {
  border-collapse: collapse;
  width: 100%;
  font-size: .875rem;
}

.table-base th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--muted);
  border-bottom: 1px solid var(--line);
  padding: .6rem .9rem;
  font-size: .7rem;
  font-weight: 600;
}

.table-base td {
  border-bottom: 1px solid var(--line);
  vertical-align: middle;
  padding: .7rem .9rem;
}

.table-base tr:last-child td {
  border-bottom: none;
}

.table-base tbody tr {
  transition: background-color .15s;
}

.table-base tbody tr:hover {
  background: var(--surface-2);
}

.eyebrow {
  letter-spacing: .26em;
  text-transform: uppercase;
  font-size: .75rem;
  font-weight: 700;
  display: inline-block;
}

.hero-portrait {
  margin-right: calc(-1 * var(--shell-pad));
  justify-content: flex-end;
  display: flex;
  position: relative;
}

@media (min-width: 640px) {
  .hero-portrait {
    margin-right: calc(-1 * (max(0px, (100vw - var(--shell-max)) / 2) + var(--shell-pad)));
  }
}

.hero-portrait__img {
  z-index: 1;
  object-fit: contain;
  object-position: right bottom;
  width: 100%;
  height: auto;
  max-height: 52vh;
  display: block;
  position: relative;
  -webkit-mask-image: linear-gradient(#000 78%, #0000 99%);
  mask-image: linear-gradient(#000 78%, #0000 99%);
}

@media (min-width: 640px) {
  .hero-portrait__img {
    max-height: 62vh;
  }
}

@media (min-width: 1024px) {
  .hero-portrait__img {
    max-height: min(76vh, 680px);
  }
}

.hero-portrait__glow {
  z-index: 0;
  filter: blur(34px);
  opacity: .55;
  background: radial-gradient(58% 58% at 46% 42%, var(--pink) 0%, transparent 70%),
    radial-gradient(66% 66% at 68% 72%, var(--coral) 0%, transparent 72%),
    radial-gradient(52% 52% at 76% 24%, var(--pink-deep) 0%, transparent 74%);
  border-radius: 42% 58% 56% 44% / 48% 42% 58% 52%;
  animation: 18s ease-in-out infinite blob-morph;
  position: absolute;
  inset: 6% -6% 2% 2%;
}

[data-theme="dark"] .hero-portrait__glow {
  opacity: .42;
}

@keyframes blob-morph {
  0%, 100% {
    border-radius: 42% 58% 56% 44% / 48% 42% 58% 52%;
  }

  50% {
    border-radius: 56% 44% 43% 57% / 60% 56% 44% 40%;
  }
}

.lead-radio input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.lead-radio span {
  cursor: pointer;
  border: 1px solid var(--line-strong);
  color: var(--ink-soft);
  border-radius: 9999px;
  padding: .25rem .7rem;
  font-size: .75rem;
  font-weight: 600;
  transition: background-color .2s, color .2s, border-color .2s;
  display: inline-block;
}

.lead-radio input:checked + span {
  background-image: var(--grad-smoke);
  color: #fff;
  border-color: #0000;
}

.lead-radio input:focus-visible + span {
  outline: 2px solid var(--coral);
  outline-offset: 2px;
}

.rail {
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  gap: 1.25rem;
  padding-bottom: 1rem;
  display: flex;
  overflow-x: auto;
}

.rail-card {
  scroll-snap-align: center;
  flex: 0 0 min(23rem, 82vw);
  position: relative;
}

.rail:before, .rail:after {
  content: "";
  flex: 0 0 max(0px, 50vw - 36rem);
}

.quote-mark {
  color: var(--coral);
  opacity: .16;
  pointer-events: none;
  font-family: Georgia, serif;
  font-size: 4.5rem;
  line-height: 1;
  position: absolute;
  top: -.25rem;
  right: 1.25rem;
}

.social-dot {
  background: var(--surface-2);
  width: 2.25rem;
  height: 2.25rem;
  color: var(--ink-soft);
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  transition: background-color .2s, color .2s, transform .2s;
  display: inline-flex;
}

.social-dot:hover {
  background: var(--coral-soft);
  color: var(--coral-ink);
  transform: translateY(-2px);
}

.float-social {
  z-index: 50;
  flex-direction: column;
  gap: .75rem;
  display: flex;
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
}

.float-social__options {
  opacity: 0;
  pointer-events: none;
  flex-direction: column;
  gap: .75rem;
  transition: opacity .2s, transform .2s;
  display: flex;
  transform: translateY(.75rem);
}

.float-social:hover .float-social__options, .float-social:focus-within .float-social__options {
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

.wa-float {
  color: #fff;
  background-image: var(--grad-smoke);
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  transition: transform .2s, box-shadow .2s;
  display: inline-flex;
  box-shadow: 0 8px 24px -6px #d1327a99;
}

.to-top {
  z-index: 50;
  border: 1px solid var(--line);
  background: var(--surface);
  width: 3rem;
  height: 3rem;
  color: var(--ink-soft);
  box-shadow: var(--shadow-md);
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  font-size: 1.25rem;
  transition: transform .2s, color .2s;
  display: inline-flex;
  position: fixed;
  bottom: 1.5rem;
  left: 1.5rem;
}

.to-top:hover {
  color: var(--coral-ink, var(--ink));
  transform: translateY(-3px);
}

.wa-float:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 32px -6px #d1327ab3;
}

.step__card {
  height: 100%;
  transition: transform .45s cubic-bezier(.2, .8, .25, 1), box-shadow .45s, border-color .3s;
  position: relative;
  overflow: hidden;
}

.step:hover .step__card, .step:focus-within .step__card {
  box-shadow: var(--shadow-lg);
  border-color: var(--line-strong);
  transform: translateY(-6px);
}

.step__card:before {
  content: "";
  background: radial-gradient(circle, var(--coral) 0%, transparent 68%);
  opacity: 0;
  filter: blur(48px);
  pointer-events: none;
  transition: opacity .55s;
  position: absolute;
  inset: -45% 25% 50% -35%;
}

.step:hover .step__card:before, .step:focus-within .step__card:before {
  opacity: .2;
}

.step__reveal {
  opacity: 0;
  grid-template-rows: 0fr;
  margin-top: 0;
  transition: grid-template-rows .55s cubic-bezier(.2, .8, .25, 1), opacity .4s, margin-top .55s cubic-bezier(.2, .8, .25, 1);
  display: grid;
}

.step__reveal > div {
  overflow: hidden;
}

.step:hover .step__reveal, .step:focus-within .step__reveal {
  opacity: 1;
  grid-template-rows: 1fr;
  margin-top: 1.15rem;
}

@media (hover: none) {
  .step__reveal {
    opacity: 1;
    grid-template-rows: 1fr;
    margin-top: 1.15rem;
  }

  .step__hint {
    display: none;
  }
}

.step__hint {
  transition: opacity .3s, transform .3s;
}

.step:hover .step__hint, .step:focus-within .step__hint {
  opacity: 0;
  transform: translateY(-6px);
}

.mock {
  border: 1px solid var(--line);
  border-radius: .9rem;
  transition: transform .55s cubic-bezier(.2, .8, .25, 1);
  position: relative;
  overflow: hidden;
  transform: scale(.96);
}

.step:hover .mock, .step:focus-within .mock {
  transform: scale(1);
}

.mock--call {
  background: var(--night);
}

.mock__bar {
  background: var(--night-2);
  align-items: center;
  gap: .3rem;
  padding: .45rem .6rem;
  display: flex;
}

.mock__dot {
  background: #ffffff38;
  border-radius: 50%;
  width: 7px;
  height: 7px;
}

.mock__live {
  margin-left: auto;
  display: inline-flex;
}

.mock__live i {
  background: var(--red);
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.step:hover .mock__live i {
  animation: 1.9s ease-out infinite live-pulse;
}

@keyframes live-pulse {
  0% {
    box-shadow: 0 0 #c8402e8c;
  }

  70% {
    box-shadow: 0 0 0 7px #c8402e00;
  }

  100% {
    box-shadow: 0 0 #c8402e00;
  }
}

.mock__stage {
  aspect-ratio: 16 / 10;
  position: relative;
}

.mock__feed {
  object-fit: cover;
  object-position: 50% 20%;
  width: 100%;
  height: 100%;
}

.mock__pip {
  aspect-ratio: 1;
  opacity: 0;
  border: 2px solid #ffffff8c;
  border-radius: .5rem;
  width: 30%;
  transition: opacity .45s .14s, transform .55s cubic-bezier(.2, .9, .3, 1.3) .14s;
  position: absolute;
  bottom: .5rem;
  right: .5rem;
  overflow: hidden;
  transform: translateY(12px)scale(.88);
  box-shadow: 0 6px 16px #00000073;
}

.mock__pip img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.step:hover .mock__pip, .step:focus-within .mock__pip {
  opacity: 1;
  transform: none;
}

.mock__wave {
  align-items: flex-end;
  gap: 3px;
  height: 15px;
  display: flex;
  position: absolute;
  bottom: .6rem;
  left: .6rem;
}

.mock__wave i {
  background: var(--coral);
  border-radius: 2px;
  width: 3px;
  height: 28%;
}

.step:hover .mock__wave i {
  animation: 1s ease-in-out infinite mock-wave;
}

.mock__wave i:nth-child(2) {
  animation-delay: .12s;
}

.mock__wave i:nth-child(3) {
  animation-delay: .24s;
}

.mock__wave i:nth-child(4) {
  animation-delay: .36s;
}

.mock__wave i:nth-child(5) {
  animation-delay: .48s;
}

@keyframes mock-wave {
  0%, 100% {
    height: 24%;
  }

  50% {
    height: 100%;
  }
}

.mock__tools {
  background: var(--night-2);
  justify-content: center;
  gap: .4rem;
  padding: .5rem;
  display: flex;
}

.mock__tool {
  background: #ffffff29;
  border-radius: 50%;
  width: 19px;
  height: 19px;
}

.mock__tool--end {
  background: var(--red);
  border-radius: 10px;
  width: 30px;
}

.mock--sheet {
  background: var(--surface);
  aspect-ratio: 4 / 3;
  flex-direction: column;
  gap: .55rem;
  padding: .95rem;
  display: flex;
}

.mock__brand {
  background-image: var(--grad-smoke);
  border-radius: 3px;
  width: 42%;
  height: 5px;
}

.mock__title {
  background: var(--line-strong);
  border-radius: 4px;
  width: 62%;
  height: 9px;
}

.mock__line, .mock__blank {
  transform-origin: 0;
  opacity: .35;
  border-radius: 3px;
  height: 6px;
  transition: transform .5s cubic-bezier(.2, .8, .25, 1), opacity .4s;
  transform: scaleX(.25);
}

.mock__line {
  background: var(--line);
}

.mock__blank {
  border-bottom: 2px dashed var(--coral);
  background: none;
}

.mock__line--ok {
  background: var(--green);
}

@supports (color: color-mix(in lab, red, red)) {
  .mock__line--ok {
    background: color-mix(in srgb, var(--green) 42%, var(--line));
  }
}

.step:hover .mock--sheet > *, .step:focus-within .mock--sheet > * {
  opacity: 1;
  transform: scaleX(1);
}

.step:hover .mock--sheet > :nth-child(3) {
  transition-delay: 60ms;
}

.step:hover .mock--sheet > :nth-child(4) {
  transition-delay: .12s;
}

.step:hover .mock--sheet > :nth-child(5) {
  transition-delay: .18s;
}

.step:hover .mock--sheet > :nth-child(6) {
  transition-delay: .24s;
}

.step:hover .mock--sheet > :nth-child(7) {
  transition-delay: .3s;
}

.step:hover .mock--sheet > :nth-child(8) {
  transition-delay: .36s;
}

.mock__stamp {
  opacity: 1;
  align-items: center;
  gap: .4rem;
  display: inline-flex;
  position: absolute;
  bottom: .75rem;
  right: .75rem;
  transform: none;
}

.mock__grade {
  font-family: var(--font-fraunces), Georgia, serif;
  color: var(--coral);
  border: 3px solid var(--coral);
  opacity: 0;
  border-radius: .6rem;
  padding: .12rem .45rem;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
  transition: transform .6s cubic-bezier(.2, .9, .3, 1.6) .2s, opacity .3s .2s;
  transform: rotate(-9deg)scale(.35);
}

.step:hover .mock__grade, .step:focus-within .mock__grade {
  opacity: 1;
  transform: rotate(-9deg)scale(1);
}

.mock__check {
  width: 20px;
  height: 20px;
  color: var(--green);
}

.mock__check path {
  stroke-dasharray: 32;
  stroke-dashoffset: 32px;
}

.step:hover .mock__check path, .step:focus-within .mock__check path {
  animation: .5s .42s forwards draw-check;
}

@keyframes draw-check {
  to {
    stroke-dashoffset: 0;
  }
}

.mock__seal {
  background: var(--gold-soft);
  width: 1.6rem;
  height: 1.6rem;
  color: var(--gold);
  opacity: 0;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  transition: transform .5s cubic-bezier(.2, .9, .3, 1.5) .32s, opacity .3s .32s;
  display: inline-flex;
  position: absolute;
  top: .7rem;
  right: .7rem;
  transform: scale(.5)rotate(-30deg);
}

.step:hover .mock__seal, .step:focus-within .mock__seal {
  opacity: 1;
  transform: none;
}

.md {
  color: var(--ink-soft);
  font-size: .925rem;
  line-height: 1.7;
}

.md > :first-child {
  margin-top: 0;
}

.md > :last-child {
  margin-bottom: 0;
}

.md-p {
  white-space: pre-line;
  margin: .7rem 0;
}

.md-h {
  font-family: var(--font-fraunces), Georgia, serif;
  color: var(--ink);
  letter-spacing: -.01em;
  margin: 1.3rem 0 .5rem;
  font-weight: 600;
  line-height: 1.25;
}

.md-h1 {
  font-size: 1.35rem;
}

.md-h2 {
  font-size: 1.18rem;
}

.md-h3 {
  font-size: 1.05rem;
}

.md-h4, .md-h5, .md-h6 {
  font-size: .95rem;
}

.md-ul, .md-ol {
  gap: .3rem;
  margin: .7rem 0;
  padding-left: 1.15rem;
  display: grid;
}

.md-ul {
  list-style: none;
}

.md-ul > li {
  position: relative;
}

.md-ul > li:before {
  content: "•";
  color: var(--coral-ink);
  font-weight: 700;
  position: absolute;
  left: -.95rem;
}

.md-ol {
  list-style: decimal;
}

.md-ol > li::marker {
  color: var(--coral-ink);
  font-weight: 600;
}

.md-quote {
  border-left: 3px solid var(--coral);
  background: var(--surface-2);
  color: var(--ink);
  white-space: pre-line;
  border-radius: 0 .5rem .5rem 0;
  margin: .9rem 0;
  padding: .5rem 0 .5rem .9rem;
  font-style: italic;
}

.md-code {
  font-family: var(--font-spline-mono), ui-monospace, monospace;
  background: var(--surface-2);
  border: 1px solid var(--line);
  border-radius: .35rem;
  padding: .08rem .32rem;
  font-size: .85em;
}

.md-pre {
  background: var(--surface-2);
  border: 1px solid var(--line);
  border-radius: .7rem;
  margin: .9rem 0;
  padding: .85rem 1rem;
  overflow-x: auto;
}

.md-pre code {
  font-family: var(--font-spline-mono), ui-monospace, monospace;
  color: var(--ink);
  font-size: .82rem;
  line-height: 1.6;
}

.md-tablewrap {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: .7rem;
  margin: 1.1rem 0;
  overflow-x: auto;
}

.md-table {
  border-collapse: collapse;
  width: 100%;
  font-size: .92rem;
  line-height: 1.55;
}

.md-table th, .md-table td {
  border-bottom: 1px solid var(--line);
  vertical-align: top;
  padding: .55rem .85rem;
}

.md-table thead th {
  background: var(--surface-2);
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-soft);
  white-space: nowrap;
  font-size: .78rem;
  font-weight: 600;
}

.md-table tbody tr:last-child td {
  border-bottom: 0;
}

.md-table tbody tr:nth-child(2n) {
  background: var(--surface-2);
}

@supports (color: color-mix(in lab, red, red)) {
  .md-table tbody tr:nth-child(2n) {
    background: color-mix(in srgb, var(--surface-2) 45%, transparent);
  }
}

.md-link {
  color: var(--coral-ink);
  text-underline-offset: 2px;
  font-weight: 600;
  text-decoration: underline;
}

.md-link:hover {
  color: var(--pink-ink);
}

.md-hr {
  border: 0;
  border-top: 1px dashed var(--line-strong);
  margin: 1.2rem 0;
}

@keyframes rise {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

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

.rise {
  animation: .55s cubic-bezier(.2, .8, .25, 1) both rise;
}

.rise-1 {
  animation-delay: 50ms;
}

.rise-2 {
  animation-delay: .12s;
}

.rise-3 {
  animation-delay: .19s;
}

.rise-4 {
  animation-delay: .26s;
}

.rise-5 {
  animation-delay: .33s;
}

.rise-6 {
  animation-delay: .4s;
}

@keyframes twinkle {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .35;
  }
}

@keyframes pulse-ring {
  0% {
    box-shadow: 0 0 #f0693c73;
  }

  70% {
    box-shadow: 0 0 0 12px #f0693c00;
  }

  100% {
    box-shadow: 0 0 #f0693c00;
  }
}

.pulse-ring {
  animation: 2.4s ease-out infinite pulse-ring;
}

@keyframes float-slow {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

.float-slow {
  animation: 6s ease-in-out infinite float-slow;
}

@media (prefers-reduced-motion: reduce) {
  *, :before, :after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }

  html {
    scroll-behavior: auto;
  }
}

.reader {
  background: var(--bg);
  flex-direction: column;
  min-height: 100dvh;
  display: flex;
}

.reader__bar {
  z-index: 20;
  background: var(--bg);
  position: sticky;
  top: 0;
}

@supports (color: color-mix(in lab, red, red)) {
  .reader__bar {
    background: color-mix(in srgb, var(--bg) 88%, transparent);
  }
}

.reader__bar {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}

.reader__barinner {
  align-items: center;
  gap: .75rem;
  max-width: 54rem;
  margin-inline: auto;
  padding: .6rem 1.25rem;
  display: flex;
}

.reader__ident {
  text-align: center;
  flex: 1;
  min-width: 0;
}

.reader__title {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.2;
  overflow: hidden;
}

.reader__sub {
  color: var(--muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .7rem;
  overflow: hidden;
}

.reader__rail {
  background: var(--line);
  height: 3px;
}

.reader__railfill {
  background-image: var(--grad-smoke);
  height: 100%;
  transition: width .35s cubic-bezier(.4, 0, .2, 1);
  display: block;
}

.reader__menu {
  gap: .15rem;
  max-width: 54rem;
  max-height: 60vh;
  margin-inline: auto;
  padding: .5rem 1.25rem .9rem;
  display: grid;
  overflow-y: auto;
}

.reader__menuitem {
  text-align: left;
  width: 100%;
  color: var(--ink-soft);
  cursor: pointer;
  border-radius: .6rem;
  align-items: center;
  gap: .7rem;
  padding: .5rem .6rem;
  font-size: .85rem;
  transition: background-color .15s, color .15s;
  display: flex;
}

.reader__menuitem:hover {
  background: var(--surface-2);
  color: var(--ink);
}

.reader__menuitem.is-current {
  background: var(--coral-soft);
  color: var(--coral-ink);
  font-weight: 600;
}

.reader__menunum {
  border: 1px solid var(--line-strong);
  font-variant-numeric: tabular-nums;
  border-radius: 999px;
  flex: none;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
  font-size: .68rem;
  display: grid;
}

.reader__body {
  flex: 1;
  width: 100%;
  max-width: 44rem;
  margin-inline: auto;
  padding: 2.5rem 1.25rem 4rem;
}

@media (min-width: 640px) {
  .reader__body {
    padding: 3.5rem 2rem 5rem;
  }
}

.reader__resume {
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--coral-ink);
  margin-bottom: .75rem;
  font-size: .72rem;
  font-weight: 600;
}

.reader__heading {
  scroll-margin-top: 5rem;
}

.reader__heading:focus, .reader__heading:focus-visible {
  outline: none;
}

.reader__md {
  margin-top: 1.75rem;
  font-size: 1.06rem;
  line-height: 1.75;
}

.reader__nav {
  border-top: 1px solid var(--line);
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-top: 3.5rem;
  padding-top: 1.5rem;
  display: flex;
}

.reader__dots {
  flex-wrap: wrap;
  justify-content: center;
  gap: .3rem;
  display: flex;
}

.reader__dot {
  background: var(--line-strong);
  border-radius: 999px;
  width: .4rem;
  height: .4rem;
  transition: background-color .3s;
}

.reader__dot.is-done {
  background-image: var(--grad-smoke);
}

@media (max-width: 480px) {
  .reader__dots {
    display: none;
  }
}

.reader__end {
  text-align: center;
  color: var(--muted);
  margin-top: 1.25rem;
  font-size: .85rem;
}

.seam-top, .seam-bottom {
  position: relative;
}

.seam-top:before, .seam-bottom:after {
  content: "";
  background: inherit;
  pointer-events: none;
  width: 120%;
  height: 5vw;
  min-height: 34px;
  position: absolute;
  left: -10%;
}

.seam-top:before {
  border-radius: 50% 50% 0 0;
  top: 0;
  transform: translateY(-52%);
}

.seam-bottom:after {
  border-radius: 0 0 50% 50%;
  bottom: 0;
  transform: translateY(52%);
}

.frame-organic {
  border-radius: 46% 54% 52% 48% / 8% 8% 10% 10%;
  overflow: hidden;
}

.frame-brand {
  border-radius: 58% 14% / 42% 14%;
  overflow: hidden;
}

.frame-leaf {
  border-radius: 2.5rem 8rem;
  overflow: hidden;
}

.photo-glow {
  position: relative;
}

.photo-glow:before {
  content: "";
  z-index: 0;
  filter: blur(38px);
  opacity: .5;
  background: radial-gradient(58% 58% at 42% 40%, var(--pink) 0%, transparent 70%),
    radial-gradient(62% 62% at 66% 70%, var(--coral) 0%, transparent 72%);
  border-radius: 42% 58% 56% 44% / 48% 42% 58% 52%;
  position: absolute;
  inset: -8% -6% -4%;
}

.photo-glow > * {
  z-index: 1;
  position: relative;
}

[data-theme="dark"] .photo-glow:before {
  opacity: .38;
}

.reveal {
  opacity: 1;
}

[data-reveal="on"] .reveal {
  opacity: 0;
  transition: opacity .7s, transform .7s cubic-bezier(.22, 1, .36, 1);
  transform: translateY(18px);
}

[data-reveal="on"] .reveal.is-in {
  opacity: 1;
  transform: none;
}

.disclosure {
  grid-template-rows: 0fr;
  transition: grid-template-rows .34s cubic-bezier(.4, 0, .2, 1);
  display: grid;
}

.disclosure > * {
  min-height: 0;
  overflow: hidden;
}

.disclosure.is-open {
  grid-template-rows: 1fr;
}

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

  [data-reveal="on"] .reveal {
    opacity: 1;
    transition: none;
    transform: none;
  }
}

.program-strip {
  gap: .75rem;
  margin-top: 2.5rem;
  display: grid;
}

.program-panel {
  min-height: 20rem;
  box-shadow: var(--shadow-md);
  background-image: var(--grad-smoke);
  border-radius: 1.75rem;
  position: relative;
  overflow: hidden;
}

.program-panel__link {
  text-decoration: none;
  display: block;
  position: absolute;
  inset: 0;
}

.program-panel__img {
  object-fit: cover;
  object-position: center 18%;
  transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}

.program-panel.is-active .program-panel__img {
  transform: scale(1.05);
}

.program-panel__placeholder {
  background-image: var(--grad-smoke);
  position: absolute;
  inset: 0;
}

.program-panel__placeholder-note {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #ffffffc7;
  opacity: 0;
  border: 1px dashed #ffffff73;
  border-radius: .5rem;
  padding: .3rem .55rem;
  font-size: .62rem;
  font-weight: 600;
  transition: opacity .3s;
  position: absolute;
  top: 1.25rem;
  left: 1.25rem;
}

.program-panel.is-active .program-panel__placeholder-note {
  opacity: 1;
}

.program-panel__scrim {
  background: linear-gradient(#140c0e0f 0%, #140c0e6b 52%, #140c0ed1 100%);
  position: absolute;
  inset: 0;
}

.program-panel__spine {
  display: none;
}

.program-panel__body {
  color: #fff;
  gap: .4rem;
  padding: 1.5rem;
  display: grid;
  position: absolute;
  inset: auto 0 0;
}

.program-panel__code {
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #ffffffd1;
  font-size: .66rem;
  font-weight: 700;
}

.program-panel__title {
  font-family: var(--font-fraunces), Georgia, serif;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.15;
}

.program-panel__blurb {
  color: #ffffffeb;
  max-width: 34ch;
  font-size: .9rem;
  line-height: 1.55;
}

.program-panel__cta {
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-top: .35rem;
  font-size: .78rem;
  font-weight: 700;
}

@media (min-width: 768px) {
  .program-strip {
    gap: .75rem;
    height: 30rem;
    display: flex;
  }

  .program-panel {
    flex: 1 1 0;
    min-height: 0;
    transition: flex-grow .65s cubic-bezier(.22, 1, .36, 1);
  }

  .program-panel.is-active {
    flex-grow: 4.2;
  }

  .program-panel__spine {
    writing-mode: vertical-rl;
    font-family: var(--font-fraunces), Georgia, serif;
    color: #fff;
    white-space: nowrap;
    opacity: 1;
    font-size: 1.05rem;
    font-weight: 600;
    transition: opacity .3s;
    display: block;
    position: absolute;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%)rotate(180deg);
  }

  .program-panel.is-active .program-panel__spine {
    opacity: 0;
  }

  .program-panel__body {
    opacity: 0;
    transition: opacity .4s .12s, transform .5s cubic-bezier(.22, 1, .36, 1) .12s;
    transform: translateY(10px);
  }

  .program-panel.is-active .program-panel__body {
    opacity: 1;
    transform: none;
  }
}

.program-panel__link:focus-visible {
  outline: 3px solid var(--coral);
  outline-offset: -3px;
  border-radius: 1.75rem;
}

.program-panel.is-active {
  box-shadow: var(--shadow-lg);
}

@media (prefers-reduced-motion: reduce) {
  .program-panel, .program-panel__img, .program-panel__body, .program-panel__spine {
    transition: none;
  }

  .program-panel.is-active .program-panel__img {
    transform: none;
  }
}

.voices {
  margin-top: 2.5rem;
  max-width: 56rem;
  margin-inline: auto;
}

.voices__stage {
  align-items: center;
  gap: 2rem;
  display: grid;
}

@media (min-width: 900px) {
  .voices__stage {
    grid-template-columns: 14rem minmax(0, 1fr);
    gap: 3.5rem;
  }
}

.voices__portrait {
  width: 100%;
  max-width: 14rem;
  margin-inline: auto;
}

.voices__frame {
  border-radius: 55% 12% / 40% 12%;
  overflow: hidden;
}

.voices__img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
  width: 100%;
  height: auto;
  animation: .5s both voice-in;
  display: block;
}

@keyframes voice-in {
  from {
    opacity: 0;
    transform: scale(1.02);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.voices__quotes {
  display: grid;
}

.voices__quote {
  grid-area: 1 / 1;
  display: none;
  position: relative;
}

.voices__quote.is-active {
  display: block;
}

@media (min-width: 900px) {
  .voices__quote {
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s;
    display: block;
  }

  .voices__quote.is-active {
    visibility: visible;
    opacity: 1;
  }
}

.voices__mark {
  background-image: var(--grad-smoke);
  border-radius: 999px;
  width: 2.75rem;
  height: 3px;
  margin-bottom: 1.25rem;
  font-size: 0;
  display: block;
}

.voices__text {
  color: var(--ink-soft);
  max-width: 60ch;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.7;
}

.voices__by {
  gap: .35rem;
  margin-top: 1.25rem;
  display: grid;
}

.voices__name {
  font-family: var(--font-fraunces), Georgia, serif;
  color: var(--ink);
  font-size: 1.125rem;
  font-weight: 600;
}

.voices__role {
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--coral-ink);
  font-size: .75rem;
  font-weight: 700;
}

.voices__nav {
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin-top: 2.5rem;
  display: flex;
}

.voices__arrow {
  border: 1px solid var(--line);
  background: var(--surface);
  width: 2.75rem;
  height: 2.75rem;
  color: var(--ink-soft);
  cursor: pointer;
  border-radius: 9999px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 1.1rem;
  transition: color .2s, border-color .2s;
  display: inline-flex;
}

.voices__arrow:hover {
  color: var(--coral-ink);
  border-color: var(--coral);
}

.voices__arrow:focus-visible {
  outline: 2px solid var(--coral);
  outline-offset: 3px;
}

.voices__faces {
  flex-wrap: wrap;
  justify-content: center;
  gap: .75rem 1.1rem;
  display: flex;
}

.voices__pick {
  cursor: pointer;
  color: var(--ink-soft);
  background: none;
  border: 0;
  justify-items: center;
  gap: .5rem;
  padding: 0;
  font-size: .75rem;
  font-weight: 600;
  transition: color .2s;
  display: grid;
}

.voices__pick.is-active {
  color: var(--ink);
}

.voices__pick:focus-visible {
  outline: 2px solid var(--coral);
  outline-offset: 4px;
  border-radius: .75rem;
}

.voices__face {
  opacity: .62;
  border-radius: 38% 62% / 55% 38% 62% 45%;
  width: 3rem;
  height: 3rem;
  transition: opacity .3s, transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .3s;
  overflow: hidden;
  transform: scale(.92);
  box-shadow: 0 0 #0000;
}

.voices__face img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.voices__pick:hover .voices__face {
  opacity: .9;
  transform: scale(1);
}

.voices__pick.is-active .voices__face {
  opacity: 1;
  box-shadow: 0 0 0 2px var(--surface), 0 0 0 4px var(--coral);
  transform: scale(1.18);
}

@media (prefers-reduced-motion: reduce) {
  .voices__img {
    animation: none;
  }

  .voices__quote, .voices__face {
    transition: none;
  }
}

.timeline {
  gap: 2.25rem;
  margin-top: 3rem;
  display: grid;
  position: relative;
}

.timeline__step {
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 1.25rem;
  display: grid;
  position: relative;
}

.timeline__marker {
  z-index: 1;
  color: #fff;
  background-image: var(--grad-smoke);
  width: 2.75rem;
  height: 2.75rem;
  box-shadow: var(--shadow-sm);
  border-radius: 999px;
  place-items: center;
  display: grid;
  position: relative;
}

.timeline__step:not(:last-child):before {
  content: "";
  background: linear-gradient(var(--line-strong), transparent);
  width: 2px;
  position: absolute;
  top: 2.75rem;
  bottom: -2.25rem;
  left: 1.375rem;
}

.timeline__num {
  font-family: var(--font-spline-mono), ui-monospace, monospace;
  letter-spacing: .1em;
  color: var(--muted);
  font-size: .7rem;
  font-weight: 600;
}

.timeline__title {
  font-family: var(--font-fraunces), Georgia, serif;
  margin-top: .15rem;
  font-size: 1.2rem;
  font-weight: 600;
}

.timeline__body {
  color: var(--ink-soft);
  max-width: 52ch;
  margin-top: .4rem;
  font-size: .95rem;
  line-height: 1.65;
}

@media (min-width: 900px) {
  .timeline {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.75rem;
  }

  .timeline__step {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .timeline__step:not(:last-child):before {
    background: linear-gradient(90deg, var(--line-strong), transparent);
    width: auto;
    height: 2px;
    inset: 1.375rem -1.75rem auto 2.75rem;
  }
}

.form-error {
  color: var(--red);
  margin-top: .4rem;
  font-size: .8rem;
  font-weight: 500;
}

.feature-list {
  display: grid;
}

.feature-row {
  border-top: 1px solid var(--line);
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 1.25rem;
  padding: 2rem 0;
  display: grid;
}

.feature-list > .feature-row:last-child {
  border-bottom: 1px solid var(--line);
}

@media (min-width: 900px) {
  .feature-list {
    grid-template-columns: 1fr 1fr;
    column-gap: 4rem;
  }
}

.feature-row__icon {
  border-radius: .9rem;
  flex: none;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  display: grid;
}

.feature-row__num {
  font-family: var(--font-spline-mono), ui-monospace, monospace;
  letter-spacing: .16em;
  color: var(--muted);
  font-size: .66rem;
  font-weight: 600;
}

.feature-row__title {
  font-family: var(--font-fraunces), Georgia, serif;
  margin-top: .2rem;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.25;
}

.feature-row__lead {
  color: var(--ink-soft);
  margin-top: .5rem;
  font-size: .95rem;
  line-height: 1.6;
}

.feature-row__more {
  letter-spacing: .14em;
  text-transform: uppercase;
  border-radius: .35rem;
  align-items: center;
  gap: .4rem;
  margin-top: .85rem;
  font-size: .7rem;
  font-weight: 700;
  display: inline-flex;
}

.feature-row__body {
  color: var(--ink-soft);
  border-top: 1px dashed var(--line);
  margin-top: .9rem;
  padding-top: .9rem;
  font-size: .92rem;
  line-height: 1.7;
}

.step-figure {
  box-shadow: var(--shadow-lg);
  background: var(--surface);
  border-radius: 1.5rem;
  overflow: hidden;
}

@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-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

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

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

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

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

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

@property --tw-slashed-zero {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-figure {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

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

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

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

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

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

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

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

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

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

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-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-duration {
  syntax: "*";
  inherits: false
}

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

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

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

.preview-note { margin-top: .75rem; font-size: .875rem; color: var(--coral-ink, currentColor); }
#lwl-toast {
  position: fixed; left: 50%; bottom: 1.5rem; z-index: 60; transform: translate(-50%, 1rem);
  max-width: min(28rem, calc(100vw - 2rem)); padding: .75rem 1.1rem; border-radius: 9999px;
  background: var(--surface); color: var(--ink); border: 1px solid var(--line);
  box-shadow: var(--shadow-md); font-size: .875rem; text-align: center;
  opacity: 0; pointer-events: none; transition: opacity .2s ease, transform .2s ease;
}
#lwl-toast.is-on { opacity: 1; transform: translate(-50%, 0); }
@media (prefers-reduced-motion: reduce) { #lwl-toast { transition: none; } }
