/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
    'Noto Color Emoji';
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
    monospace;
    --spacing: 0.25rem;
    --container-xl: 36rem;
    --container-4xl: 56rem;
    --font-weight-thin: 100;
    --font-weight-normal: 400;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --radius-xs: 0.125rem;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --animate-spin: spin 1s linear infinite;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-primary-light: #255c70;
    --color-primary: #154556;
    --color-secondary-light: #73f6eb;
    --color-secondary: #4ce8db;
    --color-extralight-1: #f5ffff;
    --color-light-1: #e1faf9;
    --color-extralight-2: #e4e9ef;
    --color-light-2: #d2dae3;
    --color-white: #ffffff;
    --color-dark-gray: #1c1c1c;
    --color-black: #000000;
    --color-dark-600: #4b5563;
    --color-dark-800: #1f2937;
    --color-dark-900: #111827;
    --color-gray-50: #f9fafb;
    --color-gray-100: #f3f4f6;
    --color-gray-200: #e5e7eb;
    --color-gray-300: #d1d5db;
    --color-gray-400: #9ca3af;
    --color-gray-500: #6b7280;
    --color-gray-600: #4b5563;
    --color-gray-700: #374151;
    --color-gray-800: #1f2937;
    --color-gray-900: #111827;
    --color-error-ultralight: #fcecef;
    --color-error-light: #ffe9ec;
    --color-error: #de1135;
    --color-error-dark: #b20e2a;
    --color-error-darker: #860a20;
    --color-success-ultralight: #f3fff9;
    --color-success-light: #dcffed;
    --color-success: #62df9e;
    --color-success-dark: #14b160;
    --color-success-darker: #006e35;
    --color-warning-ultralight: #fff8f2;
    --color-warning-light: #feecde;
    --color-warning: #fea059;
    --color-warning-dark: #e15328;
    --color-warning-darker: #b7410b;
    --background-image-gradient-primary: linear-gradient(286deg, #145165 -4.11%, #3c98b6 127.43%);
    --background-image-gradient-secondary: linear-gradient(282deg, #36d0c2 13.87%, #73f6eb 92.6%);
    --background-image-gradient-0: linear-gradient(282deg, #36d0c2 13.87%, #73f6eb 92.6%);
    --background-image-gradient-1: linear-gradient(277deg, #36d0a2 15.44%, #73f6cd 94.76%);
    --background-image-gradient-2: linear-gradient(277deg, #fbe87b 15.44%, #f8ff93 94.76%);
    --background-image-gradient-3: linear-gradient(277deg, #f87667 15.44%, #ffa28d 94.76%);
    --background-image-gradient-4: linear-gradient(277deg, #f067b0 15.44%, #ff9cd6 94.76%);
    --background-image-gradient-5: linear-gradient(277deg, #9d5ec4 15.44%, #c59cff 94.76%);
    --background-image-gradient-6: linear-gradient(58deg, #145165 45.37%, #3c98b6 133.51%);
    --background-image-gradient-steps: var(--background-image-gradient-6);
    --background-image-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpolyline points='3,8 6.5,11.5 13,5' stroke='%23154556' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --background-image-icon-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M10 12.916L5 7.91602H15L10 12.916Z' fill='%23154556'/%3E%3C/svg%3E");
    --background-image-logo: url("../images/logo-bg-blend-qojjOjO.svg");
    --background-image-help: linear-gradient(92deg, #73f6eb -3.28%, #36d0c3 110.95%);
    --shadow-card-1: 0 1.25rem 1rem 0 rgba(0, 0, 0, 0.07), 0 0.25rem 0.1625rem 0 rgba(0, 0, 0, 0.04);
    --font-theme: "Manrope", Arial, Helvetica, sans-serif;
    --text-xl: var(--text-xl-desktop);
    --text-xl--line-height: var(--text-xl--line-height-desktop);
    --text-xl--letter-spacing: var(--text-xl--letter-spacing-desktop);
    --text-lg: var(--text-lg-desktop);
    --text-lg--line-height: var(--text-lg--line-height-desktop);
    --text-lg--letter-spacing: var(--text-lg--letter-spacing-desktop);
    --text-base: var(--text-base-desktop);
    --text-base--line-height: var(--text-base--line-height-desktop);
    --text-base--letter-spacing: var(--text-base--letter-spacing-desktop);
    --text-sm: var(--text-sm-desktop);
    --text-sm--line-height: var(--text-sm--line-height-desktop);
    --text-sm--letter-spacing: var(--text-sm--letter-spacing-desktop);
    --text-xs: var(--text-xs-desktop);
    --text-xs--line-height: var(--text-xs--line-height-desktop);
    --text-xs--letter-spacing: var(--text-xs--letter-spacing-desktop);
    --text-2xs: var(--text-2xs-desktop);
    --text-2xs--line-height: var(--text-2xs--line-height-desktop);
    --text-2xs--letter-spacing: var(--text-2xs--letter-spacing-desktop);
    --text-h1: var(--text-h1-desktop);
    --text-h1--line-height: var(--text-h1--line-height-desktop);
    --text-h1--letter-spacing: var(--text-h1--letter-spacing-desktop);
    --text-h1--font-weight: var(--text-h1--font-weight-desktop);
    --text-h2: var(--text-h2-desktop);
    --text-h2--line-height: var(--text-h2--line-height-desktop);
    --text-h2--letter-spacing: var(--text-h2--letter-spacing-desktop);
    --text-h2--font-weight: var(--text-h2--font-weight-desktop);
    --text-h3: var(--text-h3-desktop);
    --text-h3--line-height: var(--text-h3--line-height-desktop);
    --text-h3--letter-spacing: var(--text-h3--letter-spacing-desktop);
    --text-h3--font-weight: var(--text-h3--font-weight-desktop);
    --text-h4: var(--text-h4-desktop);
    --text-h4--line-height: var(--text-h4--line-height-desktop);
    --text-h4--letter-spacing: var(--text-h4--letter-spacing-desktop);
    --text-h4--font-weight: var(--text-h4--font-weight-desktop);
    --text-h5: var(--text-h5-desktop);
    --text-h5--line-height: var(--text-h5--line-height-desktop);
    --text-h5--letter-spacing: var(--text-h5--letter-spacing-desktop);
    --text-h5--font-weight: var(--text-h5--font-weight-desktop);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, 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;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden='until-found'])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-auto {
    pointer-events: auto;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .-top-0\.5 {
    top: calc(var(--spacing) * -0.5);
  }
  .-top-1 {
    top: calc(var(--spacing) * -1);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1/2 * 100%);
  }
  .right-2\.5 {
    right: calc(var(--spacing) * 2.5);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .isolate {
    isolation: isolate;
  }
  .z-\(--header-z-index\) {
    z-index: var(--header-z-index);
  }
  .z-1 {
    z-index: 1;
  }
  .order-last {
    order: 9999;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .col-span-full {
    grid-column: 1 / -1;
  }
  .container {
    width: 100%;
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
  }
  .m-2 {
    margin: calc(var(--spacing) * 2);
  }
  .m-4 {
    margin: calc(var(--spacing) * 4);
  }
  .m-5 {
    margin: calc(var(--spacing) * 5);
  }
  .m-6 {
    margin: calc(var(--spacing) * 6);
  }
  .m-auto {
    margin: auto;
  }
  .container {
    margin-inline: auto;
    padding-inline: var(--container-padding);
    max-width: var(--container-max-w);
  }
  .-mx-5 {
    margin-inline: calc(var(--spacing) * -5);
  }
  .container-bleed-x {
    margin-inline: calc(var(--container-padding) * -1);
  }
  .mx-0 {
    margin-inline: calc(var(--spacing) * 0);
  }
  .mx-1 {
    margin-inline: calc(var(--spacing) * 1);
  }
  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }
  .mx-5 {
    margin-inline: calc(var(--spacing) * 5);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }
  .my-3 {
    margin-block: calc(var(--spacing) * 3);
  }
  .my-4 {
    margin-block: calc(var(--spacing) * 4);
  }
  .my-6 {
    margin-block: calc(var(--spacing) * 6);
  }
  .my-8 {
    margin-block: calc(var(--spacing) * 8);
  }
  .my-20 {
    margin-block: calc(var(--spacing) * 20);
  }
  .-mt-1 {
    margin-top: calc(var(--spacing) * -1);
  }
  .mt-1\.25 {
    margin-top: calc(var(--spacing) * 1.25);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-2\.5 {
    margin-top: calc(var(--spacing) * 2.5);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-7 {
    margin-top: calc(var(--spacing) * 7);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-\[42px\] {
    margin-top: 42px;
  }
  .mt-auto {
    margin-top: auto;
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-2\.5 {
    margin-right: calc(var(--spacing) * 2.5);
  }
  .mr-auto {
    margin-right: 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-2\.5 {
    margin-bottom: calc(var(--spacing) * 2.5);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-3\.75 {
    margin-bottom: calc(var(--spacing) * 3.75);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .mb-13\.5 {
    margin-bottom: calc(var(--spacing) * 13.5);
  }
  .mb-15 {
    margin-bottom: calc(var(--spacing) * 15);
  }
  .mb-20 {
    margin-bottom: calc(var(--spacing) * 20);
  }
  .mb-30 {
    margin-bottom: calc(var(--spacing) * 30);
  }
  .mb-auto {
    margin-bottom: auto;
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-5 {
    margin-left: calc(var(--spacing) * 5);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-4 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .table {
    display: table;
  }
  .aspect-\[400\/180\] {
    aspect-ratio: 400/180;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .size-3\.5 {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .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-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-11 {
    width: calc(var(--spacing) * 11);
    height: calc(var(--spacing) * 11);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .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-8\.5 {
    height: calc(var(--spacing) * 8.5);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-32 {
    height: calc(var(--spacing) * 32);
  }
  .h-64 {
    height: calc(var(--spacing) * 64);
  }
  .h-\[28px\] {
    height: 28px;
  }
  .h-\[1500px\] {
    height: 1500px;
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-screen {
    height: 100vh;
  }
  .min-h-\[60dvh\] {
    min-height: 60dvh;
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-4xl {
    width: var(--container-4xl);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-\[28px\] {
    width: 28px;
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .w-max {
    width: max-content;
  }
  .w-xl {
    width: var(--container-xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-24 {
    max-width: calc(var(--spacing) * 24);
  }
  .max-w-\[240px\] {
    max-width: 240px;
  }
  .max-w-\[300px\] {
    max-width: 300px;
  }
  .max-w-\[332px\] {
    max-width: 332px;
  }
  .max-w-\[360px\] {
    max-width: 360px;
  }
  .max-w-\[736px\] {
    max-width: 736px;
  }
  .max-w-\[1224px\] {
    max-width: 1224px;
  }
  .max-w-\[1243px\] {
    max-width: 1243px;
  }
  .max-w-\[1244px\] {
    max-width: 1244px;
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-max {
    max-width: max-content;
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-initial {
    flex: 0 auto;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .grow {
    flex-grow: 1;
  }
  .basis-full {
    flex-basis: 100%;
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-rotate-90 {
    rotate: calc(90deg * -1);
  }
  .rotate-90 {
    rotate: 90deg;
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .rotate-270 {
    rotate: 270deg;
  }
  .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-pointer {
    cursor: pointer;
  }
  .auto-cols-\[298px\] {
    grid-auto-columns: 298px;
  }
  .grid-flow-col {
    grid-auto-flow: column;
  }
  .\[grid-template-columns\:min-content\] {
    grid-template-columns: min-content;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .grid-cols-\[100px_1fr\] {
    grid-template-columns: 100px 1fr;
  }
  .grid-cols-\[auto_1fr\] {
    grid-template-columns: auto 1fr;
  }
  .grid-cols-\[repeat\(auto-fit\,minmax\(300px\,1fr\)\)\] {
    grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  }
  .grid-rows-\[auto_auto_auto\] {
    grid-template-rows: auto auto auto;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .gap-0 {
    gap: calc(var(--spacing) * 0);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-1\.25 {
    gap: calc(var(--spacing) * 1.25);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3\.5 {
    gap: calc(var(--spacing) * 3.5);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-6\.25 {
    gap: calc(var(--spacing) * 6.25);
  }
  .gap-7\.5 {
    gap: calc(var(--spacing) * 7.5);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-9 {
    gap: calc(var(--spacing) * 9);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .gap-15 {
    gap: calc(var(--spacing) * 15);
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-5 {
    column-gap: calc(var(--spacing) * 5);
  }
  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }
  .gap-y-6 {
    row-gap: calc(var(--spacing) * 6);
  }
  .gap-y-6\.25 {
    row-gap: calc(var(--spacing) * 6.25);
  }
  .gap-y-20 {
    row-gap: calc(var(--spacing) * 20);
  }
  .self-center {
    align-self: center;
  }
  .self-end {
    align-self: flex-end;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-\[10px\] {
    border-radius: 10px;
  }
  .rounded-\[20px\] {
    border-radius: 20px;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-b-\[20px\] {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-extralight-2 {
    border-color: var(--color-extralight-2);
  }
  .border-gray-200 {
    border-color: var(--color-gray-200);
  }
  .border-gray-300 {
    border-color: var(--color-gray-300);
  }
  .border-primary-light {
    border-color: var(--color-primary-light);
  }
  .border-secondary {
    border-color: var(--color-secondary);
  }
  .border-white {
    border-color: var(--color-white);
  }
  .bg-black {
    background-color: var(--color-black);
  }
  .bg-dark-600 {
    background-color: var(--color-dark-600);
  }
  .bg-dark-800 {
    background-color: var(--color-dark-800);
  }
  .bg-dark-900 {
    background-color: var(--color-dark-900);
  }
  .bg-dark-gray {
    background-color: var(--color-dark-gray);
  }
  .bg-error {
    background-color: var(--color-error);
  }
  .bg-error-dark {
    background-color: var(--color-error-dark);
  }
  .bg-error-darker {
    background-color: var(--color-error-darker);
  }
  .bg-error-light {
    background-color: var(--color-error-light);
  }
  .bg-error-ultralight {
    background-color: var(--color-error-ultralight);
  }
  .bg-extralight-1 {
    background-color: var(--color-extralight-1);
  }
  .bg-extralight-2 {
    background-color: var(--color-extralight-2);
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-300 {
    background-color: var(--color-gray-300);
  }
  .bg-gray-400 {
    background-color: var(--color-gray-400);
  }
  .bg-gray-500 {
    background-color: var(--color-gray-500);
  }
  .bg-gray-600 {
    background-color: var(--color-gray-600);
  }
  .bg-gray-700 {
    background-color: var(--color-gray-700);
  }
  .bg-gray-800 {
    background-color: var(--color-gray-800);
  }
  .bg-gray-900 {
    background-color: var(--color-gray-900);
  }
  .bg-light-1 {
    background-color: var(--color-light-1);
  }
  .bg-light-2 {
    background-color: var(--color-light-2);
  }
  .bg-primary {
    background-color: var(--color-primary);
  }
  .bg-primary-light {
    background-color: var(--color-primary-light);
  }
  .bg-secondary {
    background-color: var(--color-secondary);
  }
  .bg-secondary-light {
    background-color: var(--color-secondary-light);
  }
  .bg-success {
    background-color: var(--color-success);
  }
  .bg-success-dark {
    background-color: var(--color-success-dark);
  }
  .bg-success-darker {
    background-color: var(--color-success-darker);
  }
  .bg-success-light {
    background-color: var(--color-success-light);
  }
  .bg-success-ultralight {
    background-color: var(--color-success-ultralight);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-warning {
    background-color: var(--color-warning);
  }
  .bg-warning-dark {
    background-color: var(--color-warning-dark);
  }
  .bg-warning-darker {
    background-color: var(--color-warning-darker);
  }
  .bg-warning-light {
    background-color: var(--color-warning-light);
  }
  .bg-warning-ultralight {
    background-color: var(--color-warning-ultralight);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-gradient-0 {
    background-image: var(--background-image-gradient-0);
  }
  .bg-gradient-1 {
    background-image: var(--background-image-gradient-1);
  }
  .bg-gradient-2 {
    background-image: var(--background-image-gradient-2);
  }
  .bg-gradient-3 {
    background-image: var(--background-image-gradient-3);
  }
  .bg-gradient-4 {
    background-image: var(--background-image-gradient-4);
  }
  .bg-gradient-5 {
    background-image: var(--background-image-gradient-5);
  }
  .bg-gradient-6 {
    background-image: var(--background-image-gradient-6);
  }
  .bg-gradient-primary {
    background-image: var(--background-image-gradient-primary);
  }
  .bg-gradient-secondary {
    background-image: var(--background-image-gradient-secondary);
  }
  .stroke-primary {
    stroke: var(--color-primary);
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-7\.5 {
    padding: calc(var(--spacing) * 7.5);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .p-10 {
    padding: calc(var(--spacing) * 10);
  }
  .container-padding-x {
    padding-inline: var(--container-padding);
  }
  .px-0 {
    padding-inline: calc(var(--spacing) * 0);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .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-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-7\.5 {
    padding-inline: calc(var(--spacing) * 7.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-7\.5 {
    padding-block: calc(var(--spacing) * 7.5);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .pt-1\.25 {
    padding-top: calc(var(--spacing) * 1.25);
  }
  .pt-2\.5 {
    padding-top: calc(var(--spacing) * 2.5);
  }
  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }
  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }
  .pt-13 {
    padding-top: calc(var(--spacing) * 13);
  }
  .pt-\[30px\] {
    padding-top: 30px;
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-5 {
    padding-right: calc(var(--spacing) * 5);
  }
  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pb-13 {
    padding-bottom: calc(var(--spacing) * 13);
  }
  .pb-17 {
    padding-bottom: calc(var(--spacing) * 17);
  }
  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .text-center {
    text-align: center;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .font-theme {
    font-family: var(--font-theme);
  }
  .text-h1 {
    font-size: var(--text-h1);
    line-height: var(--tw-leading, var(--text-h1--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h1--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h1--font-weight));
  }
  .text-h2 {
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
  }
  .text-h3 {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
  }
  .text-h4 {
    font-size: var(--text-h4);
    line-height: var(--tw-leading, var(--text-h4--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
  }
  .text-h5 {
    font-size: var(--text-h5);
    line-height: var(--tw-leading, var(--text-h5--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h5--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h5--font-weight));
  }
  .text-2xs {
    font-size: var(--text-2xs);
    line-height: var(--tw-leading, var(--text-2xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xl--letter-spacing));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .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-ellipsis {
    text-overflow: ellipsis;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-black {
    color: var(--color-black);
  }
  .text-error {
    color: var(--color-error);
  }
  .text-gray-400 {
    color: var(--color-gray-400);
  }
  .text-gray-500 {
    color: var(--color-gray-500);
  }
  .text-gray-600 {
    color: var(--color-gray-600);
  }
  .text-primary {
    color: var(--color-primary);
  }
  .text-primary-light {
    color: var(--color-primary-light);
  }
  .text-secondary {
    color: var(--color-secondary);
  }
  .text-secondary-light {
    color: var(--color-secondary-light);
  }
  .text-transparent {
    color: transparent;
  }
  .text-white {
    color: var(--color-white);
  }
  .lowercase {
    text-transform: lowercase;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .underline {
    text-decoration-line: underline;
  }
  .opacity-25 {
    opacity: 25%;
  }
  .opacity-30 {
    opacity: 30%;
  }
  .opacity-75 {
    opacity: 75%;
  }
  .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-card-1 {
    --tw-shadow: 0 1.25rem 1rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.07)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.04));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .\[box-shadow\:var\(--shadow-card-1\)\] {
    box-shadow: var(--shadow-card-1);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, 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-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .group-has-\[input\:checked\]\:grid {
    &:is(:where(.group):has(*:is(input:checked)) *) {
      display: grid;
    }
  }
  .empty\:hidden {
    &:empty {
      display: none;
    }
  }
  .hover\:bg-error {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-error);
      }
    }
  }
  .hover\:bg-extralight-2 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-extralight-2);
      }
    }
  }
  .hover\:bg-light-1 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-light-1);
      }
    }
  }
  .hover\:bg-light-2 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-light-2);
      }
    }
  }
  .hover\:bg-primary {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary);
      }
    }
  }
  .hover\:bg-primary-light {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary-light);
      }
    }
  }
  .hover\:bg-primary-light\/10 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #255c70 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-primary-light) 10%, transparent);
        }
      }
    }
  }
  .hover\:bg-secondary-light {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-secondary-light);
      }
    }
  }
  .hover\:bg-white\/10 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #ffffff 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
        }
      }
    }
  }
  .hover\:text-secondary {
    &:hover {
      @media (hover: hover) {
        color: var(--color-secondary);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:no-underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: none;
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:shadow-card-hover {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 0.5rem 0.5rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(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);
      }
    }
  }
  .hover\:shadow-md {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .focus\:outline-secondary {
    &:focus {
      outline-color: var(--color-secondary);
    }
  }
  .tablet\:absolute {
    @media (width >= 48rem) {
      position: absolute;
    }
  }
  .tablet\:-top-1\.5 {
    @media (width >= 48rem) {
      top: calc(var(--spacing) * -1.5);
    }
  }
  .tablet\:order-0 {
    @media (width >= 48rem) {
      order: 0;
    }
  }
  .tablet\:order-last {
    @media (width >= 48rem) {
      order: 9999;
    }
  }
  .tablet\:col-span-1 {
    @media (width >= 48rem) {
      grid-column: span 1 / span 1;
    }
  }
  .tablet\:row-span-2 {
    @media (width >= 48rem) {
      grid-row: span 2 / span 2;
    }
  }
  .tablet\:container {
    @media (width >= 48rem) {
      width: 100%;
      @media (width >= 48rem) {
        max-width: 48rem;
      }
      @media (width >= 80rem) {
        max-width: 80rem;
      }
    }
  }
  .tablet\:m-0 {
    @media (width >= 48rem) {
      margin: calc(var(--spacing) * 0);
    }
  }
  .tablet\:container {
    @media (width >= 48rem) {
      margin-inline: auto;
      padding-inline: var(--container-padding);
      max-width: var(--container-max-w);
    }
  }
  .tablet\:-mx-7\.5 {
    @media (width >= 48rem) {
      margin-inline: calc(var(--spacing) * -7.5);
    }
  }
  .tablet\:mx-0 {
    @media (width >= 48rem) {
      margin-inline: calc(var(--spacing) * 0);
    }
  }
  .tablet\:mx-7\.5 {
    @media (width >= 48rem) {
      margin-inline: calc(var(--spacing) * 7.5);
    }
  }
  .tablet\:mx-8 {
    @media (width >= 48rem) {
      margin-inline: calc(var(--spacing) * 8);
    }
  }
  .tablet\:my-16 {
    @media (width >= 48rem) {
      margin-block: calc(var(--spacing) * 16);
    }
  }
  .tablet\:mt-0 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .tablet\:mt-2\.5 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 2.5);
    }
  }
  .tablet\:mt-4 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 4);
    }
  }
  .tablet\:mt-8 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .tablet\:mb-0 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }
  .tablet\:mb-10 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .tablet\:ml-6 {
    @media (width >= 48rem) {
      margin-left: calc(var(--spacing) * 6);
    }
  }
  .tablet\:ml-auto {
    @media (width >= 48rem) {
      margin-left: auto;
    }
  }
  .tablet\:line-clamp-2 {
    @media (width >= 48rem) {
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }
  }
  .tablet\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .tablet\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .tablet\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .tablet\:inline {
    @media (width >= 48rem) {
      display: inline;
    }
  }
  .tablet\:inline-flex {
    @media (width >= 48rem) {
      display: inline-flex;
    }
  }
  .tablet\:size-4 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .tablet\:size-5 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 5);
      height: calc(var(--spacing) * 5);
    }
  }
  .tablet\:size-8 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 8);
      height: calc(var(--spacing) * 8);
    }
  }
  .tablet\:w-69 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 69);
    }
  }
  .tablet\:w-\[300px\] {
    @media (width >= 48rem) {
      width: 300px;
    }
  }
  .tablet\:w-auto {
    @media (width >= 48rem) {
      width: auto;
    }
  }
  .tablet\:max-w-\[300px\] {
    @media (width >= 48rem) {
      max-width: 300px;
    }
  }
  .tablet\:max-w-none {
    @media (width >= 48rem) {
      max-width: none;
    }
  }
  .tablet\:flex-1 {
    @media (width >= 48rem) {
      flex: 1;
    }
  }
  .tablet\:basis-full {
    @media (width >= 48rem) {
      flex-basis: 100%;
    }
  }
  .tablet\:-translate-y-1\/2 {
    @media (width >= 48rem) {
      --tw-translate-y: calc(calc(1/2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .tablet\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .tablet\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .tablet\:grid-cols-\[336px_1fr\] {
    @media (width >= 48rem) {
      grid-template-columns: 336px 1fr;
    }
  }
  .tablet\:grid-cols-\[auto_1fr_auto\] {
    @media (width >= 48rem) {
      grid-template-columns: auto 1fr auto;
    }
  }
  .tablet\:grid-rows-\[auto_auto\] {
    @media (width >= 48rem) {
      grid-template-rows: auto auto;
    }
  }
  .tablet\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .tablet\:flex-wrap {
    @media (width >= 48rem) {
      flex-wrap: wrap;
    }
  }
  .tablet\:gap-4 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .tablet\:gap-8 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .tablet\:gap-9 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 9);
    }
  }
  .tablet\:gap-10 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 10);
    }
  }
  .tablet\:gap-11 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 11);
    }
  }
  .tablet\:gap-y-9 {
    @media (width >= 48rem) {
      row-gap: calc(var(--spacing) * 9);
    }
  }
  .tablet\:self-center {
    @media (width >= 48rem) {
      align-self: center;
    }
  }
  .tablet\:self-end {
    @media (width >= 48rem) {
      align-self: flex-end;
    }
  }
  .tablet\:bg-extralight-2 {
    @media (width >= 48rem) {
      background-color: var(--color-extralight-2);
    }
  }
  .tablet\:bg-white {
    @media (width >= 48rem) {
      background-color: var(--color-white);
    }
  }
  .tablet\:p-0 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 0);
    }
  }
  .tablet\:px-5 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
  }
  .tablet\:px-7\.5 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 7.5);
    }
  }
  .tablet\:py-6 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 6);
    }
  }
  .tablet\:py-8 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .tablet\:py-10 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 10);
    }
  }
  .tablet\:pt-\[65px\] {
    @media (width >= 48rem) {
      padding-top: 65px;
    }
  }
  .tablet\:pr-12 {
    @media (width >= 48rem) {
      padding-right: calc(var(--spacing) * 12);
    }
  }
  .tablet\:pb-2 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 2);
    }
  }
  .tablet\:pb-11 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 11);
    }
  }
  .tablet\:pb-20 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 20);
    }
  }
  .tablet\:text-left {
    @media (width >= 48rem) {
      text-align: left;
    }
  }
  .tablet\:text-h1 {
    @media (width >= 48rem) {
      font-size: var(--text-h1);
      line-height: var(--tw-leading, var(--text-h1--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h1--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h1--font-weight));
    }
  }
  .tablet\:text-h2 {
    @media (width >= 48rem) {
      font-size: var(--text-h2);
      line-height: var(--tw-leading, var(--text-h2--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    }
  }
  .tablet\:font-normal {
    @media (width >= 48rem) {
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  .desktop\:m-0 {
    @media (width >= 80rem) {
      margin: calc(var(--spacing) * 0);
    }
  }
  .desktop\:mx-0 {
    @media (width >= 80rem) {
      margin-inline: calc(var(--spacing) * 0);
    }
  }
  .desktop\:mx-auto {
    @media (width >= 80rem) {
      margin-inline: auto;
    }
  }
  .desktop\:my-12 {
    @media (width >= 80rem) {
      margin-block: calc(var(--spacing) * 12);
    }
  }
  .desktop\:my-16 {
    @media (width >= 80rem) {
      margin-block: calc(var(--spacing) * 16);
    }
  }
  .desktop\:mt-0 {
    @media (width >= 80rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .desktop\:mt-16 {
    @media (width >= 80rem) {
      margin-top: calc(var(--spacing) * 16);
    }
  }
  .desktop\:mt-\[25px\] {
    @media (width >= 80rem) {
      margin-top: 25px;
    }
  }
  .desktop\:mb-6 {
    @media (width >= 80rem) {
      margin-bottom: calc(var(--spacing) * 6);
    }
  }
  .desktop\:mb-12 {
    @media (width >= 80rem) {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }
  .desktop\:mb-32 {
    @media (width >= 80rem) {
      margin-bottom: calc(var(--spacing) * 32);
    }
  }
  .desktop\:flex {
    @media (width >= 80rem) {
      display: flex;
    }
  }
  .desktop\:grid {
    @media (width >= 80rem) {
      display: grid;
    }
  }
  .desktop\:hidden {
    @media (width >= 80rem) {
      display: none;
    }
  }
  .desktop\:inline-flex {
    @media (width >= 80rem) {
      display: inline-flex;
    }
  }
  .desktop\:size-6 {
    @media (width >= 80rem) {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  .desktop\:w-\[400px\] {
    @media (width >= 80rem) {
      width: 400px;
    }
  }
  .desktop\:w-\[808px\] {
    @media (width >= 80rem) {
      width: 808px;
    }
  }
  .desktop\:w-\[811px\] {
    @media (width >= 80rem) {
      width: 811px;
    }
  }
  .desktop\:w-auto {
    @media (width >= 80rem) {
      width: auto;
    }
  }
  .desktop\:max-w-\[345px\] {
    @media (width >= 80rem) {
      max-width: 345px;
    }
  }
  .desktop\:max-w-\[405px\] {
    @media (width >= 80rem) {
      max-width: 405px;
    }
  }
  .desktop\:max-w-\[900px\] {
    @media (width >= 80rem) {
      max-width: 900px;
    }
  }
  .desktop\:grid-cols-3 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .desktop\:grid-cols-4 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .desktop\:grid-cols-7 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(7, minmax(0, 1fr));
    }
  }
  .desktop\:grid-cols-\[2fr_1fr\] {
    @media (width >= 80rem) {
      grid-template-columns: 2fr 1fr;
    }
  }
  .desktop\:grid-cols-\[300px_1fr\] {
    @media (width >= 80rem) {
      grid-template-columns: 300px 1fr;
    }
  }
  .desktop\:flex-row {
    @media (width >= 80rem) {
      flex-direction: row;
    }
  }
  .desktop\:gap-7\.5 {
    @media (width >= 80rem) {
      gap: calc(var(--spacing) * 7.5);
    }
  }
  .desktop\:gap-9 {
    @media (width >= 80rem) {
      gap: calc(var(--spacing) * 9);
    }
  }
  .desktop\:gap-11\.25 {
    @media (width >= 80rem) {
      gap: calc(var(--spacing) * 11.25);
    }
  }
  .desktop\:gap-20 {
    @media (width >= 80rem) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .desktop\:rounded-t-\[1\.25rem\] {
    @media (width >= 80rem) {
      border-top-left-radius: 1.25rem;
      border-top-right-radius: 1.25rem;
    }
  }
  .desktop\:container-padding-x {
    @media (width >= 80rem) {
      padding-inline: var(--container-padding);
    }
  }
  .desktop\:px-0 {
    @media (width >= 80rem) {
      padding-inline: calc(var(--spacing) * 0);
    }
  }
  .desktop\:py-16 {
    @media (width >= 80rem) {
      padding-block: calc(var(--spacing) * 16);
    }
  }
  .desktop\:pt-7\.5 {
    @media (width >= 80rem) {
      padding-top: calc(var(--spacing) * 7.5);
    }
  }
  .desktop\:pb-20 {
    @media (width >= 80rem) {
      padding-bottom: calc(var(--spacing) * 20);
    }
  }
  .desktop\:pb-35 {
    @media (width >= 80rem) {
      padding-bottom: calc(var(--spacing) * 35);
    }
  }
}
:root {
  --gradient-info-degree: 0deg;
  --start-info-percent: 15.44%;
  --end-info-percent: 67.95%;
}
.bg-gradient-info-0 {
  --start-info-color: rgba(54, 208, 194, 0.1);
  --end-info-color: #54e3d6;
}
.bg-gradient-info-1 {
  --start-info-color: rgba(248, 255, 146, 0);
  --end-info-color: #f9f386;
}
.bg-gradient-info-2 {
  --start-info-color: rgba(115, 246, 205, 0);
  --end-info-color: #58e5ba;
}
.bg-gradient-info-3 {
  --start-info-color: rgba(251, 140, 122, 0);
  --end-info-color: #fb8c7a;
}
.bg-gradient-info-4 {
  --start-info-color: rgba(248, 132, 196, 0);
  --end-info-color: #f884c4;
}
.bg-gradient-info-5 {
  --start-info-color: rgba(178, 128, 227, 0);
  --end-info-color: #b280e3;
}
.bg-gradient-info-5 {
  --start-info-color: rgba(178, 128, 227, 0);
  --end-info-color: #b280e3;
}
.bg-gradient-info-6 {
  --start-info-color: rgba(178, 128, 227, 0);
  --end-info-color: #b280e3;
}
@font-face {
  font-display: swap;
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/manrope-v20-latin-regular-scmC9DJ.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/manrope-v20-latin-700-f4J6bba.woff2") format("woff2");
}
:root {
  --text-xl-desktop: 1.25rem;
  --text-xl--line-height-desktop: 1.75rem;
  --text-xl--letter-spacing-desktop: 0;
  --text-lg-desktop: 1.125rem;
  --text-lg--line-height-desktop: 1.5rem;
  --text-lg--letter-spacing-desktop: 0;
  --text-base-desktop: 1rem;
  --text-base--line-height-desktop: 1.375rem;
  --text-base--letter-spacing-desktop: 0;
  --text-sm-desktop: 0.875rem;
  --text-sm--line-height-desktop: 1.25rem;
  --text-sm--letter-spacing-desktop: 0;
  --text-xs-desktop: 0.75rem;
  --text-xs--line-height-desktop: 1rem;
  --text-xs--letter-spacing-desktop: 0;
  --text-2xs-desktop: 0.625rem;
  --text-2xs--line-height-desktop: 0.875rem;
  --text-2xs--letter-spacing-desktop: 0;
  --text-h1-desktop: 2.5rem;
  --text-h1--line-height-desktop: 2.625rem;
  --text-h1--letter-spacing-desktop: -0.05rem;
  --text-h1--font-weight-desktop: 700;
  --text-h2-desktop: 1.875rem;
  --text-h2--line-height-desktop: 2.1875rem;
  --text-h2--letter-spacing-desktop: -0.0375rem;
  --text-h2--font-weight-desktop: 700;
  --text-h3-desktop: 1.625rem;
  --text-h3--line-height-desktop: 1.875rem;
  --text-h3--letter-spacing-desktop: -0.0325rem;
  --text-h3--font-weight-desktop: 700;
  --text-h4-desktop: 1.5rem;
  --text-h4--line-height-desktop: 1.625rem;
  --text-h4--letter-spacing-desktop: -0.03rem;
  --text-h4--font-weight-desktop: 700;
  --text-h5-desktop: 1.25rem;
  --text-h5--line-height-desktop: 1.375rem;
  --text-h5--letter-spacing-desktop: -0.025rem;
  --text-h5--font-weight-desktop: 700;
}
:root {
  --text-xl-mobile: 1.125rem;
  --text-xl--line-height-mobile: 1.625rem;
  --text-lg-mobile: 1rem;
  --text-lg--line-height-mobile: 1.5rem;
  --text-base-mobile: 0.875rem;
  --text-base--line-height-mobile: 1.125rem;
  --text-sm-mobile: 0.8125rem;
  --text-sm--line-height-mobile: 1rem;
  --text-xs-mobile: 0.6875rem;
  --text-xs--line-height-mobile: 0.875rem;
  --text-h1-mobile: 1.875rem;
  --text-h1--line-height-mobile: 2rem;
  --text-h1--letter-spacing-mobile: -0.0375rem;
  --text-h2-mobile: 1.625rem;
  --text-h2--line-height-mobile: 1.875rem;
  --text-h2--letter-spacing-mobile: -0.0325rem;
  --text-h3-mobile: 1.375rem;
  --text-h3--line-height-mobile: 1.5625rem;
  --text-h3--letter-spacing-mobile: -0.0275rem;
  --text-h4-mobile: 1.25rem;
  --text-h4--line-height-mobile: 1.375rem;
  --text-h4--letter-spacing-mobile: -0.025rem;
  --text-h5-mobile: 1rem;
  --text-h5--line-height-mobile: 1.25rem;
  --text-h5--letter-spacing-mobile: -0.02rem;
}
@media (max-width: calc(48rem - 0.02rem)) {
  :root {
    --text-xl: var(--text-xl-mobile);
    --text-xl--line-height: var(--text-xl--line-height-mobile);
    --text-lg: var(--text-lg-mobile);
    --text-lg--line-height: var(--text-lg--line-height-mobile);
    --text-base: var(--text-base-mobile);
    --text-base--line-height: var(--text-base--line-height-mobile);
    --text-sm: var(--text-sm-mobile);
    --text-sm--line-height: var(--text-sm--line-height-mobile);
    --text-xs: var(--text-xs-mobile);
    --text-xs--line-height: var(--text-xs--line-height-mobile);
    --text-h1: var(--text-h1-mobile);
    --text-h1--line-height: var(--text-h1--line-height-mobile);
    --text-h1--letter-spacing: var(--text-h1--letter-spacing-mobile);
    --text-h2: var(--text-h2-mobile);
    --text-h2--line-height: var(--text-h2--line-height-mobile);
    --text-h2--letter-spacing: var(--text-h2--letter-spacing-mobile);
    --text-h3: var(--text-h3-mobile);
    --text-h3--line-height: var(--text-h3--line-height-mobile);
    --text-h3--letter-spacing: var(--text-h3--letter-spacing-mobile);
    --text-h4: var(--text-h4-mobile);
    --text-h4--line-height: var(--text-h4--line-height-mobile);
    --text-h4--letter-spacing: var(--text-h4--letter-spacing-mobile);
    --text-h5: var(--text-h5-mobile);
    --text-h5--line-height: var(--text-h5--line-height-mobile);
    --text-h5--letter-spacing: var(--text-h5--letter-spacing-mobile);
  }
}
@layer base {
  input[type="radio"], input[type="checkbox"] {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    padding: calc(var(--spacing) * 0);
    background-color: var(--color-white);
    color: var(--color-error);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-gray-400);
    outline-style: var(--tw-outline-style);
    outline-width: 0px;
    outline-offset: 0px;
    outline-color: transparent;
    appearance: none;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  input[type="radio"]:hover:not(:disabled), input[type="checkbox"]:hover:not(:disabled) {
    cursor: pointer;
    border-color: var(--color-secondary);
    outline-style: var(--tw-outline-style);
    outline-width: 4px;
    outline-color: color-mix(in srgb, #4ce8db 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--color-secondary) 50%, transparent);
    }
  }
  input[type="radio"]:focus, input[type="checkbox"]:focus {
    border-color: var(--color-secondary);
    outline-style: var(--tw-outline-style);
    outline-width: 4px;
    outline-color: color-mix(in srgb, #4ce8db 25%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--color-secondary) 25%, transparent);
    }
  }
  input[type="radio"] {
    border-radius: calc(infinity * 1px);
  }
  input[type="radio"]:checked {
    border-style: var(--tw-border-style);
    border-width: 6px;
    border-color: var(--color-secondary);
  }
  input[type="checkbox"] {
    position: relative;
    border-radius: var(--radius-sm);
  }
  input[type="checkbox"]:checked {
    border-color: var(--color-secondary);
    background-color: var(--color-secondary);
  }
  input[type="checkbox"]:checked::after {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    background-image: var(--background-image-icon-check);
    background-position: center;
    background-repeat: no-repeat;
    content: "";
  }
  select {
    appearance: none;
    background-image: var(--background-image-icon-caret);
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1.25rem 1.25rem;
    padding-right: 2.5rem;
  }
  input[type="range"] {
    height: 1px;
    width: 100%;
    appearance: none;
    background-color: var(--color-primary);
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    --thumb-height: 14px;
    --thumb-width: 14px;
    --track-height: 1px;
    --clip-edges: 2px;
  }
  input[type="range"]::-webkit-slider-thumb {
    pointer-events: auto;
    aspect-ratio: 1 / 1;
    width: calc(var(--spacing) * 3.5);
    cursor: grabbing;
    appearance: none;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--color-white);
    background-color: var(--color-secondary);
  }
  input[type="range"]::-moz-range-thumb {
    pointer-events: auto;
    aspect-ratio: 1 / 1;
    height: calc(var(--spacing) * 3.5);
    width: calc(var(--spacing) * 3.5);
    cursor: grabbing;
    appearance: none;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--color-white);
    background-color: var(--color-secondary);
  }
  input[type="range"]::-webkit-slider-thumb {
    color: var(--color-secondary-light);
    --thumb-radius: calc((var(--thumb-height) * 0.5) - 1px);
    --clip-top: calc((var(--thumb-height) - var(--track-height)) * 0.7);
    --clip-bottom: calc(var(--thumb-height) - var(--clip-top));
    --box-fill: calc(-100vmax - var(--thumb-width, var(--thumb-height))) 0 0 100vmax currentColor;
    width: var(--thumb-width, var(--thumb-height));
    border: 2px solid white;
    background: currentColor linear-gradient(currentColor 0 0) no-repeat scroll left center;
    box-shadow: var(--box-fill);
    border-radius: 100%;
    clip-path: polygon( 100% 0, var(--clip-edges) 0, 0 var(--clip-top), -100vmax var(--clip-top), -100vmax var(--clip-bottom), 0 var(--clip-bottom), var(--clip-edges) 100%, calc(100% + 1px) calc(100% + 1px) );
  }
  input[type="range"]::-moz-range-track {
    background: var(--color-primary);
    height: 1px;
  }
  input[type="range"]::-moz-range-progress {
    background: var(--color-secondary);
    height: 1px;
  }
  input[type="range"] + output {
    padding: 0.4375rem;
    border: 1px solid var(--color-extralight-2);
    background-color: var(--color-white);
    margin-left: 0.5rem;
    font-size: 0.75rem;
  }
  input[type="range"] ~ .unit {
    padding: 0.5rem;
    font-size: 0.75rem;
    background-color: var(--color-extralight-2);
  }
  input::placeholder {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  input:focus-within::placeholder {
    opacity: 50%;
  }
}
@layer components {
  @layer form {
    .form-group {
      margin-bottom: calc(var(--spacing) * 6);
      display: flex;
      flex-direction: column;
      gap: calc(var(--spacing) * 2);
    }
    .form-label {
      font-family: var(--font-theme);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-primary);
      &.required::after {
        content: " *";
      }
    }
    .form-input {
      border-radius: var(--radius-lg);
      padding: calc(var(--spacing) * 4);
      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));
      background-color: var(--color-gray-100);
      color: var(--color-gray-900);
      outline-style: var(--tw-outline-style);
      outline-width: 1px;
      outline-color: transparent;
      &::placeholder {
        color: var(--color-gray-600);
      }
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-gray-200);
        }
      }
      &:focus {
        outline-color: var(--color-secondary);
      }
      font-family: var(--font-theme);
      font-size: max(16px, var(--text-sm));
      line-height: normal;
      @media (width >= 48rem) {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      }
      &.disabled {
        cursor: not-allowed;
        opacity: 50%;
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-gray-100);
          }
        }
      }
      &.error {
        outline-color: var(--color-error);
        &:focus {
          outline-color: var(--color-error-dark);
        }
      }
      &.hp-field {
        position: absolute !important;
        left: -10000px !important;
        top: auto !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
      }
    }
    select.form-input {
      width: 100%;
      padding-right: calc(var(--spacing) * 10);
      text-overflow: ellipsis;
    }
    .form-input-wrapper {
      position: relative;
      display: flex;
      flex-direction: column;
    }
    .form-input-icon {
      position: absolute;
      top: calc(1/2 * 100%);
      right: calc(var(--spacing) * 4);
      width: calc(var(--spacing) * 5);
      height: calc(var(--spacing) * 5);
      --tw-translate-y: calc(calc(1/2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      color: var(--color-primary);
    }
    .form-checkbox, .form-radio {
      align-self: flex-start;
    }
    .form-input-password {
      width: 100%;
      padding-right: calc(var(--spacing) * 12);
      & + button {
        position: absolute;
        top: calc(1/2 * 100%);
        right: calc(var(--spacing) * 4);
        --tw-translate-y: calc(calc(1/2 * 100%) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
        cursor: pointer;
        &.is-visible {
          &:before {
            content: "";
            display: block;
            width: 100%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform-origin: center;
            transform: translate(-50%, -50%) rotate(45deg);
            height: 1px;
            background-color: var(--color-primary);
          }
        }
      }
    }
    .form-help {
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 1);
      font-family: var(--font-theme);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      color: var(--color-gray-400);
    }
    .form-errors {
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 1);
      font-family: var(--font-theme);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      color: var(--color-error);
    }
    .form-inline {
      margin-bottom: calc(var(--spacing) * 1);
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 2);
    }
    .form-inline-label {
      cursor: pointer;
      font-family: var(--font-theme);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      color: var(--color-gray-900);
      &.disabled {
        color: var(--color-gray-400);
      }
      &.required::after {
        content: " *";
      }
    }
    .form-inline:has(.form-checkbox) + .form-inline:has(.form-checkbox) {
      margin-top: calc(var(--spacing) * 4);
    }
    .form-label a, .form-inline-label a {
      color: var(--color-primary-light);
      &:hover {
        @media (hover: hover) {
          text-decoration-line: underline;
        }
      }
    }
    .form-group:has(.form-checkbox), .form-group:has(.form-radio) {
      .form-label {
        margin-block: calc(var(--spacing) * 2);
      }
    }
    .FilterCard {
      & input {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border-width: 0;
      }
      & label {
        display: block;
        min-width: calc(var(--spacing) * 20);
        border-radius: var(--radius-lg);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-gray-300);
        background-color: var(--color-gray-100);
        padding-inline: calc(var(--spacing) * 3);
        padding-block: calc(var(--spacing) * 3.5);
        outline-color: transparent;
        text-align: center;
        font-family: var(--font-theme);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        color: var(--color-gray-800);
        transition-property: all;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
        cursor: pointer;
        &:hover {
          background-color: var(--color-gray-200);
          color: var(--color-gray-800);
          text-shadow: 0 0 0.01px var(--color-gray-800);
        }
      }
      & input:focus-visible + label {
        outline-style: var(--tw-outline-style);
        outline-width: 4px;
        outline-color: color-mix(in srgb, #4ce8db 25%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          outline-color: color-mix(in oklab, var(--color-secondary) 25%, transparent);
        }
      }
      & input:checked + label {
        border-color: var(--color-primary-light);
        background-color: var(--color-gray-200);
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
        color: var(--color-gray-800);
        &:hover {
          background-color: var(--color-gray-300);
        }
      }
    }
    .FilterCard-wrapper {
      margin-top: calc(var(--spacing) * 2.5);
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: calc(var(--spacing) * 2.5);
    }
    .IconChoiceContainer, .ColorChoiceContainer {
      display: grid;
      gap: 1px;
      grid-template-columns: repeat(auto-fit, minmax(56px, min-content));
    }
    .IconChoiceItem, .ColorChoiceItem {
      & input {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border-width: 0;
      }
      & label {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: calc(var(--spacing) * 1);
        height: 100%;
        border-radius: var(--radius-sm);
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: transparent;
        background-color: transparent;
        padding-block: calc(var(--spacing) * 3.5);
        outline-color: transparent;
        text-align: center;
        font-family: var(--font-theme);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        color: var(--color-gray-800);
        transition-property: all;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
        cursor: pointer;
        &:hover {
          border-color: var(--color-gray-300);
          background-color: var(--color-gray-50);
          --tw-font-weight: var(--font-weight-bold);
          font-weight: var(--font-weight-bold);
        }
      }
      & input:focus-visible + label {
        outline-style: var(--tw-outline-style);
        outline-width: 4px;
        outline-color: color-mix(in srgb, #4ce8db 25%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          outline-color: color-mix(in oklab, var(--color-secondary) 25%, transparent);
        }
      }
    }
    .IconChoiceItem-icon {
      width: calc(var(--spacing) * 8);
      height: calc(var(--spacing) * 8);
    }
    .IconChoiceItem--checked, .ColorChoiceItem--checked {
      & label {
        border-color: var(--color-primary-light);
        background-color: var(--color-gray-100);
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
        color: var(--color-gray-800);
        &:hover {
          border-color: var(--color-primary-light);
          background-color: var(--color-gray-200);
        }
      }
    }
    .ColorChoiceItem-color {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
      border-radius: calc(infinity * 1px);
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: var(--color-gray-100);
    }
    .Delta {
      position: relative;
      margin-block: calc(var(--spacing) * 8);
      height: 1px;
      background-color: var(--color-black);
      input[type="range"] {
        pointer-events: none;
        position: absolute;
        top: calc(1/2 * 100%);
        width: 100%;
        --tw-translate-y: calc(calc(1/2 * 100%) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
        background-color: transparent;
        &::-webkit-slider-thumb {
          box-shadow: none;
        }
      }
    }
    .Delta-input {
      padding: calc(var(--spacing) * 2.5);
      -moz-appearance: textfield;
      &::-webkit-inner-spin-button, &::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0;
      }
    }
    .Delta-track {
      position: absolute;
      height: 3px;
      --tw-translate-y: calc(calc(1/2 * 100%) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      background-color: var(--color-secondary);
    }
    .SearchBar {
      display: flex;
      min-height: calc(var(--spacing) * 16);
      align-items: center;
      gap: calc(var(--spacing) * 2);
      border-radius: calc(infinity * 1px);
      border-style: var(--tw-border-style);
      border-width: 1px;
      border-color: var(--color-gray-200);
      background-color: var(--color-white);
      padding-block: 10px;
      padding-right: calc(var(--spacing) * 2.5);
      padding-left: calc(var(--spacing) * 6);
      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));
      &:focus-within {
        border-color: var(--color-secondary);
      }
      &:hover {
        @media (hover: hover) {
          border-color: var(--color-gray-400);
        }
      }
      &:focus-within {
        &:hover {
          @media (hover: hover) {
            border-color: var(--color-secondary);
          }
        }
      }
      &:has(.SearchAddressField-locate) {
        padding-left: 0.625rem;
      }
    }
    .SearchBar-input {
      height: 100%;
      min-width: calc(var(--spacing) * 0);
      flex-grow: 1;
      background-image: none;
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      text-overflow: ellipsis;
      color: var(--color-gray-900);
      --tw-outline-style: none;
      outline-style: none;
      &::placeholder {
        color: var(--color-gray-400);
      }
      font-size: max(16px, var(--text-sm));
      line-height: normal;
      @media (width >= 48rem) {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      }
      &.disabled {
        cursor: not-allowed;
        opacity: 50%;
      }
    }
    .SearchBar-submit {
      display: flex;
      height: calc(var(--spacing) * 11);
      max-width: max-content;
      min-width: calc(var(--spacing) * 0);
      flex-shrink: 0;
      flex-grow: 1;
      cursor: pointer;
      align-items: center;
      border-radius: calc(infinity * 1px);
      background-color: var(--color-secondary);
      color: var(--color-primary-light);
      outline-style: var(--tw-outline-style);
      outline-width: 4px;
      outline-color: transparent;
      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));
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-secondary-light);
        }
      }
      &:focus-visible {
        outline-color: color-mix(in srgb, #4ce8db 25%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          outline-color: color-mix(in oklab, var(--color-secondary) 25%, transparent);
        }
      }
    }
    .PasswordControls {
      margin-top: calc(var(--spacing) * 2);
      display: flex;
      flex-direction: column;
      gap: calc(var(--spacing) * 1);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      li {
        &:before {
          margin-right: calc(var(--spacing) * 1.5);
          display: inline-block;
          aspect-ratio: 1 / 1;
          width: calc(var(--spacing) * 2);
          border-radius: calc(infinity * 1px);
          border-style: var(--tw-border-style);
          border-width: 1px;
          border-color: var(--color-primary);
          --tw-content: '';
          content: var(--tw-content);
        }
        &.valid {
          &:before {
            border-color: var(--color-success-dark);
            background-color: var(--color-success-dark);
          }
        }
      }
    }
    .geoloc-form-group {
      .geo-distance {
        display: none;
      }
      input[value] ~ .geo-distance {
        display: flex;
      }
    }
  }
}
.SearchAddressField {
  text-align: left;
  & + .ts-wrapper {
    .ts-control {
      padding: 0 !important;
      background: none;
      outline: none;
      align-items: center;
      &:after {
        content: none;
      }
      &:has([data-ts-item]) {
        input {
          display: none !important;
        }
      }
    }
    .remove {
      width: 1.5rem !important;
      height: 1.5rem;
      flex-shrink: 0;
      background-color: var(--color-secondary);
      color: var(--color-white);
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
    }
    &.focus {
      .ts-control, .ts-control input:focus {
        outline: none;
      }
    }
    .item {
      color: var(--color-primary);
      display: flex;
      gap: 3px;
      padding: 0;
      border-radius: 40px;
    }
  }
}
.SearchAddressField-locate {
  color: var(--color-primary);
  cursor: pointer;
  transition: all linear 0.1s;
  padding: 0.625rem;
  width: 2.75rem;
  height: 2.75rem;
  display: block;
  border-radius: 50%;
  flex-shrink: 0;
  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }
  &:hover, &:focus {
    color: var(--color-primary);
    background: var(--color-extralight-2);
  }
}
.PillsInput {
  margin-right: calc(var(--container-padding) * -1);
  margin-left: calc(var(--container-padding) * -1);
  padding: 15px var(--container-padding);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, black var(--container-padding), black calc(100% - var(--container-padding)), transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, black var(--container-padding), black calc(100% - var(--container-padding)), transparent 100%);
  overflow: auto;
  white-space: nowrap;
  @media (width >= 80rem) {
    -webkit-mask-image: none;
    mask-image: none;
    margin: initial;
    padding: initial;
    white-space: initial;
    overflow: initial;
  }
}
.PillsInput input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.PillsInput input:checked + .PillsInput-label, .PillsInput-label.active {
  border-color: var(--color-primary-light);
  background-color: var(--color-primary-light);
  color: var(--color-white);
}
.PillsInput-label {
  display: block;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 1px;
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  &:focus {
    outline-color: var(--color-primary-light);
  }
  border-color: var(--color-light-2);
}
.PillsInput-label:not(.active) {
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-extralight-2);
    }
  }
}
:root {
  --ts-pr-clear-button: 0px;
  --ts-pr-caret: 0px;
  --ts-pr-min: 0.75rem;
  --ts-pr-caret-color: var(--color-black);
}
.ts-control {
  position: relative;
  box-sizing: border-box;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 1);
  overflow: hidden;
  z-index: 1;
  border-radius: var(--radius-lg);
  background-color: var(--color-gray-100);
  padding: calc(var(--spacing) * 4);
  font-family: var(--font-theme);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
  color: var(--color-gray-900);
  outline-style: var(--tw-outline-style);
  outline-width: 1px;
  outline-color: transparent;
  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));
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-gray-200);
    }
  }
  &:focus {
    outline-color: var(--color-secondary);
  }
}
.disabled .ts-control, .disabled .ts-control * {
  cursor: default !important;
}
.focus .ts-control {
  outline-color: var(--color-secondary);
}
.ts-control > * {
  vertical-align: baseline;
  display: inline-block;
}
.ts-wrapper.multi .ts-control > div {
  border-radius: calc(infinity * 1px);
  background-color: var(--color-secondary);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 1);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
  color: var(--color-dark-gray);
  cursor: pointer;
}
.ts-wrapper.multi .ts-control > div.active {
  background-color: var(--color-secondary-light);
}
.ts-wrapper.multi.disabled .ts-control > div, .ts-wrapper.multi.disabled .ts-control > div.active {
  color: white;
  background: #d2d2d2;
  border: 1px solid #aaaaaa;
}
.ts-control > input {
  flex: 1 1 auto;
  min-width: 7rem;
  display: inline-block !important;
  padding: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  max-width: 100% !important;
  margin: 0 !important;
  text-indent: 0 !important;
  border: 0 none !important;
  background: none !important;
  line-height: inherit !important;
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  -ms-user-select: auto !important;
  user-select: auto !important;
  box-shadow: none !important;
}
.ts-control > input::-ms-clear {
  display: none;
}
.ts-control > input:focus {
  outline: none !important;
}
.has-items .ts-control > input {
  margin: 0 4px !important;
}
.ts-control.rtl {
  text-align: right;
}
.ts-control.rtl.single .ts-control:after {
  left: 15px;
  right: auto;
}
.ts-control.rtl .ts-control > input {
  margin: 0 4px 0 -2px !important;
}
.disabled .ts-control {
  opacity: 0.5;
}
.input-hidden .ts-control > input {
  opacity: 0;
  position: absolute;
  left: -10000px;
}
.ts-dropdown {
  position: absolute;
  top: 100%;
  left: calc(var(--spacing) * 0);
  z-index: 10;
  margin-top: calc(var(--spacing) * 1);
  width: 100%;
  border-radius: var(--radius-lg);
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 2.5);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  box-sizing: border-box;
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-gray-50);
  color: var(--color-black);
}
.ts-dropdown [data-selectable] {
  cursor: pointer;
  overflow: hidden;
}
.ts-dropdown [data-selectable] .highlight {
  border-radius: var(--radius-xs);
  background-color: var(--color-secondary);
}
.ts-dropdown .no-results, .ts-dropdown .create {
  padding: 5px 8px;
}
.ts-dropdown .option, .ts-dropdown [data-disabled], .ts-dropdown [data-disabled] [data-selectable].option {
  cursor: inherit;
  opacity: 0.5;
}
.ts-dropdown [data-selectable].option {
  cursor: pointer;
  opacity: 100%;
  border-radius: var(--radius-sm);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 2.5);
  &:has(> input) {
    display: flex;
    align-items: center;
  }
}
.ts-dropdown .active {
  background-color: color-mix(in srgb, #4ce8db 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-secondary) 50%, transparent);
  }
}
.ts-dropdown .active.create {
  color: #495c68;
}
.ts-dropdown .create {
  color: rgba(48, 48, 48, 0.5);
}
.ts-dropdown .spinner {
  display: inline-block;
  width: 1.875rem;
  height: 1.875rem;
  margin: 5px 8px;
}
.ts-dropdown .spinner::after {
  content: " ";
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 3px;
  border-radius: 50%;
  border: 5px solid #d0d0d0;
  border-color: #d0d0d0 transparent #d0d0d0 transparent;
  animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.ts-dropdown-content {
  overflow: hidden auto;
  max-height: 200px;
  scroll-behavior: smooth;
}
.ts-wrapper.plugin-drag_drop .ts-dragging {
  color: transparent !important;
}
.ts-wrapper.plugin-drag_drop .ts-dragging > * {
  visibility: hidden !important;
}
.plugin-checkbox_options:not(.rtl) .option input {
  margin-right: 0.5rem;
}
.plugin-checkbox_options.rtl .option input {
  margin-left: 0.5rem;
}
.plugin-clear_button {
  --ts-pr-clear-button: 1em;
}
.plugin-clear_button .clear-button {
  opacity: 0;
  position: absolute;
  top: calc(50% - 2px);
  transform: translateY(-50%);
  right: calc(8px - 6px);
  margin-right: 0 !important;
  background: transparent !important;
  transition: opacity 0.5s;
  cursor: pointer;
}
.plugin-clear_button.form-select .clear-button, .plugin-clear_button.single .clear-button {
  right: max(var(--ts-pr-caret), 8px);
}
.plugin-clear_button.focus.has-items .clear-button, .plugin-clear_button:not(.disabled):hover.has-items .clear-button {
  opacity: 1;
}
.ts-wrapper .dropdown-header {
  position: relative;
  padding: 0.625rem 8px;
  border-bottom: 1px solid #d0d0d0;
  background: color-mix(#fff, #d0d0d0, 85%);
  border-radius: 3px 3px 0 0;
}
.ts-wrapper .dropdown-header-close {
  position: absolute;
  right: 8px;
  top: 50%;
  color: #303030;
  opacity: 0.4;
  margin-top: -12px;
  line-height: 20px;
  font-size: 20px !important;
}
.ts-wrapper .dropdown-header-close:hover {
  color: black;
}
.plugin-dropdown_input.focus.dropdown-active .ts-control {
  box-shadow: none;
  border: 1px solid #d0d0d0;
}
.plugin-dropdown_input .dropdown-input {
  border: 1px solid #d0d0d0;
  border-width: 0 0 1px;
  display: block;
  padding: 8px 8px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  width: 100%;
  background: transparent;
}
.plugin-dropdown_input .items-placeholder {
  border: 0 none !important;
  box-shadow: none !important;
  width: 100%;
}
.plugin-dropdown_input.has-items .items-placeholder, .plugin-dropdown_input.dropdown-active .items-placeholder {
  display: none !important;
}
.ts-wrapper.plugin-input_autogrow.has-items .ts-control > input {
  min-width: 0;
}
.ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control > input {
  flex: none;
  min-width: 4px;
}
.ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control > input::-ms-input-placeholder {
  color: transparent;
}
.ts-wrapper.plugin-input_autogrow.has-items.focus .ts-control > input::placeholder {
  color: transparent;
}
.ts-dropdown.plugin-optgroup_columns .ts-dropdown-content {
  display: flex;
}
.ts-dropdown.plugin-optgroup_columns .optgroup {
  border-right: 1px solid #f2f2f2;
  border-top: 0 none;
  flex-grow: 1;
  flex-basis: 0;
  min-width: 0;
}
.ts-dropdown.plugin-optgroup_columns .optgroup:last-child {
  border-right: 0 none;
}
.ts-dropdown.plugin-optgroup_columns .optgroup::before {
  display: none;
}
.ts-dropdown.plugin-optgroup_columns .optgroup-header {
  border-top: 0 none;
}
.ts-wrapper.plugin-remove_button .item {
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}
.ts-wrapper.plugin-remove_button .item .remove {
  width: calc(var(--spacing) * 3.5);
  text-align: center;
  font-family: var(--font-mono);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
  color: var(--color-black);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.ts-wrapper.plugin-remove_button .item .remove:hover {
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  color: var(--color-gray-500);
}
.ts-wrapper.plugin-remove_button.disabled .item .remove:hover {
  background: none;
}
.ts-wrapper.plugin-remove_button .remove-single {
  position: absolute;
  right: 0;
  top: 0;
  font-size: 23px;
}
.ts-wrapper.single .ts-control, .ts-wrapper.single .ts-control input {
  cursor: pointer;
}
.ts-control:not(.rtl) {
  padding-right: max(var(--ts-pr-min), var(--ts-pr-clear-button) + var(--ts-pr-caret)) !important;
}
.ts-control.rtl {
  padding-left: max(var(--ts-pr-min), var(--ts-pr-clear-button) + var(--ts-pr-caret)) !important;
}
.ts-wrapper {
  position: relative;
}
.ts-dropdown, .ts-control, .ts-control input {
  &::placeholder {
    color: var(--color-gray-600);
  }
  font-size: max(16px, var(--text-sm));
  line-height: normal;
  @media (width >= 48rem) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
  }
}
.ts-control, .ts-wrapper.single.input-active .ts-control {
  cursor: text;
}
.ts-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  white-space: nowrap !important;
}
.ts-wrapper .ts-control {
  --ts-pr-caret: 2rem;
}
.ts-wrapper .ts-control::after {
  content: " ";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: var(--ts-pr-caret-color) transparent transparent transparent;
}
.ts-wrapper .ts-control:not(.rtl)::after {
  right: 15px;
}
.ts-wrapper .ts-control.rtl::after {
  left: 15px;
}
.ts-wrapper.dropdown-active .ts-control::after {
  margin-top: -4px;
  border-width: 0 5px 5px 5px;
  border-color: transparent transparent var(--ts-pr-caret-color) transparent;
}
.ts-wrapper.input-active .ts-control, .ts-wrapper.input-active .ts-control input {
  cursor: text;
}
.ts-wrapper {
  display: flex;
  min-height: 36px;
}
.ts-wrapper.multi.disabled .ts-control [data-value], .ts-wrapper.multi.disabled .ts-control [data-value] .remove {
  border-color: #e6e6e6;
}
.ts-wrapper.multi.disabled .ts-control [data-value] .remove {
  background: none;
}
.ts-dropdown .optgroup-header {
  padding-block: calc(var(--spacing) * 2);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.ts-dropdown .optgroup {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-gray-100);
}
.ts-dropdown .optgroup:first-child {
  --tw-border-style: none;
  border-style: none;
}
.AccordionItem__panel__content {
  .ts-wrapper {
    flex-direction: column;
  }
  .ts-dropdown {
    position: static;
    box-shadow: none;
    border: none;
  }
}
:root {
  --spacing-large: 0.75rem;
  --font-size: 0.75rem;
  --font-size-large: 0.875rem;
  --font-size-larger: 1rem;
  --line-height: 1rem;
  --line-height-larger: 1.25rem;
  --ms-bg: var(--color-gray-100);
  --text-color-dark: #212529;
  --text-color: #585858;
  --text-color-light: #65727e;
  --border-color: #bebebe;
  --border-color-light: #f1f3f5;
  --input-placeholder: #65727e;
  --input-background: #e9e9ed;
  --input-border: #dee2e6;
  --input-border-active: #c1c9d0;
  --input-border-invalid: #e44e4e;
  --input-outline-invalid: rgba(219, 138, 138, 0.5);
  --input-color: #e9e9ed;
  --input-disabled: #f7f7f7;
  --option-background: var(--color-secondary);
  --checkbox-border: #ced4da;
  --checkbox-background: #ffffff;
  --checkbox-active: #ffffff;
  --input-min-height: 2.8125rem;
  --options-height: 40dvh;
  --border-radius: var(--radius-lg);
  --icon-size: 0.75rem;
  --icon-space: 1.875rem;
  --checkbox-size: 1rem;
  --checkbox-radius: 0.25rem;
  --checkbox-thickness: 0.125rem;
}
.multi-select {
  display: flex;
  box-sizing: border-box;
  flex-direction: column;
  position: relative;
  width: 100%;
  user-select: none;
}
.multi-select .multi-select-header {
  background-color: var(--ms-bg);
  border-radius: var(--border-radius);
  padding: calc(var(--spacing) * 4);
  padding-right: var(--icon-space);
  overflow: hidden;
  gap: calc(var(--spacing) * 1);
  min-height: var(--input-min-height);
}
.multi-select .multi-select-header::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23949ba3' viewBox='0 0 16 16'%3E%3Cpath d='M8 13.1l-8-8 2.1-2.2 5.9 5.9 5.9-5.9 2.1 2.2z'/%3E%3C/svg%3E");
  height: var(--icon-size);
  width: var(--icon-size);
}
.multi-select .multi-select-header .multi-select-header-placeholder {
  color: var(--color-gray-600);
  font-size: max(16px, var(--text-sm));
  line-height: normal;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  @media (width >= 48rem) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
  }
}
.multi-select .multi-select-header.multi-select-header-active {
  border-color: var(--input-border-active);
}
.multi-select .multi-select-header.multi-select-header-active::after {
  transform: translateY(-50%) rotate(180deg);
}
.multi-select .multi-select-header.multi-select-header-active + .multi-select-options {
  display: flex;
}
.multi-select .multi-select-header .multi-select-header-placeholder {
  color: var(--text-color-light);
}
.multi-select .multi-select-header .multi-select-header-option {
  display: inline-flex;
  align-items: center;
  background-color: var(--option-background);
  color: var(--text-color-dark);
  font-size: var(--text-xs);
  padding-inline: calc(var(--spacing) * 2.5);
  padding-block: calc(var(--spacing) * 1);
  border-radius: calc(infinity * 1px);
}
.multi-select .multi-select-options {
  display: none;
  box-sizing: border-box;
  flex-flow: wrap;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 3;
  margin-top: calc(var(--spacing) * 1);
  padding: calc(var(--spacing) * 2.5);
  background-color: var(--ms-bg);
  border-radius: var(--border-radius);
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.15);
  max-height: var(--options-height);
  overflow-y: auto;
  overflow-x: hidden;
}
.multi-select .multi-select-options::-webkit-scrollbar {
  width: 0.3125rem;
}
.multi-select .multi-select-options::-webkit-scrollbar-track {
  background: var(--input-background);
}
.multi-select .multi-select-options::-webkit-scrollbar-thumb {
  background: var(--border-color);
}
.multi-select .multi-select-options::-webkit-scrollbar-thumb:hover {
  background: var(--input-placeholder);
}
.multi-select .multi-select-options .multi-select-option, .multi-select .multi-select-options .multi-select-all {
  padding: 0.5rem var(--spacing-large);
}
.multi-select .multi-select-options .multi-select-option[data-group]:not([data-group=""]) {
  padding-left: 2.5rem;
}
.multi-select .multi-select-options .multi-select-option .multi-select-option-radio, multi-select .multi-select-options .multi-select-all .multi-select-option-radio {
  background: var(--checkbox-background);
  margin-right: var(--spacing-large);
  height: var(--checkbox-size);
  width: var(--checkbox-size);
  border: 1px solid var(--checkbox-border);
  border-radius: var(--checkbox-radius);
  position: relative;
}
.multi-select .multi-select-options .multi-select-option .multi-select-option-text, .multi-select .multi-select-options .multi-select-all .multi-select-option-text {
  box-sizing: border-box;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: inherit;
  font-size: var(--font-size-larger);
  line-height: var(--line-height-larger);
  padding-bottom: 1px;
}
.multi-select .multi-select-options .multi-select-option.multi-select-selected .multi-select-option-radio, .multi-select .multi-select-options .multi-select-all.multi-select-selected .multi-select-option-radio {
  border-color: var(--color-secondary);
  background-color: var(--color-secondary);
}
.multi-select .multi-select-options .multi-select-option.multi-select-selected .multi-select-option-radio::after, .multi-select .multi-select-options .multi-select-all.multi-select-selected .multi-select-option-radio::after {
  position: absolute;
  inset: calc(var(--spacing) * 0);
  background-image: var(--background-image-icon-check);
  background-position: center;
  background-repeat: no-repeat;
  content: "";
}
.multi-select .multi-select-options .multi-select-option.multi-select-selected .multi-select-option-text, .multi-select .multi-select-options .multi-select-all.multi-select-selected .multi-select-option-text {
  color: var(--text-color-dark);
}
.multi-select .multi-select-options .multi-select-option:hover, .multi-select .multi-select-options .multi-select-option:active, .multi-select .multi-select-options .multi-select-all:hover, .multi-select .multi-select-options .multi-select-all:active {
  background-color: var(--option-background);
}
.multi-select .multi-select-options .multi-select-all {
  border-bottom: 1px solid var(--border-color-light);
  border-radius: 0;
}
.multi-select .multi-select-options .multi-select-search::placeholder {
  color: var(--text-color-light);
}
.multi-select .multi-select-header, .multi-select .multi-select-option, .multi-select .multi-select-all {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  align-items: center;
  border-radius: var(--border-radius);
  cursor: pointer;
  display: flex;
  align-items: center;
  width: 100%;
  font-size: var(--font-size-larger);
  color: var(--text-color-dark);
}
.multi-select.disabled {
  opacity: 0.6;
  pointer-events: none;
  background-color: var(--input-disabled);
}
.multi-select.multi-select-invalid .multi-select-header {
  border-color: var(--input-border-invalid);
  outline: var(--input-outline-invalid) solid 1px;
}
:root {
  --topbar-height: 0px;
  --container-width: 77.75rem;
  --container-padding: 1.25rem;
  --container-max-w: 100%;
  @media (width >= 48rem) {
    --container-padding: 1.875rem;
  }
  @media (width >= 80rem) {
    --container-padding: 1.25rem;
    --container-max-w: calc(var(--container-width) + (var(--container-padding) * 2));
  }
}
.layout-sticky-sidebar {
  --main-col-width: 100%;
  --sidebar-width: 404px;
  --column-gap: calc(var(--spacing) * 6);
  --row-gap: 25px;
  @media (width >= 80rem) {
    --main-col-width: calc(100% - var(--sidebar-width) - var(--column-gap));
  }
  & .main-col {
    max-width: var(--main-col-width);
  }
  & .sidebar {
    @media (width >= 80rem) {
      position: absolute;
      right: calc((100% - var(--container-width)) / 2);
      top: 0;
      bottom: 0;
      max-width: var(--sidebar-width);
    }
  }
  & .sidebar-content {
    display: flex;
    flex-direction: column;
    gap: var(--row-gap);
    @media (width >= 80rem) {
      position: sticky;
      top: calc(var(--sticky-top-offset) + 0.625rem);
    }
  }
}
@layer components {
  @layer wysiwyg {
    .wysiwyg {
      ol, ul {
        list-style: none;
        margin-bottom: 1.25rem;
      }
      li {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      }
      ol > li::before {
        content: counter(list-item);
        color: var(--color-secondary);
        font-weight: 700;
        margin-right: 0.5rem;
      }
      ul > li::before {
        content: "";
        display: inline-block;
        width: 0.5625rem;
        height: 0.125rem;
        background: var(--color-secondary);
        margin-right: 0.5rem;
        vertical-align: middle;
      }
      dl {
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        color: var(--color-primary);
        display: grid;
        grid-template-columns: repeat(2, minmax(min-content, 1fr));
        margin-bottom: 1.25rem;
        dt {
          display: flex;
          align-items: center;
          justify-content: flex-start;
          gap: 0.2rem;
          font-weight: 700;
          break-after: avoid;
          break-inside: avoid;
        }
        dd {
          display: flex;
          align-items: center;
          justify-content: flex-end;
          text-align: right;
          gap: 0.2rem;
          break-before: avoid;
          break-inside: avoid;
        }
        dt:has(+ dd), dd:has(+ dt), dd:last-child {
          padding-bottom: 0.9375rem;
        }
        dt:has(+ dt), dd + dd {
          grid-column: span 2;
        }
      }
      p {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
        margin-block: 1.25rem;
      }
      hr {
        height: 1px;
        margin: 1.25rem 0;
        background-color: var(--color-light-2);
        border: none;
      }
      h1 {
        font-size: var(--text-h1);
        line-height: var(--tw-leading, var(--text-h1--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h1--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h1--font-weight));
        margin-bottom: 2.5rem;
      }
      h2 {
        font-size: var(--text-h2);
        line-height: var(--tw-leading, var(--text-h2--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
        margin-bottom: 2.5rem;
      }
      h3 {
        font-size: var(--text-h3);
        line-height: var(--tw-leading, var(--text-h3--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
        margin-bottom: 1.875rem;
      }
      h4 {
        font-size: var(--text-h4);
        line-height: var(--tw-leading, var(--text-h4--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
        margin-bottom: 1.875rem;
      }
      h5 {
        font-size: var(--text-xl);
        line-height: var(--tw-leading, var(--text-xl--line-height));
        letter-spacing: var(--tw-tracking, var(--text-xl--letter-spacing));
        font-weight: 700;
        margin-bottom: 1.25rem;
      }
      h6 {
        font-size: var(--text-lg);
        line-height: var(--tw-leading, var(--text-lg--line-height));
        letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
        font-weight: 700;
        margin-bottom: 1.25rem;
      }
      a {
        display: inline-block;
        text-decoration-line: underline;
      }
    }
    .no-wysiwyg {
      ul, ol {
        margin: unset;
        & > li::before {
          all: unset;
        }
      }
      li {
        font-size: unset;
        line-height: unset;
      }
      p {
        font-size: unset;
        line-height: unset;
        margin: unset;
      }
      hr {
        height: unset;
        margin: unset;
        background-color: unset;
      }
      h1, h2, h3, h4, h5, h6 {
        margin-bottom: unset;
        line-height: unset;
        font-size: unset;
      }
      a {
        display: unset;
        text-decoration-line: unset;
      }
    }
  }
  :root {
    --width-ads-card: 300px;
  }
  .ArticleCard {
    overflow: hidden;
    border-radius: 1.25rem;
    background-color: var(--color-white);
    font-family: var(--font-theme);
    --tw-shadow: 0 1.25rem 1rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.07)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.04));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: box-shadow;
    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-shadow: 0 0.5rem 0.5rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(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);
      }
    }
  }
  .ModalHero {
    display: flex;
    gap: 15px;
    padding-bottom: 25px;
    @media (width >= 48rem) {
      gap: 25px;
      padding-bottom: 1.25rem;
    }
  }
  .ModalHero-icon {
    border-radius: calc(infinity * 1px);
    background-color: var(--color-primary);
    color: var(--color-secondary);
    flex-shrink: 0;
    width: 3.75rem;
    height: 3.75rem;
    padding: 0.625rem;
    @media (width >= 48rem) {
      width: 82px;
      height: 82px;
      padding: 15px;
    }
  }
  .ModalHero-title {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    color: var(--color-primary);
    align-self: center;
    @media (width >= 48rem) {
      font-size: var(--text-h2);
      line-height: var(--tw-leading, var(--text-h2--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    }
  }
  .custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: var(--color-primary) #f5f5f5;
    &::-webkit-scrollbar-track {
      -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
      background-color: #f5f5f5;
    }
    &::-webkit-scrollbar {
      width: 6px;
      background-color: #f5f5f5;
    }
    &::-webkit-scrollbar-thumb {
      background-color: var(--color-primary);
    }
  }
  .HeaderContainer {
    top: var(--topbar-height);
    z-index: var(--header-z-index);
    position: sticky;
    background-color: var(--color-white);
  }
  .HeaderContainer--offsetable {
    @media (width >= 80rem) {
      margin-top: var(--header-offset-top, 0);
      background-color: transparent;
      &::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: var(--color-white);
        transform: scaleX(0);
        transition: transform 0.3s ease-in-out;
        will-change: transform;
        z-index: -1;
      }
      &.stuck::before {
        transform: scaleX(1);
      }
    }
  }
  .InteractableBackground {
    @media (width >= 80rem) {
      pointer-events: none;
      & > * {
        pointer-events: auto;
      }
    }
  }
  .Drawer {
    @media (max-width: calc(48rem - 0.02rem)) {
      position: fixed;
      transform: translateY(100%);
      left: 0;
      right: 0;
      bottom: 0;
      padding: 2.5rem 2.5rem 54px;
      border-radius: 20px 20px 0 0;
      background: white;
      z-index: calc(var(--header-z-index) + 1);
      transition: transform 0.07s ease-in-out, box-shadow 0.07s ease-in-out;
      max-height: calc(100dvh - var(--topbar-height) - var(--header-height));
      overflow-y: auto;
      will-change: transform;
      &.is-open {
        transform: none;
        box-shadow: 0 0 999px 9999px rgba(37, 92, 112, 0.8);
      }
      &:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 1.875rem;
        width: 100%;
        background-color: inherit;
        z-index: 4;
      }
      &:after {
        content: "";
        position: absolute;
        top: 16px;
        left: calc(50% - 20px);
        height: 5px;
        width: 42px;
        border-radius: 50px;
        background-color: var(--color-gray-500);
        z-index: 5;
      }
    }
  }
  @media (max-width: calc(48rem - 0.02rem)) {
    .Drawer {
      .scrollable::before, .scrollable::after {
        position: sticky;
        left: 0;
        right: 0;
        height: 0;
        display: flex;
        justify-content: center;
        color: var(--color-primary-light);
        font-size: 1.2rem;
        pointer-events: none;
        z-index: 1;
        opacity: 0;
        transition: opacity 0.3s ease-out, transform 0.3s ease-out;
      }
      .scrollable::before {
        content: "\FE3F";
        top: 0;
        align-items: flex-start;
        transform: translateY(10px);
      }
      .scrollable::after {
        content: "\FE40";
        bottom: 0;
        align-items: flex-end;
        transform: translateY(-10px);
      }
      .scrollable:not(.at-top)::before {
        opacity: 1;
        transform: translateY(0);
      }
      .scrollable:not(.at-bottom)::after {
        opacity: 1;
        transform: translateY(0);
      }
    }
  }
  .Button {
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: calc(infinity * 1px);
    font-family: var(--font-theme);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    outline-color: transparent;
    -webkit-user-select: none;
    user-select: none;
    &:disabled {
      pointer-events: none;
    }
    &:disabled {
      opacity: 50%;
    }
    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));
    text-align: center;
    &:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-width: 4px;
      outline-color: color-mix(in srgb, #4ce8db 25%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        outline-color: color-mix(in oklab, var(--color-secondary) 25%, transparent);
      }
    }
    &:active {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-color: color-mix(in srgb, #9ca3af 25%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        outline-color: color-mix(in oklab, var(--color-gray-400) 25%, transparent);
      }
    }
  }
  .Button--lg {
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 4);
    font-size: var(--text-base);
    line-height: calc(var(--spacing) * 6);
    letter-spacing: calc(var(--text-base) * -0.02);
  }
  .Button--md {
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 3.5);
    font-size: var(--text-sm);
    line-height: calc(var(--spacing) * 4.5);
    letter-spacing: calc(var(--text-sm) * -0.02);
  }
  .Button--sm {
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: calc(var(--spacing) * 4);
    letter-spacing: calc(var(--text-xs) * -0.02);
  }
  .Button--responsive {
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: calc(var(--spacing) * 4);
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 3.5);
    }
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: calc(var(--spacing) * 4.5);
    }
    @media (width >= 80rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
    @media (width >= 80rem) {
      padding-block: calc(var(--spacing) * 4);
    }
    @media (width >= 80rem) {
      font-size: var(--text-base);
      line-height: calc(var(--spacing) * 6);
    }
    letter-spacing: calc(var(--text-xs) * -0.02);
    @media (width >= 48rem) {
      letter-spacing: calc(var(--text-sm) * -0.02);
    }
    @media (width >= 80rem) {
      letter-spacing: calc(var(--text-base) * -0.02);
    }
  }
  .Accordion {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .AccordionItem {
    border-radius: 10px;
    display: grid;
    grid-template-rows: max-content 0fr;
    transition: grid-template-rows 0.3s ease, box-shadow 0.15s ease;
    border: 1px solid transparent;
  }
  .AccordionItem--open {
    grid-template-rows: max-content 1fr;
    grid-template-columns: 100%;
    position: relative;
    & .AccordionItem__header {
      border-bottom-right-radius: 0;
      border-bottom-left-radius: 0;
    }
    & .AccordionItem__icon--close {
      rotate: 180deg;
    }
    & .AccordionItem__icon--open {
      display: block;
    }
    &:has(.AccordionItem__icon--open) {
      .AccordionItem__icon--close {
        display: none;
      }
    }
  }
  .AccordionItem:not(.AccordionItem--open) {
    .AccordionItem__panel__content, .form-group {
      max-height: 0;
    }
  }
  .AccordionItem__header {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.625rem 1.25rem;
    border-radius: 10px;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-weight: 700;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.3s ease, border-radius 0.2s 0.1s ease;
  }
  .AccordionItem__iconWrapper {
    display: flex;
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    flex-shrink: 0;
  }
  .AccordionItem__icon {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    transition: rotate 0.3s ease;
  }
  .AccordionItem__icon--open {
    display: none;
  }
  .AccordionItem__panel {
    border-bottom-right-radius: var(--radius-lg);
    border-bottom-left-radius: var(--radius-lg);
    background-color: var(--color-white);
    overflow: hidden;
    min-height: 0;
  }
  .AccordionItem__panel__content {
    > div {
      margin-bottom: 0 !important;
    }
  }
  .Accordion__filterCount {
    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-secondary);
    border-radius: 100%;
    color: var(--color-primary);
    pointer-events: none;
    margin-left: auto;
  }
  .RetailerMap {
    position: relative;
    right: calc(1/2 * 100%);
    left: calc(1/2 * 100%);
    margin-right: -50%;
    margin-left: -50%;
    height: 280px;
    width: 100%;
    @media (width >= 80rem) {
      height: 500px;
    }
  }
  .RetailerMap {
    .gm-ui-hover-effect {
      height: calc(var(--spacing) * 8);
      width: calc(var(--spacing) * 8);
    }
    > span {
      height: calc(var(--spacing) * 4);
      width: calc(var(--spacing) * 4);
    }
    svg {
      fill: var(--color-primary);
    }
  }
  .RetailerSpot-title {
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary-light);
  }
  .RetailerSpot-address {
    margin-bottom: calc(var(--spacing) * 1);
    display: block;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-gray-600);
    font-style: normal;
  }
  .RetailerSpot-phone {
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary-light);
  }
  .RetailerSpot-link {
    display: block;
    text-align: right;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-primary-light);
    text-decoration-line: underline;
  }
  .AdvertisingCard {
    position: relative;
    z-index: 0;
    overflow: hidden;
    border-radius: 20px;
    min-height: 426px;
    width: var(--width-ads-card);
    strong, b {
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
    small {
      font-size: 75%;
      --tw-leading: 1;
      line-height: 1;
    }
  }
  .AdvertisingCard--dynamic {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding-inline: calc(var(--spacing) * 5.5);
    padding-top: calc(var(--spacing) * 5);
    padding-bottom: calc(var(--spacing) * 4);
    &.AdvertisingCard--lg {
      padding-inline: calc(var(--spacing) * 12.5);
      padding-block: calc(var(--spacing) * 5);
    }
  }
  .AdvertisingCard--image-only {
    display: block;
    align-self: flex-start;
    padding: calc(var(--spacing) * 0);
    &.AdvertisingCard--lg {
      width: 333px;
      max-width: 100%;
      min-height: 0;
      @media (width >= 48rem) {
        width: 824px;
      }
    }
  }
  .AdvertisingCard--lg {
    min-height: 310px;
    width: auto;
    @media (width >= 48rem) {
      min-height: 350px;
    }
  }
  .AdvertisingCard--dynamic.Promo {
    color: var(--color-primary);
    &.bg-gradient-6 {
      color: var(--color-white);
    }
  }
  .Promo-price {
    margin-top: calc(var(--spacing) * 3);
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    strong {
      font-size: 2.5rem;
      --tw-leading: 1.2;
      line-height: 1.2;
    }
  }
  .Promo-title {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    --tw-font-weight: var(--font-weight-thin);
    font-weight: var(--font-weight-thin);
  }
  .Promo-img {
    margin: auto;
    max-width: calc(100% - 2.5rem);
  }
  .Promo-btn {
    grid-column: 1 / -1;
    justify-content: center;
    justify-self: flex-start;
    @media (width >= 80rem) {
      grid-column: span 1 / span 1;
    }
  }
  .Promo-mention {
    grid-column: 1 / -1;
    margin-top: calc(var(--spacing) * 2.5);
    display: flex;
    align-items: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    @media (width >= 80rem) {
      grid-column: span 1 / span 1;
    }
  }
  .Promo-wave {
    position: absolute;
    top: calc(1/2 * 100%);
    right: calc(var(--spacing) * -4);
    z-index: calc(1 * -1);
    height: auto;
    width: 100%;
  }
  .Promo--lg {
    max-width: 100%;
  }
  .AdvertisingCard--dynamic.Promo--lg {
    display: grid;
    grid-template-columns: 1fr 60%;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
    @media (width >= 48rem) {
      grid-template-columns: 1fr 1fr;
      grid-template-rows: repeat(4,auto);
      gap: calc(var(--spacing) * 0);
    }
    .Promo-title {
      grid-column: 1 / -1;
      @media (width >= 48rem) {
        grid-column: span 1 / span 1;
      }
      @media (width >= 48rem) {
        font-size: var(--text-h2);
        line-height: var(--tw-leading, var(--text-h2--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
      }
      strong {
        @media (width >= 48rem) {
          font-size: var(--text-h1);
          line-height: var(--tw-leading, var(--text-h1--line-height));
          letter-spacing: var(--tw-tracking, var(--text-h1--letter-spacing));
          font-weight: var(--tw-font-weight, var(--text-h1--font-weight));
        }
      }
    }
    .Promo-price {
      margin-top: calc(var(--spacing) * 0);
      @media (width >= 48rem) {
        margin-top: calc(var(--spacing) * 4);
      }
      @media (width >= 48rem) {
        font-size: var(--text-lg);
        line-height: var(--tw-leading, var(--text-lg--line-height));
        letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
      }
      strong {
        font-size: 2.75rem;
        --tw-leading: 1.2;
        line-height: 1.2;
        @media (width >= 48rem) {
          font-size: 5rem;
        }
      }
    }
    .Promo-img {
      grid-column-start: 2;
      display: flex;
      max-width: 100%;
      align-items: flex-end;
      @media (width >= 48rem) {
        grid-row: 1 / -1;
      }
      @media (width >= 48rem) {
        height: 100%;
      }
      img {
        @media (width >= 48rem) {
          max-width: 374px;
        }
      }
    }
    .Promo-btn {
      @media (width >= 48rem) {
        grid-column: span 1 / span 1;
      }
    }
    .Promo-mention {
      margin-top: calc(var(--spacing) * 0);
      @media (width >= 48rem) {
        grid-column: span 1 / span 1;
      }
      @media (width >= 48rem) {
        margin-top: calc(var(--spacing) * 2.5);
      }
    }
    .Promo-wave {
      position: absolute;
      top: calc(1/3 * 100%);
      right: calc(var(--spacing) * -4);
      width: 100%;
      @media (width >= 48rem) {
        top: calc(var(--spacing) * 4);
      }
      @media (width >= 48rem) {
        right: calc(var(--spacing) * 4);
      }
      @media (width >= 48rem) {
        width: 400px;
      }
    }
  }
  .AdvertisingCard--dynamic.Promo--reverse {
    &.Promo--lg {
      @media (width >= 48rem) {
        column-gap: calc(var(--spacing) * 8);
      }
      .Promo-img {
        @media (width >= 48rem) {
          grid-column-start: 1;
        }
      }
      .Promo-wave {
        @media (width >= 48rem) {
          right: auto;
        }
        @media (width >= 48rem) {
          left: calc(var(--spacing) * 0);
        }
      }
    }
  }
  .AdvertisingCard--dynamic.Promo--listMode {
    @media (max-width: calc(48rem - 0.02rem)) {
      display: flex;
      height: auto;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: flex-start;
      gap: calc(var(--spacing) * 0);
      padding: calc(var(--spacing) * 4);
      .Promo-title {
        order: 0;
        grid-column: span 1 / span 1;
        font-size: var(--text-h5);
        line-height: var(--tw-leading, var(--text-h5--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h5--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h5--font-weight));
      }
      .Promo-btn {
        order: 4;
        margin-top: calc(var(--spacing) * -8);
        margin-left: auto;
        align-self: flex-end;
      }
      .Promo-mention {
        order: 3;
        max-width: 60%;
        flex: 1 0 60%;
        font-size: 7px;
      }
      .Promo-price {
        order: 2;
        margin-top: calc(var(--spacing) * -6);
        flex: 1 0 100%;
      }
      .Promo-img {
        order: 1;
        margin: calc(var(--spacing) * 0);
        margin-top: calc(var(--spacing) * 2.5);
        margin-left: auto;
        max-width: 35%;
        flex: 0 1 35%;
      }
      .Promo-wave {
        top: calc(var(--spacing) * 2);
        right: calc(var(--spacing) * 2);
        width: 60%;
      }
    }
  }
  .Info {
    background: linear-gradient(var(--gradient-info-degree), var(--start-info-color) var(--start-info-percent), var(--end-info-color) var(--end-info-percent));
  }
  .Info:after, .Info:before {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    z-index: calc(1 * -1);
    --tw-content: "";
    content: var(--tw-content);
  }
  .Info:before {
    background: inherit;
  }
  .Info:after {
    background: linear-gradient(178deg, rgba(0, 0, 0, 0) 84.07%, rgba(0, 0, 0, 0.5) 92.11%);
  }
  .Info-title {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    --tw-font-weight: var(--font-weight-thin);
    font-weight: var(--font-weight-thin);
    strong, b {
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
    small {
      font-size: 75%;
      line-height: 0.75;
    }
  }
  .Info-img {
    position: absolute;
    top: calc(1/5 * 100%);
    right: calc(var(--spacing) * 0);
    bottom: calc(var(--spacing) * 0);
    left: calc(var(--spacing) * 0);
    z-index: calc(2 * -1);
    img {
      height: 100%;
      width: 100%;
      object-fit: cover;
      object-position: center;
    }
  }
  .Info-btn {
    margin-top: auto;
    justify-content: center;
  }
  .Info-mention {
    margin-top: calc(var(--spacing) * 2.5);
    display: flex;
    align-items: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-white);
  }
  .Info--lg {
    --gradient-info-degree: 311deg;
    --start-info-percent: 22.27%;
    --end-info-percent: 78.25%;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    color: var(--color-primary);
    @media (width >= 48rem) {
      --gradient-info-degree: 270deg;
      --start-info-percent: 14.24%;
      --end-info-percent: 60.27%;
      max-width: calc(var(--spacing) * 51.5);
      padding: calc(var(--spacing) * 12.5);
      padding-bottom: calc(var(--spacing) * 7.5);
    }
    &.Info:after {
      background: linear-gradient(181deg, rgba(0, 0, 0, 0) 72.68%, rgba(0, 0, 0, 0.2) 89.17%);
      @media (width >= 80rem) {
        background: none;
      }
    }
    .Info-title {
      @media (width >= 48rem) {
        font-size: var(--text-h1);
        line-height: var(--tw-leading, var(--text-h1--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h1--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h1--font-weight));
      }
    }
    .Info-img {
      position: absolute;
      inset: calc(var(--spacing) * 0);
      z-index: calc(2 * -1);
      img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: center;
      }
    }
    .Info-btn {
      margin-top: calc(var(--spacing) * 4);
      justify-content: center;
    }
    .Info-mention {
      @media (width >= 80rem) {
        color: inherit;
      }
    }
  }
  .Info--listMode {
    @media (max-width: calc(48rem - 0.02rem)) {
      --gradient-info-degree: -90deg;
      height: auto;
      .Info-mention {
        max-width: 60%;
        font-size: 7px;
        color: inherit;
      }
      .Info-title {
        font-size: var(--text-h5);
        line-height: var(--tw-leading, var(--text-h5--line-height));
        letter-spacing: var(--tw-tracking, var(--text-h5--letter-spacing));
        font-weight: var(--tw-font-weight, var(--text-h5--font-weight));
      }
      .Info-btn {
        order: 4;
        margin-top: calc(var(--spacing) * -8);
        margin-left: auto;
      }
    }
  }
  body:has(.Modal dialog[open]) {
    overflow: hidden;
  }
  .Modal {
    --mobile-notch-height: 3.25rem;
    --mobile-padding-top: 7.5rem;
    --mobile-max-height: calc(100dvh - var(--mobile-padding-top));
    --modal-anim-duration: 500ms;
  }
  .Modal dialog {
    cursor: pointer;
    top: var(--mobile-padding-top);
    max-height: none;
    height: var(--mobile-max-height);
    overflow: hidden;
    max-width: 100%;
    width: 100%;
    @media (width >= 48rem) {
      width: var(--container-4xl);
    }
    border-top-left-radius: var(--radius-2xl);
    border-top-right-radius: var(--radius-2xl);
    @media (width >= 48rem) {
      border-radius: var(--radius-2xl);
    }
    @media (width >= 48rem) {
      max-width: calc(100% - 3rem);
      max-height: calc(100% - 3rem);
      height: fit-content;
      left: 50%;
      transform: translate3d(-50%, -50%, 0);
      top: 50%;
    }
  }
  .Modal dialog::backdrop {
    background-color: transparent;
    transition: display var(--modal-anim-duration) allow-discrete, overlay var(--modal-anim-duration) allow-discrete, background-color var(--modal-anim-duration);
  }
  .Modal dialog[open]::backdrop {
    background-color: color-mix(in oklab, #255c70 80%, transparent);
  }
  @starting-style {
    .Modal dialog[open]::backdrop {
      background-color: transparent;
    }
  }
  .Modal dialog .Modal_Dialog_container {
    max-height: calc(var(--mobile-max-height) - var(--mobile-notch-height));
    overflow-y: auto;
    cursor: default;
    padding-inline: calc(var(--spacing) * 10);
    padding-bottom: calc(var(--spacing) * 6);
  }
  .Modal_Dialog_closeBtn {
    cursor: pointer;
    height: var(--mobile-notch-height);
    display: block;
    width: 100%;
    padding-block: calc(var(--spacing) * 6);
    @media (width >= 48rem) {
      width: auto;
      margin-left: auto;
      padding-right: calc(var(--spacing) * 4);
    }
  }
  .Modal_Dialog_closeBtn::after {
    content: "";
    display: block;
    width: 2.625rem;
    height: 0.3125rem;
    margin: auto;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-gray-300);
    @media (width >= 48rem) {
      display: none;
    }
  }
  .Modal_Dialog_closeBtn svg {
    display: none;
    @media (width >= 80rem) {
      display: block;
    }
  }
  .Modal dialog[open] {
    animation: mobileDialogFadeInUp;
    animation-duration: var(--modal-anim-duration);
    @media (width >= 48rem) {
      animation: dialogFadeInUp;
      animation-duration: var(--modal-anim-duration);
    }
  }
  .Modal dialog[closing] {
    animation: mobileDialogFadeOutDown;
    animation-duration: var(--modal-anim-duration);
    @media (width >= 48rem) {
      animation: dialogFadeOutDown;
      animation-duration: var(--modal-anim-duration);
    }
  }
  .Modal dialog[closing]::backdrop {
    background-color: transparent;
    transition: display 500s allow-discrete, overlay var(--modal-anim-duration) allow-discrete, background-color var(--modal-anim-duration);
  }
  @starting-style {
    .Modal dialog[closing]::backdrop {
      background-color: color-mix(in oklab, #255c70 80%, transparent);
    }
  }
  @keyframes mobileDialogFadeInUp {
    from {
      opacity: 0;
      transform: translate3d(0, 100%, 0);
    }
    to {
      opacity: 1;
      transform: translate3d(0, 0, 0);
    }
  }
  @keyframes dialogFadeInUp {
    from {
      opacity: 0;
      transform: translate3d(-50%, 100%, 0);
    }
    to {
      opacity: 1;
      transform: translate3d(-50%, -50%, 0);
    }
  }
  @keyframes mobileDialogFadeOutDown {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
      transform: translate3d(0, 100%, 0);
    }
  }
  @keyframes dialogFadeOutDown {
    from {
      opacity: 1;
      transform: translate3d(-50%, -50%, 0);
    }
    to {
      opacity: 0;
      transform: translate3d(-50%, 100%, 0);
    }
  }
  .VehicleCard-content {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    cursor: pointer;
    padding-bottom: calc(var(--spacing) * 3.75);
    --banner-height: 1.75rem;
    --gallery-height: 12.1rem;
    grid-template-columns: 100%;
    grid-template-rows: var(--banner-height) var(--gallery-height) min-content min-content min-content minmax(3.5rem, max-content) auto;
    grid-template-areas: "banner" "gallery" "title" "subtitle" "specs" "sale-infos" "pricing";
    & > *:not(.VehicleCard-banner, .VehicleCard-gallery, .VehicleCard-favorite) {
      margin-inline: calc(var(--spacing) * 5);
    }
  }
  .VehicleCard-banner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1.25);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    font-size: var(--text-xs-desktop);
    line-height: var(--text-xs--line-height-desktop);
    padding: 0 1.25rem;
    grid-area: banner;
  }
  .VehicleCard-gallery {
    position: relative;
    height: 100%;
    background-color: var(--color-light-1);
    background-image: var(--background-image-logo);
    background-size: auto 80%;
    background-position: center;
    background-repeat: no-repeat;
    background-blend-mode: overlay;
    grid-area: gallery;
    & img {
      z-index: 0;
      height: 100%;
      width: 100%;
      object-fit: cover;
    }
  }
  .VehicleCard-favorite {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    position: absolute;
    top: calc(var(--banner-height) + 0.625rem);
    right: 0.625rem;
    z-index: 20;
  }
  .VehicleCard-tag-discount {
    display: flex;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    white-space: nowrap;
    color: var(--color-primary);
    font-size: var(--text-2xs);
    line-height: var(--tw-leading, var(--text-2xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
    font-size: var(--text-2xs-desktop);
    line-height: var(--text-2xs--line-height-desktop);
    position: absolute;
    right: 0.625rem;
    bottom: 0.625rem;
    height: 1.5rem;
    & > * {
      display: flex;
      height: 100%;
      align-items: center;
      padding-inline: calc(var(--spacing) * 1.25);
      &:first-child {
        border-top-left-radius: var(--radius-md);
        border-bottom-left-radius: var(--radius-md);
        background-color: color-mix(in srgb, #ffffff 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 70%, transparent);
        }
      }
      &:last-child {
        border-top-right-radius: var(--radius-md);
        border-bottom-right-radius: var(--radius-md);
      }
    }
  }
  .VehicleCard-countdown {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 0.5);
    position: absolute;
    left: 0.625rem;
    top: 0.625rem;
    z-index: 10;
    & .countdown-unit {
      display: flex;
      flex-direction: column;
      align-items: center;
    }
    & .countdown-value {
      display: flex;
      align-items: center;
      justify-content: center;
      height: calc(var(--spacing) * 6);
      min-width: calc(var(--spacing) * 6);
      border-radius: var(--radius-md);
      padding-inline: calc(var(--spacing) * 1);
      font-size: var(--text-2xs);
      line-height: var(--tw-leading, var(--text-2xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-primary);
    }
    & .countdown-label {
      margin-top: calc(var(--spacing) * 0.5);
      font-size: 0.4375rem;
      color: var(--color-dark-gray);
    }
    & .countdown-separator {
      align-self: flex-start;
      font-size: var(--text-2xs);
      line-height: var(--tw-leading, var(--text-2xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
      --tw-leading: calc(var(--spacing) * 6);
      line-height: calc(var(--spacing) * 6);
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-primary);
    }
    &.is-expired {
      opacity: 40%;
    }
  }
  .VehicleCard-title, .VehicleCard-subtitle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--color-primary);
  }
  .VehicleCard-title {
    margin-top: calc(var(--spacing) * 3.75);
    margin-bottom: calc(var(--spacing) * 1);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-size: var(--text-base-desktop);
    line-height: var(--text-base--line-height-desktop);
    grid-area: title;
  }
  .VehicleCard-subtitle {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    font-size: var(--text-xs-desktop);
    line-height: var(--text-xs--line-height-desktop);
    grid-area: subtitle;
  }
  .VehicleCard-specs {
    margin-block: calc(var(--spacing) * 2);
    display: flex;
    list-style-type: none;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 0.5);
    grid-area: specs;
    & > li {
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 1);
      border-radius: calc(infinity * 1px);
      background-color: var(--color-extralight-2);
      padding-inline: calc(var(--spacing) * 1.5);
      padding-block: calc(var(--spacing) * 1);
      white-space: nowrap;
      color: var(--color-primary);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      font-size: var(--text-xs-desktop);
      line-height: var(--text-xs--line-height-desktop);
      & svg {
        display: none;
      }
    }
  }
  .VehicleCard-sale-infos {
    display: flex;
    flex-wrap: wrap;
    column-gap: calc(var(--spacing) * 2);
    margin-block: calc(var(--spacing) * 2);
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
    border-color: var(--color-extralight-2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    font-size: var(--text-xs-desktop);
    line-height: var(--text-xs--line-height-desktop);
    grid-area: sale-infos;
    & > div {
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 1);
      & span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      max-width: 100%;
    }
  }
  .VehicleCard-pricing {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    grid-area: pricing;
  }
  .VehicleCard-installment {
    display: flex;
    flex-shrink: 0;
    align-items: flex-end;
    justify-content: center;
    gap: calc(var(--spacing) * 0.5);
    width: calc(3/5 * 100%);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-secondary);
    padding: calc(var(--spacing) * 2.5);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    white-space: nowrap;
    color: var(--color-primary);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-size: var(--text-base-desktop);
    line-height: var(--text-base--line-height-desktop);
    & small {
      padding-bottom: calc(var(--spacing) * 0.5);
      font-size: var(--text-2xs);
      line-height: var(--tw-leading, var(--text-2xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  .VehicleCard-prices {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-size: var(--text-base-desktop);
    line-height: var(--text-base--line-height-desktop);
    & small {
      padding-bottom: calc(var(--spacing) * 0.5);
      font-size: var(--text-2xs);
      line-height: var(--tw-leading, var(--text-2xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  @media (max-width: calc(48rem - 0.02rem)) {
    .VehicleCard--horizontal {
      & .VehicleCard-content {
        gap: calc(var(--spacing) * 0);
        padding: calc(var(--spacing) * 4);
        grid-template-columns: 2fr 1.5rem 1fr;
        grid-template-rows: min-content min-content 1fr auto;
        grid-template-areas: "title favorite gallery" "subtitle subtitle gallery" "sale-infos sale-infos gallery" "specs specs pricing";
        & > * {
          margin: calc(var(--spacing) * 0);
        }
      }
      & .VehicleCard-gallery {
        height: calc(var(--spacing) * 18);
        overflow: hidden;
        border-radius: var(--radius-md);
        margin-left: calc(var(--spacing) * 2);
      }
      & .VehicleCard-banner, & .VehicleCard-tag-discount {
        display: none;
      }
      & .VehicleCard-favorite {
        position: static;
        margin-top: calc(var(--spacing) * -0.5);
        width: calc(var(--spacing) * 6);
        height: calc(var(--spacing) * 6);
      }
      & .VehicleCard-title {
        margin-top: calc(var(--spacing) * 0);
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      }
      & .VehicleCard-sale-infos {
        margin: calc(var(--spacing) * 0);
        --tw-border-style: none;
        border-style: none;
        padding: calc(var(--spacing) * 0);
        padding-top: calc(var(--spacing) * 2);
        font-size: var(--text-2xs);
        line-height: var(--tw-leading, var(--text-2xs--line-height));
        letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
      }
      & .VehicleCard-specs {
        margin: calc(var(--spacing) * 0);
        display: grid;
        gap: calc(var(--spacing) * 1);
        border-radius: var(--radius-md);
        background-color: var(--color-extralight-2);
        padding: calc(var(--spacing) * 2);
        margin-top: calc(var(--spacing) * 2);
        grid-template-columns: repeat(auto-fit, minmax(85px, 1fr));
        & > li {
          border-radius: 0;
          background-color: transparent;
          padding: calc(var(--spacing) * 0);
          white-space: normal;
          overflow-wrap: anywhere;
          & svg {
            display: inline-block;
            flex-shrink: 0;
          }
        }
      }
      & .VehicleCard-pricing {
        margin: calc(var(--spacing) * 0);
        flex-direction: column;
        margin-top: calc(var(--spacing) * 2);
        margin-left: calc(var(--spacing) * 2);
      }
      & .VehicleCard-installment {
        width: auto;
        gap: 1px;
        padding-inline: calc(var(--spacing) * 1);
        padding-block: calc(var(--spacing) * 1.5);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        & small {
          padding-bottom: 1px;
          font-size: 7px;
          line-height: normal;
        }
        & svg {
          width: 0.75rem;
          height: 0.75rem;
        }
      }
      & .VehicleCard-prices {
        flex-grow: 1;
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
        & small {
          font-size: 7px;
          line-height: normal;
        }
        & > :not(:last-child) {
          display: none;
        }
      }
      & .VehicleCard-countdown {
        display: none;
      }
    }
  }
  .RetailerCard {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 5);
    padding: calc(var(--spacing) * 5);
  }
  .RetailerCard-head {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    gap: calc(var(--spacing) * 5);
  }
  .RetailerCard-picture {
    height: calc(var(--spacing) * 39);
    overflow: hidden;
    border-radius: 0.625rem;
    background-color: var(--color-light-1);
    background-image: var(--background-image-logo);
    background-size: auto 80%;
    background-position: center;
    background-repeat: no-repeat;
    background-blend-mode: overlay;
    & img {
      height: 100%;
      width: 100%;
      object-fit: cover;
    }
  }
  .RetailerCard-title {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
  }
  .RetailerCard-contact {
    display: flex;
    list-style-type: none;
    flex-direction: column;
    gap: calc(var(--spacing) * 2.5);
    & > li {
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 2);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      color: var(--color-primary);
      & > svg {
        flex-shrink: 0;
        border-radius: calc(infinity * 1px);
        background-color: var(--color-extralight-2);
        padding: calc(var(--spacing) * 2);
        color: var(--color-primary-light);
      }
    }
  }
  .RetailerModule {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 1.875rem;
    row-gap: 1.25rem;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    color: var(--color-primary);
    & > * {
      display: flex;
      flex-direction: column;
      gap: 1rem;
    }
  }
  .RetailerModule-content {
    display: flex;
    flex-direction: column;
  }
  .RetailerModule-info {
    display: flex;
    align-items: center;
    gap: 0.625rem;
  }
  .RetailerModule-icon {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 100%;
    align-self: start;
  }
  .RetailerModule-buttons {
    display: flex;
    column-gap: 1rem;
    row-gap: 0.625rem;
  }
  .RetailerModule-map {
    background-color: var(--color-primary);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 100px 80px 0 rgba(0, 0, 0, 0.07), 0 20px 13px 0 rgba(0, 0, 0, 0.04);
    flex-shrink: 0;
    width: 100%;
  }
  .RetailerModule--product {
    padding: 1.875rem 1.25rem;
    border-radius: 20px;
    background-color: var(--color-light-1);
    overflow: hidden;
    @media (width >= 48rem) {
      grid-template-columns: 1fr 338px;
      align-items: end;
      padding: 45px 1.875rem;
    }
    & .RetailerModule-title {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xl--letter-spacing));
    }
    .RetailerModule-info--address {
      width: 50%;
    }
    & .RetailerModule-icon {
      background-color: var(--color-white);
    }
    & .RetailerModule-content {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      gap: 1rem;
      margin-top: 5px;
      @media (width >= 48rem) {
        flex-direction: row;
        flex-wrap: wrap;
        row-gap: 1.875rem;
        margin-top: 1rem;
      }
    }
    & .RetailerModule-buttons {
      margin-top: 1rem;
      & > * {
        flex: 1;
      }
    }
    & .RetailerModule-map {
      height: 175px;
      @media (width >= 48rem) {
        height: 290px;
      }
    }
  }
  .RetailerModule--retailer {
    @media (width >= 48rem) {
      grid-template-columns: 1fr minmax(0, min(516px, 40%));
      grid-template-rows: min-content;
    }
    & .RetailerModule-title {
      font-size: var(--text-h3);
      line-height: var(--tw-leading, var(--text-h3--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
      align-self: center;
      text-align: center;
      @media (width >= 48rem) {
        align-self: unset;
        text-align: inherit;
      }
    }
    & .RetailerModule-rating {
      align-self: center;
      @media (width >= 48rem) {
        align-self: unset;
      }
    }
    & .RetailerModule-icon {
      background-color: var(--color-extralight-2);
      color: var(--color-primary-light);
    }
    & .RetailerModule-content {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
      font-weight: 700;
      row-gap: 25px;
      margin-top: 0.625rem;
    }
    & .RetailerModule-buttons {
      flex-direction: column;
      margin-top: 0.625rem;
      @media (width >= 48rem) {
        flex-direction: row;
      }
    }
    & .RetailerModule-picture {
      margin-bottom: calc(var(--spacing) * 4);
      background-color: var(--color-light-1);
      background-image: var(--background-image-logo);
      background-size: auto 80%;
      background-position: center;
      background-repeat: no-repeat;
      background-blend-mode: overlay;
      width: 100%;
      height: 175px;
      border-radius: 10px;
      overflow: hidden;
      & img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
      @media (width >= 48rem) {
        height: 270px;
      }
    }
    & .RetailerModule-map {
      height: 175px;
      @media (width >= 48rem) {
        height: 270px;
      }
    }
  }
  .VehicleSummary {
    position: relative;
    display: grid;
    overflow: hidden;
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 5);
    font-family: var(--font-theme);
    color: var(--color-primary);
    --tw-shadow: 0 1.25rem 1rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.07)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.04));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    @media (width >= 80rem) {
      border-radius: 1.25rem;
    }
    grid-template-columns: 1fr;
    grid-template-areas: "banner" "titleGroup" "specs" "pricing" "sale-infos" "ctas" "delivery" "help" "bookingDate" "activity";
  }
  .VehicleSummary-top-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 2);
    position: absolute;
    top: calc(var(--spacing) * 5);
    right: calc(var(--spacing) * 5);
    display: none;
    @media (width >= 80rem) {
      display: flex;
    }
  }
  .VehicleSummary:has(> .VehicleSummary-banner) .VehicleSummary-top-actions {
    top: calc(var(--spacing) * 12);
  }
  .VehicleSummary-share {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 2);
    color: var(--color-primary);
    cursor: pointer;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-light-2);
      }
    }
    & > svg {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
    }
  }
  .VehicleSummary-dropdown {
    display: none;
    grid-area: dropdown;
  }
  .VehicleSummary-picture {
    display: none;
    grid-area: picture;
  }
  .VehicleSummary-titleGroup {
    grid-area: titleGroup;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }
  .VehicleSummary-title {
    @media (width >= 80rem) {
      margin-top: calc(var(--spacing) * 3);
    }
    @media (width >= 80rem) {
      margin-right: calc(var(--spacing) * 10);
    }
  }
  .VehicleSummary-title, .VehicleSummary-subtitle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .VehicleSummary-title {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .VehicleSummary-subtitle {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
  }
  .VehicleSummary-specs {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    margin-top: calc(var(--spacing) * 3.75);
    grid-area: specs;
    & > li {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: calc(var(--spacing) * 1);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      color: var(--color-dark-gray);
      flex: 1 0 0;
      text-align: center;
      & > svg {
        width: calc(var(--spacing) * 10);
        height: calc(var(--spacing) * 10);
        border-radius: calc(infinity * 1px);
        background-color: var(--color-extralight-2);
        padding: calc(var(--spacing) * 2);
        color: var(--color-primary-light);
      }
    }
  }
  .VehicleSummary-banner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1.25);
    margin-inline: calc(var(--spacing) * -5);
    margin-top: calc(var(--spacing) * -5);
    margin-bottom: calc(var(--spacing) * 3);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 2);
    @media (width >= 80rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    white-space: nowrap;
    color: var(--color-primary);
    @media (width >= 80rem) {
      border-top-left-radius: 1.25rem;
      border-top-right-radius: 1.25rem;
    }
    grid-area: banner;
  }
  .VehicleSummary-tag-discount {
    margin-left: auto;
    display: flex;
    align-items: center;
    align-self: center;
    overflow: hidden;
    border-radius: var(--radius-lg);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-primary);
    & > span:first-child {
      background-color: var(--color-white);
      padding-inline: calc(var(--spacing) * 2.5);
      padding-block: calc(var(--spacing) * 1);
    }
    & > span:last-child {
      padding-inline: calc(var(--spacing) * 2.5);
      padding-block: calc(var(--spacing) * 1);
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-primary);
    }
  }
  .VehicleSummary-pricing {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 2.5);
    margin-top: calc(var(--spacing) * 3.75);
    padding: calc(var(--spacing) * 2.5);
    border-radius: var(--radius-2xl);
    background-color: var(--color-extralight-2);
    grid-area: pricing;
    &:not(:has(.VehicleSummary-countdown, .VehicleSummary-tag-discount)) {
      background-color: transparent;
      & .VehicleSummary-prices {
        border-style: var(--tw-border-style);
        border-width: 1px;
        border-color: var(--color-light-1);
      }
    }
  }
  .VehicleSummary-countdown {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    &.is-expired {
      opacity: 40%;
    }
    & .countdown-unit {
      display: flex;
      flex-direction: column;
      align-items: center;
    }
    & .countdown-value {
      display: flex;
      align-items: center;
      justify-content: center;
      height: calc(var(--spacing) * 8);
      min-width: calc(var(--spacing) * 8);
      border-radius: var(--radius-lg);
      padding-inline: calc(var(--spacing) * 1.5);
      background-color: var(--color-secondary);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-primary);
    }
    & .countdown-label {
      margin-top: calc(var(--spacing) * 0.5);
      font-size: 0.5625rem;
      color: var(--color-dark-gray);
    }
    & .countdown-separator {
      align-self: flex-start;
      --tw-leading: calc(var(--spacing) * 8);
      line-height: calc(var(--spacing) * 8);
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
      color: var(--color-primary);
    }
  }
  .VehicleSummary-installment {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: calc(var(--spacing) * 0.5);
    border-radius: var(--radius-xl);
    background-color: var(--color-light-1);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-h4);
    line-height: var(--tw-leading, var(--text-h4--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    white-space: nowrap;
    flex: 1 1 calc(50% - 0.625rem);
    & small {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
    & svg {
      position: absolute;
      top: calc(var(--spacing) * 1.5);
      right: calc(var(--spacing) * 1.5);
    }
  }
  .VehicleSummary-prices {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-xl);
    background-color: var(--color-white);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-h5);
    line-height: var(--tw-leading, var(--text-h5--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h5--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h5--font-weight));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    flex: 1 1 calc(50% - 0.625rem);
    & small {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  .VehicleSummary-originalPrice {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--color-dark-gray);
    text-decoration-line: line-through;
  }
  .VehicleSummary-sale-infos {
    display: flex;
    flex-direction: column;
    margin-top: calc(var(--spacing) * 3.75);
    grid-area: sale-infos;
    & > li:not(:first-child) {
      border-top-style: var(--tw-border-style);
      border-top-width: 1px;
      border-color: var(--color-extralight-2);
      padding-top: calc(var(--spacing) * 2.5);
    }
    & > li:not(:last-child) {
      padding-bottom: calc(var(--spacing) * 2.5);
    }
  }
  .VehicleSummary-sale-info-title {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    & > svg {
      width: calc(var(--spacing) * 6);
      height: calc(var(--spacing) * 6);
      flex-shrink: 0;
      color: var(--color-secondary);
    }
  }
  .VehicleSummary-sale-info-details {
    margin-top: calc(var(--spacing) * 1);
    margin-left: calc(var(--spacing) * 7.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-dark-gray);
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .VehicleSummary-ctas {
    margin-block: calc(var(--spacing) * 6.25);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(var(--spacing) * 2.5);
    grid-area: ctas;
    min-height: 3rem;
  }
  .VehicleSummary-delivery, .VehicleSummary-help, .VehicleSummary-bookingDate {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.25);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    border-radius: 0.625rem;
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--color-light-2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-dark-gray);
    & strong {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
    & a {
      margin-left: auto;
      cursor: pointer;
      color: var(--color-primary);
      text-decoration-line: underline;
      &:hover {
        @media (hover: hover) {
          color: var(--color-primary-light);
        }
      }
    }
    & svg {
      width: calc(var(--spacing) * 10);
      height: calc(var(--spacing) * 10);
      flex-shrink: 0;
      border-radius: calc(infinity * 1px);
      background-color: var(--color-extralight-2);
      padding: calc(var(--spacing) * 2);
      color: var(--color-primary-light);
    }
  }
  .VehicleSummary-delivery {
    grid-area: delivery;
  }
  .VehicleSummary-help {
    margin-top: calc(var(--spacing) * 2.5);
    grid-area: help;
  }
  .VehicleSummary-booking-wrapper {
    grid-area: booking;
  }
  .VehicleSummary-booking {
    display: none;
  }
  .VehicleSummary-bookingDate {
    display: none;
    justify-content: center;
    grid-area: bookingDate;
  }
  .VehicleSummary-activity-wrapper {
    grid-area: activity;
  }
  .VehicleSummary-activity {
    display: flex;
    height: calc(var(--spacing) * 10);
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1);
    border-radius: 0.625rem;
    background-color: var(--color-extralight-2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    margin-top: calc(var(--spacing) * 2.5);
    & svg {
      width: calc(var(--spacing) * 5.5);
      height: calc(var(--spacing) * 5.5);
      flex-shrink: 0;
      color: var(--color-primary-light);
    }
    & strong {
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  .VehicleSummary--checkout {
    grid-template-rows: 13.75rem auto;
    grid-template-areas: "picture" "titleGroup" "subtitle" "specs" "pricing" "sale-infos" "booking" "activity";
    & .VehicleSummary-title {
      margin: calc(var(--spacing) * 0);
    }
    & .VehicleSummary-picture {
      margin-inline: calc(var(--spacing) * -5);
      margin-top: calc(var(--spacing) * -5);
      display: flex;
      height: 100%;
      background-color: var(--color-light-1);
      background-image: var(--background-image-logo);
      background-size: auto 80%;
      background-position: center;
      background-repeat: no-repeat;
      background-blend-mode: overlay;
      & img {
        z-index: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
      }
    }
    & .VehicleSummary-booking {
      margin-top: calc(var(--spacing) * 6.25);
      display: flex;
      height: calc(var(--spacing) * 13.5);
      align-items: center;
      justify-content: space-between;
      border-radius: 0.625rem;
      padding-inline: calc(var(--spacing) * 5);
      background-color: var(--color-secondary-light);
      grid-area: booking;
    }
    & .VehicleSummary-booking-title {
      display: flex;
      align-items: center;
      gap: calc(var(--spacing) * 1.5);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
    & .VehicleSummary-booking-price {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
      letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
      --tw-font-weight: var(--font-weight-bold);
      font-weight: var(--font-weight-bold);
    }
    & .VehicleSummary-activity {
      height: calc(var(--spacing) * 13.5);
      justify-content: flex-start;
      padding-inline: calc(var(--spacing) * 5);
      background-color: var(--color-white);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      border-style: var(--tw-border-style);
      border-width: 2px;
      border-color: var(--color-light-2);
      & svg {
        width: calc(var(--spacing) * 7.5);
        height: calc(var(--spacing) * 7.5);
      }
      & strong {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
      }
    }
    & .VehicleSummary-ctas, & .VehicleSummary-delivery, & .VehicleSummary-help, & .VehicleSummary-banner, & .VehicleSummary-share {
      display: none;
    }
  }
  .VehicleSummary--account {
    @media (max-width: calc(80rem - 0.02rem)) {
      box-shadow: none;
      padding-inline: 0;
    }
    .VehicleSummary-banner, .VehicleSummary-pricing, .VehicleSummary-share, .VehicleSummary-delivery, .VehicleSummary-activity-wrapper, .VehicleSummary-help, .VehicleSummary-fixedHeader {
      display: none;
    }
    .VehicleSummary-bookingDate {
      display: flex;
    }
  }
  @media (max-width: calc(48rem - 0.02rem)) {
    .VehicleSummary--checkout {
      grid-template-columns: 2.75rem 4rem 1fr minmax(6.25rem, 1fr);
      grid-template-rows: 1.375rem 0fr 0rem 0rem;
      column-gap: 0.625rem;
      transition: grid-template-rows 0.3s ease 0.2s;
      grid-template-areas: "dropdown picture titleGroup titleGroup" "dropdown picture titleGroup titleGroup" "booking booking booking booking" "activity activity activity activity";
      & .VehicleSummary-picture {
        margin: calc(var(--spacing) * 0);
        width: auto;
        height: auto;
        overflow: hidden;
        border-radius: var(--radius-md);
      }
      & .VehicleSummary-title {
        font-size: 1.25rem;
        line-height: 1.375rem;
      }
      & .VehicleSummary-subtitle {
        margin: 0;
        font-size: 0.8125rem;
        line-height: 1rem;
      }
      & .VehicleSummary-pricing, & .VehicleSummary-specs, & .VehicleSummary-sale-infos {
        display: none;
      }
      & .VehicleSummary-booking, & .VehicleSummary-activity {
        margin: calc(var(--spacing) * 0);
        height: 100%;
      }
      & .VehicleSummary-booking-title, & .VehicleSummary-booking-price, & .VehicleSummary-activity {
        font-size: 0.8125rem;
        line-height: 1rem;
      }
      & .VehicleSummary-dropdown {
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(var(--spacing) * 11);
        height: calc(var(--spacing) * 11);
        cursor: pointer;
        border-radius: 0.625rem;
        background-color: var(--color-light-2);
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-extralight-2);
          }
        }
        & svg {
          width: calc(var(--spacing) * 3.5);
          height: calc(var(--spacing) * 3.5);
          transition-property: transform, translate, scale, rotate;
          transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
          transition-duration: var(--tw-duration, var(--default-transition-duration));
        }
        &:has(> input:checked) svg {
          rotate: 180deg;
        }
      }
      & .VehicleSummary-booking-wrapper, & .VehicleSummary-activity-wrapper {
        box-sizing: content-box;
        overflow: hidden;
        margin: calc(var(--spacing) * 0);
        padding: calc(var(--spacing) * 0);
        opacity: 0%;
        transition: opacity 0.3s ease, margin 0.3s ease 0.2s, padding 0.3s ease 0.2s;
      }
      & .VehicleSummary-activity-wrapper {
        height: 2.75rem;
      }
    }
    .VehicleSummary--checkout:has(.VehicleSummary-dropdown > input:checked) {
      grid-template-rows: 1.375rem 1fr 2.75rem min-content;
      transition: grid-template-rows 0.3s ease;
      & .VehicleSummary-booking-wrapper, & .VehicleSummary-activity-wrapper {
        margin-top: calc(var(--spacing) * 2.5);
        opacity: 100%;
        transition: opacity 0.3s ease 0.2s, margin 0.3s ease, padding 0.3s ease;
      }
    }
  }
  @media (min-width: 48rem) and (max-width: calc(80rem - 0.02rem)) {
    .VehicleSummary {
      grid-template-columns: repeat(3, 1fr);
      column-gap: 0.625rem;
      grid-template-areas: "banner banner banner" "titleGroup titleGroup specs" "titleGroup titleGroup specs" "pricing pricing pricing" "sale-infos sale-infos sale-infos" "ctas ctas ctas" "bookingDate bookingDate bookingDate" "delivery help activity";
    }
    .VehicleSummary-specs, .VehicleSummary-activity {
      margin: calc(var(--spacing) * 0);
      height: 100%;
    }
    .VehicleSummary-delivery, .VehicleSummary-help {
      margin: calc(var(--spacing) * 0);
      height: 100%;
      display: grid;
      grid-template-columns: auto 1fr;
      row-gap: 0;
      column-gap: 0.625rem;
      & svg {
        grid-row: span 2;
      }
      & a {
        margin: calc(var(--spacing) * 0);
      }
    }
    .VehicleSummary--checkout {
      grid-template-columns: 6.25rem  0.7fr 1fr 1fr;
      grid-template-rows: 2.125rem  2.125rem;
      column-gap: 0.9375rem;
      grid-template-areas: "picture titleGroup titleGroup booking" "picture titleGroup titleGroup booking";
      & .VehicleSummary-subtitle {
        margin: 0;
      }
      & .VehicleSummary-pricing, & .VehicleSummary-specs, & .VehicleSummary-sale-infos {
        display: none;
      }
      & .VehicleSummary-picture {
        margin: calc(var(--spacing) * 0);
        width: auto;
        height: auto;
        overflow: hidden;
        border-radius: var(--radius-md);
      }
      & .VehicleSummary-booking-wrapper {
        display: flex;
        align-items: center;
      }
      & .VehicleSummary-booking {
        margin: 0;
        max-height: 2.125rem;
        flex-grow: 1;
      }
      & .VehicleSummary-booking-title, & .VehicleSummary-booking-price, & .VehicleSummary-activity {
        font-size: 0.8125rem;
        line-height: 1rem;
      }
      & .VehicleSummary-activity {
        margin: 0.625rem 0 0 0;
        height: 100%;
        justify-content: center;
      }
    }
  }
  .VehicleSummary-fixedHeader, .VehicleSummary-fixedFooter {
    display: none;
  }
  :root {
    --vehicle-fixed-header-height: 4rem;
    --vehicle-fixed-footer-height: 88px;
  }
  @media (max-width: calc(48rem - 0.02rem)) {
    .VehicleSummary:not(.VehicleSummary--checkout) {
      & .VehicleSummary-fixedHeader {
        display: flex;
        align-items: center;
        gap: 1rem;
        position: fixed;
        top: calc(var(--sticky-top-offset) - var(--vehicle-fixed-header-height));
        left: 0;
        right: 0;
        height: var(--vehicle-fixed-header-height);
        z-index: calc(var(--header-z-index) - 1);
        padding: 0 1.25rem;
        background-image: var(--background-image-gradient-primary);
        color: white;
        transition: top 0.3s ease;
        &.visible {
          top: var(--sticky-top-offset);
        }
      }
      & .VehicleSummary-fixedFooter {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.625rem;
        position: fixed;
        bottom: calc(var(--vehicle-fixed-footer-height) * -1);
        left: 0;
        right: 0;
        height: var(--vehicle-fixed-footer-height);
        z-index: calc(var(--header-z-index) - 1);
        padding: 1.25rem;
        background-image: var(--background-image-gradient-primary);
        transition: bottom 0.3s ease;
        &.visible {
          bottom: 0;
        }
      }
    }
  }
  .Reassurance {
    --reassurance-item-width: 8rem;
    font-family: var(--font-theme);
    display: grid;
    justify-items: center;
    gap: 0.5rem;
  }
  .ReassuranceItem {
    max-width: var(--reassurance-item-width);
    width: auto;
    text-align: center;
    overflow: hidden;
  }
  .ReassuranceItem-content {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas: "icon" "title" "description";
    align-items: center;
    justify-items: center;
    gap: 0.625rem;
  }
  a.ReassuranceItem-content {
    &:hover, &:focus-within {
      --tw-outline-style: none;
      outline-style: none;
      & .ReassuranceItem-icon {
        --tw-scale-x: 110%;
        --tw-scale-y: 110%;
        --tw-scale-z: 110%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .ReassuranceItem-icon {
    width: calc(var(--spacing) * 15);
    height: calc(var(--spacing) * 15);
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    grid-area: icon;
  }
  .ReassuranceItem-title {
    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));
    grid-area: title;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1rem;
    @media (width >= 48rem) {
      font-size: 0.875rem;
      line-height: 1.25rem;
    }
  }
  .ReassuranceItem-description {
    display: none;
    grid-area: description;
  }
  .Reassurance--header {
    grid-template-columns: repeat(3, 1fr);
    row-gap: 1.875rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(6, 1fr);
      padding: 0 2.5rem;
    }
    & .ReassuranceItem-icon {
      color: var(--color-primary-light);
    }
    & .ReassuranceItem-title {
      color: var(--color-dark-gray);
    }
    & a.ReassuranceItem-content {
      &:hover, &:focus-within {
        & .ReassuranceItem-title {
          color: var(--color-primary);
        }
      }
    }
  }
  .Reassurance--footer {
    background-color: var(--color-primary-light);
    grid-template-columns: repeat(2, 1fr);
    padding: 1.25rem 1.25rem 1.875rem 1.25rem;
    row-gap: 1.25rem;
    border-radius: 1.25rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(6, 1fr);
      padding: 1.25rem 1.875rem 1.875rem 1.875rem;
    }
    @media (width >= 80rem) {
      padding: 1.25rem 3.125rem 1.875rem 3.125rem;
    }
    & .ReassuranceItem-icon {
      color: var(--color-white);
    }
    & .ReassuranceItem-title {
      color: var(--color-white);
    }
    & a.ReassuranceItem-content {
      &:hover, &:focus-within {
        & .ReassuranceItem-title {
          color: var(--color-secondary-light);
        }
      }
    }
  }
  .Reassurance--pre-footer {
    grid-template-columns: 1fr;
    gap: 2.8125rem;
    padding: 1.875rem 2.5rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, 1fr);
      padding: 2.5rem 1.875rem;
    }
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, 1fr);
      padding: 4rem 0;
    }
    & .ReassuranceItem {
      max-width: unset;
      width: auto;
    }
    & .ReassuranceItem-content {
      gap: 1.25rem;
    }
    & .ReassuranceItem-icon {
      width: calc(var(--spacing) * 20);
      height: calc(var(--spacing) * 20);
      border-radius: calc(infinity * 1px);
      background-color: var(--color-white);
      padding: calc(var(--spacing) * 2);
      color: var(--color-primary);
    }
    & .ReassuranceItem-title {
      color: var(--color-primary);
      font-weight: 400;
      font-size: 1.25rem;
      line-height: 1.375rem;
      letter-spacing: -0.025rem;
      @media (width >= 48rem) {
        font-size: 1.375rem;
        line-height: 1.625rem;
        letter-spacing: -0.0275rem;
      }
      @media (width >= 80rem) {
        font-size: 1.625rem;
        line-height: 1.875rem;
        letter-spacing: -0.0325rem;
      }
    }
    & .ReassuranceItem-description {
      color: var(--color-primary);
      display: initial;
      font-weight: 400;
      font-size: 0.875rem;
      line-height: 1.125rem;
      @media (width >= 48rem) {
        line-height: 1.25rem;
      }
    }
    & a.ReassuranceItem-content {
      &:hover, &:focus-within {
        & .ReassuranceItem-title {
          color: var(--color-primary-light);
        }
      }
    }
  }
  .Reassurance--funnel {
    grid-template-columns: 1fr;
    justify-items: stretch;
    row-gap: 0.625rem;
    & .ReassuranceItem {
      background-color: var(--color-white);
      max-width: unset;
      width: auto;
      text-align: left;
      border-radius: 0.625rem;
    }
    & .ReassuranceItem-content {
      grid-template-columns: 2.5rem 1fr;
      grid-template-areas: "icon title" "icon description";
      place-items: start;
      padding: 1.875rem 1.25rem;
      gap: 0.625rem;
      @media (width >= 80rem) {
        padding: 1.875rem;
        column-gap: 0.9375rem;
        row-gap: 0.5rem;
      }
    }
    & .ReassuranceItem-icon {
      width: calc(var(--spacing) * 10);
      height: calc(var(--spacing) * 10);
      border-radius: calc(infinity * 1px);
      background-color: var(--color-secondary);
      padding: calc(var(--spacing) * 2);
      color: var(--color-primary-light);
      @media (width >= 80rem) {
        align-self: center;
      }
    }
    & .ReassuranceItem-title {
      color: var(--color-primary);
      font-size: 1.125rem;
      font-weight: 700;
      line-height: 1.5rem;
      @media (width >= 80rem) {
        font-size: 1.25rem;
        line-height: 1.875rem;
      }
    }
    & .ReassuranceItem-description {
      color: var(--color-primary);
      display: initial;
      font-size: 0.875rem;
      font-weight: 400;
      line-height: 1.25rem;
    }
    & .ReassuranceItem:has(a.ReassuranceItem-content) {
      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));
      &:hover, &:focus-within {
        background-color: var(--color-extralight-1);
      }
    }
  }
  .Footer {
    background-image: var(--background-image-gradient-primary);
    font-family: var(--font-theme);
    color: var(--color-white);
    width: 100%;
    padding: 1.875rem 1.875rem 3.125rem 1.875rem;
    @media (width >= 48rem) {
      padding-top: 2.5rem;
    }
    @media (width >= 80rem) {
      padding-top: 3.4375rem;
    }
  }
  .Footer-content {
    width: 100%;
    margin: auto;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2.5rem;
    grid-template-areas: "reassurance" "site" "nav";
    @media (width >= 48rem) {
      grid-template-columns: 1fr 3fr;
      column-gap: 1.5rem;
      grid-template-areas: "reassurance reassurance" "site nav";
    }
    @media (width >= 80rem) {
      column-gap: 2rem;
      padding-inline: var(--container-padding);
      max-width: var(--container-max-w);
    }
  }
  .Footer-reassurance {
    grid-area: reassurance;
  }
  .Footer-site {
    grid-area: site;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    text-align: center;
    @media (width >= 48rem) {
      align-items: flex-start;
      text-align: start;
    }
  }
  .Footer-site-logo {
    max-width: 200px;
    height: 50px;
  }
  .Footer-site-baseline {
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.375rem;
    letter-spacing: -0.025rem;
    @media (width >= 80rem) {
      font-size: 1.375rem;
      line-height: 1.625rem;
    }
  }
  .Footer-site-openings {
    margin-top: 0.3125rem;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.25rem;
    @media (width >= 48rem) {
      margin-top: 1.25rem;
    }
    @media (width >= 80rem) {
      font-size: 1rem;
      line-height: 1.375rem;
    }
  }
  .Footer-site-socials {
    width: 100%;
    margin-top: 1.25rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, 1.875rem);
    justify-content: center;
    gap: 0.9375rem;
    @media (width >= 48rem) {
      justify-content: start;
    }
    & a {
      color: var(--color-secondary);
      &:hover {
        color: var(--color-secondary-light);
      }
    }
  }
  .Footer-nav {
    grid-area: nav;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2.5rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, 1fr);
      column-gap: 0.625rem;
      row-gap: 3.125rem;
    }
    @media (width >= 80rem) {
      column-gap: 1.25rem;
      row-gap: 3.75rem;
    }
  }
  .Footer-nav-section-title {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5625rem;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5rem;
    @media (width >= 48rem) {
      align-items: flex-start;
      font-size: 1.125rem;
    }
    &::after {
      content: "";
      background-color: var(--color-secondary);
      width: 3.75rem;
      height: 0.25rem;
    }
  }
  .Footer-nav-section-items {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.3125rem;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1rem;
    @media (width >= 48rem) {
      align-items: flex-start;
      text-align: left;
      font-size: 0.875rem;
      line-height: 1.25rem;
    }
    & a {
      &:hover, &:focus-visible {
        text-decoration: underline;
      }
    }
  }
  .FaqReassurance {
    font-family: var(--font-theme);
    color: var(--color-white);
    background-image: var(--background-image-logo), var(--background-image-gradient-primary);
    background-blend-mode: soft-light, normal;
    background-repeat: no-repeat;
    background-size: 25rem auto, auto;
    background-position: left 0 top -7.5rem, center;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 1.5625rem;
    column-gap: 2.8125rem;
    border-radius: 1.25rem;
    padding: 1.5625rem 1.25rem;
    @media (width >= 48rem) {
      flex-direction: row;
      height: 26.75rem;
      padding: 2.5rem;
      background-size: 56.25rem auto, auto;
      background-position: left -12.5rem bottom -3.125rem, center;
    }
  }
  .FaqReassurance-ratingBlock {
    background-color: var(--color-primary);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
    padding: 1.5625rem 1.25rem;
    border-radius: 1.25rem;
    text-align: center;
    @media (width >= 48rem) {
      max-width: 20.75rem;
      padding: 2.1875rem 1.5625rem;
    }
  }
  .FaqReassurance-ratingBlock-title {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    margin-bottom: 0.9375rem;
    @media (width >= 48rem) {
      font-size: var(--text-h2);
      line-height: var(--tw-leading, var(--text-h2--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    }
  }
  .FaqReassurance-ratingBlock-value {
    font-size: 3.75rem;
    font-weight: 700;
    line-height: 2.625rem;
    letter-spacing: -0.075rem;
    & small {
      font-size: var(--text-h2);
      line-height: var(--tw-leading, var(--text-h2--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    }
    @media (width >= 48rem) {
      font-size: 5rem;
    }
  }
  .FaqReassurance-ratingBlock-source {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
  }
  .FaqReassurance-listBlock {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    margin-bottom: 0.625rem;
    @media (width >= 48rem) {
      gap: 0.9375rem;
      flex-grow: 1;
      margin-bottom: 0;
    }
  }
  .FaqReassurance-listBlock-title {
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .FaqReassurance-listBlock-list {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    & li {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0.9375rem 0;
      &:not(:last-child) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      }
    }
    @media (width >= 48rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
      letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    }
  }
  :root {
    --header-height--mobile: 4.625rem;
    --header-height--tablet: 5.375rem;
    --header-height--desktop: 6rem;
    --header-height--funnel--mobile: 3.75rem;
    --header-height--funnel--tablet: 5rem;
    --header-height--funnel--desktop: 5rem;
    --header-z-index: 100;
    --header-height: var(--header-height--mobile);
    --header-height--funnel: var(--header-height--funnel--mobile);
    @media (width >= 48rem) {
      --header-height: var(--header-height--tablet);
      --header-height--funnel: var(--header-height--funnel--tablet);
    }
    @media (width >= 80rem) {
      --header-height: var(--header-height--desktop);
      --header-height--funnel: var(--header-height--funnel--desktop);
    }
  }
  .Header {
    --padding-x: 1rem;
    padding: 0 var(--padding-x);
    height: var(--header-height);
    display: flex;
    align-items: center;
    color: var(--color-primary);
    position: relative;
    background: var(--color-white);
    z-index: var(--header-z-index);
    @media (width >= 48rem) {
      --padding-x: 1.875rem;
    }
    @media (width >= 80rem) {
      --padding-x: 0;
    }
  }
  .Header-logo {
    transition: opacity 0.25s ease-in-out;
    &:focus-visible {
      border-radius: 5px;
      outline: 1px solid var(--color-secondary);
      outline-offset: 4px;
    }
    &:hover {
      opacity: 0.8;
    }
    width: 126px;
  }
  .Header-logo-image {
    width: 100%;
    height: 100%;
    max-width: 126px;
    max-height: 44px;
  }
  .Header-actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.25rem;
  }
  .Header-cta {
    width: 2.75rem;
    height: 2.75rem;
    padding: 0.625rem;
    display: block;
    cursor: pointer;
    border-radius: 10px;
    svg {
      width: 100%;
      height: 100%;
      object-fit: contain;
      object-position: center;
    }
    &:hover, &:focus, &:focus-visible {
      color: var(--color-primary-light);
      outline: none;
    }
    &:focus-visible {
      outline: 1px solid var(--color-primary-light);
    }
  }
  .Header-burger {
    margin-right: 1rem;
    padding: 0.625rem 0.375rem;
    box-sizing: content-box;
    @media (width >= 80rem) {
      display: none;
    }
  }
  .Header-phone {
    @media (width >= 48rem) {
      order: 1;
    }
  }
  .Header-back {
    padding: 1rem var(--padding-x);
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 10px;
    &:hover, &:focus {
      color: var(--color-primary-light);
      outline: none;
    }
    &:focus-visible {
      outline: 1px solid var(--color-primary);
      outline-offset: -2px;
    }
  }
  .Header.is-open {
    .Burger {
      span {
        &:first-child {
          bottom: calc(50% - var(--mb-bar-height) / 2);
          transform: rotate(45deg);
        }
        &:nth-child(2) {
          opacity: 0;
          transition: none;
        }
        &:last-child {
          top: calc(50% - var(--mb-bar-height) / 2);
          transform: rotate(-45deg);
          width: 100%;
        }
      }
    }
    .Menu {
      display: block;
    }
  }
  .Header--funnel {
    height: var(--header-height--funnel);
    justify-content: center;
    position: relative;
    @media (width >= 48rem) {
      --padding-x: 1.625rem;
    }
    .Header-logo {
      svg {
        @media (width >= 48rem) {
          width: 10.25rem;
        }
      }
    }
  }
  .Burger {
    --mb-bar-width: 1.625rem;
    --mb-bar-height: 0.125rem;
    --mb-bar-spacing: 0.375rem;
    position: relative;
    width: var(--mb-bar-width);
    height: calc(var(--mb-bar-height) * 3 + var(--mb-bar-spacing) * 2);
    color: var(--color-primary);
    display: block;
    cursor: pointer;
    span {
      display: block;
      position: absolute;
      left: 0;
      right: 0;
      height: var(--mb-bar-height);
      border-radius: calc(var(--mb-bar-height) / 2);
      background: currentColor;
      color: inherit;
      opacity: 1;
      transition: none 0.25s ease-in-out;
      &:first-child {
        bottom: calc(50% + var(--mb-bar-spacing) + var(--mb-bar-height) / 2);
        transition-property: bottom, transform;
      }
      &:nth-child(2) {
        top: calc(50% - var(--mb-bar-height) / 2);
        transition-property: opacity;
      }
      &:last-child {
        top: calc(50% + var(--mb-bar-spacing) + var(--mb-bar-height) / 2);
        transition-property: top, transform;
        width: 50%;
      }
    }
  }
  .DropdownProfile {
    background-color: var(--color-primary);
    color: var(--color-white);
    @media (width >= 48rem) {
      max-width: 13.125rem;
      border-radius: 10px;
      padding: 1.25rem;
      position: absolute;
      top: calc(100% + 10px);
      right: -10px;
      width: 13.125rem;
      opacity: 0;
      transform: translateY(10%);
      transition: all ease-in-out 0.07s;
      z-index: -1;
      pointer-events: none;
    }
    &.is-open {
      @media (width >= 48rem) {
        opacity: 1;
        transform: translateY(0);
        z-index: auto;
        pointer-events: auto;
      }
    }
    &:after {
      content: "";
      display: block;
      width: 0.875rem;
      height: 0.875rem;
      background-color: inherit;
      position: absolute;
      top: 0;
      right: 30px;
      transform-origin: center;
      transform: rotate(45deg) translateY(-45%);
    }
  }
  .DropdownProfile-item {
    &:not(:first-child) {
      border-top: 1px solid var(--color-primary-light);
    }
  }
  .DropdownProfile-link {
    padding: 1.5rem 0;
    line-height: 1;
    display: block;
    @media (width >= 48rem) {
      padding: 1.125rem 0;
      font-size: var(--text-sm);
    }
  }
  .Menu {
    display: none;
    background-color: var(--color-extralight-2);
    height: calc(100dvh - var(--sticky-top-offset));
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1.875rem 1.5rem;
    overflow: auto;
    @media (width >= 80rem) {
      display: block;
      margin-left: 1.875rem;
      height: 100%;
      background: transparent;
      position: static;
      padding: 0;
    }
    &:has(.is-active) {
      overflow: hidden;
    }
  }
  .Menu-level--1 {
    display: flex;
    align-items: stretch;
    flex-direction: column;
    gap: 0.625rem;
    @media (width >= 80rem) {
      gap: 0;
      height: 100%;
      flex-direction: row;
    }
  }
  .Menu-item--1 {
    display: flex;
    &.is-active {
      .Menu-level--2 {
        display: flex;
        flex-direction: column;
        @media screen and (max-width: 80rem) {
          inset: 0;
          z-index: 1;
          background: var(--color-extralight-2);
          display: flex;
          padding: 1.875rem 1.25rem;
        }
      }
    }
  }
  .Menu-title--1 {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    background: var(--color-white);
    border-radius: 10px;
    padding: 1.5rem 1rem;
    flex: 1;
    text-align: left;
    display: flex;
    align-items: center;
    height: 100%;
    cursor: pointer;
    position: relative;
    font-weight: bold;
    @media (width >= 80rem) {
      border-radius: 0;
      padding: 0 1.25rem;
    }
    &:focus-visible {
      outline: none;
    }
    &:before {
      content: "";
      display: block;
      height: 0.25rem;
      background-color: var(--color-secondary);
      position: absolute;
      top: 50%;
      left: 50%;
      transform-origin: center;
      transform: translate(-50%, 1rem);
      opacity: 0;
      width: 0;
      transition: all 0.05s ease-in-out;
    }
    @media (width >= 80rem) {
      &:hover, &:focus, &:focus-visible {
        &:before {
          opacity: 1;
          width: calc(100% - 2.5rem);
        }
      }
    }
  }
  .Menu-level--2 {
    --width-item-2: 298px;
    --padding-item-2: 1.875rem;
    display: none;
    overflow: hidden;
    position: absolute;
    @media (width >= 80rem) {
      font-size: var(--text-sm);
      background-color: var(--color-extralight-2);
      position: absolute;
      top: 98%;
      left: 0;
      right: 0;
      z-index: 10;
      border-radius: 20px;
      box-shadow: 0 56px 114px 0 rgba(0, 0, 0, 0.29), 0 11px 18px 0 rgba(0, 0, 0, 0.14);
    }
    &:before {
      display: block;
      position: absolute;
      right: 0;
      top: 0;
      bottom: 0;
      width: calc(100% - var(--width-item-2));
      background-color: var(--color-white);
      @media (width >= 80rem) {
        content: "";
      }
    }
  }
  .Menu-item--2 {
    display: flex;
    margin-bottom: 0.625rem;
    @media (width >= 80rem) {
      padding: 0.25rem var(--padding-item-2);
      margin: 0;
      width: var(--width-item-2);
      &:first-child {
        padding-top: 1.875rem;
      }
      &.is-active {
        .Menu-level--3 {
          opacity: 1;
          display: flex;
        }
        .Menu-title--2 {
          @media (width >= 80rem) {
            outline: 1px solid var(--color-secondary);
            background-color: var(--color-extralight-1);
          }
        }
      }
    }
    &.isLast {
      @media (width >= 80rem) {
        padding-bottom: 1.875rem;
      }
    }
  }
  .Menu-title--2 {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    border-radius: 10px;
    background: white;
    padding: 1rem;
    font-weight: bold;
    flex: 1;
    cursor: pointer;
    &:hover, &:focus-visible {
      outline: 1px solid var(--color-secondary);
    }
  }
  .Menu-level--3 {
    display: none;
    padding: 2.75rem 1.875rem 1.875rem 4rem;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: calc(100% - var(--width-item-2));
    background: white;
    gap: 1.25rem;
    align-items: flex-start;
    &.is-active {
      display: flex;
    }
  }
  .Menu-title--3 {
    position: relative;
    margin-bottom: calc(var(--spacing) * 4);
    align-self: flex-start;
    padding-bottom: calc(var(--spacing) * 4);
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    &:focus {
      color: var(--color-secondary);
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 3.75rem;
      height: 0.25rem;
      background-color: var(--color-secondary);
      border-radius: 2px;
    }
  }
  .Menu-item--3 {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    max-height: 100%;
    flex: 1 1 33%;
    max-width: 33%;
  }
  .Menu-level--4 {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 2.5);
    overflow-y: hidden;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-dark-gray);
  }
  .Menu-title--4 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary);
      }
    }
    &:focus {
      color: var(--color-secondary);
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .Menu-cta {
    display: none;
    position: absolute;
    right: 34px;
    bottom: 34px;
  }
  .Menu-item--1.is-active + .Menu-cta, .Menu-item--2.is-active + .Menu-cta {
    display: block;
  }
  .Menu-back {
    order: calc(1 * -1);
    margin-bottom: calc(var(--spacing) * 2.5);
    @media (width >= 80rem) {
      display: none;
    }
  }
  .Menu-addvertising {
    margin-top: calc(var(--spacing) * 2.5);
    @media (width >= 80rem) {
      display: none;
    }
    .AdvertisingCard {
      min-height: auto;
    }
  }
  .Showcase {
    font-family: var(--font-theme);
  }
  .Showcase-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    text-align: center;
    gap: 0.625rem;
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .Showcase-title {
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--color-primary);
    @media (width >= 80rem) {
      flex-wrap: wrap;
    }
  }
  .Showcase-track {
    display: flex;
    gap: 1rem;
    padding-top: 1.25rem;
    padding-bottom: 1rem;
    & > * {
      flex-shrink: 0;
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .Showcase-track {
      justify-content: center;
      flex-wrap: wrap;
    }
  }
  @media (hover: none), (pointer: coarse) {
    .Showcase-track {
      overflow-x: auto;
      scroll-snap-type: x proximity;
      scroll-padding: 0 1.25rem;
      @media (width >= 48rem) {
        scroll-padding: 0 1.875rem;
      }
      scrollbar-width: none;
      &::-webkit-scrollbar {
        display: none;
      }
    }
  }
  .BrandShowcase-item {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-extralight-2);
    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;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    border-radius: 1.25rem;
    padding: 0.9375rem 0.625rem;
    min-width: 194px;
    width: max-content;
    & img {
      height: 2.5rem;
      width: 2.5rem;
      object-fit: contain;
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .BrandShowcase-item {
      --tw-shadow: 0 5.875rem 5.1875rem 0 var(--tw-shadow-color, rgba(54, 105, 135, 0.07)), 0 1.175rem 0.843rem 0 var(--tw-shadow-color, rgba(54, 105, 135, 0.04));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      &:hover, &:focus-visible {
        --tw-shadow: 0 1.25rem 5.1875rem 0 var(--tw-shadow-color, rgba(54, 105, 135, 0.2)), 0 1.175rem 0.843rem 0 var(--tw-shadow-color, rgba(54, 105, 135, 0.04));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  @media (hover: none) and (pointer: coarse) {
    .BrandShowcase-item {
      --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);
      scroll-snap-align: start;
    }
  }
  .CarBodyShowcase-item {
    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;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    border-radius: 1.25rem;
    height: 9.0625rem;
    width: 9.0625rem;
    & img {
      height: 4.1875rem;
      width: 6.3125rem;
      object-fit: contain;
    }
    @media (width >= 48rem) {
      height: 10.625rem;
      width: 12.125rem;
      & img {
        height: 5.4375rem;
        width: 8.1875rem;
      }
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .CarBodyShowcase-item {
      --tw-shadow: 0 1.25rem 1rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.07)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.04));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      &:hover, &:focus-visible {
        --tw-shadow: 0 0.5rem 0.5rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(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);
      }
    }
  }
  @media (hover: none) and (pointer: coarse) {
    .CarBodyShowcase-item {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      &:hover, &:focus-visible {
        --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);
      }
      scroll-snap-align: start;
    }
  }
  .Showcase {
    .SearchSelectionButton {
      @media (width >= 48rem) {
        max-width: 33%;
      }
    }
  }
  :root {
    --funnel-steps-height--mobile: 5.125rem;
    --funnel-steps-height--tablet: 5.75rem;
    --funnel-steps-height--desktop: 5.75rem;
    --funnel-steps-height: var(--funnel-steps-height--mobile);
    @media (width >= 48rem) {
      --funnel-steps-height: var(--funnel-steps-height--tablet);
    }
    @media (width >= 80rem) {
      --funnel-steps-height: var(--funnel-steps-height--desktop);
    }
  }
  .FunnelSteps {
    background: var(--background-image-gradient-steps);
    height: var(--funnel-steps-height);
    padding-block: 1.25rem;
    color: var(--color-white);
    text-align: center;
    font-weight: bold;
    z-index: var(--header-z-index);
    @media (width >= 48rem) {
      padding-block: 1.5rem;
    }
  }
  .FunnelSteps-list {
    display: flex;
    justify-content: center;
  }
  .Step {
    --width-marker: 1.625rem;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    }
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1 0 33%;
    position: relative;
    @media (width >= 48rem) {
      --width-marker: 2.75rem;
      flex: initial;
    }
    &:before, &:after {
      content: "";
      display: block;
      opacity: 0.5;
      height: 1px;
      background: var(--color-extralight-2);
      top: calc(var(--width-marker) / 2);
      position: absolute;
      width: calc(50% - calc(var(--width-marker) / 2 + 0.5rem));
      left: 0;
    }
    &:before {
      @media (width >= 48rem) {
        content: none;
      }
    }
    &:after {
      right: 0;
      left: auto;
      @media (width >= 48rem) {
        position: static;
        width: 7.5rem;
        margin: 0 1.25rem;
      }
    }
    &:first-child {
      &:before {
        content: none;
      }
    }
    &:last-child {
      &:after {
        content: none;
      }
    }
    &.current ~ .Step {
      .Step-link {
        font-weight: normal;
        &:before {
          background: var(--color-primary);
          color: var(--color-white);
        }
      }
    }
  }
  .Step-link {
    display: flex;
    gap: 0.625rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    @media (width >= 48rem) {
      flex-direction: row;
      gap: 1rem;
    }
    &:before {
      content: attr(data-step);
      flex-shrink: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: var(--width-marker);
      height: var(--width-marker);
      background: var(--color-secondary);
      color: var(--color-primary);
      border-radius: 50%;
    }
    &:focus-visible {
      outline: none;
      .Step-label {
        text-decoration: underline;
      }
    }
  }
  .BestDealShowcase {
    font-family: var(--font-theme);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    @media (width >= 48rem) {
      flex-direction: row;
      align-items: stretch;
      justify-content: flex-start;
    }
  }
  .BestDealShowcase-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.625rem;
    z-index: 50;
    @media (width >= 48rem) {
      background-color: var(--color-extralight-2);
      background-image: var(--background-image-logo);
      background-blend-mode: soft-light;
      background-repeat: no-repeat;
      background-size: 18rem auto;
      background-position: bottom -2rem left 1rem;
      justify-content: start;
      gap: 1.5rem;
      flex-shrink: 0;
      width: 18.6875rem;
      padding: 3rem 2rem;
      border-radius: 1.25rem;
      text-align: left;
    }
  }
  .BestDealShowcase-title {
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--color-primary);
  }
  .BestDealShowcase-description {
    display: none;
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
      color: var(--color-primary);
      display: block;
    }
  }
  .BestDealShowcase-carousel {
    min-width: 1px;
    clip-path: inset(-2rem -128rem -12rem -15rem);
    max-width: 100%;
  }
  .HelpPhone {
    background-image: var(--background-image-logo), var(--background-image-help);
    background-blend-mode: overlay, normal;
    background-repeat: no-repeat;
    background-size: auto 110%, auto;
    background-position: center top -100%, center;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    padding: 1.875rem;
    border-radius: 20px;
    color: var(--color-primary);
    text-align: center;
    z-index: 0;
    @media (min-width: 48rem) and (max-width: calc(80rem - 0.02rem)) {
      flex-direction: row;
      gap: 1.25rem;
      text-align: left;
      align-items: center;
      background-size: auto 190%, auto;
      background-position: center, center;
    }
  }
  .HelpPhone--hasIcon {
    padding: 3.125rem 1.875rem 1.875rem;
    @media (min-width: 48rem) and (max-width: calc(80rem - 0.02rem)) {
      padding: 1.875rem;
    }
  }
  .HelpPhone-icon {
    width: 5.125rem;
    height: 5.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-primary);
    border-radius: 100%;
    padding: 1.625rem;
    color: var(--color-secondary);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    flex-shrink: 0;
    @media (min-width: 48rem) and (max-width: calc(80rem - 0.02rem)) {
      position: static;
      transform: none;
    }
  }
  .HelpPhone-title {
    margin-bottom: calc(var(--spacing) * 2);
    display: block;
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    @media (width >= 48rem) {
      font-size: var(--text-h3);
      line-height: var(--tw-leading, var(--text-h3--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    }
    @media (width >= 80rem) {
      font-size: var(--text-h4);
      line-height: var(--tw-leading, var(--text-h4--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
    }
  }
  .HelpPhone-schedules {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    }
  }
  .HelpPhone-legals {
    margin-top: calc(var(--spacing) * 2.5);
    display: block;
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-primary-light);
  }
  .VehicleShowcase {
    font-family: var(--font-theme);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    @media (width >= 48rem) {
      align-items: start;
      gap: 2.25rem;
    }
  }
  .VehicleShowcase-title {
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--color-primary);
    text-align: center;
    @media (width >= 48rem) {
      text-align: left;
    }
  }
  .VehicleShowcase-content {
    display: flex;
    gap: 1rem;
    align-self: stretch;
    .AdvertisingCard--promo {
      height: auto;
    }
  }
  .VehicleShowcase-promo {
    display: none;
    flex-shrink: 0;
    z-index: 50;
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .VehicleShowcase-carousel {
    min-width: 1px;
    max-width: 100%;
    clip-path: inset(-2rem -128rem -12rem -128rem);
    @media (width >= 48rem) {
      clip-path: inset(-2rem -128rem -12rem -1rem);
    }
  }
  .VehicleDescriptionCard {
    a {
      color: var(--color-primary-light);
      text-decoration-line: underline;
      &:hover {
        @media (hover: hover) {
          color: var(--color-primary);
        }
      }
      &:hover {
        @media (hover: hover) {
          text-decoration-line: none;
        }
      }
    }
  }
  .Hero {
    background: var(--color-extralight-2);
    color: var(--color-primary);
    padding-block: 1.125rem;
    @media (width >= 48rem) {
      padding-block: 3.75rem;
    }
    &:has(+ .NavTab) {
      padding-bottom: 2.25rem;
      @media (width >= 48rem) {
        padding-bottom: 45px;
      }
    }
  }
  .Hero-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    text-align: center;
    margin: auto;
    @media (width >= 48rem) {
      flex-direction: row;
      gap: 25px;
      text-align: left;
      justify-content: flex-start;
    }
  }
  .Hero-icon {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-primary);
    border-radius: 100%;
    padding: 0.5rem;
    color: var(--color-secondary);
    flex-shrink: 0;
    @media (width >= 48rem) {
      width: 82px;
      height: 82px;
      padding: 1.25rem;
    }
    svg {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
  }
  .Hero-content {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    @media (width >= 48rem) {
      gap: 0.75rem;
    }
  }
  .Hero-title {
    font-size: var(--text-h2);
    line-height: var(--tw-leading, var(--text-h2--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .Hero-subtitle {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    }
  }
  .NavTab {
    position: sticky;
    z-index: 30;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    background: var(--color-extralight-2);
    color: var(--color-primary);
    font-weight: bold;
    @media (width >= 48rem) {
      overflow-x: auto;
      top: var(--sticky-top-offset);
    }
    &::-webkit-scrollbar {
      display: none;
    }
    .Hero + & {
      padding-bottom: 1.25rem;
      @media (width >= 48rem) {
        padding-bottom: 0;
      }
    }
    &:has(.NavTab-list.Drawer.is-open) {
      z-index: calc(var(--header-z-index) + 1);
    }
  }
  .NavTab-list {
    background-color: var(--color-primary);
    @media (width >= 48rem) {
      display: flex;
      align-items: stretch;
      gap: 1.5rem;
      max-width: 1244px;
      margin: auto;
      background-color: transparent;
    }
  }
  .NavTab-link {
    display: block;
    line-height: 1;
    white-space: nowrap;
    word-break: keep-all;
    padding: 1.25rem 0;
    color: var(--color-white);
    transition: background-color 0.07s ease-in-out;
    @media (width >= 48rem) {
      padding: 1.25rem 1rem;
      border-radius: 5px 5px 0 0;
      color: inherit;
      &:hover, &:focus-visible, &.is-active {
        outline: none;
        background-color: var(--color-white);
      }
    }
  }
  .NavTab-item {
    & + & {
      @media screen and (max-width: 48rem) {
        border-top: 1px solid var(--color-primary-light);
      }
    }
  }
  .NavTab-btn {
    border-radius: 8px;
    padding: 1rem 2rem 1rem 1rem;
    width: 100%;
    text-align: left;
    font-weight: normal;
    background-color: var(--color-white);
    background-image: var(--background-image-icon-caret);
    background-size: 1.25rem;
    background-repeat: no-repeat;
    background-position: right 1rem center;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    @media (width >= 48rem) {
      display: none;
    }
    &:focus-visible {
      outline: 1px solid var(--color-secondary);
    }
  }
  .CurrentOffer {
    display: none;
    position: fixed;
    bottom: 50px;
    right: 0;
    align-items: flex-start;
    transform: translateX(var(--width-ads-card));
    transition: all 0.3s ease-in-out;
    z-index: 100;
    @media (width >= 48rem) {
      display: flex;
    }
    .Promo {
      border-radius: 20px 0 0 20px;
      text-align: center;
    }
    &.is-open {
      transform: translateX(0);
      .CurrentOffer-cta {
        opacity: 0;
        transform: translateX(100%) rotate(180deg);
      }
      .CurrentOffer-close {
        display: block;
      }
    }
  }
  .CurrentOffer-cta {
    display: flex;
    flex-direction: row-reverse;
    gap: 0.625rem;
    align-items: center;
    justify-content: center;
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    padding: 1.625rem 1.25rem;
    line-height: 1;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--color-white);
    cursor: pointer;
    border-radius: 0 10px 10px 0;
    transition: inherit;
    &:focus-visible {
      outline: 2px solid var(--cta-emphasis-color, var(--color-secondary));
    }
  }
  .CurrentOffer-cta-text {
    b {
      color: var(--cta-emphasis-color, var(--color-secondary));
    }
  }
  .CurrentOffer-close {
    position: absolute;
    top: 8px;
    left: 8px;
    padding: 10px;
    z-index: 1;
    border-radius: 999px;
    background: rgba(21, 69, 86, 0.25);
    display: none;
    cursor: pointer;
    &:focus-visible {
      outline: 2px solid var(--color-secondary);
    }
  }
  .BackToTop {
    display: none;
    @media (width >= 48rem) {
      background-color: var(--color-primary-light);
      color: var(--color-white);
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-primary);
        }
      }
      border-radius: calc(infinity * 1px);
      position: fixed;
      right: 45px;
      bottom: -100px;
      opacity: 0;
      z-index: 1000;
      width: 4.375rem;
      height: 4.375rem;
      padding: 1.125rem;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: bottom 0.3s ease-in-out, opacity 0.3s ease-in-out;
      &.visible {
        bottom: 45px;
        opacity: 1;
      }
    }
  }
  .SearchBox {
    --search-icon-width: 2.75rem;
    --padding-base: 10px;
    background-color: var(--color-extralight-2);
    padding-block: calc(var(--padding-base) * 2);
    position: sticky;
    top: var(--sticky-top-offset);
    z-index: 30;
    &.is-sticky {
      background: var(--background-image-gradient-steps);
      @media screen and (max-width: 48rem) {
        padding: 0;
        .SearchBox-toggler {
          display: flex;
        }
      }
      .SearchBox-alert {
        &:before {
          content: "";
        }
      }
      .SearchBox-filters {
        @media (width >= 48rem) {
          display: flex;
        }
      }
      .SearchBox-save {
        display: none;
      }
      .SearchBox-container {
        flex-direction: row;
      }
      .SearchBox-actions {
        flex-grow: 1;
        color: white;
        margin: 0 0 0 1.25rem;
      }
    }
  }
  .SearchBox-container {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    flex-direction: column;
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .SearchBox-form {
    width: 100%;
    display: flex;
    padding: 0;
    position: relative;
    transition: none;
    &:hover, &:focus, &:focus-within {
      border: none;
    }
  }
  .SearchBox-filters {
    display: none;
    justify-content: center;
    flex-direction: column;
    gap: 0.625rem;
    color: var(--color-white);
    margin-left: 2rem;
    padding-inline: 2rem;
    margin-right: auto;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    flex: 1 1 auto;
    overflow: auto;
    ul {
      overflow-x: auto;
      -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 1rem, rgb(0, 0, 0) calc(100% - 1rem), rgba(0, 0, 0, 0) 100%);
      mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 1rem, rgb(0, 0, 0) calc(100% - 1rem), rgba(0, 0, 0, 0) 100%);
      scrollbar-width: thin;
      margin: 0 -1rem;
      padding: 0px 1rem;
      scrollbar-width: thin;
    }
  }
  .SearchBox-alert.Button {
    background-color: var(--color-primary);
    position: fixed;
    bottom: 20px;
    left: 20px;
    right: 20px;
    z-index: 10;
    @media screen and (max-width: 48rem) {
      color: var(--color-white);
    }
    @media (width >= 48rem) {
      position: relative;
      inset: auto;
      background-color: var(--color-white);
      color: var(--color-primary);
      padding-left: 1.5rem;
      &:before {
        display: block;
        position: absolute;
        top: 50%;
        left: -24px;
        transform: translateY(-50%);
        width: 1px;
        height: calc(var(--search-icon-width) + var(--padding-base) * 2);
        background: var(--color-white);
        opacity: 0.2;
      }
    }
  }
  .SearchBox-actions {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    margin-top: 1rem;
    color: var(--color-primary);
    @media (width >= 48rem) {
      display: none;
    }
  }
  .SearchBox-toggler {
    width: 4rem;
    height: 3.375rem;
    align-items: center;
    justify-content: center;
    display: none;
    background-color: var(--color-secondary);
  }
  .SearchBox-label {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xl--letter-spacing));
    margin-bottom: 1rem;
    font-weight: bold;
    display: none;
    color: var(--color-primary);
    flex: 1 0 100%;
  }
  .SearchBox-alertDrawer {
    display: none;
    margin: 0.625rem auto 0;
    flex-basis: 100%;
  }
  .SearchBox-save {
    display: none;
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .SearchBox-formWrapper {
    width: 100%;
    align-self: center;
    @media (width >= 48rem) {
      max-width: 388px;
    }
    @media (width >= 80rem) {
      max-width: 772px;
    }
    @media screen and (max-width: 48rem) {
      &.Drawer {
        background-color: var(--color-extralight-2);
        .SearchBox-form {
          display: flex;
          flex-wrap: wrap;
          background-color: transparent;
          height: auto;
        }
        .SearchBox-label {
          display: block;
        }
        .SearchBox-alertDrawer {
          display: flex;
        }
      }
    }
  }
  .DescriptionList {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }
  .DescriptionList-title {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    color: var(--color-primary);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-secondary);
    font-weight: 700;
    padding-bottom: 0.75rem;
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    }
  }
  .DescriptionListSingle-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.875rem;
  }
  .DescriptionListSingle-list {
    align-self: stretch;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: max-content 0fr;
    row-gap: 1rem;
    transition: grid-template-rows 0.3s ease;
    & > * {
      display: grid;
      grid-template-columns: 1fr;
      row-gap: 1rem;
      overflow: hidden;
      @media (width >= 48rem) {
        grid-template-columns: 1fr 1fr;
      }
    }
    &:has(+ .DescriptionListSingle-toggle > input:checked) {
      grid-template-rows: max-content 1fr;
    }
    & li {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      color: var(--color-primary);
      font-weight: 700;
    }
  }
  .DescriptionListSingle-toggle {
    &:has(> input:checked) {
      .seeMore {
        display: none;
      }
      .seeLess {
        display: inline;
      }
      svg {
        rotate: 45deg;
      }
    }
    &:has(> input:not(:checked)) {
      .seeMore {
        display: inline;
      }
      .seeLess {
        display: none;
      }
    }
    & input[type="checkbox"] {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
    }
  }
  .DescriptionListDouble-content {
    column-width: 20rem;
    column-gap: 2.8125rem;
    column-fill: balance;
  }
  .RetailerLocator {
    --icon-block-size: 5.125rem;
    position: relative;
    display: flex;
    flex-direction: column;
  }
  .RetailerLocator-icon {
    border-radius: calc(infinity * 1px);
    background-color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: calc(50% - var(--icon-block-size) / 2);
    width: var(--icon-block-size);
    height: var(--icon-block-size);
  }
  .RetailerLocator-content {
    background-image: var(--background-image-logo), var(--background-image-gradient-secondary);
    background-blend-mode: soft-light, normal;
    background-repeat: no-repeat;
    background-size: auto 140%, auto;
    background-position: center, center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    margin-top: calc(var(--icon-block-size) / 2);
    padding: calc(var(--icon-block-size) / 2) 1.375rem 1.125rem 1.375rem;
    border-radius: 20px;
    @media (width >= 48rem) {
      padding: calc(var(--icon-block-size) / 2 + 20px) 1.375rem 30px 1.375rem;
    }
  }
  .RetailerLocator-title {
    font-size: var(--text-h3);
    line-height: var(--tw-leading, var(--text-h3--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    color: var(--color-primary);
    @media (width >= 48rem) {
      font-size: var(--text-h2);
      line-height: var(--tw-leading, var(--text-h2--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
    }
    font-weight: 400;
    text-align: center;
  }
  .RetailerLocator-form {
    width: 100%;
    @media (width >= 48rem) {
      max-width: 568px;
    }
  }
  .SearchHero {
    position: relative;
    height: 360px;
    overflow: hidden;
    padding: 0.75rem;
    @media (width >= 48rem) {
      height: 440px;
      border-radius: 20px;
      padding: 3.125rem 3.75rem 0 3.75rem;
    }
    @media (width >= 80rem) {
      padding: 3.125rem 3.125rem 0 3.125rem;
    }
  }
  .SearchHero-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
    display: block;
    object-fit: cover;
  }
  .SearchHero-gradient {
    position: absolute;
    inset: 0;
    z-index: 10;
    --overlay-gradient: linear-gradient(90deg, #135165 12.81%, rgba(45, 151, 186, 0.7) 52.27%, rgba(85, 109, 116, 0) 90.22%, rgba(57, 57, 57, 0) 134.54%);
    background-image: var(--background-image-logo), var(--overlay-gradient);
    background-blend-mode: soft-light, normal;
    background-repeat: no-repeat;
    background-size: 350px, auto;
    background-position: left -100px bottom -100px, center;
    @media (width >= 48rem) {
      --overlay-gradient: linear-gradient(90deg, #135165 4.69%, rgba(45, 151, 186, 0.9) 31.62%, rgba(85, 109, 116, 0) 97.08%, rgba(57, 57, 57, 0) 134.54%);
      background-position: left -20px bottom -20px, center;
    }
  }
  .SearchHero-content {
    position: relative;
    z-index: 11;
  }
  .SearchHero-title {
    color: var(--color-white);
    padding: 0.5rem 0.75rem;
    @media (width >= 48rem) {
      padding: 0;
      padding-bottom: 25px;
    }
  }
  .SearchHero-title-counter {
    font-size: 2.5rem;
    line-height: 2rem;
    letter-spacing: -0.05rem;
    font-weight: 700;
    @media (width >= 48rem) {
      font-size: 3.75rem;
      line-height: 3.5rem;
      letter-spacing: -0.075rem;
    }
  }
  .SearchHero-module {
    width: 100%;
    max-width: 845px;
  }
  .SearchHero-module-selector {
    border-radius: calc(infinity * 1px);
    background-color: var(--color-primary);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 20;
    height: 3.125rem;
    width: auto;
    max-width: max-content;
    padding: 5px;
    @media (width >= 48rem) {
      margin-left: 1.5rem;
      gap: 5px;
    }
  }
  .SearchHero-module-selectorItem {
    border-radius: calc(infinity * 1px);
    background-color: var(--color-primary);
    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;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 0 14px;
    font-size: 0.75rem;
    line-height: 1rem;
    letter-spacing: -0.015rem;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    @media (width >= 48rem) {
      font-size: 0.875rem;
      line-height: 1.125rem;
      letter-spacing: 0.0175rem;
      padding: 0 1.25rem;
    }
    & input {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
    }
    &:has(input:checked) {
      background-color: var(--color-secondary);
      color: var(--color-primary-light);
    }
  }
  .SearchHero-module-content {
    background-color: var(--color-white);
    position: relative;
    display: flex;
    z-index: 15;
    margin-top: -15px;
    padding: 1.875rem 1rem 1rem 1rem;
    border-radius: 20px;
    @media (width >= 48rem) {
      padding: 2.25rem 1.875rem 1.875rem 1.875rem;
    }
  }
  .SearchHero-module-form {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    row-gap: 1rem;
    column-gap: 1.875rem;
    @media (width >= 48rem) {
      flex-direction: row;
    }
    & .IconChoiceContainer {
      display: flex;
      gap: 0.625rem;
      @media (width >= 48rem) {
        align-self: center;
      }
    }
    & .IconChoiceItem {
      flex-grow: 1;
      @media (width >= 48rem) {
        flex-grow: 0;
      }
      & label {
        border-color: var(--color-gray-300);
        &:hover {
          @media (hover: hover) {
            border-color: var(--color-primary-light);
          }
        }
        padding: 0.125rem 0.5rem;
        @media (width >= 48rem) {
          padding: 0.5rem;
        }
      }
    }
    & .IconChoiceItem--checked {
      & label {
        border-color: var(--color-primary-light);
        background-color: var(--color-gray-200);
        &:hover {
          border-color: var(--color-primary-light);
          background-color: var(--color-gray-300);
        }
      }
    }
    & .IconChoiceItem-icon {
      color: var(--color-primary-light);
      width: 2.5rem;
      height: 2.5rem;
    }
  }
  .Sort {
    .form-inline-label {
      &:after {
        display: none;
      }
    }
  }
  .Sort-form {
    position: relative;
    display: inline-flex;
  }
  .Sort-list {
    background-color: var(--color-extralight-2);
    width: 100%;
    @media (width >= 48rem) {
      width: 270px;
      border-radius: 10px;
      padding: 1.25rem;
      position: absolute;
      top: calc(100% + 1rem);
      right: -10px;
      opacity: 0;
      transform: translateY(10%);
      transition: all ease-in-out 0.07s;
      box-shadow: 3px 20px 25px 0 rgba(0, 0, 0, 0.2);
    }
    &.is-open {
      @media (width >= 48rem) {
        opacity: 1;
        transform: translateY(0);
      }
      @media (width >= 80rem) {
        z-index: calc(var(--header-z-index) + 1);
      }
    }
    @media (width >= 80rem) {
      z-index: -1;
      &:after {
        content: "";
        display: block;
        width: 0.875rem;
        height: 0.875rem;
        background-color: inherit;
        position: absolute;
        top: 0;
        right: 30px;
        transform-origin: center;
        transform: rotate(45deg) translateY(-45%);
      }
    }
  }
  .Sort-choice + label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    color: var(--color-primary);
  }
  :has(> .Sort-choice) {
    padding: 1.125rem 0;
    margin: 0;
    font-weight: bold;
    border-top: 1px solid var(--color-light-2);
    &:first-child {
      padding-top: 0;
      border: none;
    }
    &:last-child {
      padding-bottom: 0;
    }
  }
  .Sort-drawerTitle {
    font-size: var(--text-lg-desktop);
    color: var(--color-primary);
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: bold;
    padding-block: 1.125rem;
    padding-top: 0;
    margin-bottom: 1.125rem;
    border-bottom: 1px solid var(--color-light-2);
    @media (width >= 48rem) {
      display: none;
    }
  }
  .Sort-submit {
    padding-top: 2rem;
    margin-top: 1.125rem;
    border-top: 1px solid var(--color-light-2);
    @media (width >= 48rem) {
      display: none;
    }
  }
  .RetailerSearchModal {
    display: grid;
    @media (width >= 48rem) {
      grid-template-columns: 30% 1fr;
      height: 500px;
    }
    form {
      grid-column: 1/-1;
      margin-bottom: 1rem;
    }
  }
  .RetailerSearchModal-map {
    height: 12.5rem;
    @media (width >= 48rem) {
      height: 100%;
      order: 2;
    }
    svg {
      fill: var(--color-primary);
    }
  }
  .RetailerSearchModal-list {
    overflow-y: auto;
    height: 18.75rem;
    @media (width >= 48rem) {
      height: auto;
    }
    &::-webkit-scrollbar {
      width: 6px;
    }
    &::-webkit-scrollbar-track {
      background-color: var(--color-light-2);
    }
    &::-webkit-scrollbar-thumb {
      background: var(--color-primary);
    }
  }
  .RetailerSearchModal-item {
    padding: 1rem;
    background-color: var(--color-extralight-2);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    cursor: pointer;
    transition: background-color 0.12s ease-in-out;
    &:hover {
      background-color: var(--color-light-2);
    }
    & + & {
      border-top: 1px solid var(--color-gray-50);
    }
    &.selected {
      background-color: var(--color-light-2);
    }
  }
  .FiltersSection {
    &.Drawer {
      background-color: var(--color-extralight-2);
      overflow: hidden;
      padding: 0;
      height: 100%;
      @media (width >= 48rem) {
        background: transparent;
      }
      @media (width >= 80rem) {
        overflow: initial;
      }
    }
  }
  .FiltersSection-frame {
    overflow: scroll;
    max-height: 100%;
    display: block;
    @media (width >= 80rem) {
      overflow: initial;
      max-height: initial;
    }
  }
  .FiltersSection-form {
    color: var(--color-primary);
    padding: 1.875rem 1.25rem 0;
    header {
      position: sticky;
      top: 30px;
      background: var(--color-extralight-2);
      margin: 0 -20px;
      padding: 3px 20px;
      z-index: 4;
      @media (width >= 80rem) {
        position: static;
        top: initial;
      }
    }
    @media (width >= 48rem) {
      border-radius: 20px;
      overflow: visible;
      background-color: var(--color-extralight-2);
    }
    @media (width >= 80rem) {
      padding-bottom: 1.875rem;
    }
    .FilterCard {
      flex: 1 1 auto;
      label {
        min-width: 0;
      }
    }
  }
  .FiltersSection-item {
    &:has(.AccordionItem--open) + & {
      border-top: none;
    }
  }
  .FiltersSection-activeFilters {
    margin-bottom: calc(var(--spacing) * 3);
    display: none;
    flex-basis: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
    overflow-x: auto;
    @media (width >= 80rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
    -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 2rem, rgba(0, 0, 0, 1) calc(100% - 2rem), rgba(0, 0, 0, 0) 100%);
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 2rem, rgba(0, 0, 0, 1) calc(100% - 2rem), rgba(0, 0, 0, 0) 100%);
    padding-inline: 1rem;
    margin: 0 -1rem;
    button {
      white-space: nowrap;
    }
    @media (width >= 48rem) {
      flex-wrap: wrap;
      -webkit-mask-image: none;
      mask-image: none;
    }
    @media (width >= 80rem) {
      padding-right: 0;
    }
    &:has(li) {
      display: flex;
    }
  }
  .AccordionItem.AccordionItem--open .AccordionItem__panel {
    overflow: visible;
  }
  .FiltersSection-apply {
    position: sticky;
    bottom: 20px;
    max-width: 90%;
    margin: 0 auto;
    z-index: 2;
  }
  .Dropdown {
    position: relative;
    width: max-content;
  }
  .Dropdown-drawerTitle {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-light-2);
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-weight: bold;
    padding-block: 1.125rem;
    margin-bottom: 1.125rem;
    @media (width >= 48rem) {
      display: none;
    }
  }
  .Dropdown-content {
    display: flex;
    flex-direction: column;
    @media (width >= 48rem) {
      position: absolute;
      top: calc(100% + 10px);
      opacity: 0;
      transform: translateY(10%);
      z-index: -1;
      pointer-events: none;
      transition: opacity 0.1s, transform 0.1s;
    }
    &.is-open {
      @media (width >= 48rem) {
        opacity: 1;
        transform: translateY(0);
        z-index: 50;
        pointer-events: auto;
      }
    }
  }
  .Dropdown-content--default {
    background-color: var(--color-white);
  }
  .Dropdown-content--grey {
    background-color: var(--color-extralight-2);
    @media (width >= 48rem) {
      border-radius: 10px;
      padding: 1.25rem;
      right: -10px;
      box-shadow: 3px 20px 25px 0 rgba(0, 0, 0, 0.2);
    }
    &:after {
      content: "";
      display: block;
      width: 0.875rem;
      height: 0.875rem;
      background-color: inherit;
      position: absolute;
      top: 0;
      right: 30px;
      transform-origin: center;
      transform: rotate(45deg) translateY(-45%);
    }
  }
  .CityFilter .Dropdown-content {
    width: 100%;
    @media (width >= 48rem) {
      min-width: 12.5rem;
      width: max-content;
      max-width: 25rem;
      max-height: 50dvh;
    }
  }
  .CityFilter-list {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    line-height: normal;
    overflow-y: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }
  .CityFilter-item {
    white-space: nowrap;
    a:hover {
      color: var(--color-primary-light);
    }
  }
  .CityFilter-item--active {
    color: var(--color-primary-light);
    &::before {
      content: "> ";
    }
  }
  .Favorite {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-white);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-secondary);
      }
    }
    cursor: pointer;
    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));
    &:hover svg {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    &.is-favorite {
      background-color: var(--color-secondary);
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-white);
        }
      }
    }
  }
  .VehicleContactModal {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 25px;
    color: var(--color-primary);
  }
  .VehicleContactModal-vehicle {
    display: grid;
    grid-template-columns: 57px 1fr;
    grid-template-rows: 43px 1.875rem;
    gap: 10px;
    background-color: var(--color-extralight-2);
    width: 100%;
    padding: 0.625rem;
    border-radius: 10px;
    @media (width >= 48rem) {
      grid-template-columns: 172px 1fr;
      grid-template-rows: 57px 57px;
      gap: 0.625rem 1.25rem;
      padding: 1rem;
    }
  }
  .VehicleContactModal-vehicle-picture {
    background-color: var(--color-light-1);
    background-image: var(--background-image-logo);
    background-repeat: no-repeat;
    background-position: center;
    background-size: auto 80%;
    background-blend-mode: overlay;
    border-radius: 10px;
    overflow: hidden;
    & img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    @media (width >= 48rem) {
      grid-row: 1 / 3;
    }
  }
  .VehicleContactModal-vehicle-headings {
    min-width: 0;
    & > * {
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
    }
  }
  .VehicleContactModal-vehicle-title {
    font-size: var(--text-h4);
    line-height: var(--tw-leading, var(--text-h4--line-height));
    letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
    font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
    @media (width >= 48rem) {
      font-size: var(--text-h3);
      line-height: var(--tw-leading, var(--text-h3--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h3--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h3--font-weight));
    }
  }
  .VehicleContactModal-vehicle-subtitle {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
      letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    }
  }
  .VehicleContactModal-vehicle-pricing {
    grid-column: 1 / 3;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    gap: 0.625rem;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    font-weight: 700;
    & small {
      font-size: 9px;
      font-weight: 400;
      line-height: normal;
    }
    & > * {
      display: flex;
      align-items: end;
      justify-content: center;
      gap: 0.125rem;
      border-radius: 5px;
    }
    @media (width >= 48rem) {
      grid-column: 2 / 3;
      grid-auto-columns: max-content;
      gap: 1rem;
      font-size: var(--text-h4);
      line-height: var(--tw-leading, var(--text-h4--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
      & small {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
        letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      }
      & > * {
        padding-inline: 1.25rem;
      }
    }
  }
  .VehicleContactModal-vehicle-installment {
    background-color: var(--color-white);
    padding-bottom: 0.5rem;
    @media (width >= 48rem) {
      padding-bottom: 1rem;
    }
  }
  .VehicleContactModal-vehicle-prices {
    border-width: 2px;
    border-color: var(--color-white);
    padding-bottom: 6px;
    @media (width >= 48rem) {
      padding-bottom: 13px;
    }
  }
  .VehicleContactModal-intro {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-weight: 700;
    text-align: center;
  }
  .VehicleContactModal-reference {
    background-color: var(--color-extralight-2);
    padding: 0.625rem;
    border-radius: 10px;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    text-align: center;
  }
  .VehicleContactModal-phone {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    text-align: center;
  }
  .VehicleContactModal-phone-schedules {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    font-weight: 700;
  }
  .VehicleContactModal-phone-legals {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    color: var(--color-primary-light);
  }
  .VehicleContactModal-separator {
    align-self: stretch;
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-weight: 700;
    &::after, &::before {
      content: "";
      flex-grow: 1;
      height: 1px;
      background-color: var(--color-light-2);
    }
  }
  .VehicleContactModal-ctas {
    align-self: stretch;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 0.625rem;
    @media (width >= 48rem) {
      grid-template-columns: 1fr 1fr;
      grid-template-rows: 1fr;
    }
  }
  .Card--funnel {
    display: grid;
    grid-template-areas: "icon title" "subtitle subtitle" "content content";
    grid-template-columns: 2.125rem 1fr;
    grid-template-rows: repeat(3, auto);
    gap: 0.625rem 1.25rem;
    padding: 1.5rem 1.875rem;
    border-radius: 20px;
    background-color: var(--color-white);
    @media (width >= 80rem) {
      grid-template-areas: "icon title" "icon subtitle" "content content";
      grid-template-columns: 5.125rem 1fr;
      grid-template-rows: repeat(3, auto);
      gap: 1.25rem;
      padding: 2.75rem 1.875rem;
    }
    & .Card-icon {
      grid-area: icon;
      width: 100%;
      height: auto;
      padding: 0.25rem;
      border-radius: 100%;
      background-color: var(--color-primary);
      color: var(--color-secondary);
      filter: drop-shadow(0 5px 18px rgba(0, 0, 0, 0.2));
      @media (width >= 80rem) {
        padding: 1rem;
      }
    }
    & .Card-title {
      grid-area: title;
      align-self: center;
      font-size: var(--text-h4);
      line-height: var(--tw-leading, var(--text-h4--line-height));
      letter-spacing: var(--tw-tracking, var(--text-h4--letter-spacing));
      font-weight: var(--tw-font-weight, var(--text-h4--font-weight));
      color: var(--color-primary);
    }
    & .Card-subtitle {
      grid-area: subtitle;
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
      color: var(--color-dark-900);
    }
    & .Card-content {
      grid-area: content;
      margin-top: 1rem;
      @media (width >= 80rem) {
        margin-top: 1.5rem;
      }
    }
  }
  .DeliveryModule {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    @media (width >= 80rem) {
      gap: 1rem;
    }
  }
  .DeliveryModuleItem {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding: 1.25rem;
    border-radius: 10px;
    border: 2px solid var(--color-extralight-2);
    background-color: var(--color-white);
    transition: background-color 0.3s;
  }
  .DeliveryModuleItem-header {
    display: flex;
    align-items: center;
    min-height: 1.875rem;
    flex-wrap: wrap;
    gap: 0.5rem;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    font-weight: 700;
    color: var(--color-primary);
    & label {
      flex-grow: 1;
      display: flex;
      align-items: center;
      gap: 0.625rem;
      cursor: pointer;
      & input {
        align-self: unset;
      }
    }
    &:has(input:disabled) label {
      color: var(--color-light-2);
    }
    @media (width >= 80rem) {
      min-height: 2.75rem;
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
      letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    }
  }
  .DeliveryModuleItem-price {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 0.2rem;
    height: 1.875rem;
    padding: 0 1.25rem;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-secondary);
    & small {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    }
    @media (width >= 80rem) {
      height: 2.75rem;
    }
  }
  .DeliveryModuleItem-description {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    color: var(--color-primary);
  }
  .DeliveryModuleItem-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
    padding: 1.25rem 0.625rem;
    border-radius: 10px;
    background-color: var(--color-light-1);
    text-align: center;
    transition: background-color 0.3s;
    @media (width >= 48rem) {
      flex-direction: row;
      text-align: left;
    }
  }
  .DeliveryModuleItem-footer-icon {
    flex-shrink: 0;
    width: 2.5rem;
    height: auto;
    padding: 0.5rem;
    border-radius: 100%;
    background-color: var(--color-white);
    color: var(--color-primary-light);
    transition: background-color 0.3s;
  }
  .DeliveryModuleItem-footer-content {
    flex-grow: 1;
    width: 100%;
    color: var(--color-primary);
    @media (width >= 48rem) {
      width: auto;
    }
  }
  .DeliveryModuleItem--selected {
    background-color: var(--color-extralight-2);
    & .DeliveryModuleItem-footer {
      background-color: var(--color-white);
    }
    & .DeliveryModuleItem-footer-icon {
      background-color: var(--color-extralight-2);
    }
  }
  .Pagination-list {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    justify-content: center;
    flex-wrap: wrap;
  }
  .Pagination-item {
    text-decoration: none;
    min-width: 2.75rem;
    height: 2.75rem;
    justify-content: center;
    gap: 0.25rem;
    align-items: center;
    background-color: var(--color-extralight-2);
    border-radius: 8px;
    transition: linear 0.04s;
    display: inline-flex;
    &:hover {
      background-color: var(--color-primary-light);
      color: var(--color-white);
    }
    &:focus-visible {
      outline: var(--color-primary-light) solid 2px;
    }
  }
  .Pagination-item--prev, .Pagination-item--next {
    padding: 0 0.75rem;
    display: inline-flex;
  }
  .Pagination-item--center {
    display: inline-flex;
  }
  .Pagination-item--prev {
    .Pagination-icon {
      transform: rotate(90deg);
    }
  }
  .Pagination-item--next {
    .Pagination-icon {
      transform: rotate(-90deg);
    }
  }
  .Pagination-item--active {
    color: var(--color-white);
    background-color: var(--color-primary);
    display: inline-flex;
  }
  .Pagination-item--isPrev {
    padding: 0 0.75rem 0 0.25rem;
    .Pagination-text {
      margin-left: 0.5rem;
    }
  }
  .Pagination-item--isNext {
    padding: 0 0.25rem 0 0.75rem;
    .Pagination-text {
      margin-left: 0.5rem;
    }
  }
  .Pagination-item--elipsis {
    &:hover {
      background-color: var(--color-extralight-2);
      color: var(--color-dark-gray);
    }
  }
  .Toaster {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    position: fixed;
    bottom: 0;
    right: 0;
    width: 100%;
    max-width: 512px;
    padding: 0.5rem;
    z-index: 2000;
    @media (width >= 48rem) {
      padding: 1rem;
    }
  }
  .Toast {
    --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);
    position: relative;
    border-radius: 0.5rem;
    animation: toastFadeIn 0.3s ease forwards;
  }
  .Toast-close {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0rem;
    right: 0rem;
    width: 2rem;
    height: 2rem;
    transition: opacity 0.3s;
    cursor: pointer;
    &:hover, &:focus-visible {
      opacity: 0.5;
    }
  }
  @keyframes toastFadeIn {
    from {
      opacity: 0;
      transform: translate3d(100%, 0, 0);
    }
    to {
      opacity: 1;
      transform: translate3d(0, 0, 0);
    }
  }
  .SearchSelectionButton {
    background-color: var(--color-white);
    color: var(--color-primary);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9375rem;
    padding: 1.25rem 0.5rem;
    border-radius: 1.25rem;
    width: 9.0625rem;
    min-height: 8rem;
    text-decoration-line: none;
    text-align: center;
    @media (width >= 48rem) {
      flex-direction: row-reverse;
      justify-content: space-between;
      flex: 1 0 0;
      min-height: 7.375rem;
      width: auto;
      padding: 0.5rem 1.5625rem;
      text-align: left;
    }
    @media (width >= 80rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
      letter-spacing: var(--tw-tracking, var(--text-lg--letter-spacing));
    }
    @media (hover: hover) and (pointer: fine) {
      --tw-shadow: 0 1.25rem 1rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.07)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.04));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      &:hover, &:focus-visible {
        --tw-shadow: 0 0.5rem 0.5rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.1)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(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);
      }
    }
    @media (hover: none), (pointer: coarse) {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      &:hover, &:focus-visible {
        --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);
      }
      scroll-snap-align: start;
    }
  }
  .SearchSelectionButton-icon {
    border-radius: calc(infinity * 1px);
    background-image: var(--background-image-gradient-primary);
    color: var(--color-white);
    height: 3.4375rem;
    width: 3.4375rem;
    padding: 0.5rem;
    object-fit: contain;
    flex-shrink: 0;
    @media (width >= 48rem) {
      height: 4.5rem;
      width: 4.5rem;
      padding: 0.75rem;
    }
  }
  .VehicleFinancingSimulator {
    position: relative;
    color: var(--color-primary);
    & form {
      display: flex;
      flex-direction: column;
      gap: 1.5625rem;
    }
  }
  .VehicleFinancingSimulator-loading {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.9);
    &.hidden {
      display: none;
    }
  }
  .VehicleFinancingSimulator-products {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    @media (width >= 48rem) {
      flex-direction: row;
      flex-wrap: wrap;
      gap: 0.9375rem 1.5625rem;
    }
  }
  .VehicleFinancingSimulator-product {
    border-radius: calc(infinity * 1px);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    padding: 0.875rem 1.25rem;
    background-color: var(--color-extralight-2);
    transition: background-color 0.3s;
    user-select: none;
    cursor: pointer;
    & input {
      display: none;
    }
    &:has(input:checked) {
      background-color: var(--color-secondary);
    }
    &:hover {
      background-color: var(--color-light-2);
    }
  }
  .VehicleFinancingSimulator-sliders {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    gap: 0.9375rem;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    @media (width >= 48rem) {
      grid-template-columns: auto 1fr auto;
      gap: 0.9375rem 1.5625rem;
    }
  }
  .VehicleFinancingSimulator-sliders-label {
    font-weight: bold;
  }
  .VehicleFinancingSimulator-sliders-value {
    display: flex;
    align-items: center;
    text-align: center;
    & output {
      min-width: 5rem;
      padding: 0.4375rem;
      border: 1px solid var(--color-extralight-2);
      background-color: var(--color-white);
    }
    & .unit {
      width: 3.4375rem;
      padding: 0.5rem;
      background-color: var(--color-extralight-2);
    }
  }
  .VehicleFinancingSimulator-packs-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    letter-spacing: var(--tw-tracking, var(--text-base--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
  }
  .VehicleFinancingSimulator-packs {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.9375rem;
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, 1fr);
      gap: 1.5625rem;
    }
  }
  .VehicleFinancingSimulator-pack {
    --tw-shadow: 0 1.25rem 1rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.07)), 0 0.25rem 0.1625rem 0 var(--tw-shadow-color, rgba(0, 0, 0, 0.04));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .VehicleFinancingSimulator-pack-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.9375rem;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    background-color: var(--color-light-2);
    transition: background-color 0.3s;
    cursor: pointer;
    &:has(input:checked) {
      background-color: var(--color-secondary);
    }
    input:checked {
      border-color: var(--color-primary);
    }
  }
  .VehicleFinancingSimulator-pack-body {
    padding: 0.9375rem;
  }
  .VehicleFinancingSimulator-pack-service {
    display: flex;
    align-items: center;
    font-size: var(--text-2xs);
    line-height: var(--tw-leading, var(--text-2xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
    gap: 0.25rem;
  }
  .VehicleFinancingSimulator-pack-footer {
    display: flex;
    justify-content: center;
    padding: 0.625rem;
    border-top: 1px solid var(--color-extralight-2);
    font-size: var(--text-2xs);
    line-height: var(--tw-leading, var(--text-2xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-2xs--letter-spacing));
    text-decoration: underline;
    transition: background-color 0.3s;
    cursor: pointer;
    &:hover {
      background-color: var(--color-extralight-2);
    }
  }
  .VehicleFinancingSimulator-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9375rem;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    text-align: center;
    & small {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  .CommercialCovering {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-repeat: repeat-y;
    background-attachment: fixed;
    background-size: 100dvw auto;
    background-position: top center;
  }
  a.CommercialCovering {
    pointer-events: auto;
    cursor: pointer;
  }
  .AdvertisingBanner {
    border-radius: 20px;
    overflow: hidden;
    margin-inline: auto;
    max-width: 335px;
    @media (width >= 48rem) {
      max-width: 964px;
    }
    @media (width >= 80rem) {
      max-width: 1244px;
    }
  }
}
.Carousel {
  .splide__slide {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:not(.is-visible) {
      opacity: 0.2;
    }
  }
  .splide__arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    padding: 0.75rem;
    background-color: var(--color-white);
    color: var(--color-gray-900);
    opacity: 1;
    box-shadow: 0 56px 114px 0 rgba(0, 0, 0, 0.29), 0 11.2px 18.525px 0 rgba(0, 0, 0, 0.14);
    &:hover:not(:disabled) {
      opacity: 1;
      box-shadow: 0 56px 114px 0 rgba(0, 0, 0, 0.4), 0 11.2px 18.525px 0 rgba(0, 0, 0, 0.2);
    }
    &:disabled {
      display: none;
    }
    & svg {
      width: calc(var(--spacing) * 7);
      height: calc(var(--spacing) * 7);
    }
  }
  .splide__pagination {
    bottom: -20px;
    display: flex;
    gap: 0.25rem;
    width: 100%;
    & > li {
      flex-grow: 1;
      max-width: 3.125rem;
      @media (width >= 48rem) {
        max-width: 6.25rem;
      }
    }
  }
  .splide__pagination__page {
    background-color: var(--color-extralight-2);
    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));
    height: 0.125rem;
    width: 100%;
    border-radius: initial;
    border: none;
    &.is-active {
      background-color: var(--color-primary);
      transform: initial;
    }
  }
}
.CarouselVehicleCard {
  .splide__track {
    overflow: visible;
  }
  .splide__slide {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:not(.is-visible) {
      opacity: 1;
    }
    @media (width >= 48rem) {
      &:not(.is-visible):has(~ .is-active) .VehicleCard {
        box-shadow: none;
      }
    }
    @media (width >= 80rem) {
      &:not(.is-visible) {
        opacity: 0.2;
        &:has(~ .is-active) {
          opacity: 0;
        }
      }
    }
  }
  &.is-sliding {
    & .VehicleCard {
      box-shadow: none;
    }
    @media (width >= 80rem) {
      .splide__slide:not(.is-visible):has(~ .is-active) {
        opacity: 0.2;
      }
    }
  }
}
.Gallery {
  --gallery-height: 16rem;
  display: flex;
  gap: 1rem;
  height: var(--gallery-height);
  align-items: start;
  @media (width >= 48rem) {
    --gallery-height: 30rem;
  }
  .splide {
    height: 100%;
    width: 100%;
    &.is-focus-in {
      .splide__arrow:focus {
        outline: none;
      }
    }
  }
  .splide__track {
    height: 100%;
    & > .splide__list > .splide__slide {
      border: none !important;
    }
  }
  .splide__slide {
    height: 100%;
    &:not(.is-active) {
      .Gallery-thumbnail {
        opacity: 0.5;
      }
    }
  }
  .splide__arrows--ttb {
    .splide__arrow {
      opacity: 1;
      box-shadow: 0 56px 114px 0 rgba(0, 0, 0, 0.29), 0 11px 18px 0 rgba(0, 0, 0, 0.14);
      padding: 0.375rem 0.875rem;
      border-radius: 5px;
      background-color: var(--color-white);
      width: auto;
      height: auto;
      left: 50%;
      right: auto;
      &:hover, &:focus {
        opacity: 1;
        outline: none;
        background-color: var(--color-gray-50);
      }
      &:focus-visible {
        outline: 2px solid var(--color-secondary);
        outline-offset: 0;
      }
    }
    .splide__arrow--prev {
      top: 0;
      transform: translate(-50%, -50%);
    }
    .splide__arrow--next {
      bottom: 0;
      transform: translate(-50%, 50%);
    }
  }
  .splide__pagination {
    bottom: 1rem;
  }
  .splide__pagination__page {
    background: var(--color-extralight-2);
    opacity: 1;
    &.is-active {
      background-color: var(--color-secondary);
    }
  }
}
.Gallery--account {
  .Gallery-wishlist, .Gallery-share {
    display: none;
  }
}
.Gallery-thumbnails {
  width: 100%;
  max-width: 7.5rem;
  flex-shrink: 0;
  display: none;
  @media (width >= 48rem) {
    display: block;
  }
  .Gallery-img {
    border-radius: 10px;
  }
}
.Gallery-main {
  overflow: hidden;
}
.Gallery-img {
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  @media (width >= 48rem) {
    border-radius: 10px;
  }
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.Gallery-promo {
  position: absolute;
  top: 16px;
  left: 18px;
  max-width: 50%;
  display: none;
  align-items: center;
  gap: 5px;
  padding: 8px 10px;
  border-radius: 10px;
  font-weight: bold;
  color: var(--color-primary);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
  font-size: var(--text-xs-desktop);
  line-height: var(--text-xs--line-height-desktop);
  @media (width >= 48rem) {
    display: flex;
  }
}
.Gallery-progress {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
  --tw-leading: 1;
  line-height: 1;
  position: absolute;
  bottom: 16px;
  left: 18px;
  padding: 0.625rem;
  display: none;
  color: white;
  background-color: var(--color-primary);
  border-radius: 5px;
  pointer-events: none;
  @media (width >= 48rem) {
    display: block;
  }
}
.Gallery-wishlist, .Gallery-share, .Gallery-lightbox {
  display: block;
  padding: 0.5rem;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  position: absolute;
  top: 15px;
  right: 15px;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  @media (width >= 48rem) {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.75rem;
  }
  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }
  &:focus-visible {
    outline: 1px solid var(--color-secondary);
  }
}
.Gallery-share {
  right: auto;
  left: 15px;
  background-color: var(--color-white);
  @media (width >= 48rem) {
    display: none;
  }
  &:hover {
    background-color: var(--color-secondary);
  }
}
.Gallery-lightbox {
  top: auto;
  bottom: 15px;
  color: var(--color-white);
  background-color: var(--color-primary);
  &:hover {
    color: var(--color-primary);
    background-color: var(--color-white);
  }
}
.lg-container {
  .lg-counter {
    display: none;
  }
  .lg-backdrop.in {
    background-color: var(--color-primary-light);
    opacity: 0.9;
  }
  .lg-components {
    display: none;
  }
  .lg-prev, .lg-next {
    width: 3.5rem;
    height: 3.5rem;
    background-color: var(--color-white);
    color: var(--color-primary);
    border-radius: 50%;
    padding: 0.875rem;
    &:hover:not(.disabled) {
      color: inherit;
    }
  }
  .lg-image {
    border-radius: 20px;
  }
  .lg-toolbar .lg-icon {
    color: var(--color-white);
  }
}
.tippy-box[data-theme~="jeanlain"] {
  border-top-left-radius: var(--radius-sm);
  border-bottom-left-radius: var(--radius-sm);
  background-color: var(--color-primary-light);
  & .tippy-content {
    border-radius: var(--radius-lg);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    letter-spacing: var(--tw-tracking, var(--text-xs--letter-spacing));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  & .tippy-arrow {
    color: var(--color-primary-light);
  }
}
html:has(.product-page) {
  @media (max-width: calc(48rem - 0.02rem)) {
    --scroll-padding-extra: var(--vehicle-fixed-header-height);
    .Footer {
      margin-bottom: var(--vehicle-fixed-footer-height);
    }
  }
}
.product-page .Gallery {
  @media (width >= 48rem) {
    padding: 0.625rem 1.875rem 2.5rem 1.875rem;
  }
  @media (width >= 80rem) {
    padding: 0 0 62px 0;
  }
}
.product-page .content-col {
  display: flex;
  flex-direction: column;
  gap: 25px;
  margin-top: 25px;
  margin-bottom: 25px;
  @media (width >= 80rem) {
    gap: 20px;
    margin: 2.25rem 0;
  }
}
.product-page .infos {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.product-list {
  --container-max-w: calc(97.5rem + 2 * 1.875rem);
  --container-padding: 1.875rem;
}
.product-list-sidebar {
  overflow: hidden;
  @media (width >= 80rem) {
    overflow: initial;
  }
}
.product-list-main {
  transition: 0.07s ease-in-out;
  &.is-loading, [busy] {
    opacity: 0.7;
    pointer-events: none;
  }
}
.product-list-no-result-image {
  max-width: 35.625rem;
  width: 100%;
}
.product-list-grid {
  .AdvertisingCard {
    width: 100%;
  }
}
.product-list-recommended {
  width: calc(100% + var(--container-padding));
  overflow-x: hidden;
  margin-top: 4rem;
  @media (width >= 48rem) {
    margin-top: 5rem;
    max-width: calc(100vw - calc(100vw - var(--container-max-w) ) / 2 + var(--container-padding));
  }
  @media (width >= 80rem) {
    max-width: calc(min(var(--container-max-w),100vw) - 2 * var(--container-padding) - 300px - 1rem );
  }
}
.booking-funnel-steps {
  position: sticky;
  top: calc(var(--sticky-top-offset--funnel));
}
.booking-funnel {
  background-color: var(--color-extralight-2);
}
.booking-funnel-content {
  display: grid;
  grid-template-areas: "sidebar" "main";
  grid-template-columns: 1fr;
  grid-template-rows: repeat(2, auto);
  @media (width >= 80rem) {
    grid-template-areas: "main sidebar";
    grid-template-columns: 1fr 404px;
    grid-template-rows: auto;
    column-gap: 2rem;
    padding-top: 2rem;
  }
  & .sidebar {
    --margin-top: 0px;
    grid-area: sidebar;
    align-self: start;
    position: sticky;
    top: calc(var(--sticky-top-offset--funnel) + var(--funnel-steps-height) + var(--margin-top));
    z-index: 10;
    margin-inline: calc(var(--container-padding) * -1);
    @media (width >= 80rem) {
      --margin-top: 2rem;
      margin: 0;
      padding-bottom: 80px;
    }
  }
  & .sidebar-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
  & .main-col {
    grid-area: main;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-top: 20px;
    padding-bottom: 80px;
    @media (width >= 48rem) {
      padding-top: 1.875rem;
    }
    @media (width >= 80rem) {
      padding-top: 0;
    }
  }
  & .form-group {
    margin-bottom: 0;
  }
}
.booking-funnel-end {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding-top: 45px;
  padding-bottom: 80px;
  text-align: center;
  color: var(--color-primary);
  @media (width >= 80rem) {
    padding-top: 3.75rem;
    gap: 2rem;
  }
}
.booking-funnel-end-image {
  max-width: 250px;
  height: auto;
  @media (width >= 48rem) {
    max-width: 368px;
  }
  @media (width >= 80rem) {
    max-width: 538px;
  }
}
.booking-funnel-end-title {
  font-size: var(--text-h2);
  line-height: var(--tw-leading, var(--text-h2--line-height));
  letter-spacing: var(--tw-tracking, var(--text-h2--letter-spacing));
  font-weight: var(--tw-font-weight, var(--text-h2--font-weight));
  font-weight: 400;
}
.booking-funnel-end-description {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  letter-spacing: var(--tw-tracking, var(--text-sm--letter-spacing));
  @media (width >= 80rem) {
    max-width: 616px;
  }
}
:root {
  --sticky-top-offset: calc(var(--topbar-height) + var(--header-height));
  --sticky-top-offset--funnel: calc(var(--topbar-height) + var(--header-height--funnel));
  --scroll-padding-base: var(--sticky-top-offset);
  --scroll-padding-extra: 0px;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--scroll-padding-base) + var(--scroll-padding-extra) + 5px);
}
body {
  background-color: var(--color-white);
  font-family: var(--font-theme);
  color: var(--color-dark-gray);
  position: relative;
  display: flex;
  flex-direction: column;
  &:has(header.is-open) {
    overflow: hidden;
  }
  &:has(.Drawer.is-open) {
    @media (max-width: calc(48rem - 0.02rem)) {
      overflow: hidden;
    }
  }
}
.turbo-progress-bar {
  background: var(--color-secondary);
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-content {
  syntax: "*";
  inherits: false;
  initial-value: "";
}
@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-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@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-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-outline-style: solid;
      --tw-content: "";
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-leading: initial;
      --tw-duration: initial;
    }
  }
}
