/* [project]/apps/storefront/src/styles/globals.css [app-client] (css) */
*, :before, :after, ::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #3b82f680;
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

*, :before, :after {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
}

:before, :after {
  --tw-content: "";
}

html, :host {
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  line-height: 1.5;
  font-family: var(--sf-font-sans);
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}

body {
  line-height: inherit;
  margin: 0;
}

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-feature-settings: normal;
  font-variation-settings: normal;
  font-family: Roboto Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub, sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}

button, input, optgroup, select, textarea {
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}

button, select {
  text-transform: none;
}

button, input:where([type="button"]), input:where([type="reset"]), input:where([type="submit"]) {
  -webkit-appearance: button;
  background-color: #0000;
  background-image: none;
}

:-moz-focusring {
  outline: auto;
}

:-moz-ui-invalid {
  box-shadow: none;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button {
  height: auto;
}

::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol, ul, menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

dialog {
  padding: 0;
}

textarea {
  resize: vertical;
}

input::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}

textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}

input::placeholder, textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}

button, [role="button"] {
  cursor: pointer;
}

:disabled {
  cursor: default;
}

img, svg, video, canvas, audio, iframe, embed, object {
  vertical-align: middle;
  display: block;
}

img, video {
  max-width: 100%;
  height: auto;
}

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

* {
  border-color: var(--border-base);
}

:root {
  --tag-neutral-border: #e4e4e7;
  --tag-neutral-icon: #a1a1aa;
  --bg-switch-off-hover: #d4d4d8;
  --border-menu-bot: #fff;
  --border-menu-top: #e4e4e7;
  --bg-subtle-hover: #f4f4f5;
  --contrast-fg-primary: #ffffffe0;
  --bg-switch-off: #e4e4e7;
  --contrast-bg-base-pressed: #3f3f46;
  --bg-field-component-hover: #fafafa;
  --bg-base-pressed: #e4e4e7;
  --tag-neutral-text: #52525b;
  --tag-red-text: #9f1239;
  --contrast-bg-base: #18181b;
  --border-strong: #d4d4d8;
  --contrast-border-base: #ffffff26;
  --bg-field: #fafafa;
  --tag-blue-text: #1e40af;
  --button-inverted-pressed: #52525b;
  --border-interactive: #3b82f6;
  --bg-base-hover: #f4f4f5;
  --contrast-bg-subtle: #27272a;
  --bg-highlight: #eff6ff;
  --contrast-fg-secondary: #ffffff8f;
  --tag-red-bg: #ffe4e6;
  --button-transparent: #fff0;
  --button-danger-pressed: #9f1239;
  --fg-on-color: #fff;
  --button-inverted-hover: #3f3f46;
  --bg-field-component: #fff;
  --tag-orange-text: #9a3412;
  --tag-green-icon: #10b981;
  --border-base: #e4e4e7;
  --bg-base: #fff;
  --tag-orange-border: #fed7aa;
  --tag-red-border: #fecdd3;
  --tag-green-border: #a7f3d0;
  --tag-green-text: #065f46;
  --button-neutral: #fff;
  --tag-blue-border: #bfdbfe;
  --fg-interactive-hover: #2563eb;
  --tag-orange-icon: #f97316;
  --button-neutral-hover: #f4f4f5;
  --fg-interactive: #3b82f6;
  --bg-component-pressed: #e4e4e7;
  --tag-purple-bg: #ede9fe;
  --contrast-bg-base-hover: #27272a;
  --bg-component: #fafafa;
  --bg-subtle: #fafafa;
  --tag-purple-text: #5b21b6;
  --contrast-border-bot: #ffffff1a;
  --button-inverted: #27272a;
  --tag-red-icon: #f43f5e;
  --button-transparent-hover: #f4f4f5;
  --button-neutral-pressed: #e4e4e7;
  --tag-purple-icon: #a78bfa;
  --bg-field-hover: #f4f4f5;
  --fg-on-inverted: #fff;
  --bg-interactive: #3b82f6;
  --border-danger: #be123c;
  --button-transparent-pressed: #e4e4e7;
  --tag-purple-border: #ddd6fe;
  --bg-highlight-hover: #dbeafe;
  --border-error: #e11d48;
  --button-danger: #e11d48;
  --tag-blue-bg: #dbeafe;
  --border-transparent: #fff0;
  --button-danger-hover: #be123c;
  --bg-subtle-pressed: #e4e4e7;
  --fg-error: #e11d48;
  --bg-component-hover: #f4f4f5;
  --bg-disabled: #f4f4f5;
  --tag-blue-icon: #60a5fa;
  --fg-subtle: #52525b;
  --tag-orange-bg-hover: #fed7aa;
  --tag-green-bg-hover: #a7f3d0;
  --tag-red-bg-hover: #fecdd3;
  --tag-purple-bg-hover: #ddd6fe;
  --tag-neutral-bg-hover: #e4e4e7;
  --tag-blue-bg-hover: #bfdbfe;
  --tag-green-bg: #d1fae5;
  --tag-neutral-bg: #f4f4f5;
  --tag-orange-bg: #ffedd5;
  --fg-base: #18181b;
  --contrast-border-top: #18181b;
  --bg-overlay: #18181b66;
  --fg-disabled: #a1a1aa;
  --fg-muted: #71717a;
  --alpha-250: #18181b1a;
  --alpha-400: #18181b3d;
  --buttons-danger-focus: 0px .75px 0px 0px #fff3 inset, 0px 1px 2px 0px #be123c66, 0px 0px 0px 1px #be123c, 0px 0px 0px 2px #fff, 0px 0px 0px 4px #3b82f699;
  --details-contrast-on-bg-interactive: 0px 1px 2px 0px #1e3a8a99;
  --borders-error: 0px 0px 0px 1px #e11d48, 0px 0px 0px 3px #e11d4826;
  --borders-focus: 0px 0px 0px 1px #fff, 0px 0px 0px 3px #3b82f699;
  --buttons-danger: 0px .75px 0px 0px #fff3 inset, 0px 1px 2px 0px #be123c66, 0px 0px 0px 1px #be123c;
  --buttons-inverted-focus: 0px .75px 0px 0px #fff3 inset, 0px 1px 2px 0px #0006, 0px 0px 0px 1px #18181b, 0px 0px 0px 2px #fff, 0px 0px 0px 4px #3b82f699;
  --elevation-card-hover: 0px 0px 0px 1px #00000014, 0px 1px 2px -1px #00000014, 0px 2px 8px 0px #0000001a;
  --details-switch-handle: 0px 0px 2px 1px #fff inset, 0px 1px 0px 0px #fff inset, 0px 0px 0px .5px #00000005, 0px 5px 4px 0px #00000005, 0px 3px 3px 0px #0000000a, 0px 1px 2px 0px #0000001f, 0px 0px 1px 0px #00000014;
  --buttons-neutral: 0px 1px 2px 0px #0000001f, 0px 0px 0px 1px #00000014;
  --borders-base: 0px 1px 2px 0px #0000001f, 0px 0px 0px 1px #00000014;
  --elevation-card-rest: 0px 0px 0px 1px #00000014, 0px 1px 2px -1px #00000014, 0px 2px 4px 0px #0000000a;
  --buttons-neutral-focus: 0px 1px 2px 0px #0000001f, 0px 0px 0px 1px #00000014, 0px 0px 0px 2px #fff, 0px 0px 0px 4px #3b82f699;
  --details-switch-background-focus: 0px 0px 0px 1px #fff, 0px 0px 0px 3px #3b82f699, 0px 1px 1px 0px #0000000a inset, 0px 2px 4px 0px #0000000a inset, 0px 0px 0px .75px #0000000f inset, 0px 0px 8px 0px #00000005 inset, 0px 2px 4px 0px #0000000a;
  --details-switch-background: 0px 1px 1px 0px #0000000a inset, 0px 2px 4px 0px #0000000a inset, 0px 0px 0px .75px #0000000f inset, 0px 0px 8px 0px #00000005 inset, 0px 2px 4px 0px #0000000a;
  --elevation-flyout: 0px 0px 0px 1px #00000014, 0px 4px 8px 0px #00000014, 0px 8px 16px 0px #00000014;
  --elevation-tooltip: 0px 0px 0px 1px #00000014, 0px 2px 4px 0px #00000014, 0px 4px 8px 0px #00000014;
  --elevation-modal: 0px 0px 0px 1px #fff inset, 0px 0px 0px 1.5px #e4e4e799 inset, 0px 0px 0px 1px #00000014, 0px 8px 16px 0px #00000014, 0px 16px 32px 0px #00000014;
  --elevation-code-block: 0px 0px 0px 1px #18181b inset, 0px 0px 0px 1.5px #fff3 inset;
  --buttons-inverted: 0px .75px 0px 0px #fff3 inset, 0px 1px 2px 0px #0006, 0px 0px 0px 1px #18181b;
  --elevation-commandbar: 0px 0px 0px .75px #27272a inset, 0px 0px 0px 1.25px #ffffff4d inset, 0px 8px 16px 0px #00000014, 0px 16px 32px 0px #00000014;
  --borders-interactive-with-focus: 0px 1px 2px 0px #1e3a8a80, 0px 0px 0px 1px #2563eb, 0px 0px 0px 2px #fff, 0px 0px 0px 4px #2563eb99;
  --borders-interactive-with-shadow: 0px 1px 2px 0px #1e3a8a80, 0px 0px 0px 1px #2563eb;
  --borders-interactive-with-active: 0px 0px 0px 4px #2563eb33, 0px 0px 0px 1px #2563eb;
}

.container {
  width: 100%;
}

@media (min-width: 320px) {
  .container {
    max-width: 320px;
  }
}

@media (min-width: 512px) {
  .container {
    max-width: 512px;
  }
}

@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}

@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
  }
}

@media (min-width: 1440px) {
  .container {
    max-width: 1440px;
  }
}

@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
  }
}

@media (min-width: 1680px) {
  .container {
    max-width: 1680px;
  }
}

@media (min-width: 1920px) {
  .container {
    max-width: 1920px;
  }
}

.txt-compact-xlarge-plus {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.25rem;
}

.txt-compact-small-plus {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.25rem;
}

.txt-compact-medium {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.25rem;
}

.txt-compact-medium-plus {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.25rem;
}

.\!txt-compact-small {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji !important;
  font-size: .8125rem !important;
  font-weight: 400 !important;
  line-height: 1.25rem !important;
}

.txt-compact-small {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 1.25rem;
}

.txt-small {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .8125rem;
  font-weight: 400;
  line-height: 1.3rem;
}

.\!txt-medium {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji !important;
  font-size: .875rem !important;
  font-weight: 400 !important;
  line-height: 1.4rem !important;
}

.txt-medium {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.4rem;
}

.txt-small-plus {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .8125rem;
  font-weight: 500;
  line-height: 1.3rem;
}

.txt-medium-plus {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.4rem;
}

.txt-xlarge-plus {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.8rem;
}

.txt-xlarge {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.8rem;
}

