/* Wildframe — Ghost theme stylesheet. Generated by tools/build_css.js.
   Do not edit directly: edit assets/css/input.css (tokens + components),
   assets/css/ghost/*.css (Ghost-emitted markup), or the templates, then run
   `npm run build:css`.
*/

/* ---- Tailwind build: Wildframe tokens, components and template utilities ---- */
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    --color-emerald-400: oklch(76.5% 0.177 163.223);
    --color-rose-400: oklch(71.2% 0.194 13.428);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-xl: 36rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.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;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --tracking-tight: -0.025em;
    --tracking-normal: 0em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-sm: 8px;
    --blur-md: 12px;
    --blur-2xl: 40px;
    --blur-3xl: 64px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --font-display: "Archivo", "Helvetica Neue", Arial, sans-serif;
    --color-paper: var(--paper);
    --color-surface: var(--surface);
    --color-raised: var(--raised);
    --color-ink: var(--ink);
    --color-muted: var(--muted);
    --color-faint: var(--faint);
    --color-line: var(--line);
    --color-canopy: var(--canopy);
    --color-canopy-deep: var(--canopy-deep);
    --color-moss: var(--moss);
    --color-fern: var(--fern);
    --color-amber: var(--amber);
    --color-amber-deep: var(--amber-deep);
    --color-slate-band: var(--slate-band);
    --color-on-dark: var(--on-dark);
    --color-on-dark-muted: var(--on-dark-muted);
    --color-accent: var(--accent);
    --color-mist: var(--mist);
    --color-mist-ink: var(--mist-ink);
    --color-sand: var(--sand);
    --color-sand-ink: var(--sand-ink);
    --color-leaf: var(--leaf);
    --color-leaf-ink: var(--leaf-ink);
    --color-clay: var(--clay);
    --color-clay-ink: var(--clay-ink);
    --color-pastel-sky: var(--pastel-sky);
    --spacing-s4: 1rem;
    --spacing-s5: 1.5rem;
    --spacing-s6: 2rem;
    --spacing-s7: 3rem;
    --spacing-s8: 4rem;
    --spacing-s9: 6rem;
    --radius-plate: 1.25rem;
    --ease-studio: cubic-bezier(0.22, 0.61, 0.36, 1);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .sticky {
    position: sticky;
  }
  .-inset-2 {
    inset: calc(var(--spacing) * -2);
  }
  .inset-0 {
    inset: 0px;
  }
  .inset-x-0 {
    inset-inline: 0px;
  }
  .inset-x-3 {
    inset-inline: calc(var(--spacing) * 3);
  }
  .inset-x-4 {
    inset-inline: calc(var(--spacing) * 4);
  }
  .-top-3\.5 {
    top: calc(var(--spacing) * -3.5);
  }
  .-top-4 {
    top: calc(var(--spacing) * -4);
  }
  .-top-5 {
    top: calc(var(--spacing) * -5);
  }
  .-top-10 {
    top: calc(var(--spacing) * -10);
  }
  .-top-12 {
    top: calc(var(--spacing) * -12);
  }
  .-top-32 {
    top: calc(var(--spacing) * -32);
  }
  .-top-40 {
    top: calc(var(--spacing) * -40);
  }
  .top-0 {
    top: 0px;
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-1\/4 {
    top: calc(1 / 4 * 100%);
  }
  .top-3 {
    top: calc(var(--spacing) * 3);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-5 {
    top: calc(var(--spacing) * 5);
  }
  .top-6 {
    top: calc(var(--spacing) * 6);
  }
  .top-10 {
    top: calc(var(--spacing) * 10);
  }
  .top-20 {
    top: calc(var(--spacing) * 20);
  }
  .top-s8 {
    top: var(--spacing-s8);
  }
  .-right-3 {
    right: calc(var(--spacing) * -3);
  }
  .-right-4 {
    right: calc(var(--spacing) * -4);
  }
  .-right-12 {
    right: calc(var(--spacing) * -12);
  }
  .-right-20 {
    right: calc(var(--spacing) * -20);
  }
  .-right-32 {
    right: calc(var(--spacing) * -32);
  }
  .-right-40 {
    right: calc(var(--spacing) * -40);
  }
  .right-1\.5 {
    right: calc(var(--spacing) * 1.5);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .right-5 {
    right: calc(var(--spacing) * 5);
  }
  .right-6 {
    right: calc(var(--spacing) * 6);
  }
  .right-10 {
    right: calc(var(--spacing) * 10);
  }
  .right-s5 {
    right: var(--spacing-s5);
  }
  .-bottom-4 {
    bottom: calc(var(--spacing) * -4);
  }
  .-bottom-5 {
    bottom: calc(var(--spacing) * -5);
  }
  .-bottom-32 {
    bottom: calc(var(--spacing) * -32);
  }
  .-bottom-40 {
    bottom: calc(var(--spacing) * -40);
  }
  .bottom-0 {
    bottom: 0px;
  }
  .bottom-3 {
    bottom: calc(var(--spacing) * 3);
  }
  .bottom-4 {
    bottom: calc(var(--spacing) * 4);
  }
  .bottom-10 {
    bottom: calc(var(--spacing) * 10);
  }
  .-left-20 {
    left: calc(var(--spacing) * -20);
  }
  .-left-32 {
    left: calc(var(--spacing) * -32);
  }
  .-left-40 {
    left: calc(var(--spacing) * -40);
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-4 {
    left: calc(var(--spacing) * 4);
  }
  .left-5 {
    left: calc(var(--spacing) * 5);
  }
  .left-6 {
    left: calc(var(--spacing) * 6);
  }
  .left-8 {
    left: calc(var(--spacing) * 8);
  }
  .isolate {
    isolation: isolate;
  }
  .-z-10 {
    z-index: calc(10 * -1);
  }
  .z-10 {
    z-index: 10;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[60\] {
    z-index: 60;
  }
  .z-\[80\] {
    z-index: 80;
  }
  .order-1 {
    order: 1;
  }
  .order-2 {
    order: 2;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .m-0 {
    margin: 0px;
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-6 {
    margin-block: calc(var(--spacing) * 6);
  }
  .my-s7 {
    margin-block: var(--spacing-s7);
  }
  .-mt-1 {
    margin-top: calc(var(--spacing) * -1);
  }
  .-mt-16 {
    margin-top: calc(var(--spacing) * -16);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.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-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mt-s4 {
    margin-top: var(--spacing-s4);
  }
  .mt-s5 {
    margin-top: var(--spacing-s5);
  }
  .mt-s6 {
    margin-top: var(--spacing-s6);
  }
  .mt-s7 {
    margin-top: var(--spacing-s7);
  }
  .mt-s8 {
    margin-top: var(--spacing-s8);
  }
  .mr-1 {
    margin-right: var(--spacing);
  }
  .mr-4 {
    margin-right: calc(var(--spacing) * 4);
  }
  .mb-1 {
    margin-bottom: var(--spacing);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-2\.5 {
    margin-bottom: calc(var(--spacing) * 2.5);
  }
  .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-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }
  .mb-s4 {
    margin-bottom: var(--spacing-s4);
  }
  .mb-s5 {
    margin-bottom: var(--spacing-s5);
  }
  .mb-s6 {
    margin-bottom: var(--spacing-s6);
  }
  .mb-s7 {
    margin-bottom: var(--spacing-s7);
  }
  .ml-1 {
    margin-left: var(--spacing);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .line-clamp-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .aspect-\[1\/1\] {
    aspect-ratio: 1/1;
  }
  .aspect-\[3\/4\] {
    aspect-ratio: 3/4;
  }
  .aspect-\[4\/3\] {
    aspect-ratio: 4/3;
  }
  .aspect-\[4\/5\] {
    aspect-ratio: 4/5;
  }
  .aspect-\[16\/9\] {
    aspect-ratio: 16/9;
  }
  .aspect-\[16\/10\] {
    aspect-ratio: 16/10;
  }
  .aspect-\[16\/11\] {
    aspect-ratio: 16/11;
  }
  .aspect-\[21\/9\] {
    aspect-ratio: 21/9;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .h-1 {
    height: var(--spacing);
  }
  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .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-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-40 {
    height: calc(var(--spacing) * 40);
  }
  .h-48 {
    height: calc(var(--spacing) * 48);
  }
  .h-80 {
    height: calc(var(--spacing) * 80);
  }
  .h-96 {
    height: calc(var(--spacing) * 96);
  }
  .h-\[28rem\] {
    height: 28rem;
  }
  .h-full {
    height: 100%;
  }
  .max-h-9 {
    max-height: calc(var(--spacing) * 9);
  }
  .max-h-12 {
    max-height: calc(var(--spacing) * 12);
  }
  .max-h-\[78vh\] {
    max-height: 78vh;
  }
  .min-h-\[44px\] {
    min-height: 44px;
  }
  .min-h-\[56px\] {
    min-height: 56px;
  }
  .min-h-\[70vh\] {
    min-height: 70vh;
  }
  .min-h-\[220px\] {
    min-height: 220px;
  }
  .min-h-\[460px\] {
    min-height: 460px;
  }
  .w-1 {
    width: var(--spacing);
  }
  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .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-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-20 {
    width: calc(var(--spacing) * 20);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-36 {
    width: calc(var(--spacing) * 36);
  }
  .w-40 {
    width: calc(var(--spacing) * 40);
  }
  .w-48 {
    width: calc(var(--spacing) * 48);
  }
  .w-80 {
    width: calc(var(--spacing) * 80);
  }
  .w-96 {
    width: calc(var(--spacing) * 96);
  }
  .w-\[28rem\] {
    width: 28rem;
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-\[13ch\] {
    max-width: 13ch;
  }
  .max-w-\[14ch\] {
    max-width: 14ch;
  }
  .max-w-\[15ch\] {
    max-width: 15ch;
  }
  .max-w-\[16ch\] {
    max-width: 16ch;
  }
  .max-w-\[18ch\] {
    max-width: 18ch;
  }
  .max-w-\[20ch\] {
    max-width: 20ch;
  }
  .max-w-\[24ch\] {
    max-width: 24ch;
  }
  .max-w-\[24rem\] {
    max-width: 24rem;
  }
  .max-w-\[28ch\] {
    max-width: 28ch;
  }
  .max-w-\[32ch\] {
    max-width: 32ch;
  }
  .max-w-\[32rem\] {
    max-width: 32rem;
  }
  .max-w-\[34ch\] {
    max-width: 34ch;
  }
  .max-w-\[40ch\] {
    max-width: 40ch;
  }
  .max-w-\[42ch\] {
    max-width: 42ch;
  }
  .max-w-\[44ch\] {
    max-width: 44ch;
  }
  .max-w-\[46ch\] {
    max-width: 46ch;
  }
  .max-w-\[48ch\] {
    max-width: 48ch;
  }
  .max-w-\[50ch\] {
    max-width: 50ch;
  }
  .max-w-\[52ch\] {
    max-width: 52ch;
  }
  .max-w-\[54ch\] {
    max-width: 54ch;
  }
  .max-w-\[56ch\] {
    max-width: 56ch;
  }
  .max-w-\[62ch\] {
    max-width: 62ch;
  }
  .max-w-\[64ch\] {
    max-width: 64ch;
  }
  .max-w-\[140px\] {
    max-width: 140px;
  }
  .max-w-\[min\(72ch\,100\%\)\] {
    max-width: min(72ch, 100%);
  }
  .max-w-\[min\(1100px\,92vw\)\] {
    max-width: min(1100px, 92vw);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-prose {
    max-width: 65ch;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: 0px;
  }
  .min-w-\[12rem\] {
    min-width: 12rem;
  }
  .min-w-\[130px\] {
    min-width: 130px;
  }
  .min-w-\[140px\] {
    min-width: 140px;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink {
    flex-shrink: 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);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .scroll-mt-28 {
    scroll-margin-top: calc(var(--spacing) * 28);
  }
  .list-none {
    list-style-type: none;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .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-\[88px_1fr\] {
    grid-template-columns: 88px 1fr;
  }
  .grid-cols-\[repeat\(auto-fit\,minmax\(16rem\,1fr\)\)\] {
    grid-template-columns: repeat(auto-fit,minmax(16rem,1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .content-start {
    align-content: flex-start;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .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-3\.5 {
    gap: calc(var(--spacing) * 3.5);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-7 {
    gap: calc(var(--spacing) * 7);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .gap-s4 {
    gap: var(--spacing-s4);
  }
  .gap-s5 {
    gap: var(--spacing-s5);
  }
  .gap-s6 {
    gap: var(--spacing-s6);
  }
  .gap-s7 {
    gap: var(--spacing-s7);
  }
  .gap-s8 {
    gap: var(--spacing-s8);
  }
  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
    margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-1\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-3 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }
  :where(.space-y-s8 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(var(--spacing-s8) * var(--tw-space-y-reverse));
    margin-block-end: calc(var(--spacing-s8) * calc(1 - var(--tw-space-y-reverse)));
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }
  .gap-x-s5 {
    column-gap: var(--spacing-s5);
  }
  .gap-x-s6 {
    column-gap: var(--spacing-s6);
  }
  .gap-x-s7 {
    column-gap: var(--spacing-s7);
  }
  .gap-y-1 {
    row-gap: var(--spacing);
  }
  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }
  .gap-y-3 {
    row-gap: calc(var(--spacing) * 3);
  }
  .gap-y-s7 {
    row-gap: var(--spacing-s7);
  }
  :where(.divide-y > :not(:last-child)) {
    --tw-divide-y-reverse: 0;
    border-bottom-style: var(--tw-border-style);
    border-top-style: var(--tw-border-style);
    border-top-width: calc(1px * var(--tw-divide-y-reverse));
    border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  }
  :where(.divide-line > :not(:last-child)) {
    border-color: var(--color-line);
  }
  :where(.divide-white\/10 > :not(:last-child)) {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }
  .rounded-\[0\.5rem\] {
    border-radius: 0.5rem;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .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-amber {
    border-color: var(--color-amber) !important;
  }
  .\!border-line {
    border-color: var(--color-line) !important;
  }
  .border-amber {
    border-color: var(--color-amber);
  }
  .border-amber\/20 {
    border-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-amber) 20%, transparent);
    }
  }
  .border-amber\/25 {
    border-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-amber) 25%, transparent);
    }
  }
  .border-amber\/30 {
    border-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-amber) 30%, transparent);
    }
  }
  .border-line {
    border-color: var(--color-line);
  }
  .border-line\/40 {
    border-color: var(--color-line);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-line) 40%, transparent);
    }
  }
  .border-line\/60 {
    border-color: var(--color-line);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-line) 60%, transparent);
    }
  }
  .border-line\/70 {
    border-color: var(--color-line);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-line) 70%, transparent);
    }
  }
  .border-line\/80 {
    border-color: var(--color-line);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-line) 80%, transparent);
    }
  }
  .border-line\/90 {
    border-color: var(--color-line);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-line) 90%, transparent);
    }
  }
  .border-white\/10 {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .border-white\/12 {
    border-color: color-mix(in srgb, #fff 12%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 12%, transparent);
    }
  }
  .border-white\/15 {
    border-color: color-mix(in srgb, #fff 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }
  .border-white\/20 {
    border-color: color-mix(in srgb, #fff 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }
  .border-white\/30 {
    border-color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .\!bg-amber {
    background-color: var(--color-amber) !important;
  }
  .bg-\[\#0E241B\] {
    background-color: #0E241B;
  }
  .bg-\[\#07130e\] {
    background-color: #07130e;
  }
  .bg-\[\#091711\]\/70 {
    background-color: color-mix(in oklab, #091711 70%, transparent);
  }
  .bg-accent\/20 {
    background-color: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-accent) 20%, transparent);
    }
  }
  .bg-amber {
    background-color: var(--color-amber);
  }
  .bg-amber\/10 {
    background-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber) 10%, transparent);
    }
  }
  .bg-amber\/15 {
    background-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber) 15%, transparent);
    }
  }
  .bg-amber\/20 {
    background-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber) 20%, transparent);
    }
  }
  .bg-black\/0 {
    background-color: color-mix(in srgb, #000 0%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 0%, transparent);
    }
  }
  .bg-black\/20 {
    background-color: color-mix(in srgb, #000 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }
  .bg-black\/30 {
    background-color: color-mix(in srgb, #000 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
  }
  .bg-black\/40 {
    background-color: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }
  .bg-black\/50 {
    background-color: color-mix(in srgb, #000 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .bg-black\/60 {
    background-color: color-mix(in srgb, #000 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }
  .bg-black\/90 {
    background-color: color-mix(in srgb, #000 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 90%, transparent);
    }
  }
  .bg-canopy {
    background-color: var(--color-canopy);
  }
  .bg-canopy-deep {
    background-color: var(--color-canopy-deep);
  }
  .bg-canopy\/5 {
    background-color: var(--color-canopy);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-canopy) 5%, transparent);
    }
  }
  .bg-canopy\/70 {
    background-color: var(--color-canopy);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-canopy) 70%, transparent);
    }
  }
  .bg-clay {
    background-color: var(--color-clay);
  }
  .bg-clay\/40 {
    background-color: var(--color-clay);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-clay) 40%, transparent);
    }
  }
  .bg-current {
    background-color: currentcolor;
  }
  .bg-fern {
    background-color: var(--color-fern);
  }
  .bg-fern\/10 {
    background-color: var(--color-fern);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-fern) 10%, transparent);
    }
  }
  .bg-fern\/15 {
    background-color: var(--color-fern);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-fern) 15%, transparent);
    }
  }
  .bg-fern\/20 {
    background-color: var(--color-fern);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-fern) 20%, transparent);
    }
  }
  .bg-ink {
    background-color: var(--color-ink);
  }
  .bg-leaf {
    background-color: var(--color-leaf);
  }
  .bg-leaf\/40 {
    background-color: var(--color-leaf);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-leaf) 40%, transparent);
    }
  }
  .bg-line {
    background-color: var(--color-line);
  }
  .bg-mist {
    background-color: var(--color-mist);
  }
  .bg-mist\/40 {
    background-color: var(--color-mist);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-mist) 40%, transparent);
    }
  }
  .bg-paper {
    background-color: var(--color-paper);
  }
  .bg-paper\/60 {
    background-color: var(--color-paper);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-paper) 60%, transparent);
    }
  }
  .bg-paper\/90 {
    background-color: var(--color-paper);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-paper) 90%, transparent);
    }
  }
  .bg-raised {
    background-color: var(--color-raised);
  }
  .bg-raised\/40 {
    background-color: var(--color-raised);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-raised) 40%, transparent);
    }
  }
  .bg-raised\/80 {
    background-color: var(--color-raised);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-raised) 80%, transparent);
    }
  }
  .bg-raised\/90 {
    background-color: var(--color-raised);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-raised) 90%, transparent);
    }
  }
  .bg-sand {
    background-color: var(--color-sand);
  }
  .bg-sand\/50 {
    background-color: var(--color-sand);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-sand) 50%, transparent);
    }
  }
  .bg-surface {
    background-color: var(--color-surface);
  }
  .bg-surface\/30 {
    background-color: var(--color-surface);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-surface) 30%, transparent);
    }
  }
  .bg-surface\/40 {
    background-color: var(--color-surface);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-surface) 40%, transparent);
    }
  }
  .bg-surface\/50 {
    background-color: var(--color-surface);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-surface) 50%, transparent);
    }
  }
  .bg-surface\/60 {
    background-color: var(--color-surface);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-surface) 60%, transparent);
    }
  }
  .bg-surface\/70 {
    background-color: var(--color-surface);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-surface) 70%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white\/5 {
    background-color: color-mix(in srgb, #fff 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }
  .bg-white\/10 {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-white\/15 {
    background-color: color-mix(in srgb, #fff 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }
  .bg-white\/25 {
    background-color: color-mix(in srgb, #fff 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 25%, transparent);
    }
  }
  .bg-white\/80 {
    background-color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .bg-white\/90 {
    background-color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .bg-white\/\[0\.04\] {
    background-color: color-mix(in srgb, #fff 4%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 4%, transparent);
    }
  }
  .bg-white\/\[0\.05\] {
    background-color: color-mix(in srgb, #fff 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }
  .bg-gradient-to-b {
    --tw-gradient-position: to bottom in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-tr {
    --tw-gradient-position: to top right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-amber {
    --tw-gradient-from: var(--color-amber);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-amber\/20 {
    --tw-gradient-from: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-amber) 20%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-amber\/\[0\.18\] {
    --tw-gradient-from: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-amber) 18%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/50 {
    --tw-gradient-from: color-mix(in srgb, #000 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/60 {
    --tw-gradient-from: color-mix(in srgb, #000 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/85 {
    --tw-gradient-from: color-mix(in srgb, #000 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 85%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/90 {
    --tw-gradient-from: color-mix(in srgb, #000 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 90%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-canopy {
    --tw-gradient-from: var(--color-canopy);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-black\/10 {
    --tw-gradient-via: color-mix(in srgb, #000 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-black\/35 {
    --tw-gradient-via: color-mix(in srgb, #000 35%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 35%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-black\/40 {
    --tw-gradient-via: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-black\/45 {
    --tw-gradient-via: color-mix(in srgb, #000 45%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 45%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-canopy\/60 {
    --tw-gradient-via: var(--color-canopy);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-canopy) 60%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-transparent {
    --tw-gradient-via: transparent;
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-amber-deep {
    --tw-gradient-to: var(--color-amber-deep);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-black\/10 {
    --tw-gradient-to: color-mix(in srgb, #000 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-canopy\/30 {
    --tw-gradient-to: var(--color-canopy);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-canopy) 30%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-fern\/20 {
    --tw-gradient-to: var(--color-fern);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-fern) 20%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-transparent {
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-white\/\[0\.08\] {
    --tw-gradient-to: color-mix(in srgb, #fff 8%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-white) 8%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .bg-clip-text {
    background-clip: text;
  }
  .fill-current {
    fill: currentcolor;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-0 {
    padding: 0px;
  }
  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }
  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }
  .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-s5 {
    padding: var(--spacing-s5);
  }
  .p-s6 {
    padding: var(--spacing-s6);
  }
  .p-s7 {
    padding: var(--spacing-s7);
  }
  .px-0\.5 {
    padding-inline: calc(var(--spacing) * 0.5);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .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);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-\[var\(--gutter\)\] {
    padding-inline: var(--gutter);
  }
  .px-s5 {
    padding-inline: var(--spacing-s5);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: var(--spacing);
  }
  .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-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-s4 {
    padding-block: var(--spacing-s4);
  }
  .py-s5 {
    padding-block: var(--spacing-s5);
  }
  .py-s6 {
    padding-block: var(--spacing-s6);
  }
  .py-s7 {
    padding-block: var(--spacing-s7);
  }
  .py-s8 {
    padding-block: var(--spacing-s8);
  }
  .pt-0 {
    padding-top: 0px;
  }
  .pt-1 {
    padding-top: var(--spacing);
  }
  .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);
  }
  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }
  .pt-16 {
    padding-top: calc(var(--spacing) * 16);
  }
  .pt-20 {
    padding-top: calc(var(--spacing) * 20);
  }
  .pt-\[0\.45rem\] {
    padding-top: 0.45rem;
  }
  .pt-s5 {
    padding-top: var(--spacing-s5);
  }
  .pt-s6 {
    padding-top: var(--spacing-s6);
  }
  .pt-s8 {
    padding-top: var(--spacing-s8);
  }
  .pt-s9 {
    padding-top: var(--spacing-s9);
  }
  .pr-24 {
    padding-right: calc(var(--spacing) * 24);
  }
  .pr-32 {
    padding-right: calc(var(--spacing) * 32);
  }
  .pb-0 {
    padding-bottom: 0px;
  }
  .pb-1 {
    padding-bottom: var(--spacing);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }
  .pb-14 {
    padding-bottom: calc(var(--spacing) * 14);
  }
  .pb-16 {
    padding-bottom: calc(var(--spacing) * 16);
  }
  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }
  .pb-24 {
    padding-bottom: calc(var(--spacing) * 24);
  }
  .pb-s4 {
    padding-bottom: var(--spacing-s4);
  }
  .pb-s5 {
    padding-bottom: var(--spacing-s5);
  }
  .pb-s6 {
    padding-bottom: var(--spacing-s6);
  }
  .pb-s7 {
    padding-bottom: var(--spacing-s7);
  }
  .pb-s8 {
    padding-bottom: var(--spacing-s8);
  }
  .pb-s9 {
    padding-bottom: var(--spacing-s9);
  }
  .pl-0 {
    padding-left: 0px;
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .align-middle {
    vertical-align: middle;
  }
  .font-display {
    font-family: var(--font-display);
  }
  .font-mono {
    font-family: var(--font-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-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-\[0\.75em\] {
    font-size: 0.75em;
  }
  .text-\[0\.625rem\] {
    font-size: 0.625rem;
  }
  .text-\[0\.6875rem\] {
    font-size: 0.6875rem;
  }
  .text-\[0\.8125rem\] {
    font-size: 0.8125rem;
  }
  .text-\[1\.25rem\] {
    font-size: 1.25rem;
  }
  .text-\[1\.375rem\] {
    font-size: 1.375rem;
  }
  .text-\[8\.5px\] {
    font-size: 8.5px;
  }
  .text-\[8px\] {
    font-size: 8px;
  }
  .text-\[9px\] {
    font-size: 9px;
  }
  .text-\[11px\] {
    font-size: 11px;
  }
  .text-\[clamp\(1\.1rem\,2vw\,1\.65rem\)\] {
    font-size: clamp(1.1rem, 2vw, 1.65rem);
  }
  .text-\[clamp\(1\.5rem\,3vw\,2\.5rem\)\] {
    font-size: clamp(1.5rem, 3vw, 2.5rem);
  }
  .text-\[clamp\(1\.75rem\,3\.2vw\,2\.75rem\)\] {
    font-size: clamp(1.75rem, 3.2vw, 2.75rem);
  }
  .text-\[clamp\(1\.75rem\,3\.5vw\,2\.5rem\)\] {
    font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  }
  .text-\[clamp\(1\.75rem\,3\.5vw\,2\.75rem\)\] {
    font-size: clamp(1.75rem, 3.5vw, 2.75rem);
  }
  .text-\[clamp\(1\.75rem\,4vw\,2\.75rem\)\] {
    font-size: clamp(1.75rem, 4vw, 2.75rem);
  }
  .text-\[clamp\(1\.75rem\,7vw\,2\.75rem\)\] {
    font-size: clamp(1.75rem, 7vw, 2.75rem);
  }
  .text-\[clamp\(1\.85rem\,3\.5vw\,3rem\)\] {
    font-size: clamp(1.85rem, 3.5vw, 3rem);
  }
  .text-\[clamp\(2\.5rem\,5\.5vw\,3\.25rem\)\] {
    font-size: clamp(2.5rem, 5.5vw, 3.25rem);
  }
  .text-\[clamp\(2\.5rem\,6\.5vw\,4\.75rem\)\] {
    font-size: clamp(2.5rem, 6.5vw, 4.75rem);
  }
  .text-\[clamp\(2\.5rem\,6vw\,4\.5rem\)\] {
    font-size: clamp(2.5rem, 6vw, 4.5rem);
  }
  .text-\[clamp\(2\.25rem\,5\.5vw\,4\.25rem\)\] {
    font-size: clamp(2.25rem, 5.5vw, 4.25rem);
  }
  .text-\[clamp\(2\.25rem\,5vw\,3\.25rem\)\] {
    font-size: clamp(2.25rem, 5vw, 3.25rem);
  }
  .text-\[clamp\(2\.25rem\,5vw\,3rem\)\] {
    font-size: clamp(2.25rem, 5vw, 3rem);
  }
  .text-\[clamp\(2rem\,4\.5vw\,3\.25rem\)\] {
    font-size: clamp(2rem, 4.5vw, 3.25rem);
  }
  .text-\[clamp\(2rem\,4vw\,3\.25rem\)\] {
    font-size: clamp(2rem, 4vw, 3.25rem);
  }
  .text-\[clamp\(2rem\,5vw\,3\.5rem\)\] {
    font-size: clamp(2rem, 5vw, 3.5rem);
  }
  .text-\[clamp\(4rem\,12vw\,8rem\)\] {
    font-size: clamp(4rem, 12vw, 8rem);
  }
  .text-\[clamp\(5rem\,16vw\,11rem\)\] {
    font-size: clamp(5rem, 16vw, 11rem);
  }
  .leading-\[0\.85\] {
    --tw-leading: 0.85;
    line-height: 0.85;
  }
  .leading-\[0\.95\] {
    --tw-leading: 0.95;
    line-height: 0.95;
  }
  .leading-\[0\.96\] {
    --tw-leading: 0.96;
    line-height: 0.96;
  }
  .leading-\[0\.98\] {
    --tw-leading: 0.98;
    line-height: 0.98;
  }
  .leading-\[1\.02\] {
    --tw-leading: 1.02;
    line-height: 1.02;
  }
  .leading-\[1\.05\] {
    --tw-leading: 1.05;
    line-height: 1.05;
  }
  .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-black {
    --tw-font-weight: var(--font-weight-black);
    font-weight: var(--font-weight-black);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }
  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\[0\.2em\] {
    --tw-tracking: 0.2em;
    letter-spacing: 0.2em;
  }
  .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-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .text-balance {
    text-wrap: balance;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .\!text-canopy {
    color: var(--color-canopy) !important;
  }
  .text-accent {
    color: var(--color-accent);
  }
  .text-amber {
    color: var(--color-amber);
  }
  .text-amber-deep {
    color: var(--color-amber-deep);
  }
  .text-amber\/90 {
    color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-amber) 90%, transparent);
    }
  }
  .text-canopy {
    color: var(--color-canopy);
  }
  .text-clay-ink {
    color: var(--color-clay-ink);
  }
  .text-emerald-400 {
    color: var(--color-emerald-400);
  }
  .text-faint {
    color: var(--color-faint);
  }
  .text-fern {
    color: var(--color-fern);
  }
  .text-ink {
    color: var(--color-ink);
  }
  .text-ink\/70 {
    color: var(--color-ink);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-ink) 70%, transparent);
    }
  }
  .text-ink\/75 {
    color: var(--color-ink);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-ink) 75%, transparent);
    }
  }
  .text-leaf-ink {
    color: var(--color-leaf-ink);
  }
  .text-line {
    color: var(--color-line);
  }
  .text-mist-ink {
    color: var(--color-mist-ink);
  }
  .text-muted {
    color: var(--color-muted);
  }
  .text-on-dark {
    color: var(--color-on-dark);
  }
  .text-on-dark-muted {
    color: var(--color-on-dark-muted);
  }
  .text-rose-400 {
    color: var(--color-rose-400);
  }
  .text-sand-ink {
    color: var(--color-sand-ink);
  }
  .text-transparent {
    color: transparent;
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/25 {
    color: color-mix(in srgb, #fff 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 25%, transparent);
    }
  }
  .text-white\/30 {
    color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .text-white\/50 {
    color: color-mix(in srgb, #fff 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 50%, transparent);
    }
  }
  .text-white\/60 {
    color: color-mix(in srgb, #fff 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }
  .text-white\/70 {
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .text-white\/75 {
    color: color-mix(in srgb, #fff 75%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 75%, transparent);
    }
  }
  .text-white\/80 {
    color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .text-white\/90 {
    color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .not-italic {
    font-style: normal;
  }
  .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,);
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-line {
    text-decoration-color: var(--color-line);
  }
  .decoration-white\/40 {
    text-decoration-color: color-mix(in srgb, #fff 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      text-decoration-color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .underline-offset-\[3px\] {
    text-underline-offset: 3px;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-15 {
    opacity: 15%;
  }
  .opacity-60 {
    opacity: 60%;
  }
  .opacity-70 {
    opacity: 70%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-85 {
    opacity: 85%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[0_0_35px_rgba\(242\,193\,78\,0\.22\)\] {
    --tw-shadow: 0 0 35px var(--tw-shadow-color, rgba(242,193,78,0.22));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-inner {
    --tw-shadow: inset 0 2px 4px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    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, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    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, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    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, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xs {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    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);
  }
  .ring-4 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + 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);
  }
  .shadow-amber\/20 {
    --tw-shadow-color: var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-amber) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .ring-paper {
    --tw-ring-color: var(--color-paper);
  }
  .blur-2xl {
    --tw-blur: blur(var(--blur-2xl));
    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,);
  }
  .blur-3xl {
    --tw-blur: blur(var(--blur-3xl));
    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,);
  }
  .blur-sm {
    --tw-blur: blur(var(--blur-sm));
    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,);
  }
  .brightness-0 {
    --tw-brightness: brightness(0%);
    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,);
  }
  .drop-shadow-\[0_20px_35px_rgba\(0\,0\,0\,0\.6\)\] {
    --tw-drop-shadow-size: drop-shadow(0 20px 35px var(--tw-drop-shadow-color, rgba(0,0,0,0.6)));
    --tw-drop-shadow: var(--tw-drop-shadow-size);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .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-md {
    --tw-backdrop-blur: blur(var(--blur-md));
    -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,);
  }
  .backdrop-filter {
    -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-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .duration-700 {
    --tw-duration: 700ms;
    transition-duration: 700ms;
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .group-open\:rotate-45:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 45deg;
  }
  .group-open\:rotate-180:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 180deg;
  }
  .group-open\:border-ink:is(:where(.group):is([open], :popover-open, :open) *) {
    border-color: var(--color-ink);
  }
  .group-open\:bg-ink:is(:where(.group):is([open], :popover-open, :open) *) {
    background-color: var(--color-ink);
  }
  .group-open\:text-paper:is(:where(.group):is([open], :popover-open, :open) *) {
    color: var(--color-paper);
  }
  .group-focus-within\:bg-amber:is(:where(.group):focus-within *) {
    background-color: var(--color-amber);
  }
  .group-focus-within\:text-canopy:is(:where(.group):focus-within *) {
    color: var(--color-canopy);
  }
  @media (hover: hover) {
    .group-hover\:translate-x-0\.5:is(:where(.group):hover *) {
      --tw-translate-x: calc(var(--spacing) * 0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:translate-x-1:is(:where(.group):hover *) {
      --tw-translate-x: var(--spacing);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:-translate-y-0\.5:is(:where(.group):hover *) {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:-translate-y-1:is(:where(.group):hover *) {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\:scale-105:is(:where(.group):hover *) {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    .group-hover\:scale-108:is(:where(.group):hover *) {
      --tw-scale-x: 108%;
      --tw-scale-y: 108%;
      --tw-scale-z: 108%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    .group-hover\:rotate-90:is(:where(.group):hover *) {
      rotate: 90deg;
    }
    .group-hover\:border-accent:is(:where(.group):hover *) {
      border-color: var(--color-accent);
    }
    .group-hover\:border-amber:is(:where(.group):hover *) {
      border-color: var(--color-amber);
    }
    .group-hover\:bg-amber:is(:where(.group):hover *) {
      background-color: var(--color-amber);
    }
    .group-hover\:bg-amber\/20:is(:where(.group):hover *) {
      background-color: var(--color-amber);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-amber\/20:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-amber) 20%, transparent);
      }
    }
    .group-hover\:bg-black\/10:is(:where(.group):hover *) {
      background-color: color-mix(in srgb, #000 10%, transparent);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-black\/10:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
      }
    }
    .group-hover\:text-accent:is(:where(.group):hover *) {
      color: var(--color-accent);
    }
    .group-hover\:text-amber:is(:where(.group):hover *) {
      color: var(--color-amber);
    }
    .group-hover\:text-canopy:is(:where(.group):hover *) {
      color: var(--color-canopy);
    }
    .group-hover\:text-fern:is(:where(.group):hover *) {
      color: var(--color-fern);
    }
    .group-hover\:underline:is(:where(.group):hover *) {
      text-decoration-line: underline;
    }
    .group-hover\:opacity-40:is(:where(.group):hover *) {
      opacity: 40%;
    }
    .group-hover\:opacity-60:is(:where(.group):hover *) {
      opacity: 60%;
    }
    .group-hover\:opacity-90:is(:where(.group):hover *) {
      opacity: 90%;
    }
    .group-hover\:opacity-95:is(:where(.group):hover *) {
      opacity: 95%;
    }
    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 100%;
    }
    .group-hover\/btn\:translate-x-1:is(:where(.group\/btn):hover *) {
      --tw-translate-x: var(--spacing);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-hover\/card\:bg-white:is(:where(.group\/card):hover *) {
      background-color: var(--color-white);
    }
    .group-hover\/card\:text-canopy:is(:where(.group\/card):hover *) {
      color: var(--color-canopy);
    }
  }
  .group-has-\[\#bill-yearly\:checked\]\:block:is(:where(.group):has(:is(#bill-yearly:checked)) *) {
    display: block;
  }
  .group-has-\[\#bill-yearly\:checked\]\:hidden:is(:where(.group):has(:is(#bill-yearly:checked)) *) {
    display: none;
  }
  .group-has-\[\#bill-yearly\:checked\]\:inline:is(:where(.group):has(:is(#bill-yearly:checked)) *) {
    display: inline;
  }
  .group-has-\[\#bill-yearly\:checked\]\:inline-flex:is(:where(.group):has(:is(#bill-yearly:checked)) *) {
    display: inline-flex;
  }
  .group-has-\[\#bill-yearly\:checked\]\:bg-canopy\/25:is(:where(.group):has(:is(#bill-yearly:checked)) *) {
    background-color: var(--color-canopy);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-canopy) 25%, transparent);
    }
  }
  .group-has-\[\#bill-yearly\:checked\]\:text-canopy:is(:where(.group):has(:is(#bill-yearly:checked)) *) {
    color: var(--color-canopy);
  }
  .placeholder\:font-normal::placeholder {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .placeholder\:text-muted\/40::placeholder {
    color: var(--color-muted);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-muted) 40%, transparent);
    }
  }
  .placeholder\:text-white\/40::placeholder {
    color: color-mix(in srgb, #fff 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }
  .last\:border-b-0:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .open\:border-ink\/70:is([open], :popover-open, :open) {
    border-color: var(--color-ink);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-ink) 70%, transparent);
    }
  }
  .open\:shadow-md:is([open], :popover-open, :open) {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-within\:border-amber:focus-within {
    border-color: var(--color-amber);
  }
  .focus-within\:shadow-\[0_0_30px_rgba\(242\,193\,78\,0\.2\)\]:focus-within {
    --tw-shadow: 0 0 30px var(--tw-shadow-color, rgba(242,193,78,0.2));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-within\:outline:focus-within {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .focus-within\:outline-2:focus-within {
    outline-style: var(--tw-outline-style);
    outline-width: 2px;
  }
  .focus-within\:outline-offset-\[2px\]:focus-within {
    outline-offset: 2px;
  }
  .focus-within\:outline-amber:focus-within {
    outline-color: var(--color-amber);
  }
  @media (hover: hover) {
    .hover\:translate-x-1:hover {
      --tw-translate-x: var(--spacing);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .hover\:-translate-y-1:hover {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .hover\:-translate-y-2:hover {
      --tw-translate-y: calc(var(--spacing) * -2);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .hover\:scale-105:hover {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    .hover\:scale-\[1\.02\]:hover {
      scale: 1.02;
    }
    .hover\:\!border-ink:hover {
      border-color: var(--color-ink) !important;
    }
    .hover\:border-amber:hover {
      border-color: var(--color-amber);
    }
    .hover\:border-amber\/30:hover {
      border-color: var(--color-amber);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-amber\/30:hover {
        border-color: color-mix(in oklab, var(--color-amber) 30%, transparent);
      }
    }
    .hover\:border-amber\/40:hover {
      border-color: var(--color-amber);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-amber\/40:hover {
        border-color: color-mix(in oklab, var(--color-amber) 40%, transparent);
      }
    }
    .hover\:border-amber\/50:hover {
      border-color: var(--color-amber);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-amber\/50:hover {
        border-color: color-mix(in oklab, var(--color-amber) 50%, transparent);
      }
    }
    .hover\:border-ink:hover {
      border-color: var(--color-ink);
    }
    .hover\:border-muted\/40:hover {
      border-color: var(--color-muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-muted\/40:hover {
        border-color: color-mix(in oklab, var(--color-muted) 40%, transparent);
      }
    }
    .hover\:border-white:hover {
      border-color: var(--color-white);
    }
    .hover\:border-white\/30:hover {
      border-color: color-mix(in srgb, #fff 30%, transparent);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-white\/30:hover {
        border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
      }
    }
    .hover\:bg-amber:hover {
      background-color: var(--color-amber);
    }
    .hover\:bg-amber-deep:hover {
      background-color: var(--color-amber-deep);
    }
    .hover\:bg-ink:hover {
      background-color: var(--color-ink);
    }
    .hover\:bg-raised:hover {
      background-color: var(--color-raised);
    }
    .hover\:bg-surface:hover {
      background-color: var(--color-surface);
    }
    .hover\:bg-white:hover {
      background-color: var(--color-white);
    }
    .hover\:bg-white\/\[0\.08\]:hover {
      background-color: color-mix(in srgb, #fff 8%, transparent);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/\[0\.08\]:hover {
        background-color: color-mix(in oklab, var(--color-white) 8%, transparent);
      }
    }
    .hover\:text-accent:hover {
      color: var(--color-accent);
    }
    .hover\:text-amber:hover {
      color: var(--color-amber);
    }
    .hover\:text-canopy:hover {
      color: var(--color-canopy);
    }
    .hover\:text-fern:hover {
      color: var(--color-fern);
    }
    .hover\:text-ink:hover {
      color: var(--color-ink);
    }
    .hover\:text-on-dark:hover {
      color: var(--color-on-dark);
    }
    .hover\:text-paper:hover {
      color: var(--color-paper);
    }
    .hover\:text-white:hover {
      color: var(--color-white);
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
    .hover\:decoration-accent:hover {
      text-decoration-color: var(--color-accent);
    }
    .hover\:decoration-amber:hover {
      text-decoration-color: var(--color-amber);
    }
    .hover\:shadow-2xl:hover {
      --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .hover\:shadow-\[0_0_45px_rgba\(242\,193\,78\,0\.35\)\]:hover {
      --tw-shadow: 0 0 45px var(--tw-shadow-color, rgba(242,193,78,0.35));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .hover\:shadow-lg:hover {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .hover\:shadow-md:hover {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .hover\:shadow-xl:hover {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    .hover\:shadow-amber\/30:hover {
      --tw-shadow-color: var(--color-amber);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:shadow-amber\/30:hover {
        --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-amber) 30%, transparent) var(--tw-shadow-alpha), transparent);
      }
    }
  }
  .focus\:border-amber:focus {
    border-color: var(--color-amber);
  }
  .focus\:ring-1:focus {
    --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);
  }
  .focus\:ring-amber:focus {
    --tw-ring-color: var(--color-amber);
  }
  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  .has-\[\:checked\]\:bg-amber:has(:is(:checked)) {
    background-color: var(--color-amber);
  }
  .has-\[\:checked\]\:font-bold:has(:is(:checked)) {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .has-\[\:checked\]\:text-canopy:has(:is(:checked)) {
    color: var(--color-canopy);
  }
  .has-\[\:checked\]\:shadow-md:has(:is(:checked)) {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  @media (width >= 40rem) {
    .sm\:top-4 {
      top: calc(var(--spacing) * 4);
    }
    .sm\:-right-5 {
      right: calc(var(--spacing) * -5);
    }
    .sm\:-right-8 {
      right: calc(var(--spacing) * -8);
    }
    .sm\:col-span-1 {
      grid-column: span 1 / span 1;
    }
    .sm\:col-span-2 {
      grid-column: span 2 / span 2;
    }
    .sm\:col-span-3 {
      grid-column: span 3 / span 3;
    }
    .sm\:col-span-5 {
      grid-column: span 5 / span 5;
    }
    .sm\:col-span-7 {
      grid-column: span 7 / span 7;
    }
    .sm\:col-span-9 {
      grid-column: span 9 / span 9;
    }
    .sm\:col-span-12 {
      grid-column: span 12 / span 12;
    }
    .sm\:my-8 {
      margin-block: calc(var(--spacing) * 8);
    }
    .sm\:-mt-20 {
      margin-top: calc(var(--spacing) * -20);
    }
    .sm\:mt-5 {
      margin-top: calc(var(--spacing) * 5);
    }
    .sm\:mb-16 {
      margin-bottom: calc(var(--spacing) * 16);
    }
    .sm\:ml-8 {
      margin-left: calc(var(--spacing) * 8);
    }
    .sm\:block {
      display: block;
    }
    .sm\:flex {
      display: flex;
    }
    .sm\:inline-flex {
      display: inline-flex;
    }
    .sm\:aspect-\[3\/4\] {
      aspect-ratio: 3/4;
    }
    .sm\:aspect-\[4\/3\] {
      aspect-ratio: 4/3;
    }
    .sm\:aspect-\[16\/9\] {
      aspect-ratio: 16/9;
    }
    .sm\:aspect-\[16\/10\] {
      aspect-ratio: 16/10;
    }
    .sm\:h-6 {
      height: calc(var(--spacing) * 6);
    }
    .sm\:h-11 {
      height: calc(var(--spacing) * 11);
    }
    .sm\:h-12 {
      height: calc(var(--spacing) * 12);
    }
    .sm\:min-h-\[540px\] {
      min-height: 540px;
    }
    .sm\:w-6 {
      width: calc(var(--spacing) * 6);
    }
    .sm\:w-11 {
      width: calc(var(--spacing) * 11);
    }
    .sm\:w-12 {
      width: calc(var(--spacing) * 12);
    }
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .sm\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .sm\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
    .sm\:grid-cols-\[140px_1fr\] {
      grid-template-columns: 140px 1fr;
    }
    .sm\:flex-row {
      flex-direction: row;
    }
    .sm\:items-center {
      align-items: center;
    }
    .sm\:items-end {
      align-items: flex-end;
    }
    .sm\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }
    .sm\:gap-6 {
      gap: calc(var(--spacing) * 6);
    }
    .sm\:gap-8 {
      gap: calc(var(--spacing) * 8);
    }
    .sm\:rounded-3xl {
      border-radius: var(--radius-3xl);
    }
    .sm\:border-r {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }
    .sm\:border-b-0 {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 0px;
    }
    .sm\:p-3 {
      padding: calc(var(--spacing) * 3);
    }
    .sm\:p-4 {
      padding: calc(var(--spacing) * 4);
    }
    .sm\:p-7 {
      padding: calc(var(--spacing) * 7);
    }
    .sm\:p-8 {
      padding: calc(var(--spacing) * 8);
    }
    .sm\:p-9 {
      padding: calc(var(--spacing) * 9);
    }
    .sm\:p-10 {
      padding: calc(var(--spacing) * 10);
    }
    .sm\:p-s7 {
      padding: var(--spacing-s7);
    }
    .sm\:px-4 {
      padding-inline: calc(var(--spacing) * 4);
    }
    .sm\:px-s6 {
      padding-inline: var(--spacing-s6);
    }
    .sm\:py-3 {
      padding-block: calc(var(--spacing) * 3);
    }
    .sm\:py-24 {
      padding-block: calc(var(--spacing) * 24);
    }
    .sm\:pt-14 {
      padding-top: calc(var(--spacing) * 14);
    }
    .sm\:pr-s6 {
      padding-right: var(--spacing-s6);
    }
    .sm\:pb-16 {
      padding-bottom: calc(var(--spacing) * 16);
    }
    .sm\:pl-\[2\.75rem\] {
      padding-left: 2.75rem;
    }
    .sm\:pl-s6 {
      padding-left: var(--spacing-s6);
    }
    .sm\:text-right {
      text-align: right;
    }
    .sm\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
    .sm\:text-3xl {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
    .sm\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
    .sm\:text-base {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
    .sm\:text-lg {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
    .sm\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    .sm\:text-xl {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  @media (width >= 48rem) {
    .md\:col-span-4 {
      grid-column: span 4 / span 4;
    }
    .md\:col-span-8 {
      grid-column: span 8 / span 8;
    }
    .md\:inline-flex {
      display: inline-flex;
    }
    .md\:aspect-\[21\/9\] {
      aspect-ratio: 21/9;
    }
    .md\:scale-105 {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .md\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .md\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
    .md\:items-center {
      align-items: center;
    }
    .md\:gap-s6 {
      gap: var(--spacing-s6);
    }
    .md\:p-s7 {
      padding: var(--spacing-s7);
    }
    .md\:pt-1 {
      padding-top: var(--spacing);
    }
    .md\:text-right {
      text-align: right;
    }
    .md\:text-3xl {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  @media (width >= 64rem) {
    .lg\:sticky {
      position: sticky;
    }
    .lg\:top-28 {
      top: calc(var(--spacing) * 28);
    }
    .lg\:order-1 {
      order: 1;
    }
    .lg\:order-2 {
      order: 2;
    }
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }
    .lg\:col-span-3 {
      grid-column: span 3 / span 3;
    }
    .lg\:col-span-4 {
      grid-column: span 4 / span 4;
    }
    .lg\:col-span-5 {
      grid-column: span 5 / span 5;
    }
    .lg\:col-span-6 {
      grid-column: span 6 / span 6;
    }
    .lg\:col-span-7 {
      grid-column: span 7 / span 7;
    }
    .lg\:col-span-8 {
      grid-column: span 8 / span 8;
    }
    .lg\:col-span-9 {
      grid-column: span 9 / span 9;
    }
    .lg\:col-span-12 {
      grid-column: span 12 / span 12;
    }
    .lg\:col-start-5 {
      grid-column-start: 5;
    }
    .lg\:col-start-7 {
      grid-column-start: 7;
    }
    .lg\:col-start-8 {
      grid-column-start: 8;
    }
    .lg\:col-start-9 {
      grid-column-start: 9;
    }
    .lg\:col-start-10 {
      grid-column-start: 10;
    }
    .lg\:row-span-2 {
      grid-row: span 2 / span 2;
    }
    .lg\:-mt-2 {
      margin-top: calc(var(--spacing) * -2);
    }
    .lg\:mt-0 {
      margin-top: 0px;
    }
    .lg\:mb-\[-8px\] {
      margin-bottom: -8px;
    }
    .lg\:ml-auto {
      margin-left: auto;
    }
    .lg\:ml-s8 {
      margin-left: var(--spacing-s8);
    }
    .lg\:block {
      display: block;
    }
    .lg\:flex {
      display: flex;
    }
    .lg\:grid {
      display: grid;
    }
    .lg\:aspect-\[4\/5\] {
      aspect-ratio: 4/5;
    }
    .lg\:aspect-\[16\/8\] {
      aspect-ratio: 16/8;
    }
    .lg\:aspect-auto {
      aspect-ratio: auto;
    }
    .lg\:min-h-\[32rem\] {
      min-height: 32rem;
    }
    .lg\:min-h-\[calc\(100vh-73px\)\] {
      min-height: calc(100vh - 73px);
    }
    .lg\:max-w-none {
      max-width: none;
    }
    .lg\:flex-1 {
      flex: 1;
    }
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .lg\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .lg\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
    .lg\:flex-col {
      flex-direction: column;
    }
    .lg\:items-center {
      align-items: center;
    }
    .lg\:items-end {
      align-items: flex-end;
    }
    .lg\:items-start {
      align-items: flex-start;
    }
    .lg\:justify-end {
      justify-content: flex-end;
    }
    .lg\:gap-12 {
      gap: calc(var(--spacing) * 12);
    }
    .lg\:gap-14 {
      gap: calc(var(--spacing) * 14);
    }
    .lg\:border-l {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }
    .lg\:border-ink\/15 {
      border-color: var(--color-ink);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .lg\:border-ink\/15 {
        border-color: color-mix(in oklab, var(--color-ink) 15%, transparent);
      }
    }
    .lg\:border-line {
      border-color: var(--color-line);
    }
    .lg\:p-10 {
      padding: calc(var(--spacing) * 10);
    }
    .lg\:p-12 {
      padding: calc(var(--spacing) * 12);
    }
    .lg\:p-14 {
      padding: calc(var(--spacing) * 14);
    }
    .lg\:px-s9 {
      padding-inline: var(--spacing-s9);
    }
    .lg\:py-s9 {
      padding-block: var(--spacing-s9);
    }
    .lg\:pt-s9 {
      padding-top: var(--spacing-s9);
    }
    .lg\:pb-s9 {
      padding-bottom: var(--spacing-s9);
    }
    .lg\:pl-4 {
      padding-left: calc(var(--spacing) * 4);
    }
    .lg\:pl-6 {
      padding-left: calc(var(--spacing) * 6);
    }
    .lg\:pl-s5 {
      padding-left: var(--spacing-s5);
    }
    .lg\:pl-s7 {
      padding-left: var(--spacing-s7);
    }
    .lg\:text-left {
      text-align: left;
    }
    .lg\:text-right {
      text-align: right;
    }
  }
  @media (width >= 80rem) {
    .xl\:col-span-3 {
      grid-column: span 3 / span 3;
    }
    .xl\:col-span-9 {
      grid-column: span 9 / span 9;
    }
    .xl\:block {
      display: block;
    }
    .xl\:grid-cols-6 {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .dark\:block:where(.dark, .dark *) {
    display: block;
  }
  .dark\:hidden:where(.dark, .dark *) {
    display: none;
  }
  .dark\:border-white\/10:where(.dark, .dark *) {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .dark\:bg-black\/70:where(.dark, .dark *) {
    background-color: color-mix(in srgb, #000 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 70%, transparent);
    }
  }
  .dark\:bg-canopy:where(.dark, .dark *) {
    background-color: var(--color-canopy);
  }
  .dark\:text-amber:where(.dark, .dark *) {
    color: var(--color-amber);
  }
  .\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker {
    display: none;
  }
}
@layer base {
  :root {
    --paper: #F7F5EE;
    --surface: #EFECE3;
    --raised: #FFFFFF;
    --ink: #1E2420;
    --muted: #56645B;
    --faint: #84948A;
    --line: #DFDAD0;
    --accent: var(--ghost-accent-color, #F2C14E);
    --accent-soft: var(--accent);
    @supports (color: color-mix(in lab, red, red)) {
      --accent-soft: color-mix(in oklab, var(--accent) 18%, #F7F5EE);
    }
    --accent-ink: #1A1405;
    --amber: var(--accent);
    --amber-deep: var(--amber);
    @supports (color: color-mix(in lab, red, red)) {
      --amber-deep: color-mix(in oklab, var(--amber) 85%, #8B6514);
    }
    --fern: #6F8F54;
    --canopy: #173D2D;
    --canopy-deep: #0F2A1E;
    --moss: #1E4A37;
    --slate-band: #173D2D;
    --on-dark: #F7F5EE;
    --on-dark-muted: #A3B8AD;
    --mist: #E8EFE3;
    --mist-ink: #3B5428;
    --sand: #F7F5EE;
    --sand-ink: #4F5E54;
    --leaf: #E2ECE0;
    --leaf-ink: #3D572B;
    --clay: #FDF4E2;
    --clay-ink: #6E531B;
    --pastel-sage: #E2ECE0;
    --pastel-peach: #FDF4E2;
    --pastel-lavender: #E4EAE2;
    --pastel-sky: #E1EBE8;
    --pastel-mint: #DFECE5;
    --pastel-rose: #FAECE4;
    --container: 1280px;
    --container-wide: 1400px;
    --gutter: clamp(1.25rem, 4vw, 4rem);
    --measure: 68ch;
    --dur-fast: 0.16s;
    --dur: 0.32s;
    --dur-slow: 0.6s;
  }
  .dark {
    --paper: #0F2018;
    --surface: #173226;
    --raised: #1D3D30;
    --ink: #F7F5EE;
    --muted: #A3B8AD;
    --faint: #6E877A;
    --line: #244636;
    --accent: var(--ghost-accent-color, #F2C14E);
    --accent-soft: var(--accent);
    @supports (color: color-mix(in lab, red, red)) {
      --accent-soft: color-mix(in oklab, var(--accent) 22%, #173226);
    }
    --accent-ink: #1A1405;
    --amber: var(--accent);
    --amber-deep: var(--amber);
    @supports (color: color-mix(in lab, red, red)) {
      --amber-deep: color-mix(in oklab, var(--amber) 75%, #FFFFFF);
    }
    --fern: #8BB06C;
    --canopy: #0A1711;
    --canopy-deep: #060E0A;
    --moss: #13271E;
    --slate-band: #0F2018;
    --on-dark: #F7F5EE;
    --on-dark-muted: #A3B8AD;
    --mist: color-mix(in oklab, #6F8F54 18%, #173226);
    --mist-ink: #C6E0B0;
    --sand: color-mix(in oklab, #F7F5EE 12%, #13271E);
    --sand-ink: #ECE8DD;
    --leaf: color-mix(in oklab, #6F8F54 22%, #173226);
    --leaf-ink: #C6E0B0;
    --clay: color-mix(in oklab, #F2C14E 15%, #1D3428);
    --clay-ink: #F8E3B2;
    --pastel-sage: color-mix(in oklab, #6F8F54 24%, #13271E);
    --pastel-peach: color-mix(in oklab, #F2C14E 20%, #173226);
    --pastel-lavender: color-mix(in oklab, #8BB06C 20%, #13271E);
    --pastel-sky: color-mix(in oklab, #6F8F54 22%, #173226);
    --pastel-mint: color-mix(in oklab, #6F8F54 26%, #13271E);
    --pastel-rose: color-mix(in oklab, #F2C14E 22%, #1D3428);
  }
  * {
    border-color: var(--line);
  }
  html {
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
    overflow-x: clip;
  }
  body {
    background: var(--paper);
    color: var(--ink);
    font-family: var(--font-sans);
    font-size: clamp(0.9375rem, 0.25vw + 0.9rem, 1.0625rem);
    line-height: 1.65;
    overflow-x: clip;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    transition: background-color var(--dur) var(--ease-studio), color var(--dur) var(--ease-studio);
  }
  h1, h2, h3, h4 {
    font-family: var(--font-display);
    font-weight: 700;
    color: inherit;
    text-wrap: balance;
    letter-spacing: -0.02em;
  }
  a {
    color: inherit;
    text-decoration: none;
  }
  img, svg, video {
    max-width: 100%;
    display: block;
  }
  input, select, textarea, button {
    font: inherit;
    color: inherit;
  }
  :focus-visible {
    outline: 2px solid var(--color-fern);
    outline-offset: 3px;
    border-radius: 2px;
  }
  ::selection {
    background: var(--color-amber);
    color: var(--accent-ink);
  }
  @media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
    *, ::before, ::after {
      transition-duration: 0.001ms !important;
      animation-duration: 0.001ms !important;
      animation-iteration-count: 1 !important;
    }
  }
}
@layer components {
  .shell {
    width: 100%;
    max-width: var(--container);
    padding-inline: var(--gutter);
    margin-inline: auto;
  }
  .shell-wide {
    width: 100%;
    max-width: var(--container-wide);
    padding-inline: var(--gutter);
    margin-inline: auto;
  }
  .prose-measure {
    max-width: var(--measure);
  }
  .section {
    padding-block: clamp(3rem, 7vw, 7rem);
  }
  .section-tight {
    padding-block: clamp(2rem, 4vw, 3.5rem);
  }
  .label {
    font-family: var(--font-sans);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--muted);
    line-height: 1.4;
  }
  .label-accent {
    color: var(--color-fern);
  }
  .on-canopy .label-accent {
    color: var(--color-amber);
  }
  .label-mark::before {
    content: "";
    display: inline-block;
    width: 0.5em;
    height: 0.5em;
    margin-right: 0.6em;
    border-radius: 1px;
    background: var(--color-amber);
    vertical-align: middle;
  }
  .badge, .chip {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    background: var(--accent-soft);
    color: var(--color-fern);
    border: 1px solid var(--color-amber);
    @supports (color: color-mix(in lab, red, red)) {
      border: 1px solid color-mix(in oklab, var(--color-amber) 45%, transparent);
    }
    transition: all var(--dur) var(--ease-studio);
  }
  .badge-solid, .chip-solid {
    background: var(--color-amber);
    color: var(--accent-ink);
    border-color: var(--color-amber);
  }
  .badge-outline, .chip-outline {
    background: transparent;
    color: var(--ink);
    border: 1px solid var(--line);
  }
  .badge:hover, .chip:hover {
    border-color: var(--color-amber);
  }
  .display-xl {
    font-family: var(--font-display);
    font-weight: 800;
    font-size: clamp(3rem, 11vw, 9rem);
    line-height: 0.86;
    letter-spacing: -0.04em;
    text-transform: uppercase;
  }
  .hero-display {
    font-family: var(--font-display);
    font-weight: 800;
    font-size: clamp(3.25rem, 13vw, 9rem);
    line-height: 0.84;
    letter-spacing: -0.045em;
    text-transform: uppercase;
    text-wrap: balance;
  }
  .hero-sub {
    font-family: var(--font-display);
    font-weight: 300;
    font-size: clamp(1.5rem, 4vw, 3rem);
    line-height: 1.05;
    letter-spacing: 0.01em;
    text-transform: uppercase;
  }
  .display-lg {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(2rem, 5vw, 3.5rem);
    line-height: 1.04;
    letter-spacing: -0.03em;
  }
  .h2, .section-heading {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(1.75rem, 3.5vw, 2.5rem);
    line-height: 1.15;
    letter-spacing: -0.025em;
  }
  .h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: clamp(1.125rem, 2vw, 1.5rem);
    line-height: 1.2;
    letter-spacing: -0.015em;
  }
  .lede {
    font-size: clamp(0.9375rem, 0.4vw + 0.85rem, 1.0625rem);
    line-height: 1.7;
    color: var(--muted);
  }
  .small {
    font-size: 0.875rem;
    color: var(--muted);
    line-height: 1.55;
  }
  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.8rem 1.6rem;
    border: 1px solid var(--line);
    border-radius: 0.6rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--ink);
    background: transparent;
    cursor: pointer;
    transition: background-color var(--dur) var(--ease-studio), color var(--dur) var(--ease-studio), border-color var(--dur) var(--ease-studio), transform var(--dur-fast) var(--ease-studio);
  }
  .btn:hover {
    background: var(--ink);
    color: var(--paper);
    border-color: var(--ink);
  }
  .btn:active {
    transform: translateY(1px);
  }
  .btn-gold, .btn-solid {
    background: var(--color-amber);
    border-color: var(--color-amber);
    color: var(--accent-ink);
  }
  .btn-gold:hover, .btn-solid:hover {
    background: var(--color-amber-deep);
    border-color: var(--color-amber-deep);
    color: var(--accent-ink);
  }
  .btn-dark {
    background: var(--color-canopy);
    border-color: var(--color-canopy);
    color: var(--color-on-dark);
  }
  .btn-dark:hover {
    background: var(--color-moss);
    border-color: var(--color-moss);
  }
  .btn-sm {
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
  }
  .btn-lg {
    padding: 0.95rem 1.7rem;
    font-size: 0.875rem;
  }
  .btn-pill {
    border-radius: 999px;
  }
  .on-canopy .btn, .on-forest .btn {
    border-color: var(--color-on-dark);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-on-dark) 35%, transparent);
    }
    color: var(--color-on-dark);
  }
  .on-canopy .btn:hover, .on-forest .btn:hover {
    background: var(--color-on-dark);
    color: var(--color-canopy);
    border-color: var(--color-on-dark);
  }
  .on-canopy .btn-gold, .on-forest .btn-gold, .on-canopy .btn-solid, .on-forest .btn-solid {
    background: var(--color-amber);
    border-color: var(--color-amber);
    color: var(--accent-ink);
  }
  .on-canopy .btn-gold:hover, .on-forest .btn-gold:hover {
    background: var(--color-amber-deep);
    border-color: var(--color-amber-deep);
    color: var(--accent-ink);
  }
  .icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--ink);
    background: transparent;
    cursor: pointer;
    transition: border-color var(--dur) var(--ease-studio), background-color var(--dur) var(--ease-studio), color var(--dur) var(--ease-studio);
  }
  .icon-btn:hover {
    border-color: var(--ink);
    background: var(--ink);
    color: var(--paper);
  }
  .on-canopy .icon-btn, .on-forest .icon-btn {
    border-color: var(--color-on-dark);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-on-dark) 28%, transparent);
    }
    color: var(--color-on-dark);
  }
  .on-canopy .icon-btn:hover, .on-forest .icon-btn:hover {
    background: var(--color-amber);
    color: var(--accent-ink);
    border-color: var(--color-amber);
  }
  .play-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 999px;
    background: #ffffff;
    color: var(--color-canopy);
    box-shadow: 0 10px 30px -12px rgb(0 0 0 / 0.6);
    transition: transform var(--dur) var(--ease-studio), background-color var(--dur) var(--ease-studio);
  }
  .play-btn:hover {
    transform: scale(1.08);
    background: var(--color-amber);
  }
  .arrow-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ink);
  }
  .arrow-link svg {
    transition: transform var(--dur) var(--ease-studio);
  }
  .arrow-link:hover {
    color: var(--color-fern);
  }
  .arrow-link:hover svg {
    transform: translateX(4px);
  }
  .on-canopy .arrow-link {
    color: var(--color-on-dark);
  }
  .on-canopy .arrow-link:hover {
    color: var(--color-amber);
  }
  .hero-under-header {
    margin-top: calc(var(--header-h, 4.5rem) * -1);
    padding-top: var(--header-h, 4.5rem);
  }
  .site-header--over {
    background: transparent;
    border-bottom: 1px solid color-mix(in oklab, #fff 12%, transparent);
    color: var(--color-on-dark);
    transition: background-color var(--dur) var(--ease-studio), border-color var(--dur) var(--ease-studio), color var(--dur) var(--ease-studio);
  }
  .site-header--over .nav-link {
    color: var(--color-on-dark-muted);
  }
  .site-header--over .nav-link:hover, .site-header--over .nav-current > .nav-link {
    color: var(--color-on-dark);
  }
  .site-header--over .icon-btn {
    border-color: var(--color-on-dark);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-on-dark) 28%, transparent);
    }
    color: var(--color-on-dark);
  }
  .site-header--over .icon-btn:hover {
    background: var(--color-amber);
    border-color: var(--color-amber);
    color: var(--accent-ink);
  }
  .site-header--over .site-logo {
    color: var(--color-on-dark);
  }
  .site-header--over .site-logo-img {
    filter: brightness(0) invert(1);
  }
  .site-header--over.is-solid {
    background: var(--paper);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in oklab, var(--paper) 92%, transparent);
    }
    backdrop-filter: blur(8px);
    border-bottom-color: var(--line);
    color: var(--ink);
  }
  .site-header--over.is-solid .nav-link {
    color: var(--muted);
  }
  .site-header--over.is-solid .nav-link:hover, .site-header--over.is-solid .nav-current > .nav-link {
    color: var(--ink);
  }
  .site-header--over.is-solid .icon-btn {
    border-color: var(--line);
    color: var(--ink);
  }
  .site-header--over.is-solid .icon-btn:hover {
    background: var(--ink);
    color: var(--paper);
    border-color: var(--ink);
  }
  .site-header--over.is-solid .site-logo {
    color: var(--ink);
  }
  .site-header--over.is-solid .site-logo-img {
    filter: none;
  }
  .dark .site-header--over.is-solid .site-logo-img {
    filter: brightness(0) invert(1);
  }
  .nav-link {
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--muted);
    transition: color var(--dur) var(--ease-studio);
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
  }
  .nav-link:hover {
    color: var(--ink);
  }
  .nav-current > .nav-link {
    color: var(--ink);
  }
  .on-canopy .nav-link, .on-forest .nav-link {
    color: var(--color-on-dark-muted);
  }
  .on-canopy .nav-link:hover, .on-canopy .nav-current > .nav-link, .on-forest .nav-link:hover, .on-forest .nav-current > .nav-link {
    color: var(--color-on-dark);
  }
  .nav-item.has-dropdown {
    position: relative;
  }
  .nav-dropdown {
    position: absolute;
    top: calc(100% + 0.75rem);
    left: 0;
    min-width: 12rem;
    padding: 0.5rem;
    background: var(--raised);
    border: 1px solid var(--line);
    border-radius: 0.75rem;
    box-shadow: 0 18px 40px -22px rgb(0 0 0 / 0.45);
    display: none;
    z-index: 60;
  }
  .has-dropdown.is-open .nav-dropdown {
    display: grid;
    gap: 0.125rem;
  }
  .nav-dropdown a {
    display: block;
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--muted);
  }
  .nav-dropdown a:hover {
    background: var(--surface);
    color: var(--ink);
  }
  .nav-dropdown-icon {
    transition: transform var(--dur) var(--ease-studio);
  }
  .has-dropdown.is-open .nav-dropdown-icon {
    transform: rotate(180deg);
  }
  .pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }
  .pill, .tab, .filter-tab {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: var(--muted);
    background: var(--paper);
    cursor: pointer;
    white-space: nowrap;
    transition: all var(--dur) var(--ease-studio);
  }
  .pill:hover, .tab:hover, .filter-tab:hover {
    border-color: var(--ink);
    color: var(--ink);
  }
  .pill[aria-current="true"], .tab.is-active, .tab[aria-selected="true"], .filter-tab.is-active, .filter-tab[aria-current="true"] {
    background: var(--color-amber);
    border-color: var(--color-amber);
    color: var(--accent-ink);
  }
  .on-canopy .pill, .on-forest .pill {
    background: transparent;
    border-color: var(--color-on-dark);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-on-dark) 24%, transparent);
    }
    color: var(--color-on-dark-muted);
  }
  .on-canopy .pill:hover, .on-forest .pill:hover {
    border-color: var(--color-on-dark);
    color: var(--color-on-dark);
  }
  .on-canopy .pill[aria-current="true"], .on-forest .pill[aria-current="true"] {
    background: var(--color-amber);
    border-color: var(--color-amber);
    color: var(--accent-ink);
  }
  .panel-canopy, .panel-forest {
    background: var(--color-canopy);
    color: var(--color-on-dark);
  }
  .panel-canopy-deep, .panel-forest-deep {
    background: var(--color-canopy-deep);
    color: var(--color-on-dark);
  }
  .panel-moss {
    background: var(--color-moss);
    color: var(--color-on-dark);
  }
  .panel-slate {
    background: var(--color-slate-band);
    color: var(--color-on-dark);
  }
  .panel-canopy h1, .panel-canopy h2, .panel-canopy h3, .panel-canopy h4, .panel-forest h1, .panel-forest h2, .panel-forest h3, .panel-forest h4, .panel-moss h1, .panel-moss h2, .panel-moss h3, .panel-moss h4, .panel-slate h1, .panel-slate h2, .panel-slate h3, .panel-slate h4, .panel-canopy-deep h1, .panel-canopy-deep h2, .panel-canopy-deep h3, .panel-canopy-deep h4 {
    color: var(--color-on-dark);
  }
  .panel-canopy .small, .panel-canopy .lede, .panel-canopy .label, .panel-forest .small, .panel-forest .lede, .panel-forest .label, .panel-moss .small, .panel-moss .lede, .panel-moss .label, .panel-slate .small, .panel-slate .lede, .panel-slate .label, .panel-canopy-deep .small, .panel-canopy-deep .lede, .panel-canopy-deep .label {
    color: var(--color-on-dark-muted);
  }
  .wash-mist {
    background: var(--color-mist);
  }
  .wash-sand {
    background: var(--color-sand);
  }
  .wash-leaf {
    background: var(--color-leaf);
  }
  .dark .wash-mist, .dark .wash-sand, .dark .wash-leaf {
    background: var(--surface);
  }
  .plate {
    border-radius: var(--radius-plate);
    overflow: hidden;
  }
  .circle-crop {
    border-radius: 999px;
    overflow: hidden;
  }
  .frame {
    overflow: hidden;
    background: var(--surface);
    position: relative;
    border-radius: var(--radius-plate);
  }
  .frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--dur-slow) var(--ease-studio);
  }
  .frame:hover img {
    transform: scale(1.05);
  }
  .frame-square {
    border-radius: 0.25rem;
  }
  .frame.circle-crop {
    border-radius: 999px;
  }
  .scrim::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to top, rgb(7 11 8 / 0.92), rgb(7 11 8 / 0.25) 55%, rgb(7 11 8 / 0.05));
    pointer-events: none;
  }
  .scrim > * {
    z-index: 2;
  }
  .scrim > img {
    position: relative;
    z-index: 0;
  }
  .scrim-soft::after {
    background: linear-gradient(to top, rgb(7 11 8 / 0.7), transparent 60%);
  }
  .dot-grid {
    background-image: radial-gradient(currentColor 1.5px, transparent 1.6px);
    background-size: 18px 18px;
    color: var(--muted);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--muted) 45%, transparent);
    }
    pointer-events: none;
  }
  .rail-vertical {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: 0.3em;
    text-transform: uppercase;
  }
  .rail-flip {
    transform: rotate(180deg);
  }
  .rail {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin-inline: calc(var(--gutter) * -1);
  }
  .rail::-webkit-scrollbar {
    display: none;
  }
  .rail > * {
    scroll-snap-align: start;
    flex: 0 0 auto;
  }
  .seal {
    animation: seal-spin 20s linear infinite;
  }
  @keyframes seal-spin {
    to {
      transform: rotate(360deg);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .seal {
      animation: none;
    }
  }
  .marquee {
    display: flex;
    overflow: hidden;
    user-select: none;
    gap: 0;
    width: 100%;
  }
  .marquee__track {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 2.5rem;
    min-width: 100%;
    padding-right: 2.5rem;
    animation: marquee-scroll 32s linear infinite;
  }
  .marquee:hover .marquee__track {
    animation-play-state: paused;
  }
  @keyframes marquee-scroll {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-50%);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .marquee {
      overflow-x: auto;
    }
    .marquee__track {
      animation: none;
    }
  }
  .logo-mark {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(1rem, 2vw, 1.5rem);
    letter-spacing: -0.02em;
    color: var(--ink);
    opacity: 0.75;
    transition: opacity var(--dur) var(--ease-studio);
  }
  .logo-mark:hover {
    opacity: 1;
  }
  .card {
    background: var(--raised);
    border: 1px solid var(--line);
    border-radius: var(--radius-plate);
    transition: border-color var(--dur) var(--ease-studio), box-shadow var(--dur) var(--ease-studio), transform var(--dur) var(--ease-studio);
  }
  .card:hover {
    border-color: var(--ink);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--ink) 20%, transparent);
    }
    box-shadow: 0 22px 44px -30px rgb(0 0 0 / 0.5);
  }
  .card-float {
    background: var(--raised);
    border-radius: var(--radius-plate);
    box-shadow: 0 24px 50px -28px rgb(0 0 0 / 0.45);
  }
  .field {
    width: 100%;
    padding: 0.85rem 1.1rem;
    border: 1px solid var(--line);
    border-radius: 0.6rem;
    background: var(--raised);
    color: var(--ink);
    font-size: 0.9375rem;
    transition: border-color var(--dur) var(--ease-studio);
  }
  .field::placeholder {
    color: var(--faint);
  }
  .field:focus {
    border-color: var(--color-fern);
    outline: none;
  }
  textarea.field {
    border-radius: 0.75rem;
  }
  .on-canopy .field, .on-forest .field {
    background: color-mix(in oklab, #fff 8%, transparent);
    border-color: var(--color-on-dark);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-on-dark) 24%, transparent);
    }
    color: var(--color-on-dark);
  }
  .on-canopy .field::placeholder, .on-forest .field::placeholder {
    color: var(--color-on-dark-muted);
  }
  .reading-progress {
    height: 2px;
    background: transparent;
    width: 100%;
  }
  .reading-progress span {
    display: block;
    height: 100%;
    width: 0;
    background: var(--color-amber);
    transition: width 0.1s linear;
  }
  .reveal {
    opacity: 0;
    transform: translateY(14px);
    transition: opacity var(--dur-slow) var(--ease-studio), transform var(--dur-slow) var(--ease-studio);
  }
  .reveal.is-in {
    opacity: 1;
    transform: none;
  }
  .no-js .reveal, html:not(.js) .reveal {
    opacity: 1;
    transform: none;
  }
  .skip {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: 100;
    padding: 0.75rem 1.25rem;
    background: var(--ink);
    color: var(--paper);
    border-radius: 0 0 0.5rem 0;
  }
  .skip:focus {
    left: 0;
  }
  .scroll-to-top {
    position: fixed;
    right: 1.5rem;
    bottom: 1.5rem;
    z-index: 40;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 999px;
    background: var(--color-amber);
    color: var(--accent-ink);
    border: 1px solid var(--color-amber);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    cursor: pointer;
    transition: opacity var(--dur) var(--ease-studio), transform var(--dur) var(--ease-studio), visibility var(--dur);
  }
  .scroll-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .scroll-to-top:hover {
    background: var(--color-amber-deep);
    border-color: var(--color-amber-deep);
  }
  .clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .masonry-slider-stage {
    position: relative;
    overflow: hidden;
    height: 680px;
    background: transparent;
    border-radius: var(--radius-plate);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 1) 12%, rgba(0, 0, 0, 1) 88%, transparent 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 1) 12%, rgba(0, 0, 0, 1) 88%, transparent 100%);
  }
  .masonry-col-track {
    display: flex;
    flex-direction: column;
    will-change: transform;
  }
  .masonry-col-group {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding-bottom: 1.25rem;
  }
  .slide-col-up {
    animation: masonry-slide-up 132s linear infinite;
  }
  .slide-col-down {
    animation: masonry-slide-down 132s linear infinite;
  }
  .masonry-slider-stage:hover .slide-col-up, .masonry-slider-stage:hover .slide-col-down {
    animation-play-state: paused;
  }
  @keyframes masonry-slide-up {
    from {
      transform: translateY(0);
    }
    to {
      transform: translateY(-50%);
    }
  }
  @keyframes masonry-slide-down {
    from {
      transform: translateY(-50%);
    }
    to {
      transform: translateY(0);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .slide-col-up, .slide-col-down {
      animation: none;
    }
  }
  @media (max-width: 639px) {
    .masonry-slider-stage {
      height: 520px;
    }
  }
  .photographer-card {
    position: relative;
    border-radius: 1.75rem;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.85) 0%, rgba(250, 246, 239, 0.6) 100%);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: 0 25px 60px -15px rgba(26, 20, 5, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.8) inset;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  }
  .dark .photographer-card {
    background: linear-gradient(145deg, rgba(20, 31, 24, 0.85) 0%, rgba(13, 21, 16, 0.7) 100%);
    box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.06) inset;
  }
  .photographer-img-wrapper {
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: 0 20px 45px -10px rgba(0, 0, 0, 0.22);
    transform: perspective(1000px) rotateY(-1deg);
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.6s cubic-bezier(0.16, 1, 0.3, 1);
  }
  .photographer-img-wrapper:hover {
    transform: perspective(1000px) rotateY(0deg) translateY(-4px);
    box-shadow: 0 30px 60px -10px rgba(0, 0, 0, 0.32);
  }
  .photographer-badge {
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.12);
  }
  .dark .photographer-badge {
    background: rgba(20, 31, 24, 0.88);
    border-color: rgba(255, 255, 255, 0.08);
    box-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.4);
  }
  .stat-pill {
    background: rgba(255, 255, 255, 0.65);
    border: 1px solid rgba(0, 0, 0, 0.06);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .dark .stat-pill {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.08);
  }
  .bracket-card-wrapper {
    position: relative;
    padding: 14px;
    display: block;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  }
  .bracket-card-wrapper:hover {
    transform: translateY(-6px);
  }
  .bracket-card-wrapper::before, .bracket-card-wrapper::after {
    content: "";
    position: absolute;
    width: 32px;
    height: 32px;
    pointer-events: none;
    transition: all 0.35s ease;
    z-index: 5;
  }
  .bracket-card-wrapper::before {
    top: 0;
    right: 0;
    border-top: 3px solid var(--color-pastel-sky);
    border-right: 3px solid var(--color-pastel-sky);
  }
  .bracket-card-wrapper::after {
    bottom: 0;
    left: 0;
    border-bottom: 3px solid var(--color-pastel-sky);
    border-left: 3px solid var(--color-pastel-sky);
  }
  .bracket-card-wrapper:hover::before {
    top: -4px;
    right: -4px;
    width: 40px;
    height: 40px;
    border-color: var(--color-amber);
  }
  .bracket-card-wrapper:hover::after {
    bottom: -4px;
    left: -4px;
    width: 40px;
    height: 40px;
    border-color: var(--color-amber);
  }
  .bracket-card {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #111;
    border-radius: 2px;
  }
  .bracket-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), filter 0.5s ease;
  }
  .bracket-card:hover img {
    transform: scale(1.08);
  }
  .bracket-card-overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 20, 0.38);
    backdrop-filter: blur(0.5px);
    transition: background 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    text-align: center;
  }
  .bracket-card:hover .bracket-card-overlay {
    background: rgba(15, 23, 20, 0.52);
  }
  .bracket-card-title {
    color: #ffffff;
    font-family: var(--font-display);
    font-size: clamp(1.15rem, 1.8vw, 1.65rem);
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.75);
    transition: transform 0.3s ease, letter-spacing 0.3s ease, color 0.3s ease;
  }
  .bracket-card:hover .bracket-card-title {
    letter-spacing: 0.26em;
    transform: scale(1.06);
    color: var(--color-amber);
  }
  .social-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 9999px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.08);
    color: #F7F5EE;
    transition: all var(--dur) var(--ease-studio);
    text-decoration: none;
    flex-shrink: 0;
  }
  .social-icon-btn svg {
    display: block;
    fill: currentColor;
    transition: transform var(--dur-fast) var(--ease-studio);
  }
  .social-icon-btn:hover {
    background: var(--accent, #F2C14E);
    border-color: var(--accent, #F2C14E);
    color: #173D2D;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px -4px rgba(242, 193, 78, 0.35);
  }
  .social-icon-btn:hover svg {
    transform: scale(1.1);
  }
  .page-hero {
    position: relative;
    overflow: hidden;
    background: var(--color-canopy);
    color: var(--color-on-dark);
    isolation: isolate;
  }
  .page-hero > .page-hero__media {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.55;
  }
  .page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient( to top, var(--color-canopy) 8%, var(--color-canopy) 48%, var(--color-canopy) 100% ), linear-gradient( to right, var(--color-canopy) 0%, transparent 62% );
    @supports (color: color-mix(in lab, red, red)) {
      background: linear-gradient( to top, var(--color-canopy) 8%, color-mix(in oklab, var(--color-canopy) 72%, transparent) 48%, color-mix(in oklab, var(--color-canopy) 38%, transparent) 100% ), linear-gradient( to right, color-mix(in oklab, var(--color-canopy) 78%, transparent) 0%, transparent 62% );
    }
    pointer-events: none;
  }
  .page-hero > *:not(.page-hero__media) {
    position: relative;
    z-index: 2;
  }
  .page-hero__ghost-word {
    position: absolute;
    right: -0.04em;
    top: -0.12em;
    z-index: 1;
    margin: 0;
    font-family: var(--font-display);
    font-weight: 900;
    font-size: clamp(5rem, 18vw, 16rem);
    line-height: 0.8;
    letter-spacing: -0.04em;
    text-transform: uppercase;
    color: var(--color-on-dark);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-on-dark) 7%, transparent);
    }
    pointer-events: none;
    user-select: none;
    white-space: nowrap;
  }
  .hero-stat {
    padding: 1rem;
    border-radius: 0.75rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
  }
  .hero-stat dt, .hero-stat .hero-stat__label {
    display: block;
    margin-top: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--color-on-dark-muted);
  }
  .hero-stat dd, .hero-stat .hero-stat__value {
    display: block;
    margin: 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 1.1;
    color: var(--color-on-dark);
  }
  .hero-stat--accent dd, .hero-stat--accent .hero-stat__value {
    color: var(--color-amber);
  }
}
.footer-nav-centered .nav-link {
  color: #fff;
  &:hover {
    color: var(--accent);
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-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: 0px;
}
@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;
}
@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-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-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;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-outline-style: solid;
    }
  }
}


