/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: var(--font-sans);
    --font-serif: var(--font-serif);
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-400: oklch(70.4% 0.191 22.216);
    --color-yellow-600: oklch(68.1% 0.162 75.834);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-rose-700: oklch(51.4% 0.222 16.935);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-400: oklch(70.8% 0 0);
    --color-neutral-700: oklch(37.1% 0 0);
    --color-neutral-950: oklch(14.5% 0 0);
    --color-stone-50: oklch(98.5% 0.001 106.423);
    --color-stone-100: oklch(97% 0.001 106.424);
    --color-stone-200: oklch(92.3% 0.003 48.717);
    --color-stone-300: oklch(86.9% 0.005 56.366);
    --color-stone-950: oklch(14.7% 0.004 49.25);
    --color-olive-100: oklch(96.6% 0.005 106.5);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-black: 900;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);
    --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
    --animate-spin: spin 1s linear infinite;
    --blur-xs: 4px;
    --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);
    --gold-lite: #ffe066;
    --gold-deep: #d4af37;
    --ink: #16130c; 
    --gold: #b8912e;
    --gold-deep:#8f6f1e;
     --ink-2:#1f1b12;--ink-3:#2a2417;
    --cream:#faf6ec;--card:#ffffff;
    --gold-soft:#f4ecd6;
    --text:#221d13;--muted:#726851;--muted-2:#9a8f76;
    --line:#e9e0cd;--line-2:#ded2b8;
  }
}
@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%;
    -moz-tab-size: 4;
      -o-tab-size: 4;
         tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::-moz-placeholder {
    opacity: 1;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::-moz-placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
    ::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 {
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .\@container\/field-group {
    container-type: inline-size;
    container-name: field-group;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .not-sr-only {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip-path: none;
    white-space: normal;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1/2 * 100%);
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .isolate {
    isolation: isolate;
  }
  .isolation-auto {
    isolation: auto;
  }
  .z-0 {
    z-index: 0;
  }
  .z-1 {
    z-index: 1;
  }
  .z-50 {
    z-index: 50;
  }
  .z-9999 {
    z-index: 9999;
  }
  .order-first {
    order: -9999;
  }
  .order-last {
    order: 9999;
  }
  .col-span-6 {
    grid-column: span 6 / span 6;
  }
  .col-span-12 {
    grid-column: span 12 / span 12;
  }
  .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: calc(var(--spacing) * 0);
  }
  .-mx-1 {
    margin-inline: calc(var(--spacing) * -1);
  }
  .mx-0 {
    margin-inline: calc(var(--spacing) * 0);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .-my-2 {
    margin-block: calc(var(--spacing) * -2);
  }
  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mb-0 {
    margin-bottom: calc(var(--spacing) * 0);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-7 {
    margin-bottom: calc(var(--spacing) * 7);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-auto {
    margin-left: auto;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .flow-root {
    display: flow-root;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .inline-grid {
    display: inline-grid;
  }
  .inline-table {
    display: inline-table;
  }
  .list-item {
    display: list-item;
  }
  .table {
    display: table;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-column {
    display: table-column;
  }
  .table-column-group {
    display: table-column-group;
  }
  .table-footer-group {
    display: table-footer-group;
  }
  .table-header-group {
    display: table-header-group;
  }
  .table-row {
    display: table-row;
  }
  .table-row-group {
    display: table-row-group;
  }
  .aspect-4\/3 {
    aspect-ratio: 4/3;
  }
  .aspect-5\/2 {
    aspect-ratio: 5/2;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-15 {
    width: calc(var(--spacing) * 15);
    height: calc(var(--spacing) * 15);
  }
  .size-40 {
    width: calc(var(--spacing) * 40);
    height: calc(var(--spacing) * 40);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-\[1px\] {
    height: 1px;
  }
  .h-\[50vh\] {
    height: 50vh;
  }
  .h-\[var\(--radix-select-trigger-height\)\] {
    height: var(--radix-select-trigger-height);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .max-h-\[--radix-select-content-available-height\] {
    max-height: --radix-select-content-available-height;
  }
  .min-h-24 {
    min-height: calc(var(--spacing) * 24);
  }
  .min-h-125 {
    min-height: calc(var(--spacing) * 125);
  }
  .min-h-\[60px\] {
    min-height: 60px;
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-9 {
    width: calc(var(--spacing) * 9);
  }
  .w-60 {
    width: calc(var(--spacing) * 60);
  }
  .w-\[1px\] {
    width: 1px;
  }
  .w-fit {
    width: -moz-fit-content;
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .min-w-240 {
    min-width: calc(var(--spacing) * 240);
  }
  .min-w-\[8rem\] {
    min-width: 8rem;
  }
  .min-w-\[var\(--radix-select-trigger-width\)\] {
    min-width: var(--radix-select-trigger-width);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-\[0_0_auto\] {
    flex: 0 0 auto;
  }
  .shrink {
    flex-shrink: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .grow {
    flex-grow: 1;
  }
  .basis-15 {
    flex-basis: calc(var(--spacing) * 15);
  }
  .basis-40 {
    flex-basis: calc(var(--spacing) * 40);
  }
  .basis-full {
    flex-basis: 100%;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .origin-\[--radix-select-content-transform-origin\] {
    transform-origin: --radix-select-content-transform-origin;
  }
  .translate-none {
    translate: none;
  }
  .scale-3d {
    scale: var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .cursor-text {
    cursor: text;
  }
  .touch-pinch-zoom {
    --tw-pinch-zoom: pinch-zoom;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .list-disc {
    list-style-type: disc;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-7 {
    gap: calc(var(--spacing) * 7);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .space-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 1;
    }
  }
  .gap-x-8 {
    -moz-column-gap: calc(var(--spacing) * 8);
         column-gap: calc(var(--spacing) * 8);
  }
  .space-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 1;
    }
  }
  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }
  .divide-x {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 0;
      border-inline-style: var(--tw-border-style);
      border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
      border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 1;
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded-4xl {
    border-radius: calc(var(--radius) * 2.6);
  }
  .rounded-\[calc\(var\(--radius\)-5px\)\] {
    border-radius: calc(var(--radius) - 5px);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius);
  }
  .rounded-md {
    border-radius: calc(var(--radius) * 0.8);
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-sm {
    border-radius: calc(var(--radius) * 0.6);
  }
  .rounded-xl {
    border-radius: calc(var(--radius) * 1.4);
  }
  .rounded-s {
    border-start-start-radius: 0.25rem;
    border-end-start-radius: 0.25rem;
  }
  .rounded-ss {
    border-start-start-radius: 0.25rem;
  }
  .rounded-e {
    border-start-end-radius: 0.25rem;
    border-end-end-radius: 0.25rem;
  }
  .rounded-se {
    border-start-end-radius: 0.25rem;
  }
  .rounded-ee {
    border-end-end-radius: 0.25rem;
  }
  .rounded-es {
    border-end-start-radius: 0.25rem;
  }
  .rounded-t {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
  .rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-tl {
    border-top-left-radius: 0.25rem;
  }
  .rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-tr {
    border-top-right-radius: 0.25rem;
  }
  .rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-br {
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-bl {
    border-bottom-left-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-x {
    border-inline-style: var(--tw-border-style);
    border-inline-width: 1px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-s {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }
  .border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-green-200 {
    border-color: var(--color-green-200);
  }
  .border-input {
    border-color: var(--input);
  }
  .border-primary {
    border-color: var(--primary);
  }
  .border-stone-300 {
    border-color: var(--color-stone-300);
  }
  .bg-accent {
    background-color: var(--accent);
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-border {
    background-color: var(--border);
  }
  .bg-destructive {
    background-color: var(--destructive);
  }
  .bg-foreground {
    background-color: var(--foreground);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-muted {
    background-color: var(--muted);
  }
  .bg-popover {
    background-color: var(--popover);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-primary\/5 {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 5%, transparent);
    }
  }
  .bg-primary\/10 {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }
  .bg-primary\/20 {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 20%, transparent);
    }
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-stone-50 {
    background-color: var(--color-stone-50);
  }
  .bg-stone-100 {
    background-color: var(--color-stone-100);
  }
  .bg-stone-200 {
    background-color: var(--color-stone-200);
  }
  .bg-stone-950\/30 {
    background-color: color-mix(in srgb, oklch(14.7% 0.004 49.25) 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-stone-950) 30%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-repeat {
    background-repeat: repeat;
  }
  .mask-no-clip {
    -webkit-mask-clip: no-clip;
            mask-clip: no-clip;
  }
  .mask-repeat {
    -webkit-mask-repeat: repeat;
            mask-repeat: repeat;
  }
  .object-cover {
    -o-object-fit: cover;
       object-fit: cover;
  }
  .object-center {
    -o-object-position: center;
       object-position: center;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-10 {
    padding-inline: calc(var(--spacing) * 10);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-10 {
    padding-top: calc(var(--spacing) * 10);
  }
  .pt-25 {
    padding-top: calc(var(--spacing) * 25);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-8 {
    padding-right: calc(var(--spacing) * 8);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .font-black {
    --tw-font-weight: var(--font-weight-black);
    font-weight: var(--font-weight-black);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .text-clip {
    text-overflow: clip;
  }
  .text-ellipsis {
    text-overflow: ellipsis;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-green-700 {
    color: var(--color-green-700);
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-popover-foreground {
    color: var(--popover-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-primary\/60 {
    color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--primary) 60%, transparent);
    }
  }
  .text-red-400 {
    color: var(--color-red-400);
  }
  .text-secondary {
    color: var(--secondary);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-secondary\/50 {
    color: var(--secondary);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--secondary) 50%, transparent);
    }
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/70 {
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .not-italic {
    font-style: normal;
  }
  .diagonal-fractions {
    --tw-numeric-fraction: diagonal-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .lining-nums {
    --tw-numeric-figure: lining-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .oldstyle-nums {
    --tw-numeric-figure: oldstyle-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .proportional-nums {
    --tw-numeric-spacing: proportional-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .slashed-zero {
    --tw-slashed-zero: slashed-zero;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .stacked-fractions {
    --tw-numeric-fraction: stacked-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .normal-nums {
    font-variant-numeric: normal;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .overline {
    text-decoration-line: overline;
  }
  .underline {
    text-decoration-line: underline;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .subpixel-antialiased {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xs {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .inset-ring {
    --tw-inset-ring-shadow: inset 0 0 0 1px var(--tw-inset-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-offset-background {
    --tw-ring-offset-color: var(--background);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.1))) drop-shadow(0 1px 1px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.06)));
    --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow( 0 1px 1px rgb(0 0 0 / 0.06));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow-md {
    --tw-drop-shadow-size: drop-shadow(0 3px 3px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.12)));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-md));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-blur-xs {
    --tw-backdrop-blur: blur(var(--blur-xs));
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-grayscale {
    --tw-backdrop-grayscale: grayscale(100%);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-invert {
    --tw-backdrop-invert: invert(100%);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-sepia {
    --tw-backdrop-sepia: sepia(100%);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-filter {
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-\[color\,box-shadow\] {
    transition-property: color,box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    -moz-user-select: none;
         user-select: none;
  }
  .divide-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 1;
    }
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  .group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance {
    &:is(:where(.group\/field):has(*:is([data-orientation=horizontal])) *) {
      text-wrap: balance;
    }
  }
  .group-has-\[\>input\]\/input-group\:pt-2\.5 {
    &:is(:where(.group\/input-group):has(>input) *) {
      padding-top: calc(var(--spacing) * 2.5);
    }
  }
  .group-has-\[\>input\]\/input-group\:pb-2\.5 {
    &:is(:where(.group\/input-group):has(>input) *) {
      padding-bottom: calc(var(--spacing) * 2.5);
    }
  }
  .group-data-\[disabled\=true\]\/field\:opacity-50 {
    &:is(:where(.group\/field)[data-disabled="true"] *) {
      opacity: 50%;
    }
  }
  .group-data-\[disabled\=true\]\/input-group\:opacity-50 {
    &:is(:where(.group\/input-group)[data-disabled="true"] *) {
      opacity: 50%;
    }
  }
  .group-data-\[variant\=outline\]\/field-group\:-mb-2 {
    &:is(:where(.group\/field-group)[data-variant="outline"] *) {
      margin-bottom: calc(var(--spacing) * -2);
    }
  }
  .peer-disabled\:cursor-not-allowed {
    &:is(:where(.peer):disabled ~ *) {
      cursor: not-allowed;
    }
  }
  .peer-disabled\:opacity-70 {
    &:is(:where(.peer):disabled ~ *) {
      opacity: 70%;
    }
  }
  .file\:border-0 {
    &::file-selector-button {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .file\:bg-transparent {
    &::file-selector-button {
      background-color: transparent;
    }
  }
  .file\:text-sm {
    &::file-selector-button {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .file\:font-medium {
    &::file-selector-button {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }
  .file\:text-foreground {
    &::file-selector-button {
      color: var(--foreground);
    }
  }
  .placeholder\:text-muted-foreground {
    &::-moz-placeholder {
      color: var(--muted-foreground);
    }
    &::placeholder {
      color: var(--muted-foreground);
    }
  }
  .last\:mt-0 {
    &:last-child {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .odd\:bg-white {
    &:nth-child(odd) {
      background-color: var(--color-white);
    }
  }
  .hover\:border-primary {
    &:hover {
      @media (hover: hover) {
        border-color: var(--primary);
      }
    }
  }
  .hover\:bg-accent {
    &:hover {
      @media (hover: hover) {
        background-color: var(--accent);
      }
    }
  }
  .hover\:bg-destructive\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-primary {
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
      }
    }
  }
  .hover\:bg-primary\/30 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 30%, transparent);
        }
      }
    }
  }
  .hover\:bg-primary\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-secondary\/80 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--secondary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
        }
      }
    }
  }
  .hover\:text-accent-foreground {
    &:hover {
      @media (hover: hover) {
        color: var(--accent-foreground);
      }
    }
  }
  .hover\:text-primary {
    &:hover {
      @media (hover: hover) {
        color: var(--primary);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .focus\:bg-input {
    &:focus {
      background-color: var(--input);
    }
  }
  .focus\:text-accent-foreground {
    &:focus {
      color: var(--accent-foreground);
    }
  }
  .focus\:ring-1 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-ring {
    &:focus {
      --tw-ring-color: var(--ring);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .focus-visible\:ring-0 {
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-visible\:ring-1 {
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-visible\:ring-ring {
    &:focus-visible {
      --tw-ring-color: var(--ring);
    }
  }
  .focus-visible\:outline-none {
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .disabled\:pointer-events-none {
    &:disabled {
      pointer-events: none;
    }
  }
  .disabled\:cursor-not-allowed {
    &:disabled {
      cursor: not-allowed;
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .has-data-\[state\=checked\]\:border-primary {
    &:has(*[data-state="checked"]) {
      border-color: var(--primary);
    }
  }
  .has-data-\[state\=checked\]\:bg-primary\/5 {
    &:has(*[data-state="checked"]) {
      background-color: var(--primary);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--primary) 5%, transparent);
      }
    }
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-1 {
    &:has(*:is([data-slot=input-group-control]:focus-visible)) {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring {
    &:has(*:is([data-slot=input-group-control]:focus-visible)) {
      --tw-ring-color: var(--ring);
    }
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive {
    &:has(*:is([data-slot][aria-invalid=true])) {
      border-color: var(--destructive);
    }
  }
  .has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20 {
    &:has(*:is([data-slot][aria-invalid=true])) {
      --tw-ring-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
  }
  .has-\[\>\[data-align\=block-end\]\]\:h-auto {
    &:has(>[data-align=block-end]) {
      height: auto;
    }
  }
  .has-\[\>\[data-align\=block-end\]\]\:flex-col {
    &:has(>[data-align=block-end]) {
      flex-direction: column;
    }
  }
  .has-\[\>\[data-align\=block-start\]\]\:h-auto {
    &:has(>[data-align=block-start]) {
      height: auto;
    }
  }
  .has-\[\>\[data-align\=block-start\]\]\:flex-col {
    &:has(>[data-align=block-start]) {
      flex-direction: column;
    }
  }
  .has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3 {
    &:has(>[data-slot=checkbox-group]) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .has-\[\>\[data-slot\=field-content\]\]\:items-start {
    &:has(>[data-slot=field-content]) {
      align-items: flex-start;
    }
  }
  .has-\[\>\[data-slot\=field\]\]\:w-full {
    &:has(>[data-slot=field]) {
      width: 100%;
    }
  }
  .has-\[\>\[data-slot\=field\]\]\:flex-col {
    &:has(>[data-slot=field]) {
      flex-direction: column;
    }
  }
  .has-\[\>\[data-slot\=field\]\]\:rounded-md {
    &:has(>[data-slot=field]) {
      border-radius: calc(var(--radius) * 0.8);
    }
  }
  .has-\[\>\[data-slot\=field\]\]\:border {
    &:has(>[data-slot=field]) {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
  }
  .has-\[\>\[data-slot\=radio-group\]\]\:gap-3 {
    &:has(>[data-slot=radio-group]) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .has-\[\>button\]\:mr-\[-0\.4rem\] {
    &:has(>button) {
      margin-right: -0.4rem;
    }
  }
  .has-\[\>button\]\:ml-\[-0\.45rem\] {
    &:has(>button) {
      margin-left: -0.45rem;
    }
  }
  .has-\[\>kbd\]\:mr-\[-0\.35rem\] {
    &:has(>kbd) {
      margin-right: -0.35rem;
    }
  }
  .has-\[\>kbd\]\:ml-\[-0\.35rem\] {
    &:has(>kbd) {
      margin-left: -0.35rem;
    }
  }
  .has-\[\>svg\]\:p-0 {
    &:has(>svg) {
      padding: calc(var(--spacing) * 0);
    }
  }
  .has-\[\>svg\]\:px-2 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 2);
    }
  }
  .has-\[\>svg\]\:px-2\.5 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 2.5);
    }
  }
  .has-\[\>textarea\]\:h-auto {
    &:has(>textarea) {
      height: auto;
    }
  }
  .data-\[disabled\]\:pointer-events-none {
    &[data-disabled] {
      pointer-events: none;
    }
  }
  .data-\[disabled\]\:opacity-50 {
    &[data-disabled] {
      opacity: 50%;
    }
  }
  .data-\[invalid\=true\]\:text-destructive {
    &[data-invalid="true"] {
      color: var(--destructive);
    }
  }
  .data-\[placeholder\]\:text-muted-foreground {
    &[data-placeholder] {
      color: var(--muted-foreground);
    }
  }
  .data-\[side\=bottom\]\:translate-y-1 {
    &[data-side="bottom"] {
      --tw-translate-y: calc(var(--spacing) * 1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .data-\[side\=left\]\:-translate-x-1 {
    &[data-side="left"] {
      --tw-translate-x: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .data-\[side\=right\]\:translate-x-1 {
    &[data-side="right"] {
      --tw-translate-x: calc(var(--spacing) * 1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .data-\[side\=top\]\:-translate-y-1 {
    &[data-side="top"] {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .data-\[slot\=checkbox-group\]\:gap-3 {
    &[data-slot="checkbox-group"] {
      gap: calc(var(--spacing) * 3);
    }
  }
  .data-\[variant\=label\]\:text-sm {
    &[data-variant="label"] {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .data-\[variant\=legend\]\:text-base {
    &[data-variant="legend"] {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .nth-last-2\:-mt-1 {
    &:nth-last-child(2) {
      margin-top: calc(var(--spacing) * -1);
    }
  }
  .max-lg\:hidden {
    @media (width < 64rem) {
      display: none;
    }
  }
  .max-lg\:border-b {
    @media (width < 64rem) {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
    }
  }
  .max-md\:order-3 {
    @media (width < 48rem) {
      order: 3;
    }
  }
  .max-md\:w-full {
    @media (width < 48rem) {
      width: 100%;
    }
  }
  .md\:basis-1\/3 {
    @media (width >= 48rem) {
      flex-basis: calc(1/3 * 100%);
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:gap-5 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .md\:text-sm {
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .lg\:col-span-3 {
    @media (width >= 64rem) {
      grid-column: span 3 / span 3;
    }
  }
  .lg\:col-span-6 {
    @media (width >= 64rem) {
      grid-column: span 6 / span 6;
    }
  }
  .lg\:m-0 {
    @media (width >= 64rem) {
      margin: calc(var(--spacing) * 0);
    }
  }
  .lg\:hidden {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .lg\:w-2\/3 {
    @media (width >= 64rem) {
      width: calc(2/3 * 100%);
    }
  }
  .lg\:basis-20 {
    @media (width >= 64rem) {
      flex-basis: calc(var(--spacing) * 20);
    }
  }
  .lg\:basis-70 {
    @media (width >= 64rem) {
      flex-basis: calc(var(--spacing) * 70);
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:flex-col {
    @media (width >= 64rem) {
      flex-direction: column;
    }
  }
  .lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .lg\:gap-8 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .lg\:gap-15 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 15);
    }
  }
  .lg\:gap-20 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .lg\:border-r {
    @media (width >= 64rem) {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }
  }
  .lg\:border-l {
    @media (width >= 64rem) {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }
  }
  .lg\:bg-black\/40 {
    @media (width >= 64rem) {
      background-color: color-mix(in srgb, #000 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
      }
    }
  }
  .lg\:py-20 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 20);
    }
  }
  .lg\:pt-30 {
    @media (width >= 64rem) {
      padding-top: calc(var(--spacing) * 30);
    }
  }
  .lg\:pb-20 {
    @media (width >= 64rem) {
      padding-bottom: calc(var(--spacing) * 20);
    }
  }
  .xl\:size-50 {
    @media (width >= 80rem) {
      width: calc(var(--spacing) * 50);
      height: calc(var(--spacing) * 50);
    }
  }
  .xl\:size-60 {
    @media (width >= 80rem) {
      width: calc(var(--spacing) * 60);
      height: calc(var(--spacing) * 60);
    }
  }
  .xl\:w-1\/2 {
    @media (width >= 80rem) {
      width: calc(1/2 * 100%);
    }
  }
  .xl\:basis-1\/6 {
    @media (width >= 80rem) {
      flex-basis: calc(1/6 * 100%);
    }
  }
  .xl\:grid-cols-3 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-4 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .xl\:flex-row {
    @media (width >= 80rem) {
      flex-direction: row;
    }
  }
  .xl\:gap-20 {
    @media (width >= 80rem) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .xl\:py-25 {
    @media (width >= 80rem) {
      padding-block: calc(var(--spacing) * 25);
    }
  }
  .xl\:pt-35 {
    @media (width >= 80rem) {
      padding-top: calc(var(--spacing) * 35);
    }
  }
  .xl\:pb-25 {
    @media (width >= 80rem) {
      padding-bottom: calc(var(--spacing) * 25);
    }
  }
  .\32 xl\:grid-cols-3 {
    @media (width >= 96rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .\32 xl\:grid-cols-5 {
    @media (width >= 96rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .\32 xl\:grid-cols-6 {
    @media (width >= 96rem) {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .\@md\/field-group\:flex-row {
    @container field-group (width >= 28rem) {
      flex-direction: row;
    }
  }
  .\@md\/field-group\:items-center {
    @container field-group (width >= 28rem) {
      align-items: center;
    }
  }
  .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start {
    @container field-group (width >= 28rem) {
      &:has(>[data-slot=field-content]) {
        align-items: flex-start;
      }
    }
  }
  .dark\:bg-transparent {
    @media (prefers-color-scheme: dark) {
      background-color: transparent;
    }
  }
  .dark\:has-data-\[state\=checked\]\:bg-primary\/10 {
    @media (prefers-color-scheme: dark) {
      &:has(*[data-state="checked"]) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 10%, transparent);
        }
      }
    }
  }
  .dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40 {
    @media (prefers-color-scheme: dark) {
      &:has(*:is([data-slot][aria-invalid=true])) {
        --tw-ring-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
        }
      }
    }
  }
  .\[\&_\.listing-item\]\:bg-stone-50 {
    & .listing-item {
      background-color: var(--color-stone-50);
    }
  }
  .\[\&_li\]\:text-neutral-700 {
    & li {
      color: var(--color-neutral-700);
    }
  }
  .\[\&_p\]\:text-neutral-700 {
    & p {
      color: var(--color-neutral-700);
    }
  }
  .\[\&_svg\]\:pointer-events-none {
    & svg {
      pointer-events: none;
    }
  }
  .\[\&_svg\]\:size-4 {
    & svg {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .\[\&_svg\]\:size-8 {
    & svg {
      width: calc(var(--spacing) * 8);
      height: calc(var(--spacing) * 8);
    }
  }
  .\[\&_svg\]\:shrink-0 {
    & svg {
      flex-shrink: 0;
    }
  }
  .hover\:\[\&_svg\]\:text-white {
    &:hover {
      @media (hover: hover) {
        & svg {
          color: var(--color-white);
        }
      }
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .\[\&\.active\]\:visible {
    &.active {
      visibility: visible;
    }
  }
  .\[\&\.active\]\:opacity-100 {
    &.active {
      opacity: 100%;
    }
  }
  .\[\.border-b\]\:pb-3 {
    &:is(.border-b) {
      padding-bottom: calc(var(--spacing) * 3);
    }
  }
  .\[\.border-t\]\:pt-3 {
    &:is(.border-t) {
      padding-top: calc(var(--spacing) * 3);
    }
  }
  .\[\&\>\*\]\:w-full {
    &>* {
      width: 100%;
    }
  }
  .\@md\/field-group\:\[\&\>\*\]\:w-auto {
    @container field-group (width >= 28rem) {
      &>* {
        width: auto;
      }
    }
  }
  .\[\&\>\.sr-only\]\:w-auto {
    &>.sr-only {
      width: auto;
    }
  }
  .\[\&\>\[data-slot\=field-group\]\]\:gap-4 {
    &>[data-slot=field-group] {
      gap: calc(var(--spacing) * 4);
    }
  }
  .\[\&\>\[data-slot\=field-label\]\]\:flex-auto {
    &>[data-slot=field-label] {
      flex: auto;
    }
  }
  .\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto {
    @container field-group (width >= 28rem) {
      &>[data-slot=field-label] {
        flex: auto;
      }
    }
  }
  .\[\&\>\[data-slot\=field\]\]\:p-4 {
    &>[data-slot=field] {
      padding: calc(var(--spacing) * 4);
    }
  }
  .has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px {
    &:has(>[data-slot=field-content]) {
      &>[role=checkbox],[role=radio] {
        margin-top: 1px;
      }
    }
  }
  .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px {
    @container field-group (width >= 28rem) {
      &:has(>[data-slot=field-content]) {
        &>[role=checkbox],[role=radio] {
          margin-top: 1px;
        }
      }
    }
  }
  .\[\&\>a\]\:underline {
    &>a {
      text-decoration-line: underline;
    }
  }
  .\[\&\>a\]\:underline-offset-4 {
    &>a {
      text-underline-offset: 4px;
    }
  }
  .\[\&\>a\:hover\]\:text-primary {
    &>a:hover {
      color: var(--primary);
    }
  }
  .has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3 {
    &:has(>[data-align=block-end]) {
      &>input {
        padding-top: calc(var(--spacing) * 3);
      }
    }
  }
  .has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3 {
    &:has(>[data-align=block-start]) {
      &>input {
        padding-bottom: calc(var(--spacing) * 3);
      }
    }
  }
  .has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2 {
    &:has(>[data-align=inline-end]) {
      &>input {
        padding-right: calc(var(--spacing) * 2);
      }
    }
  }
  .has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2 {
    &:has(>[data-align=inline-start]) {
      &>input {
        padding-left: calc(var(--spacing) * 2);
      }
    }
  }
  .\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\] {
    &>kbd {
      border-radius: calc(var(--radius) - 5px);
    }
  }
  .\[\&\>span\]\:line-clamp-1 {
    &>span {
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
    }
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 {
    &>svg:not([class*='size-']) {
      width: calc(var(--spacing) * 3.5);
      height: calc(var(--spacing) * 3.5);
    }
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 {
    &>svg:not([class*='size-']) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5 {
    [data-variant=legend]+& {
      margin-top: calc(var(--spacing) * -1.5);
    }
  }
}
:root {
  --text-8xl: 4rem;
  --text-7xl: 3.5rem;
  --text-6xl: 3rem;
  --text-5xl: 2.5rem;
  --text-4xl: 2rem;
  --text-3xl: 1.75rem;
  --text-2xl: 1.5rem;
  --font-sans: "DM Sans", sans-serif;
  --font-serif: "Playfair Display", serif;
  --background: #F7F5F0;
  --foreground: #0F1117;
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.148 0.004 228.8);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.148 0.004 228.8);
  --primary: #C19A4A;
  --primary-foreground: oklch(0.97 0.014 254.604);
  --secondary: #0D3B2E;
  --secondary-foreground: oklch(0.21 0.006 285.885);
  --muted: #7E7891;
  --muted-foreground: oklch(0.56 0.021 213.5);
  --accent: var(--color-olive-100);
  --accent-foreground: oklch(0.218 0.008 223.9);
  --destructive: oklch(0.577 0.245 27.325);
  --border: #EAE5DF;
  --input: oklch(0.925 0.005 214.3);
  --ring: oklch(0.723 0.014 214.4);
  --radius: 0.625rem;
  --chart-1: oklch(0.808 0.114 19.571);
  --chart-2: oklch(0.637 0.237 25.331);
  --chart-3: oklch(0.577 0.245 27.325);
  --chart-4: oklch(0.505 0.213 27.518);
  --chart-5: oklch(0.444 0.177 26.899);
}
@layer base {
  * {
    border-color: var(--border);
    outline-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  html {
    font-family: var(--font-sans);
  }
  body {
    background-color: var(--background);
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--foreground);
  }
  h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-serif);
  }
  h1 {
    margin-bottom: calc(var(--spacing) * 4);
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    @media (width >= 64rem) {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }
  h2 {
    margin-bottom: calc(var(--spacing) * 4);
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
    --tw-leading: 1.3;
    line-height: 1.3;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    @media (width >= 64rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  h3 {
    margin-bottom: calc(var(--spacing) * 4);
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
    --tw-leading: 1.3;
    line-height: 1.3;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  h4 {
    margin-bottom: calc(var(--spacing) * 4);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-leading: 1.3;
    line-height: 1.3;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  h5 {
    margin-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  h6 {
    margin-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  p {
    margin-bottom: calc(var(--spacing) * 5);
  }
  a {
    color: var(--primary);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        color: var(--color-rose-700);
      }
    }
  }
  .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius);
    background-color: var(--primary);
    padding-inline: calc(var(--spacing) * 8);
    padding-block: calc(var(--spacing) * 3);
    text-align: center;
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--foreground) !important;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        background-color: #E8C97A;
      }
    }
  }
  .btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: calc(infinity * 1px);
    background-color: var(--foreground);
    padding-inline: calc(var(--spacing) * 8);
    padding-block: calc(var(--spacing) * 4);
    text-align: center;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--background);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--background);
      }
    }
  }
  .btn-accent {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius);
    background-color: var(--foreground);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    text-align: center;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--background) !important;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        background-color: #2C2F3A;
      }
    }
  }
  .container {
    margin-inline: auto;
    padding-inline: calc(var(--spacing) * 5);
    @media (width >= 96rem) {
      max-width: var(--container-7xl) !important;
    }
  }
  .site-header {
    position: relative;
    display: flex;
    align-items: center;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    background-color: var(--color-white);
    padding-block: calc(var(--spacing) * 2);
    & .container {
      height: 100%;
    }
  }
  .site-header-wrapper {
    position: sticky;
    top: calc(var(--spacing) * 0);
    z-index: 999;
  }
  .site-header-inner {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: space-between;
  }
  .site-header-logo {
    width: calc(var(--spacing) * 60);
  }
  .site-header-nav {
    display: flex;
    height: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 8);
  }
  .site-header-menu {
    margin-right: calc(var(--spacing) * -5);
    display: flex;
    height: 100%;
    gap: calc(var(--spacing) * 0);
  }
  .site-header-menu a {
    display: flex;
    height: 100%;
    align-items: center;
    border-radius: calc(var(--radius) * 0.6);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 2);
    color: var(--foreground);
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 15%, transparent);
        }
      }
    }
  }
  .footer {
    background-color: var(--color-neutral-950);
    padding-top: calc(var(--spacing) * 12);
  }
  .footer-widgets {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 8);
    padding-bottom: calc(var(--spacing) * 10);
    color: var(--color-neutral-200);
    @media (width >= 48rem) {
      justify-content: center;
    }
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 25);
    }
    @media (width >= 48rem) {
      text-align: center;
    }
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 40);
    }
    & a {
      color: var(--color-neutral-400);
    }
    & a {
      &:hover {
        @media (hover: hover) {
          color: var(--accent);
        }
      }
    }
  }
  .copyright {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-top-color: var(--border);
    @supports (color: color-mix(in lab, red, red)) {
      border-top-color: color-mix(in oklab, var(--border) 10%, transparent);
    }
    padding-block: calc(var(--spacing) * 6);
    text-align: center;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .section {
    position: relative;
    padding-block: calc(var(--spacing) * 10);
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 20);
    }
    @media (width >= 80rem) {
      padding-block: calc(var(--spacing) * 25);
    }
  }
  .section-banner {
    position: relative;
    overflow: hidden;
    background-color: var(--foreground);
    padding-block: calc(var(--spacing) * 15);
    color: var(--background);
    @media (width >= 64rem) {
      min-height: calc(var(--spacing) * 125);
    }
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 25);
    }
    @media (width >= 80rem) {
      padding-block: calc(var(--spacing) * 35);
    }
  }
  .section-inner {
    position: relative;
    z-index: 2;
    display: flex;
    height: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .section-overlay {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    z-index: 1;
    background-color: var(--foreground);
  }
  .section-header {
    margin-inline: auto;
    margin-bottom: calc(var(--spacing) * 6);
    max-width: var(--container-4xl);
    text-align: center;
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .section-listing {
    position: relative;
    padding-top: calc(var(--spacing) * 10);
    @media (width >= 64rem) {
      padding-top: calc(var(--spacing) * 20);
    }
    @media (width >= 80rem) {
      padding-top: calc(var(--spacing) * 25);
    }
  }
  .listing-nav {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .listing-nav-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: calc(var(--spacing) * 4);
  }
  .listing-nav-button,
    .listing-nav-link {
    flex-basis: calc(1/3 * 100%);
    cursor: pointer;
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 5);
    text-align: center;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-black);
    text-transform: uppercase;
    @media (width >= 64rem) {
      flex-basis: calc(1/6 * 100%);
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-stone-100);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-black);
      }
    }
    &.active {
      border-color: var(--primary);
    }
    &.active {
      background-color: var(--primary);
    }
    &.active {
      color: var(--color-white);
    }
  }
  .listing-grid-inner {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: calc(var(--spacing) * 4);
  }
  .listing-item {
    display: flex;
    flex-direction: column;
    border-radius: calc(var(--radius) * 1.4);
    border-style: var(--tw-border-style);
    border-width: 1px;
    background-color: var(--color-white);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .listing-item-header {
    padding-inline: calc(var(--spacing) * 6);
    padding-top: calc(var(--spacing) * 4);
    padding-bottom: calc(var(--spacing) * 4);
  }
  .listing-item-body {
    display: block;
    padding-inline: calc(var(--spacing) * 6);
    padding-bottom: calc(var(--spacing) * 4);
  }
  .listing-item-footer {
    margin-top: auto;
    padding-inline: calc(var(--spacing) * 6);
    padding-top: calc(var(--spacing) * 4);
    padding-bottom: calc(var(--spacing) * 6);
  }
  .listing-item-features {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    &>div {
      border-radius: calc(var(--radius) * 0.8);
    }
    &>div {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
    &>div {
      background-color: #EFECE5;
    }
    &>div {
      padding-inline: calc(var(--spacing) * 3);
    }
    &>div {
      padding-block: calc(var(--spacing) * 1);
    }
  }
  .listing-item-rating {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    border-radius: calc(var(--radius) * 0.6);
    border-style: var(--tw-border-style);
    border-width: 1px;
    background-color: var(--color-stone-50);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-yellow-600);
    & svg {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .listing-wide .listing-item {
    height: auto;
  }
  .listing-wide .listing-item-body {
    display: block;
    padding-inline: calc(var(--spacing) * 6);
    padding-bottom: calc(var(--spacing) * 4);
  }
  .listing-wide .listing-item-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--spacing) * 4);
    @media (width >= 48rem) {
      flex-direction: row;
    }
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  .listing-wide .listing-nav-button,
    .listing-wide .listing-nav-link {
    @media (width >= 64rem) {
      flex-basis: calc(1/5 * 100%);
    }
  }
  .card {
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 4);
    --tw-drop-shadow-size: drop-shadow(0 1px 1px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.05)));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-xs));
    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,);
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .faq-item {
    overflow: hidden;
    border-radius: calc(var(--radius) * 0.8);
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .faq-item-title {
    display: flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 4);
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 4);
    text-align: left;
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 15%, transparent);
        }
      }
    }
    @media (width >= 64rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
    &.active svg {
      rotate: 180deg;
    }
  }
  .faq-item-content {
    display: none;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 4);
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-x {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pinch-zoom {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-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;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@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-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-pan-x: initial;
      --tw-pan-y: initial;
      --tw-pinch-zoom: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
    }
  }
}

/* Six category tabs on location pages */
.listing-nav-inner {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.listing-nav-inner .listing-nav-link {
    width: 100%;
    min-width: 0;
    padding: 14px 10px;
}

@media (min-width: 768px) {
    .listing-nav-inner {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .listing-nav-inner {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}
/* Shared styles for FreeChatLinesGuide editorial ranking pages. */
.ranking-page {
    --ranking-ink: var(--foreground, #0f1117);
    --ranking-dark: #16151a;
    --ranking-gold: var(--primary, #c19a4a);
    --ranking-gold-deep: #9b7525;
    --ranking-bg: var(--background, #f7f5f0);
    --ranking-card: #fff;
    --ranking-muted: #615a4f;
    --ranking-line: var(--border, #eae5df);
    --ranking-tag-bg: #f2e9d6;
    --ranking-tag-ink: #765915;
    overflow: hidden;
    background: var(--ranking-bg);
    color: var(--ranking-ink);
    font-family: var(--font-sans, "DM Sans", sans-serif);
    line-height: 1.6;
}

.ranking-page *,
.ranking-page *::before,
.ranking-page *::after {
    box-sizing: border-box;
}

.ranking-page h1,
.ranking-page h2,
.ranking-page h3,
.ranking-page p {
    margin: 0;
}

.ranking-page h1,
.ranking-page h2,
.ranking-page h3,
.ranking-number {
    font-family: var(--font-serif, "Playfair Display", Georgia, serif);
}

.ranking-page a {
    text-decoration: none;
}

.ranking-wrap {
    width: 100%;
    max-width: 1010px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 22px;
    padding-left: 22px;
}

.ranking-hero {
    padding: 66px 0 62px;
    background: var(--ranking-dark);
    color: #f3efe6;
    text-align: center;
}

.ranking-eyebrow {
    margin-bottom: 18px;
    color: var(--ranking-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.ranking-hero h1 {
    margin: 0 auto 18px;
    color: #fff;
    font-size: clamp(34px, 6vw, 54px);
    font-weight: 600;
    line-height: 1.08;
}

.ranking-hero p {
    max-width: 610px;
    margin: 0 auto;
    color: #c3bdb1;
    font-size: 17px;
}

.ranking-btn {
    display: inline-block;
    margin-top: 24px;
    padding: 11px 20px;
    border-radius: 8px;
    background: var(--ranking-gold);
    color: #1c1a13 !important;
    font-size: 15px;
    font-weight: 700;
    transition: background-color .18s ease, transform .18s ease;
}

.ranking-btn:hover {
    background: #d8b25d;
    color: #1c1a13 !important;
    transform: translateY(-1px);
}

.ranking-btn:focus-visible,
.ranking-call a:focus-visible,
.ranking-cta a:focus-visible {
    outline: 3px solid rgb(193 154 74 / 50%);
    outline-offset: 2px;
}

.ranking-intro {
    max-width: 740px;
    margin: 46px auto 40px;
    text-align: center;
}

.ranking-intro p {
    margin-bottom: 14px;
    color: var(--ranking-muted);
    font-size: 16.5px;
}

.ranking-intro a {
    color: var(--ranking-gold-deep);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.ranking-lines-section {
    scroll-margin-top: 90px;
}

.ranking-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.ranking-row {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 24px;
    border: 1px solid var(--ranking-line);
    border-radius: 14px;
    background: var(--ranking-card);
    transition: box-shadow .18s ease, transform .18s ease;
}

.ranking-row:hover {
    box-shadow: 0 12px 30px rgb(29 26 21 / 9%);
    transform: translateY(-2px);
}

.ranking-number {
    min-width: 32px;
    color: var(--ranking-gold-deep);
    font-size: 26px;
    font-weight: 700;
    text-align: center;
}

.ranking-logo {
    display: flex;
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--ranking-line);
    border-radius: 12px;
    background: #fff;
}

.ranking-logo img {
    width: auto;
    max-width: 48px;
    height: auto;
    max-height: 48px;
    object-fit: contain;
}

.ranking-content {
    min-width: 0;
    flex: 1;
}

.ranking-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.ranking-heading h2 {
    color: var(--ranking-ink);
    font-size: 21px;
    font-weight: 600;
    line-height: 1.3;
}

.ranking-rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--ranking-ink);
    font-size: 13.5px;
    font-weight: 700;
}

.ranking-rating > span {
    color: var(--ranking-gold);
}

.ranking-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 5px 0 8px;
}

.ranking-tags span {
    padding: 3px 9px;
    border-radius: 6px;
    background: var(--ranking-tag-bg);
    color: var(--ranking-tag-ink);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.5;
    text-transform: uppercase;
}

.ranking-content p {
    color: var(--ranking-muted);
    font-size: 14.5px;
}

.ranking-call {
    display: flex;
    flex-shrink: 0;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
    text-align: right;
}

.ranking-call a {
    padding: 11px 18px;
    border-radius: 8px;
    background: var(--ranking-gold);
    color: #1c1a13 !important;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    white-space: nowrap;
    transition: background-color .18s ease;
}

.ranking-call a:hover {
    background: #d8b25d;
    color: #1c1a13 !important;
}

.ranking-call > span {
    color: var(--ranking-muted);
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.ranking-explainer {
    margin: 50px 0 8px;
    padding: 32px;
    border: 1px solid var(--ranking-line);
    border-radius: 16px;
    background: var(--ranking-card);
}

.ranking-explainer h2 {
    margin-bottom: 10px;
    color: var(--ranking-ink);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
}

.ranking-explainer p {
    max-width: 770px;
    color: var(--ranking-muted);
    font-size: 15.5px;
}

.ranking-explainer strong {
    color: var(--ranking-ink);
}

.ranking-cta {
    margin: 52px 0;
    padding: 46px 26px;
    border-radius: 18px;
    background: var(--ranking-gold);
    color: #1c1a13;
    text-align: center;
}

.ranking-cta h2 {
    margin-bottom: 10px;
    color: #1c1a13;
    font-size: clamp(26px, 4vw, 34px);
    font-weight: 600;
    line-height: 1.3;
}

.ranking-cta p {
    max-width: 540px;
    margin: 0 auto 22px;
    color: #3d3413;
    font-size: 16px;
}

.ranking-cta a {
    display: inline-block;
    padding: 13px 26px;
    border-radius: 8px;
    background: var(--ranking-dark);
    color: #fff !important;
    font-weight: 700;
    transition: transform .18s ease;
}

.ranking-cta a:hover {
    color: #fff !important;
    transform: translateY(-2px);
}

@media (max-width: 720px) {
    .ranking-hero {
        padding: 46px 0 44px;
    }

    .ranking-row {
        flex-wrap: wrap;
        gap: 14px;
        padding: 18px;
    }

    .ranking-logo {
        width: 48px;
        height: 48px;
    }

    .ranking-logo img {
        max-width: 38px;
        max-height: 38px;
    }

    .ranking-number {
        min-width: 26px;
        font-size: 22px;
    }

    .ranking-call {
        width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        text-align: left;
    }
}

@media (max-width: 520px) {
    .ranking-wrap {
        padding-right: 16px;
        padding-left: 16px;
    }

    .ranking-intro {
        margin-top: 36px;
        margin-bottom: 32px;
    }

    .ranking-intro p {
        font-size: 15.5px;
    }

    .ranking-row {
        align-items: flex-start;
    }

    .ranking-content {
        flex-basis: calc(100% - 102px);
    }

    .ranking-call {
        flex-direction: column;
        align-items: stretch;
        gap: 7px;
        text-align: center;
    }

    .ranking-call a {
        display: block;
        text-align: center;
    }

    .ranking-call > span {
        white-space: normal;
    }

    .ranking-explainer {
        padding: 24px 20px;
    }

    .ranking-cta {
        margin-top: 40px;
        margin-bottom: 40px;
        padding: 36px 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ranking-page *,
    .ranking-page *::before,
    .ranking-page *::after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}

/* New design: homepage. Loaded only by Views/pages/home.php (layout/layout-new). */
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}header{top:env(safe-area-inset-top,0px)}
:root{--ink:#0F1117;--ink2:#1A1C24;--gray:#F3EFE6;--paper:#fff;--line:#EAE5DF;--mute:#6B6559;--blue:#8F6F1E;--band:#F4ECD6;--green:#FFFFFF;--gold:#C19A4A;--goldd:#8F6F1E;--teal:#15803D}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#FBF9F5;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);line-height:1.55;font-size:15px}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
h1,h2,h3{font-family:'Playfair Display',Georgia,'Times New Roman',serif;letter-spacing:-.02em;line-height:1.15;margin:0;font-weight:700}
h1{font-size:clamp(34px,4vw,44px)}h2{font-size:clamp(26px,2.6vw,32px)}h3{font-size:20px}
p{margin:0}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.util{background:var(--ink);color:#fff;font-size:13px}.util .wrap{height:40px;display:flex;align-items:center;justify-content:flex-end;gap:24px}.util a{color:#fff}.util a.pill{border:1px solid #fff;padding:5px 14px;border-radius:999px;font-weight:600}.util a.pill:hover{background:#fff;color:var(--ink);text-decoration:none}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}header .wrap{height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:800;font-size:22px;letter-spacing:-.03em}.logo:hover{text-decoration:none}.logo i{width:30px;height:30px;border-radius:8px;background:var(--gold);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:15px;font-weight:800}.logo b{color:var(--goldd)}
nav{display:flex;gap:26px;font-size:14px;font-weight:600;flex-wrap:wrap}nav a{color:var(--ink)}nav a:hover,nav a.on{color:var(--blue);text-decoration:none}
.strip{background:var(--band);font-size:14px}.strip .wrap{padding:14px 24px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.strip .ic{width:34px;height:34px;border-radius:8px;background:#fff;border:1px solid #E6D7B3;display:flex;align-items:center;justify-content:center;flex-shrink:0}.strip .t{flex:1;min-width:260px}.strip strong{display:block;font-size:15px}.strip .muted{color:#5A5446;font-size:13px}.tag{display:none}
section{padding:72px 0}section.alt{background:var(--paper)}section.gray{background:var(--gray)}section.band{background:var(--band)}section.green{background:var(--green)}section.dark{background:var(--ink);color:#fff}
.lead{font-size:17px;color:var(--mute);margin-top:14px;max-width:720px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 22px;border-radius:6px;background:var(--gold);color:#fff;font-weight:700;font-size:15px;border:0;cursor:pointer;font-family:inherit}.btn:hover{background:#A9853A;text-decoration:none;color:#fff}.btn.dark{background:var(--ink);color:#fff !important;}.btn.dark:hover{background:#2A2D38;color:#fff !important;}.btn.ghost{background:#fff;border:1.5px solid var(--ink);color:var(--ink)}.btn.ghost:hover{background:var(--gray)}.btn.sm{height:40px;font-size:14px;padding:0 14px}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px}.muted{color:var(--mute)}.small{font-size:14px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:1px;color:var(--mute);text-transform:uppercase}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.chip{font-size:13px;font-weight:500;border:1px solid var(--line);background:#fff;padding:8px 12px;border-radius:4px;color:var(--ink);display:inline-flex;align-items:center;gap:7px}.chip:hover{border-color:var(--ink);text-decoration:none}.chip:before{content:'';width:12px;height:12px;border:2px solid #B8912E;border-radius:50%;box-sizing:border-box}
.badge{display:inline-flex;align-items:center;gap:8px;background:var(--teal);color:#fff;font-weight:600;font-size:13px;padding:6px 12px;border-radius:999px}
/* hero */
.hero{background:var(--gray);padding:64px 0 72px}.hero .wrap{display:grid;grid-template-columns:1.25fr .9fr;gap:56px;align-items:center}
.toggle{display:inline-flex;border:1.5px solid var(--ink);border-radius:999px;padding:3px;margin:22px 0 16px;background:#fff}.toggle button{font:inherit;font-size:14px;font-weight:600;border:0;background:transparent;padding:8px 18px;border-radius:999px;cursor:pointer;color:var(--ink)}.toggle button.on{background:var(--ink);color:#fff}
.matcher{display:flex;flex-direction:column;gap:12px;padding:0;border:0;background:transparent}.seg{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.matcher .hint{font-size:13px;color:var(--mute);font-weight:500}
.fields{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}label.f{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--mute)}select,input,textarea{height:48px;border:1px solid #DDD5C5;border-radius:6px;padding:0 14px;font:inherit;font-size:15px;color:var(--ink);background:#fff;width:100%}select:focus,input:focus,textarea:focus{outline:2px solid var(--gold);border-color:var(--gold)}textarea{height:140px;padding:12px 14px}
.stack3{position:relative;height:320px;touch-action:pan-y;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none}.fcard{position:absolute;inset:0;background:#fff;color:var(--ink);border-radius:10px;padding:24px;display:flex;flex-direction:column;gap:12px;transition:transform .5s ease,opacity .5s;box-shadow:0 8px 28px rgba(15,17,23,.12);opacity:0;transform:translateY(30px) scale(.94);border:1px solid var(--line)}
.fcard.p0{opacity:1;transform:none;z-index:3}.fcard.p1{opacity:1;transform:translate(18px,-18px) scale(.96);z-index:2}.fcard.p2{opacity:1;transform:translate(36px,-36px) scale(.92);z-index:1}
.fcard .ft{display:flex;justify-content:space-between;align-items:center}.fcard .ft b{font-size:11px;letter-spacing:1px;color:var(--goldd)}.fcard .ft span{font-size:12px;font-weight:600;color:var(--blue);background:var(--band);padding:4px 10px;border-radius:4px}
.fcard h3{font-size:24px}.stars{display:flex;gap:2px;align-items:center}.stars em{font-style:normal;font-weight:700;margin-left:8px;font-size:14px}.fcard p{color:var(--mute);font-size:14px;flex:1}
.terms{display:grid;grid-template-columns:1fr 1fr;gap:8px}.terms div{background:var(--gray);border-radius:6px;padding:10px 12px}.terms small{display:block;font-size:11px;color:var(--mute)}.terms b{font-size:14px}.terms .free{color:var(--teal)}
.dots{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:18px}.dots .d{display:flex;gap:6px}.dots .d button{width:8px;height:8px;border-radius:50%;border:0;background:#D6CDB8;cursor:pointer;padding:0}.dots .d button.on{background:var(--ink);width:22px;border-radius:4px}.dots .nav button{background:#fff;border:1px solid var(--line);color:var(--ink);width:36px;height:36px;border-radius:6px;cursor:pointer;font-size:18px;margin-left:6px}
.sechead{margin-bottom:32px}.sechead p{font-size:15px;color:var(--mute);margin-top:8px;max-width:760px}.dark .sechead p{color:#BDB7AA}.sechead.row2{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.center{text-align:center}.center p{margin-left:auto;margin-right:auto}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid6{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.cat{display:flex;flex-direction:column;gap:14px;padding:26px 28px}.cat .h{display:flex;align-items:center;gap:12px}.cat .h i{width:36px;height:36px;border-radius:6px;background:var(--band);color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;font-style:normal}.cat .h a{font-weight:700;font-size:19px;color:var(--ink)}.cat .cnt{display:none}.cat ul{list-style:none;margin:0;padding:0 0 0 48px;display:flex;flex-direction:column;gap:10px;font-size:14px}.cat ul a{color:var(--blue)}
.more{text-align:right;margin-top:16px;font-size:14px;font-weight:600}
.split{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;align-items:center}.split .art{background:#fff;border:1px solid #E6D7B3;border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:10px;max-width:340px}.split .art div{background:var(--gray);border-radius:4px;padding:8px 10px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:8px}.split .art div:before{content:'';width:8px;height:8px;border-radius:50%;background:#E8C97A}.split .art .cta{background:var(--gold);color:#fff;justify-content:center}.split .art .cta:before{display:none}.split h3{font-size:24px}.split p{color:#3A362C;margin-top:8px}.split .pw{font-size:12px;font-weight:700;color:var(--blue);margin-bottom:8px}
.step{background:var(--ink);color:#fff;border-radius:8px;padding:30px 30px 0;display:flex;flex-direction:column;gap:10px;overflow:hidden;min-height:340px}.step .eyebrow{color:#E8C97A;text-transform:none;letter-spacing:0;font-size:14px}.step h3{font-size:22px}.step p{color:#C9C3B6;font-size:14px}.step .tags{display:none}.step .mock{margin-top:auto;background:#fff;border-radius:8px 8px 0 0;padding:14px;color:var(--ink);display:flex;flex-direction:column;gap:8px;height:120px;overflow:hidden}.mock div{height:12px;border-radius:3px;background:#EEE8DA}.mock div.w{width:70%}.mock div.s{width:45%}.mock div.g{background:#E8C97A;width:30%;height:10px}.mock div.f{background:var(--band);height:28px;display:flex;align-items:center;padding:0 10px;font-size:12px;font-weight:600;color:var(--blue)}.mock div.st{background:none;height:auto;font-size:12px;font-weight:700;color:#C19A4A}
.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button,.filters .chip{font:inherit;font-size:13px;font-weight:600;border:1px solid var(--line);background:#fff;padding:8px 14px;border-radius:4px;cursor:pointer;color:var(--ink)}.filters button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.tbl{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.row{display:grid;grid-template-columns:48px 2.2fr 1fr 1.2fr 1.2fr .7fr 170px;gap:14px;align-items:center;padding:16px 22px;border-top:1px solid var(--line)}.row:hover{background:#FBF9F4}.row.head{background:var(--gray);border:0;font-size:11px;font-weight:700;letter-spacing:.6px;color:var(--mute);padding:12px 22px}.row .rk{font-weight:700;font-size:15px;color:var(--mute)}.row .nm b{display:block;font-size:15px}.row .nm span{font-size:13px;color:var(--mute)}.free{color:var(--teal);font-weight:700}.row .btn{width:100%}
.line{background:#fff;border:1px solid var(--line);border-radius:8px;padding:26px;display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:start}.line .rk{font-weight:800;font-size:26px;color:var(--mute);width:40px}.line h3 span{font-size:13px;font-weight:700;color:var(--goldd);margin-left:10px}.line .meta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.line .meta span{font-size:12px;font-weight:600;background:var(--gray);padding:5px 10px;border-radius:4px}.line .meta span.free{background:#E6F2E8;color:var(--teal)}.line .cta{display:flex;flex-direction:column;gap:8px;align-items:stretch;min-width:180px}.line .cta small{text-align:center;color:var(--mute);font-size:12px}
.cities a{border:1px solid var(--line);border-radius:6px;padding:14px 16px;font-weight:600;font-size:14px;display:flex;justify-content:space-between;align-items:center;background:#fff;color:var(--ink)}.cities a small{font-weight:500;color:var(--mute);margin-left:6px}.cities a:after{content:'A';color:var(--mute);font-size:18px;margin-left:auto}.cities a:hover{border-color:var(--blue);text-decoration:none}
.crit{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px}.crit b{display:block;font-size:16px;margin-bottom:6px}
.reviewsec .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}.review{display:flex;flex-direction:column;gap:16px}.review h2{font-size:30px}.review p{color:var(--mute);max-width:480px}.hexart{height:300px;background:var(--gray);border-radius:8px;position:relative;overflow:hidden}
.listedsec{background:var(--ink);color:#fff;padding:80px 0}.listed{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center}.listed .eyebrow{color:#E8C97A;text-transform:none;letter-spacing:0;font-size:14px}.listed h2{font-size:32px;margin:10px 0 14px}.listed p{color:#C9C3B6;max-width:520px}.listed .sub{margin-top:18px;font-size:14px;color:#C9C3B6}.listed .sub b{color:#fff}.hexdark{height:280px;border-radius:8px;position:relative;overflow:hidden;background:#1A1C24}
.faq .card b{display:block;font-size:16px;margin-bottom:8px}.faq .card p{font-size:14px;color:var(--mute)}
footer{background:#fff;color:var(--ink);padding:56px 0 28px;border-top:1px solid var(--line)}footer .cols{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}footer b{display:block;color:var(--ink);margin-bottom:12px;font-size:14px}footer a{display:block;color:var(--mute);font-size:14px;margin-bottom:9px}footer .bot{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px;flex-wrap:wrap;gap:12px;color:var(--mute)}footer .bot a{display:inline;margin:0 0 0 20px}
.page{padding:56px 0 20px;background:var(--gray)}.page .lead{max-width:760px}.crumbs{font-size:13px;color:var(--mute);margin-bottom:14px}.crumbs a{color:var(--mute)}
.prose{max-width:760px;font-size:16px;color:#2A2720}.prose p{margin-bottom:16px}.prose h2{margin:40px 0 14px;font-size:26px}.prose h3{margin:26px 0 8px}.prose ul,.prose ol{padding-left:22px;margin:0 0 16px}.prose li{margin-bottom:6px}
.who{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.who div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px;font-size:14px;font-weight:600}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.steps div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px}.steps i{display:block;font-style:normal;font-weight:800;color:#C19A4A;font-size:26px;margin-bottom:6px}.steps b{display:block;font-size:16px;margin-bottom:6px}.steps p{font-size:14px;color:var(--mute)}
.stack{display:flex;flex-direction:column;gap:14px}.hours{display:inline-flex;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;padding:9px 14px;font-weight:600;margin-top:18px;font-size:14px}.hours span{color:var(--blue)}
.form{display:flex;flex-direction:column;gap:14px;max-width:640px}.ok{display:none;background:#E6F2E8;border-radius:6px;padding:18px;color:var(--teal);font-weight:600}
.modal{position:fixed;inset:0;background:rgba(15,17,23,.6);display:none;align-items:center;justify-content:center;z-index:50;padding:20px}.modal.on{display:flex}.mbox{background:#fff;border-radius:10px;width:min(720px,100%);max-height:90vh;overflow:auto;padding:32px;position:relative}.mbox .x{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:6px;border:1px solid var(--line);background:#fff;font-size:20px;cursor:pointer}
.mline{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px 18px;margin-top:10px}.mline .t{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.mline .t b{font-size:16px}.mline .t em{font-style:normal;font-weight:700;color:var(--goldd);margin-left:8px}.mline .meta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.mline .meta span{font-size:12px;font-weight:600;background:var(--gray);padding:4px 9px;border-radius:4px}.mline .meta span.free{background:#E6F2E8;color:var(--teal)}.mline .morex{display:none;font-size:14px;color:var(--mute);margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}.mline.open .morex{display:block}.mline .dt{background:none;border:0;color:var(--blue);font:inherit;font-weight:600;cursor:pointer;padding:0;font-size:13px}
.mfoot{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
@media(max-width:960px){.hero .wrap,.grid3,.grid2,.who,footer .cols,.split,.reviewsec .wrap,.listed{grid-template-columns:1fr}.grid6{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.fields{grid-template-columns:1fr}.row{grid-template-columns:1fr 1fr;padding:14px}.row.head{display:none}.row .btn{grid-column:1/-1}.line{grid-template-columns:auto 1fr}.line .cta{grid-column:1/-1}.util .wrap{justify-content:center;gap:14px}section{padding:52px 0}}
@media(max-width:960px){.util .wrap{height:auto;padding:8px 16px;flex-wrap:wrap;gap:10px 16px;font-size:12px}header .wrap{height:auto;padding:12px 16px;flex-wrap:wrap;gap:10px}nav{flex-wrap:nowrap;overflow-x:auto;width:100%;gap:20px;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}nav::-webkit-scrollbar{display:none}nav a{white-space:nowrap}.wrap{padding:0 16px}.fcard.p1{transform:translate(8px,-8px) scale(.97)}.fcard.p2{transform:translate(16px,-16px) scale(.94)}.stack3{margin-right:16px}html,body{overflow-x:clip}}

/* ---- FCLG brand refresh: font, colour, logo and imagery from the live FreeChatLinesGuide site ---- */
body{font-family:'DM Sans',system-ui,sans-serif}
h1,h2,h3{font-family:'Playfair Display',Georgia,'Times New Roman',serif;letter-spacing:-.01em;font-weight:700}
.kf b,.steps i,.line .rk{font-family:'Playfair Display',Georgia,'Times New Roman',serif}
.logo img{display:block;height:34px;width:auto}
.btn{color:var(--ink)}.btn:hover{color:var(--ink)}.btn.dark,.btn.dark:hover{color:#fff !important;}.btn.ghost,.btn.ghost:hover{color:var(--ink)}
.split .art .cta{color:var(--ink)}
.util a.pill:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
/* hero: dark with banner photo, like the live homepage */
.hero{background:linear-gradient(90deg,var(--ink) 0%,var(--ink) 40%,rgba(15,17,23,.78) 68%,rgba(15,17,23,.5) 100%),url(../images/FreeChatLinesGuide_Banner_Couple8.webp) right center/cover no-repeat;color:#fff}
.hero h1{color:#fff}
.hero label.f,.hero .matcher .hint,.hero .eyebrow{color:#C9C3B6}
.hero .toggle{border-color:rgba(255,255,255,.4)}
.hero .chip{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.25)}.hero .chip:hover{border-color:var(--gold)}
.hero .dots .d button{background:rgba(255,255,255,.35)}.hero .dots .d button.on{background:var(--gold)}
.fcard{box-shadow:0 18px 40px rgba(0,0,0,.35)}
.fcard .fhd{display:flex;align-items:center;gap:14px}/* logo row adds height */.stack3{height:350px}.fcard .fhd img{width:48px;height:48px;border-radius:10px;object-fit:cover;border:1px solid var(--line);flex-shrink:0}
/* brand logos */
.nm{display:grid;grid-template-columns:48px 1fr;column-gap:14px;align-items:center}.nm img{grid-row:1/span 2;width:48px;height:48px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
.phead .mark{background:#fff;border:1px solid var(--line);overflow:hidden;padding:0}.phead .mark img{width:100%;height:100%;object-fit:cover;display:block}
.sim a{display:grid;grid-template-columns:48px 1fr;column-gap:12px;row-gap:2px;align-items:center}.sim a img{grid-row:1/span 2;width:48px;height:48px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
/* category cards use the live category photos */
.cat .h img,.cat .h i{width:44px;height:44px;border-radius:50%;flex-shrink:0}.cat .h img{object-fit:cover;display:block}.cat .h i{background:var(--band);color:var(--goldd)}.cat ul{padding-left:56px}
.hexart,.hexdark{background:var(--gray)}.hexart img,.hexdark img{width:100%;height:100%;object-fit:cover;display:block}.hexart{height:340px}.hexdark{height:300px}
.cities a:after{content:'';width:18px;height:18px;flex-shrink:0;margin-left:10px;background:var(--gold);-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%2021s-7-6.2-7-11a7%207%200%200%201%2014%200c0%204.8-7%2011-7%2011z%27/%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2710%27%20r%3D%272.5%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%2021s-7-6.2-7-11a7%207%200%200%201%2014%200c0%204.8-7%2011-7%2011z%27/%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2710%27%20r%3D%272.5%27/%3E%3C/svg%3E") center/contain no-repeat}
.cities a:hover{border-color:var(--gold)}
.listed .eyebrow,.step .eyebrow{color:#E8C97A}
.vb{color:var(--teal)}
/* footer: dark, like the live site */
footer{background:#0A0A0A;color:#C9C3B6;border-top:0}footer b{color:#fff;font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-size:17px;font-weight:700}
footer a{color:#BDB7AA}footer a:hover{color:var(--gold);text-decoration:none}footer .small{color:#BDB7AA}
footer .bot{border-top-color:#26231C;color:#9A9384}footer .bot a{color:#BDB7AA}
footer .logo img{height:30px}
@media(max-width:960px){.hero{background:linear-gradient(180deg,rgba(15,17,23,.94),rgba(15,17,23,.82)),url(../images/FreeChatLinesGuide_Banner_Couple8.webp) center/cover no-repeat}.logo img{height:28px}.hexart,.hexdark{height:240px}}
.blink{color:inherit;text-decoration:none}.blink:hover{text-decoration:underline;text-underline-offset:3px}a.lg{display:block;line-height:0;flex-shrink:0}.nm>a.lg{grid-row:1/span 2}
.mline .t>div{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.mline .t>div em{margin-left:0}.mline .lb{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.3px;padding:3px 8px;border-radius:4px;background:var(--band);color:var(--goldd);line-height:1.4}.mline .lb.dark{background:var(--ink);color:#fff}.showall{margin-top:12px;width:100%}
.fcol{min-width:0}.ffind{background:#fff;border:1px solid #E6D7B3;border-radius:12px;padding:20px;display:block}.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}.fld{display:flex;flex-direction:column;gap:6px;min-width:0}.fld.full{grid-column:1/-1}.ffind label.f{margin:0;font-size:13px;font-weight:500;color:#5B5648}.ffind select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%230F1117' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 16px center;padding-right:40px;border-color:#E6D7B3;font-size:16px}.ffind .btn{width:100%;margin-top:12px;height:46px}.fres{margin-top:24px}.fres h3{font-size:20px;margin-bottom:10px;scroll-margin-top:110px;outline:none}.frow{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:8px}.frow .nm2{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.frow .nm2 b{font-size:16px}.frow p{font-size:13px;color:var(--mute);margin-top:4px}.fcall{flex-shrink:0;height:38px;padding:0 16px}.fpill{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--band);color:var(--goldd);line-height:1.4}.fpill.navy{background:#1E2640;color:#fff}.fmore{display:block;width:100%;text-align:left;margin-top:8px;background:#FAF6EC;border:1px solid var(--line);border-radius:8px;padding:14px 16px;font:inherit;cursor:pointer}.fmore b{display:block;font-size:15px;color:#6B665A}.fmore span{display:block;font-size:12px;color:#A39E91;margin-top:4px}.fmore:hover{border-color:var(--gold)}@media(max-width:600px){.fgrid{grid-template-columns:1fr}}
.lbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:42px;padding:0 18px;background:#fff;color:#0F1117;border:1.5px solid #0F1117;border-radius:6px;font-family:inherit;font-size:14px;font-weight:700;line-height:1;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}.lbtn .arr{font-weight:400;transition:transform .15s}.lbtn:hover,.lbtn:active,.lbtn:focus-visible{background:#0F1117;color:#fff;text-decoration:none}.lbtn:hover .arr{transform:translateX(2px)}.lbtn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.lsec{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px}.lsec>*{grid-column:1/-1}.lsec>.sechead{grid-column:1;grid-row:1}.lsec>.lbtn.top{grid-column:2;grid-row:1;align-self:start;margin-top:2px}.lmore{margin-top:20px}.lunder{margin-top:18px}@media(max-width:600px){.lbtn{display:flex;width:100%;height:48px;white-space:normal;text-align:center}.lmore{text-align:left}.lsec{grid-template-columns:1fr}.lsec>.lbtn.top{grid-column:1;grid-row:auto;order:99;margin-top:20px}}
.split.ttband{grid-template-columns:auto 1fr auto;align-items:center}@media(max-width:960px){.split.ttband{grid-template-columns:1fr;gap:12px}}

/* wide brand logos */
.fhd img.wlogo{width:132px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
.fcard .fhd{flex-wrap:wrap;gap:10px 14px}@media(max-width:600px){.fhd img.wlogo{width:108px;height:36px}.fcard h3{font-size:20px}.stack3{height:370px}}
.row{grid-template-columns:36px 3fr 1fr 1.1fr 1.1fr .6fr 170px}
.nm{grid-template-columns:120px 1fr}
.nm img.wlogo{width:120px;height:40px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
.rchips{display:contents}.ml{display:none}
/* ranking table: one card per chat line on phones */
@media(max-width:960px){
.tbl{background:transparent;border:0;border-radius:0;overflow:visible;display:grid;gap:12px}
.tbl .row{background:#fff;border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr auto;grid-template-areas:"nm rk" "ch ch" "bt bt";gap:12px;padding:16px;align-items:start}
.tbl .row:hover{background:#fff}
.tbl .row .rk{grid-area:rk;width:auto;font-family:inherit;font-size:13px;font-weight:700;color:var(--ink);background:var(--gray);border-radius:999px;padding:4px 10px;line-height:1.3}
.tbl .row .rk:before{content:'#'}
.tbl .row .nm{grid-area:nm;grid-template-columns:120px 1fr;column-gap:12px;row-gap:8px}
.tbl .row .nm>a.lg{grid-row:1}
.tbl .row .nm b{align-self:center;font-size:16px}
.tbl .row .nm span{grid-column:1/-1}
.tbl .row .ct{display:none}.tbl{grid-template-columns:minmax(0,1fr)}.tbl .row{position:relative;grid-template-columns:minmax(0,1fr);grid-template-areas:"nm" "ch" "bt";min-width:0}.tbl .row .rk{position:absolute;top:16px;right:16px}.tbl .row .nm{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0}.tbl .row .nm>a.lg{flex-shrink:0}.tbl .row .nm img.wlogo{width:min(120px,34vw);height:auto;aspect-ratio:3/1}.tbl .row .nm b{margin-right:48px;min-width:0}.tbl .row .nm span{flex-basis:100%}.tbl .row>.btn{min-width:0;white-space:normal;height:auto;min-height:46px;padding:8px 12px}
.tbl .rchips{grid-area:ch;display:flex;flex-wrap:wrap;gap:6px}
.tbl .rchips>div{background:var(--gray);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:600;line-height:1.2}
.tbl .rchips b{font-weight:700}
.tbl .rchips .c-wom{background:#E6F2E8;color:var(--teal)}.tbl .rchips .c-wom .free{color:inherit;font-weight:700}
.tbl .rchips .c-rt{color:var(--goldd)}
.tbl .ml{display:inline}
.tbl .row>.btn{grid-area:bt;width:100%;height:46px;font-size:15px}
}
/* "one stop guide" mini visuals */
.step .mini{margin-top:auto;background:#fff;border-radius:8px 8px 0 0;padding:14px;color:var(--ink);min-height:132px;display:flex;flex-direction:column;gap:8px}
.mrank{list-style:none;margin:0}.mrank li a{display:flex;align-items:center;gap:10px;padding:6px 4px;border-bottom:1px solid var(--line);color:var(--ink);font-size:13px;text-decoration:none}.mrank li:last-child a{border-bottom:0}.mrank li a:hover b{text-decoration:underline}
.mrank i{font-style:normal;font-weight:800;color:var(--goldd);width:12px}.mrank img{width:54px;height:18px;border-radius:3px;object-fit:cover}.mrank b{flex:1}.mrank em{font-style:normal;font-weight:700;color:var(--goldd)}
.mini small{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--mute)}
.chipset{display:flex;flex-wrap:wrap;gap:6px}.mini .mchip{font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.mini .mchip.on{background:var(--ink);border-color:var(--ink);color:#fff}.mini .mchip.free{background:#E6F2E8;border-color:#E6F2E8;color:var(--teal)}
.mlink{font-size:13px;font-weight:700;color:var(--goldd);margin-top:auto}
.mc-h{display:flex;align-items:center;gap:8px;font-size:14px}.mc-h img{width:66px;height:22px;border-radius:4px;object-fit:cover}.mc-h b{flex:1}.mc-h em{font-style:normal;font-weight:700;color:var(--goldd)}
.mini .mc-b{width:100%;margin-top:auto}
/* Free Trial Tracker band */
.ttbtn{justify-self:end}@media(max-width:960px){.ttbtn{justify-self:stretch}}
/* mobile nav: fade on the right while there is more to scroll */
@media(max-width:960px){header nav.more{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 48px),transparent)}}
@media(max-width:960px){.grid6{grid-template-columns:repeat(2,minmax(0,1fr))}.cities a{min-width:0}.strip .t{min-width:0;flex:1 1 200px}}
.hact{display:none}.util a.pill{background:transparent;color:#fff;border-color:#fff}@media(max-width:960px){header .wrap{flex-wrap:nowrap;align-items:center;justify-content:space-between;min-height:60px;padding:8px 16px;position:relative}.hact{display:flex;align-items:center;gap:8px;flex-shrink:0}.hgm{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:999px;background:var(--gold);color:#0F1117;font-size:14px;font-weight:700;white-space:nowrap}.hgm:hover{background:#A9853A;color:#0F1117;text-decoration:none}.mtog{width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;padding:0}.mtog span{display:block;width:20px;height:2px;background:#0F1117;border-radius:2px;transition:transform .2s,opacity .2s}header.open .mtog span:nth-child(1){transform:translateY(7px) rotate(45deg)}header.open .mtog span:nth-child(2){opacity:0}header.open .mtog span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mtog:focus-visible,.hgm:focus-visible{outline:2px solid var(--gold);outline-offset:2px}header nav{display:none!important;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(15,17,23,.12);flex-direction:column;gap:0;padding:6px 16px 12px;overflow:visible;-webkit-mask-image:none!important;mask-image:none!important;width:auto}header.open nav{display:flex!important}header nav a{padding:14px 4px;border-bottom:1px solid var(--line);font-size:16px}header nav a:last-child{border-bottom:0}.util a.pill{display:none}.logo{min-width:0;flex:1 1 auto}.logo img{height:26px;width:auto;max-width:100%;object-fit:contain;object-position:left center}}@media(max-width:340px){.hgm{padding:0 10px;font-size:13px}.logo img{height:22px}}
.hero .chips{gap:10px;margin-top:12px}.hero .chip{padding:9px 14px;border-radius:999px;line-height:1.2}@media(max-width:600px){.hero .chips{gap:8px}.hero .chip{padding:9px 13px}}
@media(min-width:961px){.cities a:after{margin-left:auto!important}}.cities a{justify-content:flex-start;gap:0}.cities a small{margin-left:8px}@media(max-width:960px){.cities a{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:2px;align-items:center;padding:12px;line-height:1.25;white-space:nowrap}.cities a small{grid-column:1;grid-row:2;margin:0;font-size:12px}.cities a:after{grid-column:2;grid-row:1/span 2;margin:0}}@media(max-width:300px){.grid6.cities{grid-template-columns:1fr}}

/* category cards: link rows (Option A) */
#categories .cat ul{padding:0;gap:8px;font-size:14.5px}
#categories .cat ul li{margin:0}
#categories .cat ul a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 14px 0 16px;border:1px solid #EAE5DF;border-radius:8px;background:#FBF9F5;color:#0F1117;font-weight:600;line-height:1.3;text-decoration:none;transition:background-color .15s,border-color .15s}
#categories .cat ul a::after{content:"\2192";flex-shrink:0;color:#C19A4A;font-weight:400;transition:transform .15s}
#categories .cat ul li:first-child a{background:#F4ECD6;border-color:#E6D7B3;color:#6E5416}
#categories .cat ul a:hover,#categories .cat ul a:focus-visible{background:#fff;border-color:#C19A4A}
#categories .cat ul a:hover::after,#categories .cat ul a:focus-visible::after{transform:translateX(3px)}
#categories .cat ul a:focus-visible{outline:2px solid #C19A4A;outline-offset:2px}
@media(max-width:600px){#categories .cat ul{font-size:15px}#categories .cat ul a{min-height:48px}}
@media(prefers-reduced-motion:reduce){#categories .cat ul a,#categories .cat ul a::after{transition:none}}

/* Contact / About: long one-word page headings ("FreeChatLinesGuide") overflowed phones, which widened the page and made the Subject dropdown's scroll lock squeeze the layout */
@media (max-width: 767px) { .section h1 { font-size: clamp(30px, 8.5vw, 48px); overflow-wrap: anywhere; } }

/* Contact form: dropdown scroll lock. html,body use overflow-x:clip on phones, so the lock's overflow:hidden turned body into its own scroll box and the sticky header scrolled away. Lock the page at html level instead so the header stays put. */
html:has(body[data-scroll-locked]){overflow:hidden}
html body[data-scroll-locked]{overflow:visible!important;overflow-x:clip!important}
/* Contact form labels: keep "Email Address *" together instead of wrapping inside a flex label */
#contact-form label[data-slot="field-label"]{display:block;white-space:nowrap}
@media(max-width:359px){#contact-form .grid-cols-2{grid-template-columns:1fr}}