.content-container {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.header-container {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: .75rem;
  padding-right: .75rem;
}

@media (min-width: 1024px) {
  .header-container {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.text-small-regular {
  font-size: .75rem;
  font-weight: 400;
  line-height: 1.25rem;
}

.text-small-semi {
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.25rem;
}

.text-base-regular {
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.5rem;
}

.text-base-semi {
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5rem;
}

.text-large-regular {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
}

.text-large-semi {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
}

.text-xl-semi {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 36px;
}

.text-2xl-regular {
  font-size: 30px;
  font-weight: 400;
  line-height: 48px;
}

.text-2xl-semi {
  font-size: 30px;
  font-weight: 600;
  line-height: 48px;
}

.text-3xl-regular {
  font-size: 32px;
  font-weight: 400;
  line-height: 44px;
}

.text-3xl-semi {
  font-size: 32px;
  font-weight: 600;
  line-height: 44px;
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.pointer-events-none {
  pointer-events: none;
}

.\!visible {
  visibility: visible !important;
}

.visible {
  visibility: visible;
}

.invisible {
  visibility: hidden;
}

.static {
  position: static;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.sticky {
  position: sticky;
}

.inset-0 {
  inset: 0;
}

.inset-x-0 {
  left: 0;
  right: 0;
}

.inset-x-\[31\.75\%\] {
  left: 31.75%;
  right: 31.75%;
}

.inset-y-0 {
  top: 0;
  bottom: 0;
}

.inset-y-\[31\.75\%\] {
  top: 31.75%;
  bottom: 31.75%;
}

.-bottom-\[calc\(100\%-36px\)\] {
  bottom: calc(-100% + 36px);
}

.bottom-0 {
  bottom: 0;
}

.bottom-1\/2 {
  bottom: 50%;
}

.bottom-5 {
  bottom: 1.25rem;
}

.left-0 {
  left: 0;
}

.left-1\/2 {
  left: 50%;
}

.left-\[48\%\] {
  left: 48%;
}

.right-0 {
  right: 0;
}

.right-1\/2 {
  right: 50%;
}

.right-4 {
  right: 1rem;
}

.right-5 {
  right: 1.25rem;
}

.top-0 {
  top: 0;
}

.top-12 {
  top: 3rem;
}

.top-3 {
  top: .75rem;
}

.top-\[48\%\] {
  top: 48%;
}

.top-\[calc\(100\%\+1px\)\] {
  top: calc(100% + 1px);
}

.z-0 {
  z-index: 0;
}

.z-10 {
  z-index: 10;
}

.z-20 {
  z-index: 20;
}

.z-50 {
  z-index: 50;
}

.z-\[51\] {
  z-index: 51;
}

.z-\[75\] {
  z-index: 75;
}

.z-\[900\] {
  z-index: 900;
}

.col-span-1 {
  grid-column: span 1 / span 1;
}

.row-span-2 {
  grid-row: span 2 / span 2;
}

.m-4 {
  margin: 1rem;
}

.mx-3 {
  margin-left: .75rem;
  margin-right: .75rem;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-16 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.my-2 {
  margin-top: .5rem;
  margin-bottom: .5rem;
}

.my-3 {
  margin-top: .75rem;
  margin-bottom: .75rem;
}

.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-5 {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.my-7 {
  margin-top: 1.75rem;
  margin-bottom: 1.75rem;
}

.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.\!mb-0 {
  margin-bottom: 0 !important;
}

.mb-0 {
  margin-bottom: 0;
}

.mb-1 {
  margin-bottom: .25rem;
}

.mb-16 {
  margin-bottom: 4rem;
}

.mb-2 {
  margin-bottom: .5rem;
}

.mb-20 {
  margin-bottom: 5rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.mb-5 {
  margin-bottom: 1.25rem;
}

.mb-6 {
  margin-bottom: 1.5rem;
}

.mb-7 {
  margin-bottom: 1.75rem;
}

.mb-8 {
  margin-bottom: 2rem;
}

.ml-2 {
  margin-left: .5rem;
}

.ml-3 {
  margin-left: .75rem;
}

.ml-\[-23px\] {
  margin-left: -23px;
}

.mr-4 {
  margin-right: 1rem;
}

.mt-0 {
  margin-top: 0;
}

.mt-1 {
  margin-top: .25rem;
}

.mt-10 {
  margin-top: 2.5rem;
}

.mt-12 {
  margin-top: 3rem;
}

.mt-2 {
  margin-top: .5rem;
}

.mt-3 {
  margin-top: .75rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-5 {
  margin-top: 1.25rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-7 {
  margin-top: 1.75rem;
}

.mt-8 {
  margin-top: 2rem;
}

.mt-px {
  margin-top: 1px;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.inline {
  display: inline;
}

.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.aspect-\[1\/1\] {
  aspect-ratio: 1;
}

.aspect-\[11\/14\] {
  aspect-ratio: 11 / 14;
}

.aspect-\[29\/34\] {
  aspect-ratio: 29 / 34;
}

.aspect-\[4\/3\] {
  aspect-ratio: 4 / 3;
}

.aspect-\[9\/16\] {
  aspect-ratio: 9 / 16;
}

.aspect-square {
  aspect-ratio: 1;
}

.size-full {
  width: 100%;
  height: 100%;
}

.h-1 {
  height: .25rem;
}

.h-1\.5 {
  height: .375rem;
}

.h-10 {
  height: 2.5rem;
}

.h-11 {
  height: 2.75rem;
}

.h-12 {
  height: 3rem;
}

.h-16 {
  height: 4rem;
}

.h-24 {
  height: 6rem;
}

.h-3 {
  height: .75rem;
}

.h-4 {
  height: 1rem;
}

.h-5 {
  height: 1.25rem;
}

.h-6 {
  height: 1.5rem;
}

.h-7 {
  height: 1.75rem;
}

.h-8 {
  height: 2rem;
}

.h-9 {
  height: 2.25rem;
}

.h-\[1\.5px\] {
  height: 1.5px;
}

.h-\[14px\] {
  height: 14px;
}

.h-\[75vh\] {
  height: 75vh;
}

.h-auto {
  height: auto;
}

.h-fit {
  height: fit-content;
}

.h-full {
  height: 100%;
}

.h-px {
  height: 1px;
}

.h-screen {
  height: 100vh;
}

.max-h-0 {
  max-height: 0;
}

.max-h-60 {
  max-height: 15rem;
}

.max-h-\[1000px\] {
  max-height: 1000px;
}

.max-h-\[402px\] {
  max-height: 402px;
}

.max-h-\[420px\] {
  max-height: 420px;
}

.max-h-\[442px\] {
  max-height: 442px;
}

.max-h-\[75vh\] {
  max-height: 75vh;
}

.min-h-11 {
  min-height: 2.75rem;
}

.min-h-12 {
  min-height: 3rem;
}

.min-h-16 {
  min-height: 4rem;
}

.min-h-5 {
  min-height: 1.25rem;
}

.min-h-\[220px\] {
  min-height: 220px;
}

.min-h-\[25px\] {
  min-height: 25px;
}

.min-h-\[50px\] {
  min-height: 50px;
}

.min-h-\[calc\(100vh-64px\)\] {
  min-height: calc(100vh - 64px);
}

.min-h-full {
  min-height: 100%;
}

.w-1\.5 {
  width: .375rem;
}

.w-1\/3 {
  width: 33.3333%;
}

.w-1\/4 {
  width: 25%;
}

.w-1\/5 {
  width: 20%;
}

.w-1\/6 {
  width: 16.6667%;
}

.w-10 {
  width: 2.5rem;
}

.w-11 {
  width: 2.75rem;
}

.w-12 {
  width: 3rem;
}

.w-14 {
  width: 3.5rem;
}

.w-16 {
  width: 4rem;
}

.w-2\/3 {
  width: 66.6667%;
}

.w-2\/5 {
  width: 40%;
}

.w-2\/6 {
  width: 33.3333%;
}

.w-20 {
  width: 5rem;
}

.w-24 {
  width: 6rem;
}

.w-28 {
  width: 7rem;
}

.w-3\/6 {
  width: 50%;
}

.w-32 {
  width: 8rem;
}

.w-4 {
  width: 1rem;
}

.w-4\/5 {
  width: 80%;
}

.w-48 {
  width: 12rem;
}

.w-5 {
  width: 1.25rem;
}

.w-6 {
  width: 1.5rem;
}

.w-60 {
  width: 15rem;
}

.w-7 {
  width: 1.75rem;
}

.w-8 {
  width: 2rem;
}

.w-96 {
  width: 24rem;
}

.w-\[1\.5px\] {
  width: 1.5px;
}

.w-\[100px\] {
  width: 100px;
}

.w-\[14px\] {
  width: 14px;
}

.w-\[180px\] {
  width: 180px;
}

.w-\[290px\] {
  width: 290px;
}

.w-\[400px\] {
  width: 400px;
}

.w-\[420px\] {
  width: 420px;
}

.w-\[440px\] {
  width: 440px;
}

.w-\[min\(88vw\,24rem\)\] {
  width: min(88vw, 24rem);
}

.w-auto {
  width: auto;
}

.w-fit {
  width: fit-content;
}

.w-full {
  width: 100%;
}

.min-w-0 {
  min-width: 0;
}

.min-w-11 {
  min-width: 2.75rem;
}

.min-w-5 {
  min-width: 1.25rem;
}

.min-w-\[320px\] {
  min-width: 320px;
}

.max-w-2xl {
  max-width: 42rem;
}

.max-w-3xl {
  max-width: 48rem;
}

.max-w-4xl {
  max-width: 56rem;
}

.max-w-5xl {
  max-width: 64rem;
}

.max-w-\[240px\] {
  max-width: 240px;
}

.max-w-\[32rem\] {
  max-width: 32rem;
}

.max-w-full {
  max-width: 100%;
}

.max-w-lg {
  max-width: 32rem;
}

.max-w-md {
  max-width: 28rem;
}

.max-w-sm {
  max-width: 24rem;
}

.max-w-xl {
  max-width: 36rem;
}

.flex-1 {
  flex: 1;
}

.flex-none {
  flex: none;
}

.flex-grow {
  flex-grow: 1;
}

.basis-0 {
  flex-basis: 0;
}

.caption-bottom {
  caption-side: bottom;
}

.-translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-x-full {
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-0 {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-1 {
  --tw-translate-y: .25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-rotate-90 {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-100 {
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-95 {
  --tw-scale-x: .95;
  --tw-scale-y: .95;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.\!transform-none {
  transform: none !important;
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

.animate-pulse {
  animation: 2s cubic-bezier(.4, 0, .6, 1) infinite pulse;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.animate-spin {
  animation: 1s linear infinite spin;
}

.cursor-default {
  cursor: default;
}

.cursor-not-allowed {
  cursor: not-allowed;
}

.cursor-pointer {
  cursor: pointer;
}

.select-none {
  -webkit-user-select: none;
  user-select: none;
}

.resize {
  resize: both;
}

.list-none {
  list-style-type: none;
}

.appearance-none {
  appearance: none;
}

.\!grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-cols-\[122px_1fr\] {
  grid-template-columns: 122px 1fr;
}

.grid-cols-\[144px_1fr\] {
  grid-template-columns: 144px 1fr;
}

.grid-cols-\[1fr_80px\] {
  grid-template-columns: 1fr 80px;
}

.grid-rows-2 {
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.flex-row {
  flex-direction: row;
}

.flex-col {
  flex-direction: column;
}

.flex-col-reverse {
  flex-direction: column-reverse;
}

.flex-wrap {
  flex-wrap: wrap;
}

.items-start {
  align-items: flex-start;
}

.items-end {
  align-items: flex-end;
}

.items-center {
  align-items: center;
}

.items-baseline {
  align-items: baseline;
}

.justify-start {
  justify-content: flex-start;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.gap-1 {
  gap: .25rem;
}

.gap-1\.5 {
  gap: .375rem;
}

.gap-10 {
  gap: 2.5rem;
}

.gap-12 {
  gap: 3rem;
}

.gap-2 {
  gap: .5rem;
}

.gap-3 {
  gap: .75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-5 {
  gap: 1.25rem;
}

.gap-6 {
  gap: 1.5rem;
}

.gap-7 {
  gap: 1.75rem;
}

.gap-8 {
  gap: 2rem;
}

.gap-x-1 {
  -moz-column-gap: .25rem;
  column-gap: .25rem;
}

.gap-x-16 {
  -moz-column-gap: 4rem;
  column-gap: 4rem;
}

.gap-x-2 {
  -moz-column-gap: .5rem;
  column-gap: .5rem;
}

.gap-x-3 {
  -moz-column-gap: .75rem;
  column-gap: .75rem;
}

.gap-x-4 {
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

.gap-x-40 {
  -moz-column-gap: 10rem;
  column-gap: 10rem;
}

.gap-x-6 {
  -moz-column-gap: 1.5rem;
  column-gap: 1.5rem;
}

.gap-x-8 {
  -moz-column-gap: 2rem;
  column-gap: 2rem;
}

.gap-y-1 {
  row-gap: .25rem;
}

.gap-y-10 {
  row-gap: 2.5rem;
}

.gap-y-12 {
  row-gap: 3rem;
}

.gap-y-2 {
  row-gap: .5rem;
}

.gap-y-24 {
  row-gap: 6rem;
}

.gap-y-3 {
  row-gap: .75rem;
}

.gap-y-4 {
  row-gap: 1rem;
}

.gap-y-6 {
  row-gap: 1.5rem;
}

.gap-y-8 {
  row-gap: 2rem;
}

.space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(.5rem * var(--tw-space-x-reverse));
  margin-left: calc(.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.25rem * var(--tw-space-y-reverse));
}

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.375rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.5rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.divide-x > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-x-reverse: 0;
  border-right-width: calc(1px * var(--tw-divide-x-reverse));
  border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
}

.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-\[var\(--sf-color-border\)\] > :not([hidden]) ~ :not([hidden]) {
  border-color: var(--sf-color-border);
}

.divide-gray-200 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1));
}

.self-start {
  align-self: flex-start;
}

.self-end {
  align-self: flex-end;
}

.self-stretch {
  align-self: stretch;
}

.justify-self-end {
  justify-self: end;
}

.overflow-auto {
  overflow: auto;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-visible {
  overflow: visible;
}

.overflow-y-auto {
  overflow-y: auto;
}

.overflow-x-hidden {
  overflow-x: hidden;
}

.overflow-y-hidden {
  overflow-y: hidden;
}

.overflow-y-scroll {
  overflow-y: scroll;
}

.overscroll-contain {
  overscroll-behavior: contain;
}

.truncate {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.overflow-ellipsis, .text-ellipsis {
  text-overflow: ellipsis;
}

.whitespace-nowrap {
  white-space: nowrap;
}

.whitespace-pre-line {
  white-space: pre-line;
}

.rounded {
  border-radius: .25rem;
}

.rounded-2xl {
  border-radius: 1rem;
}

.rounded-\[var\(--sf-radius-control\)\] {
  border-radius: var(--sf-radius-control);
}

.rounded-circle, .rounded-full {
  border-radius: 9999px;
}

.rounded-large {
  border-radius: 16px;
}

.rounded-lg {
  border-radius: .5rem;
}

.rounded-md {
  border-radius: .375rem;
}

.rounded-rounded {
  border-radius: 8px;
}

.rounded-xl {
  border-radius: .75rem;
}

.border, .border-\[1px\] {
  border-width: 1px;
}

.border-x {
  border-left-width: 1px;
  border-right-width: 1px;
}

.border-y {
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-l {
  border-left-width: 1px;
}

.border-t {
  border-top-width: 1px;
}

.border-t-0 {
  border-top-width: 0;
}

.border-dashed {
  border-style: dashed;
}

.border-none {
  border-style: none;
}

.border-\[var\(--sf-color-border\)\], .border-border {
  border-color: var(--sf-color-border);
}

.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}

.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.border-gray-900 {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1));
}

.border-grey-20 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}

.border-header-border {
  border-color: var(--sf-color-header-border);
}

.border-red-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));
}

.border-ui-border-base {
  border-color: var(--border-base);
}

.border-ui-border-interactive {
  border-color: var(--border-interactive);
}

.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.bg-\[var\(--sf-color-surface\)\] {
  background-color: var(--sf-color-surface);
}

.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.bg-black\/45 {
  background-color: #00000073;
}

.bg-blue-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}

.bg-brand {
  background-color: var(--sf-color-brand);
}

.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.bg-gray-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}

.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));
}

.bg-green-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}

.bg-grey-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}

.bg-header {
  background-color: var(--sf-color-header-background);
}

.bg-header-badge-background {
  background-color: var(--sf-color-header-badge-background);
}

.bg-neutral-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity, 1));
}

.bg-neutral-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(212 212 212 / var(--tw-bg-opacity, 1));
}

.bg-neutral-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(250 250 250 / var(--tw-bg-opacity, 1));
}

.bg-neutral-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(23 23 23 / var(--tw-bg-opacity, 1));
}

.bg-orange-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));
}

.bg-orange-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(253 186 116 / var(--tw-bg-opacity, 1));
}

.bg-purple-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}

.bg-red-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}

.bg-red-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}

.bg-transparent {
  background-color: #0000;
}

.bg-ui-bg-base {
  background-color: var(--bg-base);
}

.bg-ui-bg-component-pressed {
  background-color: var(--bg-component-pressed);
}

.bg-ui-bg-field {
  background-color: var(--bg-field);
}

.bg-ui-bg-subtle {
  background-color: var(--bg-subtle);
}

.bg-ui-button-neutral-hover {
  background-color: var(--button-neutral-hover);
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-zinc-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(228 228 231 / var(--tw-bg-opacity, 1));
}

.bg-zinc-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(82 82 91 / var(--tw-bg-opacity, 1));
}

.bg-opacity-75 {
  --tw-bg-opacity: .75;
}

.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.from-green-400 {
  --tw-gradient-from: #4ade80 var(--tw-gradient-from-position);
  --tw-gradient-to: #4ade8000 var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-zinc-400 {
  --tw-gradient-from: #a1a1aa var(--tw-gradient-from-position);
  --tw-gradient-to: #a1a1aa00 var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.to-green-500 {
  --tw-gradient-to: #22c55e var(--tw-gradient-to-position);
}

.to-zinc-500 {
  --tw-gradient-to: #71717a var(--tw-gradient-to-position);
}

.object-contain {
  -o-object-fit: contain;
  object-fit: contain;
}

.object-cover {
  -o-object-fit: cover;
  object-fit: cover;
}

.object-center {
  -o-object-position: center;
  object-position: center;
}

.p-0 {
  padding: 0;
}

.p-1 {
  padding: .25rem;
}

.p-10 {
  padding: 2.5rem;
}

.p-2 {
  padding: .5rem;
}

.p-3 {
  padding: .75rem;
}

.p-4 {
  padding: 1rem;
}

.p-5 {
  padding: 1.25rem;
}

.p-6 {
  padding: 1.5rem;
}

.p-8 {
  padding: 2rem;
}

.p-\[6px\] {
  padding: 6px;
}

.p-px {
  padding: 1px;
}

.px-1 {
  padding-left: .25rem;
  padding-right: .25rem;
}

.px-2 {
  padding-left: .5rem;
  padding-right: .5rem;
}