/* ---- ghost/base.css ---- */
/* Shutterly — Ghost integration layer.
   Loaded after the Tailwind build, unlayered, so these rules win over the
   @layer output at equal specificity. Everything here exists because Ghost
   (editor cards, Portal, Sodo Search, members forms) emits markup the
   templates do not control. Do not delete without checking the rendered post. */

/* ---------- Brand settings from Ghost Admin ---------------------------- */
/* Ghost injects --gh-font-heading / --gh-font-body (Design → Brand → Fonts)
   and --ghost-accent-color. Shutterly's own fonts and coral accent stay as
   the fallback so an untouched install matches the preview. */
:root {
  --gh-font-heading: var(--font-display);
  --gh-font-body: var(--font-sans);
}

body { font-family: var(--gh-font-body, var(--font-sans)); }
h1, h2, h3, h4, h5, h6, .font-display { font-family: var(--gh-font-heading, var(--font-display)); }
code, kbd, pre, samp { font-family: var(--font-mono); }



/* ---------- Header ------------------------------------------------------ */
.site-logo-img { max-height: 40px; width: auto; transition: filter var(--dur) var(--ease-studio); }
@media (max-width: 640px) {
  .site-logo-img { max-height: 30px; }
}
.dark .site-logo-img { filter: invert(1); }

