@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-space-x-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-outline-style: solid;
            --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-content: "";
            --tw-animation-delay: 0s;
            --tw-animation-direction: normal;
            --tw-animation-duration: initial;
            --tw-animation-fill-mode: none;
            --tw-animation-iteration-count: 1;
            --tw-enter-blur: 0;
            --tw-enter-opacity: 1;
            --tw-enter-rotate: 0;
            --tw-enter-scale: 1;
            --tw-enter-translate-x: 0;
            --tw-enter-translate-y: 0;
            --tw-exit-blur: 0;
            --tw-exit-opacity: 1;
            --tw-exit-rotate: 0;
            --tw-exit-scale: 1;
            --tw-exit-translate-x: 0;
            --tw-exit-translate-y: 0;
        }
    }
}
@layer theme {
    :root {
        --font-serif: "Instrument Serif", Georgia, serif;
        --font-mono:
            "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco,
            Consolas, "Liberation Mono", "Courier New", monospace;
        --color-black: oklch(14% 0.006 80);
        --spacing: 0.25rem;
        --container-sm: 24rem;
        --container-md: 28rem;
        --container-lg: 32rem;
        --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: 1.5;
        --text-lg: 1.125rem;
        --text-lg--line-height: calc(1.75 / 1.125);
        --font-weight-normal: 400;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --tracking-tight: -0.025em;
        --tracking-wide: 0.025em;
        --tracking-widest: 0.1em;
        --leading-relaxed: 1.625;
        --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
        --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        --blur-md: 12px;
        --aspect-video: 16 / 9;
        --default-transition-duration: 0.15s;
        --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        --default-font-family:
            "Barlow Condensed", "Arial Narrow", Arial, sans-serif;
        --default-mono-font-family: var(--font-mono);
        --font-condensed: "Barlow Condensed", "Arial Narrow", Arial, sans-serif;
        --color-border: var(--border);
    }
}
@layer base {
    *,
    :after,
    :before,
    ::backdrop {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0;
    }
    ::file-selector-button {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0;
    }
    html {
        -webkit-text-size-adjust: 100%;
        tab-size: 4;
        line-height: 1.5;
        font-family: var(
            --default-font-family,
            ui-sans-serif,
            system-ui,
            sans-serif,
            "Apple Color Emoji",
            "Segoe UI Emoji",
            "Segoe UI Symbol",
            "Noto Color Emoji"
        );
        font-feature-settings: var(--default-font-feature-settings, normal);
        font-variation-settings: var(--default-font-variation-settings, normal);
        -webkit-tap-highlight-color: transparent;
    }
    h1,
    h2,
    h3,
    h4 {
        font-size: inherit;
        font-weight: inherit;
    }
    a {
        color: inherit;
        -webkit-text-decoration: inherit;
        text-decoration: inherit;
    }

    strong {
        font-weight: bolder;
    }
    small {
        font-size: 80%;
    }
    ol,
    ul,
    menu {
        list-style: none;
    }
    img,
    svg {
        display: block;
    }
    img {
        max-width: 100%;
        height: auto;
    }
    button,
    input,
    textarea {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0;
    }
    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0;
    }
    ::file-selector-button {
        margin-inline-end: 4px;
    }
    ::placeholder {
        opacity: 1;
    }
    @supports (not ((-webkit-appearance: -apple-pay-button))) or
        (contain-intrinsic-size: 1px) {
        ::placeholder {
            color: currentColor;
        }
        @supports (color: color-mix(in lab, red, red)) {
            ::placeholder {
                color: color-mix(in oklab, currentcolor 50%, transparent);
            }
        }
    }
    textarea {
        resize: vertical;
    }
    ::-webkit-search-decoration {
        -webkit-appearance: none;
    }
    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit;
    }
    ::-webkit-datetime-edit {
        display: inline-flex;
    }
    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0;
    }
    ::-webkit-datetime-edit {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-year-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-month-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-day-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-hour-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-minute-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-second-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-millisecond-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0;
    }
    ::-webkit-calendar-picker-indicator {
        line-height: 1;
    }
    button,
    input:where([type="button"], [type="submit"]) {
        appearance: button;
    }
    ::file-selector-button {
        appearance: button;
    }
    ::-webkit-inner-spin-button {
        height: auto;
    }
    ::-webkit-outer-spin-button {
        height: auto;
    }
}
@layer components;
@layer utilities {
    .pointer-events-none {
        pointer-events: none;
    }
    .invisible {
        visibility: hidden;
    }
    .visible {
        visibility: visible;
    }
    .absolute {
        position: absolute;
    }
    .fixed {
        position: fixed;
    }
    .relative {
        position: relative;
    }
    .sticky {
        position: sticky;
    }
    .inset-x-0 {
        inset-inline: calc(var(--spacing) * 0);
    }
    .end {
        inset-inline-end: var(--spacing);
    }
    .top-0 {
        top: calc(var(--spacing) * 0);
    }
    .top-6 {
        top: calc(var(--spacing) * 6);
    }
    .top-32 {
        top: calc(var(--spacing) * 32);
    }
    .top-full {
        top: 100%;
    }
    .bottom-0 {
        bottom: calc(var(--spacing) * 0);
    }
    .z-10 {
        z-index: 10;
    }
    .z-50 {
        z-index: 50;
    }
    .col-span-2 {
        grid-column: span 2 / span 2;
    }
    .col-span-12 {
        grid-column: span 12 / span 12;
    }
    .col-start-3 {
        grid-column-start: 3;
    }
    .mx-auto {
        margin-inline: auto;
    }
    .mt-1 {
        margin-top: calc(var(--spacing) * 1);
    }
    .mt-2 {
        margin-top: calc(var(--spacing) * 2);
    }
    .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-8 {
        margin-top: calc(var(--spacing) * 8);
    }
    .mt-10 {
        margin-top: calc(var(--spacing) * 10);
    }
    .mt-12 {
        margin-top: calc(var(--spacing) * 12);
    }
    .mt-14 {
        margin-top: calc(var(--spacing) * 14);
    }
    .mt-16 {
        margin-top: calc(var(--spacing) * 16);
    }
    .mt-20 {
        margin-top: calc(var(--spacing) * 20);
    }
    .mt-24 {
        margin-top: calc(var(--spacing) * 24);
    }
    .mt-auto {
        margin-top: auto;
    }
    .mb-1 {
        margin-bottom: calc(var(--spacing) * 1);
    }
    .mb-6 {
        margin-bottom: calc(var(--spacing) * 6);
    }
    .mb-8 {
        margin-bottom: calc(var(--spacing) * 8);
    }
    .block {
        display: block;
    }
    .flex {
        display: flex;
    }
    .grid {
        display: grid;
    }
    .hidden {
        display: none;
    }
    .inline-block {
        display: inline-block;
    }
    .inline-flex {
        display: inline-flex;
    }
    .inline-grid {
        display: inline-grid;
    }
    .size-2 {
        width: calc(var(--spacing) * 2);
        height: calc(var(--spacing) * 2);
    }
    .size-3 {
        width: calc(var(--spacing) * 3);
        height: calc(var(--spacing) * 3);
    }
    .h-5 {
        height: calc(var(--spacing) * 5);
    }
    .h-11 {
        height: calc(var(--spacing) * 11);
    }
    .h-12 {
        height: calc(var(--spacing) * 12);
    }
    .h-full {
        height: 100%;
    }
    .min-h-10 {
        min-height: calc(var(--spacing) * 10);
    }
    .w-11 {
        width: calc(var(--spacing) * 11);
    }
    .w-12 {
        width: calc(var(--spacing) * 12);
    }
    .w-fit {
        width: fit-content;
    }
    .w-full {
        width: 100%;
    }
    .max-w-md {
        max-width: var(--container-md);
    }
    .max-w-sm {
        max-width: var(--container-sm);
    }
    .shrink-0 {
        flex-shrink: 0;
    }
    .-translate-x-1 {
        --tw-translate-x: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .-translate-y-1 {
        --tw-translate-y: calc(var(--spacing) * -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);
    }
    .grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .flex-col {
        flex-direction: column;
    }
    .flex-row {
        flex-direction: row;
    }
    .flex-wrap {
        flex-wrap: wrap;
    }
    .place-items-center {
        place-items: center;
    }
    .items-baseline {
        align-items: baseline;
    }
    .items-center {
        align-items: center;
    }
    .items-end {
        align-items: flex-end;
    }
    .items-start {
        align-items: flex-start;
    }
    .justify-between {
        justify-content: space-between;
    }
    .justify-center {
        justify-content: center;
    }
    .gap-0 {
        gap: calc(var(--spacing) * 0);
    }
    .gap-1 {
        gap: calc(var(--spacing) * 1);
    }
    .gap-2 {
        gap: calc(var(--spacing) * 2);
    }
    .gap-3 {
        gap: calc(var(--spacing) * 3);
    }
    .gap-4 {
        gap: calc(var(--spacing) * 4);
    }
    .gap-5 {
        gap: calc(var(--spacing) * 5);
    }
    .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-12 {
        gap: calc(var(--spacing) * 12);
    }
    .gap-16 {
        gap: calc(var(--spacing) * 16);
    }
    :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))
        );
    }
    .gap-x-6 {
        column-gap: calc(var(--spacing) * 6);
    }
    .gap-x-8 {
        column-gap: calc(var(--spacing) * 8);
    }
    .gap-x-10 {
        column-gap: calc(var(--spacing) * 10);
    }
    .gap-y-2 {
        row-gap: calc(var(--spacing) * 2);
    }
    .gap-y-6 {
        row-gap: calc(var(--spacing) * 6);
    }
    .gap-y-14 {
        row-gap: calc(var(--spacing) * 14);
    }
    :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-rule > :not(:last-child)) {
        border-color: var(--rule);
    }
    .justify-self-end {
        justify-self: flex-end;
    }
    .overflow-hidden {
        overflow: hidden;
    }
    .rounded-full {
        border-radius: 3.40282e38px;
    }
    .border {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }
    .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-r {
        border-right-style: var(--tw-border-style);
        border-right-width: 1px;
    }
    .border-b {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
    }
    .border-l {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }
    .border-ink {
        border-color: var(--ink);
    }
    .border-rule {
        border-color: var(--rule);
    }
    .bg-ink {
        background-color: var(--ink);
    }
    .bg-paper {
        background-color: var(--paper);
    }
    .bg-soft {
        background-color: var(--soft);
    }
    .bg-yellow {
        background-color: var(--yellow);
    }
    .object-cover {
        object-fit: cover;
    }
    .p-6 {
        padding: calc(var(--spacing) * 6);
    }
    .p-8 {
        padding: calc(var(--spacing) * 8);
    }
    .p-10 {
        padding: calc(var(--spacing) * 10);
    }
    .px-4 {
        padding-inline: calc(var(--spacing) * 4);
    }
    .px-6 {
        padding-inline: calc(var(--spacing) * 6);
    }
    .px-8 {
        padding-inline: calc(var(--spacing) * 8);
    }
    .py-2 {
        padding-block: calc(var(--spacing) * 2);
    }
    .py-3 {
        padding-block: calc(var(--spacing) * 3);
    }
    .py-4 {
        padding-block: calc(var(--spacing) * 4);
    }
    .py-5 {
        padding-block: calc(var(--spacing) * 5);
    }
    .py-6 {
        padding-block: calc(var(--spacing) * 6);
    }
    .py-10 {
        padding-block: calc(var(--spacing) * 10);
    }
    .py-14 {
        padding-block: calc(var(--spacing) * 14);
    }
    .py-20 {
        padding-block: calc(var(--spacing) * 20);
    }
    .py-24 {
        padding-block: calc(var(--spacing) * 24);
    }
    .py-28 {
        padding-block: calc(var(--spacing) * 28);
    }
    .py-32 {
        padding-block: calc(var(--spacing) * 32);
    }
    .py-40 {
        padding-block: calc(var(--spacing) * 40);
    }
    .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-24 {
        padding-top: calc(var(--spacing) * 24);
    }
    .pt-32 {
        padding-top: calc(var(--spacing) * 32);
    }
    .pb-2 {
        padding-bottom: calc(var(--spacing) * 2);
    }
    .pb-3 {
        padding-bottom: calc(var(--spacing) * 3);
    }
    .pb-12 {
        padding-bottom: calc(var(--spacing) * 12);
    }
    .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-32 {
        padding-bottom: calc(var(--spacing) * 32);
    }
    .pl-8 {
        padding-left: calc(var(--spacing) * 8);
    }
    .text-center {
        text-align: center;
    }
    .text-left {
        text-align: left;
    }
    .font-condensed {
        font-family:
            Barlow Condensed,
            Arial Narrow,
            Arial,
            sans-serif;
    }
    .font-serif {
        font-family:
            Instrument Serif,
            Georgia,
            serif;
    }
    .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-tight {
        --tw-tracking: var(--tracking-tight);
        letter-spacing: var(--tracking-tight);
    }
    .tracking-wide {
        --tw-tracking: var(--tracking-wide);
        letter-spacing: var(--tracking-wide);
    }
    .whitespace-nowrap {
        white-space: nowrap;
    }
    .text-ink {
        color: var(--ink);
    }
    .text-soft {
        color: var(--soft);
    }
    .text-yellow {
        color: var(--yellow);
    }
    .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-offset-4 {
        text-underline-offset: 4px;
    }
    .opacity-0 {
        opacity: 0;
    }
    .opacity-50 {
        opacity: 0.5;
    }
    .opacity-60 {
        opacity: 0.6;
    }
    .opacity-70 {
        opacity: 0.7;
    }
    .opacity-80 {
        opacity: 0.8;
    }
    .opacity-85 {
        opacity: 0.85;
    }
    .opacity-90 {
        opacity: 0.9;
    }
    .opacity-95 {
        opacity: 0.95;
    }
    .opacity-100 {
        opacity: 1;
    }
    .outline {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
    }
    .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,);
    }
    .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-150 {
        --tw-duration: 0.15s;
        transition-duration: 0.15s;
    }
    .duration-200 {
        --tw-duration: 0.2s;
        transition-duration: 0.2s;
    }
    .duration-300 {
        --tw-duration: 0.3s;
        transition-duration: 0.3s;
    }
    .outline-none {
        --tw-outline-style: none;
        outline-style: none;
    }
}
@property --tw-animation-delay {
    syntax: "*";
    inherits: false;
    initial-value: 0s;
}
@property --tw-animation-direction {
    syntax: "*";
    inherits: false;
    initial-value: normal;
}
@property --tw-animation-duration {
    syntax: "*";
    inherits: false;
}
@property --tw-animation-fill-mode {
    syntax: "*";
    inherits: false;
    initial-value: none;
}
@property --tw-animation-iteration-count {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-enter-blur {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-enter-opacity {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-enter-rotate {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-enter-scale {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-enter-translate-x {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-enter-translate-y {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-exit-blur {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-exit-opacity {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-exit-rotate {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-exit-scale {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-exit-translate-x {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-exit-translate-y {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@font-face {
    font-family: JetBrains Mono;
    src: url(../fonts/jetbrains/variable.ttf) format("truetype");
    font-weight: 100 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Barlow Condensed;
    src: url(../fonts/barlow/Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Barlow Condensed;
    src: url(../fonts/barlow/Medium.ttf) format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Barlow Condensed;
    src: url(../fonts/barlow/SemiBold.ttf) format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Instrument Serif;
    src: url(../fonts/instrument/Regular.ttf) format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: Instrument Serif;
    src: url(../fonts/instrument/Italic.ttf) format("truetype");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
:root {
    --radius: 0.5rem;
    --ink: oklch(14% 0.006 80);
    --paper: oklch(99.2% 0.003 80);
    --soft: oklch(98.7% 0.002 80);
    --yellow: oklch(0.933 0.1973 104.32);
    --box-shadow-gray: oklch(0.9562 0.007 39.46);
    --rule: oklch(14% 0.006 80 / 0.18);
    --max: 1600px;
    --gutter: clamp(1.25rem, 3.7vw, 4rem);
    --header-offset: 96px;
    --section-padding-block: clamp(4rem, 5.5vw, 5.5rem);
    --nav-padding-block: 1.5rem;
    --nav-link-padding-block: 0.75rem;
    --type-label: 0.875rem;
    --type-label-sm: 0.8125rem;
    --type-nav: 1.25rem;
    --type-nav-sm: 1.125rem;
    --type-body-sm: clamp(1.0625rem, 1.15vw, 1.1875rem);
    --type-body: clamp(1.125rem, 1.3vw, 1.25rem);
    --type-body-lg: clamp(1.25rem, 1.6vw, 1.5rem);
    --type-component-title: 1.5rem;
    --type-component-title-lg: 1.75rem;
    --type-card-title: clamp(1.75rem, 3vw, 2.75rem);
    --type-card-title-lg: clamp(2.25rem, 3.6vw, 3.5rem);
    --type-section-title: clamp(2.25rem, 4vw, 3.75rem);
    --type-display-lg: clamp(3.5rem, 5.4vw, 6.5rem);
    --background: var(--paper);
    --foreground: var(--ink);
    --card: var(--paper);
    --card-foreground: var(--ink);
    --popover: var(--paper);
    --popover-foreground: var(--ink);
    --primary: var(--ink);
    --primary-foreground: var(--paper);
    --secondary: var(--soft);
    --secondary-foreground: var(--ink);
    --muted: var(--soft);
    --muted-foreground: oklch(42% 0.006 80);
    --accent: var(--yellow);
    --accent-foreground: var(--ink);
    --destructive: oklch(55% 0.22 25);
    --destructive-foreground: var(--paper);
    --border: var(--rule);
    --input: var(--rule);
    --ring: var(--ink);
    font-synthesis: none;
}
* {
    box-sizing: border-box;
}
*,
:before,
:after {
    border-color: var(--rule);
}
html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricprecision;
}
body {
    background: var(--paper);
    color: var(--ink);
    font-family: var(--font-condensed);
    padding-top: var(--header-offset);
    margin: 0;
    font-size: 20px;
    line-height: 1.1;
}
::selection {
    background: var(--yellow);
    color: var(--ink);
}
a {
    color: inherit;
    text-decoration: none;
}
a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible {
    outline: 2px solid var(--ink);
    outline-offset: 4px;
}
img,
svg {
    max-width: 100%;
    display: block;
}
h1,
h2,
h3,
h4,
p {
    margin: 0;
}
h1,
h2,
h3 {
    font-weight: 400;
}
.font-condensed {
    font-family: var(--font-condensed);
    text-transform: uppercase;
    letter-spacing: 0.005em;
    font-weight: 400;
    line-height: 0.9;
}
.font-display {
    font-family: var(--font-serif);
    letter-spacing: -0.01em;
    font-weight: 400;
    line-height: 1.02;
}
.title-xl .condensed,
.title-xl .serif {
    font-size: clamp(4.25rem, 6.8vw, 8.5rem);
    display: block;
}
.title-lg .condensed,
.title-lg .serif {
    font-size: var(--type-section-title);
    display: block;
}
.title-xl .condensed,
.title-lg .condensed {
    font-family: var(--font-condensed);
    text-transform: uppercase;
    font-weight: 400;
    line-height: 0.88;
}
.title-xl .serif,
.title-lg .serif {
    font-family: var(--font-serif);
    font-style: italic;
    font-weight: 400;
    line-height: 1.05;
    margin-top: 0.06em;
    margin-bottom: 0.12em;
}
.shell {
    width: min(var(--max), calc(100% - var(--gutter) * 2));
    margin-inline: auto;
}
.section-grid {
    grid-template-columns: repeat(12, 1fr);
    gap: 16px;
    display: grid;
}
main
    > section:not(.hero-split):not(.cta-section):has(
        ~ section:not(.cta-section)
    ).shell:not(.section-tone--non-soft):not(
        :has(+ section.section-tone--non-soft)
    ) {
    border-bottom: 1px solid currentColor;
}

main
    > section:not(.hero-split):not(.cta-section):has(
        ~ section:not(.cta-section)
    ):not(.shell):not(.section-tone--non-soft):not(
        :has(+ section.section-tone--non-soft)
    ) {
    position: relative;
}

main
    > section:not(.hero-split):not(.cta-section):has(
        ~ section:not(.cta-section)
    ):not(.shell):not(.section-tone--non-soft):not(
        :has(+ section.section-tone--non-soft)
    )::after {
    content: "";
    position: absolute;
    right: max(var(--gutter), calc((100vw - var(--max)) / 2));
    bottom: 0;
    left: max(var(--gutter), calc((100vw - var(--max)) / 2));
    border-bottom: 1px solid currentColor;
}
.btn {
    min-height: 48px;
    font-family: var(--font-serif);
    white-space: nowrap;
    cursor: pointer;
    border-radius: 999px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 0 26px;
    font-size: 22px;
    line-height: 1;
    transition:
        transform 0.16s,
        background-color 0.2s,
        color 0.2s,
        border-color 0.2s;
    display: inline-flex;
}
.btn:hover {
    transform: translateY(-1px);
}
.btn .arrow {
    transition: transform 0.18s;
    display: inline-block;
}
.btn:hover .arrow,
.btn:focus-visible .arrow {
    transform: translate(4px);
}
.btn-primary {
    background: var(--yellow);
    color: var(--ink);
}
.btn-primary:hover {
    background: var(--yellow);
}
@supports (color: color-mix(in lab, red, red)) {
    .btn-primary:hover {
        background: color-mix(in oklab, var(--yellow) 88%, var(--ink));
    }
}
.btn-secondary {
    background: var(--paper);
    color: var(--ink);
    border: 1px solid var(--ink);
}
.btn-secondary:hover {
    background: var(--soft);
}
.btn-dark {
    background: var(--ink);
    color: var(--yellow);
}
.btn-dark:hover {
    background: var(--ink);
}
@supports (color: color-mix(in lab, red, red)) {
    .btn-dark:hover {
        background: color-mix(in oklab, var(--ink) 92%, var(--yellow));
    }
}
.motion-reveal {
    opacity: 0;
    will-change: opacity, transform;
    transition:
        opacity 0.6s cubic-bezier(0.2, 0.7, 0.2, 1),
        transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
    transform: translateY(14px);
}
@media (prefers-reduced-motion: reduce) {
    *,
    :before,
    :after {
        scroll-behavior: auto !important;
        transition-duration: 0.001ms !important;
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
    }
    .motion-reveal {
        opacity: 1;
        transform: none;
    }
}
@keyframes marquee {
    0% {
        transform: translate(0);
    }
    to {
        transform: translate(-50%);
    }
}
.marquee-track {
    gap: 3rem;
    width: max-content;
    animation: 38s linear infinite marquee;
    display: flex;
}
.marquee-mask {
    -webkit-mask-image: linear-gradient(90deg, #0000, #000 8% 92%, #0000);
    mask-image: linear-gradient(90deg, #0000, #000 8% 92%, #0000);
}
@keyframes stamp-in {
    0% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(1.6) rotate(-8deg);
    }
    60% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(0.96) rotate(-8deg);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1) rotate(-8deg);
    }
}
@keyframes scan {
    0% {
        opacity: 0;
        transform: translateY(-100%);
    }
    10% {
        opacity: 0.6;
    }
    90% {
        opacity: 0.6;
    }
    to {
        opacity: 0;
        transform: translateY(220%);
    }
}
.story-link {
    display: inline-block;
    position: relative;
}
.story-link:after {
    content: "";
    transform-origin: 100%;
    background: currentColor;
    width: 100%;
    height: 1px;
    transition: transform 0.28s cubic-bezier(0.6, 0, 0.4, 1);
    position: absolute;
    bottom: -2px;
    left: 0;
    transform: scaleX(0);
}
.story-link:hover:after,
.story-link:focus-visible:after {
    transform-origin: 0;
    transform: scaleX(1);
}

.nav-link {
    position: relative;
}

.nav-link:after {
    content: "";
    transform-origin: 100%;
    background: currentColor;
    width: 100%;
    height: 1px;
    transition: transform 0.28s cubic-bezier(0.6, 0, 0.4, 1);
    position: absolute;
    bottom: 4px;
    left: 0;
    transform: scaleX(0);
}

.nav-link:hover:after,
.nav-link:focus-visible:after,
.nav-link[aria-current="page"]:after {
    transform-origin: 0;
    transform: scaleX(1);
}

nav[aria-label="Main menu"] > .relative > div.absolute {
    left: 0;
    transform: translateY(-0.25rem);
}

nav[aria-label="Main menu"] > .relative:hover > div.absolute,
nav[aria-label="Main menu"] > .relative:focus-within > div.absolute {
    transform: translateY(0);
}

/* Static-site polish layer: restores the responsive/arbitrary utilities used by the exported pages. */
html {
    background:
        radial-gradient(
            circle at 12% 0%,
            color-mix(in oklab, var(--yellow) 28%, transparent),
            transparent 26rem
        ),
        linear-gradient(180deg, oklch(99.2% 0.003 80), oklch(98.7% 0.002 80));
}
body {
    min-height: 100dvh;
    background:
        linear-gradient(
            90deg,
            oklch(14% 0.006 80 / 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            180deg,
            oklch(14% 0.006 80 / 0.025) 1px,
            transparent 1px
        ),
        var(--paper);
    background-size:
        clamp(3rem, 7vw, 7rem) clamp(3rem, 7vw, 7rem),
        clamp(3rem, 7vw, 7rem) clamp(3rem, 7vw, 7rem),
        auto;
}
body > header {
    background: oklch(100% 0 0 / 0.82);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    isolation: isolate;
}
body > header::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: oklch(100% 0 0 / 0.82);
    -webkit-backdrop-filter: blur(var(--blur-md));
    backdrop-filter: blur(var(--blur-md));
}
[class~="bg-paper/80"] {
    background-color: oklch(99.2% 0.003 80 / 0.82);
}
[class~="bg-soft"] {
    background-color: var(--soft);
}
[class~="border-current/30"] {
    border-color: currentColor;
}
@supports (color: color-mix(in lab, red, red)) {
    [class~="border-current/30"] {
        border-color: color-mix(in oklab, currentColor 30%, transparent);
    }
}
[class~="border-soft/20"],
[class~="border-soft/30"],
[class~="border-soft/40"] {
    border-color: oklch(98.7% 0.002 80 / 0.3);
}
[class~="gap-1.5"] {
    gap: calc(var(--spacing) * 1.5);
}
[class~="size-1.5"] {
    width: calc(var(--spacing) * 1.5);
    height: calc(var(--spacing) * 1.5);
}
[class~="left-1/2"] {
    left: 50%;
}
[class~="-translate-x-1/2"] {
    --tw-translate-x: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
}
[class~="-left-[33px]"] {
    left: -33px;
}
[class~="inset-x-[-1rem]"] {
    inset-inline: -1rem;
}
[class~="top-[calc(100%+1rem)]"] {
    top: calc(100% + 1rem);
}
body > header nav[aria-label="Main menu"] > .relative > div.absolute {
    border-color: oklch(0% 0 0 / 0.16);
    background-color: oklch(98.7% 0.002 80 / 0.76);
    background-clip: padding-box;
    -webkit-backdrop-filter: blur(18px) saturate(1.08);
    backdrop-filter: blur(18px) saturate(1.08);
    box-shadow: none;
}
[class~="aspect-[3/4]"] {
    aspect-ratio: 3 / 4;
}
[class~="grid-cols-[1fr_auto_1fr]"] {
    grid-template-columns: 1fr auto 1fr;
}
[class~="grid-cols-[120px_1fr]"] {
    grid-template-columns: 120px 1fr;
}
[class~="grid-cols-[160px_1fr]"] {
    grid-template-columns: 160px 1fr;
}
[class~="grid-cols-[auto_1fr]"] {
    grid-template-columns: auto 1fr;
}
[class~="h-[clamp(22rem,40vw,40rem)]"] {
    height: clamp(22rem, 40vw, 40rem);
}
[class~="h-[clamp(28rem,52vw,56rem)]"] {
    height: clamp(28rem, 52vw, 56rem);
}
[class~="min-h-[20rem]"] {
    min-height: 20rem;
}
[class~="min-h-[22rem]"] {
    min-height: 22rem;
}
[class~="w-[24rem]"] {
    width: 24rem;
}
[class~="w-[44rem]"] {
    width: 44rem;
}
[class~="max-w-[6rem]"] {
    max-width: 6rem;
}
[class~="max-w-[18ch]"] {
    max-width: 18ch;
}
[class~="max-w-[20ch]"] {
    max-width: 20ch;
}
[class~="max-w-[36ch]"] {
    max-width: 36ch;
}
[class~="max-w-[44ch]"] {
    max-width: 44ch;
}
[class~="max-w-[50ch]"] {
    max-width: 50ch;
}
[class~="max-w-[52ch]"] {
    max-width: 52ch;
}
[class~="max-w-[55ch]"] {
    max-width: 55ch;
}
[class~="max-w-[58ch]"] {
    max-width: 58ch;
}
[class~="max-w-[60ch]"] {
    max-width: 60ch;
}
[class~="max-w-[24rem]"] {
    max-width: 24rem;
}
[class~="max-w-[480px]"] {
    max-width: 480px;
}
[class~="text-[0.6em]"] {
    font-size: 0.6em;
}
[class~="text-[0.78em]"] {
    font-size: 0.78em;
}
[class~="text-[12px]"] {
    font-size: 0.75rem;
}
[class~="text-[13px]"] {
    font-size: 0.8125rem;
}
[class~="text-[14px]"] {
    font-size: 0.875rem;
}
[class~="text-[15px]"] {
    font-size: 0.9375rem;
}
[class~="text-[16px]"] {
    font-size: 1rem;
}
[class~="text-[17px]"] {
    font-size: 1.0625rem;
}
[class~="text-[18px]"] {
    font-size: 1.125rem;
}
[class~="text-[19px]"] {
    font-size: 1.1875rem;
}
[class~="text-[20px]"] {
    font-size: 1.25rem;
}
[class~="text-[22px]"] {
    font-size: 1.375rem;
}
[class~="text-[24px]"] {
    font-size: 1.5rem;
}
[class~="text-[26px]"] {
    font-size: 1.625rem;
}
[class~="text-[28px]"] {
    font-size: 1.75rem;
}
[class~="text-[36px]"] {
    font-size: 2.25rem;
}
[class~="text-[40px]"] {
    font-size: 2.5rem;
}
[class~="text-[42px]"] {
    font-size: 2.625rem;
}
[class~="text-[clamp(2.25rem,3.6vw,3.5rem)]"] {
    font-size: clamp(2.25rem, 3.6vw, 3.5rem);
}
[class~="text-[clamp(2.5rem,5vw,5.5rem)]"] {
    font-size: clamp(2.5rem, 5vw, 5.5rem);
}
[class~="text-[clamp(4.5rem,7.5vw,8rem)]"] {
    font-size: clamp(4.5rem, 7.5vw, 8rem);
}
[class~="text-[clamp(6rem,12vw,14rem)]"] {
    font-size: clamp(6rem, 12vw, 14rem);
}
[class~="leading-[0.85]"] {
    line-height: 0.85;
}
[class~="leading-[0.9]"] {
    line-height: 0.9;
}
[class~="leading-[0.95]"] {
    line-height: 0.95;
}
[class~="leading-[1]"] {
    line-height: 1;
}
[class~="leading-[1.05]"] {
    line-height: 1.05;
}
[class~="leading-[1.15]"] {
    line-height: 1.15;
}
[class~="leading-[1.2]"] {
    line-height: 1.2;
}
[class~="leading-[1.3]"] {
    line-height: 1.3;
}
[class~="tracking-[0.06em]"] {
    letter-spacing: 0.06em;
}
[class~="tracking-[0.08em]"] {
    letter-spacing: 0.08em;
}
[class~="tracking-[0.12em]"] {
    letter-spacing: 0.12em;
}
[class~="tracking-[0.16em]"] {
    letter-spacing: 0.16em;
}
[class~="tracking-[0.18em]"] {
    letter-spacing: 0.18em;
}
[class~="transition-[padding]"] {
    transition-property: padding;
    transition-duration: var(--default-transition-duration);
    transition-timing-function: var(--default-transition-timing-function);
}
[class~="hover:underline"]:hover,
[class~="group"]:hover [class~="group-hover:underline"] {
    text-decoration-line: underline;
}
[class~="hover:underline-offset-4"]:hover {
    text-underline-offset: 4px;
}
[class~="group"]:hover [class~="group-hover:underline-offset-2"] {
    text-underline-offset: 2px;
}
[class~="hover:opacity-100"]:hover {
    opacity: 1;
}
[class~="focus:outline-none"]:focus {
    outline: none;
}
[class~="focus:bg-yellow"]:focus {
    background-color: var(--yellow);
}
[class~="last:border-b-0"]:last-child {
    border-bottom-width: 0;
}

section,
.shell > .motion-reveal,
article,
figure,
form {
    position: relative;
}
article[class*="bg-soft"],
form[class*="bg-soft"],
[class~="border"][class*="bg-paper"] {
    box-shadow: 4px 4px 0 var(--box-shadow-gray);
}
figure [class~="aspect-[3/4]"],
article[class*="min-h-["] {
    box-shadow: 6px 6px 0 var(--box-shadow-gray);
}
article[class*="bg-ink"],
section.bg-ink article,
.bg-ink [class~="border"] {
    box-shadow: 4px 4px 0 var(--yellow);
}
input,
textarea {
    transition:
        background-color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease;
}
input:focus,
textarea:focus {
    box-shadow: 4px 4px 0 var(--box-shadow-gray);
    transform: translate(-2px, -2px);
}
.btn {
    box-shadow:
        0 1px 0 oklch(0% 0 0 / 0.08),
        0 8px 18px oklch(0% 0 0 / 0.06);
}
.btn-secondary {
    box-shadow: none;
}
p.font-condensed,
li .font-condensed,
dd.font-condensed,
address {
    letter-spacing: 0.01em;
    line-height: 1.32;
}
article h3.font-serif + p.font-condensed,
.title-lg + p.font-condensed,
.title-xl + p.font-condensed {
    margin-top: 2.25rem;
    line-height: 1.34;
}
@media (max-width: 1023px) {
    :root {
        --header-offset: 80px;
        --gutter: clamp(1rem, 5vw, 1.5rem);
    }
    body {
        font-size: 18px;
    }
    body > header > div {
        grid-template-columns: auto 1fr auto;
        gap: 1rem;
        padding-block: 1rem;
    }
    body > header img {
        width: 2.25rem;
        height: 2.25rem;
    }
    body > header nav[aria-label="Main menu"] {
        position: absolute;
        inset-inline: 0;
        top: 100%;
        display: flex;
        gap: 1.25rem;
        overflow-x: auto;
        border-bottom: 1px solid var(--ink);
        background: oklch(100% 0 0 / 0.94);
        padding: 0.75rem max(var(--gutter), calc((100vw - var(--max)) / 2));
        font-size: 1.25rem;
        -webkit-overflow-scrolling: touch;
    }
    body > header nav[aria-label="Main menu"] > .relative > span,
    body > header nav[aria-label="Main menu"] > .relative > div.absolute,
    body > header button[aria-controls="mobile-menu"] {
        display: none;
    }
    body > header > div > div.hidden.justify-self-end {
        display: flex;
    }
}

@media (max-width: 560px) {
    body > header > div > div.hidden.justify-self-end {
        display: none;
    }
}

@media (max-width: 767px) {
    .title-xl .condensed,
    .title-xl .serif {
        font-size: clamp(3.5rem, 18vw, 5.8rem);
    }
    .title-lg .condensed,
    .title-lg .serif {
        font-size: clamp(3rem, 15vw, 4.8rem);
    }
    [class~="section-grid"] {
        grid-template-columns: 1fr;
    }
    [class~="col-span-12"],
    [class~="col-span-2"],
    [class~="col-start-3"] {
        grid-column: auto;
    }
    [class~="grid-cols-[120px_1fr]"],
    [class~="grid-cols-[160px_1fr]"] {
        grid-template-columns: 1fr;
    }
    [class~="h-[clamp(28rem,52vw,56rem)]"] {
        height: clamp(22rem, 95vw, 34rem);
    }
    [class~="h-[clamp(22rem,40vw,40rem)]"] {
        height: clamp(18rem, 82vw, 28rem);
    }
    .btn {
        min-height: 44px;
        padding-inline: 20px;
        font-size: 1.25rem;
    }
    [class~="p-10"],
    [class~="p-8"] {
        padding: 1.5rem;
    }
}

@media (min-width: 640px) {
    [class~="sm:grid-cols-2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 768px) {
    [class~="md:grid-cols-2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    [class~="md:grid-cols-4"] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    [class~="md:border-r"] {
        border-right-style: var(--tw-border-style);
        border-right-width: 1px;
    }
    [class~="md:border-b-0"] {
        border-bottom-width: 0;
    }
}

@media (min-width: 1024px) {
    [class~="lg:hidden"] {
        display: none;
    }
    [class~="lg:flex"] {
        display: flex;
    }
    [class~="lg:sticky"] {
        position: sticky;
    }
    [class~="lg:top-32"] {
        top: calc(var(--spacing) * 32);
    }
    [class~="lg:flex-row"] {
        flex-direction: row;
    }
    [class~="lg:items-center"] {
        align-items: center;
    }
    [class~="lg:items-end"] {
        align-items: flex-end;
    }
    [class~="lg:justify-between"] {
        justify-content: space-between;
    }
    [class~="lg:text-right"] {
        text-align: right;
    }
    [class~="lg:mt-0"] {
        margin-top: 0;
    }
    [class~="lg:p-10"] {
        padding: calc(var(--spacing) * 10);
    }
    [class~="lg:p-14"] {
        padding: calc(var(--spacing) * 14);
    }
    [class~="lg:pt-40"] {
        padding-top: calc(var(--spacing) * 40);
    }
    [class~="lg:pt-44"] {
        padding-top: calc(var(--spacing) * 44);
    }
    [class~="lg:pt-48"] {
        padding-top: calc(var(--spacing) * 48);
    }
    [class~="lg:pb-36"] {
        padding-bottom: calc(var(--spacing) * 36);
    }
    [class~="lg:pb-44"] {
        padding-bottom: calc(var(--spacing) * 44);
    }
    [class~="lg:py-28"] {
        padding-block: calc(var(--spacing) * 28);
    }
    [class~="lg:py-36"] {
        padding-block: calc(var(--spacing) * 36);
    }
    [class~="lg:py-40"] {
        padding-block: calc(var(--spacing) * 40);
    }
    [class~="lg:py-44"] {
        padding-block: calc(var(--spacing) * 44);
    }
    [class~="lg:gap-12"] {
        gap: calc(var(--spacing) * 12);
    }
    [class~="lg:gap-24"] {
        gap: calc(var(--spacing) * 24);
    }
    [class~="lg:gap-32"] {
        gap: calc(var(--spacing) * 32);
    }
    [class~="lg:grid-cols-2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    [class~="lg:grid-cols-3"] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    [class~="lg:grid-cols-4"] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    [class~="lg:grid-cols-6"] {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
    [class~="lg:grid-cols-8"] {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }
    [class~="lg:grid-cols-[1fr_1fr]"] {
        grid-template-columns: 1fr 1fr;
    }
    [class~="lg:grid-cols-[1.1fr_1fr]"] {
        grid-template-columns: 1.1fr 1fr;
    }
    [class~="lg:grid-cols-[1.4fr_repeat(4,_1fr)]"] {
        grid-template-columns: 1.4fr repeat(4, 1fr);
    }
    [class~="lg:col-span-1"] {
        grid-column: span 1 / span 1;
    }
    [class~="lg:col-start-2"] {
        grid-column-start: 2;
    }
    [class~="lg:col-start-7"] {
        grid-column-start: 7;
    }
    [class~="lg:col-start-9"] {
        grid-column-start: 9;
    }
    [class~="lg:col-end-6"] {
        grid-column-end: 6;
    }
    [class~="lg:col-end-8"] {
        grid-column-end: 8;
    }
    [class~="lg:col-end-9"] {
        grid-column-end: 9;
    }
    [class~="lg:col-end-10"] {
        grid-column-end: 10;
    }
    [class~="lg:col-end-11"] {
        grid-column-end: 11;
    }
    [class~="lg:col-end-12"] {
        grid-column-end: 12;
    }
    [class~="lg:col-end-13"] {
        grid-column-end: 13;
    }
}
@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-space-x-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: 0;
}
@property --tw-ring-offset-color {
    syntax: "*";
    inherits: false;
    initial-value: #fff;
}
@property --tw-ring-offset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}
@property --tw-outline-style {
    syntax: "*";
    inherits: false;
    initial-value: solid;
}
@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-content {
    syntax: "*";
    inherits: false;
    initial-value: "";
}
@keyframes pulse {
    50% {
        opacity: 0.5;
    }
}
@keyframes enter {
    0% {
        opacity: var(--tw-enter-opacity, 1);
        transform: translate3d(
                var(--tw-enter-translate-x, 0),
                var(--tw-enter-translate-y, 0),
                0
            )
            scale3d(
                var(--tw-enter-scale, 1),
                var(--tw-enter-scale, 1),
                var(--tw-enter-scale, 1)
            )
            rotate(var(--tw-enter-rotate, 0));
        filter: blur(var(--tw-enter-blur, 0));
    }
}
@keyframes exit {
    to {
        opacity: var(--tw-exit-opacity, 1);
        transform: translate3d(
                var(--tw-exit-translate-x, 0),
                var(--tw-exit-translate-y, 0),
                0
            )
            scale3d(
                var(--tw-exit-scale, 1),
                var(--tw-exit-scale, 1),
                var(--tw-exit-scale, 1)
            )
            rotate(var(--tw-exit-rotate, 0));
        filter: blur(var(--tw-exit-blur, 0));
    }
}
@keyframes accordion-down {
    0% {
        height: 0;
    }
    to {
        height: var(
            --radix-accordion-content-height,
            var(
                --bits-accordion-content-height,
                var(
                    --reka-accordion-content-height,
                    var(
                        --kb-accordion-content-height,
                        var(--ngp-accordion-content-height, auto)
                    )
                )
            )
        );
    }
}
@keyframes accordion-up {
    0% {
        height: var(
            --radix-accordion-content-height,
            var(
                --bits-accordion-content-height,
                var(
                    --reka-accordion-content-height,
                    var(
                        --kb-accordion-content-height,
                        var(--ngp-accordion-content-height, auto)
                    )
                )
            )
        );
    }
    to {
        height: 0;
    }
}
@keyframes caret-blink {
    0%,
    70%,
    to {
        opacity: 1;
    }
    20%,
    50% {
        opacity: 0;
    }
}
/* Static local replica: Lovable's runtime normally adds `.is-visible` to reveal blocks. */
.motion-reveal {
    opacity: 1 !important;
    transform: none !important;
}

.persona-rotator {
    display: inline;
    overflow-wrap: anywhere;
    white-space: normal;
}

.persona-rotator::after {
    content: "";
    display: inline-block;
    width: 0.1em;
    height: 0.72em;
    margin-left: 0.06em;
    background: currentColor;
    transform: translateY(0.06em);
    animation: persona-caret 0.9s steps(2, end) infinite;
}

@keyframes persona-caret {
    0%,
    44% {
        opacity: 1;
    }
    45%,
    100% {
        opacity: 0;
    }
}

.variant-title .condensed,
.variant-title .serif {
    display: block;
    font-size: clamp(4.25rem, 5vw, 5rem);
}

.variant-title .condensed {
    font-family: var(--font-condensed);
    font-weight: 400;
    line-height: 0.88;
    text-transform: uppercase;
}

.variant-title .serif {
    margin-top: 0.06em;
    font-family: var(--font-serif);
    font-style: italic;
    font-weight: 400;
    line-height: 1.04;
}

.variant-copy {
    max-width: 56ch;
    font-family: var(--font-condensed);
    font-size: clamp(1.125rem, 1.3vw, 1.25rem);
    line-height: 1.3;
}

.variant-copy strong {
    font-weight: 600;
}

.variant-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.variant-link {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    border-radius: 999px;
    background: var(--yellow);
    color: var(--ink);
    padding: 0 1.625rem;
    font-family: var(--font-serif);
    font-size: 1.375rem;
    line-height: 1;
    white-space: nowrap;
    transition:
        transform 0.16s,
        background-color 0.2s;
}

.variant-link:hover,
.variant-link:focus-visible {
    transform: translateY(-1px);
}

.variant-soft-link {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--ink);
    border-radius: 999px;
    background: var(--paper);
    color: var(--ink);
    padding: 0 1.5rem;
    font-family: var(--font-serif);
    font-size: 1.25rem;
    line-height: 1;
    white-space: nowrap;
}

.variant-image-frame {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--ink);
    background: var(--soft);
}

.variant-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 640px) {
    .variant-title .condensed,
    .variant-title .serif {
        font-size: clamp(3.5rem, 16vw, 5rem);
    }

    .variant-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .variant-link,
    .variant-soft-link {
        width: 100%;
    }
}