.px-3 {
  padding-left: .75rem;
  padding-right: .75rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-1 {
  padding-top: .25rem;
  padding-bottom: .25rem;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.py-2 {
  padding-top: .5rem;
  padding-bottom: .5rem;
}

.py-2\.5 {
  padding-top: .625rem;
  padding-bottom: .625rem;
}

.py-3 {
  padding-top: .75rem;
  padding-bottom: .75rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-40 {
  padding-top: 10rem;
  padding-bottom: 10rem;
}

.py-48 {
  padding-top: 12rem;
  padding-bottom: 12rem;
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.py-\[10px\] {
  padding-top: 10px;
  padding-bottom: 10px;
}

.\!pl-0 {
  padding-left: 0 !important;
}

.\!pr-0 {
  padding-right: 0 !important;
}

.pb-1 {
  padding-bottom: .25rem;
}

.pb-10 {
  padding-bottom: 2.5rem;
}

.pb-2 {
  padding-bottom: .5rem;
}

.pb-3 {
  padding-bottom: .75rem;
}

.pb-4 {
  padding-bottom: 1rem;
}

.pb-6 {
  padding-bottom: 1.5rem;
}

.pb-8 {
  padding-bottom: 2rem;
}

.pb-\[max\(1rem\,env\(safe-area-inset-bottom\)\)\] {
  padding-bottom: max(1rem, env(safe-area-inset-bottom));
}

.pl-2 {
  padding-left: .5rem;
}

.pl-6 {
  padding-left: 1.5rem;
}

.pl-\[1px\] {
  padding-left: 1px;
}

.pr-1 {
  padding-right: .25rem;
}

.pr-10 {
  padding-right: 2.5rem;
}

.pr-2 {
  padding-right: .5rem;
}

.pr-6 {
  padding-right: 1.5rem;
}

.pt-0 {
  padding-top: 0;
}

.pt-1 {
  padding-top: .25rem;
}

.pt-2 {
  padding-top: .5rem;
}

.pt-3 {
  padding-top: .75rem;
}

.pt-4 {
  padding-top: 1rem;
}

.pt-6 {
  padding-top: 1.5rem;
}

.pt-8 {
  padding-top: 2rem;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.align-middle {
  vertical-align: middle;
}

.font-heading {
  font-family: var(--sf-font-heading);
}

.font-sans {
  font-family: var(--sf-font-sans);
}

.\!text-sm {
  font-size: .875rem !important;
  line-height: 1.25rem !important;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-3xl {
  font-size: 2rem;
}

.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.text-\[10px\] {
  font-size: 10px;
}

.text-\[11px\] {
  font-size: 11px;
}

.text-\[15px\] {
  font-size: 15px;
}

.text-\[2rem\] {
  font-size: 2rem;
}

.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-sm {
  font-size: .875rem;
  line-height: 1.25rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xs {
  font-size: .75rem;
  line-height: 1rem;
}

.font-bold {
  font-weight: 700;
}

.font-medium {
  font-weight: 500;
}

.font-normal {
  font-weight: 400;
}

.font-semibold {
  font-weight: 600;
}

.uppercase {
  text-transform: uppercase;
}

.leading-10 {
  line-height: 2.5rem;
}

.leading-5 {
  line-height: 1.25rem;
}

.leading-6 {
  line-height: 1.5rem;
}

.leading-7 {
  line-height: 1.75rem;
}

.leading-\[2\.75rem\] {
  line-height: 2.75rem;
}

.leading-none {
  line-height: 1;
}

.tracking-\[0\.14em\] {
  letter-spacing: .14em;
}

.tracking-tight {
  letter-spacing: -.025em;
}

.text-\[var\(--sf-color-brand\)\] {
  color: var(--sf-color-brand);
}

.text-\[var\(--sf-color-foreground\)\] {
  color: var(--sf-color-foreground);
}

.text-\[var\(--sf-color-muted\)\] {
  color: var(--sf-color-muted);
}

.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-blue-700 {
  --tw-text-opacity: 1;
  color: rgb(29 78 216 / var(--tw-text-opacity, 1));
}

.text-brand {
  color: var(--sf-color-brand);
}

.text-emerald-500 {
  --tw-text-opacity: 1;
  color: rgb(16 185 129 / var(--tw-text-opacity, 1));
}

.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.text-green-500 {
  --tw-text-opacity: 1;
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}

.text-green-700 {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}

.text-grey-90 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.text-header-badge-foreground {
  color: var(--sf-color-header-badge-foreground);
}

.text-header-foreground {
  color: var(--sf-color-header-foreground);
}

.text-muted {
  color: var(--sf-color-muted);
}

.text-neutral-400 {
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}

.text-neutral-500 {
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity, 1));
}

.text-neutral-600 {
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity, 1));
}

.text-neutral-950 {
  --tw-text-opacity: 1;
  color: rgb(10 10 10 / var(--tw-text-opacity, 1));
}

.text-orange-700 {
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.text-orange-800 {
  --tw-text-opacity: 1;
  color: rgb(154 52 18 / var(--tw-text-opacity, 1));
}

.text-orange-950 {
  --tw-text-opacity: 1;
  color: rgb(67 20 7 / var(--tw-text-opacity, 1));
}

.text-purple-700 {
  --tw-text-opacity: 1;
  color: rgb(126 34 206 / var(--tw-text-opacity, 1));
}

.text-red-500 {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.text-red-700 {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}

.text-red-800 {
  --tw-text-opacity: 1;
  color: rgb(153 27 27 / var(--tw-text-opacity, 1));
}

.text-rose-500 {
  --tw-text-opacity: 1;
  color: rgb(244 63 94 / var(--tw-text-opacity, 1));
}

.text-ui-fg-base {
  color: var(--fg-base);
}

.text-ui-fg-interactive {
  color: var(--fg-interactive);
}

.text-ui-fg-muted {
  color: var(--fg-muted);
}

.text-ui-fg-subtle {
  color: var(--fg-subtle);
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-zinc-400 {
  --tw-text-opacity: 1;
  color: rgb(161 161 170 / var(--tw-text-opacity, 1));
}

.text-zinc-600 {
  --tw-text-opacity: 1;
  color: rgb(82 82 91 / var(--tw-text-opacity, 1));
}

.text-zinc-900 {
  --tw-text-opacity: 1;
  color: rgb(24 24 27 / var(--tw-text-opacity, 1));
}

.underline {
  text-decoration-line: underline;
}

.line-through {
  text-decoration-line: line-through;
}

.opacity-0 {
  opacity: 0;
}

.opacity-100 {
  opacity: 1;
}

.opacity-25 {
  opacity: .25;
}

.opacity-50 {
  opacity: .5;
}

.opacity-75 {
  opacity: .75;
}

.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px #00000040;
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-borders-base {
  --tw-shadow: var(--borders-base);
  --tw-shadow-colored: var(--borders-base);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-details-contrast-on-bg-interactive {
  --tw-shadow: var(--details-contrast-on-bg-interactive);
  --tw-shadow-colored: var(--details-contrast-on-bg-interactive);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-elevation-card-rest {
  --tw-shadow: var(--elevation-card-rest);
  --tw-shadow-colored: var(--elevation-card-rest);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-none {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-xl {
  --tw-shadow: 0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline-none {
  outline-offset: 2px;
  outline: 2px solid #0000;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.drop-shadow-md {
  --tw-drop-shadow: drop-shadow(0 4px 3px #00000012) drop-shadow(0 2px 2px #0000000f);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-blur-md {
  --tw-backdrop-blur: blur(12px);
  -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);
}

.backdrop-blur-sm {
  --tw-backdrop-blur: blur(4px);
  -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, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-\[max-height\,opacity\] {
  transition-property: max-height, opacity;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-all {
  transition-property: all;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-opacity {
  transition-property: opacity;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-shadow {
  transition-property: box-shadow;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.transition-transform {
  transition-property: transform;
  transition-duration: .15s;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.delay-1000 {
  transition-delay: 1s;
}

.duration-100 {
  transition-duration: .1s;
}

.duration-150 {
  transition-duration: .15s;
}

.duration-200 {
  transition-duration: .2s;
}

.duration-300 {
  transition-duration: .3s;
}

.duration-500 {
  transition-duration: .5s;
}

.ease-in {
  transition-timing-function: cubic-bezier(.4, 0, 1, 1);
}

.ease-in-out {
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.ease-out {
  transition-timing-function: cubic-bezier(0, 0, .2, 1);
}

@keyframes enter {
  from {
    opacity: var(--tw-enter-opacity, 1);
    transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));
  }

  0% {
    opacity: 0;
    transform: scale(.9);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity, 1);
    transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));
  }
}

.duration-100 {
  animation-duration: .1s;
}

.duration-150 {
  animation-duration: .15s;
}

.duration-200 {
  animation-duration: .2s;
}

.duration-300 {
  animation-duration: .3s;
}

.duration-500 {
  animation-duration: .5s;
}

.delay-1000 {
  animation-delay: 1s;
}

.ease-in {
  animation-timing-function: cubic-bezier(.4, 0, 1, 1);
}

.ease-in-out {
  animation-timing-function: cubic-bezier(.4, 0, .2, 1);
}

.ease-out {
  animation-timing-function: cubic-bezier(0, 0, .2, 1);
}

.running {
  animation-play-state: running;
}

.\!paused {
  animation-play-state: paused !important;
}

.paused {
  animation-play-state: paused;
}

.no-scrollbar::-webkit-scrollbar {
  display: none;
}

.no-scrollbar::-webkit-scrollbar-track {
  background-color: #0000;
}

.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

input:not(:-moz-placeholder-shown) ~ label {
  --tw-translate-y: -.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  font-size: 10px;
  font-weight: 400;
  line-height: 1rem;
}

input:focus ~ label, input:not(:placeholder-shown) ~ label {
  --tw-translate-y: -.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  font-size: 10px;
  font-weight: 400;
  line-height: 1rem;
}

input:focus ~ label {
  left: 0;
}

input:-webkit-autofill {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

input:-webkit-autofill:hover {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

input:-webkit-autofill:focus {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

textarea:-webkit-autofill {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

textarea:-webkit-autofill:hover {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

textarea:-webkit-autofill:focus {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

select:-webkit-autofill {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

select:-webkit-autofill:hover {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

select:-webkit-autofill:focus {
  -webkit-text-fill-color: #212121;
  border: 1px solid #212121;
  transition: background-color 5000s ease-in-out;
  -webkit-box-shadow: inset 0 0 0 1000px #fff;
}

input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

input[type="search"]::-webkit-search-results-button {
  -webkit-appearance: none;
}

input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

:root {
  --sf-action-background: var(--sf-color-brand);
  --sf-action-background-hover: var(--sf-color-brand-hover);
  --sf-action-foreground: var(--sf-color-on-brand);
}

.placeholder\:text-gray-400::placeholder {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.last\:mb-0:last-child {
  margin-bottom: 0;
}

.last\:border-b:last-child {
  border-bottom-width: 1px;
}

.last\:border-none:last-child {
  border-style: none;
}

.last\:pb-0:last-child {
  padding-bottom: 0;
}

.hover\:cursor-pointer:hover {
  cursor: pointer;
}

.hover\:bg-\[var\(--sf-color-background\)\]:hover {
  background-color: var(--sf-color-background);
}

.hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}

.hover\:bg-grey-5:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.hover\:bg-header-interactive:hover {
  background-color: var(--sf-color-header-interactive);
}

.hover\:bg-transparent:hover {
  background-color: #0000;
}

.hover\:bg-ui-bg-field-hover:hover {
  background-color: var(--bg-field-hover);
}

.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.hover\:text-ui-fg-base:hover {
  color: var(--fg-base);
}

.hover\:text-ui-fg-interactive-hover:hover {
  color: var(--fg-interactive-hover);
}

.hover\:text-ui-fg-subtle:hover {
  color: var(--fg-subtle);
}

.hover\:opacity-80:hover {
  opacity: .8;
}

.hover\:shadow-borders-interactive-with-active:hover {
  --tw-shadow: var(--borders-interactive-with-active);
  --tw-shadow-colored: var(--borders-interactive-with-active);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-elevation-card-rest:hover {
  --tw-shadow: var(--elevation-card-rest);
  --tw-shadow-colored: var(--elevation-card-rest);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:not-sr-only:focus {
  clip: auto;
  white-space: normal;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  position: static;
  overflow: visible;
}

.focus\:absolute:focus {
  position: absolute;
}

.focus\:left-0:focus {
  left: 0;
}

.focus\:top-0:focus {
  top: 0;
}

.focus\:z-50:focus {
  z-index: 50;
}

.focus\:border-gray-700:focus {
  --tw-border-opacity: 1;
  border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}

.focus\:bg-brand:focus {
  background-color: var(--sf-color-brand);
}

.focus\:bg-transparent:focus {
  background-color: #0000;
}

.focus\:p-3:focus {
  padding: .75rem;
}

.focus\:text-ui-fg-base:focus {
  color: var(--fg-base);
}

.focus\:text-white:focus {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.focus\:shadow-borders-interactive-with-active:focus {
  --tw-shadow: var(--borders-interactive-with-active);
  --tw-shadow-colored: var(--borders-interactive-with-active);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:outline-none:focus {
  outline-offset: 2px;
  outline: 2px solid #0000;
}

.focus\:ring-0:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-gray-900:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(17 24 39 / var(--tw-ring-opacity, 1));
}

.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}

.focus-visible\:border-gray-300:focus-visible {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.focus-visible\:outline-none:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #0000;
}

.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-visible\:ring-\[var\(--sf-color-focus\)\]:focus-visible {
  --tw-ring-color: var(--sf-color-focus);
}

.focus-visible\:ring-header-foreground:focus-visible {
  --tw-ring-color: var(--sf-color-header-foreground);
}

.focus-visible\:ring-white:focus-visible {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1));
}

.focus-visible\:ring-opacity-75:focus-visible {
  --tw-ring-opacity: .75;
}

.focus-visible\:ring-offset-2:focus-visible {
  --tw-ring-offset-width: 2px;
}

.focus-visible\:ring-offset-gray-300:focus-visible {
  --tw-ring-offset-color: #d1d5db;
}

.active\:bg-grey-5:active {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.active\:bg-transparent:active {
  background-color: #0000;
}

.disabled\:pointer-events-none:disabled {
  pointer-events: none;
}

.disabled\:cursor-not-allowed:disabled {
  cursor: not-allowed;
}

.disabled\:bg-transparent:disabled {
  background-color: #0000;
}

.disabled\:text-grey-30:disabled {
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}

.disabled\:text-orange-500:disabled {
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.disabled\:opacity-50:disabled {
  opacity: .5;
}

.group[open] .group-open\:rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:rotate-45 {
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-105 {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:animate-pulse {
  animation: 2s cubic-bezier(.4, 0, .6, 1) infinite pulse;
}

.group:hover .group-hover\:shadow-elevation-card-hover {
  --tw-shadow: var(--elevation-card-hover);
  --tw-shadow-colored: var(--elevation-card-hover);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.group:focus .group-focus\:\!shadow-borders-interactive-with-focus {
  --tw-shadow: var(--borders-interactive-with-focus) !important;
  --tw-shadow-colored: var(--borders-interactive-with-focus) !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
}

.group:disabled .group-disabled\:\!bg-ui-bg-disabled {
  background-color: var(--bg-disabled) !important;
}

.group:disabled .group-disabled\:bg-ui-fg-disabled {
  background-color: var(--fg-disabled);
}

.group:disabled .group-disabled\:\!shadow-borders-base {
  --tw-shadow: var(--borders-base) !important;
  --tw-shadow-colored: var(--borders-base) !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
}

.group:disabled .group-disabled\:shadow-none {
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.group[data-state="checked"] .group-data-\[state\=checked\]\:bg-ui-bg-interactive {
  background-color: var(--bg-interactive);
}

.radix-state-closed\:pointer-events-none[data-state="closed"] {
  pointer-events: none;
}

@keyframes accordion-slide-up {
  0% {
    height: var(--radix-accordion-content-height);
    opacity: 1;
  }

  100% {
    opacity: 0;
    height: 0;
  }
}

.radix-state-closed\:animate-accordion-close[data-state="closed"], .group[data-state="closed"] .group-radix-state-closed\:animate-accordion-close {
  animation: .3s cubic-bezier(.87, 0, .13, 1) forwards accordion-slide-up;
}

@keyframes accordion-slide-down {
  0% {
    opacity: 0;
    min-height: 0;
    max-height: 0;
  }

  100% {
    min-height: var(--radix-accordion-content-height);
    opacity: 1;
    max-height: none;
  }
}

.radix-state-open\:animate-accordion-open[data-state="open"] {
  animation: .3s cubic-bezier(.87, 0, .13, 1) forwards accordion-slide-down;
}

.group[data-state="open"] .group-radix-state-open\:left-1\/2 {
  left: 50%;
}

.group[data-state="open"] .group-radix-state-open\:right-1\/2 {
  right: 50%;
}

.group[data-state="open"] .group-radix-state-open\:rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@media (min-width: 512px) {
  .xsmall\:left-auto {
    left: auto;
  }

  .xsmall\:right-0 {
    right: 0;
  }

  .xsmall\:flex-row {
    flex-direction: row;
  }
}

@media (min-width: 640px) {
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sm\:items-end {
    align-items: flex-end;
  }

  .sm\:text-sm {
    font-size: .875rem;
    line-height: 1.25rem;
  }
}

@media (min-width: 768px) {
  .md\:items-center {
    align-items: center;
  }

  .md\:gap-x-16 {
    -moz-column-gap: 4rem;
    column-gap: 4rem;
  }

  .md\:pt-0 {
    padding-top: 0;
  }
}

@media (min-width: 1024px) {
  .lg\:hidden {
    display: none;
  }

  .lg\:max-w-\[500px\] {
    max-width: 500px;
  }

  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .small\:static {
    position: static;
  }

  .small\:sticky {
    position: sticky;
  }

  .small\:top-48 {
    top: 12rem;
  }

  .small\:col-span-2 {
    grid-column: span 2 / span 2;
  }

  .small\:mx-16 {
    margin-left: 4rem;
    margin-right: 4rem;
  }

  .small\:my-32 {
    margin-top: 8rem;
    margin-bottom: 8rem;
  }

  .small\:ml-\[1\.675rem\] {
    margin-left: 1.675rem;
  }

  .small\:block {
    display: block;
  }

  .small\:flex {
    display: flex;
  }

  .small\:table-cell {
    display: table-cell;
  }

  .small\:hidden {
    display: none;
  }

  .small\:min-h-screen {
    min-height: 100vh;
  }

  .small\:w-24 {
    width: 6rem;
  }

  .small\:min-w-\[250px\] {
    min-width: 250px;
  }

  .small\:max-w-\[140px\] {
    max-width: 140px;
  }

  .small\:max-w-\[300px\] {
    max-width: 300px;
  }

  .small\:translate-x-0 {
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .small\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .small\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .small\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .small\:grid-cols-\[1fr_360px\] {
    grid-template-columns: 1fr 360px;
  }

  .small\:grid-cols-\[1fr_416px\] {
    grid-template-columns: 1fr 416px;
  }

  .small\:grid-cols-\[240px_1fr\] {
    grid-template-columns: 240px 1fr;
  }

  .small\:flex-row {
    flex-direction: row;
  }

  .small\:flex-col {
    flex-direction: column;
  }

  .small\:items-start {
    align-items: flex-start;
  }

  .small\:gap-2 {
    gap: .5rem;
  }

  .small\:gap-y-36 {
    row-gap: 9rem;
  }

  .small\:border-t {
    border-top-width: 1px;
  }

  .small\:p-32 {
    padding: 8rem;
  }

  .small\:p-4 {
    padding: 1rem;
  }

  .small\:px-0 {
    padding-left: 0;
    padding-right: 0;
  }

  .small\:py-0 {
    padding-top: 0;
    padding-bottom: 0;
  }

  .small\:py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .small\:py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

@media (min-width: 1280px) {
  .medium\:block {
    display: block;
  }

  .medium\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1440px) {
  .large\:block {
    display: block;
  }

  .large\:inline {
    display: inline;
  }

  .large\:hidden {
    display: none;
  }

  .large\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) {
  padding-right: 0;
}

.\[\&_tr\:last-child\]\:border-0 tr:last-child {
  border-width: 0;
}

.\[\&_tr\]\:border-b tr {
  border-bottom-width: 1px;
}

/* [project]/apps/storefront/src/styles/equipment-booking.css [app-client] (css) */
.pdp-booking {
  color: var(--sf-color-foreground);
  margin-top: 22px;
  font-size: 14px;
}

.pdp-booking h2 {
  margin-bottom: 14px;
  font-size: 16px;
  font-weight: 600;
}

.pdp-purchase-options {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 20px;
  display: grid;
}

.pdp-purchase-options > button {
  text-align: left;
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 12px;
  align-items: start;
  gap: 10px;
  min-height: 92px;
  padding: 16px 13px;
  transition: background .15s, border-color .15s;
  display: flex;
}

.pdp-purchase-options > button > svg {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
}

.pdp-purchase-options strong, .pdp-purchase-options small {
  display: block;
}

.pdp-purchase-options strong {
  font-size: 13px;
}

.pdp-purchase-options small {
  color: var(--sf-color-muted);
  margin-top: 5px;
  font-size: 11px;
  line-height: 1.6;
}

.pdp-purchase-options i, .checkout-radio {
  border: 1px solid #b5c2b8;
  border-radius: 100%;
  flex: 0 0 15px;
  width: 15px;
  height: 15px;
  margin-left: auto;
}

.pdp-purchase-options > button[aria-pressed="true"], .checkout-delivery-card[aria-pressed="true"] {
  border-color: var(--sf-color-brand);
  box-shadow: inset 0 0 0 1px var(--sf-color-brand);
  background: #f0f5ee;
}

.pdp-purchase-options > button[aria-pressed="true"] i, .checkout-delivery-card[aria-pressed="true"] .checkout-radio {
  background: var(--sf-color-brand);
  border-color: var(--sf-color-brand);
  box-shadow: inset 0 0 0 3px #fff;
}

.pdp-purchase-options button:disabled {
  cursor: default;
}

.booking-form {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  overflow: hidden;
}

.booking-heading {
  margin-bottom: 22px;
}

.booking-heading h3 {
  font: 400 31px/1.2 var(--sf-font-heading);
  letter-spacing: -.02em;
  margin: 10px 0;
}

.booking-heading p, .booking-small {
  color: var(--sf-color-muted);
  font-size: 12px;
  line-height: 1.7;
}

.booking-small {
  margin-top: 12px;
}

.booking-label {
  margin: 15px 0 8px;
  font-size: 12px;
  font-weight: 600;
  display: block;
}

.booking-label > span {
  color: var(--sf-color-muted);
  font-weight: 400;
}

.booking-form select, .booking-form input {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 8px;
  width: 100%;
  height: 46px;
  padding: 0 13px;
  font-size: 13px;
}

.booking-coverage {
  color: var(--sf-color-brand);
  align-items: center;
  gap: 7px;
  margin: 12px 0 18px;
  font-size: 12px;
  display: flex;
}

.booking-coverage svg {
  width: 16px;
}

.booking-loading, .booking-empty {
  color: var(--sf-color-muted);
  padding: 22px 0;
  line-height: 1.7;
}

.booking-empty strong {
  color: var(--sf-color-foreground);
}

.booking-calendar {
  border-block: 1px solid var(--sf-color-border);
  margin-top: 16px;
  padding-block: 22px;
}

.booking-month .rdp-root {
  --rdp-accent-color: var(--sf-color-brand);
  --rdp-accent-background-color: #eef4e9;
  --rdp-day-height: 42px;
  --rdp-day-width: 42px;
  --rdp-day_button-height: 40px;
  --rdp-day_button-width: 40px;
  --rdp-selected-border: 0;
  --rdp-disabled-opacity: .35;
  margin: 0;
  font-size: 13px;
}

.booking-month .rdp-months, .booking-month .rdp-month {
  width: 100%;
  max-width: none;
}

.booking-month .rdp-month_grid {
  width: 100%;
}

.booking-month .rdp-month_caption {
  text-transform: capitalize;
  justify-content: center;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 600;
}

.booking-month .rdp-day_button {
  border-radius: 9px;
  margin: auto;
  font-size: 13px;
  font-weight: 500;
}

.booking-month .rdp-day:not(.rdp-disabled):not(.rdp-outside):not(.rdp-selected) .rdp-day_button {
  background: #eef4e9;
}

.booking-month .rdp-selected .rdp-day_button {
  background: var(--sf-color-brand);
  color: #fff;
  font-weight: 700;
}

.booking-month .rdp-today:not(.rdp-selected) {
  color: var(--sf-color-foreground);
}

.booking-month .rdp-nav button, .booking-month .rdp-button_next, .booking-month .rdp-button_previous {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 8px;
}

.booking-month .rdp-weekday {
  text-transform: uppercase;
  color: var(--sf-color-muted);
  font-size: 11px;
  font-weight: 500;
}

.booking-legend {
  justify-content: center;
  align-items: center;
  gap: 6px;
  margin-top: 13px;
  display: flex;
}

.booking-legend span, .booking-legend i {
  background: var(--sf-color-brand);
  border-radius: 50%;
  width: 7px;
  height: 7px;
  display: block;
}

.booking-legend i {
  background: #d0d4ce;
  margin-left: 8px;
}

.booking-legend small {
  color: var(--sf-color-muted);
  font-size: 10px;
}

.booking-times {
  border-top: 1px solid var(--sf-color-border);
  margin-top: 22px;
  padding-top: 20px;
}

.booking-times h3 {
  text-transform: capitalize;
  margin: 8px 0;
  font-size: 15px;
  font-weight: 600;
}

.booking-times > p {
  color: var(--sf-color-muted);
  font-size: 11px;
}

.booking-time-options {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
  display: grid;
}

.booking-time-options button {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 9px;
  min-height: 68px;
  padding: 14px 9px;
}

.booking-time-options strong, .booking-time-options span {
  display: block;
}

.booking-time-options strong {
  font-size: 13px;
}

.booking-time-options span {
  color: var(--sf-color-muted);
  margin-top: 5px;
  font-size: 11px;
}

.booking-time-options button[aria-pressed="true"] {
  border-color: var(--sf-color-brand);
  box-shadow: inset 0 0 0 1px var(--sf-color-brand);
  background: #eef4e9;
}

.booking-time-placeholder {
  border: 1px dashed var(--sf-color-border);
  color: var(--sf-color-muted);
  border-radius: 8px;
  margin-top: 14px;
  padding: 16px;
  font-size: 12px;
  line-height: 1.6;
}

.booking-scope {
  margin-top: 20px;
  font-size: 12px;
}

.booking-scope summary {
  cursor: pointer;
  padding-block: 12px;
  text-decoration: underline;
}

.booking-scope p {
  white-space: pre-line;
  color: var(--sf-color-muted);
  line-height: 1.7;
}

.booking-price {
  border-top: 1px solid var(--sf-color-border);
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  padding-top: 18px;
  font-size: 13px;
  display: flex;
}

.booking-price strong {
  font-size: 19px;
}

.booking-selection {
  color: var(--sf-color-brand);
  text-transform: capitalize;
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.6;
}

.booking-primary, .checkout-primary {
  background: var(--sf-color-brand);
  color: #fff;
  border-radius: 8px;
  gap: 10px;
  width: 100%;
  min-height: 49px;
  margin-top: 18px;
  font-size: 13px;
}

.booking-primary:disabled, .checkout-primary:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.booking-primary:hover, .checkout-primary:hover {
  background: var(--sf-color-brand-hover);
}

.booking-link {
  text-underline-offset: 3px;
  margin-top: 14px;
  font-size: 12px;
  text-decoration: underline;
  display: inline-block;
}

.booking-error, .booking-notice {
  color: #7d391a;
  background: #fff8f1;
  border: 1px solid #efc5a7;
  border-radius: 8px;
  margin-top: 16px;
  padding: 14px;
  font-size: 13px;
  line-height: 1.6;
}

.booking-confirmation {
  background: #eef4e9;
  border: 1px solid #bdd0bd;
  border-radius: 14px;
  gap: 13px;
  padding: 24px;
  display: flex;
}

.booking-confirmation > svg {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
}

.booking-confirmation h3 {
  font: 400 28px/1.2 var(--sf-font-heading);
  margin: 12px 0;
}

.booking-confirmation-date {
  text-transform: capitalize;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}

.booking-confirmation .equipment-button {
  margin-top: 18px;
  display: flex;
}

.booking-confirmation .booking-link {
  display: block;
}

.equipment-checkout-shell {
  background: var(--sf-color-background);
  min-height: 100vh;
}

.checkout-wordmark {
  font: 400 29px var(--sf-font-heading);
  color: var(--sf-color-foreground);
}

.equipment-checkout-grid {
  grid-template-columns: minmax(0, 1fr) 370px;
  align-items: start;
  gap: 52px;
  max-width: 1248px;
  margin: auto;
  padding: 48px 28px 80px;
  display: grid;
}

.equipment-checkout {
  min-width: 0;
}

.checkout-intro h1 {
  font: 400 clamp(30px, 3vw, 42px) / 1.16 var(--sf-font-heading);
  letter-spacing: -.025em;
  margin: 16px 0;
}

.checkout-intro > p {
  color: var(--sf-color-muted);
  font-size: 13px;
  line-height: 1.8;
}

.checkout-progress {
  margin: 10px 0 8px;
  padding: 25px 0;
  display: flex;
}

.checkout-progress li {
  color: var(--sf-color-muted);
  flex: 1;
  align-items: center;
  gap: 9px;
  font-size: 12px;
  display: flex;
}

.checkout-progress li > span {
  border: 1px solid var(--sf-color-border);
  border-radius: 50%;
  place-items: center;
  width: 25px;
  height: 25px;
  font-size: 10px;
  display: grid;
}

.checkout-progress li[aria-current="step"] {
  color: var(--sf-color-brand);
  font-weight: 600;
}

.checkout-progress li[aria-current="step"] > span {
  background: var(--sf-color-brand);
  color: #fff;
  border-color: var(--sf-color-brand);
}

.checkout-panel {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 14px;
  margin-bottom: 18px;
  padding: 25px;
}

.checkout-section-title {
  align-items: center;
  gap: 12px;
  display: flex;
}

.checkout-section-title > span {
  color: var(--sf-color-muted);
  font-size: 10px;
}

.checkout-section-title h2 {
  font-size: 16px;
  font-weight: 600;
}

.checkout-text-button {
  white-space: nowrap;
  margin-left: auto;
  font-size: 11px;
  text-decoration: underline;
}

.checkout-delivery-options {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 20px;
  display: grid;
}

.checkout-delivery-card {
  text-align: left;
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 10px;
  flex-direction: column;
  gap: 8px;
  padding: 15px;
  display: flex;
}

.checkout-choice-icon {
  align-items: center;
  width: 100%;
  margin-bottom: 5px;
  display: flex;
}

.checkout-choice-icon > svg {
  width: 21px;
  height: 21px;
}

.checkout-delivery-card strong {
  font-size: 13px;
}

.checkout-delivery-card > span:not(.checkout-choice-icon), .checkout-delivery-card small {
  color: var(--sf-color-muted);
  font-size: 11px;
  line-height: 1.6;
}

.checkout-delivery-card small {
  margin-top: auto;
}

.checkout-explainer {
  color: var(--sf-color-muted);
  align-items: start;
  gap: 10px;
  margin-top: 18px;
  font-size: 12px;
  line-height: 1.8;
  display: flex;
}

.checkout-explainer > svg {
  flex: 0 0 18px;
  height: 18px;
  margin-top: 3px;
}

.checkout-address-summary {
  background: var(--sf-color-background);
  border-radius: 9px;
  margin-top: 20px;
  padding: 16px;
  font-size: 13px;
  line-height: 1.9;
}

.checkout-form-help {
  color: var(--sf-color-muted);
  margin-bottom: 20px;
  font-size: 12px;
  line-height: 1.7;
}

.checkout-form-help a {
  text-decoration: underline;
}

.checkout-details form label, .checkout-details legend {
  font-size: 12px;
}

.checkout-details input:not([type="radio"]):not([type="checkbox"]) {
  background: #fff;
  border-radius: 7px;
  height: 46px;
  font-size: 13px;
}

.checkout-details input[type="radio"], .checkout-details input[type="checkbox"] {
  accent-color: var(--sf-color-brand);
}

.checkout-payment {
  padding: 7px 0 24px;
}

.checkout-payment h2 {
  font-size: 16px;
  font-weight: 600;
}

.checkout-payment p {
  color: var(--sf-color-muted);
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.7;
}

.checkout-payment-note {
  text-align: center;
}

.checkout-visit {
  background: #eef4e9;
  border-radius: 10px;
  flex-wrap: wrap;
  align-items: start;
  gap: 10px;
  margin-top: 20px;
  padding: 16px;
  font-size: 12px;
  line-height: 1.7;
  display: flex;
}

.checkout-visit > svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.checkout-visit > div {
  flex: 1;
  min-width: 190px;
}

.checkout-visit h3 {
  margin-block: 5px;
  font-size: 14px;
  font-weight: 600;
}

.checkout-visit-date {
  text-transform: capitalize;
  margin-bottom: 5px;
  font-weight: 500;
}

.checkout-visit .booking-link {
  margin-top: 3px;
}

.equipment-checkout-summary {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 14px;
  margin-top: 4px;
  padding: 26px;
  position: sticky;
  top: 25px;
}

.equipment-checkout-summary > h2 {
  font: 400 29px var(--sf-font-heading);
  margin-top: 9px;
}

.checkout-summary-items {
  border-bottom: 1px solid var(--sf-color-border);
  margin-bottom: 20px;
  padding: 20px 0;
}

.checkout-summary-item {
  align-items: center;
  gap: 12px;
  margin-block: 10px;
  display: flex;
}

.checkout-summary-thumbnail, .checkout-service-icon {
  flex: 0 0 52px;
  height: 52px;
  width: 52px !important;
}

.checkout-service-icon {
  background: #eef4e9;
  border-radius: 9px;
  place-items: center;
  display: grid;
}

.checkout-summary-item > div:not(.checkout-summary-thumbnail) {
  flex: 1;
  min-width: 0;
}

.checkout-summary-item strong {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
  display: block;
}

.checkout-summary-item span:not(.checkout-service-icon) {
  color: var(--sf-color-muted);
  margin-top: 4px;
  font-size: 10px;
  display: block;
}

.checkout-summary-item b {
  white-space: nowrap;
  font-size: 12px;
  font-weight: 500;
}

.equipment-checkout-summary .txt-medium {
  font-size: 12px;
}

.checkout-discount {
  margin-top: 20px;
  font-size: 12px;
}

.checkout-discount > summary {
  cursor: pointer;
}

.checkout-demo-note {
  color: var(--sf-color-muted);
  border-top: 1px solid var(--sf-color-border);
  margin-top: 18px;
  padding-top: 18px;
  font-size: 10px;
  line-height: 1.7;
}

@media (max-width: 999px) {
  .equipment-checkout-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 25px;
    max-width: 700px;
    padding-top: 30px;
  }

  .equipment-checkout-summary {
    position: static;
  }
}

@media (max-width: 480px) {
  .booking-form {
    padding: 18px 14px;
  }

  .pdp-purchase-options > button {
    gap: 7px;
    padding: 13px 9px;
  }

  .pdp-purchase-options > button > svg {
    display: none;
  }

  .pdp-purchase-options small {
    font-size: 10px;
  }

  .booking-month .rdp-root {
    --rdp-day-width: 36px;
    --rdp-day_button-width: 35px;
    --rdp-day-height: 42px;
    --rdp-day_button-height: 39px;
  }

  .equipment-checkout-grid {
    padding: 26px 18px 50px;
  }

  .checkout-panel {
    padding: 20px 16px;
  }

  .checkout-delivery-card {
    padding: 12px;
  }

  .checkout-intro h1 {
    font-size: 33px;
  }

  .checkout-section-title {
    gap: 9px;
  }

  .checkout-section-title h2 {
    font-size: 15px;
  }

  .equipment-checkout-summary {
    padding: 23px 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pdp-booking *, .equipment-checkout * {
    transition: none !important;
    animation: none !important;
  }
}

/* [project]/apps/storefront/src/styles/equipment.css [app-client] (css) */
body[data-storefront="instalaciones"] {
  background: var(--sf-color-background);
  color: var(--sf-color-foreground);
}

body[data-storefront="instalaciones"] :focus-visible {
  outline: 3px solid var(--sf-color-focus);
  outline-offset: 3px;
}

body[data-storefront="instalaciones"] :is(input, select, textarea) {
  font-size: 16px;
}

body[data-storefront="instalaciones"] :is(button, a, summary, input, select) {
  touch-action: manipulation;
}

body[data-storefront="instalaciones"] :is(h1, h2, h3) {
  text-wrap: balance;
}

body:has(.equipment-menu-dialog[open]) {
  overflow: hidden;
}

.equipment-header {
  z-index: 50;
  background: var(--sf-color-background);
  border-bottom: 1px solid var(--sf-color-border);
  position: sticky;
  top: 0;
}

.equipment-announcement {
  background: var(--sf-color-brand);
  color: #fff;
  text-align: center;
  padding: 5px 16px;
  font-size: 11px;
  line-height: 18px;
}

.equipment-nav {
  align-items: center;
  gap: 8px;
  max-width: 1328px;
  min-height: 64px;
  margin: auto;
  padding: 8px 12px;
  display: flex;
}

.equipment-wordmark {
  font: 400 32px/1 var(--sf-font-heading);
  letter-spacing: -1px;
  min-width: 0;
  margin-right: auto;
}

.equipment-brand-logo {
  -o-object-fit: contain;
  object-fit: contain;
  width: 150px;
  max-width: 100%;
  height: auto;
  display: block;
}

.equipment-footer-brand {
  display: inline-block;
}

.equipment-footer-brand .equipment-brand-logo {
  width: 220px;
}

.equipment-business-details {
  border: 1px solid var(--sf-color-border);
  border-radius: var(--sf-radius-card);
  background: var(--sf-color-surface);
  gap: 16px;
  margin-block: 24px;
  padding: 24px;
  display: grid;
}

.equipment-business-details dt {
  color: var(--sf-color-muted);
  margin-bottom: 4px;
  font-size: 12px;
}

.equipment-business-details dd {
  overflow-wrap: anywhere;
}

.equipment-business-details a {
  color: var(--sf-color-brand);
  text-underline-offset: 3px;
  text-decoration: underline;
}

@media (min-width: 1000px) {
  .equipment-brand-logo {
    width: 220px;
  }
}

.equipment-nav-links, .equipment-account-link {
  display: none !important;
}

.equipment-nav-actions {
  align-items: center;
  gap: 0;
  display: flex;
}

.equipment-icon-button {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  display: inline-flex;
}

.equipment-icon-button:hover {
  background: var(--sf-color-surface);
}

.equipment-icon-button svg {
  width: 21px;
  height: 21px;
}

.equipment-nav [data-testid="nav-cart-link"] {
  gap: 5px;
  padding-inline: 5px;
}

.equipment-mobile-search {
  z-index: 45;
  margin: 14px 16px 0;
  position: relative;
}

.equipment-desktop-search {
  display: none;
}

.equipment-menu-dialog {
  background: var(--sf-color-background);
  width: min(90vw, 420px);
  max-width: none;
  height: 100dvh;
  max-height: none;
  color: var(--sf-color-foreground);
  border: 0;
  margin: 0;
  padding: 0;
}

.equipment-menu-dialog::backdrop {
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  background: #0f231d7a;
}

.equipment-menu-content {
  padding: 24px 20px max(24px, env(safe-area-inset-bottom));
}

.equipment-menu-heading {
  align-items: center;
  gap: 8px;
  margin-bottom: 22px;
  display: flex;
}

.equipment-menu-heading h2 {
  font: 400 29px/1.15 var(--sf-font-heading);
  flex: 1;
}

.equipment-menu-dialog nav a {
  border-bottom: 1px solid var(--sf-color-border);
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  min-height: 60px;
  font-size: 16px;
  display: flex;
}

.equipment-menu-dialog nav svg {
  flex-shrink: 0;
}

.equipment-menu-help {
  background: var(--sf-color-surface);
  border-radius: 12px;
  margin-top: 30px;
  padding: 20px;
}

.equipment-menu-help p {
  color: var(--sf-color-muted);
  margin-bottom: 12px;
  font-size: 13px;
}

.equipment-menu-help a {
  align-items: center;
  min-height: 46px;
  font-size: 15px;
  display: flex;
}

.equipment-eyebrow {
  font: 600 10px/1.5 var(--sf-font-sans);
  letter-spacing: .13em;
  display: block;
}

.equipment-hero {
  max-width: 1600px;
  margin: auto;
  display: grid;
}

.equipment-hero-copy {
  padding: 30px 20px 26px;
}

.equipment-hero h1 {
  font: 400 clamp(38px, 10vw, 52px) / 1.06 var(--sf-font-heading);
  letter-spacing: -.045em;
  white-space: pre-line;
  margin: 14px 0 18px;
}

.equipment-hero-copy > p {
  max-width: 430px;
  color: var(--sf-color-muted);
  margin-bottom: 22px;
  font-size: 15px;
  line-height: 1.7;
}

.equipment-hero-actions {
  gap: 2px;
  display: grid;
}

.equipment-button {
  background: var(--sf-color-brand);
  color: #fff;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: 16px;
  min-height: 50px;
  padding: 13px 20px;
  font-size: 14px;
  font-weight: 600;
  transition: background .2s;
  display: inline-flex;
}

.equipment-button:hover {
  background: var(--sf-color-brand-hover);
}

.equipment-button-plain {
  color: var(--sf-color-foreground);
  background: none;
}

.equipment-button-plain:hover {
  background: none;
  text-decoration: underline;
}

.equipment-hero-reassurance {
  display: none;
}

.equipment-hero-photo {
  border-radius: 16px;
  min-height: 260px;
  margin: 0 16px;
  position: relative;
  overflow: hidden;
}

.equipment-photo-caption {
  background: #fcfbf7f5;
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  padding: 12px;
  font-size: 12px;
  display: flex;
  position: absolute;
  bottom: 14px;
  left: 14px;
  right: 14px;
}

.equipment-photo-caption > span {
  flex-shrink: 0;
}

.equipment-photo-caption p {
  color: var(--sf-color-muted);
  margin-top: 3px;
  font-size: 11px;
}

.equipment-benefits {
  border-bottom: 1px solid var(--sf-color-border);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 22px 12px;
  display: grid;
}

.equipment-benefits span {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  line-height: 1.5;
  display: flex;
}

.equipment-benefits svg {
  width: 23px;
  height: 23px;
  color: var(--sf-color-brand);
}

.equipment-section {
  max-width: 1328px;
  margin: auto;
  padding: 42px 16px;
}

.equipment-section.pt-0 {
  padding-top: 0;
}

.equipment-section-heading {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  gap: 12px;
  margin-bottom: 22px;
  display: flex;
}

.equipment-section-heading h2, .equipment-heading {
  font: 400 31px/1.14 var(--sf-font-heading);
  letter-spacing: -.025em;
  max-width: 560px;
  margin-top: 10px;
}

.equipment-text-link {
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding-block: 10px;
  font-size: 14px;
  display: inline-flex;
}

.equipment-text-link:hover {
  text-decoration: underline;
}

.equipment-category-grid {
  gap: 12px;
  display: grid;
}

.equipment-category {
  -moz-column-gap: 16px;
  background: var(--sf-color-surface);
  border-radius: 14px;
  grid-template-columns: 84px minmax(0, 1fr);
  column-gap: 16px;
  padding: 14px;
  display: grid;
  overflow: hidden;
}

.equipment-category > span {
  color: var(--sf-color-muted);
  grid-column: 2;
  align-self: end;
  font-size: 11px;
}

.equipment-category > div:first-of-type {
  mix-blend-mode: multiply;
  grid-area: 1 / 1 / 3;
  margin: 0;
}

.equipment-category > div:last-of-type {
  grid-column: 2;
  align-items: center;
}

.equipment-category h3 {
  font: 400 23px/1.12 var(--sf-font-heading);
}

.equipment-category svg {
  flex-shrink: 0;
}

.equipment-product-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px 12px;
  display: grid;
}

.equipment-card {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.equipment-card-image {
  background: var(--sf-color-surface);
  border-radius: 14px;
  position: relative;
  overflow: hidden;
}

.equipment-card-badge {
  background: #fffffff5;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  gap: 5px;
  padding: 6px 4px;
  font-size: 10px;
  font-weight: 500;
  display: flex;
  position: absolute;
  bottom: 8px;
  left: 8px;
  right: 8px;
}

.equipment-card-badge svg {
  flex-shrink: 0;
  width: 13px;
  height: 13px;
}

.equipment-card-arrow {
  display: none;
}

.equipment-card-copy {
  padding-top: 12px;
}

.equipment-card-copy :is(h2, h3) {
  min-height: 42px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  text-wrap: initial !important;
}

.equipment-card-copy > p:first-of-type {
  margin-top: 8px;
  font-size: 18px;
}

.equipment-card-copy > p:last-of-type {
  font-size: 11px;
}

.equipment-category-filters {
  scroll-snap-type: x proximity;
  gap: 8px;
  margin: 22px 0 16px;
  padding: 6px 2px 12px;
  display: flex;
  overflow-x: auto;
}

.equipment-category-filters a {
  scroll-snap-align: start;
  flex-shrink: 0;
  align-items: center;
  min-height: 44px;
  font-size: 13px;
  display: inline-flex;
}

.equipment-installation {
  background: var(--sf-color-brand);
  color: #fff;
  gap: 24px;
  padding: 40px 20px;
  display: grid;
}

.equipment-installation h2 {
  font: 400 34px/1.14 var(--sf-font-heading);
  letter-spacing: -.025em;
  margin: 16px 0;
}

.equipment-installation p {
  color: #d3dfd4;
  font-size: 14px;
  line-height: 1.8;
}

.equipment-installation .equipment-button {
  background: var(--sf-color-accent);
  color: var(--sf-color-on-brand);
  margin-top: 22px;
}

.equipment-installation li {
  border-bottom: 1px solid #ffffff30;
  gap: 18px;
  padding: 20px 0;
  display: flex;
}

.equipment-installation li > span {
  font: 400 26px var(--sf-font-heading);
  color: var(--sf-color-on-brand);
}

.equipment-installation h3 {
  margin-bottom: 7px;
  font-size: 16px;
}

.equipment-faq {
  border-bottom: 1px solid var(--sf-color-border);
}

.equipment-faq summary {
  cursor: pointer;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 0;
  font-size: 15px;
  line-height: 1.5;
  list-style: none;
  display: flex;
}

.equipment-faq summary::-webkit-details-marker {
  display: none;
}

.equipment-faq p {
  color: var(--sf-color-muted);
  padding-bottom: 20px;
  font-size: 14px;
  line-height: 1.8;
}

.equipment-footer {
  background: var(--sf-color-surface);
  padding: 36px 20px 24px;
}

.equipment-footer-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 18px;
  display: grid;
}

.equipment-footer-grid > div:first-child {
  border-bottom: 1px solid var(--sf-color-border);
  grid-column: 1 / -1;
  padding-bottom: 24px;
}

.equipment-footer h3 {
  letter-spacing: .06em;
  margin-bottom: 10px;
  font-size: 11px;
  font-weight: 600;
}

.equipment-footer li {
  color: var(--sf-color-muted);
  font-size: 13px;
}

.equipment-footer li a {
  align-items: center;
  min-height: 44px;
  line-height: 1.5;
  display: inline-flex;
}

.equipment-footer a:hover {
  text-decoration: underline;
}

.equipment-info {
  max-width: 850px;
  margin: auto;
  padding: 36px 20px;
}

.equipment-info h1 {
  font: 400 36px/1.1 var(--sf-font-heading);
  margin-bottom: 24px;
}

.equipment-info h2 {
  font: 400 26px var(--sf-font-heading);
  margin: 30px 0 16px;
}

.equipment-info p {
  color: var(--sf-color-muted);
  margin-bottom: 16px;
  line-height: 1.8;
}

.equipment-pdp {
  padding-top: 12px;
  padding-bottom: 110px;
}

.equipment-breadcrumb {
  white-space: nowrap;
  color: var(--sf-color-muted);
  align-items: center;
  gap: 8px;
  min-height: 32px;
  margin-bottom: 12px;
  font-size: 11px;
  display: flex;
  overflow: hidden;
}

.equipment-breadcrumb a {
  align-items: center;
  min-height: 32px;
  display: inline-flex;
}

.equipment-breadcrumb > span:last-child {
  text-overflow: ellipsis;
  overflow: hidden;
}

.equipment-pdp-grid {
  gap: 22px;
  display: grid;
}

.equipment-pdp-media {
  background: var(--sf-color-surface);
  border-radius: 16px;
  overflow: hidden;
}

.equipment-pdp-media > [role="img"] {
  max-width: 250px;
  margin-inline: auto;
}

.equipment-pdp-image-note {
  color: var(--sf-color-muted);
  margin-top: 8px;
  font-size: 10px;
}

.equipment-pdp-title {
  font: 400 30px/1.12 var(--sf-font-heading);
  letter-spacing: -.025em;
  margin: 10px 0 16px;
}

.equipment-pdp [data-testid="product-price"] {
  font-size: 27px;
  font-weight: 600;
}

.equipment-price-meta {
  color: var(--sf-color-muted);
  font-size: 12px;
}

.booking-added {
  color: var(--sf-color-brand);
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-size: 13px;
  display: flex;
}

.booking-steps {
  border-block: 1px solid var(--sf-color-border);
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 20px;
  padding-block: 14px;
  display: flex;
}

.booking-steps li {
  color: var(--sf-color-muted);
  align-items: center;
  gap: 5px;
  font-size: 11px;
  display: flex;
}

.booking-steps li > span {
  border: 1px solid var(--sf-color-border);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  width: 21px;
  height: 21px;
  font-size: 10px;
  display: grid;
}

.booking-steps li[aria-current="step"] {
  color: var(--sf-color-brand);
  font-weight: 600;
}

.booking-steps li[aria-current="step"] > span, .booking-steps li[data-complete="true"] > span {
  background: var(--sf-color-brand);
  color: #fff;
  border-color: var(--sf-color-brand);
}

.equipment-product-detail {
  border-top: 1px solid var(--sf-color-border);
  margin-top: 20px;
}

.equipment-product-detail summary {
  cursor: pointer;
  padding-block: 18px;
  font-size: 15px;
  font-weight: 600;
}

.equipment-product-detail p {
  color: var(--sf-color-muted);
  padding-bottom: 14px;
  font-size: 14px;
  line-height: 1.8;
}

.pdp-booking {
  margin-top: 16px;
  scroll-margin-top: 108px;
}

.pdp-purchase-options {
  gap: 8px;
}

.pdp-purchase-options > button {
  grid-template-columns: 1fr auto;
  gap: 8px;
  min-height: 102px;
  padding: 14px 12px;
  display: grid;
}

.pdp-purchase-options > button > svg {
  grid-column: 1;
  width: 22px;
  height: 22px;
  display: block;
}

.pdp-purchase-options > button > span {
  grid-area: 2 / 1 / auto / -1;
}

.pdp-purchase-options > button > i {
  grid-area: 1 / 2;
  width: 18px;
  height: 18px;
}

.pdp-purchase-options strong {
  font-size: 14px;
}

.pdp-purchase-options small {
  font-size: 12px;
  line-height: 1.5;
}

.booking-form {
  border-radius: 14px;
  padding: 20px 14px;
}

.booking-heading h3 {
  font-size: 29px;
}

.booking-heading p, .booking-small {
  font-size: 13px;
}

.booking-label {
  font-size: 14px;
}

.booking-form :is(select, input) {
  border-radius: 10px;
  min-height: 50px;
  font-size: 16px;
}

.booking-calendar {
  margin-top: 12px;
  padding-block: 16px;
}

.booking-month .rdp-root {
  --rdp-day-width: 100%;
  --rdp-day-height: 44px;
  --rdp-day_button-width: 100%;
  --rdp-day_button-height: 44px;
  --rdp-disabled-opacity: .45;
}

.booking-month .rdp-month_grid {
  table-layout: fixed;
}

.booking-month .rdp-day_button {
  border-radius: 10px;
  max-width: 44px;
  margin: 2px auto;
  font-size: 14px;
}

.booking-month .rdp-nav button, .booking-month .rdp-button_next, .booking-month .rdp-button_previous {
  width: 44px;
  height: 44px;
}

.booking-month .rdp-weekday {
  padding-block: 12px;
  font-size: 11px;
}

.booking-legend {
  flex-wrap: wrap;
  gap: 6px;
}

.booking-legend small {
  font-size: 11px;
}

.booking-times > p {
  font-size: 12px;
}

.booking-time-options button {
  min-height: 76px;
  padding: 14px 8px;
}

.booking-time-options strong {
  font-size: 14px;
}

.booking-time-options span {
  font-size: 12px;
}

.booking-time-placeholder {
  font-size: 13px;
}

.booking-primary, .checkout-primary {
  border-radius: 10px;
  min-height: 52px;
  font-size: 14px;
}

.booking-link, .booking-scope summary {
  min-height: 44px;
  padding-block: 12px;
  font-size: 13px;
}

.booking-confirmation {
  padding: 20px 16px;
}

.booking-confirmation > div {
  min-width: 0;
}

.equipment-purchase-dock {
  z-index: 40;
  border-top: 1px solid var(--sf-color-border);
  padding: 12px 16px max(12px, env(safe-area-inset-bottom));
  background: #fcfbf7fa;
  align-items: center;
  gap: 12px;
  display: flex;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  box-shadow: 0 -4px 24px #14281e0d;
}

.equipment-purchase-dock > div {
  flex: 1;
  min-width: 0;
}

.equipment-purchase-dock span {
  color: var(--sf-color-muted);
  margin-bottom: 3px;
  font-size: 11px;
  display: block;
}

.equipment-purchase-dock strong {
  font-size: 20px;
  display: block;
}

.equipment-purchase-dock .equipment-button {
  flex-shrink: 0;
  min-width: 150px;
}

.equipment-purchase-dock button:disabled {
  opacity: .5;
}

.equipment-pdp [data-testid="option-button"] {
  min-height: 46px;
  font-size: 14px;
}

.equipment-search {
  width: 100%;
  position: relative;
}

.equipment-search form {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 12px;
  align-items: center;
  gap: 2px;
  padding: 4px 5px 4px 12px;
  display: flex;
}

.equipment-search form:focus-within {
  border-color: var(--sf-color-brand);
  box-shadow: 0 0 0 1px var(--sf-color-brand);
}

.equipment-search form > svg {
  width: 19px;
  height: 19px;
  color: var(--sf-color-muted);
  flex-shrink: 0;
}

.equipment-search input {
  width: 100%;
  min-width: 0;
  height: 44px;
  box-shadow: none;
  background: none;
  border: 0;
  border-radius: 8px;
  flex: 1;
  padding: 10px 8px;
  outline: none !important;
}

.equipment-search input::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.equipment-search-submit {
  background: var(--sf-color-brand);
  color: #fff;
  border-radius: 9px;
  flex-shrink: 0;
  place-items: center;
  width: 44px;
  height: 44px;
  display: grid;
}

.equipment-search-suggestions {
  top: calc(100% + 8px);
  z-index: 46;
  overscroll-behavior: contain;
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 14px;
  max-height: min(560px, 58dvh);
  position: absolute;
  inset-inline: 0;
  overflow-y: auto;
  box-shadow: 0 12px 32px #14281e21;
}

.equipment-search-status {
  color: var(--sf-color-muted);
  padding: 14px 14px 8px;
  font-size: 12px;
  line-height: 1.6;
}

.equipment-search-suggestion {
  border-bottom: 1px solid var(--sf-color-border);
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 8px 12px;
  padding: 12px;
  display: grid;
}

.equipment-search-suggestion:hover, .equipment-search-suggestion[aria-selected="true"] {
  background: var(--sf-color-surface);
}

.equipment-search-thumbnail {
  grid-row: 1 / 3;
  height: 48px;
  width: 48px !important;
}

.equipment-search-suggestion strong {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  display: block;
}

.equipment-search-suggestion small {
  color: var(--sf-color-muted);
  margin-top: 3px;
  font-size: 11px;
  display: block;
}

.equipment-search-suggestion b {
  grid-column: 2;
  font-size: 14px;
}

.equipment-search-all {
  color: var(--sf-color-brand);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 16px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.equipment-search-page {
  min-height: 65vh;
}

.equipment-search-page > h1 {
  font: 400 34px/1.14 var(--sf-font-heading);
  letter-spacing: -.025em;
  margin: 12px 0 24px;
}

.equipment-search-page > .equipment-search {
  z-index: 10;
  max-width: 680px;
}

.equipment-search-ideas {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-size: 13px;
  display: flex;
}

.equipment-search-ideas > span {
  color: var(--sf-color-muted);
}

.equipment-search-ideas a {
  text-underline-offset: 4px;
  align-items: center;
  min-height: 44px;
  padding: 8px;
  text-decoration: underline;
  display: inline-flex;
}

.equipment-search-filters {
  border-block: 1px solid var(--sf-color-border);
  flex-wrap: wrap;
  align-items: end;
  gap: 14px 20px;
  margin: 24px 0;
  padding-block: 18px;
  display: flex;
}

.equipment-search-filters label {
  font-size: 13px;
}

.equipment-search-filters label:first-of-type {
  flex: 1;
  min-width: 150px;
}

.equipment-search-filters select {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 9px;
  width: 100%;
  min-height: 46px;
  margin-top: 8px;
  padding: 8px 12px;
  display: block;
}

.equipment-search-stock {
  align-items: center;
  gap: 8px;
  min-height: 46px;
  display: flex;
}

.equipment-search-stock input {
  width: 20px;
  height: 20px;
  accent-color: var(--sf-color-brand);
}

.equipment-search-count {
  color: var(--sf-color-muted);
  margin-bottom: 22px;
  font-size: 13px;
}

.equipment-search-empty {
  border: 1px solid var(--sf-color-border);
  background: var(--sf-color-surface);
  border-radius: 16px;
  margin-top: 24px;
  padding: 28px 20px;
}

.equipment-search-empty h2 {
  font: 400 28px/1.2 var(--sf-font-heading);
}

.equipment-search-empty p {
  margin: 12px 0 20px;
  font-size: 14px;
  line-height: 1.8;
}

.equipment-pagination {
  justify-content: center;
  align-items: center;
  gap: 24px;
  margin-top: 32px;
  font-size: 14px;
  display: flex;
}

.equipment-pagination a {
  padding: 14px;
}

.equipment-checkout-grid {
  padding-inline: 16px;
}

.checkout-details input:not([type="radio"]):not([type="checkbox"]) {
  min-height: 50px;
  font-size: 16px;
}

.checkout-details form label, .checkout-details legend {
  font-size: 14px;
}

:is(.checkout-details label:has(input[type="checkbox"]), .checkout-details label:has(input[type="radio"])) {
  min-height: 44px;
}

.checkout-summary-item strong, .checkout-summary-item b {
  font-size: 13px;
}

.checkout-summary-item span:not(.checkout-service-icon) {
  font-size: 12px;
}

@media (max-width: 999px) {
  body[data-storefront="instalaciones"] .cart-sign-in {
    gap: 14px;
  }

  body[data-storefront="instalaciones"] .cart-sign-in h2 {
    font-size: 20px;
    line-height: 1.3;
  }

  body[data-storefront="instalaciones"] .cart-sign-in p {
    font-size: 13px;
    line-height: 1.6;
  }

  body[data-storefront="instalaciones"] .cart-sign-in button {
    white-space: nowrap;
    min-height: 44px;
    font-size: 14px;
  }

  body:has(.equipment-purchase-dock) .equipment-footer {
    padding-bottom: 110px;
  }

  body[data-storefront="instalaciones"] [data-testid="cart-container"] {
    padding-inline: 16px;
  }

  body[data-storefront="instalaciones"] [data-testid="cart-container"] > .grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  body[data-storefront="instalaciones"] [data-testid="cart-container"] table, body[data-storefront="instalaciones"] [data-testid="cart-container"] tbody {
    width: 100%;
    display: block;
  }

  body[data-storefront="instalaciones"] [data-testid="cart-container"] thead {
    display: none;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] {
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 14px 12px;
    padding: 20px 0;
    display: grid;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td {
    width: auto;
    padding: 0;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td:first-child {
    grid-area: 1 / 1 / 3;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td:first-child a {
    width: 64px;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td:nth-child(2) {
    grid-column: 2 / 4;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td:nth-child(3) {
    grid-column: 2;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td:nth-child(4) {
    display: none;
  }

  body[data-storefront="instalaciones"] [data-testid="product-row"] > td:last-child {
    grid-column: 3;
    align-self: center;
  }

  body[data-storefront="instalaciones"] [data-testid="product-select-button"] {
    min-height: 44px;
    padding: 6px 22px 6px 10px;
    font-size: 16px;
  }

  body[data-storefront="instalaciones"] [data-testid="product-delete-button"] {
    justify-content: center;
    align-items: center;
    min-width: 44px;
    min-height: 44px;
  }
}

@media (min-width: 700px) {
  .equipment-section {
    padding: 56px 28px;
  }

  .equipment-hero-copy {
    padding: 40px 32px;
  }

  .equipment-hero-actions {
    gap: 14px;
    display: flex;
  }

  .equipment-hero-photo {
    min-height: 400px;
    margin-inline: 28px;
  }

  .equipment-category-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
  }

  .equipment-category {
    padding: 22px;
    display: block;
  }

  .equipment-category > div:first-of-type {
    width: 80%;
    margin: 10px auto;
  }

  .equipment-category h3 {
    font-size: 26px;
  }

  .equipment-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px 22px;
  }

  .equipment-card-copy :is(h2, h3) {
    font-size: 16px;
  }

  .equipment-card-badge {
    padding: 7px 10px;
    font-size: 11px;
    inset: 12px auto auto 12px;
  }

  .equipment-pdp-media > [role="img"] {
    max-width: 380px;
  }

  .equipment-pdp-title {
    font-size: 38px;
  }

  .booking-form {
    padding: 24px;
  }
}

@media (min-width: 1000px) {
  .equipment-nav {
    gap: 30px;
    padding: 16px 32px;
  }

  .equipment-nav-links {
    gap: 24px;
    font-size: 14px;
    display: flex !important;
  }

  .equipment-account-link {
    display: inline-flex !important;
  }

  .equipment-mobile-menu, .equipment-mobile-search {
    display: none;
  }

  .equipment-nav-actions {
    gap: 8px;
  }

  .equipment-hero {
    grid-template-columns: 46% 54%;
    min-height: 580px;
  }

  .equipment-hero-copy {
    padding: 60px max(30px, 50vw - 640px);
    align-self: center;
    padding-right: 38px;
  }

  .equipment-hero h1 {
    margin-block: 24px;
    font-size: clamp(48px, 4.8vw, 76px);
  }

  .equipment-hero-photo {
    border-radius: 0;
    min-height: 550px;
    margin: 0;
  }

  .equipment-hero-actions {
    flex-wrap: wrap;
  }

  .equipment-hero-reassurance {
    align-items: center;
    gap: 8px;
    margin-top: 32px;
    font-size: 12px;
    display: flex;
  }

  .equipment-photo-caption {
    padding: 16px;
    font-size: 14px;
    bottom: 28px;
    left: 28px;
    right: 28px;
  }

  .equipment-benefits {
    justify-content: center;
    gap: 8vw;
    padding: 24px;
    display: flex;
  }

  .equipment-benefits span {
    flex-direction: row;
    font-size: 13px;
  }

  .equipment-section {
    padding: 72px 32px;
  }

  .equipment-section-heading {
    margin-bottom: 32px;
  }

  .equipment-section-heading h2, .equipment-heading {
    font-size: 43px;
  }

  .equipment-featured-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .equipment-category-filters {
    flex-wrap: wrap;
    overflow: visible;
  }

  .equipment-card-arrow {
    background: #fff;
    border-radius: 50%;
    place-items: center;
    width: 40px;
    height: 40px;
    display: grid;
    position: absolute;
    bottom: 12px;
    right: 12px;
  }

  .equipment-installation {
    grid-template-columns: 1fr 1fr;
    gap: 10%;
    padding: 70px max(32px, 50vw - 632px);
  }

  .equipment-installation h2 {
    font-size: 46px;
  }

  .equipment-footer {
    padding: 60px max(32px, 50vw - 632px) 24px;
  }

  .equipment-footer-grid {
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 32px;
  }

  .equipment-footer-grid > div:first-child {
    border: 0;
    grid-column: auto;
    padding: 0;
  }

  .equipment-info {
    padding: 64px 24px;
  }

  .equipment-info h1 {
    font-size: 48px;
  }

  .equipment-pdp {
    padding-top: 28px;
  }

  .equipment-breadcrumb {
    margin-bottom: 24px;
  }

  .equipment-pdp-grid {
    grid-template-columns: 1.1fr 1fr;
    gap: 48px;
  }

  .equipment-pdp-media > [role="img"] {
    max-width: none;
  }

  .equipment-purchase-dock {
    display: none;
  }

  .equipment-search-page > h1 {
    font-size: 46px;
  }

  .equipment-search-filters label:first-of-type {
    flex: 0 0 220px;
  }

  .equipment-search-suggestion {
    grid-template-columns: 48px minmax(0, 1fr) auto;
  }

  .equipment-search-suggestion b {
    grid-area: 1 / 3;
  }

  .equipment-search-thumbnail {
    grid-row: 1;
  }
}

@media (min-width: 1200px) {
  .equipment-desktop-search {
    width: 255px;
    display: block;
  }

  .equipment-desktop-search .equipment-search-suggestions {
    width: 400px;
    left: auto;
  }

  .equipment-nav-actions > a[aria-label="Buscar productos"] {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .equipment-home *, .equipment-home :before {
    transition: none !important;
  }
}

/* [project]/apps/storefront/src/styles/credit.css [app-client] (css) */
body[data-storefront="instalaciones"] .credit-checkout, .credit-account {
  color: var(--color-foreground, #172524);
}

.credit-checkout {
  background: #f2f7f5;
  border: 1px solid #cdded6;
  border-radius: 20px;
  gap: 18px;
  padding: 24px;
  display: grid;
}

.credit-checkout p, .credit-account p {
  line-height: 1.7;
}

.credit-heading-row {
  align-items: center;
  gap: 14px;
  display: flex;
}

.credit-heading-row h2 {
  font-size: 19px;
  font-weight: 650;
  line-height: 1.35;
}

.credit-kicker {
  letter-spacing: .12em;
  color: #526b60;
  font-size: 10px;
  font-weight: 650;
}

.credit-icon {
  color: #1c5949;
  background: #dcebe3;
  border-radius: 12px;
  place-items: center;
  min-width: 44px;
  height: 44px;
  display: grid;
}

.credit-checkout-totals {
  border-block: 1px solid #cdded6;
  gap: 12px;
  padding: 18px 0;
  display: grid;
}

.credit-checkout-totals div, .credit-balance dl div {
  justify-content: space-between;
  gap: 12px;
  font-size: 14px;
  display: flex;
}

.credit-checkout-totals dd {
  text-align: right;
  font-weight: 600;
}

.credit-checkout-totals .credit-emphasis {
  font-size: 17px;
}

.credit-small {
  color: #51615a;
  font-size: 12px;
  line-height: 1.7;
}

.credit-terms {
  border-block: 1px solid #d6dfda;
  padding: 6px 0;
  font-size: 13px;
}

.credit-terms summary {
  cursor: pointer;
  min-height: 44px;
  padding: 12px 0;
  font-weight: 600;
}

.credit-terms p {
  padding-bottom: 12px;
}

.credit-accept {
  cursor: pointer;
  align-items: flex-start;
  gap: 12px;
  min-height: 44px;
  font-size: 14px;
  line-height: 1.6;
  display: flex;
}

.credit-accept input {
  accent-color: #1c5949;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  margin-top: 2px;
}

.credit-confirm {
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 52px;
}

.credit-email-verification {
  background: #f4f8f5;
  border: 1px solid #cadbd3;
  border-radius: 16px;
  gap: 12px;
  padding: 20px;
  font-size: 14px;
  line-height: 1.6;
  display: grid;
}

.credit-email-verification p {
  overflow-wrap: anywhere;
}

.credit-email-verification label {
  font-weight: 600;
}

.credit-email-verification input {
  color: #173f32;
  letter-spacing: .2em;
  font-variant-numeric: tabular-nums;
  background: #fff;
  border: 1px solid #8ba397;
  border-radius: 10px;
  width: 100%;
  min-width: 0;
  min-height: 56px;
  padding: 12px 16px;
  font-size: 24px;
}

.credit-email-verification input:focus-visible {
  outline-offset: 3px;
  outline: 3px solid #24654e;
}

.credit-email-verification button:disabled {
  opacity: .6;
  cursor: default;
}

.credit-link {
  color: #175947;
  text-underline-offset: 4px;
  align-items: center;
  min-height: 44px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: underline;
  display: inline-flex;
}

.credit-notice {
  color: #67491c;
  background: #fff7e7;
  border: 1px solid #e4d3a9;
  border-radius: 12px;
  padding: 16px;
  font-size: 14px;
  line-height: 1.6;
}

.credit-notice button {
  min-height: 44px;
  text-decoration: underline;
}

.credit-account {
  gap: 24px;
  width: 100%;
  max-width: 880px;
  display: grid;
}

.credit-account h1 {
  font-family: Georgia, serif;
  font-size: clamp(28px, 5vw, 42px);
  line-height: 1.2;
}

.credit-account h2 {
  font-size: 19px;
  font-weight: 600;
}

.credit-account-title {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex;
}

.credit-status {
  color: #20583e;
  background: #e0eee6;
  border-radius: 20px;
  padding: 6px 12px;
  font-size: 12px;
}

.credit-status-warning {
  color: #705019;
  background: #fff0d3;
}

.credit-balance {
  color: #fff;
  background: #1b4c3e;
  border-radius: 20px;
  gap: 24px;
  padding: 28px;
  display: grid;
}

.credit-balance > div > strong {
  letter-spacing: -.03em;
  margin: 8px 0;
  font-size: clamp(32px, 7vw, 48px);
  font-weight: 550;
  line-height: 1.3;
  display: block;
}

.credit-balance span, .credit-balance p {
  color: #d8e7df;
  font-size: 13px;
}

.credit-balance dl {
  border-top: 1px solid #ffffff40;
  gap: 14px;
  padding-top: 20px;
  display: grid;
}

.credit-section-heading {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  display: flex;
}

.credit-section-heading span {
  color: #526b60;
  font-size: 12px;
}

.credit-debts, .credit-movements {
  border: 1px solid #d6dfda;
  border-radius: 16px;
  overflow: hidden;
}

.credit-debt {
  border-bottom: 1px solid #d6dfda;
  gap: 12px;
  padding: 22px;
  display: grid;
}

.credit-debt:last-child, .credit-movements article:last-child {
  border-bottom: 0;
}

.credit-debt h3 {
  margin: 4px 0;
  font-size: 17px;
  font-weight: 600;
}

.credit-debt p {
  color: #526b60;
  font-size: 12px;
}

.credit-debt > div > strong {
  font-size: 23px;
  display: block;
}

.credit-empty, .credit-how-pay {
  background: #f3f6f3;
  border-radius: 16px;
  gap: 12px;
  padding: 24px;
  display: grid;
}

.credit-empty h3 {
  font-size: 20px;
  font-weight: 600;
}

.credit-movements article {
  border-bottom: 1px solid #d6dfda;
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  padding: 18px;
  font-size: 13px;
  display: flex;
}

.credit-movements article > div {
  overflow-wrap: anywhere;
  min-width: 0;
}

.credit-movements article > strong {
  white-space: nowrap;
}

.credit-movements small {
  color: #62756a;
  font-size: 11px;
}

.credit-order-summary {
  background: #eef6f1;
  border: 1px solid #cee0d5;
  border-radius: 16px;
  gap: 18px;
  margin: 20px 0 32px;
  padding: 24px;
  display: grid;
}

.credit-order-summary span {
  margin-bottom: 6px;
  font-size: 13px;
  display: block;
}

.credit-order-summary strong {
  font-size: 22px;
  font-weight: 600;
}

.credit-checkout :focus-visible, .credit-account :focus-visible {
  outline-offset: 4px;
  outline: 3px solid #23694f;
}

@media (min-width: 640px) {
  .credit-debt {
    grid-template-columns: 1fr auto;
    align-items: center;
  }

  .credit-debt > div:last-child {
    text-align: right;
  }

  .credit-balance {
    grid-template-columns: 1.3fr 1fr;
    align-items: center;
  }

  .credit-balance dl {
    border-top: 0;
    padding-top: 0;
  }

  .credit-order-summary {
    grid-template-columns: 1fr 1fr;
  }

  .credit-order-summary p {
    grid-column: 1 / -1;
  }
}

@media (max-width: 380px) {
  .credit-checkout, .credit-balance {
    padding: 18px;
  }

  .credit-heading-row h2 {
    font-size: 17px;
  }

  .credit-confirm {
    font-size: 13px;
  }
}

/* [project]/apps/storefront/src/styles/equipment-refinements.css [app-client] (css) */
body[data-storefront="instalaciones"] {
  --equipment-radius: 14px;
  --equipment-soft: color-mix(in srgb,
    var(--sf-color-brand) 5%,
    var(--sf-color-background));
}

body[data-storefront="instalaciones"] :is(.booking-primary, .checkout-primary, .credit-confirm) {
  background: var(--sf-color-brand);
  color: var(--sf-color-on-brand, white);
  min-height: 52px;
  box-shadow: none;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 600;
}

body[data-storefront="instalaciones"] :is(.booking-primary, .checkout-primary, .credit-confirm):hover:not(:disabled) {
  background: var(--sf-color-brand-hover);
}

body[data-storefront="instalaciones"] button:disabled {
  cursor: not-allowed;
}

body[data-storefront="instalaciones"] :is(.equipment-pdp-title, .checkout-intro h1, .booking-heading h3, .credit-heading-row h2, .equipment-pdp h2) {
  font-family: var(--sf-font-sans);
  letter-spacing: -.025em;
  font-weight: 600;
}

.equipment-eyebrow {
  font-size: 11px;
}

.equipment-quick-categories {
  gap: 8px;
  width: 100%;
  max-width: 1328px;
  margin: auto;
  padding: 12px 16px 0;
  display: flex;
  overflow-x: auto;
}

.equipment-quick-categories a {
  border: 1px solid var(--sf-color-border);
  white-space: nowrap;
  border-radius: 999px;
  flex: none;
  justify-content: center;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.equipment-quick-categories svg {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
}

.equipment-hero-copy {
  padding: 24px 20px 18px;
}

.equipment-hero h1 {
  margin: 10px 0 14px;
  font-size: clamp(34px, 8.8vw, 48px);
  line-height: 1.08;
}

.equipment-hero-copy > p {
  margin-bottom: 18px;
  font-size: 14px;
  line-height: 1.65;
}

.equipment-hero-actions {
  align-items: center;
  gap: 8px;
  display: flex;
}

.equipment-hero-actions .equipment-button {
  gap: 7px;
  padding: 12px 14px;
  font-size: 13px;
}

.equipment-hero-actions .equipment-button:first-child {
  flex: 1;
}

.equipment-hero-photo {
  min-height: 160px;
}

.equipment-photo-caption {
  inset-inline: 12px;
  width: fit-content;
  padding: 10px 12px;
  bottom: 12px;
}

.equipment-photo-caption p, .equipment-photo-caption > span {
  display: none;
}

.equipment-benefits {
  padding: 18px 12px;
}

.equipment-benefits span {
  font-size: 12px;
}

.equipment-home .equipment-section {
  padding-block: 32px;
}

.equipment-card {
  border: 1px solid var(--sf-color-border);
  background: var(--sf-color-surface);
  border-radius: 16px;
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

.equipment-card-image {
  border-radius: 0;
}

.equipment-card-copy {
  flex-direction: column;
  flex: 1;
  padding: 14px 12px;
  display: flex;
}

.equipment-card-copy h3 {
  font: 600 14px/1.45 var(--sf-font-sans);
  text-wrap: auto;
  min-height: 2.9em;
  margin: 6px 0;
}

.equipment-card-copy > p.equipment-card-stock {
  color: var(--sf-color-muted);
  margin-top: 0;
  font-size: 12px;
}

.equipment-card-stock[data-available="true"] {
  color: var(--sf-color-brand);
}

.equipment-card-stock[data-available="true"]:before {
  content: "";
  vertical-align: middle;
  background: currentColor;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  margin-right: 6px;
  display: inline-block;
}

.equipment-card-feature {
  color: var(--sf-color-muted);
  margin-bottom: 12px;
  font-size: 12px;
  line-height: 1.6;
}

.equipment-card-price {
  letter-spacing: -.02em;
  margin-top: auto;
  font-size: 19px;
  font-weight: 650;
}

.equipment-card-price > span {
  letter-spacing: 0;
  font-size: 12px;
  font-weight: 400;
  display: block;
}

.equipment-card-copy > p.equipment-card-tax {
  color: var(--sf-color-muted);
  margin-top: 3px;
  font-size: 12px;
}

.equipment-card-badge {
  padding: 6px 8px;
  font-size: 11px;
}

.equipment-card-arrow {
  display: none;
}

.equipment-catalogue-toolbar {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 12px;
  margin: 20px 0 16px;
  display: grid;
}

.equipment-filter-panel {
  border: 1px solid var(--sf-color-border);
  background: var(--sf-color-surface);
  border-radius: 12px;
  min-width: 0;
}

.equipment-filter-panel summary {
  cursor: pointer;
  min-height: 54px;
  padding: 16px 12px;
  font-size: 14px;
  font-weight: 600;
}

.equipment-filter-panel summary > span {
  background: var(--sf-color-brand);
  color: #fff;
  border-radius: 50%;
  padding: 2px 6px;
  font-size: 12px;
}

.equipment-filter-fields {
  gap: 8px;
  padding: 0 14px 14px;
  display: grid;
}

.equipment-filter-fields label {
  align-items: center;
  gap: 8px;
  min-height: 44px;
  font-size: 14px;
  display: flex;
}

.equipment-filter-fields input[type="checkbox"] {
  accent-color: var(--sf-color-brand);
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.equipment-filter-fields .equipment-filter-price {
  display: grid;
}

.equipment-filter-fields input[type="number"] {
  border: 1px solid var(--sf-color-border);
  border-radius: 8px;
  width: 100%;
  min-width: 0;
  height: 46px;
  padding: 8px;
}

.equipment-catalogue-sort {
  gap: 4px;
  font-size: 12px;
  display: grid;
}

.equipment-catalogue-sort select {
  border: 1px solid var(--sf-color-border);
  background: var(--sf-color-surface);
  border-radius: 8px;
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  padding: 8px;
}

.equipment-results-count {
  color: var(--sf-color-muted);
  margin: 12px 0 20px;
  font-size: 13px;
}

.equipment-load-more {
  margin: 30px auto 0;
  display: flex;
}

.equipment-product-grid {
  align-items: stretch;
}

.equipment-section.equipment-pdp {
  max-width: 1360px;
  padding: 20px 20px 100px;
}

.equipment-pdp .equipment-breadcrumb {
  margin-bottom: 20px;
  font-size: 11px;
}

.equipment-pdp .equipment-pdp-grid {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 26px;
  display: grid;
}

.equipment-pdp-visual, .equipment-pdp-summary {
  min-width: 0;
}

.equipment-pdp-heading .equipment-eyebrow {
  color: var(--sf-color-brand);
  letter-spacing: .12em;
  font-size: 11px;
}

.equipment-pdp .equipment-pdp-title {
  letter-spacing: -.025em;
  text-wrap: pretty;
  overflow-wrap: anywhere;
  margin: 10px 0 12px;
  font-size: 27px;
  font-weight: 600;
  line-height: 1.22;
}

.equipment-pdp-intro {
  color: var(--sf-color-muted);
  max-width: 64ch;
  font-size: 14px;
  line-height: 1.75;
}

.equipment-pdp-heading:after {
  content: "";
  background: var(--sf-color-brand);
  width: 44px;
  height: 3px;
  margin-top: 22px;
  display: block;
}

.equipment-pdp .equipment-pdp-purchase-card {
  background: none;
  border: 0;
  border-radius: 0;
  padding: 22px 0 0;
}

.equipment-pdp .equipment-pdp-purchase-card [data-testid="product-price"] {
  color: var(--sf-color-foreground);
  letter-spacing: -.03em;
  font-size: 34px;
  font-weight: 600;
  line-height: 1.2;
}

.equipment-pdp .equipment-price-meta {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  margin-top: 3px;
  font-size: 12px;
  line-height: 1.6;
  display: flex;
}

.equipment-stock-status {
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.equipment-stock-status:not(:empty):before {
  content: "";
  background: #89919d;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.equipment-stock-status[data-available="true"]:before {
  background: #227848;
}

.equipment-pdp .pdp-booking {
  border: 0;
  margin-top: 22px;
  padding-top: 0;
}

body[data-storefront="instalaciones"] .equipment-pdp .booking-primary {
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 50px;
  padding: 12px 18px;
  font-size: 14px;
  display: inline-flex;
}

.equipment-pdp .booking-primary svg {
  width: 18px;
  height: 18px;
}

.equipment-pdp .equipment-delivery-estimate {
  border: 1px solid var(--sf-color-border);
  border-radius: 4px;
  margin: 16px 0 0;
}

.equipment-pdp .equipment-delivery-estimate summary {
  padding: 15px 16px;
  font-size: 13px;
  font-weight: 500;
}

.equipment-pdp .equipment-delivery-estimate > div {
  padding: 0 16px 16px;
}

.equipment-pdp .booking-small {
  font-size: 12px;
  line-height: 1.6;
}

.equipment-pdp-meta-row {
  border-top: 1px solid var(--sf-color-border);
  color: var(--sf-color-muted);
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px 18px;
  margin-top: 12px;
  padding-top: 18px;
  font-size: 12px;
  line-height: 1.6;
  display: flex;
}

.equipment-pdp-meta-row strong {
  color: var(--sf-color-foreground);
  font-weight: 500;
}

.equipment-pdp-meta-row a:hover {
  color: var(--sf-color-brand);
  text-decoration: underline;
}

.equipment-pdp .equipment-pdp-media {
  background: #fff;
  border: 0;
  border-radius: 0;
  padding: 0;
  overflow: visible;
}

.equipment-gallery-stage {
  position: relative;
}

.equipment-pdp .equipment-gallery-main {
  aspect-ratio: auto;
  cursor: zoom-in;
  background: #fff;
  border-radius: 0;
  place-items: center;
  width: 100%;
  height: 330px;
  max-height: none;
  display: grid;
  position: relative;
  overflow: hidden;
}

.equipment-pdp .equipment-gallery-main > img {
  padding: 8px 20px 28px;
}

.equipment-pdp .equipment-gallery-main > [role="img"] {
  max-width: min(80%, 460px);
}

.equipment-gallery-zoom, .equipment-gallery-previous, .equipment-gallery-next {
  width: 38px;
  height: 38px;
  color: var(--sf-color-foreground);
  border: 1px solid var(--sf-color-border);
  background: #fffffff2;
  border-radius: 50%;
  place-items: center;
  display: grid;
  position: absolute;
}

.equipment-gallery-zoom {
  bottom: 10px;
  right: 10px;
}

.equipment-gallery-previous, .equipment-gallery-next {
  top: calc(50% - 19px);
}

.equipment-gallery-previous {
  left: 0;
}

.equipment-gallery-next {
  right: 0;
}

.equipment-gallery-stage svg {
  width: 18px;
  height: 18px;
}

.equipment-gallery-count {
  color: var(--sf-color-muted);
  letter-spacing: .05em;
  pointer-events: none;
  font-size: 11px;
  position: absolute;
  bottom: 18px;
  left: 50%;
  transform: translateX(-50%);
}

.equipment-pdp .equipment-gallery-thumbnails {
  scrollbar-width: thin;
  scrollbar-color: var(--sf-color-border) transparent;
  gap: 10px;
  padding: 12px 2px 6px;
  display: flex;
  overflow-x: auto;
}

.equipment-pdp .equipment-gallery-thumbnails button {
  border: 1px solid var(--sf-color-border);
  background: #fff;
  border-radius: 4px;
  flex-shrink: 0;
  width: 58px;
  height: 58px;
  position: relative;
  overflow: hidden;
}

.equipment-pdp .equipment-gallery-thumbnails button img {
  padding: 3px;
}

.equipment-pdp .equipment-gallery-thumbnails button[aria-pressed="true"] {
  border: 2px solid var(--sf-color-brand);
}

.equipment-pdp-image-note {
  color: var(--sf-color-muted);
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.6;
}

.equipment-pdp-information {
  margin-top: 36px;
}

.equipment-pdp-tabs {
  border-bottom: 1px solid var(--sf-color-border);
  gap: 28px;
  display: flex;
  overflow-x: auto;
}

.equipment-pdp-tabs > button {
  white-space: nowrap;
  color: var(--sf-color-muted);
  border-bottom: 3px solid #0000;
  padding: 18px 2px 15px;
  font-size: 13px;
  font-weight: 600;
}

.equipment-pdp-tabs > button[aria-selected="true"] {
  color: var(--sf-color-brand);
  border-bottom-color: var(--sf-color-brand);
}

.equipment-pdp-tab-panel {
  max-width: 1080px;
  padding: 28px 0 8px;
}

.equipment-pdp-information h2 {
  margin-bottom: 18px;
  font-size: 21px;
  line-height: 1.4;
}

.equipment-pdp-description p, .equipment-pdp-description li {
  color: var(--sf-color-muted);
  white-space: pre-line;
  font-size: 14px;
  line-height: 1.85;
}

.equipment-pdp-description p {
  max-width: 95ch;
}

.equipment-pdp-description p + p {
  margin-top: 16px;
}

.equipment-pdp-description ul {
  gap: 12px 40px;
  margin-top: 22px;
  padding-left: 18px;
  list-style: outside;
  display: grid;
}

.equipment-pdp-specifications {
  max-width: 880px;
}

.equipment-pdp-specifications > div {
  border-bottom: 1px solid var(--sf-color-border);
  overflow-wrap: anywhere;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 20px;
  padding: 14px 16px;
  font-size: 14px;
  line-height: 1.6;
  display: grid;
}

.equipment-pdp-specifications > div:nth-child(odd) {
  background: var(--equipment-soft);
}

.equipment-pdp-specifications dt {
  color: var(--sf-color-muted);
}

.equipment-pdp-specifications dd {
  font-weight: 500;
}

.equipment-pdp-document-note {
  color: var(--sf-color-muted);
  margin: -6px 0 22px;
  font-size: 14px;
  line-height: 1.7;
}

.equipment-pdp-documents {
  gap: 14px;
  max-width: 880px;
  display: grid;
}

.equipment-pdp-documents a {
  border: 1px solid var(--sf-color-border);
  border-radius: 4px;
  align-items: center;
  gap: 16px;
  padding: 20px;
  font-size: 14px;
  display: flex;
}

.equipment-pdp-documents a:hover {
  border-color: var(--sf-color-brand);
  background: var(--equipment-soft);
}

.equipment-pdp-documents svg {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
}

.equipment-pdp-documents a > span {
  overflow-wrap: anywhere;
  flex: 1;
  min-width: 0;
}

.equipment-pdp-documents small {
  color: var(--sf-color-muted);
  margin-top: 5px;
  font-size: 12px;
  display: block;
}

.equipment-pdp .equipment-purchase-dock .equipment-button {
  white-space: normal;
  border-radius: 4px;
  min-width: 0;
  max-width: 62%;
  min-height: 46px;
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.35;
}

body:has(.equipment-image-dialog[open]) {
  overflow: hidden;
}

.equipment-image-dialog {
  width: min(94vw, 1000px);
  max-height: 94dvh;
  color: var(--sf-color-foreground);
  background: #fff;
  border-radius: 6px;
  margin: auto;
  padding: 16px;
  position: fixed;
  inset: 0;
}

.equipment-image-dialog::backdrop {
  background: #0f172ab3;
}

.equipment-image-dialog > button {
  margin-left: auto;
  display: flex;
}

.equipment-image-expanded {
  place-items: center;
  height: min(68dvh, 680px);
  display: grid;
  position: relative;
}

.equipment-image-expanded > [role="img"] {
  max-width: min(68dvh, 680px);
}

.equipment-image-dialog > p {
  text-align: center;
  margin-top: 12px;
  font-size: 13px;
}

@media (min-width: 768px) {
  .equipment-pdp .equipment-gallery-main {
    height: 480px;
  }

  .equipment-pdp-description ul, .equipment-pdp-documents {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1000px) {
  .equipment-section.equipment-pdp {
    padding: 24px 32px 64px;
  }

  .equipment-pdp .equipment-pdp-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    gap: 56px;
  }

  .equipment-pdp-summary {
    padding-top: 10px;
  }

  .equipment-pdp .equipment-pdp-title {
    font-size: 32px;
  }

  .equipment-pdp .equipment-gallery-main {
    height: clamp(480px, 39vw, 560px);
  }

  .equipment-pdp .equipment-gallery-main > img {
    padding: 8px 26px 30px;
  }

  .equipment-pdp .equipment-gallery-thumbnails {
    justify-content: flex-start;
    padding-top: 16px;
  }

  .equipment-pdp .equipment-gallery-thumbnails button {
    width: 66px;
    height: 66px;
  }

  .equipment-pdp-information {
    margin-top: 44px;
  }

  .equipment-pdp-tab-panel {
    padding-top: 32px;
  }
}

.pdp-purchase-options small, .booking-legend small, .equipment-purchase-dock span {
  font-size: 12px;
}

.pdp-purchase-options strong {
  font-size: 14px;
}

.booking-heading h3 {
  font-size: 24px;
}

.booking-service-summary {
  background: var(--equipment-soft);
  border-radius: 12px;
  margin-block: 16px;
  padding: 16px;
}

.booking-service-summary > div {
  justify-content: space-between;
  gap: 12px;
  font-size: 14px;
  display: flex;
}

.booking-service-summary .booking-scope {
  margin: 8px 0 0;
  padding: 0;
}

.booking-service-summary p {
  font-size: 14px;
  line-height: 1.7;
}

.booking-selected-summary {
  border-bottom: 1px solid var(--sf-color-border);
  align-items: start;
  gap: 10px;
  margin-block: 12px;
  padding: 16px 0;
  display: flex;
}

.booking-selected-summary > svg {
  color: var(--sf-color-brand);
  flex-shrink: 0;
  margin-top: 3px;
}

.booking-selected-summary > div {
  flex: 1;
  min-width: 0;
}

.booking-selected-summary strong {
  text-transform: capitalize;
  font-size: 15px;
}

.booking-selected-summary p, .booking-selected-summary small {
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.7;
  display: block;
}

.booking-selected-summary small {
  color: var(--sf-color-muted);
}

.booking-selected-summary .booking-link {
  flex-shrink: 0;
  margin: 0;
  padding: 0;
}

.booking-price small {
  font-size: 12px;
  font-weight: 400;
}

.equipment-delivery-estimate {
  border-block: 1px solid var(--sf-color-border);
  margin-block: 10px 18px;
}

.equipment-delivery-estimate summary {
  cursor: pointer;
  padding-block: 16px;
  font-size: 14px;
  font-weight: 600;
}

.equipment-delivery-estimate > div {
  padding-bottom: 16px;
}

.equipment-delivery-estimate label {
  margin-bottom: 8px;
  font-size: 13px;
  display: block;
}

.equipment-delivery-input {
  gap: 8px;
  display: flex;
}

.equipment-delivery-input input {
  border: 1px solid var(--sf-color-border);
  border-radius: 10px;
  width: 100%;
  min-width: 0;
  padding: 10px;
}

.equipment-delivery-input button {
  padding-inline: 14px;
  font-size: 13px;
}

.equipment-delivery-estimate [role="status"] p {
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.6;
}

.equipment-delivery-estimate small {
  color: var(--sf-color-muted);
  font-size: 12px;
  display: block;
}

.equipment-checkout-summary {
  padding: 0;
}

.checkout-summary-disclosure > summary {
  cursor: pointer;
  align-items: center;
  gap: 12px;
  padding: 20px;
  list-style: none;
  display: flex;
}

.checkout-summary-disclosure > summary::-webkit-details-marker {
  display: none;
}

.checkout-summary-disclosure > summary > span:first-child {
  flex: 1;
  font-size: 14px;
  font-weight: 600;
}

.checkout-summary-disclosure small {
  color: var(--sf-color-muted);
  margin-top: 4px;
  font-size: 12px;
  font-weight: 400;
  display: block;
}

.checkout-summary-disclosure > summary > strong {
  font-size: 19px;
}

.checkout-summary-body {
  padding: 0 20px 20px;
}

.checkout-summary-disclosure[open] .checkout-summary-chevron {
  transform: rotate(180deg);
}

.checkout-intro h1 {
  font-size: 30px;
}

.checkout-intro > p {
  font-size: 14px;
}

.checkout-payment {
  border: 1px solid var(--sf-color-border);
  background: var(--sf-color-surface);
  border-radius: 16px;
  padding: 22px 16px;
}

.checkout-payment-methods {
  gap: 10px;
  display: grid;
}

.checkout-payment-methods legend {
  margin-bottom: 18px;
  font-size: 20px;
  font-weight: 600;
}

.checkout-payment-methods label {
  border: 1px solid var(--sf-color-border);
  cursor: pointer;
  border-radius: 12px;
  align-items: center;
  gap: 12px;
  min-height: 76px;
  padding: 14px;
  display: flex;
}

.checkout-payment-methods label[data-selected="true"] {
  border-color: var(--sf-color-brand);
  background: var(--equipment-soft);
  box-shadow: inset 0 0 0 1px var(--sf-color-brand);
}

.checkout-payment-methods input {
  width: 20px;
  height: 20px;
  accent-color: var(--sf-color-brand);
  flex-shrink: 0;
}

.checkout-payment-methods strong, .checkout-payment-methods small {
  display: block;
}

.checkout-payment-methods strong {
  font-size: 15px;
}

.checkout-payment-methods small {
  color: var(--sf-color-muted);
  margin-top: 5px;
  font-size: 13px;
}

.checkout-payment-total {
  border-bottom: 1px solid var(--sf-color-border);
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-block: 6px 12px;
  padding-block: 20px;
  display: flex;
}

.checkout-payment-total span {
  max-width: 180px;
  font-size: 13px;
}

.checkout-payment-total strong {
  letter-spacing: -.025em;
  font-size: 26px;
}

.checkout-payment > .credit-checkout {
  background: none;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
}

.checkout-payment .credit-heading-row {
  display: none;
}

.checkout-payment p, .credit-small {
  font-size: 14px;
  line-height: 1.7;
}

.credit-checkout-totals {
  background: var(--equipment-soft);
  border-radius: 12px;
  padding: 12px 14px;
}

.credit-checkout-totals > div {
  gap: 12px;
  font-size: 14px;
}

.credit-checkout-totals dd {
  text-align: right;
}

.credit-terms summary {
  min-height: 48px;
  padding-block: 14px;
}

.credit-terms p, .credit-accept {
  font-size: 14px;
}

@media (max-width: 699px) {
  .equipment-filter-panel[open] {
    grid-column: 1 / -1;
  }

  .equipment-checkout-summary {
    grid-row: 1;
    position: static;
  }
}

@media (max-width: 359px) {
  .equipment-quick-categories {
    gap: 5px;
    padding-inline: 12px;
  }

  .equipment-quick-categories a {
    padding-inline: 8px;
    font-size: 11px;
  }

  .equipment-quick-categories svg {
    display: none;
  }

  .equipment-card-copy {
    padding: 12px 9px;
  }

  .equipment-card-badge {
    padding: 5px;
    font-size: 10px;
  }

  .equipment-product-highlights {
    gap: 4px;
  }
}

@media (min-width: 700px) {
  .equipment-quick-categories {
    padding: 18px 28px 0;
  }

  .equipment-quick-categories a {
    flex: initial;
    min-width: 150px;
    font-size: 14px;
  }

  .equipment-hero-photo {
    min-height: 280px;
  }

  .equipment-card-copy {
    padding: 18px;
  }

  .equipment-card-copy h3 {
    font-size: 16px;
  }

  .equipment-card-price {
    font-size: 23px;
  }

  .equipment-catalogue-toolbar {
    grid-template-columns: minmax(260px, 1fr) 230px;
  }

  .equipment-filter-fields {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .equipment-pdp-title {
    font-size: 34px;
  }
}

@media (min-width: 1024px) {
  .equipment-hero {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    max-width: 1328px;
    min-height: 480px;
    padding: 24px 28px;
  }

  .equipment-hero-copy {
    padding: 24px 0;
  }

  .equipment-hero h1 {
    font-size: clamp(44px, 4vw, 60px);
  }

  .equipment-hero-copy > p {
    font-size: 16px;
  }

  .equipment-hero-actions .equipment-button:first-child {
    flex: initial;
  }

  .equipment-hero-photo {
    border-radius: 20px;
    min-height: 450px;
  }

  .equipment-photo-caption p, .equipment-photo-caption > span {
    display: block;
  }

  .equipment-photo-caption {
    inset-inline: 20px;
    width: auto;
    padding: 18px;
    bottom: 20px;
  }

  .equipment-home .equipment-section {
    padding-block: 48px;
  }

  .equipment-gallery-main {
    aspect-ratio: 1;
  }

  .equipment-gallery-main > [role="img"] {
    max-width: 460px;
  }

  .equipment-checkout-summary {
    grid-row: auto;
  }

  .checkout-payment {
    padding: 28px;
  }

  .checkout-payment-methods {
    grid-template-columns: 1fr 1fr;
  }

  .checkout-payment-methods legend {
    grid-column: 1 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .equipment-card-image * {
    transition: none !important;
    transform: none !important;
  }
}

/*# sourceMappingURL=apps_storefront_src_styles_0wbppd5._.css.map*/