/* ---------- Membership Pastel Benefit Cards in Dark Mode ---------------- */
/* In light mode, the cards use light pastel backgrounds (.bg-sage, etc.) with dark text.
   In dark mode, ensure card surfaces and text use dynamic pastel tones from theme variables. */
.dark .bg-sage { background-color: var(--pastel-sage); border: 1px solid color-mix(in oklab, var(--line) 80%, transparent); }
.dark .bg-sage .label { color: var(--color-on-dark-muted); }
.dark .bg-sage .h3 { color: var(--color-on-dark); }
.dark .bg-sage .small { color: var(--color-on-dark-muted); }

.dark .bg-blush,
.dark .bg-clay { background-color: var(--pastel-rose); border: 1px solid color-mix(in oklab, var(--line) 80%, transparent); }
.dark .bg-blush .label,
.dark .bg-clay .label { color: var(--color-on-dark-muted); }
.dark .bg-blush .h3,
.dark .bg-clay .h3 { color: var(--color-on-dark); }
.dark .bg-blush .small,
.dark .bg-clay .small { color: var(--color-on-dark-muted); }

.dark .bg-vanilla,
.dark .bg-sand { background-color: var(--sand); border: 1px solid color-mix(in oklab, var(--line) 80%, transparent); }
.dark .bg-vanilla .label,
.dark .bg-sand .label { color: var(--color-on-dark-muted); }
.dark .bg-vanilla .h3,
.dark .bg-sand .h3 { color: var(--color-on-dark); }
.dark .bg-vanilla .small,
.dark .bg-sand .small { color: var(--color-on-dark-muted); }

