/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: "Manrope", -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
    --font-mono: ui-monospace, Menlo, monospace;
    --spacing: 0.25rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --text-xs: 0.8125rem;
    --text-xs--line-height: 1.4;
    --text-sm: 0.875rem;
    --text-sm--line-height: 1.5;
    --text-base: 0.9375rem;
    --text-base--line-height: 1.5;
    --text-lg: 1.125rem;
    --text-lg--line-height: 1.6;
    --text-xl: 1.375rem;
    --text-xl--line-height: 1.3;
    --text-2xl: 1.5rem;
    --text-2xl--line-height: 1.3;
    --text-3xl: 1.875rem;
    --text-3xl--line-height: 1.2;
    --text-4xl: 2rem;
    --text-4xl--line-height: 1.2;
    --text-5xl: 2.375rem;
    --text-5xl--line-height: 1.15;
    --text-6xl: 2.625rem;
    --text-6xl--line-height: 1.1;
    --text-7xl: 3.5rem;
    --text-7xl--line-height: 1.05;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --radius-sm: 3px;
    --radius-md: 4px;
    --radius-lg: 6px;
    --radius-xl: 8px;
    --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);
    --color-paper: oklch(97.3% 0.006 75);
    --color-paper-muted: oklch(95.3% 0.008 75);
    --color-paper-deep: oklch(97% 0.005 75);
    --color-ink: oklch(22% 0.008 60);
    --color-ink-soft: oklch(40% 0.008 60);
    --color-muted: oklch(48% 0.006 60);
    --color-muted-soft: oklch(42% 0.006 60);
    --color-muted-faint: oklch(60% 0.006 60);
    --color-border: oklch(89% 0.006 60);
    --color-border-strong: oklch(75% 0.006 60);
    --color-border-input: oklch(80% 0.006 60);
    --color-accent: oklch(38% 0.11 25);
    --color-accent-hover: oklch(30% 0.12 25);
    --color-accent-soft: oklch(38% 0.13 25);
    --color-inverse: oklch(20% 0.006 60);
    --color-inverse-hover: oklch(30% 0.008 60);
    --color-panel: oklch(23% 0.01 50);
    --color-panel-muted: oklch(70% 0.006 60);
    --color-panel-text: oklch(96% 0.004 75);
    --color-panel-body: oklch(80% 0.005 75);
    --color-selection: oklch(90% 0.04 25);
    --color-avatar: oklch(58% 0.01 60);
    --font-display: "Source Serif 4", Georgia, serif;
    --text-2xs: 0.6875rem;
    --text-2xs--line-height: 1.4;
    --text-md: 1rem;
    --text-md--line-height: 1.6;
    --radius-full: 999px;
    --max-width-container: 77.5rem;
    --spacing-gutter: 3rem;
    --spacing-gutter-sm: 1.5rem;
  }
}
@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 {
  .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;
  }
  .static {
    position: static;
  }
  .-top-24 {
    top: calc(var(--spacing) * -24);
  }
  .right-0 {
    right: 0px;
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .-bottom-24 {
    bottom: calc(var(--spacing) * -24);
  }
  .bottom-2 {
    bottom: calc(var(--spacing) * 2);
  }
  .left-0 {
    left: 0px;
  }
  .z-1 {
    z-index: 1;
  }
  .col-1 {
    grid-column: 1;
  }
  .col-2 {
    grid-column: 2;
  }
  .row-span-2 {
    grid-row: 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;
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }
  .mt-2\.5 {
    margin-top: calc(var(--spacing) * 2.5);
  }
  .mt-3\.5 {
    margin-top: calc(var(--spacing) * 3.5);
  }
  .mt-4\.5 {
    margin-top: calc(var(--spacing) * 4.5);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6\.5 {
    margin-top: calc(var(--spacing) * 6.5);
  }
  .mt-9 {
    margin-top: calc(var(--spacing) * 9);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mr-2\.5 {
    margin-right: calc(var(--spacing) * 2.5);
  }
  .mb-0 {
    margin-bottom: 0px;
  }
  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }
  .mb-3\.5 {
    margin-bottom: calc(var(--spacing) * 3.5);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-6\.5 {
    margin-bottom: calc(var(--spacing) * 6.5);
  }
  .mb-7 {
    margin-bottom: calc(var(--spacing) * 7);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-9 {
    margin-bottom: calc(var(--spacing) * 9);
  }
  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }
  .mb-11 {
    margin-bottom: calc(var(--spacing) * 11);
  }
  .mb-16 {
    margin-bottom: calc(var(--spacing) * 16);
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .aspect-2\/3 {
    aspect-ratio: 2/3;
  }
  .aspect-3\/4 {
    aspect-ratio: 3/4;
  }
  .size-1\.5 {
    width: calc(var(--spacing) * 1.5);
    height: calc(var(--spacing) * 1.5);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-\[38px\] {
    width: 38px;
    height: 38px;
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-auto {
    height: auto;
  }
  .min-h-112 {
    min-height: calc(var(--spacing) * 112);
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-\[440px\] {
    max-width: 440px;
  }
  .max-w-\[760px\] {
    max-width: 760px;
  }
  .max-w-\[820px\] {
    max-width: 820px;
  }
  .max-w-container {
    max-width: var(--max-width-container);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: 0px;
  }
  .flex-1 {
    flex: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .list-none {
    list-style-type: none;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-rows-subgrid {
    grid-template-rows: subgrid;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .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-1 {
    gap: var(--spacing);
  }
  .gap-1\.75 {
    gap: calc(var(--spacing) * 1.75);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3\.5 {
    gap: calc(var(--spacing) * 3.5);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-10 {
    column-gap: calc(var(--spacing) * 10);
  }
  .gap-y-5 {
    row-gap: calc(var(--spacing) * 5);
  }
  .gap-y-5\.5 {
    row-gap: calc(var(--spacing) * 5.5);
  }
  .self-start {
    align-self: flex-start;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded-full {
    border-radius: var(--radius-full);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .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-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-border {
    border-color: var(--color-border);
  }
  .border-border-input {
    border-color: var(--color-border-input);
  }
  .border-border-strong {
    border-color: var(--color-border-strong);
  }
  .border-border\/50 {
    border-color: color-mix(in srgb, oklch(89% 0.006 60) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-border) 50%, transparent);
    }
  }
  .bg-avatar {
    background-color: var(--color-avatar);
  }
  .bg-ink {
    background-color: var(--color-ink);
  }
  .bg-inverse {
    background-color: var(--color-inverse);
  }
  .bg-paper {
    background-color: var(--color-paper);
  }
  .bg-paper-muted {
    background-color: var(--color-paper-muted);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-0 {
    padding: 0px;
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-6\.5 {
    padding-inline: calc(var(--spacing) * 6.5);
  }
  .px-7\.5 {
    padding-inline: calc(var(--spacing) * 7.5);
  }
  .px-gutter-sm {
    padding-inline: var(--spacing-gutter-sm);
  }
  .py-1\.25 {
    padding-block: calc(var(--spacing) * 1.25);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-6\.5 {
    padding-block: calc(var(--spacing) * 6.5);
  }
  .py-14 {
    padding-block: calc(var(--spacing) * 14);
  }
  .py-15 {
    padding-block: calc(var(--spacing) * 15);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
  .py-\[15px\] {
    padding-block: 15px;
  }
  .pt-20 {
    padding-top: calc(var(--spacing) * 20);
  }
  .pr-5\.5 {
    padding-right: calc(var(--spacing) * 5.5);
  }
  .pb-24 {
    padding-bottom: calc(var(--spacing) * 24);
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .text-center {
    text-align: center;
  }
  .text-right {
    text-align: right;
  }
  .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-2xs {
    font-size: var(--text-2xs);
    line-height: var(--tw-leading, var(--text-2xs--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--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-md {
    font-size: var(--text-md);
    line-height: var(--tw-leading, var(--text-md--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[9px\] {
    font-size: 9px;
  }
  .text-\[12px\] {
    font-size: 12px;
  }
  .text-\[13\.5px\] {
    font-size: 13.5px;
  }
  .text-\[14\.5px\] {
    font-size: 14.5px;
  }
  .text-\[15\.5px\] {
    font-size: 15.5px;
  }
  .text-\[19px\] {
    font-size: 19px;
  }
  .text-\[22px\] {
    font-size: 22px;
  }
  .text-\[23px\] {
    font-size: 23px;
  }
  .text-\[32px\] {
    font-size: 32px;
  }
  .text-\[38px\] {
    font-size: 38px;
  }
  .text-\[42px\] {
    font-size: 42px;
  }
  .leading-\[1\.05\] {
    --tw-leading: 1.05;
    line-height: 1.05;
  }
  .leading-\[1\.15\] {
    --tw-leading: 1.15;
    line-height: 1.15;
  }
  .leading-\[1\.35\] {
    --tw-leading: 1.35;
    line-height: 1.35;
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\[-0\.01em\] {
    --tw-tracking: -0.01em;
    letter-spacing: -0.01em;
  }
  .tracking-\[0\.1em\] {
    --tw-tracking: 0.1em;
    letter-spacing: 0.1em;
  }
  .tracking-\[0\.08em\] {
    --tw-tracking: 0.08em;
    letter-spacing: 0.08em;
  }
  .tracking-\[0\.09em\] {
    --tw-tracking: 0.09em;
    letter-spacing: 0.09em;
  }
  .text-accent {
    color: var(--color-accent);
  }
  .text-ink {
    color: var(--color-ink);
  }
  .text-ink-soft {
    color: var(--color-ink-soft);
  }
  .text-muted {
    color: var(--color-muted);
  }
  .text-muted-faint {
    color: var(--color-muted-faint);
  }
  .text-muted-soft {
    color: var(--color-muted-soft);
  }
  .text-paper-deep {
    color: var(--color-paper-deep);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .underline {
    text-decoration-line: underline;
  }
  .shadow-\[0_10px_24px_-10px_oklch\(20\%_0\.01_60_\/_0\.25\)\] {
    --tw-shadow: 0 10px 24px -10px var(--tw-shadow-color, oklch(20% 0.01 60 / 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-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);
  }
  .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,);
  }
  .transition-\[transform\,border-color\] {
    transition-property: transform,border-color;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  @media (hover: hover) {
    .group-hover\:-translate-y-0\.75:is(:where(.group):hover *) {
      --tw-translate-y: calc(var(--spacing) * -0.75);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .hover\:-translate-y-0\.5:hover {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .hover\:border-border-strong:hover {
      border-color: var(--color-border-strong);
    }
    .hover\:border-ink:hover {
      border-color: var(--color-ink);
    }
    .hover\:border-inverse:hover {
      border-color: var(--color-inverse);
    }
    .hover\:bg-inverse:hover {
      background-color: var(--color-inverse);
    }
    .hover\:bg-inverse-hover:hover {
      background-color: var(--color-inverse-hover);
    }
    .hover\:text-accent-hover:hover {
      color: var(--color-accent-hover);
    }
    .hover\:text-ink:hover {
      color: var(--color-ink);
    }
    .hover\:text-paper-deep:hover {
      color: var(--color-paper-deep);
    }
  }
  @media (width >= 40rem) {
    .sm\:mb-11 {
      margin-bottom: calc(var(--spacing) * 11);
    }
    .sm\:grid {
      display: grid;
    }
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .sm\:gap-2 {
      gap: calc(var(--spacing) * 2);
    }
    .sm\:text-\[42px\] {
      font-size: 42px;
    }
  }
  @media (width >= 48rem) {
    .md\:px-gutter {
      padding-inline: var(--spacing-gutter);
    }
    .md\:py-5\.5 {
      padding-block: calc(var(--spacing) * 5.5);
    }
    .md\:py-20 {
      padding-block: calc(var(--spacing) * 20);
    }
    .md\:py-22 {
      padding-block: calc(var(--spacing) * 22);
    }
    .md\:py-24 {
      padding-block: calc(var(--spacing) * 24);
    }
    .md\:pt-22 {
      padding-top: calc(var(--spacing) * 22);
    }
    .md\:pb-20 {
      padding-bottom: calc(var(--spacing) * 20);
    }
    .md\:pb-24 {
      padding-bottom: calc(var(--spacing) * 24);
    }
    .md\:text-7xl {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }
  @media (width >= 64rem) {
    .lg\:block {
      display: block;
    }
    .lg\:grid-cols-\[1\.1fr_0\.9fr\] {
      grid-template-columns: 1.1fr 0.9fr;
    }
    .lg\:grid-cols-\[340px_1fr\] {
      grid-template-columns: 340px 1fr;
    }
    .lg\:grid-cols-\[minmax\(0\,1fr\)_340px\] {
      grid-template-columns: minmax(0,1fr) 340px;
    }
    .lg\:gap-16 {
      gap: calc(var(--spacing) * 16);
    }
  }
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url("../fonts/manrope-latin-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url("../fonts/manrope-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Source Serif 4";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../fonts/source-serif-4-latin-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Source Serif 4";
  font-style: normal;
  font-display: swap;
  font-weight: 200 900;
  src: url("../fonts/source-serif-4-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@layer base {
  body {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
    background-color: var(--color-paper);
    color: var(--color-ink);
    font-family: var(--font-sans);
  }
  ::selection {
    background-color: var(--color-selection);
  }
  a {
    color: var(--color-accent);
    text-decoration: none;
  }
  a:hover {
    color: var(--color-accent-hover);
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  html.nav-open, html.nav-open body {
    overflow: hidden;
  }
  input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    flex-shrink: 0;
    width: 1.125rem;
    height: 1.125rem;
    margin: 0.125rem 0 0;
    border: 1.5px solid var(--color-border-strong);
    border-radius: 999px;
    background: #fff;
    vertical-align: top;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease;
  }
  input[type="radio"]:hover {
    border-color: var(--color-ink-soft);
  }
  input[type="radio"]:checked {
    border-color: var(--color-ink);
    background: radial-gradient( circle at center, var(--color-ink) 0 38%, #fff 42% );
  }
  input[type="radio"]:focus-visible {
    outline: 2px solid var(--color-accent);
    outline-offset: 2px;
  }
  input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    margin: 0.125rem 0 0;
    border: 1.5px solid var(--color-border-strong);
    border-radius: 3px;
    background: #fff;
    vertical-align: top;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
  }
  input[type="checkbox"]:hover {
    border-color: var(--color-ink-soft);
  }
  input[type="checkbox"]:checked {
    border-color: var(--color-ink);
    background-color: var(--color-ink);
    box-shadow: inset 0 0 0 2px #fff;
  }
  input[type="checkbox"]:focus-visible {
    outline: 2px solid var(--color-accent);
    outline-offset: 2px;
  }
}
@layer components {
  .site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: oklch(97.3% 0.006 75 / 0.94);
    border-bottom: 1px solid var(--color-border);
    backdrop-filter: blur(10px);
  }
  .site-header__menu--desktop {
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 400;
  }
  .site-header__menu--desktop a {
    color: var(--color-ink-soft);
    transition: color 0.15s ease;
  }
  .site-header__menu--desktop a:hover, .site-header__menu--desktop .current-menu-item > a, .site-header__menu--desktop .current_page_item > a {
    color: var(--color-ink);
  }
  .site-header__icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    color: var(--color-ink-soft);
    border-radius: var(--radius-md);
    transition: color 0.15s ease, background-color 0.15s ease;
  }
  .site-header__icon-btn:hover {
    color: var(--color-ink);
    background: oklch(22% 0.008 60 / 0.05);
  }
  .site-header__cart {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 2.5rem;
    padding: 0 0.55rem 0 0.4rem;
    color: var(--color-ink-soft);
    border-radius: var(--radius-md);
    transition: color 0.15s ease, background-color 0.15s ease;
  }
  .site-header__cart:hover {
    color: var(--color-ink);
    background: oklch(22% 0.008 60 / 0.05);
  }
  .site-header__cart-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
  }
  .site-header__cart-badge {
    position: absolute;
    top: -0.35rem;
    right: -0.45rem;
    min-width: 1.05rem;
    height: 1.05rem;
    padding: 0 0.28rem;
    border-radius: var(--radius-full);
    background: var(--color-ink);
    color: var(--color-paper-deep);
    font-family: var(--font-sans);
    font-size: 0.625rem;
    font-weight: 600;
    line-height: 1.05rem;
    text-align: center;
  }
  .site-header__cart-label {
    display: none;
    font-family: var(--font-display);
    font-size: 1rem;
    line-height: 1;
  }
  @media (min-width: 1024px) {
    .site-header__cart-label {
      display: inline;
    }
    .site-header__cart {
      padding-right: 0.85rem;
    }
  }
  .site-header__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    margin: 0;
    padding: 0;
    color: var(--color-ink);
    background: transparent;
    border: 0;
    border-radius: var(--radius-md);
    cursor: pointer;
  }
  @media (min-width: 1024px) {
    .site-header__toggle {
      display: none;
    }
  }
  .site-header__toggle-lines {
    position: relative;
    display: block;
    width: 1.15rem;
    height: 0.75rem;
  }
  .site-header__toggle-lines span {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 1.5px;
    background: currentColor;
    border-radius: 1px;
    transition: transform 0.2s ease, top 0.2s ease, opacity 0.2s ease;
  }
  .site-header__toggle-lines span:first-child {
    top: 0.1rem;
  }
  .site-header__toggle-lines span:last-child {
    top: 0.5rem;
  }
  .site-header.is-open .site-header__toggle-lines span:first-child {
    top: 0.3rem;
    transform: rotate(45deg);
  }
  .site-header.is-open .site-header__toggle-lines span:last-child {
    top: 0.3rem;
    transform: rotate(-45deg);
  }
  .site-header__panel {
    border-top: 1px solid var(--color-border);
    background: var(--color-paper);
    max-height: calc(100dvh - 4.75rem);
    overflow-y: auto;
  }
  @media (min-width: 1024px) {
    .site-header__panel {
      display: none !important;
    }
  }
  .site-header__menu--mobile {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .site-header__menu--mobile li {
    border-bottom: 1px solid var(--color-border);
  }
  .site-header__menu--mobile li:first-child {
    border-top: 1px solid var(--color-border);
  }
  .site-header__menu--mobile a {
    display: block;
    padding: 1rem 0;
    color: var(--color-ink);
    font-family: var(--font-display);
    font-size: 1.375rem;
    font-weight: 500;
    line-height: 1.3;
    transition: color 0.15s ease;
  }
  .site-header__menu--mobile a:hover {
    color: var(--color-accent);
  }
  .product-single__description-body {
    color: oklch(32% 0.006 60);
    font-size: 1rem;
    line-height: 1.7;
  }
  .product-single__description-body > * + * {
    margin-top: 1.125rem;
  }
  .product-single .woocommerce-message, .product-single .woocommerce-info, .product-single .woocommerce-error {
    margin: 1.5rem auto 0;
    max-width: var(--max-width-container);
    padding: 0.875rem var(--spacing-gutter-sm);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
    color: var(--color-ink);
    font-size: 0.9375rem;
    box-sizing: border-box;
  }
  @media (min-width: 768px) {
    .product-single .woocommerce-message, .product-single .woocommerce-info, .product-single .woocommerce-error {
      padding-left: var(--spacing-gutter);
      padding-right: var(--spacing-gutter);
    }
  }
  .product-single .woocommerce-message a, .product-single .woocommerce-info a {
    color: var(--color-accent);
    text-decoration: underline;
  }
  .cart-page .woocommerce-notices-wrapper {
    margin-bottom: 1.5rem;
  }
  .cart-page .woocommerce-notices-wrapper:empty {
    display: none;
    margin: 0;
  }
  .cart-page .woocommerce-message, .cart-page .woocommerce-info, .cart-page .woocommerce-error {
    margin: 0 0 0.75rem;
    padding: 0.875rem 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
    color: var(--color-ink);
    font-size: 0.9375rem;
    line-height: 1.5;
  }
  .cart-page .woocommerce-message:last-child, .cart-page .woocommerce-info:last-child, .cart-page .woocommerce-error:last-child {
    margin-bottom: 0;
  }
  .cart-page .woocommerce-message a, .cart-page .woocommerce-info a, .cart-page .woocommerce-error a {
    color: var(--color-accent);
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }
  .cart-page .woocommerce-error {
    border-color: color-mix( in oklch, oklch(38% 0.11 25) 35%, oklch(89% 0.006 60) );
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklch, var(--color-accent) 35%, var(--color-border) );
    }
    background: color-mix( in oklch, oklch(38% 0.11 25) 6%, oklch(95.3% 0.008 75) );
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix( in oklch, var(--color-accent) 6%, var(--color-paper-muted) );
    }
  }
  .cart-page__row {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) auto;
    align-items: start;
    column-gap: 0.875rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--color-border);
  }
  .cart-page__thumb {
    width: 72px;
  }
  .cart-page__details {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
    padding-top: 0.1rem;
  }
  .cart-page__name {
    font-size: 0.9375rem;
    line-height: 1.35;
  }
  .cart-page__price {
    color: var(--color-ink-soft);
    font-size: 0.90625rem;
  }
  .cart-page__remove {
    margin-top: 0.1rem;
  }
  .cart-page__header {
    margin: 0;
    padding-bottom: 0.875rem;
    border-bottom: 1px solid var(--color-border);
  }
  @media (min-width: 640px) {
    .cart-page__header, .cart-page__row {
      display: grid;
      grid-template-columns: 64px minmax(0, 1fr) 100px 28px;
      align-items: center;
      column-gap: 1.125rem;
    }
    .cart-page__row {
      padding: 1.375rem 0;
    }
    .cart-page__thumb {
      width: 64px;
    }
    .cart-page__details {
      display: contents;
    }
    .cart-page__name {
      font-size: 0.9375rem;
    }
    .cart-page__price {
      color: var(--color-ink);
      font-size: 0.90625rem;
      text-align: right;
    }
    .cart-page__remove {
      margin-top: 0;
      justify-self: end;
    }
  }
  .cart-page__remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border: 0;
    border-radius: 0;
    color: var(--color-muted-faint);
    font-size: 1.125rem;
    line-height: 1;
    transition: color 0.15s ease;
  }
  .cart-page__remove:hover {
    background: transparent;
    color: var(--color-muted);
  }
  .cart-page__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .cart-page__grid {
    gap: 2.5rem;
  }
  @media (min-width: 1024px) {
    .cart-page__grid {
      gap: 3.5rem;
    }
  }
  .cart-page__totals {
    position: sticky;
    top: 6rem;
    padding: 1.5rem;
    border: 1px solid var(--color-border);
    border-radius: 5px;
    background: var(--color-paper-muted);
  }
  @media (min-width: 640px) {
    .cart-page__totals {
      padding: 1.75rem;
    }
  }
  .cart-page__totals h2 {
    margin: 0 0 1.375rem;
  }
  .cart-page__totals-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0;
    border-top: 1px solid var(--color-border);
    font-size: 0.90625rem;
    color: var(--color-ink);
  }
  .cart-page__totals-label {
    color: var(--color-muted);
  }
  .cart-page__totals-value {
    text-align: right;
  }
  .cart-page__totals-row--total {
    margin-bottom: 1.5rem;
    font-size: 1rem;
    font-weight: 600;
  }
  .cart-page__shipping {
    display: block;
    padding: 1.125rem 0;
  }
  .cart-page__shipping-heading {
    margin-bottom: 0.875rem;
    color: var(--color-muted);
    font-size: 0.90625rem;
  }
  .cart-page__shipping-methods {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .cart-page__shipping-method {
    margin: 0;
  }
  .cart-page__shipping-option {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    cursor: pointer;
    color: var(--color-ink);
    font-size: 0.875rem;
    line-height: 1.45;
  }
  .cart-page__shipping-option-label {
    flex: 1 1 auto;
    min-width: 0;
  }
  .cart-page__shipping-note {
    margin: 0.875rem 0 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.5;
  }
  .cart-page__shipping-note strong {
    color: var(--color-ink-soft);
    font-weight: 500;
  }
  .cart-page__shipping-calc {
    margin-top: 0.75rem;
  }
  .cart-page__shipping-calc-toggle {
    color: var(--color-accent);
    font-size: 0.8125rem;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }
  .cart-page__shipping-calc-toggle:hover {
    color: var(--color-accent-hover);
  }
  .cart-page__shipping-calc-form {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
    margin-top: 1rem;
  }
  .cart-page__field {
    margin: 0;
  }
  .cart-page__field label {
    display: block;
    margin-bottom: 0.375rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }
  .cart-page__field input.input-text, .cart-page__field select {
    width: 100%;
    max-width: 100%;
    padding: 0.6875rem 0.8125rem;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-sm);
    background: var(--color-paper);
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.875rem;
    line-height: 1.4;
    transition: border-color 0.15s ease;
  }
  .cart-page__field input.input-text:focus, .cart-page__field select:focus {
    outline: none;
    border-color: var(--color-ink-soft);
  }
  .cart-page__shipping-calc-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-sm);
    background: var(--color-paper);
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease;
  }
  .cart-page__shipping-calc-submit:hover {
    border-color: var(--color-border-strong);
    background: oklch(92% 0.006 60);
  }
  .cart-page__checkout {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.9375rem;
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
    font-size: 0.9375rem;
    font-weight: 500;
    text-align: center;
    transition: background-color 0.15s ease;
  }
  .cart-page__checkout:hover {
    background: var(--color-inverse-hover);
    color: var(--color-paper-deep);
  }
  .checkout-page .woocommerce-notices-wrapper, .checkout-page .woocommerce-form-coupon-toggle {
    margin-bottom: 1.5rem;
  }
  .checkout-page .woocommerce-notices-wrapper:empty {
    display: none;
    margin: 0;
  }
  .checkout-page .woocommerce-NoticeGroup {
    margin: 0 0 1.5rem;
  }
  .checkout-page .woocommerce-message, .checkout-page .woocommerce-info, .checkout-page .woocommerce-error {
    margin: 0 0 0.75rem;
    padding: 0.875rem 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
    color: var(--color-ink);
    font-size: 0.9375rem;
    line-height: 1.5;
  }
  .checkout-page .woocommerce-error {
    list-style: none;
    border-color: color-mix( in oklch, oklch(38% 0.11 25) 35%, oklch(89% 0.006 60) );
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklch, var(--color-accent) 35%, var(--color-border) );
    }
    border-left: 3px solid var(--color-accent);
    background: color-mix( in oklch, oklch(38% 0.11 25) 6%, oklch(95.3% 0.008 75) );
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix( in oklch, var(--color-accent) 6%, var(--color-paper-muted) );
    }
    color: var(--color-accent);
  }
  .checkout-page .woocommerce-error li {
    margin: 0;
    padding: 0;
  }
  .checkout-page .woocommerce-error li + li {
    margin-top: 0.375rem;
  }
  .checkout-page .woocommerce-error li[data-id] a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }
  .checkout-page .woocommerce-error li[data-id] a:hover {
    color: var(--color-accent-hover);
  }
  .checkout-page .woocommerce-message a, .checkout-page .woocommerce-info a {
    color: var(--color-accent);
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }
  .checkout-page .woocommerce-error strong {
    font-weight: 600;
  }
  .checkout-page__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.5rem;
    align-items: start;
  }
  @media (min-width: 1024px) {
    .checkout-page__grid {
      grid-template-columns: minmax(0, 1fr) 400px;
      gap: 4rem;
    }
  }
  .checkout-page__section {
    margin-bottom: 2.5rem;
  }
  .checkout-page__section:last-child {
    margin-bottom: 0;
  }
  .checkout-page__section-title, .checkout-page__summary-title {
    margin: 0 0 1.25rem;
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--color-ink);
  }
  .checkout-page__summary-title {
    font-size: 1.1875rem;
  }
  .checkout-page__fields .form-row {
    margin: 0 0 1.125rem;
    padding: 0;
    float: none;
    width: 100%;
  }
  .checkout-page__fields .form-row-first, .checkout-page__fields .form-row-last {
    width: 100%;
  }
  @media (min-width: 640px) {
    .checkout-page__fields {
      display: grid;
      grid-template-columns: 1fr 1fr;
      column-gap: 1.125rem;
    }
    .checkout-page__fields .form-row-wide, .checkout-page__fields .address-field, .checkout-page__fields #billing_company_field, .checkout-page__fields #shipping_company_field, .checkout-page__fields #billing_country_field, .checkout-page__fields #shipping_country_field, .checkout-page__fields #billing_address_1_field, .checkout-page__fields #shipping_address_1_field, .checkout-page__fields #billing_address_2_field, .checkout-page__fields #shipping_address_2_field, .checkout-page__fields #order_comments_field {
      grid-column: 1 / -1;
    }
  }
  .checkout-page .form-row label {
    display: block;
    margin-bottom: 0.5rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .checkout-page .form-row label .optional, .checkout-page .form-row label .required {
    letter-spacing: 0;
    text-transform: none;
  }
  .checkout-page .form-row label .required {
    color: var(--color-accent);
    text-decoration: none;
  }
  .checkout-page .form-row input.input-text, .checkout-page .form-row textarea, .checkout-page .form-row select {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0.75rem 0.875rem;
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-md);
    background: #fff;
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.9375rem;
    line-height: 1.4;
    transition: border-color 0.15s ease;
  }
  .checkout-page .form-row textarea {
    min-height: 6.5rem;
    resize: vertical;
  }
  .checkout-page .form-row input.input-text:focus, .checkout-page .form-row textarea:focus, .checkout-page .form-row select:focus {
    outline: none;
    border-color: var(--color-ink-soft);
  }
  .checkout-page .form-row.woocommerce-invalid label {
    color: var(--color-accent);
  }
  .checkout-page .form-row.woocommerce-invalid input.input-text, .checkout-page .form-row.woocommerce-invalid textarea, .checkout-page .form-row.woocommerce-invalid select {
    border-color: var(--color-accent);
    background: color-mix(in srgb, oklch(38% 0.11 25) 4%, #fff);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in oklch, var(--color-accent) 4%, #fff);
    }
  }
  .checkout-page .form-row.woocommerce-invalid input.input-text:focus, .checkout-page .form-row.woocommerce-invalid textarea:focus, .checkout-page .form-row.woocommerce-invalid select:focus {
    border-color: var(--color-accent-hover);
  }
  .checkout-page .form-row.woocommerce-invalid .select2-container .select2-selection--single {
    border-color: var(--color-accent) !important;
    background-color: color-mix(in srgb, oklch(38% 0.11 25) 4%, #fff) !important;
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklch, var(--color-accent) 4%, #fff) !important;
    }
  }
  .checkout-page .checkout-inline-error-message {
    margin: 0.5rem 0 0;
    color: var(--color-accent);
    font-size: 0.8125rem;
    line-height: 1.4;
  }
  .checkout-page .select2-container {
    width: 100% !important;
  }
  .checkout-page .select2-container .select2-selection--single {
    display: block !important;
    box-sizing: border-box;
    height: 2.875rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--color-border-strong) !important;
    border-radius: var(--radius-md);
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0.875rem center !important;
    background-size: 0.75rem 0.5rem !important;
    outline: none;
    transition: border-color 0.15s ease;
  }
  .checkout-page .select2-container--default.select2-container--focus .select2-selection--single, .checkout-page .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--color-ink-soft) !important;
  }
  .checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered {
    display: block;
    padding: 0 2.5rem 0 0.875rem !important;
    line-height: calc(2.875rem - 2px) !important;
    color: var(--color-ink);
    font-size: 0.9375rem;
  }
  .checkout-page .select2-container--default .select2-selection--single .select2-selection__arrow {
    display: none !important;
  }
  .checkout-page .woocommerce-form-login {
    margin-bottom: 2rem;
    padding: 1.25rem 1.375rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
  }
  .checkout-page__login-message {
    margin: 0 0 1.125rem;
    color: var(--color-muted);
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .checkout-page__login-fields {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  @media (min-width: 640px) {
    .checkout-page__login-fields {
      grid-template-columns: 1fr 1fr;
      column-gap: 1.125rem;
    }
  }
  .checkout-page__login-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
    margin: 0.25rem 0 0.75rem;
  }
  .checkout-page__login-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 7.5rem;
    padding: 0.6875rem 1.125rem;
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease;
  }
  .checkout-page__login-submit:hover {
    background: var(--color-inverse-hover);
    color: var(--color-paper-deep);
  }
  .checkout-page__login-lost {
    margin: 0;
    font-size: 0.8125rem;
  }
  .checkout-page__login-lost a {
    color: var(--color-accent);
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }
  .checkout-page__account {
    padding: 1.375rem 1.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
  }
  .checkout-page__account-note {
    margin: -0.5rem 0 1rem;
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.5;
  }
  .checkout-page__account-toggle {
    margin-bottom: 0.5rem !important;
  }
  .checkout-page__checkbox-label {
    display: inline-flex !important;
    align-items: center;
    gap: 0.625rem;
    margin: 0 0 1.25rem !important;
    color: var(--color-ink) !important;
    font-size: 0.90625rem !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer;
  }
  .checkout-page__ship-toggle {
    margin: 0 0 1.25rem;
    font-size: inherit;
    font-weight: inherit;
  }
  .checkout-page__summary {
    position: sticky;
    top: 6rem;
    padding: 1.75rem;
    border: 1px solid var(--color-border);
    border-radius: 5px;
    background: var(--color-paper-muted);
  }
  .checkout-page__order-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }
  .checkout-page__order-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.875rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-ink);
  }
  .checkout-page__order-item-main {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    min-width: 0;
    flex: 1 1 auto;
  }
  .checkout-page__order-thumb {
    flex-shrink: 0;
    width: 3.25rem;
    overflow: hidden;
    border-radius: var(--radius-sm);
    background: oklch(92% 0.008 60);
  }
  .checkout-page__order-thumb img, .checkout-page__order-thumb-img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    object-fit: cover;
  }
  .checkout-page__order-meta {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: 0;
  }
  .checkout-page__order-title {
    font-size: 0.90625rem;
    font-weight: 600;
    line-height: 1.35;
  }
  .checkout-page__order-author {
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.35;
  }
  .checkout-page__order-price {
    flex-shrink: 0;
    padding-top: 0.15rem;
    font-size: 0.90625rem;
    text-align: right;
  }
  .checkout-page__order-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--color-border);
    font-size: 0.90625rem;
    color: var(--color-ink);
  }
  .checkout-page__order-row > span:first-child {
    color: var(--color-muted);
  }
  .checkout-page__order-row--total {
    margin-bottom: 1.375rem;
    font-size: 1rem;
    font-weight: 600;
  }
  .checkout-page__order-row--total > span:first-child {
    color: var(--color-ink);
  }
  .checkout-page .cart-page__shipping {
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--color-border);
  }
  .checkout-page .cart-page__shipping-heading {
    margin-bottom: 0.75rem;
  }
  .checkout-page .cart-page__shipping-note, .checkout-page .cart-page__shipping-calc {
    display: none;
  }
  .checkout-page__payment {
    margin-top: 0.25rem;
  }
  .checkout-page__payment-methods {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin: 0 0 1.375rem;
    padding: 0;
    list-style: none;
  }
  .checkout-page__payment-method {
    margin: 0;
  }
  .checkout-page__payment-option {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.8125rem 0.875rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper);
    color: var(--color-ink-soft);
    font-size: 0.90625rem;
    font-weight: 500;
    cursor: pointer;
    transition: border-color 0.15s ease, color 0.15s ease, background-color 0.15s ease;
  }
  .checkout-page__payment-option:has(.input-radio:checked) {
    border-color: var(--color-ink);
    background: oklch(97% 0.006 75);
    color: var(--color-ink);
  }
  .checkout-page__payment-option .input-radio {
    margin: 0;
  }
  .checkout-page__payment-option-label {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
  }
  .checkout-page__payment-box {
    margin: 0.5rem 0 0;
    padding: 0.75rem 0.875rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper);
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.5;
  }
  .checkout-page__payment-box p {
    margin: 0;
  }
  .checkout-page__place-order {
    margin: 0;
    padding: 0;
    float: none;
    width: 100%;
  }
  .checkout-page .woocommerce-terms-and-conditions-wrapper {
    margin-bottom: 1rem;
    font-size: 0.8125rem;
    color: var(--color-muted);
  }
  .checkout-page__submit, .checkout-page #place_order {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.9375rem;
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
    font-family: inherit;
    font-size: 0.9375rem;
    font-weight: 500;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.15s ease;
  }
  .checkout-page__submit:hover, .checkout-page #place_order:hover {
    background: var(--color-inverse-hover);
    color: var(--color-paper-deep);
  }
  .checkout-page .checkout_coupon {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
  }
  .checkout-page .checkout_coupon .form-row {
    margin: 0;
    float: none;
    width: auto;
  }
  .checkout-page .checkout_coupon .button {
    padding: 0.6875rem 1rem;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-sm);
    background: var(--color-paper);
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
  }
}
body.woocommerce-checkout .select2-dropdown {
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-md);
  background: #fff;
  overflow: hidden;
}
body.woocommerce-checkout .select2-container--open .select2-dropdown--below {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
body.woocommerce-checkout .select2-results__option {
  padding: 0.625rem 0.875rem;
  font-size: 0.9375rem;
}
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected], body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[data-selected] {
  background: var(--color-paper-muted);
  color: var(--color-ink);
}
@layer components {
  .shop-page__layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: start;
  }
  @media (min-width: 1024px) {
    .shop-page__layout {
      grid-template-columns: 300px minmax(0, 1fr);
      gap: 3.5rem;
    }
  }
  .shop-page__sidebar {
    position: relative;
  }
  @media (min-width: 1024px) {
    .shop-page__sidebar {
      position: sticky;
      top: 6rem;
      align-self: start;
    }
  }
  .shop-page__filter-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: 0.875rem 1rem;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-md);
    color: var(--color-ink);
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
  }
  @media (min-width: 1024px) {
    .shop-page__filter-summary {
      display: none;
    }
  }
  .shop-page__filters {
    display: none;
  }
  #shop-filter-toggle:checked ~ .shop-page__filters {
    display: block;
  }
  @media (min-width: 1024px) {
    .shop-page__filters {
      display: block;
    }
  }
  #shop-filter-toggle:checked ~ .shop-page__filter-summary .shop-page__filter-summary-icon {
    display: inline-block;
    transform: rotate(45deg);
  }
  .shop-page__filter-group {
    margin-bottom: 2.125rem;
  }
  .shop-page__filter-label {
    margin-bottom: 0.875rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .shop-page__filter-list, .shop-page__filter-checks, .shop-page__filter-plain, .shop-page__cats, .shop-page__cat-children {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .shop-page__cat {
    margin: 0;
  }
  .shop-page__cat-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }
  .shop-page__cat-link, .shop-page__cat-child-link {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    color: var(--color-ink);
    font-size: 0.90625rem;
    transition: color 0.15s ease;
  }
  .shop-page__filter-check, .shop-page__filter-plain-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    color: var(--color-ink);
    font-size: 0.90625rem;
    transition: color 0.15s ease;
  }
  .shop-page__cat-link {
    padding: 0.625rem 0;
  }
  .shop-page__cat-name {
    font-weight: 500;
  }
  .shop-page__cat-link .shop-page__filter-count, .shop-page__cat-child-link .shop-page__filter-count {
    margin-left: 0.375rem;
    color: var(--color-muted-faint);
    font-size: 0.8125rem;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }
  .shop-page__cat-toggle {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    margin: 0;
    padding: 0;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--color-muted);
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  }
  .shop-page__cat-toggle:hover {
    border-color: var(--color-border-strong);
    background: var(--color-paper-muted);
    color: var(--color-ink);
  }
  .shop-page__cat.is-open .shop-page__cat-toggle {
    border-color: var(--color-border-strong);
    color: var(--color-ink);
  }
  .shop-page__cat-chevron {
    width: 0.4375rem;
    height: 0.4375rem;
    margin-top: -0.125rem;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.15s ease;
  }
  .shop-page__cat.is-open .shop-page__cat-chevron {
    margin-top: 0.125rem;
    transform: rotate(-135deg);
  }
  .shop-page__cat-children {
    margin: 0 0 0.5rem;
    padding: 0;
    overflow-anchor: none;
  }
  .shop-page__cat-child-link {
    padding: 0.4375rem 0 0.4375rem 0.875rem;
    font-size: 0.875rem;
  }
  .shop-page__cat-child-link .shop-page__cat-name {
    font-weight: 400;
  }
  .shop-page__filter-plain-link {
    padding: 0.375rem 0;
    font-size: 0.875rem;
  }
  .shop-page__cat-link:hover, .shop-page__cat-child-link:hover, .shop-page__filter-check:hover, .shop-page__filter-plain-link:hover, .shop-page__cat-link.is-active, .shop-page__cat-child-link.is-active, .shop-page__filter-check.is-active, .shop-page__filter-plain-link.is-active {
    color: var(--color-accent);
  }
  .shop-page__cat-link.is-active .shop-page__cat-name, .shop-page__cat-child-link.is-active .shop-page__cat-name {
    font-weight: 600;
  }
  .shop-page__search {
    display: flex;
    gap: 0.5rem;
    align-items: stretch;
  }
  .shop-page__search-input {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    padding: 0.75rem 0.875rem;
    border: 1px solid var(--color-border-strong);
    border-radius: var(--radius-md);
    background: #fff;
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.9375rem;
    line-height: 1.4;
    transition: border-color 0.15s ease;
  }
  .shop-page__search-input:focus {
    outline: none;
    border-color: var(--color-ink-soft);
  }
  .shop-page__search-submit {
    flex-shrink: 0;
    padding: 0.75rem 0.875rem;
    border: 0;
    border-radius: var(--radius-md);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
    font-family: inherit;
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease;
  }
  .shop-page__search-submit:hover {
    background: var(--color-inverse-hover);
  }
  .shop-page__filter-check-main {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    min-width: 0;
  }
  .shop-page__filter-check {
    padding: 0.4375rem 0;
  }
  .shop-page__filter-count {
    color: var(--color-muted);
    font-size: 0.8125rem;
    font-weight: 400;
  }
  .shop-page__filter-checkbox {
    width: 0.9375rem;
    height: 0.9375rem;
    flex-shrink: 0;
    border: 1.5px solid oklch(68% 0.006 60);
    border-radius: 4px;
    background: #fff;
  }
  .shop-page__filter-check.is-active .shop-page__filter-checkbox {
    border-color: var(--color-ink);
    background-color: var(--color-ink);
    box-shadow: inset 0 0 0 2px #fff;
  }
  .shop-page__author-search {
    width: 100%;
    margin-bottom: 0.75rem;
    padding: 0.5rem 0.125rem;
    border: 0;
    border-bottom: 1px solid var(--color-border-input);
    background: transparent;
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.875rem;
  }
  .shop-page__author-search:focus {
    outline: none;
    border-bottom-color: var(--color-ink-soft);
  }
  .shop-page__author-hint, .shop-page__author-empty {
    margin: 0.25rem 0 0;
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.45;
  }
  .shop-page__author-hint[hidden], .shop-page__author-empty[hidden] {
    display: none;
  }
  .shop-page__price-range {
    width: 100%;
    accent-color: var(--color-ink);
  }
  .shop-page__price-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: 0.625rem;
  }
  .shop-page__price-label {
    color: var(--color-ink-soft);
    font-size: 0.84375rem;
  }
  .shop-page__price-submit {
    padding: 0.4375rem 1rem;
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
    font-family: inherit;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: background-color 0.15s ease;
  }
  .shop-page__price-submit:hover {
    background: var(--color-inverse-hover);
  }
  .shop-page__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 2.25rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--color-border);
  }
  .shop-page__result-count {
    margin: 0;
    color: var(--color-muted);
    font-size: 0.875rem;
  }
  .shop-page__ordering select {
    padding: 0.5625rem 0.75rem;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-sm);
    background: #fff;
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.84375rem;
  }
  .shop-page__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: auto auto;
    column-gap: 1.125rem;
    row-gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  @media (min-width: 768px) {
    .shop-page__grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      column-gap: 1.5rem;
    }
  }
  @media (min-width: 1024px) {
    .shop-page__grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      column-gap: 1.75rem;
    }
  }
  .shop-page__product {
    display: grid;
    grid-row: span 2;
    grid-template-rows: subgrid;
    margin: 0 0 2.25rem;
    padding: 0;
    list-style: none;
  }
  .shop-page__product .product-card__cover {
    align-self: stretch;
  }
  .shop-page .woocommerce-pagination {
    margin-top: 3rem;
  }
  .shop-page .woocommerce-pagination ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .shop-page .woocommerce-pagination li {
    margin: 0;
  }
  .shop-page .woocommerce-pagination a, .shop-page .woocommerce-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    height: 2.5rem;
    padding: 0 0.75rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-ink);
    font-size: 0.875rem;
  }
  .shop-page .woocommerce-pagination .current {
    border-color: var(--color-ink);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
  }
  .shop-page .woocommerce-pagination a:hover {
    border-color: var(--color-border-strong);
  }
  .shop-page .woocommerce-notices-wrapper {
    margin-bottom: 1.5rem;
  }
  .shop-page .woocommerce-message, .shop-page .woocommerce-info, .shop-page .woocommerce-error {
    margin: 0 0 0.75rem;
    padding: 0.875rem 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
    color: var(--color-ink);
    font-size: 0.9375rem;
  }
  .author-page__hero {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-items: flex-start;
    margin-bottom: 2.75rem;
    padding-bottom: 2.75rem;
    border-bottom: 1px solid var(--color-border);
  }
  @media (min-width: 640px) {
    .author-page__hero {
      flex-direction: row;
      gap: 2rem;
    }
  }
  .author-page__avatar {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 110px;
    height: 110px;
    overflow: hidden;
    border-radius: var(--radius-full);
    background: oklch(45% 0.02 40);
    color: var(--color-paper-deep);
    font-family: var(--font-display);
    font-size: 2.125rem;
    font-weight: 600;
    line-height: 1;
  }
  .author-page__avatar-media {
    display: block;
    width: 100%;
    height: 100%;
  }
  .author-page__avatar-media.author-avatar--image {
    object-fit: cover;
  }
  .author-page__avatar-media.author-avatar--initials {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .author-page__eyebrow {
    margin-bottom: 0.5rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .author-page__title {
    margin: 0 0 1rem;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.15;
  }
  @media (min-width: 640px) {
    .author-page__title {
      font-size: 2.375rem;
    }
  }
  .author-page__description {
    max-width: 37.5rem;
    margin: 0 0 1rem;
    color: oklch(32% 0.006 60);
    font-size: 1rem;
    line-height: 1.7;
  }
  .author-page__description p {
    margin: 0 0 0.75rem;
  }
  .author-page__description p:last-child {
    margin-bottom: 0;
  }
  .author-page__count {
    color: var(--color-muted);
    font-size: 0.875rem;
  }
  .author-page__toolbar {
    margin-bottom: 2rem;
  }
  .author-page .shop-page__grid {
    margin-bottom: 0;
  }
  .author-page .woocommerce-pagination {
    margin-top: 3rem;
  }
  .author-page .woocommerce-pagination ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .author-page .woocommerce-pagination li {
    margin: 0;
  }
  .author-page .woocommerce-pagination a, .author-page .woocommerce-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.25rem;
    height: 2.25rem;
    padding: 0 0.625rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    color: var(--color-ink);
    font-size: 0.875rem;
  }
  .author-page .woocommerce-pagination .current {
    border-color: var(--color-ink);
    background: var(--color-ink);
    color: var(--color-paper-deep);
  }
  .author-page .woocommerce-pagination a:hover {
    border-color: var(--color-border-strong);
  }
  .authors__avatar-media.author-avatar--image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .authors__avatar-media.author-avatar--initials {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
  }
  .account-page .woocommerce-notices-wrapper:empty {
    display: none;
  }
  .account-page .woocommerce-message, .account-page .woocommerce-info, .account-page .woocommerce-error, body.woocommerce-account .site-main > .woocommerce-message, body.woocommerce-account .site-main > .woocommerce-info, body.woocommerce-account .site-main > .woocommerce-error {
    margin: 0 0 1.25rem;
    padding: 0.875rem 1rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    background: var(--color-paper-muted);
    color: var(--color-ink);
    font-size: 0.9375rem;
    line-height: 1.5;
    list-style: none;
  }
  body.woocommerce-account .site-main > .woocommerce-message, body.woocommerce-account .site-main > .woocommerce-info, body.woocommerce-account .site-main > .woocommerce-error, body.woocommerce-account .site-main > .woocommerce-notices-wrapper {
    max-width: var(--max-width-container);
    margin-right: auto;
    margin-left: auto;
    padding-right: var(--spacing-gutter-sm);
    padding-left: var(--spacing-gutter-sm);
  }
  @media (min-width: 768px) {
    body.woocommerce-account .site-main > .woocommerce-message, body.woocommerce-account .site-main > .woocommerce-info, body.woocommerce-account .site-main > .woocommerce-error, body.woocommerce-account .site-main > .woocommerce-notices-wrapper {
      padding-right: var(--spacing-gutter);
      padding-left: var(--spacing-gutter);
    }
    body.woocommerce-account .site-main > .woocommerce-message, body.woocommerce-account .site-main > .woocommerce-info, body.woocommerce-account .site-main > .woocommerce-error {
      margin-top: 2rem;
    }
  }
  .account-page .woocommerce-message a, .account-page .woocommerce-info a, body.woocommerce-account .site-main > .woocommerce-message a, body.woocommerce-account .site-main > .woocommerce-info a {
    color: var(--color-accent);
    font-weight: 500;
  }
  .account-page .woocommerce-error, body.woocommerce-account .site-main > .woocommerce-error {
    border-color: oklch(75% 0.08 25);
    background: oklch(96% 0.02 25);
  }
  .account-page__layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.5rem;
    align-items: start;
  }
  @media (min-width: 900px) {
    .account-page__layout {
      grid-template-columns: 230px minmax(0, 1fr);
      gap: 3.5rem;
    }
  }
  .account-page__nav {
    position: sticky;
    top: 6rem;
  }
  .account-page__nav-list {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .account-page__nav-list li {
    margin: 0;
  }
  .account-page__nav-list a {
    display: block;
    padding: 0.8125rem 0.25rem;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-ink);
    font-size: 0.90625rem;
    line-height: 1.4;
    transition: color 0.15s ease;
  }
  .account-page__nav-list li:last-child a {
    border-bottom: none;
  }
  .account-page__nav-list a:hover {
    color: var(--color-ink);
  }
  .account-page__nav-list .is-active a, .account-page__nav-list a[aria-current="page"] {
    color: var(--color-ink);
    font-weight: 600;
  }
  .account-page__nav-list .woocommerce-MyAccount-navigation-link--customer-logout a {
    color: var(--color-accent);
  }
  .account-page__nav-list .woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    color: var(--color-accent-hover);
  }
  .account-page__content {
    min-width: 0;
  }
  .account-page__intro {
    margin: 0 0 0.5rem;
    color: oklch(32% 0.006 60);
    font-size: 0.96875rem;
    line-height: 1.7;
  }
  .account-page__intro--spaced {
    margin-bottom: 2rem;
  }
  .account-page__intro a {
    color: var(--color-accent);
  }
  .account-page__intro a:hover {
    color: var(--color-accent-hover);
  }
  .account-page__stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  @media (min-width: 640px) {
    .account-page__stats {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .account-page__stat {
    padding: 1.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
  }
  .account-page__stat-value {
    margin-bottom: 0.25rem;
    font-family: var(--font-display);
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.2;
  }
  .account-page__stat-value .woocommerce-Price-amount, .account-page__stat-value .amount {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
  }
  .account-page__stat-label {
    color: var(--color-muted);
    font-size: 0.84375rem;
  }
  .account-page__auth {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  .account-page__auth::before, .account-page__auth::after, .account-page .clear {
    display: none;
  }
  .account-page__auth-col {
    float: none;
    width: auto;
  }
  @media (min-width: 768px) {
    .account-page__auth {
      grid-template-columns: 1fr 1fr;
      gap: 4rem;
    }
  }
  .account-page .password-input {
    display: flex;
    position: relative;
  }
  .account-page .password-input input.input-text {
    padding-right: 2.75rem;
  }
  .account-page .show-password-input {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--color-muted);
    cursor: pointer;
    transform: translateY(-50%);
  }
  .account-page__section-title {
    margin: 0 0 1.25rem;
    font-family: var(--font-display);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.3;
  }
  .account-page__form .form-row, .account-page__form .woocommerce-form-row {
    margin: 0 0 1.125rem;
  }
  .account-page__form-row--split {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  @media (min-width: 640px) {
    .account-page__form-row--split {
      grid-template-columns: 1fr 1fr;
      gap: 1.125rem;
    }
    .account-page__form-row--split .form-row {
      margin-bottom: 1.125rem;
    }
  }
  .account-page__form label {
    display: block;
    margin-bottom: 0.5rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .account-page__form label .required {
    color: var(--color-accent);
    letter-spacing: 0;
    text-decoration: none;
    text-transform: none;
  }
  .account-page__form input.input-text, .account-page__form textarea, .account-page__form select, .account-page__fields input.input-text, .account-page__fields textarea, .account-page__fields select {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0.75rem 0.875rem;
    border: 1px solid var(--color-border-input);
    border-radius: var(--radius-md);
    background: #fff;
    color: var(--color-ink);
    font-family: inherit;
    font-size: 0.9375rem;
    line-height: 1.4;
    transition: border-color 0.15s ease;
  }
  .account-page__form input.input-text:focus, .account-page__form textarea:focus, .account-page__form select:focus, .account-page__fields input.input-text:focus, .account-page__fields textarea:focus, .account-page__fields select:focus {
    outline: none;
    border-color: var(--color-ink-soft);
  }
  .account-page__fields .form-row {
    margin: 0 0 1.125rem;
  }
  .account-page__fields .form-row-first, .account-page__fields .form-row-last {
    width: 100%;
    float: none;
  }
  @media (min-width: 640px) {
    .account-page__fields {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0 1.125rem;
    }
    .account-page__fields .form-row-wide, .account-page__fields .address-field, .account-page__fields #billing_company_field, .account-page__fields #shipping_company_field, .account-page__fields #billing_country_field, .account-page__fields #shipping_country_field, .account-page__fields #billing_address_1_field, .account-page__fields #shipping_address_1_field, .account-page__fields #billing_address_2_field, .account-page__fields #shipping_address_2_field {
      grid-column: 1 / -1;
    }
  }
  .account-page__fields label {
    display: block;
    margin-bottom: 0.5rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .account-page__fields label .optional, .account-page__fields label .required {
    letter-spacing: 0;
    text-transform: none;
  }
  .account-page__fields label .required {
    color: var(--color-accent);
    text-decoration: none;
  }
  .account-page__form-note, .account-page__form .woocommerce-privacy-policy-text, .account-page__form .woocommerce-privacy-policy-text p {
    margin: 0 0 1.125rem;
    color: var(--color-muted);
    font-size: 0.875rem;
    line-height: 1.6;
  }
  .account-page__field-hint {
    display: block;
    margin-top: 0.5rem;
    color: var(--color-muted);
    font-size: 0.8125rem;
    line-height: 1.5;
  }
  .account-page__form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 1.25rem;
    margin-top: 0.25rem !important;
  }
  .account-page__checkbox-label {
    display: inline-flex !important;
    align-items: center;
    gap: 0.625rem;
    margin: 0 !important;
    color: var(--color-ink) !important;
    font-size: 0.90625rem !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer;
  }
  .account-page__checkbox-label input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 1rem;
    height: 1rem;
    margin: 0;
    border: 1.5px solid var(--color-border-strong);
    border-radius: 3px;
    background: #fff;
    flex-shrink: 0;
  }
  .account-page__checkbox-label input[type="checkbox"]:checked {
    border-color: var(--color-ink);
    background: linear-gradient(var(--color-ink), var(--color-ink)) padding-box, #fff;
    box-shadow: inset 0 0 0 2px #fff;
  }
  .account-page__button, .account-page .woocommerce-button, .account-page button.button, .account-page input.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.8125rem 1.625rem;
    border: none;
    border-radius: var(--radius-sm);
    background: var(--color-inverse);
    color: var(--color-paper-deep);
    font-family: inherit;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.3;
    cursor: pointer;
    transition: background 0.15s ease;
  }
  .account-page__button:hover, .account-page .woocommerce-button:hover, .account-page button.button:hover, .account-page input.button:hover {
    background: var(--color-inverse-hover);
    color: var(--color-paper-deep);
  }
  .account-page__lost-password {
    margin: 1rem 0 0;
    font-size: 0.875rem;
  }
  .account-page__lost-password a {
    color: var(--color-accent);
  }
  .account-page__lost-password a:hover {
    color: var(--color-accent-hover);
  }
  .account-page__form--narrow {
    max-width: 28rem;
  }
  .account-page__fieldset {
    margin: 2rem 0 0;
    padding: 0;
    border: none;
  }
  .account-page__fieldset legend {
    margin-bottom: 1.25rem;
    padding: 0;
  }
  .account-page__form-submit {
    margin: 1.5rem 0 0 !important;
  }
  .account-page__addresses {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  @media (min-width: 640px) {
    .account-page__addresses {
      grid-template-columns: 1fr 1fr;
    }
  }
  .account-page__address {
    padding: 1.5rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
  }
  .account-page__address-header {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    margin-bottom: 0.75rem;
  }
  .account-page__address-title {
    margin: 0;
    color: var(--color-muted);
    font-family: inherit;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .account-page__address-edit {
    color: var(--color-accent);
    font-size: 0.8125rem;
  }
  .account-page__address-body {
    margin: 0;
    font-size: 0.9375rem;
    font-style: normal;
    line-height: 1.6;
  }
  .account-page .woocommerce-orders-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.90625rem;
  }
  .account-page .woocommerce-orders-table thead th {
    padding: 0 0 0.875rem;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-align: left;
    text-transform: uppercase;
  }
  .account-page .woocommerce-orders-table thead th:last-child, .account-page .woocommerce-orders-table tbody td:last-child, .account-page .woocommerce-orders-table tbody th:last-child {
    text-align: right;
  }
  .account-page .woocommerce-orders-table tbody th, .account-page .woocommerce-orders-table tbody td {
    padding: 1.125rem 0;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-muted);
    font-weight: 400;
    text-align: left;
    vertical-align: middle;
  }
  .account-page .woocommerce-orders-table__cell-order-number, .account-page .woocommerce-orders-table__cell-order-number a {
    color: var(--color-ink);
    font-weight: 600;
  }
  .account-page .woocommerce-orders-table .woocommerce-button {
    padding: 0.5rem 0.875rem;
    font-size: 0.8125rem;
  }
  .account-page .woocommerce-pagination {
    display: flex;
    gap: 0.75rem;
    margin-top: 1.5rem;
  }
  @media (max-width: 639px) {
    .account-page .woocommerce-orders-table thead {
      display: none;
    }
    .account-page .woocommerce-orders-table, .account-page .woocommerce-orders-table tbody, .account-page .woocommerce-orders-table tr, .account-page .woocommerce-orders-table th, .account-page .woocommerce-orders-table td {
      display: block;
      width: 100%;
    }
    .account-page .woocommerce-orders-table tbody tr {
      margin-bottom: 1rem;
      padding-bottom: 1rem;
      border-bottom: 1px solid var(--color-border);
    }
    .account-page .woocommerce-orders-table tbody th, .account-page .woocommerce-orders-table tbody td {
      display: flex;
      justify-content: space-between;
      gap: 1rem;
      padding: 0.375rem 0;
      border: none;
      text-align: right;
    }
    .account-page .woocommerce-orders-table tbody th::before, .account-page .woocommerce-orders-table tbody td::before {
      content: attr(data-title);
      color: var(--color-muted);
      font-size: 0.6875rem;
      font-weight: 600;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .account-page .woocommerce-orders-table thead th:last-child, .account-page .woocommerce-orders-table tbody td:last-child, .account-page .woocommerce-orders-table tbody th:last-child {
      text-align: right;
    }
  }
  .product-shelf-viewport {
    margin-inline: calc(var(--spacing-gutter-sm) * -1);
    padding-inline: var(--spacing-gutter-sm);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: var(--spacing-gutter-sm);
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
    scrollbar-width: none;
    cursor: grab;
  }
  .product-shelf-viewport::-webkit-scrollbar {
    display: none;
  }
  .product-shelf-viewport.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    user-select: none;
  }
  .product-shelf-viewport.is-dragging a {
    pointer-events: none;
  }
  .product-shelf {
    display: flex;
    align-items: stretch;
    gap: 1rem;
    width: max-content;
    min-width: 100%;
  }
  .product-shelf__item {
    display: flex;
    flex: 0 0 9.5rem;
    flex-direction: column;
    width: 9.5rem;
    margin-bottom: 0;
    scroll-snap-align: start;
  }
  .product-shelf .product-card__cover {
    flex: 1 1 auto;
  }
  @media (min-width: 640px) {
    .product-shelf-viewport {
      margin-inline: 0;
      padding-inline: 0;
      overflow: visible;
      scroll-snap-type: none;
      touch-action: auto;
      cursor: auto;
    }
    .product-shelf {
      display: grid;
      width: auto;
      min-width: 0;
      grid-template-columns: repeat(3, 1fr);
      grid-auto-rows: auto auto;
      gap: 0 1.75rem;
    }
    .product-shelf__item {
      display: grid;
      grid-row: span 2;
      grid-template-rows: subgrid;
      flex: unset;
      width: auto;
      margin-bottom: 2.25rem;
      scroll-snap-align: unset;
    }
    .product-shelf .product-card__cover {
      align-self: stretch;
    }
  }
  @media (min-width: 1024px) {
    .product-shelf {
      grid-template-columns: repeat(6, 1fr);
    }
  }
  .hero-lane__track {
    will-change: transform;
  }
  .hero-lane__track--up {
    animation: hero-scroll-up var(--hero-duration, 40s) linear infinite;
  }
  .hero-lane__track--down {
    animation: hero-scroll-down var(--hero-duration, 48s) linear infinite;
  }
  .hero-lane__track:hover, .hero-lane__track:has(:focus-visible) {
    animation-play-state: paused;
  }
  .confirmation-page {
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
  }
  .confirmation-page__confetti {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 420px;
    overflow: hidden;
    pointer-events: none;
  }
  .confirmation-page__confetti-piece {
    position: absolute;
    top: 0;
    transform: rotate(var(--confetti-rotate, 0deg));
    animation-name: confetti-fall;
    animation-timing-function: ease-in;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
  }
  .confirmation-page__header {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 0.5rem;
  }
  .confirmation-page__icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 3.25rem;
    height: 3.25rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-full);
    background: var(--color-paper-muted);
    font-size: 1.625rem;
    line-height: 1;
  }
  .confirmation-page__title {
    margin: 0;
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.2;
  }
  @media (min-width: 640px) {
    .confirmation-page__title {
      font-size: 2rem;
    }
  }
  .confirmation-page__intro {
    position: relative;
    margin: 0 0 2.5rem;
    padding-left: 0;
    color: var(--color-muted-soft);
    font-size: 0.96875rem;
    line-height: 1.6;
  }
  @media (min-width: 640px) {
    .confirmation-page__intro {
      padding-left: 4.25rem;
    }
    .confirmation-page__header:not(:has(.confirmation-page__icon)) + .confirmation-page__intro {
      padding-left: 0;
    }
  }
  .confirmation-page__overview {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 2.5rem;
    overflow: hidden;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
  }
  @media (min-width: 720px) {
    .confirmation-page__overview {
      grid-template-columns: repeat(4, 1fr);
    }
  }
  .confirmation-page__overview-item {
    padding: 1.25rem 1.125rem;
    border-right: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
  }
  @media (min-width: 720px) {
    .confirmation-page__overview-item {
      border-bottom: 0;
    }
    .confirmation-page__overview-item:last-child {
      border-right: 0;
    }
  }
  @media (max-width: 719px) {
    .confirmation-page__overview-item:nth-child(2n) {
      border-right: 0;
    }
    .confirmation-page__overview-item:nth-last-child(-n + 2) {
      border-bottom: 0;
    }
  }
  .confirmation-page__overview-label {
    margin-bottom: 0.375rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .confirmation-page__overview-value {
    font-size: 0.96875rem;
    font-weight: 600;
    line-height: 1.35;
  }
  .confirmation-page__overview-value .woocommerce-Price-amount, .confirmation-page__overview-value .amount {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
  }
  .confirmation-page__actions {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 0.875rem;
    margin-top: 0;
  }
  .confirmation-page__actions--failed {
    margin-top: 0;
    margin-bottom: 2rem;
  }
  .confirmation-page__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.875rem 1.625rem;
    border-radius: var(--radius-sm);
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  }
  .confirmation-page__btn--primary {
    border: 0;
    background: var(--color-inverse);
    color: var(--color-paper-deep);
  }
  .confirmation-page__btn--primary:hover {
    background: var(--color-inverse-hover);
    color: var(--color-paper-deep);
  }
  .confirmation-page__btn--secondary {
    border: 1px solid var(--color-border-strong);
    background: transparent;
    color: var(--color-ink);
  }
  .confirmation-page__btn--secondary:hover {
    border-color: var(--color-ink);
    color: var(--color-ink);
  }
  .order-details {
    position: relative;
    margin-bottom: 2.5rem;
  }
  .order-details__title {
    margin: 0 0 1.25rem;
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.3;
  }
  .order-details__table {
    overflow: hidden;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
  }
  .order-details__head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.875rem 1.25rem;
    background: var(--color-paper-muted);
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }
  .order-details__item {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-border);
    font-size: 0.90625rem;
    line-height: 1.5;
  }
  .order-details__item-name a {
    color: inherit;
  }
  .order-details__item-name a:hover {
    color: var(--color-accent);
  }
  .order-details__item-total {
    flex-shrink: 0;
    text-align: right;
  }
  .order-details__purchase-note {
    padding: 0 1.25rem 1rem;
    border-top: 0;
    color: var(--color-muted);
    font-size: 0.875rem;
  }
  .order-details__row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-border);
    font-size: 0.90625rem;
    line-height: 1.5;
  }
  .order-details__row > span:first-child {
    color: var(--color-muted);
  }
  .order-details__row--total {
    background: var(--color-paper-muted);
    font-size: 1rem;
    font-weight: 600;
  }
  .order-details__row--total > span:first-child {
    color: var(--color-ink);
  }
  .order-details__row--total .woocommerce-Price-amount, .order-details__row--total .amount {
    font-weight: 600;
  }
  .order-details__action-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
  }
  .order-details__addresses {
    margin-bottom: 0;
  }
  .order-details__address-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    margin-bottom: 2.75rem;
  }
  @media (min-width: 640px) {
    .order-details__address-grid {
      grid-template-columns: 1fr 1fr;
      gap: 1.5rem;
    }
    .order-details__address-grid--single {
      grid-template-columns: 1fr;
    }
  }
  .order-details__address-label {
    margin-bottom: 0.75rem;
    color: var(--color-muted);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .order-details__address-body {
    margin: 0;
    font-style: normal;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
  .order-details__address-body p {
    margin: 0.5rem 0 0;
  }
  .confirmation-page .woocommerce-order-details, .confirmation-page .woocommerce-customer-details {
    position: relative;
  }
  .confirmation-page .woocommerce-bacs-bank-details, .confirmation-page .wc-bacs-bank-details-account-name {
    position: relative;
    margin-bottom: 2rem;
  }
  .content-block__body {
    color: var(--color-ink-soft);
    font-family: var(--font-sans);
    font-size: 1rem;
    line-height: 1.7;
  }
  .content-block__body > *:first-child {
    margin-top: 0;
  }
  .content-block__body > *:last-child {
    margin-bottom: 0;
  }
  .content-block__body h1, .content-block__body h2, .content-block__body h3, .content-block__body h4 {
    margin: 2rem 0 0.75rem;
    color: var(--color-ink);
    font-family: var(--font-display);
    font-weight: 600;
    line-height: 1.25;
  }
  .content-block__body h1 {
    margin-top: 0;
    margin-bottom: 1.25rem;
    font-size: 2rem;
  }
  .content-block__body h2 {
    font-size: 1.5rem;
  }
  .content-block__body h3 {
    font-size: 1.25rem;
  }
  .content-block__body h4 {
    font-size: 1.125rem;
  }
  .content-block__body p {
    margin: 0 0 1.125rem;
  }
  .content-block__body ul, .content-block__body ol {
    margin: 0 0 1.125rem;
    padding-left: 1.25rem;
  }
  .content-block__body li {
    margin-bottom: 0.375rem;
  }
  .content-block__body li > ul, .content-block__body li > ol {
    margin-top: 0.375rem;
    margin-bottom: 0;
  }
  .content-block__body a {
    color: var(--color-accent);
    text-decoration: underline;
    text-underline-offset: 0.15em;
  }
  .content-block__body a:hover {
    color: var(--color-accent-hover);
  }
  .content-block__body strong {
    color: var(--color-ink);
    font-weight: 600;
  }
  .content-block__body blockquote {
    margin: 1.5rem 0;
    padding: 0.25rem 0 0.25rem 1.25rem;
    border-left: 2px solid var(--color-border-strong);
    color: var(--color-muted);
  }
  .content-block__body hr {
    margin: 2rem 0;
    border: 0;
    border-top: 1px solid var(--color-border);
  }
  .content-block__body table {
    width: 100%;
    margin: 0 0 1.5rem;
    border-collapse: collapse;
    font-size: 0.9375rem;
  }
  .content-block__body th, .content-block__body td {
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--color-border);
    text-align: left;
    vertical-align: top;
  }
  .content-block__body th {
    color: var(--color-ink);
    font-weight: 600;
  }
  .content-block__body img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.5rem 0;
  }
  @media (min-width: 768px) {
    .content-block__body h1 {
      font-size: 2.375rem;
    }
    .content-block__body h2 {
      font-size: 1.75rem;
    }
  }
}
@keyframes hero-scroll-up {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-50%);
  }
}
@keyframes hero-scroll-down {
  from {
    transform: translateY(-50%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes confetti-fall {
  0% {
    transform: translateY(-20px) rotate(var(--confetti-rotate, 0deg));
    opacity: 1;
  }
  100% {
    transform: translateY(420px) rotate(calc(var(--confetti-rotate, 0deg) + 360deg));
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-lane__track--up, .hero-lane__track--down {
    animation: none;
  }
  .confirmation-page__confetti-piece {
    animation: none;
    opacity: 0;
    transform: none;
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-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-duration {
  syntax: "*";
  inherits: false;
}
@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;
}
@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-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: 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-duration: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
    }
  }
}
