/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
      "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
      "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-white: #fff;
    --spacing: 0.25rem;
    --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --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-dark-blue: #1a2d49;
    --color-light-blue: #193d6e;
    --color-red: #c9203c;
    --color-dark-red: #96182d;
    --color-yellow: #fbba07;
    --color-blue: #176fe5;
    --color-gray: #dfe8ee;
    --font-display: "Granesta", "contempora-script", cursive;
    --font-headline: "contempora-sans-condensed", "Barlow Condensed", sans-serif;
    --font-body: "trust-3a", "Source Serif 4", serif;
    --font-label: "pd-everyday", "battery-park", "contempora-sans-condensed", sans-serif;
    --text-display-large: clamp(5.75rem, 2.143rem + 14.798vw, 18.125rem);
    --text-display-medium: clamp(5rem, 3.178rem + 7.474vw, 11.25rem);
    --text-headline-large: clamp(4.125rem, 2.777rem + 5.531vw, 8.75rem);
    --text-headline-medium: clamp(3.5rem, 2.698rem + 3.288vw, 6.25rem);
    --text-headline-small: clamp(3.125rem, 2.396rem + 2.99vw, 5.625rem);
    --text-title-large: clamp(2rem, 1.854rem + 0.598vw, 2.5rem);
    --text-title-medium: clamp(1.5rem, 1.391rem + 0.448vw, 1.875rem);
    --text-title-small: clamp(0.875rem, 0.729rem + 0.598vw, 1.375rem);
    --text-label-large: clamp(1.375rem, 1.229rem + 0.598vw, 1.875rem);
    --text-label-medium: clamp(1.375rem, 1.266rem + 0.448vw, 1.75rem);
    --text-label-small: clamp(0.75rem, 0.714rem + 0.149vw, 0.875rem);
    --text-body-large: clamp(1rem, 0.891rem + 0.448vw, 1.375rem);
    --text-body-medium: clamp(0.875rem, 0.802rem + 0.299vw, 1.125rem);
    --text-body-small: clamp(0.75rem, 0.677rem + 0.299vw, 1rem);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .static {
    position: static;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .mt-0\! {
    margin-top: 0px !important;
  }
  .mb-0\! {
    margin-bottom: 0px !important;
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .flex\! {
    display: flex !important;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .table {
    display: table;
  }
  .h-96 {
    height: calc(var(--spacing) * 96);
  }
  .flex-1 {
    flex: 1;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .items-center {
    align-items: center;
  }
  .justify-center {
    justify-content: center;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .bg-dark-blue {
    background-color: var(--color-dark-blue);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .font-display {
    font-family: var(--font-display);
  }
  .text-white {
    color: var(--color-white);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .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);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  @media (hover: hover) {
    .hover\:scale-105:hover {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    .hover\:bg-gray-50:hover {
      background-color: var(--color-gray-50);
    }
  }
  @media (width < 48rem) {
    .max-md\:text-left {
      text-align: left;
    }
    .max-md\:text-right {
      text-align: right;
    }
  }
}
:root {
  --color-dark-blue: #1a2d49;
  --color-light-blue: #193d6e;
  --color-red: #c9203c;
  --color-dark-red: #96182d;
  --color-yellow: #fbba07;
  --color-blue: #176fe5;
  --color-gray: #dfe8ee;
  --color-white: #ffffff;
  --font-display: "Granesta", "contempora-script", cursive;
  --font-headline: "contempora-sans-condensed", "Barlow Condensed", sans-serif;
  --font-body: "trust-3a", "Source Serif 4", serif;
  --font-label: "pd-everyday", "battery-park", "contempora-sans-condensed", sans-serif;
  --text-display-large: clamp(5.75rem, 2.143rem + 14.798vw, 18.125rem);
  --text-display-medium: clamp(5rem, 3.178rem + 7.474vw, 11.25rem);
  --text-headline-large: clamp(4.125rem, 2.777rem + 5.531vw, 8.75rem);
  --text-headline-medium: clamp(3.5rem, 2.698rem + 3.288vw, 6.25rem);
  --text-headline-small: clamp(3.125rem, 2.396rem + 2.99vw, 5.625rem);
  --text-title-large: clamp(2rem, 1.854rem + 0.598vw, 2.5rem);
  --text-title-medium: clamp(1.5rem, 1.391rem + 0.448vw, 1.875rem);
  --text-title-small: clamp(0.875rem, 0.729rem + 0.598vw, 1.375rem);
  --text-label-large: clamp(1.375rem, 1.229rem + 0.598vw, 1.875rem);
  --text-label-medium: clamp(1.375rem, 1.266rem + 0.448vw, 1.75rem);
  --text-label-small: clamp(0.75rem, 0.714rem + 0.149vw, 0.875rem);
  --text-body-large: clamp(1rem, 0.891rem + 0.448vw, 1.375rem);
  --text-body-medium: clamp(0.875rem, 0.802rem + 0.299vw, 1.125rem);
  --text-body-small: clamp(0.75rem, 0.677rem + 0.299vw, 1rem);
}
@font-face {
  font-family: "Granesta";
  src: url("../fonts/Granesta.otf") format("opentype"), url("../fonts/Granesta.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@layer base {
  html {
    scroll-behavior: smooth;
  }
  @media (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
    *, *::before, *::after {
      animation-duration: 0.01ms !important;
      transition-duration: 0.01ms !important;
    }
  }
  * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  body {
    font-family: var(--font-body);
    font-size: var(--text-body-large);
    line-height: 1.2;
    background: var(--color-dark-blue);
    color: var(--color-white);
    margin: 0;
    -webkit-font-smoothing: antialiased;
  }
  img {
    max-width: 100%;
    height: auto;
    display: block;
  }
  a {
    color: inherit;
    text-decoration: none;
  }
  button {
    font: inherit;
    cursor: pointer;
    background: none;
    border: 0;
  }
}
@layer components {
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .skip-link {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: 100;
    background: var(--color-yellow);
    color: var(--color-dark-blue);
    padding: 0.75rem 1rem;
  }
  .skip-link:focus {
    left: 1rem;
    top: 1rem;
  }
  .font-display {
    font-family: var(--font-display);
    line-height: 0.9;
    text-transform: uppercase;
  }
  .font-headline {
    font-family: var(--font-headline);
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 0.85;
  }
  .font-label {
    font-family: var(--font-label);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .type-display-large, .block-location__line2 {
    font-family: var(--font-headline);
    font-size: var(--text-display-large);
    font-weight: 400;
    line-height: 0.8;
    text-transform: uppercase;
  }
  .type-display-medium, .block-hero__titles, .block-location__line1 {
    font-family: var(--font-display);
    font-size: var(--text-display-medium);
    font-weight: 400;
    line-height: 0.9;
  }
  .type-headline-large, .block-product__title, .block-franchise-hero__title, .block-text-columns__line2 {
    font-family: var(--font-display);
    font-size: var(--text-headline-large);
    font-weight: 400;
    line-height: 0.9;
  }
  .type-headline-medium, .block-sides__title {
    font-family: var(--font-display);
    font-size: var(--text-headline-medium);
    font-weight: 400;
    line-height: 0.9;
  }
  .type-headline-small, .block-product__name, .block-text-columns__line1, .block-contact__title {
    font-family: var(--font-headline);
    font-size: var(--text-headline-small);
    font-weight: 400;
    line-height: 0.8;
    text-transform: uppercase;
  }
  .type-title-large, .block-sides__label {
    font-family: var(--font-headline);
    font-size: var(--text-title-large);
    font-weight: 400;
    line-height: 0.8;
    text-transform: uppercase;
  }
  .type-title-medium, .footer-label, .block-contact__details-label {
    font-family: var(--font-headline);
    font-size: var(--text-title-medium);
    font-weight: 400;
    line-height: 0.8;
    text-transform: uppercase;
  }
  .type-title-small, .block-product__sizes-label, .block-product__allergies-label {
    font-family: var(--font-headline);
    font-size: var(--text-title-small);
    font-weight: 400;
    line-height: 0.8;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }
  .type-label-large, .btn-red, .block-franchise-hero__cta, .block-location__cta, .landmark-card__label, .block-text-columns__download, .block-text-columns__video-label, .block-contact__submit {
    font-family: var(--font-label);
    font-size: var(--text-label-large);
    font-weight: 400;
    line-height: 0.9;
    text-transform: uppercase;
  }
  .type-label-medium, .site-nav__links, .site-nav__franchise, .site-nav__order {
    font-family: var(--font-headline);
    font-size: var(--text-label-medium);
    font-weight: 400;
    line-height: 0.8;
    text-transform: uppercase;
  }
  .type-label-small, .size-pill, .block-product__sizes .size-pill, .block-product__allergen-tip {
    font-family: var(--font-body);
    font-size: var(--text-label-small);
    font-weight: 400;
    line-height: 1.2;
    text-transform: none;
    letter-spacing: 0;
  }
  .type-body-large, .block-product__desc, .block-location__content, .site-footer__info p, .block-franchise-hero__intro, .block-contact__intro, .block-contact__details-links {
    font-family: var(--font-body);
    font-size: var(--text-body-medium);
    font-weight: 400;
    line-height: 1.2;
  }
  .type-body-medium, .block-text-columns__grid {
    font-family: var(--font-body);
    font-size: var(--text-body-medium);
    font-weight: 400;
    line-height: 1.2;
  }
  .type-body-small, .site-footer__legal {
    font-family: var(--font-body);
    font-size: var(--text-body-small);
    font-weight: 400;
    line-height: 1.2;
  }
  .btn-yellow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0.75rem 1.25rem;
    background: var(--color-yellow);
    color: var(--color-dark-blue);
    font-family: var(--font-headline);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-radius: 0;
    transition: filter 0.2s ease;
  }
  .btn-yellow:hover {
    filter: brightness(1.05);
  }
  .btn-red {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0.9rem 1.5rem;
    background: var(--color-red);
    color: var(--color-white);
    clip-path: polygon(2% 8%, 98% 0%, 100% 92%, 0% 100%);
    transition: filter 0.2s ease;
  }
  .btn-red:hover {
    filter: brightness(1.08);
  }
  .size-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0.35rem 0.75rem;
    border: 1px solid var(--color-white);
    color: var(--color-white);
    white-space: nowrap;
  }
  .carousel-btn {
    width: 60px;
    height: 60px;
    border-radius: 9999px;
    border: 2px solid var(--color-white);
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-white);
    flex-shrink: 0;
  }
  .carousel-btn:hover {
    background: rgba(255, 255, 255, 0.08);
  }
  .carousel-btn.swiper-button-prev-custom, .carousel-btn.swiper-button-next-custom, .carousel-btn[data-cat-prev], .carousel-btn[data-cat-next] {
    border: none;
    padding: 0;
  }
  .carousel-btn.swiper-button-prev-custom:hover, .carousel-btn.swiper-button-next-custom:hover, .carousel-btn[data-cat-prev]:hover, .carousel-btn[data-cat-next]:hover {
    background: transparent;
  }
  .carousel-btn.swiper-button-prev-custom svg, .carousel-btn.swiper-button-next-custom svg, .carousel-btn[data-cat-prev] svg, .carousel-btn[data-cat-next] svg {
    width: 60px;
    height: 60px;
    display: block;
  }
  .carousel-btn.swiper-button-prev-custom svg circle, .carousel-btn.swiper-button-next-custom svg circle, .carousel-btn[data-cat-prev] svg circle, .carousel-btn[data-cat-next] svg circle {
    transition: opacity 0.25s ease;
  }
  .carousel-btn.swiper-button-prev-custom svg path, .carousel-btn.swiper-button-next-custom svg path, .carousel-btn[data-cat-prev] svg path, .carousel-btn[data-cat-next] svg path {
    transition: transform 0.25s ease;
  }
  .carousel-btn.swiper-button-prev-custom:hover svg circle, .carousel-btn.swiper-button-next-custom:hover svg circle, .carousel-btn[data-cat-prev]:hover svg circle, .carousel-btn[data-cat-next]:hover svg circle {
    opacity: 0.5;
  }
  .carousel-btn.swiper-button-prev-custom:hover svg path, .carousel-btn[data-cat-prev]:hover svg path {
    transform: translateX(-4px);
  }
  .carousel-btn.swiper-button-next-custom:hover svg path, .carousel-btn[data-cat-next]:hover svg path {
    transform: translateX(-4px);
  }
  .carousel-arrow--next {
    transform: rotate(180deg);
  }
  .site-header {
    position: absolute;
    inset: 0 0 auto;
    z-index: 50;
  }
  .site-header__inner {
    display: flex;
    align-items: flex-start;
    max-width: 100%;
    margin: 0 auto;
  }
  .site-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 117px;
    height: 140px;
    padding: 20px;
    background: var(--color-light-blue);
  }
  .site-logo__img {
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
  }
  @media (min-width: 1024px) {
    .site-logo {
      width: 198px;
      height: 240px;
      padding: 30px;
    }
  }
  .site-header__bar {
    position: relative;
    display: flex;
    align-items: stretch;
    flex: 1;
    min-width: 0;
    height: 48px;
    margin: 16px 16px 0 auto;
    background: transparent;
    justify-content: flex-end;
    gap: 8px;
  }
  @media (min-width: 1024px) {
    .site-header__bar {
      height: 60px;
      margin: 40px 40px 0 45px;
      background: transparent;
      justify-content: flex-start;
      gap: 0;
    }
  }
  .nav-toggle {
    width: 40px;
    height: 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    padding: 0 10px;
    flex-shrink: 0;
    background: var(--color-red);
  }
  .nav-toggle span {
    display: block;
    height: 2px;
    background: var(--color-white);
  }
  .nav-toggle:focus-visible {
    outline: 2px solid var(--color-yellow);
    outline-offset: -4px;
  }
  @media (min-width: 1024px) {
    .nav-toggle {
      display: none;
    }
  }
  .site-nav {
    display: none;
    flex-direction: column;
    gap: 1rem;
    position: absolute;
    top: calc(100% + 8px);
    left: auto;
    right: 0;
    z-index: 51;
    min-width: 220px;
    background: var(--color-red);
    padding: 1.25rem 1.5rem 1.5rem;
  }
  .site-nav.is-open {
    display: flex;
  }
  @media (min-width: 1024px) {
    .site-nav {
      position: static;
      display: flex;
      flex-direction: row;
      align-items: center;
      gap: 2.5rem;
      flex: 1;
      height: 100%;
      min-width: 0;
      background: var(--color-red);
      padding: 0 1.25rem 0 2.5rem;
    }
  }
  .site-nav__links {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .site-nav__links a:focus-visible, .site-nav__franchise:focus-visible, .site-nav__order:focus-visible {
    outline: 2px solid var(--color-yellow);
    outline-offset: 3px;
  }
  @media (min-width: 1024px) {
    .site-nav__links {
      flex-direction: row;
      align-items: center;
      gap: 2.5rem;
      margin-right: auto;
    }
  }
  .site-nav__franchise {
    position: relative;
    white-space: nowrap;
  }
  @media (min-width: 1024px) {
    .site-nav__franchise {
      padding-right: 0.25rem;
      transition: color 0.25s ease;
    }
    .site-nav__franchise::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: -6px;
      height: 7px;
      background: url("../images/nav-franchise-underline.svg") center / contain no-repeat;
      pointer-events: none;
      opacity: 0;
      transition: opacity 0.25s ease;
    }
    .site-nav__franchise.is-current, .site-nav__franchise:hover {
      color: var(--color-yellow);
    }
    .site-nav__franchise.is-current::after, .site-nav__franchise:hover::after {
      opacity: 1;
    }
  }
  .site-nav__order {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 163px;
    height: 48px;
    padding: 16px;
    background: var(--color-yellow);
    color: var(--color-light-blue);
    white-space: nowrap;
    transition: background-color 0.25s ease, color 0.25s ease;
  }
  .site-nav__order:hover {
    background: var(--color-blue);
    color: var(--color-white);
  }
  @media (min-width: 1024px) {
    .site-nav__order {
      width: 207px;
      height: 100%;
      margin-left: auto;
      padding: 0;
    }
  }
  .site-footer {
    position: relative;
    overflow: visible;
  }
  .order-cta {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-red);
    min-height: 0;
    padding: 16px;
    overflow: hidden;
  }
  a.order-cta {
    overflow: hidden;
  }
  .order-cta__marquee {
    width: 100%;
    min-width: 0;
  }
  .order-cta__track {
    display: flex;
    width: max-content;
    transform: translateX(var(--order-cta-x, 0px));
    transition: transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
  }
  .order-cta__title {
    font-family: var(--font-headline);
    font-size: clamp(3.125rem, 11.46vw, 12.375rem);
    font-weight: 400;
    line-height: 1;
    text-transform: uppercase;
    color: var(--color-yellow);
    text-align: center;
    white-space: nowrap;
    flex-shrink: 0;
    padding-inline-start: 0.1em;
    padding-inline-end: 0.1em;
    text-box-trim: trim-both;
    text-box-edge: cap alphabetic;
    overflow: visible;
  }
  .order-cta__title[aria-hidden] {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.45s ease, visibility 0.45s ease;
  }
  @media (max-width: 1023px) {
    .order-cta__title[aria-hidden] {
      position: absolute;
      width: 0;
      height: 0;
      overflow: hidden;
      padding: 0;
      margin: 0;
    }
    .order-cta__track {
      width: 100%;
      justify-content: center;
    }
    .order-cta__title:not([aria-hidden]) {
      flex: 1 1 auto;
      width: 100%;
      max-width: 100%;
      padding-inline: 0;
    }
  }
  @keyframes pq-order-cta-marquee {
    from {
      transform: translateX(var(--order-cta-x, 0px));
    }
    to {
      transform: translateX(calc(var(--order-cta-x, 0px) - var(--order-cta-step, 0px)));
    }
  }
  @media (hover: hover) {
    .order-cta:hover .order-cta__title[aria-hidden], .order-cta:focus-visible .order-cta__title[aria-hidden] {
      opacity: 1;
      visibility: visible;
    }
    .order-cta:hover .order-cta__track, .order-cta:focus-visible .order-cta__track {
      transition: none;
      animation: pq-order-cta-marquee 6s linear infinite;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .order-cta__track {
      transition: none;
    }
    .order-cta:hover .order-cta__track, .order-cta:focus-visible .order-cta__track {
      animation: none;
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .has-image-cursor .order-cta[data-cursor] {
      cursor: none;
    }
  }
  @media (max-width: 1023px), (hover: none), (pointer: coarse) {
    .has-image-cursor .order-cta[data-cursor] {
      cursor: pointer;
    }
    .pq-image-cursor {
      display: none !important;
    }
  }
  .pq-image-cursor {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 12.5rem;
    height: auto;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    translate: calc(var(--cursor-x, 0px) - 50%) calc(var(--cursor-y, 0px) - 50%);
    rotate: var(--cursor-r, 0deg);
    scale: 0.72;
    transform-origin: center center;
    will-change: translate, rotate, opacity;
    filter: drop-shadow(0 10px 18px rgb(0 0 0 / 0.35));
    transition: opacity 0.45s ease, scale 0.5s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0.45s;
  }
  .pq-image-cursor.is-visible {
    opacity: 1;
    visibility: visible;
    scale: 1;
    transition: opacity 0.4s ease, scale 0.5s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s linear 0s;
  }
  @media (prefers-reduced-motion: reduce) {
    .pq-image-cursor, .pq-image-cursor.is-visible {
      scale: 1;
      transition: opacity 0.2s ease, visibility 0.2s linear;
    }
  }
  .order-cta__image {
    display: none;
    position: absolute;
    top: 155px;
    right: 11%;
    z-index: 2;
    width: min(264px, 22vw);
    height: auto;
    transform: rotate(8deg);
    pointer-events: none;
  }
  @media (min-width: 1024px) {
    .order-cta {
      min-height: 0;
      padding: 2.5rem 0;
      overflow: visible;
    }
    .order-cta__title {
      font-size: clamp(4.5rem, 16vw, 18.125rem);
    }
    .order-cta__image {
      display: block;
    }
  }
  .site-footer__info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.5rem;
    padding: 60px 40px 56px;
    background: var(--color-dark-blue);
    text-align: center;
  }
  .site-footer__logo-img {
    width: 138px;
    height: auto;
  }
  .site-footer__col {
    text-align: center;
  }
  .site-footer .footer-label {
    color: var(--color-gray);
    margin: 0 0 1.25rem;
  }
  .site-footer__info p, .site-footer__info a {
    color: var(--color-yellow);
  }
  .site-footer__info a:not(.footer-social) {
    transition: color 0.25s ease;
  }
  .site-footer__info a:not(.footer-social):hover {
    color: var(--color-white);
  }
  .footer-social {
    display: inline-flex;
    width: 28px;
    height: 28px;
    background-color: var(--color-yellow);
    -webkit-mask-image: url("../images/icon-instagram.svg");
    mask-image: url("../images/icon-instagram.svg");
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    transition: background-color 0.25s ease;
  }
  .footer-social:hover {
    background-color: var(--color-blue);
  }
  .footer-social img {
    width: 28px;
    height: 28px;
    opacity: 0;
  }
  @media (min-width: 1024px) {
    .site-footer__info {
      flex-direction: row;
      justify-content: space-between;
      align-items: center;
      min-height: 300px;
      padding: 60px 165px 60px 147px;
    }
  }
  .footer-label {
    color: var(--color-yellow);
    margin: 0 0 0.75rem;
  }
  .site-footer__legal {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.25rem;
    padding: 28px 33px 28px;
    background: var(--color-light-blue);
    color: var(--color-gray);
  }
  .site-footer__legal .menu {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 100%;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .site-footer__credit {
    margin: 0;
  }
  .site-footer__credit a {
    color: var(--color-white);
    text-decoration: none;
    transition: color 0.25s ease;
  }
  .site-footer__credit a:hover {
    color: var(--color-white);
    text-decoration: none;
  }
  .site-footer__legal a {
    transition: color 0.25s ease;
  }
  .site-footer__legal .menu a:hover {
    color: var(--color-white);
  }
  @media (max-width: 1023px) {
    .site-footer__credit {
      text-align: center;
    }
    .site-footer__credit a {
      display: block;
    }
  }
  @media (min-width: 1024px) {
    .site-footer__legal {
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      min-height: 67px;
      padding: 0 40px;
    }
    .site-footer__legal .menu {
      width: auto;
      flex-wrap: wrap;
      gap: 1.5rem;
      justify-content: flex-start;
    }
  }
  .block-hero {
    position: relative;
    height: 100svh;
    height: 100dvh;
    background: var(--color-dark-blue);
    overflow: hidden;
    perspective: 1400px;
  }
  .block-hero__illustration {
    position: absolute;
    left: 50%;
    top: 52%;
    transform: translate(-50%, -50%);
    width: min(56vw, 964px);
    height: auto;
    max-height: 130%;
    object-fit: contain;
    pointer-events: none;
    z-index: 0;
  }
  .block-hero__stage {
    position: absolute;
    left: 50%;
    top: 54%;
    transform: translate(-50%, -50%);
    width: min(1300px, calc(100vw - 48px));
    height: auto;
    aspect-ratio: 1300 / 450;
    z-index: 1;
  }
  .block-hero__titles {
    position: absolute;
    inset: 0;
    margin: 0;
    text-align: center;
  }
  .block-hero__line1, .block-hero__of, .block-hero__line2 {
    text-shadow: 3px 19px 42px rgba(0, 0, 0, 0.25), 13px 74px 75px rgba(0, 0, 0, 0.21), 29px 167px 101px rgba(0, 0, 0, 0.13);
  }
  .block-hero__line1 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    color: var(--color-gray);
  }
  .block-hero__of {
    position: absolute;
    left: 20.54%;
    top: 35.11%;
    color: var(--color-blue);
    z-index: 1;
  }
  .block-hero__line2 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: var(--color-yellow);
  }
  .block-hero__place {
    position: absolute;
    left: 40%;
    top: 17.11%;
    width: 43.85%;
    height: 62.22%;
    z-index: 2;
    isolation: isolate;
    pointer-events: none;
    transform-origin: 71.93% 17.86%;
    animation: hero-place-in 0.92s cubic-bezier(0.22, 1.18, 0.36, 1) both;
  }
  .block-hero__sandwich {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    rotate: 5deg;
    z-index: 2;
    filter: drop-shadow(2px 9px 21px rgba(0, 0, 0, 0.25)) drop-shadow(7px 39px 39px rgba(0, 0, 0, 0.21));
  }
  .block-hero__hand {
    position: absolute;
    left: 34.04%;
    top: -132.14%;
    width: 128.07%;
    height: auto;
    max-height: none;
    object-fit: contain;
    rotate: 2deg;
    transform-origin: 92.05% 6%;
    -webkit-mask-image: linear-gradient(225deg, transparent 14%, #000 33%);
    mask-image: linear-gradient(225deg, transparent 14%, #000 33%);
    animation: hero-hand-retract 0.62s cubic-bezier(0.4, 0, 0.2, 1) 0.85s both;
    animation-delay: 1s;
  }
  .block-hero__hand--back {
    z-index: 1;
    filter: drop-shadow(4px 12px 18px rgba(0, 0, 0, 0.28));
  }
  .block-hero__hand--front {
    z-index: 3;
    filter: none;
  }
  @keyframes hero-place-in {
    0% {
      translate: 42vw -38vh;
      rotate: -28deg;
    }
    72% {
      translate: -6px 10px;
      rotate: 6deg;
    }
    86% {
      translate: 0 8px;
      rotate: 4.5deg;
    }
    100% {
      translate: 0 0;
      rotate: 0deg;
    }
  }
  @keyframes hero-hand-retract {
    0% {
      translate: 0 0;
      rotate: 0deg;
      opacity: 1;
    }
    55% {
      opacity: 1;
    }
    100% {
      translate: 28% -46%;
      rotate: 18deg;
      opacity: 0;
    }
  }
  @keyframes hero-hoverboard-float {
    0%, 100% {
      translate: 0 8px;
    }
    26% {
      translate: 8px -10px;
    }
    52% {
      translate: -4px 3px;
    }
    78% {
      translate: -6px -14px;
    }
  }
  @keyframes hero-hoverboard-bank {
    0%, 100% {
      rotate: 3.4deg;
      transform: rotateX(1.8deg) rotateY(-1.1deg);
    }
    21% {
      rotate: 6.6deg;
      transform: rotateX(-1deg) rotateY(1.6deg);
    }
    47% {
      rotate: 7.1deg;
      transform: rotateX(2.2deg) rotateY(0.5deg);
    }
    73% {
      rotate: 4deg;
      transform: rotateX(-1.2deg) rotateY(-1.5deg);
    }
  }
  @keyframes contact-bat-bank {
    0%, 100% {
      rotate: 12deg;
      transform: rotateX(1.8deg) rotateY(-1.1deg);
    }
    21% {
      rotate: 15.2deg;
      transform: rotateX(-1deg) rotateY(1.6deg);
    }
    47% {
      rotate: 15.7deg;
      transform: rotateX(2.2deg) rotateY(0.5deg);
    }
    73% {
      rotate: 13.6deg;
      transform: rotateX(-1.2deg) rotateY(-1.5deg);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .block-hero__place {
      animation: none;
      translate: 0;
      rotate: 0deg;
    }
    .block-hero__hand {
      animation: none;
      opacity: 0;
    }
  }
  @media (max-width: 1023px) {
    .block-hero {
      min-height: 670px;
      height: auto;
      padding: 233px 12px 93px;
      box-sizing: border-box;
    }
    .block-hero__illustration {
      width: 546px;
      max-width: calc(100vw - 24px);
      top: 348px;
      max-height: none;
    }
    .block-hero__stage {
      position: relative;
      left: auto;
      top: auto;
      transform: none;
      display: grid;
      grid-template-columns: 1fr auto auto 1fr;
      grid-template-rows: auto auto auto;
      column-gap: 4px;
      row-gap: 0;
      width: 100%;
      max-width: none;
      height: auto;
      margin-inline: auto;
      overflow-x: clip;
    }
    .block-hero__titles {
      display: contents;
      margin: 0;
    }
    .block-hero__line1, .block-hero__of, .block-hero__line2 {
      position: static;
      display: block;
      width: auto;
      line-height: 0.85;
      text-shadow: 3px 19px 42px rgba(0, 0, 0, 0.25), 13px 74px 75px rgba(0, 0, 0, 0.21), 29px 167px 101px rgba(0, 0, 0, 0.13);
    }
    .block-hero__line1 {
      grid-column: 1 / -1;
      grid-row: 1;
      width: 100%;
      margin-bottom: -0.12em;
      text-align: center;
      color: var(--color-gray);
    }
    .block-hero__of {
      grid-column: 2;
      grid-row: 2;
      align-self: center;
      justify-self: end;
      z-index: 3;
      line-height: 0.9;
      color: var(--color-blue);
      text-align: right;
    }
    .block-hero__line2 {
      grid-column: 1 / -1;
      grid-row: 3;
      width: 100%;
      margin-top: -0.18em;
      text-align: center;
      color: var(--color-yellow);
    }
    .block-hero__place {
      position: relative;
      grid-column: 3;
      grid-row: 2;
      align-self: center;
      justify-self: start;
      left: auto;
      right: auto;
      top: auto;
      width: 234px;
      height: 115px;
      margin: -6px 0;
      transform-origin: 169px 21px;
    }
    .block-hero__hand {
      left: 80px;
      top: -152px;
      width: 300px;
      transform-origin: 276px 7px;
    }
  }
  @media (min-width: 768px) and (max-width: 1023px) {
    .block-hero {
      min-height: 720px;
      padding: 200px 40px 56px;
    }
    .block-hero__illustration {
      width: 720px;
      max-width: calc(100vw - 80px);
      top: 380px;
    }
    .block-hero__stage {
      max-width: none;
      grid-template-columns: 1fr auto auto 1fr;
      column-gap: 8px;
      row-gap: 0;
    }
    .block-hero__of {
      grid-column: 2;
    }
    .block-hero__place {
      grid-column: 3;
      width: 360px;
      height: 177px;
      margin: -8px 0;
      transform-origin: 260px 32px;
    }
    .block-hero__hand {
      left: 123px;
      top: -234px;
      width: 462px;
      transform-origin: 425px 11px;
    }
  }
  .block-hero-2 {
    height: 260px;
    overflow: hidden;
    background: var(--color-red);
  }
  .block-hero-2__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
  @media (min-width: 1024px) {
    .block-hero-2 {
      height: 800px;
    }
  }
  .block-product {
    min-height: 0;
  }
  .block-product__track, .block-product__pin {
    position: relative;
  }
  .block-product__category {
    display: grid;
    min-height: 0;
  }
  @media (max-width: 899px) {
    .block-product__category {
      min-height: 848px;
      grid-template-rows: 324px 560px;
    }
  }
  @media (min-width: 900px) {
    .block-product {
      --pq-pin-h: 100vh;
      --pq-pin-h: 100dvh;
      min-height: 0;
    }
    .admin-bar .block-product {
      --pq-pin-h: calc(100vh - 32px);
      --pq-pin-h: calc(100dvh - 32px);
    }
    .block-product__track {
      height: calc(var(--pq-cat-count, 1) * var(--pq-pin-h));
    }
    .block-product__pin {
      position: sticky;
      top: 0;
      height: var(--pq-pin-h);
      overflow: clip;
    }
    .admin-bar .block-product__pin {
      top: 32px;
    }
    .block-product__category {
      position: absolute;
      inset: 0;
      min-height: 0;
      height: 100%;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      scroll-snap-align: none;
      opacity: var(--pq-cat-opacity, 0);
      transform: translateY(var(--pq-cat-shift, 12px));
      pointer-events: none;
      z-index: 0;
      transition: opacity 0.45s ease, transform 0.45s ease;
    }
    .block-product__category:first-child {
      --pq-cat-opacity: 1;
      --pq-cat-shift: 0px;
    }
    .block-product__category.is-interactive {
      pointer-events: auto;
      z-index: 1;
    }
    @media (prefers-reduced-motion: reduce) {
      .block-product__category {
        --pq-cat-shift: 0px;
        transition: none;
      }
    }
  }
  .block-product.is-flip .block-product__brand {
    order: 2;
  }
  .block-product__cat-nav {
    display: none;
  }
  @media (min-width: 900px) {
    .block-product__cat-nav {
      position: absolute;
      z-index: 5;
      left: 0;
      right: 50%;
      bottom: 1.5rem;
      display: flex;
      justify-content: center;
      gap: 1rem;
      pointer-events: none;
    }
    .block-product.is-flip .block-product__cat-nav {
      left: 50%;
      right: 0;
    }
  }
  .block-product__cat-nav .carousel-btn {
    pointer-events: auto;
  }
  .block-product__brand {
    position: relative;
    overflow: hidden;
    min-width: 0;
    min-height: 324px;
    display: grid;
    place-items: center;
    padding: 3rem 1.5rem;
    background: var(--color-red);
  }
  @media (min-width: 900px) {
    .block-product__brand {
      height: 100%;
      min-height: 0;
    }
  }
  .block-product__brand[data-color="dark-red"] {
    background: var(--color-dark-red);
  }
  .block-product__brand[data-color="dark-blue"] {
    background: var(--color-light-blue);
  }
  .block-product__pattern {
    position: absolute;
    inset: 0 -20%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
    height: 100%;
    padding-block: 0.75rem;
    pointer-events: none;
    color: var(--color-dark-red);
    opacity: 0.5;
    font-size: var(--text-headline-large);
    line-height: 0.9;
    text-transform: uppercase;
    text-align: center;
  }
  .block-product__brand[data-color="dark-red"] .block-product__pattern {
    color: var(--color-red);
  }
  .block-product__brand[data-color="dark-blue"] .block-product__pattern {
    z-index: 1;
    color: var(--color-dark-blue);
    opacity: 1;
  }
  .block-product__pattern-row {
    display: block;
    flex: 0 0 auto;
    overflow: hidden;
    white-space: nowrap;
  }
  .block-product__pattern-track {
    display: inline-block;
    will-change: transform;
    font-family: var(--font-headline);
    animation: pq-marquee-left 100s linear infinite;
  }
  .block-product__pattern-row:nth-child(even) .block-product__pattern-track {
    font-family: var(--font-display);
    animation-name: pq-marquee-right;
    animation-duration: 100s;
  }
  .block-product__pattern-row:nth-child(3n) .block-product__pattern-track {
    animation-duration: 106s;
  }
  .block-product__category:not(.is-interactive) .block-product__pattern-track {
    animation-play-state: paused;
  }
  @keyframes pq-marquee-left {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-50%);
    }
  }
  @keyframes pq-marquee-right {
    from {
      transform: translateX(-50%);
    }
    to {
      transform: translateX(0);
    }
  }
  .block-product__title {
    position: relative;
    z-index: 1;
    text-align: center;
    white-space: pre-line;
    margin: 0;
    color: var(--color-white);
  }
  .block-product__slider {
    position: relative;
    min-width: 0;
    overflow: hidden;
    --pq-surface: var(--color-dark-red);
    background: var(--pq-surface);
    display: flex;
    flex-direction: column;
    min-height: 524px;
  }
  .block-product__slider[data-color="dark-blue"] {
    --pq-surface: var(--color-dark-blue);
  }
  @media (max-width: 899px) {
    .block-product__slider, .block-product__category, .block-product__slider [data-product-swiper], .block-product__slider [data-product-swiper] > .swiper-wrapper, .block-product__slider [data-product-swiper] > .swiper-wrapper > .swiper-slide {
      overflow: visible;
    }
    .block-product__slide {
      grid-template-rows: auto auto;
      padding-inline: 3rem;
    }
    .block-product__visual {
      min-height: auto;
      overflow: visible;
    }
    .block-product__visual-thumb {
      --pq-product-shadow-pad: 3rem;
      box-sizing: border-box;
      padding: var(--pq-product-shadow-pad);
      padding-bottom: 2.5rem;
      transform: translate3d(0, 0, 0);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      -webkit-backdrop-filter: blur(0);
      backdrop-filter: blur(0);
      isolation: isolate;
      filter: drop-shadow(2px 10px 23px rgba(0, 0, 0, 0.25)) drop-shadow(7px 42px 42px rgba(0, 0, 0, 0.18));
    }
    .block-product__image {
      transform: translate3d(0, 0, 0);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      filter: none;
    }
    .block-product__slider [data-product-swiper] {
      transform: translate3d(0, 0, 0);
      -webkit-backdrop-filter: blur(0);
      backdrop-filter: blur(0);
    }
  }
  @media (min-width: 900px) {
    .block-product__slider {
      height: 100%;
      min-height: 0;
    }
  }
  .block-product__slider [data-product-swiper], .block-product__slider [data-product-swiper] > .swiper-wrapper, .block-product__slider [data-product-swiper] > .swiper-wrapper > .swiper-slide {
    height: 100%;
  }
  .block-product__slider [data-product-swiper] {
    position: relative;
    width: 100%;
    flex: 1;
    min-height: 0;
  }
  .block-product__slide {
    text-align: center;
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) auto;
    height: 100%;
    min-height: 560px;
    padding: 73px 16px 16px;
    box-sizing: border-box;
    overflow: visible;
  }
  @media (min-width: 900px) {
    .block-product__slide {
      min-height: 0;
      padding: 3rem 5rem 40px;
    }
  }
  .block-product__visual {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-height: 0;
    padding-bottom: 4.5rem;
  }
  .block-product__slide:has(.block-product__meta) .block-product__visual {
    padding-bottom: 72px;
  }
  .block-product__visual-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    min-height: 130px;
    margin-bottom: 0.25rem;
    overflow: visible;
    padding-bottom: 40px;
  }
  .block-product__image {
    margin: 0 auto;
    max-height: 130px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    overflow: visible;
    filter: drop-shadow(2px 10px 23px rgba(0, 0, 0, 0.25)) drop-shadow(7px 42px 42px rgba(0, 0, 0, 0.18));
  }
  @media (min-width: 900px) {
    .block-product__image {
      max-height: min(32vh, 18rem);
    }
    .block-product__visual-thumb {
      height: auto;
      max-height: none;
      min-height: 0;
      margin-bottom: 0;
      padding-bottom: 40px;
    }
    .block-product__visual {
      justify-content: center;
      padding-bottom: 72px;
      overflow: visible;
    }
    .block-product__slide:has(.block-product__meta) .block-product__visual {
      padding-bottom: 72px;
    }
  }
  @media (min-width: 900px) and (max-height: 800px) {
    .block-product__slide {
      padding-top: 2rem;
      padding-bottom: 40px;
    }
    .block-product__visual {
      padding-bottom: 72px;
    }
    .block-product__slide:has(.block-product__meta) .block-product__visual {
      padding-bottom: 72px;
    }
    .block-product__image, .block-product__visual-thumb {
      max-height: min(28vh, 14rem);
    }
  }
  .block-product__name {
    color: var(--color-yellow);
    margin: 0 0 32px;
  }
  .block-product__desc {
    margin: 0;
    color: var(--color-white);
  }
  .block-product__meta {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    position: relative;
    z-index: 1;
    padding: 0 0 0.25rem;
  }
  .block-product__sizes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    flex: 0 1 auto;
    max-width: 210px;
  }
  .block-product__sizes-label, .block-product__allergies-label {
    flex: 0 0 100%;
    width: 100%;
    margin: 0 0 0.25rem;
  }
  .block-product__sizes-label {
    text-align: left;
  }
  .block-product__allergies-label {
    text-align: right;
  }
  .block-product__allergens {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
    justify-content: flex-end;
    flex: 0 0 auto;
    max-width: 120px;
    overflow: visible;
  }
  .block-product__allergen {
    position: relative;
    display: inline-flex;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
    z-index: 0;
  }
  .block-product__allergen-mark {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid currentColor;
    color: var(--color-white);
    background: transparent;
    box-sizing: border-box;
    overflow: hidden;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  }
  .block-product__allergen-mark svg {
    display: block;
    width: 100%;
    height: 100%;
  }
  .block-product__allergen-tip {
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    z-index: 4;
    padding: 0.35rem 0.7rem;
    background: var(--pq-surface);
    color: var(--color-white);
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    border: 1px solid var(--color-white);
    border-radius: 9999px;
    translate: -50% 0.35rem;
    transition: opacity 0.2s ease, translate 0.2s ease, visibility 0s linear 0.2s;
  }
  .block-product__allergen-tip-arrow {
    position: absolute;
    top: calc(100% + 1px);
    left: 50%;
    display: block;
    width: 6px;
    height: 8px;
    translate: -50% 0;
    color: var(--color-white);
  }
  .block-product__allergen:hover, .block-product__allergen:focus-visible {
    z-index: 2;
    outline: none;
  }
  .block-product__allergen:hover .block-product__allergen-mark, .block-product__allergen:focus-visible .block-product__allergen-mark {
    background: var(--color-white);
    border-color: var(--color-white);
    color: var(--pq-surface);
  }
  .block-product__allergen:hover .block-product__allergen-tip, .block-product__allergen:focus-visible .block-product__allergen-tip {
    opacity: 1;
    visibility: visible;
    translate: -50% 0;
    transition: opacity 0.2s ease, translate 0.2s ease, visibility 0s linear 0s;
  }
  .block-product__allergen:last-child .block-product__allergen-tip {
    left: auto;
    right: -2px;
    translate: 0 0.35rem;
  }
  .block-product__allergen:last-child .block-product__allergen-tip-arrow {
    left: auto;
    right: 13px;
    translate: 0;
  }
  .block-product__allergen:last-child:hover .block-product__allergen-tip, .block-product__allergen:last-child:focus-visible .block-product__allergen-tip {
    translate: 0;
  }
  @media (prefers-reduced-motion: reduce) {
    .block-product__allergen-tip, .block-product__allergen:hover .block-product__allergen-tip, .block-product__allergen:focus-visible .block-product__allergen-tip {
      translate: -50% 0;
      transition: opacity 0.15s ease, visibility 0.15s linear;
    }
    .block-product__allergen:last-child .block-product__allergen-tip, .block-product__allergen:last-child:hover .block-product__allergen-tip, .block-product__allergen:last-child:focus-visible .block-product__allergen-tip {
      translate: 0;
    }
  }
  .block-product__sizes .size-pill {
    border-radius: 9999px;
    padding: 8px 10px;
  }
  .block-product__controls {
    pointer-events: none;
  }
  .block-product__controls .carousel-btn {
    display: none;
    position: absolute;
    top: 50%;
    z-index: 3;
    pointer-events: auto;
    transform: translateY(-50%);
  }
  @media (min-width: 900px) {
    .block-product__controls .carousel-btn {
      display: flex;
    }
  }
  .block-product__controls .swiper-button-prev-custom {
    left: 1.25rem;
  }
  .block-product__controls .swiper-button-next-custom {
    right: 1.25rem;
  }
  @media (min-width: 900px) {
    .block-product__controls .swiper-button-prev-custom {
      left: 2.5rem;
    }
    .block-product__controls .swiper-button-next-custom {
      right: 2.5rem;
    }
  }
  .block-product__controls .swiper-pagination.swiper-pagination-horizontal {
    position: absolute;
    left: 50%;
    bottom: var(--pq-pager-bottom, 16px);
    width: auto;
    transform: translateX(-50%);
    z-index: 3;
    pointer-events: auto;
  }
  @media (min-width: 900px) {
    .block-product__controls .swiper-pagination.swiper-pagination-horizontal {
      bottom: var(--pq-pager-bottom, 40px);
    }
    .block-product__sizes {
      max-width: none;
    }
    .block-product__allergens {
      max-width: none;
      justify-content: flex-end;
    }
    .block-product__meta {
      align-items: flex-start;
      flex-wrap: nowrap;
      flex-shrink: 0;
    }
  }
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    width: auto;
    min-height: 19px;
    padding: 7px 8px;
    overflow: visible;
    --swiper-pagination-bullet-size: 5px;
    --swiper-pagination-bullet-horizontal-margin: 8px;
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 0.2;
    --swiper-pagination-color: #fff;
  }
  .swiper-pagination-bullet {
    opacity: var(--swiper-pagination-bullet-inactive-opacity);
    background: var(--swiper-pagination-bullet-inactive-color);
    margin: 0 8px !important;
  }
  .swiper-pagination-bullet-active {
    opacity: 1;
    background: #fff;
    outline: 1px solid #fff;
    outline-offset: 6.5px;
  }
  .block-sides {
    position: relative;
    background: var(--color-dark-blue);
    padding: 60px 16px 48px;
    min-height: 572px;
    box-sizing: border-box;
  }
  .block-sides__title {
    text-align: center;
    margin: 0 0 60px;
  }
  .block-sides__stage {
    position: relative;
  }
  .block-sides .swiper {
    position: relative;
    overflow: hidden;
    padding: 0;
  }
  .block-sides .swiper-wrapper {
    align-items: stretch;
  }
  .block-sides__item {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    text-align: center;
    height: auto;
  }
  .block-sides__image {
    display: block;
    width: 140px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    object-position: bottom center;
    margin: 0 auto 1.25rem;
    filter: drop-shadow(2px 4px 9px rgba(0, 0, 0, 0.29)) drop-shadow(8px 15px 17px rgba(0, 0, 0, 0.26)) drop-shadow(19px 33px 23px rgba(0, 0, 0, 0.15));
  }
  .block-sides__image--empty {
    width: 160px;
    background: rgba(255, 255, 255, 0.06);
    filter: none;
  }
  .block-sides__label {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-yellow);
    max-width: 11ch;
    min-height: 2em;
    margin: 0;
    text-align: center;
  }
  .block-sides .swiper-button-prev-custom, .block-sides .swiper-button-next-custom {
    display: none;
    position: absolute;
    top: calc(140px / 2);
    transform: translateY(-50%);
    z-index: 2;
  }
  .block-sides .swiper-button-prev-custom {
    left: 0;
  }
  .block-sides .swiper-button-next-custom {
    right: 0;
  }
  .block-sides > .swiper-pagination.swiper-pagination-horizontal {
    position: absolute;
    left: 50%;
    bottom: 40px;
    width: auto;
    transform: translateX(-50%);
    margin: 0;
    z-index: 2;
  }
  @media (min-width: 640px) {
    .block-sides {
      padding: 5rem 2.5rem 2.5rem;
      min-height: 0;
    }
    .block-sides__title {
      margin-bottom: 4rem;
    }
    .block-sides__stage {
      padding-left: 72px;
      padding-right: 72px;
    }
    .block-sides__image {
      width: auto;
      height: 260px;
      max-height: 280px;
    }
    .block-sides .swiper-button-prev-custom, .block-sides .swiper-button-next-custom {
      display: flex;
      top: calc(260px / 2);
    }
  }
  @media (min-width: 1024px) {
    .block-sides {
      min-height: 854px;
      padding: 6.25rem 2.5rem 2.5rem;
    }
    .block-sides__title {
      margin-bottom: 5rem;
    }
    .block-sides__image {
      height: 280px;
    }
    .block-sides .swiper-button-prev-custom, .block-sides .swiper-button-next-custom {
      top: calc(280px / 2);
    }
  }
  @media (max-width: 639px) {
    .block-sides {
      padding: 40px 16px 68px;
    }
    .block-sides .swiper {
      padding: 0;
    }
    .block-sides > .swiper-pagination.swiper-pagination-horizontal {
      bottom: 60px !important;
    }
  }
  .block-location {
    --location-smear: url("../images/location-smear.svg");
    background: var(--color-gray);
    color: var(--color-light-blue);
    padding: 2.5rem 1.25rem 5rem;
    position: relative;
    overflow: hidden;
  }
  .block-location__stage {
    position: relative;
    width: 100%;
    max-width: 1728px;
    margin-inline: auto;
  }
  .block-location__collage {
    position: relative;
    height: 380px;
    max-width: 390px;
    margin: 0 auto 1.25rem;
  }
  .block-location__collage img {
    position: absolute;
    object-fit: contain;
    max-width: none;
  }
  .block-location__main-img, .block-location__secondary-img {
    position: static;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    max-width: none;
  }
  .block-location__main, .block-location__secondary {
    position: absolute;
    overflow: hidden;
    will-change: transform;
    backface-visibility: hidden;
  }
  .block-location__main {
    width: 260px;
    max-width: 67%;
    height: 380px;
    left: 0;
    top: 0;
    z-index: 2;
    object-fit: contain;
  }
  .block-location__secondary {
    width: 168px;
    max-width: 43%;
    height: 240px;
    right: 0;
    left: auto;
    top: 84px;
    z-index: 3;
    object-fit: cover;
  }
  @media (prefers-reduced-motion: reduce) {
    .block-location__main, .block-location__secondary {
      will-change: auto;
      transform: none;
    }
  }
  @media (max-width: 1023px) {
    .swiper-pagination-bullet-active {
      outline-offset: 4px;
    }
    .swiper-pagination-bullet {
      margin: 0 6px !important;
    }
    .block-location {
      padding: 60px 16px 120px;
    }
    .block-location__main, .block-location__secondary {
      aspect-ratio: auto;
      max-width: none;
    }
    .block-location__food1, .block-location__food2, .block-location__bats {
      display: none;
    }
  }
  .block-location__food1 {
    width: 28%;
    left: 0;
    top: 6%;
    z-index: 4;
    filter: drop-shadow(2px 4px 10px rgba(0, 0, 0, 0.29)) drop-shadow(9px 16px 19px rgba(0, 0, 0, 0.26)) drop-shadow(21px 37px 25px rgba(0, 0, 0, 0.15));
  }
  .block-location__food2 {
    width: 22%;
    right: 4%;
    left: auto;
    top: 8%;
    z-index: 4;
  }
  .block-location__bats {
    height: 530px;
    left: 0%;
    top: 25%;
    z-index: 1;
    animation: hero-hoverboard-float 5.4s ease-in-out infinite, hero-hoverboard-bank 8.2s ease-in-out infinite;
    &.bat-1 {
      rotate: 90deg !important;
      z-index: 3;
    }
    &.bat-2 {
      left: auto;
      right: 5%;
      top: 6%;
      animation-delay: 0.8s;
    }
  }
  .block-location__titles {
    position: relative;
    z-index: 2;
    margin: 0;
    text-align: center;
  }
  .block-location__line1, .block-location__line2 {
    display: block;
  }
  .block-location__line1 {
    color: var(--color-light-blue);
  }
  .block-location__line2 {
    color: var(--color-yellow);
    margin-top: 0.15em;
  }
  .block-location__squiggle {
    display: block;
    width: min(70%, 443px);
    height: auto;
    margin: -1.2rem auto 1.25rem;
    position: relative;
    z-index: 3;
    pointer-events: none;
  }
  .block-location__copy {
    position: relative;
    z-index: 4;
    max-width: 500px;
    margin: 0 auto 2rem;
    text-align: center;
  }
  .block-location__content {
    position: relative;
    margin: 0 auto 1.5rem;
    text-align: center;
  }
  .block-location__cta-wrap {
    position: relative;
    display: flex;
    justify-content: center;
  }
  .block-location__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 127px;
    min-height: 0;
    height: 52px;
    padding: 0 0.75rem;
    background-color: var(--color-red);
    color: var(--color-white);
    text-align: center;
    -webkit-mask-image: var(--location-smear);
    mask-image: var(--location-smear);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    transition: background-color 0.25s ease, color 0.25s ease;
  }
  .block-location__cta:hover {
    background-color: var(--color-blue);
    color: var(--color-white);
  }
  .block-location__cta:focus-visible {
    outline: 2px solid var(--color-light-blue);
    outline-offset: 4px;
  }
  .block-location__landmarks {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem 1.25rem;
    position: relative;
    z-index: 3;
  }
  .landmark-card {
    position: relative;
    width: min(280px, 100%);
    margin: 0;
    transform: rotate(-5.55deg);
  }
  .landmark-card:nth-child(2) {
    transform: rotate(12.92deg);
  }
  .landmark-card:nth-child(3) {
    transform: rotate(-3deg);
  }
  .landmark-card__image, .landmark-card__placeholder {
    width: 100%;
    height: auto;
    aspect-ratio: 336 / 224;
    object-fit: cover;
    display: block;
  }
  .landmark-card__placeholder {
    background: #c5d3dc;
  }
  .landmark-card__label {
    position: absolute;
    left: 50%;
    bottom: 0.75rem;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 7.5rem;
    min-height: 44px;
    padding: calc(0.65rem + 5px) 1.1rem 0.85rem;
    background-color: var(--color-white);
    color: var(--color-light-blue);
    text-align: center;
    white-space: nowrap;
    -webkit-mask-image: var(--location-smear);
    mask-image: var(--location-smear);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
  @media (max-width: 1023px) {
    .block-location__landmarks {
      display: block;
      position: relative;
      height: 640px;
      max-width: 364px;
      margin: 0 auto;
      overflow: visible;
    }
    .landmark-card {
      position: absolute;
      width: auto;
      margin: 0;
    }
    .landmark-card:nth-child(1) {
      left: 0;
      top: 0;
      width: min(295px, 86%);
      transform: rotate(-5deg);
      z-index: 3;
    }
    .landmark-card:nth-child(2) {
      left: 15%;
      top: 182px;
      width: min(308px, 90%);
      transform: rotate(10deg);
      z-index: 2;
    }
    .landmark-card:nth-child(3) {
      left: 4%;
      top: 375px;
      width: min(289px, 84%);
      transform: rotate(-3deg);
      z-index: 1;
    }
    .landmark-card__label {
      bottom: -1.25rem;
    }
    .landmark-card:nth-child(1) .landmark-card__label {
      left: -1.5rem;
      transform: none;
    }
    .landmark-card:nth-child(2) .landmark-card__label {
      left: auto;
      right: -1.5rem;
      transform: none;
    }
    .landmark-card:nth-child(3) .landmark-card__label {
      left: 50%;
      right: auto;
      transform: translateX(-50%);
    }
  }
  @media (min-width: 1024px) {
    .block-location {
      padding: 0;
    }
    .block-location__stage {
      aspect-ratio: 1728 / 2103;
    }
    .block-location__collage {
      position: absolute;
      inset: 0;
      height: auto;
      max-width: none;
      margin: 0;
    }
    .block-location__main {
      width: 28.94%;
      height: 34.47%;
      left: 28.01%;
      top: 7.8%;
      object-fit: contain;
    }
    .block-location__secondary {
      width: 18.52%;
      height: 21.87%;
      left: 53.47%;
      right: auto;
      top: 15.45%;
      object-fit: cover;
    }
    .block-location__food1 {
      width: 12.85%;
      left: 3.76%;
      top: 9.32%;
    }
    .block-location__food2 {
      width: 10%;
      right: 10%;
      left: auto;
      top: 41%;
    }
    .block-location__bats {
      left: 7%;
      top: 22%;
    }
    .block-location__titles {
      position: absolute;
      left: 0;
      right: 0;
      top: 48.07%;
      margin: 0;
    }
    .block-location__squiggle {
      position: absolute;
      left: 41.03%;
      top: 65.15%;
      width: 25.64%;
      margin: 0;
    }
    .block-location__copy {
      position: absolute;
      left: 50%;
      top: 69.52%;
      width: min(500px, 28.94%);
      max-width: none;
      margin: 0;
      transform: translateX(-50%);
    }
    .block-location__content {
      margin: 0 0 1.5rem;
    }
    .block-location__cta-wrap {
      margin: 0;
    }
    .block-location__cta {
      width: 159px;
      height: 66px;
    }
    .block-location__landmarks {
      position: absolute;
      inset: 0;
      display: block;
      gap: 0;
      pointer-events: none;
    }
    .landmark-card {
      position: absolute;
      pointer-events: auto;
      width: 19.44%;
    }
    .landmark-card:nth-child(1) {
      left: 6.54%;
      top: 65.45%;
      width: 19.44%;
    }
    .landmark-card:nth-child(2) {
      left: 76.99%;
      top: 62.48%;
      width: 19.1%;
    }
    .landmark-card:nth-child(3) {
      left: 40.05%;
      top: 84.9%;
      width: 19.21%;
    }
    .landmark-card__label {
      bottom: -1.25rem;
    }
    .landmark-card:nth-child(1) .landmark-card__label {
      left: -1.5rem;
      transform: none;
    }
    .landmark-card:nth-child(2) .landmark-card__label {
      left: auto;
      right: -1.5rem;
      transform: none;
    }
    .landmark-card:nth-child(3) .landmark-card__label {
      left: 50%;
      right: auto;
      transform: translateX(-50%);
    }
  }
  .block-order-cta {
    position: relative;
    overflow: visible;
  }
  .block-franchise-hero {
    --franchise-cta-smear: url("../images/franchise-cta-smear.svg");
    position: relative;
    z-index: 2;
    overflow: visible;
    background: var(--color-dark-blue);
  }
  .block-franchise-hero__stage {
    position: relative;
    width: 100%;
    max-width: 1728px;
    min-height: 590px;
    margin-inline: auto;
    overflow: visible;
  }
  .block-franchise-hero__copy {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 233px 1rem 1.25rem;
  }
  .block-franchise-hero__title {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    color: var(--color-yellow);
  }
  .block-franchise-hero__line1, .block-franchise-hero__line2 {
    white-space: nowrap;
  }
  @media (max-width: 1023px) {
    .block-franchise-hero {
      overflow-x: clip;
    }
    .block-franchise-hero__title {
      display: block;
      width: 100%;
      max-width: 100%;
      text-align: center;
    }
    .block-franchise-hero__line1, .block-franchise-hero__line2 {
      display: inline;
      white-space: normal;
    }
  }
  .block-franchise-hero__line1 {
    color: var(--color-gray);
  }
  .block-franchise-hero__line2 {
    color: var(--color-yellow);
  }
  .block-franchise-hero__intro {
    max-width: 358px;
    margin: 1.5rem 0 0;
  }
  .block-franchise-hero__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 247px;
    max-width: 100%;
    height: 52px;
    margin-top: 1.75rem;
    padding: 0 1.25rem;
    background-color: var(--color-red);
    color: var(--color-white);
    -webkit-mask-image: var(--franchise-cta-smear);
    mask-image: var(--franchise-cta-smear);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    transition: filter 0.2s ease;
  }
  .block-franchise-hero__cta:hover {
    background-color: var(--color-blue);
    color: var(--color-white);
    transition: background-color 0.25s ease, color 0.25s ease;
  }
  .block-franchise-hero__cta:focus-visible {
    outline: 2px solid var(--color-yellow);
    outline-offset: 4px;
  }
  .block-franchise-hero__images {
    position: static;
    height: 0;
    margin: 0;
  }
  .block-franchise-hero__img {
    position: absolute;
    z-index: 1;
    overflow: hidden;
  }
  .block-franchise-hero__img img {
    width: 104%;
    height: 104%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    margin: -2%;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }
  .block-franchise-hero__img--4 img {
    object-fit: contain;
  }
  .block-franchise-hero__img--1 {
    left: calc(159 / 390 * 100%);
    top: 80px;
    width: calc(135 / 390 * 100%);
    max-width: 180px;
    aspect-ratio: 135 / 180;
  }
  .block-franchise-hero__img--2 {
    left: calc(275.5 / 390 * 100%);
    right: auto;
    top: 379px;
    width: calc(135 / 390 * 100%);
    max-width: 180px;
    aspect-ratio: 135 / 180;
  }
  .block-franchise-hero__img--3 {
    left: calc(-3 / 390 * 100%);
    top: 453px;
    bottom: auto;
    width: calc(135 / 390 * 100%);
    max-width: 180px;
    aspect-ratio: 135 / 180;
  }
  .block-franchise-hero__img--4 {
    display: none;
    left: 52%;
    bottom: -3rem;
    width: 34%;
    max-width: 160px;
    aspect-ratio: 204 / 220;
    filter: drop-shadow(4px 9px 11px rgba(0, 0, 0, 0.2));
    will-change: auto;
  }
  @media (min-width: 1024px) {
    .block-franchise-hero__stage {
      height: calc(963 / 1728 * 100vw);
      max-height: 963px;
      min-height: 0;
    }
    .block-franchise-hero__copy {
      padding: calc(300 / 1728 * 100%) 1.25rem 0;
    }
    .block-franchise-hero__intro {
      max-width: 500px;
      margin-top: calc(40 / 1728 * 100%);
    }
    .block-franchise-hero__cta {
      width: max-content;
      height: 66px;
      margin-top: calc(40 / 1728 * 100%);
    }
    .block-franchise-hero__img--1 {
      left: calc(300 / 1728 * 100%);
      top: calc(20 / 963 * 100%);
      width: calc(300 / 1728 * 100%);
      max-width: none;
      aspect-ratio: 300 / 400;
    }
    .block-franchise-hero__img--2 {
      left: calc(1299 / 1728 * 100%);
      right: auto;
      top: calc(464 / 963 * 100%);
      width: calc(301 / 1728 * 100%);
      max-width: none;
      aspect-ratio: 301 / 400;
    }
    .block-franchise-hero__img--3 {
      left: calc(99 / 1728 * 100%);
      top: calc(689 / 963 * 100%);
      bottom: auto;
      width: calc(300 / 1728 * 100%);
      max-width: none;
      aspect-ratio: 300 / 425;
    }
    .block-franchise-hero__img--4 {
      display: block;
      left: calc(1021 / 1728 * 100%);
      top: calc(833 / 963 * 100%);
      bottom: auto;
      width: calc(204 / 1728 * 100%);
      max-width: none;
      height: auto;
    }
  }
  .block-text-columns {
    --text-columns-smear: url("../images/text-columns-video-smear.svg");
    position: relative;
    z-index: 1;
    color: var(--color-light-blue);
    overflow-x: clip;
  }
  .block-text-columns__copy {
    background: var(--color-gray);
    overflow-x: clip;
  }
  .block-text-columns__stage {
    position: relative;
    width: 100%;
    max-width: 1232px;
    margin-inline: auto;
    padding: 100px 1rem;
  }
  .block-text-columns__head {
    position: relative;
    z-index: 1;
    width: fit-content;
    max-width: 100%;
  }
  .block-text-columns__download {
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 0;
    left: auto;
    width: 94px;
    height: 94px;
    color: var(--color-white);
    text-align: center;
    transform: translate(0, -50%);
  }
  .block-text-columns__download svg {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
    translate: -50% -50%;
    transform-origin: center center;
    transition: width 0.25s ease, height 0.25s ease;
  }
  @media (hover: hover) and (min-width: 1024px) {
    .block-text-columns__download:hover svg, .block-text-columns__download:focus-visible svg {
      width: 171px;
      height: 171px;
      animation: text-columns-star-spin 4s linear infinite;
    }
  }
  @keyframes text-columns-star-spin {
    to {
      transform: rotate(360deg);
    }
  }
  .block-text-columns__download span {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    transform: rotate(-13deg);
    line-height: 0.9;
  }
  a.block-text-columns__download:focus-visible {
    outline: 2px solid var(--color-yellow);
    outline-offset: 4px;
  }
  .block-text-columns__title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0;
    text-align: left;
  }
  .block-text-columns__line1 {
    display: block;
    width: 100%;
    color: var(--color-light-blue);
  }
  .block-text-columns__line2 {
    color: var(--color-yellow);
    margin-top: 0.12em;
    white-space: normal;
  }
  .block-text-columns__squiggle {
    display: block;
    width: min(233px, 80%);
    height: auto;
    margin: -1.5rem 1.5rem 1.5rem 1.5rem;
    pointer-events: none;
  }
  .block-text-columns__grid {
    display: grid;
    gap: 1rem;
    max-width: 1154px;
    margin: 0;
    font-size: var(--text-body-large);
  }
  .block-text-columns__col p {
    margin: 0 0 1.25em;
  }
  .block-text-columns__col p:last-child {
    margin-bottom: 0;
  }
  .block-text-columns__col p:empty, .block-text-columns__col p:has(> br:only-child) {
    min-height: 1.25em;
  }
  .block-text-columns__video {
    position: relative;
    background: #111;
  }
  .block-text-columns__video-cta {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 0;
    display: flex;
    align-items: flex-start;
    margin: 0;
    transform: translate(-50%, -72%);
    pointer-events: none;
  }
  .block-text-columns__video-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: min(208px, 72vw);
    height: 52px;
    padding: 0 0.75rem 0.2rem;
    background-color: var(--color-white);
    color: var(--color-light-blue);
    text-align: center;
    white-space: nowrap;
    transform: rotate(-5deg);
    -webkit-mask-image: var(--text-columns-smear);
    mask-image: var(--text-columns-smear);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
  .block-text-columns__video-arrow {
    width: 57px;
    height: auto;
    margin-left: -1.25rem;
    margin-top: 1.25rem;
    flex-shrink: 0;
  }
  .block-text-columns__video-frame {
    position: relative;
    container-type: size;
    aspect-ratio: 16 / 9;
    width: 100%;
    overflow: hidden;
    background: #111;
  }
  .block-text-columns__video-fit {
    position: absolute;
    inset: 0;
    overflow: hidden;
  }
  .block-text-columns__video-fit iframe, .block-text-columns__video-fit video {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: 0;
    pointer-events: auto;
  }
  .block-text-columns__video-frame video, .block-text-columns__video-frame img, .block-text-columns__poster {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
    pointer-events: auto;
  }
  @media (min-width: 800px) {
    .block-text-columns__grid {
      grid-template-columns: 1fr 1fr;
      gap: 76px;
    }
  }
  @media (min-width: 1024px) {
    .block-text-columns__stage {
      padding: 200px 1rem;
    }
    .block-text-columns__head {
      margin-inline: auto;
    }
    .block-text-columns__download {
      right: auto;
      left: 100%;
      width: 156px;
      height: 156px;
      transform: translate(-22%, -50%);
    }
    .block-text-columns__title {
      align-items: center;
      text-align: center;
    }
    .block-text-columns__line2 {
      max-width: none;
    }
    .block-text-columns__squiggle {
      width: min(80%, 443px);
      margin: -3rem auto 1.75rem;
    }
    .block-text-columns__grid {
      margin: 0 auto;
      font-size: var(--text-body-medium);
    }
    .block-text-columns__video-label {
      width: min(262px, 72vw);
      height: 66px;
      transform: rotate(-3deg);
    }
    .block-text-columns__video-arrow {
      width: 82px;
      margin-left: -2rem;
      margin-top: 1.9rem;
    }
    .block-text-columns__video-frame {
      aspect-ratio: 1728 / 800;
    }
  }
  .block-contact {
    --contact-pattern: url("../images/contact-background-mobile.svg");
    --contact-send-smear: url("../images/franchise-cta-smear.svg");
    position: relative;
    isolation: isolate;
    overflow: visible;
    background-color: var(--color-dark-blue);
    padding: 1.25rem;
  }
  .block-contact::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background-color: var(--color-dark-blue);
    background-image: var(--contact-pattern);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    pointer-events: none;
  }
  .block-contact__panel {
    position: relative;
    z-index: 1;
    max-width: 1328px;
    margin: 0 auto;
    background: var(--color-light-blue);
    padding: 1.75rem 1.75rem 2rem;
    display: grid;
    gap: 0 2.5rem;
  }
  @media (min-width: 900px) {
    .block-contact {
      --contact-pattern: url("../images/contact-background-desktop.svg");
      padding: 12.5rem 1.25rem 8rem;
    }
    .block-contact__panel {
      grid-template-columns: minmax(0, 1fr) 546px;
      grid-template-areas: "title title" "squiggle squiggle" "copy form";
      column-gap: clamp(1.5rem, 5vw, 10.125rem);
      padding: 6.25rem;
    }
    .block-contact__title {
      grid-area: title;
    }
    .block-contact__squiggle {
      grid-area: squiggle;
    }
    .block-contact__copy {
      grid-area: copy;
    }
    .block-contact__form {
      grid-area: form;
      margin-top: 0;
    }
  }
  .block-contact__copy {
    position: relative;
    z-index: 1;
    min-width: 0;
  }
  .block-contact__title {
    position: relative;
    z-index: 1;
    color: var(--color-yellow);
    margin: 0;
  }
  .block-contact__squiggle {
    display: block;
    width: min(233px, 80%);
    height: auto;
    margin: -0.5rem 0 1.25rem;
    pointer-events: none;
    position: relative;
    z-index: 2;
  }
  .block-contact__intro {
    max-width: 420px;
    margin: 0;
    color: var(--color-gray);
    font-size: var(--text-body-medium);
  }
  .block-contact__details {
    margin-top: 1.75rem;
  }
  .block-contact__details-label {
    margin: 0 0 1.25rem;
    color: var(--color-gray);
  }
  .block-contact__details-links {
    margin: 0;
    color: var(--color-yellow);
  }
  .block-contact__details-links a {
    transition: color 0.25s ease;
  }
  .block-contact__details-links a:hover {
    color: var(--color-white);
  }
  .block-contact__form {
    position: relative;
    z-index: 1;
    min-width: 0;
  }
  .block-contact__image {
    position: absolute;
    top: -9.3rem;
    right: 1.5rem;
    z-index: 2;
    width: min(250px, 42vw);
    height: auto;
    aspect-ratio: 250 / 333;
    object-fit: cover;
    transform: rotate(7deg);
    pointer-events: none;
  }
  .block-contact__bat-wrap {
    position: absolute;
    left: 5%;
    bottom: -22%;
    z-index: 2;
    width: min(330px, 70vw);
    pointer-events: none;
    transform-origin: center center;
    animation: hero-hoverboard-float 5.4s ease-in-out infinite, contact-bat-bank 8.2s ease-in-out infinite;
  }
  .block-contact__bat {
    display: block;
    width: 100%;
    height: auto;
    rotate: 70deg;
    transform-origin: center;
    filter: drop-shadow(2px 10px 22px rgba(0, 0, 0, 0.25));
  }
  @media (min-width: 900px) {
    .block-contact__squiggle {
      width: min(80%, 443px);
      margin: -1.4rem 0 2.75rem;
    }
    .block-contact__intro {
      font-size: var(--text-body-medium);
    }
    .block-contact__details {
      margin-top: 3.75rem;
    }
    .block-contact__image {
      right: 4.5rem;
    }
  }
  @media (max-width: 899px) {
    .block-contact__details-label {
      margin: 0 0 12px !important;
    }
    .block-contact {
      overflow-x: clip;
      padding-bottom: 5rem;
      --contact-pattern: url("../images/contact-background-mobile.svg");
    }
    .block-contact__form {
      margin-top: 2.5rem;
    }
    .block-contact__image {
      display: none;
    }
    .block-contact__bat-wrap {
      left: 57%;
      bottom: -4%;
      width: min(200px, 48vw);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .block-contact__bat-wrap {
      animation: none;
    }
  }
  .block-full-image {
    line-height: 0;
  }
  .block-full-image img {
    width: 100%;
    height: 260px;
    max-height: none;
    object-fit: cover;
  }
  @media (min-width: 1024px) {
    .block-full-image img {
      height: auto;
      max-height: 800px;
    }
  }
  .empty-main {
    min-height: 60vh;
    display: grid;
    place-content: center;
    gap: 1rem;
    text-align: center;
    padding: 2rem;
  }
}
.swiper-pagination-bullets .swiper-pagination-bullet {
  cursor: pointer;
  transition: opacity 0.25s ease, background-color 0.25s ease;
}
.swiper-pagination-bullets .swiper-pagination-bullet:hover {
  opacity: 1;
  background: #fff;
}
.swiper-pagination-bullets.swiper-pagination-horizontal {
  width: auto;
}
.block-product__controls .swiper-pagination.swiper-pagination-horizontal {
  position: absolute;
  left: 50%;
  bottom: var(--pq-pager-bottom, 16px);
  width: auto;
  transform: translateX(-50%);
  z-index: 3;
  pointer-events: auto;
}
@media (min-width: 900px) {
  .block-product__controls .swiper-pagination.swiper-pagination-horizontal {
    bottom: var(--pq-pager-bottom, 40px);
  }
}
@media (max-width: 899px) {
  .block-product__slider [data-product-swiper].swiper, .block-product__slider [data-product-swiper] > .swiper-wrapper, .block-product__slider [data-product-swiper] > .swiper-wrapper > .block-product__slide.swiper-slide {
    overflow: visible;
  }
  .block-product__slider [data-product-swiper].swiper {
    -webkit-backdrop-filter: blur(0);
    backdrop-filter: blur(0);
    transform: translate3d(0, 0, 0);
  }
}
.block-sides .swiper {
  overflow: visible;
}
.block-sides .swiper-button-prev-custom {
  left: 0;
}
.block-sides .swiper-button-next-custom {
  right: 0;
}
.block-sides > .swiper-pagination.swiper-pagination-horizontal {
  position: absolute;
  left: 50%;
  bottom: 40px;
  width: auto;
  transform: translateX(-50%);
  z-index: 2;
  pointer-events: auto;
}
.block-contact .gform_wrapper, .block-contact .gform_wrapper.gravity-theme, .block-contact .gform_wrapper.gform-theme, .block-contact .gform_wrapper.gform-theme--foundation, .block-contact .gform_wrapper.gform-theme--orbital {
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  width: 100%;
  max-width: none;
  color: inherit;
  font: inherit;
}
.block-contact .gform_wrapper .gform_heading, .block-contact .gform_wrapper .gform_required_legend, .block-contact .gform_wrapper .gfield_required, .block-contact .gform_wrapper .gfield_description {
  display: none;
}
.block-contact .gform_wrapper form, .block-contact .gform_wrapper .gform_body, .block-contact .gform_wrapper .gform_footer, .block-contact .gform_wrapper .gform_page_footer, .block-contact .gform_wrapper .ginput_container, .block-contact .gform_wrapper .gfield {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  width: 100%;
  max-width: none;
  float: none;
}
.block-contact .gform_wrapper .gform_fields {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  width: 100%;
}
@media (min-width: 900px) {
  .block-contact .gform_wrapper .gform_fields {
    grid-template-columns: 1fr 1fr !important;
    gap: 1.25rem;
  }
}
.block-contact .gform_wrapper .gfield {
  position: relative;
  opacity: 0.5;
  flex: none !important;
  width: 100% !important;
  max-width: none !important;
  grid-column: auto !important;
  transition: opacity 0.25s ease;
}
@media (min-width: 900px) {
  .block-contact .gform_wrapper .gfield--width-full, .block-contact .gform_wrapper .gfield--width-twelve {
    grid-column: 1 / -1 !important;
  }
}
.block-contact .gform_wrapper .gfield:hover, .block-contact .gform_wrapper .gfield:focus-within, .block-contact .gform_wrapper .gfield:has(input:not(:placeholder-shown)), .block-contact .gform_wrapper .gfield:has(input:-webkit-autofill), .block-contact .gform_wrapper .gfield:has(textarea:not(:placeholder-shown)) {
  opacity: 1;
}
.block-contact .gform_wrapper .gfield_label {
  position: absolute;
  left: 1rem;
  top: 50%;
  z-index: 1;
  margin: 0;
  padding: 0;
  border: 0;
  width: auto;
  max-width: calc(100% - 2rem);
  transform: translateY(-50%);
  font-family: var(--font-body);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.2;
  color: var(--color-gray);
  text-transform: none;
  letter-spacing: 0;
  pointer-events: none;
  transition: top 0.15s ease, transform 0.15s ease, font-size 0.15s ease;
}
.block-contact .gform_wrapper .gfield:focus-within .gfield_label, .block-contact .gform_wrapper .gfield:has(input:not(:placeholder-shown)) .gfield_label, .block-contact .gform_wrapper .gfield:has(input:-webkit-autofill) .gfield_label {
  top: 0.35rem;
  transform: none;
  font-size: 0.625rem;
}
@media (min-width: 900px) {
  .block-contact .gform_wrapper .gfield_label {
    left: 1.25rem;
    max-width: calc(100% - 2.5rem);
    font-size: 1rem;
  }
  .block-contact .gform_wrapper .gfield:focus-within .gfield_label, .block-contact .gform_wrapper .gfield:has(input:not(:placeholder-shown)) .gfield_label, .block-contact .gform_wrapper .gfield:has(input:-webkit-autofill) .gfield_label {
    top: 0.5rem;
    font-size: 0.75rem;
  }
}
.block-contact .gform_wrapper input[type="text"], .block-contact .gform_wrapper input[type="email"], .block-contact .gform_wrapper input[type="tel"], .block-contact .gform_wrapper input[type="number"], .block-contact .gform_wrapper input[type="url"], .block-contact .gform_wrapper textarea, .block-contact .gform_wrapper select {
  width: 100% !important;
  min-height: 48px !important;
  height: 48px !important;
  margin: 0;
  padding: 1.35rem 1rem 0.55rem !important;
  border: 1px solid var(--color-gray) !important;
  border-radius: 0 !important;
  background: var(--color-light-blue) !important;
  color: var(--color-white) !important;
  font-family: var(--font-body) !important;
  font-size: 0.75rem !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
  outline: none;
  appearance: none;
  transition: border-color 0.25s ease, background-color 0.25s ease, color 0.25s ease;
}
@media (min-width: 900px) {
  .block-contact .gform_wrapper input[type="text"], .block-contact .gform_wrapper input[type="email"], .block-contact .gform_wrapper input[type="tel"], .block-contact .gform_wrapper input[type="number"], .block-contact .gform_wrapper input[type="url"], .block-contact .gform_wrapper textarea, .block-contact .gform_wrapper select {
    min-height: 52px !important;
    height: 52px !important;
    padding: 1.35rem 1.25rem 0.55rem !important;
    font-size: 1rem !important;
  }
}
.block-contact .gform_wrapper .gfield:hover input, .block-contact .gform_wrapper .gfield:hover textarea, .block-contact .gform_wrapper .gfield:hover select, .block-contact .gform_wrapper .gfield:focus-within input, .block-contact .gform_wrapper .gfield:focus-within textarea, .block-contact .gform_wrapper .gfield:focus-within select, .block-contact .gform_wrapper .gfield:has(input:not(:placeholder-shown)) input, .block-contact .gform_wrapper .gfield:has(textarea:not(:placeholder-shown)) textarea {
  border-color: var(--color-white) !important;
}
.block-contact .gform_wrapper input:focus-visible, .block-contact .gform_wrapper textarea:focus-visible, .block-contact .gform_wrapper select:focus-visible {
  outline: none;
}
.block-contact .gform_wrapper .gform_footer, .block-contact .gform_wrapper .gform_page_footer {
  margin-top: 0.75rem;
  padding: 0 !important;
  text-align: left;
  background: none;
}
.block-contact .block-contact__submit, .block-contact .gform_wrapper .gform_button, .block-contact .gform_wrapper input[type="submit"] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 73px !important;
  min-width: 73px !important;
  height: 52px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 0.4rem 0.15rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: var(--color-red) !important;
  background-image: none !important;
  color: var(--color-white) !important;
  font-family: var(--font-label) !important;
  font-size: var(--text-label-large) !important;
  font-weight: 400 !important;
  line-height: 0.9 !important;
  text-transform: uppercase !important;
  cursor: pointer;
  -webkit-mask-image: var(--contact-send-smear);
  mask-image: var(--contact-send-smear);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  transition: background-color 0.25s ease;
}
@media (min-width: 900px) {
  .block-contact .gform_wrapper .gform_footer, .block-contact .gform_wrapper .gform_page_footer {
    margin-top: 1.25rem;
  }
  .block-contact .block-contact__submit, .block-contact .gform_wrapper .gform_button, .block-contact .gform_wrapper input[type="submit"] {
    width: 95px !important;
    min-width: 95px !important;
    height: 66px !important;
    min-height: 66px !important;
  }
}
.block-contact .block-contact__submit:hover, .block-contact .gform_wrapper .gform_button:hover, .block-contact .gform_wrapper input[type="submit"]:hover {
  background-color: var(--color-blue) !important;
}
.block-contact .block-contact__submit:focus-visible, .block-contact .gform_wrapper .gform_button:focus-visible, .block-contact .gform_wrapper input[type="submit"]:focus-visible {
  outline: 2px solid var(--color-yellow);
  outline-offset: 4px;
}
.block-contact .gform_confirmation_message, .block-contact .gform_wrapper .validation_error, .block-contact .gform_wrapper .gform_validation_errors {
  margin: 0 0 1rem;
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-yellow);
  font-family: var(--font-body);
  font-size: var(--text-body-large);
  line-height: 1.2;
}
.block-contact .gform_wrapper .gform_validation_errors, .block-contact .gform_wrapper .validation_error {
  color: var(--color-red);
}
@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-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@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-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}