.dark .bg-sky,
.dark .bg-mist { background-color: var(--pastel-sky); border: 1px solid color-mix(in oklab, var(--line) 80%, transparent); }
.dark .bg-sky .label,
.dark .bg-mist .label { color: var(--color-on-dark-muted); }
.dark .bg-sky .h3,
.dark .bg-mist .h3 { color: var(--color-on-dark); }
.dark .bg-sky .small,
.dark .bg-mist .small { color: var(--color-on-dark-muted); }

.dark .bg-lilac { background-color: var(--pastel-lavender); border: 1px solid color-mix(in oklab, var(--line) 80%, transparent); }
.dark .bg-lilac .label { color: var(--color-on-dark-muted); }
.dark .bg-lilac .h3 { color: var(--color-on-dark); }
.dark .bg-lilac .small { color: var(--color-on-dark-muted); }

.dark .bg-apricot,
.dark .bg-peach { background-color: var(--pastel-peach); border: 1px solid color-mix(in oklab, var(--line) 80%, transparent); }
.dark .bg-apricot .label,
.dark .bg-peach .label { color: var(--color-on-dark-muted); }
.dark .bg-apricot .h3,
.dark .bg-peach .h3 { color: var(--color-on-dark); }
.dark .bg-apricot .small,
.dark .bg-peach .small { color: var(--color-on-dark-muted); }

/* ---------- Hero Text Graphic Underline Accent (Original Brush) --------- */
.hero-highlight-brush {
  position: relative;
  display: inline-block; 
}
/* Longer brushed phrases on the inner-page mastheads have to be allowed to
   break, or they run past the viewport on a phone. The home hero keeps the
   unbroken default. */
.hero-highlight-brush--wrap {
  white-space: normal;
  display: inline;
}
.hero-highlight-brush--wrap::after { display: none; }
@media (min-width: 640px) {
  .hero-highlight-brush--wrap { display: inline-block; white-space: nowrap; }
  .hero-highlight-brush--wrap::after { display: block; }
}
.hero-highlight-brush::after {
  content: "";
  position: absolute;
  left: -2%;
  right: -2%;
  bottom: -0.16em;
  height: 0.24em;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 260 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 13C45 6.5 130 4 257 11C205 7.5 105 8.5 22 17' stroke='%23F2C14E' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  pointer-events: none;
  filter: drop-shadow(0 2px 8px color-mix(in oklab, var(--color-amber) 40%, transparent));
}

/* The drawer button is mobile-only. */
.nav-menu-btn { display: inline-flex; }
@media (min-width: 1024px) {
  .nav-menu-btn { display: none; }
}

/* ---------- Social Icon Buttons ---------- */
.social-icon-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2.5rem !important;
  height: 2.5rem !important;
  border-radius: 9999px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  background-color: rgba(255, 255, 255, 0.08) !important;
  color: #F7F5EE !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.social-icon-btn svg {
  display: block !important;
  fill: currentColor !important;
  color: inherit !important;
  transition: transform 0.2s ease !important;
}
.social-icon-btn:hover {
  background-color: var(--color-amber, #F2C14E) !important;
  border-color: var(--color-amber, #F2C14E) !important;
  color: #173D2D !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px -4px rgba(242, 193, 78, 0.4) !important;
}
.social-icon-btn:hover svg {
  transform: scale(1.1) !important;
}

/* ---------- Reading progress ------------------------------------------- */
.reading-progress {
  position: absolute;
  inset: auto 0 0 0;
  z-index: 60;
  pointer-events: none;
}

/* ---------- Pagination edges ------------------------------------------- */
.arrow-link.is-disabled { opacity: .35; pointer-events: none; }

/* ---------- Search ------------------------------------------------------ */
/* The search field is a trigger for Ghost's Sodo Search modal, not an input. */
input[data-ghost-search][readonly] { cursor: pointer; }

/* ---------- Members forms ---------------------------------------------- */
/* Ghost toggles .loading / .success / .error on the form element. */
form .form-msg { display: none; }
form.loading .msg-loading,
form.success .msg-success,
form.error .msg-error { display: block; }
form.success [data-members-email],
form.success button[type="submit"] { opacity: .5; }

/* =========================================================================
   .gh-content — the rendered post/page body. Ghost owns this markup.
   ========================================================================= */
.gh-content {
  font-size: clamp(1rem, 0.3vw + 0.95rem, 1.125rem);
  line-height: 1.75;
  color: var(--ink);
}
.gh-content > * + * { margin-top: 1.5rem; }

.gh-content p { color: var(--ink); }

.gh-content a:not(.kg-btn):not(.kg-bookmark-container) {
  color: var(--accent);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-thickness: 1px;
}
.gh-content a:not(.kg-btn):not(.kg-bookmark-container):hover { text-decoration-thickness: 2px; }

.gh-content h2 { font-size: clamp(1.5rem, 2.6vw, 2.25rem); line-height: 1.12; margin-top: 3rem; }
.gh-content h3 { font-size: clamp(1.25rem, 2vw, 1.625rem); line-height: 1.2; margin-top: 2.25rem; }
.gh-content h4 { font-size: 1.125rem; margin-top: 2rem; }
.gh-content h5, .gh-content h6 { font-family: var(--font-sans); font-size: .875rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-top: 2rem; }

.gh-content ul, .gh-content ol { padding-left: 1.25rem; }
.gh-content ul { list-style: none; padding-left: 0; }
.gh-content ul > li { position: relative; padding-left: 1.5rem; }
.gh-content ul > li::before {
  content: "✦";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--accent);
  font-size: .75em;
  line-height: 2.2;
}
.gh-content ol { list-style: decimal; }
.gh-content ol::marker { color: var(--accent); }
.gh-content li + li { margin-top: .5rem; }

.gh-content blockquote {
  border-left: 2px solid var(--accent);
  padding: .25rem 0 .25rem 1.5rem;
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2vw, 1.625rem);
  line-height: 1.35;
  color: var(--ink);
}
.gh-content blockquote.kg-blockquote-alt {
  border-left: 0;
  text-align: center;
  padding: 1rem 0;
  color: var(--muted);
}
.gh-content blockquote cite,
.gh-content blockquote footer {
  display: block;
  margin-top: .75rem;
  font-family: var(--font-sans);
  font-size: .6875rem;
  font-style: normal;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--muted);
}

.gh-content hr { margin-block: 3rem; border: 0; border-top: 1px solid var(--line); }

.gh-content figure { margin-block: 2.5rem; }
.gh-content figure img { width: 100%; border-radius: .5rem; }
.gh-content figcaption,
.gh-content .kg-card figcaption {
  margin-top: .75rem;
  font-size: .75rem;
  letter-spacing: .04em;
  color: var(--muted);
  text-align: center;
}
.gh-content figcaption a { color: var(--accent); }

.gh-content code {
  font-size: .875em;
  padding: .15em .4em;
  border-radius: .25rem;
  background: var(--surface);
  border: 1px solid var(--line);
}
.gh-content pre {
  padding: 1.25rem 1.5rem;
  border-radius: .75rem;
  background: var(--color-forest-deep);
  color: var(--color-on-dark);
  overflow-x: auto;
  font-size: .875rem;
  line-height: 1.6;
}
.gh-content pre code { background: none; border: 0; padding: 0; color: inherit; }

.gh-content table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
.gh-content th, .gh-content td { padding: .75rem 1rem; border-bottom: 1px solid var(--line); text-align: left; }
.gh-content th { font-family: var(--font-sans); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }

/* ---------- Kg card widths --------------------------------------------- */
.gh-content .kg-width-wide {
  width: 100vw;
  max-width: min(1200px, 92vw);
  margin-inline: auto;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.gh-content .kg-width-full {
  width: 100vw;
  max-width: 100vw;
  margin-inline: 0;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.gh-content .kg-width-full img { border-radius: 0; }
.gh-content .kg-width-full figcaption { max-width: 60ch; margin-inline: auto; padding-inline: 1.5rem; }

/* ---------- Galleries --------------------------------------------------- */
.gh-content .kg-gallery-container { display: flex; flex-direction: column; gap: .75rem; }
.gh-content .kg-gallery-row { display: flex; gap: .75rem; }
.gh-content .kg-gallery-image { flex: 1 1 0; }
.gh-content .kg-gallery-image img { width: 100%; height: 100%; object-fit: cover; border-radius: .5rem; }

/* ---------- Bookmark card ---------------------------------------------- */
.gh-content .kg-bookmark-container {
  display: flex;
  border: 1px solid var(--line);
  border-radius: .75rem;
  overflow: hidden;
  background: var(--raised);
  text-decoration: none;
  transition: border-color var(--dur) var(--ease-studio);
}
.gh-content .kg-bookmark-container:hover { border-color: var(--ink); }
.gh-content .kg-bookmark-content { flex: 1 1 auto; padding: 1.25rem 1.5rem; min-width: 0; }
.gh-content .kg-bookmark-title { font-family: var(--font-display); font-size: 1.0625rem; color: var(--ink); }
.gh-content .kg-bookmark-description { margin-top: .5rem; font-size: .875rem; color: var(--muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gh-content .kg-bookmark-metadata { margin-top: .75rem; display: flex; align-items: center; gap: .5rem; font-size: .75rem; color: var(--muted); }
.gh-content .kg-bookmark-icon { width: 1.125rem; height: 1.125rem; border-radius: .25rem; }
.gh-content .kg-bookmark-thumbnail { flex: 0 0 34%; }
.gh-content .kg-bookmark-thumbnail img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
@media (max-width: 640px) {
  .gh-content .kg-bookmark-container { flex-direction: column-reverse; }
  .gh-content .kg-bookmark-thumbnail { flex: 0 0 auto; aspect-ratio: 16/9; }
}

/* ---------- Embed / video / audio / file cards -------------------------- */
.gh-content .kg-embed-card { display: flex; flex-direction: column; align-items: center; }
.gh-content .kg-embed-card iframe { max-width: 100%; border-radius: .5rem; }
.gh-content .kg-video-card video { width: 100%; border-radius: .5rem; }
.gh-content .kg-audio-card { border: 1px solid var(--line); border-radius: .75rem; padding: 1rem; background: var(--raised); }
.gh-content .kg-audio-card audio { width: 100%; }
.gh-content .kg-file-card a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border: 1px solid var(--line);
  border-radius: .75rem;
  background: var(--raised);
}
.gh-content .kg-file-card a:hover { border-color: var(--ink); }
.gh-content .kg-file-title { font-weight: 500; color: var(--ink); }
.gh-content .kg-file-caption, .gh-content .kg-file-metadata { font-size: .75rem; color: var(--muted); }

/* ---------- Callout / toggle / header cards ----------------------------- */
.gh-content .kg-callout-card {
  display: flex;
  gap: .875rem;
  padding: 1.25rem 1.5rem;
  border-radius: .75rem;
  background: var(--accent-soft);
  border: 1px solid var(--line);
}
.gh-content .kg-callout-emoji { flex: 0 0 auto; }
.gh-content .kg-callout-text { color: var(--ink); }

.gh-content .kg-toggle-card { border: 1px solid var(--line); border-radius: .75rem; padding: 1.25rem 1.5rem; }
.gh-content .kg-toggle-card + .kg-toggle-card { margin-top: .75rem; }
.gh-content .kg-toggle-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; }
.gh-content .kg-toggle-heading h4 { margin: 0; font-size: 1.0625rem; }
.gh-content .kg-toggle-card-icon { width: 1.25rem; height: 1.25rem; transition: transform var(--dur) var(--ease-studio); }
.gh-content .kg-toggle-card[data-kg-toggle-state="close"] .kg-toggle-content { display: none; }
.gh-content .kg-toggle-card[data-kg-toggle-state="open"] .kg-toggle-card-icon { transform: rotate(180deg); }
.gh-content .kg-toggle-content { margin-top: 1rem; }

.gh-content .kg-header-card { padding: clamp(2rem, 6vw, 4rem) 1.5rem; text-align: center; border-radius: .75rem; background: var(--surface); }
.gh-content .kg-header-card h2 { margin-top: 0; }

/* ---------- Product / button / NFT cards -------------------------------- */
.gh-content .kg-product-card-container { border: 1px solid var(--line); border-radius: .75rem; padding: 1.5rem; background: var(--raised); }
.gh-content .kg-button-card { display: flex; justify-content: center; }
.gh-content .kg-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .75rem 1.75rem;
  border: 1px solid var(--accent);
  border-radius: 999px;
  color: var(--accent);
  font-size: .75rem;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color var(--dur) var(--ease-studio), color var(--dur) var(--ease-studio);
}
.gh-content .kg-btn-accent { background: var(--accent); color: #fff; }
.gh-content .kg-btn:hover { background: var(--accent); color: #fff; }
.gh-content .kg-btn-accent:hover { background: transparent; color: var(--accent); }

/* ---------- Comments ---------------------------------------------------- */
.post-comments { color: var(--ink); }


/* ---- ghost/utilities.css ---- */
/* Shutterly — the few rules Tailwind cannot express cleanly.
   Each one is here because it depends on markup Ghost emits, on a scroll
   container, or on a layered composition that would need a dozen arbitrary
   utilities to say the same thing. Keep this file small. */

/* ---- Collage stacking ---------------------------------------------------
   The hero and gallery collages overlap plates on a shared grid. Tailwind
   places them; this keeps a hovered plate above its neighbours without
   hard-coding a z-index per plate in the template. */
.collage > * { position: relative; }
.collage > *:hover { z-index: 20; }

/* ---- Horizontal snap rails ---------------------------------------------
   Project rails scroll by touch and keyboard; the scrollbar is hidden
   because the rail already shows its own progress dots. */
.rail {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
.rail:active,
.rail.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
}
.rail::-webkit-scrollbar { display: none; }
.rail > * { scroll-snap-align: start; flex: 0 0 auto; }

/* ---- Vertical label ------------------------------------------------------
   Rotated side labels on the project index and single-project rails. */
.label-vertical {
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

/* ---- Film-strip ruler ---------------------------------------------------
   The measuring-tape rule under the product feature in the reference. */
.ruler {
  height: 1.75rem;
  background-image: repeating-linear-gradient(
    to right,
    currentColor 0 1px,
    transparent 1px 8px
  );
  mask-image: linear-gradient(to right, transparent, #000 15%, #000 85%, transparent);
  opacity: .35;
}

/* ---- Line clamp helpers used by cards ---------------------------------- */
.clamp-2, .clamp-3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.clamp-2 { -webkit-line-clamp: 2; }
.clamp-3 { -webkit-line-clamp: 3; }

/* ---- Membership billing toggle ------------------------------------------
   Styling driven by a sibling checkbox state inside the tier card group. */
.group:has(#bill-yearly:checked) .group-has-\[\#bill-yearly\:checked\]\:inline-flex { display: inline-flex; }
.group:has(#bill-yearly:checked) .group-has-\[\#bill-yearly\:checked\]\:hidden { display: none; }

