
/*FILESTART*/body.wc-block-product-gallery-modal-open,body.wc-modal--open{overflow:hidden}.wc-block-grid__products .wc-block-grid__product-image{display:block;position:relative;text-decoration:none}.wc-block-grid__products .wc-block-grid__product-image a{border:0;box-shadow:none;outline:0;text-decoration:none}.wc-block-grid__products .wc-block-grid__product-image img{height:auto;max-width:100%;width:100%}.wc-block-grid__products .wc-block-grid__product-image img[hidden]{display:none}.wc-block-grid__products .wc-block-grid__product-image img[alt=""]{border:1px solid #f2f2f2}.edit-post-visual-editor .editor-block-list__block .wc-block-grid__product-title,.editor-styles-wrapper .wc-block-grid__product-title,.wc-block-grid__product-title{color:inherit;display:block;font-family:inherit;font-size:inherit;font-weight:700;line-height:1.2;padding:0}.wc-block-grid__product-price{display:block}.wc-block-grid__product-price .wc-block-grid__product-price__regular{margin-right:.5em}.wc-block-grid__product-add-to-cart.wp-block-button{white-space:normal;word-break:break-word}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{display:inline-flex;font-size:1em;justify-content:center;text-align:center;white-space:normal;word-break:break-word}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading{opacity:.25}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.added:after{content:"";display:inline-block;font-family:WooCommerce;height:auto;margin-left:.5em;width:auto}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading:after{animation:spin 2s linear infinite;content:"";display:inline-block;font-family:WooCommerce;height:auto;margin-left:.5em;width:auto}.has-5-columns:not(.alignfull) .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-6-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-7-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-8-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-9-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after{content:"";margin:0}.wc-block-grid__product-rating,.wp-block-woocommerce-product-review-rating{display:block}.wc-block-grid__product-rating .star-rating,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars,.wc-block-grid__product-rating .wc-block-product-review-rating__stars,.wp-block-woocommerce-product-review-rating .star-rating,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars{font-family:WooCommerce;font-size:1em;font-weight:400;height:1.618em;line-height:1.618;margin:0 auto;overflow:hidden;position:relative;text-align:left;width:5.3em}.wc-block-grid__product-rating .star-rating:before,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars:before,.wc-block-grid__product-rating .wc-block-product-review-rating__stars:before,.wp-block-woocommerce-product-review-rating .star-rating:before,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars:before,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars:before{content:"SSSSS";left:0;opacity:.5;position:absolute;right:0;top:0;white-space:nowrap}.wc-block-grid__product-rating .star-rating span,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars span,.wc-block-grid__product-rating .wc-block-product-review-rating__stars span,.wp-block-woocommerce-product-review-rating .star-rating span,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars span,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars span{left:0;overflow:hidden;padding-top:1.5em;position:absolute;right:0;top:0}.wc-block-grid__product-rating .star-rating span:before,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars span:before,.wc-block-grid__product-rating .wc-block-product-review-rating__stars span:before,.wp-block-woocommerce-product-review-rating .star-rating span:before,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars span:before,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars span:before{color:inherit;content:"SSSSS";left:0;position:absolute;right:0;top:0;white-space:nowrap}.wc-block-grid .wc-block-grid__product-onsale,.wc-block-grid__product-image .wc-block-grid__product-onsale{background:#fff;border:1px solid #43454b;border-radius:4px;color:#43454b;display:inline-block;font-size:.875em;font-weight:600;left:auto;padding:.25em .75em;position:absolute;right:4px;text-align:center;text-transform:uppercase;top:4px;width:auto;z-index:9}.wc-block-grid__product .wc-block-grid__product-image,.wc-block-grid__product .wc-block-grid__product-link{display:inline-block;position:relative}.wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image),.wc-block-grid__product .wc-block-grid__product-title{margin:0 0 12px}.wc-block-grid__product .wc-block-grid__product-add-to-cart,.wc-block-grid__product .wc-block-grid__product-onsale,.wc-block-grid__product .wc-block-grid__product-price,.wc-block-grid__product .wc-block-grid__product-rating{margin:0 auto 12px}.theme-twentysixteen .wc-block-grid .price ins{color:#77a464}.theme-twentynineteen .wc-block-grid__product{font-size:.88889em}.theme-twentynineteen .wc-block-components-product-sale-badge,.theme-twentynineteen .wc-block-components-product-title,.theme-twentynineteen .wc-block-grid__product-onsale,.theme-twentynineteen .wc-block-grid__product-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.theme-twentynineteen .wc-block-grid__product-title:before{display:none}.theme-twentynineteen .wc-block-components-product-sale-badge,.theme-twentynineteen .wc-block-grid__product-onsale{line-height:1}.theme-twentynineteen .editor-styles-wrapper .wp-block-button .wp-block-button__link:not(.has-text-color){color:#fff}.theme-twentytwenty .wc-block-grid__product-link{color:#000}.theme-twentytwenty .wc-block-components-product-title,.theme-twentytwenty .wc-block-grid__product-title{color:#cd2653;font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-size:1em}.theme-twentytwenty .wp-block-columns .wc-block-components-product-title{margin-top:0}.theme-twentytwenty .wc-block-components-product-price .woocommerce-Price-amount,.theme-twentytwenty .wc-block-components-product-price__value,.theme-twentytwenty .wc-block-grid__product-price .woocommerce-Price-amount,.theme-twentytwenty .wc-block-grid__product-price__value{font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-size:.9em}.theme-twentytwenty .wc-block-components-product-price del,.theme-twentytwenty .wc-block-grid__product-price del{opacity:.5}.theme-twentytwenty .wc-block-components-product-price ins,.theme-twentytwenty .wc-block-grid__product-price ins{text-decoration:none}.theme-twentytwenty .star-rating,.theme-twentytwenty .wc-block-grid__product-rating{font-size:.7em}.theme-twentytwenty .star-rating .wc-block-components-product-rating__stars,.theme-twentytwenty .star-rating .wc-block-grid__product-rating__stars,.theme-twentytwenty .wc-block-grid__product-rating .wc-block-components-product-rating__stars,.theme-twentytwenty .wc-block-grid__product-rating .wc-block-grid__product-rating__stars{line-height:1}.theme-twentytwenty .wc-block-components-product-button>.wp-block-button__link,.theme-twentytwenty .wc-block-grid__product-add-to-cart>.wp-block-button__link{font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif}.theme-twentytwenty .wc-block-components-product-sale-badge,.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{background:#cd2653;color:#fff;font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-weight:700;letter-spacing:-.02em;line-height:1.2;text-transform:uppercase}.theme-twentytwenty .wc-block-grid__products .wc-block-components-product-sale-badge{position:static}.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-image .wc-block-components-product-sale-badge{position:absolute}.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale:not(.wc-block-components-product-sale-badge){position:absolute;right:4px;top:4px;z-index:1}.theme-twentytwenty .wc-block-active-filters__title,.theme-twentytwenty .wc-block-attribute-filter__title,.theme-twentytwenty .wc-block-price-filter__title,.theme-twentytwenty .wc-block-stock-filter__title{font-size:1em}.theme-twentytwenty .wc-block-active-filters .wc-block-active-filters__clear-all,.theme-twentytwenty .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{font-size:.75em}@media only screen and (min-width:768px){.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{font-size:.875em;padding:.5em}}@media only screen and (min-width:1168px){.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{font-size:.875em;padding:.5em}}.theme-twentytwentytwo .wc-block-grid__product-add-to-cart .added_to_cart{display:block;margin-top:12px}.theme-twentytwentytwo .wc-block-components-product-price ins,.theme-twentytwentytwo .wc-block-grid__product-price ins{text-decoration:none}.screen-reader-text{clip:rect(1px,1px,1px,1px);word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;overflow-wrap:normal!important;padding:0;position:absolute!important;width:1px}.screen-reader-text:focus{clip:auto!important;background-color:#fff;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip-path:none;color:#2b2d2f;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.wp-block-group.woocommerce.product .up-sells.upsells.products{max-width:var(--wp--style--global--wide-size)}
.wc-block-components-notice-banner{align-content:flex-start;align-items:stretch;background-color:#fff;border:1px solid #2f2f2f;border-radius:4px;box-sizing:border-box;color:#2f2f2f;display:flex;font-size:.875em;font-weight:400;gap:12px;line-height:1.5;margin:16px 0;padding:16px!important}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content{align-self:center;flex-basis:100%;padding-right:16px;white-space:normal}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content:last-child{padding-right:0}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-block-components-notice-banner__summary{font-weight:600;margin:0 0 8px}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul{margin:0 0 0 24px;padding:0}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol li:after,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul li:after{clear:both;content:"";display:block}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward{appearance:none;background:transparent!important;border:0;color:#2f2f2f!important;float:right;margin:0;opacity:.7;padding:0!important;text-decoration-line:underline;text-underline-position:under;transition:all .2s ease-in-out}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:active,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:focus,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:hover{opacity:1;text-decoration:none}.wc-block-components-notice-banner>svg{fill:#fff;background-color:#2f2f2f;border-radius:50%;flex-grow:0;flex-shrink:0;height:100%;padding:2px}.wc-block-components-notice-banner>.wc-block-components-button{background:transparent none!important;border:0!important;box-shadow:none!important;color:#2f2f2f!important;flex:0 0 16px;height:16px!important;margin:6px 0 0 auto!important;min-height:auto!important;min-width:0!important;opacity:.6;outline:none!important;padding:0!important;width:16px!important}.wc-block-components-notice-banner>.wc-block-components-button>svg{margin:0!important}.wc-block-components-notice-banner>.wc-block-components-button:active,.wc-block-components-notice-banner>.wc-block-components-button:focus,.wc-block-components-notice-banner>.wc-block-components-button:hover{opacity:1}.wc-block-components-notice-banner>.wc-block-components-button:focus{outline:2px solid currentColor!important;outline-offset:0}.wc-block-components-notice-banner.is-error{background-color:#fff0f0;border-color:#cc1818}.wc-block-components-notice-banner.is-error>svg{background-color:#cc1818;transform:rotate(180deg)}.wc-block-components-notice-banner.is-warning{background-color:#fffbf4;border-color:#f0b849}.wc-block-components-notice-banner.is-warning>svg{background-color:#f0b849;transform:rotate(180deg)}.wc-block-components-notice-banner.is-success{background-color:#f4fff7;border-color:#4ab866}.wc-block-components-notice-banner.is-success>svg{background-color:#4ab866}.wc-block-components-notice-banner.is-info{background-color:#f4f8ff;border-color:#007cba}.wc-block-components-notice-banner.is-info>svg{background-color:#007cba}.wc-block-components-notice-banner:focus{outline-width:0}.wc-block-components-notice-banner:focus-visible{outline-style:solid;outline-width:2px}.woocommerce.wc-block-store-notices.alignwide{max-width:var(--wp--style--global--wide-size)}

/*FILESTART*//*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: 'Geist Variable', sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-500: oklch(63.7% 0.237 25.331);
    --color-yellow-50: oklch(98.7% 0.026 102.212);
    --color-yellow-400: oklch(85.2% 0.199 91.936);
    --color-yellow-600: oklch(68.1% 0.162 75.834);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-100: oklch(96.7% 0.003 264.542);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-600: oklch(44.6% 0.03 256.802);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-800: oklch(27.8% 0.033 256.848);
    --color-gray-900: oklch(21% 0.034 264.665);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-md: 28rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-4xl: 56rem;
    --container-6xl: 72rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-md: calc(var(--radius) * 0.8);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --blur-sm: 8px;
    --blur-md: 12px;
    --blur-xl: 24px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: 'Geist Variable', sans-serif;
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .\@container\/card-header {
    container-type: inline-size;
    container-name: card-header;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .-top-1 {
    top: calc(var(--spacing) * -1);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-3 {
    top: calc(var(--spacing) * 3);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-6 {
    top: calc(var(--spacing) * 6);
  }
  .top-40 {
    top: calc(var(--spacing) * 40);
  }
  .top-\[40px\] {
    top: 40px;
  }
  .top-\[108px\] {
    top: 108px;
  }
  .-right-2 {
    right: calc(var(--spacing) * -2);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .right-6 {
    right: calc(var(--spacing) * 6);
  }
  .right-8 {
    right: calc(var(--spacing) * 8);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-3 {
    bottom: calc(var(--spacing) * 3);
  }
  .bottom-4 {
    bottom: calc(var(--spacing) * 4);
  }
  .bottom-8 {
    bottom: calc(var(--spacing) * 8);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-4 {
    left: calc(var(--spacing) * 4);
  }
  .z-0 {
    z-index: 0;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-30 {
    z-index: 30;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[100\] {
    z-index: 100;
  }
  .z-\[200\] {
    z-index: 200;
  }
  .order-1 {
    order: 1;
  }
  .order-2 {
    order: 2;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .row-span-2 {
    grid-row: span 2 / span 2;
  }
  .row-start-1 {
    grid-row-start: 1;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .-mx-2 {
    margin-inline: calc(var(--spacing) * -2);
  }
  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .-mt-0\.5 {
    margin-top: calc(var(--spacing) * -0.5);
  }
  .-mt-1 {
    margin-top: calc(var(--spacing) * -1);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-24 {
    margin-top: calc(var(--spacing) * 24);
  }
  .mt-auto {
    margin-top: auto;
  }
  .-mr-1 {
    margin-right: calc(var(--spacing) * -1);
  }
  .mb-0\.5 {
    margin-bottom: calc(var(--spacing) * 0.5);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .mb-16 {
    margin-bottom: calc(var(--spacing) * 16);
  }
  .mb-20 {
    margin-bottom: calc(var(--spacing) * 20);
  }
  .mb-auto {
    margin-bottom: auto;
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-7 {
    margin-left: calc(var(--spacing) * 7);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
    &::-webkit-scrollbar {
      display: none;
    }
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-flex {
    display: inline-flex;
  }
  .aspect-\[16\/9\] {
    aspect-ratio: 16/9;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-7 {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-24 {
    height: calc(var(--spacing) * 24);
  }
  .h-\[22px\] {
    height: 22px;
  }
  .h-\[68px\] {
    height: 68px;
  }
  .h-\[85vh\] {
    height: 85vh;
  }
  .h-\[calc\(100vh-10rem\)\] {
    height: calc(100vh - 10rem);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .max-h-\[90vh\] {
    max-height: 90vh;
  }
  .min-h-\[2\.5rem\] {
    min-height: 2.5rem;
  }
  .min-h-\[50vh\] {
    min-height: 50vh;
  }
  .min-h-\[160px\] {
    min-height: 160px;
  }
  .min-h-\[280px\] {
    min-height: 280px;
  }
  .min-h-\[380px\] {
    min-height: 380px;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\/2 {
    width: calc(1 / 2 * 100%);
  }
  .w-1\/3 {
    width: calc(1 / 3 * 100%);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-2\.5 {
    width: calc(var(--spacing) * 2.5);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-8 {
    width: calc(var(--spacing) * 8);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-\[22px\] {
    width: 22px;
  }
  .w-\[85\%\] {
    width: 85%;
  }
  .w-\[160px\] {
    width: 160px;
  }
  .w-\[180px\] {
    width: 180px;
  }
  .w-\[200px\] {
    width: 200px;
  }
  .w-\[280px\] {
    width: 280px;
  }
  .w-\[300px\] {
    width: 300px;
  }
  .w-\[calc\(100vw-1rem\)\] {
    width: calc(100vw - 1rem);
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-6xl {
    max-width: var(--container-6xl);
  }
  .max-w-\[50\%\] {
    max-width: 50%;
  }
  .max-w-\[90px\] {
    max-width: 90px;
  }
  .max-w-\[100px\] {
    max-width: 100px;
  }
  .max-w-\[200px\] {
    max-width: 200px;
  }
  .max-w-\[320px\] {
    max-width: 320px;
  }
  .max-w-\[800px\] {
    max-width: 800px;
  }
  .max-w-\[1000px\] {
    max-width: 1000px;
  }
  .max-w-\[1200px\] {
    max-width: 1200px;
  }
  .max-w-\[1600px\] {
    max-width: 1600px;
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-\[180px\] {
    min-width: 180px;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .translate-x-2 {
    --tw-translate-x: calc(var(--spacing) * 2);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-90 {
    rotate: 90deg;
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .snap-x {
    scroll-snap-type: x var(--tw-scroll-snap-strictness);
  }
  .snap-center {
    scroll-snap-align: center;
  }
  .snap-start {
    scroll-snap-align: start;
  }
  .list-disc {
    list-style-type: disc;
  }
  .appearance-none {
    appearance: none;
  }
  .auto-rows-min {
    grid-auto-rows: min-content;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }
  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }
  .space-y-1 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .gap-x-12 {
    column-gap: calc(var(--spacing) * 12);
  }
  .gap-y-6 {
    row-gap: calc(var(--spacing) * 6);
  }
  .self-start {
    align-self: flex-start;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: calc(var(--radius) * 1.8);
  }
  .rounded-3xl {
    border-radius: calc(var(--radius) * 2.2);
  }
  .rounded-4xl {
    border-radius: calc(var(--radius) * 2.6);
  }
  .rounded-\[1\.5rem\] {
    border-radius: 1.5rem;
  }
  .rounded-\[1rem\] {
    border-radius: 1rem;
  }
  .rounded-\[2rem\] {
    border-radius: 2rem;
  }
  .rounded-\[min\(var\(--radius-md\)\,10px\)\] {
    border-radius: min(var(--radius-md), 10px);
  }
  .rounded-\[min\(var\(--radius-md\)\,12px\)\] {
    border-radius: min(var(--radius-md), 12px);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius);
  }
  .rounded-md {
    border-radius: calc(var(--radius) * 0.8);
  }
  .rounded-xl {
    border-radius: calc(var(--radius) * 1.4);
  }
  .rounded-t-\[2rem\] {
    border-top-left-radius: 2rem;
    border-top-right-radius: 2rem;
  }
  .rounded-t-xl {
    border-top-left-radius: calc(var(--radius) * 1.4);
    border-top-right-radius: calc(var(--radius) * 1.4);
  }
  .rounded-b-xl {
    border-bottom-right-radius: calc(var(--radius) * 1.4);
    border-bottom-left-radius: calc(var(--radius) * 1.4);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-\[2\.5px\] {
    border-style: var(--tw-border-style);
    border-width: 2.5px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .border-\[\#4B7B9B\] {
    border-color: #4B7B9B;
  }
  .border-\[\#4B7B9B\]\/10 {
    border-color: color-mix(in oklab, #4B7B9B 10%, transparent);
  }
  .border-\[\#4B7B9B\]\/20 {
    border-color: color-mix(in oklab, #4B7B9B 20%, transparent);
  }
  .border-border {
    border-color: var(--border);
  }
  .border-gray-50 {
    border-color: var(--color-gray-50);
  }
  .border-gray-100 {
    border-color: var(--color-gray-100);
  }
  .border-gray-100\/50 {
    border-color: color-mix(in srgb, oklch(96.7% 0.003 264.542) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-gray-100) 50%, transparent);
    }
  }
  .border-gray-100\/80 {
    border-color: color-mix(in srgb, oklch(96.7% 0.003 264.542) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-gray-100) 80%, transparent);
    }
  }
  .border-gray-200 {
    border-color: var(--color-gray-200);
  }
  .border-gray-200\/80 {
    border-color: color-mix(in srgb, oklch(92.8% 0.006 264.531) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-gray-200) 80%, transparent);
    }
  }
  .border-gray-300 {
    border-color: var(--color-gray-300);
  }
  .border-gray-900 {
    border-color: var(--color-gray-900);
  }
  .border-input {
    border-color: var(--input);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-white {
    border-color: var(--color-white);
  }
  .border-white\/5 {
    border-color: color-mix(in srgb, #fff 5%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }
  .border-white\/10 {
    border-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .border-white\/20 {
    border-color: color-mix(in srgb, #fff 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }
  .bg-\[\#2D2D2D\] {
    background-color: #2D2D2D;
  }
  .bg-\[\#4B7B9B\] {
    background-color: #4B7B9B;
  }
  .bg-\[\#4B7B9B\]\/5 {
    background-color: color-mix(in oklab, #4B7B9B 5%, transparent);
  }
  .bg-\[\#4B7B9B\]\/10 {
    background-color: color-mix(in oklab, #4B7B9B 10%, transparent);
  }
  .bg-\[\#222\] {
    background-color: #222;
  }
  .bg-\[\#121417\] {
    background-color: #121417;
  }
  .bg-\[\#282828\] {
    background-color: #282828;
  }
  .bg-\[\#B2D0E0\]\/20 {
    background-color: color-mix(in oklab, #B2D0E0 20%, transparent);
  }
  .bg-\[\#CFE4EE\] {
    background-color: #CFE4EE;
  }
  .bg-\[\#D1D5DB\] {
    background-color: #D1D5DB;
  }
  .bg-\[\#E5ECF0\] {
    background-color: #E5ECF0;
  }
  .bg-\[\#E33B42\] {
    background-color: #E33B42;
  }
  .bg-\[\#F2EDD7\] {
    background-color: #F2EDD7;
  }
  .bg-\[\#F3F4F6\] {
    background-color: #F3F4F6;
  }
  .bg-\[\#F3F4F6\]\/60 {
    background-color: color-mix(in oklab, #F3F4F6 60%, transparent);
  }
  .bg-\[\#F5F3F0\] {
    background-color: #F5F3F0;
  }
  .bg-\[\#FAF9F6\] {
    background-color: #FAF9F6;
  }
  .bg-\[\#FF4B4B\] {
    background-color: #FF4B4B;
  }
  .bg-\[\#eef1f4\] {
    background-color: #eef1f4;
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-black\/40 {
    background-color: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }
  .bg-black\/60 {
    background-color: color-mix(in srgb, #000 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }
  .bg-border {
    background-color: var(--border);
  }
  .bg-card {
    background-color: var(--card);
  }
  .bg-destructive\/10 {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-gray-50\/50 {
    background-color: color-mix(in srgb, oklch(98.5% 0.002 247.839) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-gray-50) 50%, transparent);
    }
  }
  .bg-gray-50\/80 {
    background-color: color-mix(in srgb, oklch(98.5% 0.002 247.839) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-gray-50) 80%, transparent);
    }
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-900 {
    background-color: var(--color-gray-900);
  }
  .bg-green-50 {
    background-color: var(--color-green-50);
  }
  .bg-green-600 {
    background-color: var(--color-green-600);
  }
  .bg-muted\/50 {
    background-color: var(--muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/10 {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-white\/90 {
    background-color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .bg-white\/95 {
    background-color: color-mix(in srgb, #fff 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
    }
  }
  .bg-yellow-50 {
    background-color: var(--color-yellow-50);
  }
  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-\[\#4B7B9B\] {
    --tw-gradient-from: #4B7B9B;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-\[\#F5F3F0\] {
    --tw-gradient-from: #F5F3F0;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/80 {
    --tw-gradient-from: color-mix(in srgb, #000 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-\[\#F5F3F0\]\/90 {
    --tw-gradient-via: color-mix(in oklab, #F5F3F0 90%, transparent);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .via-black\/40 {
    --tw-gradient-via: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-\[\#2C4A5E\] {
    --tw-gradient-to: #2C4A5E;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-transparent {
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .bg-clip-text {
    background-clip: text;
  }
  .fill-\[\#4B7B9B\] {
    fill: #4B7B9B;
  }
  .fill-yellow-400 {
    fill: var(--color-yellow-400);
  }
  .stroke-\[1\.5\] {
    stroke-width: 1.5;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .object-right {
    object-position: right;
  }
  .p-0\.5 {
    padding: calc(var(--spacing) * 0.5);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }
  .px-10 {
    padding-inline: calc(var(--spacing) * 10);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }
  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }
  .pt-16 {
    padding-top: calc(var(--spacing) * 16);
  }
  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pr-10 {
    padding-right: calc(var(--spacing) * 10);
  }
  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pb-16 {
    padding-bottom: calc(var(--spacing) * 16);
  }
  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }
  .pb-\[68px\] {
    padding-bottom: 68px;
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .pl-12 {
    padding-left: calc(var(--spacing) * 12);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .font-\[Nunito\] {
    font-family: Nunito;
  }
  .font-heading {
    font-family: var(--font-sans);
  }
  .font-sans {
    font-family: 'Geist Variable', sans-serif;
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[0\.8rem\] {
    font-size: 0.8rem;
  }
  .text-\[1rem\] {
    font-size: 1rem;
  }
  .text-\[2\.5rem\] {
    font-size: 2.5rem;
  }
  .text-\[8px\] {
    font-size: 8px;
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .text-\[11px\] {
    font-size: 11px;
  }
  .text-\[12px\] {
    font-size: 12px;
  }
  .text-\[13px\] {
    font-size: 13px;
  }
  .text-\[14px\] {
    font-size: 14px;
  }
  .text-\[15px\] {
    font-size: 15px;
  }
  .text-\[16px\] {
    font-size: 16px;
  }
  .text-\[17px\] {
    font-size: 17px;
  }
  .text-\[18px\] {
    font-size: 18px;
  }
  .text-\[20px\] {
    font-size: 20px;
  }
  .leading-\[1\.1\] {
    --tw-leading: 1.1;
    line-height: 1.1;
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\[0\.2em\] {
    --tw-tracking: 0.2em;
    letter-spacing: 0.2em;
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .whitespace-normal {
    white-space: normal;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-\[\#4B7B9B\] {
    color: #4B7B9B;
  }
  .text-\[\#4B7B9B\]\/80 {
    color: color-mix(in oklab, #4B7B9B 80%, transparent);
  }
  .text-\[\#121417\] {
    color: #121417;
  }
  .text-card-foreground {
    color: var(--card-foreground);
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-gray-300 {
    color: var(--color-gray-300);
  }
  .text-gray-400 {
    color: var(--color-gray-400);
  }
  .text-gray-500 {
    color: var(--color-gray-500);
  }
  .text-gray-600 {
    color: var(--color-gray-600);
  }
  .text-gray-700 {
    color: var(--color-gray-700);
  }
  .text-gray-800 {
    color: var(--color-gray-800);
  }
  .text-gray-900 {
    color: var(--color-gray-900);
  }
  .text-green-500 {
    color: var(--color-green-500);
  }
  .text-green-600 {
    color: var(--color-green-600);
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-red-500 {
    color: var(--color-red-500);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/40 {
    color: color-mix(in srgb, #fff 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 40%, transparent);
    }
  }
  .text-white\/50 {
    color: color-mix(in srgb, #fff 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 50%, transparent);
    }
  }
  .text-white\/80 {
    color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .text-white\/90 {
    color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .text-yellow-400 {
    color: var(--color-yellow-400);
  }
  .text-yellow-600 {
    color: var(--color-yellow-600);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-gray-200 {
    text-decoration-color: var(--color-gray-200);
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-60 {
    opacity: 60%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-90 {
    opacity: 90%;
  }
  .mix-blend-multiply {
    mix-blend-mode: multiply;
  }
  .mix-blend-overlay {
    mix-blend-mode: overlay;
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[0_4px_20px_-10px_rgba\(0\,0\,0\,0\.05\)\] {
    --tw-shadow: 0 4px 20px -10px var(--tw-shadow-color, rgba(0,0,0,0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-none {
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[\#4B7B9B\]\/20 {
    --tw-shadow-color: color-mix(in srgb, #4B7B9B 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, #4B7B9B 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .shadow-black\/10 {
    --tw-shadow-color: color-mix(in srgb, #000 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-black) 10%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .shadow-green-600\/20 {
    --tw-shadow-color: color-mix(in srgb, oklch(62.7% 0.194 149.214) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-green-600) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
  .ring-foreground\/10 {
    --tw-ring-color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--foreground) 10%, transparent);
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .saturate-\[0\.8\] {
    --tw-saturate: saturate(0.8);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -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-\[2px\] {
    --tw-backdrop-blur: blur(2px);
    -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-md {
    --tw-backdrop-blur: blur(var(--blur-md));
    -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(var(--blur-sm));
    -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-xl {
    --tw-backdrop-blur: blur(var(--blur-xl));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .duration-700 {
    --tw-duration: 700ms;
    transition-duration: 700ms;
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .group-hover\:visible {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        visibility: visible;
      }
    }
  }
  .group-hover\:translate-x-1 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--spacing) * 1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-y-0 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:scale-105 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:border-\[\#4B7B9B\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        border-color: #4B7B9B;
      }
    }
  }
  .group-hover\:bg-\[\#4B7B9B\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: #4B7B9B;
      }
    }
  }
  .group-hover\:text-\[\#4B7B9B\] {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: #4B7B9B;
      }
    }
  }
  .group-hover\:text-gray-500 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-gray-500);
      }
    }
  }
  .group-hover\:text-gray-900 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-gray-900);
      }
    }
  }
  .group-hover\:text-white {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .group-hover\:opacity-100 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .group-hover\:shadow-md {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .group-data-\[size\=sm\]\/card\:p-3 {
    &:is(:where(.group\/card)[data-size="sm"] *) {
      padding: calc(var(--spacing) * 3);
    }
  }
  .group-data-\[size\=sm\]\/card\:px-3 {
    &:is(:where(.group\/card)[data-size="sm"] *) {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .group-data-\[size\=sm\]\/card\:text-sm {
    &:is(:where(.group\/card)[data-size="sm"] *) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .peer-checked\:opacity-100 {
    &:is(:where(.peer):checked ~ *) {
      opacity: 100%;
    }
  }
  .file\:inline-flex {
    &::file-selector-button {
      display: inline-flex;
    }
  }
  .file\:h-6 {
    &::file-selector-button {
      height: calc(var(--spacing) * 6);
    }
  }
  .file\:border-0 {
    &::file-selector-button {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .file\:bg-transparent {
    &::file-selector-button {
      background-color: transparent;
    }
  }
  .file\:text-sm {
    &::file-selector-button {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .file\:font-medium {
    &::file-selector-button {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }
  .file\:text-foreground {
    &::file-selector-button {
      color: var(--foreground);
    }
  }
  .placeholder\:text-gray-300 {
    &::placeholder {
      color: var(--color-gray-300);
    }
  }
  .placeholder\:text-gray-400 {
    &::placeholder {
      color: var(--color-gray-400);
    }
  }
  .placeholder\:text-muted-foreground {
    &::placeholder {
      color: var(--muted-foreground);
    }
  }
  .after\:absolute {
    &::after {
      content: var(--tw-content);
      position: absolute;
    }
  }
  .after\:bottom-0 {
    &::after {
      content: var(--tw-content);
      bottom: calc(var(--spacing) * 0);
    }
  }
  .after\:left-0 {
    &::after {
      content: var(--tw-content);
      left: calc(var(--spacing) * 0);
    }
  }
  .after\:h-0\.5 {
    &::after {
      content: var(--tw-content);
      height: calc(var(--spacing) * 0.5);
    }
  }
  .after\:w-full {
    &::after {
      content: var(--tw-content);
      width: 100%;
    }
  }
  .after\:origin-left {
    &::after {
      content: var(--tw-content);
      transform-origin: 0;
    }
  }
  .after\:scale-x-0 {
    &::after {
      content: var(--tw-content);
      --tw-scale-x: 0%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  .after\:bg-\[\#4B7B9B\] {
    &::after {
      content: var(--tw-content);
      background-color: #4B7B9B;
    }
  }
  .after\:transition-transform {
    &::after {
      content: var(--tw-content);
      transition-property: transform, translate, scale, rotate;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
    }
  }
  .last\:border-0 {
    &:last-child {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .checked\:border-\[\#4B7B9B\] {
    &:checked {
      border-color: #4B7B9B;
    }
  }
  .checked\:bg-\[\#4B7B9B\] {
    &:checked {
      background-color: #4B7B9B;
    }
  }
  .focus-within\:border-transparent {
    &:focus-within {
      border-color: transparent;
    }
  }
  .focus-within\:bg-white {
    &:focus-within {
      background-color: var(--color-white);
    }
  }
  .focus-within\:ring-2 {
    &:focus-within {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-within\:ring-\[\#4B7B9B\] {
    &:focus-within {
      --tw-ring-color: #4B7B9B;
    }
  }
  .focus-within\:ring-\[\#4B7B9B\]\/10 {
    &:focus-within {
      --tw-ring-color: color-mix(in oklab, #4B7B9B 10%, transparent);
    }
  }
  .hover\:translate-x-\[-4px\] {
    &:hover {
      @media (hover: hover) {
        --tw-translate-x: -4px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:-translate-y-1 {
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .hover\:border-gray-200 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-gray-200);
      }
    }
  }
  .hover\:border-gray-300 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-gray-300);
      }
    }
  }
  .hover\:bg-\[\#3D637D\] {
    &:hover {
      @media (hover: hover) {
        background-color: #3D637D;
      }
    }
  }
  .hover\:bg-\[\#4B7B9B\] {
    &:hover {
      @media (hover: hover) {
        background-color: #4B7B9B;
      }
    }
  }
  .hover\:bg-\[\#c4c8ce\] {
    &:hover {
      @media (hover: hover) {
        background-color: #c4c8ce;
      }
    }
  }
  .hover\:bg-black {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-black);
      }
    }
  }
  .hover\:bg-destructive\/20 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
        }
      }
    }
  }
  .hover\:bg-gray-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-50);
      }
    }
  }
  .hover\:bg-gray-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-100);
      }
    }
  }
  .hover\:bg-gray-100\/80 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(96.7% 0.003 264.542) 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-gray-100) 80%, transparent);
        }
      }
    }
  }
  .hover\:bg-gray-200 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-200);
      }
    }
  }
  .hover\:bg-green-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-green-700);
      }
    }
  }
  .hover\:bg-muted {
    &:hover {
      @media (hover: hover) {
        background-color: var(--muted);
      }
    }
  }
  .hover\:bg-secondary\/80 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--secondary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
        }
      }
    }
  }
  .hover\:bg-white {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
  }
  .hover\:text-\[\#3D637D\] {
    &:hover {
      @media (hover: hover) {
        color: #3D637D;
      }
    }
  }
  .hover\:text-\[\#4B7B9B\] {
    &:hover {
      @media (hover: hover) {
        color: #4B7B9B;
      }
    }
  }
  .hover\:text-\[\#FF4B4B\] {
    &:hover {
      @media (hover: hover) {
        color: #FF4B4B;
      }
    }
  }
  .hover\:text-foreground {
    &:hover {
      @media (hover: hover) {
        color: var(--foreground);
      }
    }
  }
  .hover\:text-gray-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-700);
      }
    }
  }
  .hover\:text-gray-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-800);
      }
    }
  }
  .hover\:text-gray-900 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-900);
      }
    }
  }
  .hover\:text-muted-foreground {
    &:hover {
      @media (hover: hover) {
        color: var(--muted-foreground);
      }
    }
  }
  .hover\:text-red-500 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-red-500);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:decoration-\[\#4B7B9B\] {
    &:hover {
      @media (hover: hover) {
        text-decoration-color: #4B7B9B;
      }
    }
  }
  .hover\:opacity-80 {
    &:hover {
      @media (hover: hover) {
        opacity: 80%;
      }
    }
  }
  .hover\:shadow-md {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-sm {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-xl {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-\[\#4B7B9B\]\/5 {
    &:hover {
      @media (hover: hover) {
        --tw-shadow-color: color-mix(in srgb, #4B7B9B 5%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, #4B7B9B 5%, transparent) var(--tw-shadow-alpha), transparent);
        }
      }
    }
  }
  .hover\:after\:scale-x-100 {
    &:hover {
      @media (hover: hover) {
        &::after {
          content: var(--tw-content);
          --tw-scale-x: 100%;
          scale: var(--tw-scale-x) var(--tw-scale-y);
        }
      }
    }
  }
  .focus\:ring-0 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-visible\:border-destructive\/40 {
    &:focus-visible {
      border-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--destructive) 40%, transparent);
      }
    }
  }
  .focus-visible\:border-ring {
    &:focus-visible {
      border-color: var(--ring);
    }
  }
  .focus-visible\:ring-3 {
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-visible\:ring-\[3px\] {
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus-visible\:ring-\[\#4B7B9B\] {
    &:focus-visible {
      --tw-ring-color: #4B7B9B;
    }
  }
  .focus-visible\:ring-destructive\/20 {
    &:focus-visible {
      --tw-ring-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
  }
  .focus-visible\:ring-ring\/50 {
    &:focus-visible {
      --tw-ring-color: var(--ring);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
      }
    }
  }
  .active\:scale-95 {
    &:active {
      --tw-scale-x: 95%;
      --tw-scale-y: 95%;
      --tw-scale-z: 95%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  .active\:scale-\[0\.98\] {
    &:active {
      scale: 0.98;
    }
  }
  .active\:not-aria-\[haspopup\]\:translate-y-px {
    &:active {
      &:not(*[aria-haspopup]) {
        --tw-translate-y: 1px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .disabled\:pointer-events-none {
    &:disabled {
      pointer-events: none;
    }
  }
  .disabled\:cursor-not-allowed {
    &:disabled {
      cursor: not-allowed;
    }
  }
  .disabled\:bg-input\/50 {
    &:disabled {
      background-color: var(--input);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--input) 50%, transparent);
      }
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .in-data-\[slot\=button-group\]\:rounded-lg {
    :where(*[data-slot="button-group"]) & {
      border-radius: var(--radius);
    }
  }
  .has-data-\[icon\=inline-end\]\:pr-1\.5 {
    &:has(*[data-icon="inline-end"]) {
      padding-right: calc(var(--spacing) * 1.5);
    }
  }
  .has-data-\[icon\=inline-end\]\:pr-2 {
    &:has(*[data-icon="inline-end"]) {
      padding-right: calc(var(--spacing) * 2);
    }
  }
  .has-data-\[icon\=inline-start\]\:pl-1\.5 {
    &:has(*[data-icon="inline-start"]) {
      padding-left: calc(var(--spacing) * 1.5);
    }
  }
  .has-data-\[icon\=inline-start\]\:pl-2 {
    &:has(*[data-icon="inline-start"]) {
      padding-left: calc(var(--spacing) * 2);
    }
  }
  .has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\] {
    &:has(*[data-slot="card-action"]) {
      grid-template-columns: 1fr auto;
    }
  }
  .has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\] {
    &:has(*[data-slot="card-description"]) {
      grid-template-rows: auto auto;
    }
  }
  .has-data-\[slot\=card-footer\]\:pb-0 {
    &:has(*[data-slot="card-footer"]) {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .has-\[\>img\:first-child\]\:pt-0 {
    &:has(>img:first-child) {
      padding-top: calc(var(--spacing) * 0);
    }
  }
  .aria-expanded\:bg-muted {
    &[aria-expanded="true"] {
      background-color: var(--muted);
    }
  }
  .aria-expanded\:bg-secondary {
    &[aria-expanded="true"] {
      background-color: var(--secondary);
    }
  }
  .aria-expanded\:text-foreground {
    &[aria-expanded="true"] {
      color: var(--foreground);
    }
  }
  .aria-expanded\:text-secondary-foreground {
    &[aria-expanded="true"] {
      color: var(--secondary-foreground);
    }
  }
  .aria-invalid\:border-destructive {
    &[aria-invalid="true"] {
      border-color: var(--destructive);
    }
  }
  .aria-invalid\:ring-3 {
    &[aria-invalid="true"] {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .aria-invalid\:ring-destructive\/20 {
    &[aria-invalid="true"] {
      --tw-ring-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
  }
  .data-\[size\=sm\]\:gap-3 {
    &[data-size="sm"] {
      gap: calc(var(--spacing) * 3);
    }
  }
  .data-\[size\=sm\]\:py-3 {
    &[data-size="sm"] {
      padding-block: calc(var(--spacing) * 3);
    }
  }
  .data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0 {
    &[data-size="sm"] {
      &:has(*[data-slot="card-footer"]) {
        padding-bottom: calc(var(--spacing) * 0);
      }
    }
  }
  .sm\:col-span-2 {
    @media (width >= 40rem) {
      grid-column: span 2 / span 2;
    }
  }
  .sm\:mx-0 {
    @media (width >= 40rem) {
      margin-inline: calc(var(--spacing) * 0);
    }
  }
  .sm\:mt-24 {
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 24);
    }
  }
  .sm\:hidden {
    @media (width >= 40rem) {
      display: none;
    }
  }
  .sm\:inline {
    @media (width >= 40rem) {
      display: inline;
    }
  }
  .sm\:w-\[140px\] {
    @media (width >= 40rem) {
      width: 140px;
    }
  }
  .sm\:w-\[180px\] {
    @media (width >= 40rem) {
      width: 180px;
    }
  }
  .sm\:w-\[320px\] {
    @media (width >= 40rem) {
      width: 320px;
    }
  }
  .sm\:min-w-\[320px\] {
    @media (width >= 40rem) {
      min-width: 320px;
    }
  }
  .sm\:flex-1 {
    @media (width >= 40rem) {
      flex: 1;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:flex-col {
    @media (width >= 40rem) {
      flex-direction: column;
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:px-0 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 0);
    }
  }
  .sm\:pb-0 {
    @media (width >= 40rem) {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:absolute {
    @media (width >= 48rem) {
      position: absolute;
    }
  }
  .md\:top-\[88px\] {
    @media (width >= 48rem) {
      top: 88px;
    }
  }
  .md\:right-0 {
    @media (width >= 48rem) {
      right: calc(var(--spacing) * 0);
    }
  }
  .md\:bottom-0 {
    @media (width >= 48rem) {
      bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:bottom-6 {
    @media (width >= 48rem) {
      bottom: calc(var(--spacing) * 6);
    }
  }
  .md\:left-0 {
    @media (width >= 48rem) {
      left: calc(var(--spacing) * 0);
    }
  }
  .md\:left-6 {
    @media (width >= 48rem) {
      left: calc(var(--spacing) * 6);
    }
  }
  .md\:mx-0 {
    @media (width >= 48rem) {
      margin-inline: calc(var(--spacing) * 0);
    }
  }
  .md\:mt-0 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .md\:mt-4 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 4);
    }
  }
  .md\:mt-16 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 16);
    }
  }
  .md\:mb-1\.5 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 1.5);
    }
  }
  .md\:mb-4 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 4);
    }
  }
  .md\:mb-8 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .md\:mb-10 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .md\:ml-4 {
    @media (width >= 48rem) {
      margin-left: calc(var(--spacing) * 4);
    }
  }
  .md\:ml-auto {
    @media (width >= 48rem) {
      margin-left: auto;
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:h-3\.5 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 3.5);
    }
  }
  .md\:h-5 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 5);
    }
  }
  .md\:h-6 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 6);
    }
  }
  .md\:h-10 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 10);
    }
  }
  .md\:h-11 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 11);
    }
  }
  .md\:h-12 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 12);
    }
  }
  .md\:h-14 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 14);
    }
  }
  .md\:h-\[18px\] {
    @media (width >= 48rem) {
      height: 18px;
    }
  }
  .md\:h-\[46px\] {
    @media (width >= 48rem) {
      height: 46px;
    }
  }
  .md\:h-\[700px\] {
    @media (width >= 48rem) {
      height: 700px;
    }
  }
  .md\:h-\[calc\(100\%-2rem\)\] {
    @media (width >= 48rem) {
      height: calc(100% - 2rem);
    }
  }
  .md\:h-\[calc\(100vh-88px\)\] {
    @media (width >= 48rem) {
      height: calc(100vh - 88px);
    }
  }
  .md\:min-h-\[3rem\] {
    @media (width >= 48rem) {
      min-height: 3rem;
    }
  }
  .md\:min-h-\[220px\] {
    @media (width >= 48rem) {
      min-height: 220px;
    }
  }
  .md\:min-h-\[460px\] {
    @media (width >= 48rem) {
      min-height: 460px;
    }
  }
  .md\:min-h-\[500px\] {
    @media (width >= 48rem) {
      min-height: 500px;
    }
  }
  .md\:w-1\/2 {
    @media (width >= 48rem) {
      width: calc(1 / 2 * 100%);
    }
  }
  .md\:w-3\.5 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 3.5);
    }
  }
  .md\:w-5 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 5);
    }
  }
  .md\:w-6 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 6);
    }
  }
  .md\:w-10 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 10);
    }
  }
  .md\:w-11 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 11);
    }
  }
  .md\:w-12 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 12);
    }
  }
  .md\:w-\[18px\] {
    @media (width >= 48rem) {
      width: 18px;
    }
  }
  .md\:w-\[280px\] {
    @media (width >= 48rem) {
      width: 280px;
    }
  }
  .md\:w-\[320px\] {
    @media (width >= 48rem) {
      width: 320px;
    }
  }
  .md\:w-\[400px\] {
    @media (width >= 48rem) {
      width: 400px;
    }
  }
  .md\:w-full {
    @media (width >= 48rem) {
      width: 100%;
    }
  }
  .md\:max-w-\[22rem\] {
    @media (width >= 48rem) {
      max-width: 22rem;
    }
  }
  .md\:max-w-\[140px\] {
    @media (width >= 48rem) {
      max-width: 140px;
    }
  }
  .md\:max-w-\[150px\] {
    @media (width >= 48rem) {
      max-width: 150px;
    }
  }
  .md\:min-w-0 {
    @media (width >= 48rem) {
      min-width: calc(var(--spacing) * 0);
    }
  }
  .md\:flex-none {
    @media (width >= 48rem) {
      flex: none;
    }
  }
  .md\:translate-x-4 {
    @media (width >= 48rem) {
      --tw-translate-x: calc(var(--spacing) * 4);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .md\:-translate-y-\[64px\] {
    @media (width >= 48rem) {
      --tw-translate-y: calc(64px * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .md\:translate-y-0 {
    @media (width >= 48rem) {
      --tw-translate-y: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .md\:translate-y-2 {
    @media (width >= 48rem) {
      --tw-translate-y: calc(var(--spacing) * 2);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .md\:translate-y-full {
    @media (width >= 48rem) {
      --tw-translate-y: 100%;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-4 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:items-center {
    @media (width >= 48rem) {
      align-items: center;
    }
  }
  .md\:gap-1\.5 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 1.5);
    }
  }
  .md\:gap-2 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 2);
    }
  }
  .md\:gap-3 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .md\:gap-4 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .md\:gap-6 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .md\:gap-8 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .md\:gap-16 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 16);
    }
  }
  .md\:space-y-2 {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .md\:space-y-8 {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .md\:overflow-visible {
    @media (width >= 48rem) {
      overflow: visible;
    }
  }
  .md\:overflow-y-auto {
    @media (width >= 48rem) {
      overflow-y: auto;
    }
  }
  .md\:rounded-2xl {
    @media (width >= 48rem) {
      border-radius: calc(var(--radius) * 1.8);
    }
  }
  .md\:rounded-3xl {
    @media (width >= 48rem) {
      border-radius: calc(var(--radius) * 2.2);
    }
  }
  .md\:rounded-\[1\.5rem\] {
    @media (width >= 48rem) {
      border-radius: 1.5rem;
    }
  }
  .md\:rounded-\[2rem\] {
    @media (width >= 48rem) {
      border-radius: 2rem;
    }
  }
  .md\:rounded-xl {
    @media (width >= 48rem) {
      border-radius: calc(var(--radius) * 1.4);
    }
  }
  .md\:bg-transparent {
    @media (width >= 48rem) {
      background-color: transparent;
    }
  }
  .md\:bg-gradient-to-r {
    @media (width >= 48rem) {
      --tw-gradient-position: to right in oklab;
      background-image: linear-gradient(var(--tw-gradient-stops));
    }
  }
  .md\:via-\[\#F5F3F0\]\/60 {
    @media (width >= 48rem) {
      --tw-gradient-via: color-mix(in oklab, #F5F3F0 60%, transparent);
      --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
      --tw-gradient-stops: var(--tw-gradient-via-stops);
    }
  }
  .md\:p-5 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 5);
    }
  }
  .md\:p-6 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .md\:p-8 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .md\:p-10 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .md\:p-12 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 12);
    }
  }
  .md\:p-16 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 16);
    }
  }
  .md\:px-0 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 0);
    }
  }
  .md\:px-2 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 2);
    }
  }
  .md\:px-2\.5 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 2.5);
    }
  }
  .md\:px-3 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .md\:px-4 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .md\:px-5 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 5);
    }
  }
  .md\:px-6 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:px-8 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .md\:py-1\.5 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 1.5);
    }
  }
  .md\:py-4 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .md\:py-8 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .md\:py-16 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 16);
    }
  }
  .md\:pt-0 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 0);
    }
  }
  .md\:pt-8 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 8);
    }
  }
  .md\:pr-4 {
    @media (width >= 48rem) {
      padding-right: calc(var(--spacing) * 4);
    }
  }
  .md\:pb-0 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:pb-5 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 5);
    }
  }
  .md\:pb-8 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 8);
    }
  }
  .md\:text-left {
    @media (width >= 48rem) {
      text-align: left;
    }
  }
  .md\:text-2xl {
    @media (width >= 48rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .md\:text-3xl {
    @media (width >= 48rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .md\:text-5xl {
    @media (width >= 48rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .md\:text-6xl {
    @media (width >= 48rem) {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }
  .md\:text-base {
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .md\:text-lg {
    @media (width >= 48rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .md\:text-sm {
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .md\:text-xl {
    @media (width >= 48rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .md\:text-\[1\.125rem\] {
    @media (width >= 48rem) {
      font-size: 1.125rem;
    }
  }
  .md\:text-\[10px\] {
    @media (width >= 48rem) {
      font-size: 10px;
    }
  }
  .md\:text-\[11px\] {
    @media (width >= 48rem) {
      font-size: 11px;
    }
  }
  .md\:text-\[13px\] {
    @media (width >= 48rem) {
      font-size: 13px;
    }
  }
  .md\:text-\[14px\] {
    @media (width >= 48rem) {
      font-size: 14px;
    }
  }
  .md\:text-\[15px\] {
    @media (width >= 48rem) {
      font-size: 15px;
    }
  }
  .md\:text-\[16px\] {
    @media (width >= 48rem) {
      font-size: 16px;
    }
  }
  .md\:text-\[18px\] {
    @media (width >= 48rem) {
      font-size: 18px;
    }
  }
  .md\:text-\[20px\] {
    @media (width >= 48rem) {
      font-size: 20px;
    }
  }
  .md\:text-\[22px\] {
    @media (width >= 48rem) {
      font-size: 22px;
    }
  }
  .md\:text-\[24px\] {
    @media (width >= 48rem) {
      font-size: 24px;
    }
  }
  .md\:opacity-0 {
    @media (width >= 48rem) {
      opacity: 0%;
    }
  }
  .md\:group-hover\:-translate-y-\[64px\] {
    @media (width >= 48rem) {
      &:is(:where(.group):hover *) {
        @media (hover: hover) {
          --tw-translate-y: calc(64px * -1);
          translate: var(--tw-translate-x) var(--tw-translate-y);
        }
      }
    }
  }
  .md\:group-hover\:translate-y-0 {
    @media (width >= 48rem) {
      &:is(:where(.group):hover *) {
        @media (hover: hover) {
          --tw-translate-y: calc(var(--spacing) * 0);
          translate: var(--tw-translate-x) var(--tw-translate-y);
        }
      }
    }
  }
  .lg\:order-1 {
    @media (width >= 64rem) {
      order: 1;
    }
  }
  .lg\:order-2 {
    @media (width >= 64rem) {
      order: 2;
    }
  }
  .lg\:col-span-2 {
    @media (width >= 64rem) {
      grid-column: span 2 / span 2;
    }
  }
  .lg\:ml-8 {
    @media (width >= 64rem) {
      margin-left: calc(var(--spacing) * 8);
    }
  }
  .lg\:grid {
    @media (width >= 64rem) {
      display: grid;
    }
  }
  .lg\:w-\[320px\] {
    @media (width >= 64rem) {
      width: 320px;
    }
  }
  .lg\:w-auto {
    @media (width >= 64rem) {
      width: auto;
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-6 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[1fr_800px\] {
    @media (width >= 64rem) {
      grid-template-columns: 1fr 800px;
    }
  }
  .lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .lg\:gap-16 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 16);
    }
  }
  .lg\:gap-20 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 20);
    }
  }
  .lg\:p-10 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .lg\:text-2xl {
    @media (width >= 64rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .lg\:text-7xl {
    @media (width >= 64rem) {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }
  .lg\:text-\[4rem\] {
    @media (width >= 64rem) {
      font-size: 4rem;
    }
  }
  .dark\:border-input {
    &:is(.dark *) {
      border-color: var(--input);
    }
  }
  .dark\:bg-destructive\/20 {
    &:is(.dark *) {
      background-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
  }
  .dark\:bg-input\/30 {
    &:is(.dark *) {
      background-color: var(--input);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
  }
  .dark\:hover\:bg-destructive\/30 {
    &:is(.dark *) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--destructive);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--destructive) 30%, transparent);
          }
        }
      }
    }
  }
  .dark\:hover\:bg-input\/50 {
    &:is(.dark *) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--input);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--input) 50%, transparent);
          }
        }
      }
    }
  }
  .dark\:hover\:bg-muted\/50 {
    &:is(.dark *) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--muted);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--muted) 50%, transparent);
          }
        }
      }
    }
  }
  .dark\:focus-visible\:ring-destructive\/40 {
    &:is(.dark *) {
      &:focus-visible {
        --tw-ring-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
        }
      }
    }
  }
  .dark\:disabled\:bg-input\/80 {
    &:is(.dark *) {
      &:disabled {
        background-color: var(--input);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--input) 80%, transparent);
        }
      }
    }
  }
  .dark\:aria-invalid\:border-destructive\/50 {
    &:is(.dark *) {
      &[aria-invalid="true"] {
        border-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
        }
      }
    }
  }
  .dark\:aria-invalid\:ring-destructive\/40 {
    &:is(.dark *) {
      &[aria-invalid="true"] {
        --tw-ring-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
        }
      }
    }
  }
  .data-horizontal\:h-px {
    &:where([data-orientation="horizontal"]) {
      height: 1px;
    }
  }
  .data-horizontal\:w-full {
    &:where([data-orientation="horizontal"]) {
      width: 100%;
    }
  }
  .data-vertical\:w-px {
    &:where([data-orientation="vertical"]) {
      width: 1px;
    }
  }
  .data-vertical\:self-stretch {
    &:where([data-orientation="vertical"]) {
      align-self: stretch;
    }
  }
  .\[\&_svg\]\:pointer-events-none {
    & svg {
      pointer-events: none;
    }
  }
  .\[\&_svg\]\:shrink-0 {
    & svg {
      flex-shrink: 0;
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 3);
      height: calc(var(--spacing) * 3);
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 3.5);
      height: calc(var(--spacing) * 3.5);
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
  .\[\.border-b\]\:pb-4 {
    &:is(.border-b) {
      padding-bottom: calc(var(--spacing) * 4);
    }
  }
  .group-data-\[size\=sm\]\/card\:\[\.border-b\]\:pb-3 {
    &:is(:where(.group\/card)[data-size="sm"] *) {
      &:is(.border-b) {
        padding-bottom: calc(var(--spacing) * 3);
      }
    }
  }
  .\[a\]\:hover\:bg-destructive\/20 {
    &:is(a) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--destructive);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
          }
        }
      }
    }
  }
  .\[a\]\:hover\:bg-muted {
    &:is(a) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--muted);
        }
      }
    }
  }
  .\[a\]\:hover\:bg-primary\/80 {
    &:is(a) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--primary);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--primary) 80%, transparent);
          }
        }
      }
    }
  }
  .\[a\]\:hover\:bg-secondary\/80 {
    &:is(a) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--secondary);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
          }
        }
      }
    }
  }
  .\[a\]\:hover\:text-muted-foreground {
    &:is(a) {
      &:hover {
        @media (hover: hover) {
          color: var(--muted-foreground);
        }
      }
    }
  }
  .\*\:\[img\:first-child\]\:rounded-t-xl {
    :is(& > *) {
      &:is(img:first-child) {
        border-top-left-radius: calc(var(--radius) * 1.4);
        border-top-right-radius: calc(var(--radius) * 1.4);
      }
    }
  }
  .\*\:\[img\:last-child\]\:rounded-b-xl {
    :is(& > *) {
      &:is(img:last-child) {
        border-bottom-right-radius: calc(var(--radius) * 1.4);
        border-bottom-left-radius: calc(var(--radius) * 1.4);
      }
    }
  }
  .\[\&\>svg\]\:pointer-events-none {
    &>svg {
      pointer-events: none;
    }
  }
  .\[\&\>svg\]\:size-3\! {
    &>svg {
      width: calc(var(--spacing) * 3) !important;
      height: calc(var(--spacing) * 3) !important;
    }
  }
}
@layer utilities {
  .no-scrollbar::-webkit-scrollbar {
    display: none;
  }
  .no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
body {
  background-color: #FCFCFC;
  color: #121417;
  font-family: var(--font-sans);
}
@property --tw-animation-delay {
  syntax: "*";
  inherits: false;
  initial-value: 0s;
}
@property --tw-animation-direction {
  syntax: "*";
  inherits: false;
  initial-value: normal;
}
@property --tw-animation-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-animation-fill-mode {
  syntax: "*";
  inherits: false;
  initial-value: none;
}
@property --tw-animation-iteration-count {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-blur {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-opacity {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-rotate {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-scale {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@font-face {
  font-family: 'Geist Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(//sahalin.market/wp-content/themes/sahalin-theme/assets/css/./files/geist-variable-full.woff2) format('woff2-variations');
}
:root {
  --background: oklch(1 0 0);
  --foreground: oklch(0.145 0 0);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.145 0 0);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.145 0 0);
  --primary: oklch(0.205 0 0);
  --primary-foreground: oklch(0.985 0 0);
  --secondary: oklch(0.97 0 0);
  --secondary-foreground: oklch(0.205 0 0);
  --muted: oklch(0.97 0 0);
  --muted-foreground: oklch(0.556 0 0);
  --accent: oklch(0.97 0 0);
  --accent-foreground: oklch(0.205 0 0);
  --destructive: oklch(0.577 0.245 27.325);
  --border: oklch(0.922 0 0);
  --input: oklch(0.922 0 0);
  --ring: oklch(0.708 0 0);
  --chart-1: oklch(0.87 0 0);
  --chart-2: oklch(0.556 0 0);
  --chart-3: oklch(0.439 0 0);
  --chart-4: oklch(0.371 0 0);
  --chart-5: oklch(0.269 0 0);
  --radius: 0.625rem;
  --sidebar: oklch(0.985 0 0);
  --sidebar-foreground: oklch(0.145 0 0);
  --sidebar-primary: oklch(0.205 0 0);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.97 0 0);
  --sidebar-accent-foreground: oklch(0.205 0 0);
  --sidebar-border: oklch(0.922 0 0);
  --sidebar-ring: oklch(0.708 0 0);
}
.dark {
  --background: oklch(0.145 0 0);
  --foreground: oklch(0.985 0 0);
  --card: oklch(0.205 0 0);
  --card-foreground: oklch(0.985 0 0);
  --popover: oklch(0.205 0 0);
  --popover-foreground: oklch(0.985 0 0);
  --primary: oklch(0.922 0 0);
  --primary-foreground: oklch(0.205 0 0);
  --secondary: oklch(0.269 0 0);
  --secondary-foreground: oklch(0.985 0 0);
  --muted: oklch(0.269 0 0);
  --muted-foreground: oklch(0.708 0 0);
  --accent: oklch(0.269 0 0);
  --accent-foreground: oklch(0.985 0 0);
  --destructive: oklch(0.704 0.191 22.216);
  --border: oklch(1 0 0 / 10%);
  --input: oklch(1 0 0 / 15%);
  --ring: oklch(0.556 0 0);
  --chart-1: oklch(0.87 0 0);
  --chart-2: oklch(0.556 0 0);
  --chart-3: oklch(0.439 0 0);
  --chart-4: oklch(0.371 0 0);
  --chart-5: oklch(0.269 0 0);
  --sidebar: oklch(0.205 0 0);
  --sidebar-foreground: oklch(0.985 0 0);
  --sidebar-primary: oklch(0.488 0.243 264.376);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.269 0 0);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: oklch(1 0 0 / 10%);
  --sidebar-ring: oklch(0.556 0 0);
}
@layer base {
  * {
    border-color: var(--border);
    outline-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  body {
    background-color: var(--background);
    color: var(--foreground);
  }
  html {
    font-family: 'Geist Variable', sans-serif;
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-scroll-snap-strictness {
  syntax: "*";
  inherits: false;
  initial-value: proximity;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-scroll-snap-strictness: proximity;
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-content: "";
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
    }
  }
}

/*FILESTART*//**
 * Общая ширина контентной колонки: 1520px.
 * Мобильные боковые отступы — --sahalin-gutter (0.6rem).
 */

/* Страница не листается по горизонтали; внутренние карусели с overflow-x: auto — можно */
html {
	overflow-x: hidden;
	overflow-x: clip;
	max-width: 100%;
}

body {
	overflow-x: hidden;
	overflow-x: clip;
	width: 100%;
	max-width: 100%;
	position: relative;
}

@media (max-width: 767px) {
	html,
	body {
		overscroll-behavior-x: none;
	}

	body {
		touch-action: pan-y pinch-zoom;
	}

	/* Карусели с отрицательным margin не раздувают ширину документа */
	#primary,
	main,
	.sm-hero-wrap,
	.sm-hero-trust-wrap,
	.sm-hits,
	.sm-hits__main,
	.sm-cat-rows,
	.sm-cat-row,
	.sm-cat-row__main,
	.sm-popcat,
	.sm-popcat__inner,
	.sahalin-header-main,
	.sahalin-header-inner {
		max-width: 100%;
		overflow-x: clip;
	}

	.sm-hits__track,
	.sm-cat-row__track.sm-hits__track,
	.sm-hero-trust,
	.sahalin-header-quickcats-wrap {
		overscroll-behavior-x: contain;
	}
}

:root {
	--sahalin-gutter: 1.5rem;
}
@media (max-width: 767px) {
	:root {
		--sahalin-gutter: 0.6rem;
	}
}
.sahalin-content {
	width: 100%;
	max-width: 1520px;
	margin-left: auto;
	margin-right: auto;
	padding-left: max(var(--sahalin-gutter), env(safe-area-inset-left, 0px));
	padding-right: max(var(--sahalin-gutter), env(safe-area-inset-right, 0px));
	box-sizing: border-box;
}
/*FILESTART*//**
 * Карточка витрины: «Хиты продаж» (.sm-hits-card) и каталог WC (.popular-product-card.sm-showcase-card).
 * Шрифт Inter — как в шапке.
 */

.sm-hits-card,
.popular-product-card.sm-showcase-card {
	font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	-webkit-font-smoothing: antialiased;
	--psc-navy-deep: #001f3f;
	--psc-navy-btn: #003459;
	--psc-orange: #fd6422;
	--psc-muted: #6b7280;
	--psc-border: #e8eaef;
	background: #fff;
	border-radius: 12px;
	border: 1px solid var(--psc-border);
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.05);
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.sm-hits-card {
	flex: 0 0 clamp(9.75rem, 42vw, 11rem);
	height: auto;
	align-self: stretch;
	scroll-snap-align: start;
}

@media (min-width: 768px) {
	.sm-hits-card {
		flex: 0 0 clamp(10rem, 68vw, 12.25rem);
	}
}

@media (min-width: 900px) {
	.sm-hits-card {
		flex: none;
		width: auto;
	}
}

.popular-product-card.sm-showcase-card {
	height: 100%;
	min-height: 0;
	align-self: stretch;
}

.sm-hits-card:hover,
.popular-product-card.sm-showcase-card:hover {
	border-color: #dce0e8;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

.sm-hits-card__media {
	position: relative;
	aspect-ratio: 1 / 1;
	background: #f3f4f6;
	overflow: hidden;
}

.sm-hits-card__img-link {
	display: block;
	width: 100%;
	height: 100%;
}

.sm-hits-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}

.sm-hits-card:hover .sm-hits-card__img,
.popular-product-card.sm-showcase-card:hover .sm-hits-card__img {
	transform: scale(1.04);
}

.sm-hits-card__badges {
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	z-index: 2;
	pointer-events: none;
}

.sm-hits-card__badge {
	display: inline-block;
	padding: 0.2rem 0.45rem;
	border-radius: 5px;
	font-size: 0.625rem;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.sm-hits-card__badge--hit {
	background: #003459;
	color: #fff;
}

.sm-hits-card__badge--sale {
	background: var(--psc-orange);
	color: #fff;
}

/* WC вставляет «Просмотр корзины» после AJAX — на витрине не показываем. */
.sm-showcase-card .added_to_cart.wc-forward,
.popular-product-card.sm-showcase-card .added_to_cart.wc-forward {
	display: none !important;
}

.sm-hits-card__body {
	padding: 0.5rem 0.625rem 0.375rem;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 0;
	min-height: 0;
}

.sm-hits-card__title-link {
	flex: 1 1 auto;
	min-height: 0;
	text-decoration: none;
	color: inherit;
}

.sm-hits-card__title-link:hover .sm-hits-card__title,
.sm-hits-card__title-link:focus-visible .sm-hits-card__title {
	color: #4b7b9b;
}

.sm-hits-card__title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.25;
	color: var(--psc-navy-deep);
	transition: color 0.15s ease;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sm-hits-card__row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.5rem;
	margin-top: 0.35rem;
	padding-top: 0;
}

.sm-hits-card__prices {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35rem 0.5rem;
	min-width: 0;
}

.sm-hits-card__price {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.15;
	color: var(--psc-navy-deep);
	letter-spacing: -0.02em;
}

.sm-hits-card__price--per-kg {
	display: block;
}

.sm-hits-card__price-old {
	font-size: 0.75rem;
	font-weight: 500;
	color: #9ca3af;
	text-decoration: line-through;
}

.sm-hits-card__cart {
	flex-shrink: 0;
	width: 2.5rem;
	height: 2.5rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: var(--psc-navy-btn);
	color: #fff !important;
	text-decoration: none;
	transition: background 0.15s ease, transform 0.12s ease;
}

.sm-hits-card__cart:hover,
.sm-hits-card__cart:focus-visible {
	background: #002a48;
	color: #fff !important;
}

.sm-hits-card__cart:active {
	transform: scale(0.96);
}

.sm-hits-card__cart--disabled {
	opacity: 0.55;
	cursor: default;
	pointer-events: auto;
}

.sm-hits-card__cart-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

.sm-hits-card__cart-icon svg {
	display: block;
	width: 20px;
	height: 20px;
}

.sm-hits-card__cart--kg-open {
	border: 0;
	cursor: pointer;
	font: inherit;
}

.sm-hits-card__actions {
	display: flex;
	flex-direction: column;
	gap: 0;
	min-height: 0;
	margin-top: auto;
	width: 100%;
}

.sm-hits-card__row--footer {
	min-height: 2.75rem;
	align-items: center;
}

.sm-hits-card__footer-browse {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.5rem;
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}

.sm-hits-card__footer-browse[hidden] {
	display: none !important;
}

.sm-hits-card__footer-kg {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
	display: flex;
	align-items: center;
}

.sm-hits-card__footer-kg[hidden] {
	display: none !important;
}

.sm-hits-card__kg-pill {
	display: flex;
	flex: 1 1 auto;
	align-items: stretch;
	min-width: 0;
	min-height: 2.75rem;
	border-radius: 9999px;
	border: 1px solid var(--psc-border);
	background: #fff;
	box-sizing: border-box;
	overflow: hidden;
}

.sm-hits-card__kg-pill.is-loading .sm-hits-card__kg-pill-center {
	opacity: 0.45;
}

.sm-hits-card__pill-step {
	flex: 0 0 2.25rem;
	width: 2.25rem;
	border: 0;
	background: transparent;
	color: var(--psc-navy-deep);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	font-family: inherit;
}

.sm-hits-card__pill-step:hover,
.sm-hits-card__pill-step:focus-visible {
	background: rgba(0, 31, 63, 0.06);
}

.sm-hits-card__kg-pill-center {
	flex: 1 1 auto;
	min-width: 0;
	min-height: 2.55rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 0.15rem 0.2rem;
	gap: 0.05rem;
	text-align: center;
}

.sm-hits-card__kg-pill-center .js-sm-hits-qty-label {
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--psc-navy-deep);
	line-height: 1.15;
	white-space: nowrap;
}

.sm-hits-card__kg-pill-center .js-sm-hits-total-line {
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--psc-navy-deep);
	line-height: 1.2;
	min-height: 1.25em;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sm-hits-card__kg-pill-center .js-sm-hits-total-line .woocommerce-Price-amount,
.sm-hits-card__kg-pill-center .js-sm-hits-total-line * {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
}

.sm-hits-card__qty-input.screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Главная «Хиты»: компактнее карточка. */
.sm-hits .sm-hits-card {
	border-radius: 14px;
	height: 100%;
	min-height: 0;
}

.sm-hits .sm-hits-card__body {
	padding: 0.55rem 0.8rem 0.4rem;
	flex: 1 1 auto;
	min-height: 0;
}

.sm-hits .sm-hits-card__actions {
	margin-top: auto;
}

.sm-hits .sm-hits-card__row {
	margin-top: 0.35rem;
}

/* Карусели и сетка каталога: карточка на всю высоту ячейки. */
.sm-hits__track > .sm-hits-card,
.sm-cat-row__track.sm-hits__track > .sm-hits-card,
.catalog-products-grid .popular-product-card.sm-showcase-card {
	height: 100%;
	min-height: 0;
}

@media (max-width: 899px) {
	/* Горизонтальная карусель: доскролл до первой карточки без «залипания» scroll-padding. */
	.sm-hits__track,
	.sm-cat-row__track.sm-hits__track {
		--sm-carousel-pad-start: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-left, 0px));
		--sm-carousel-pad-end: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-right, 0px));
		margin-inline: calc(-1 * var(--sm-carousel-pad-start)) calc(-1 * var(--sm-carousel-pad-end));
		width: calc(100% + var(--sm-carousel-pad-start) + var(--sm-carousel-pad-end));
		padding-inline: var(--sm-carousel-pad-start) var(--sm-carousel-pad-end);
		scroll-padding-inline: 0;
		overscroll-behavior-x: contain;
	}

	.sm-hits__track > .sm-hits-card,
	.sm-cat-row__track.sm-hits__track > .sm-hits-card {
		flex: none;
		width: 100%;
		scroll-snap-align: start;
	}

	.sm-hits-card__title {
		min-height: 2.5em;
	}
}

@media (max-width: 767px) {
	.sm-hits .sm-hits-card__body,
	.sm-cat-row__track .sm-hits-card__body {
		padding: 0.45rem 0.5rem 0.65rem;
	}

	.sm-hits .sm-hits-card__title,
	.sm-cat-row__track .sm-hits-card__title {
		font-size: 0.8125rem;
		font-weight: 400;
	}

	.sm-hits .sm-hits-card__price,
	.sm-cat-row__track .sm-hits-card__price {
		font-size: 0.92rem;
	}

	.sm-hits-card__cart {
		width: 34px;
		height: 34px;
		min-width: 34px;
		border-radius: 7px;
	}

	.sm-hits-card__cart-icon svg {
		width: 18px;
		height: 18px;
	}

	.sm-hits-card__row--footer {
		min-height: 34px;
	}

	/* Компактный выбор кг на узких карточках — 36px по высоте */
	.sm-hits-card__pill-step {
		flex: 0 0 30px;
		width: 30px;
		min-height: 0;
		font-size: 0.9375rem;
	}

	.sm-hits-card__kg-pill {
		min-height: 36px;
		height: 36px;
	}

	.sm-hits-card__kg-pill-center {
		min-height: 0;
		padding: 0.04rem 0.08rem;
		gap: 0;
	}

	.sm-hits-card__kg-pill-center .js-sm-hits-qty-label {
		font-size: 0.7575rem;
		line-height: 1.1;
		font-weight: 600;
	}

	.sm-hits-card__kg-pill-center .js-sm-hits-total-line {
		font-size: clamp(0.5625rem, 2.8vw, 0.755rem);
		line-height: 1.15;
		overflow: visible;
		text-overflow: clip;
		white-space: nowrap;
		font-variant-numeric: tabular-nums;
		letter-spacing: -0.02em;
		font-weight: 600;
	}
}

/*FILESTART*//**
 * «Популярное» / legacy: стили вне Tailwind. Карточка WC с классом .sm-showcase-card — в product-showcase-card.css.
 */
.popular-product-card:not(.sm-showcase-card) {
	font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	-webkit-font-smoothing: antialiased;
}

.popular-product-card:not(.sm-showcase-card) .popular-product-card__meta {
	padding: 0.375rem 0.5rem 0.625rem;
}

@media (min-width: 768px) {
	.popular-product-card:not(.sm-showcase-card) .popular-product-card__meta {
		padding: 0.5rem 1rem 0.875rem;
		flex: 1 1 0%;
		min-height: 0;
		justify-content: space-between;
	}
}

.popular-product-card:not(.sm-showcase-card) .popular-product-card__unit {
	font-weight: 400;
}

@media (min-width: 768px) {
	.popular-product-card:not(.sm-showcase-card).group:hover .popular-product-card__meta {
		transform: translateY(-2.875rem);
	}
}

.popular-product-card:not(.sm-showcase-card) .popular-product-card__cta {
	margin-top: -0.1875rem;
}

.popular-product-card:not(.sm-showcase-card) .popular-product-card__cta .add_to_cart_button,
.popular-product-card:not(.sm-showcase-card) .popular-product-card__cta > div > button[type="button"] {
	font-size: 0.6875rem;
	line-height: 1.2;
}

@media (min-width: 768px) {
	.popular-product-card:not(.sm-showcase-card) .popular-product-card__cta .add_to_cart_button,
	.popular-product-card:not(.sm-showcase-card) .popular-product-card__cta > div > button[type="button"] {
		font-size: 0.8125rem;
	}
}

/*FILESTART*//**
 * Выпадающее меню «Каталог» в шапке.
 */

.sahalin-header-catalog {
	position: relative;
	z-index: 60;
	flex-shrink: 0;
}

.sahalin-header-catalog-panel {
	position: absolute;
	top: calc(100% + 0.5rem);
	left: 0;
	z-index: 70;
	min-width: 17.5rem;
	width: max-content;
	max-width: min(22rem, calc(100vw - 2rem));
	max-height: min(28rem, calc(100vh - 7rem));
	overflow-x: hidden;
	overflow-y: auto;
	background: #fff;
	border: 1px solid #e8eaef;
	border-radius: 12px;
	box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12);
	box-sizing: border-box;
}

.sahalin-header-catalog-panel[hidden] {
	display: none !important;
}

.sahalin-header-catalog.is-open .sahalin-header-catalog-btn {
	background-color: #002a48 !important;
}

.sahalin-header-catalog-menu {
	list-style: none;
	margin: 0;
	padding: 0.35rem 0;
}

.sahalin-header-catalog-menu__item {
	margin: 0;
	padding: 0;
}

.sahalin-header-catalog-menu__link {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.55rem 1rem;
	text-decoration: none;
	color: #111827;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.3;
	transition: background-color 0.12s ease, color 0.12s ease;
}

.sahalin-header-catalog-menu__link:hover,
.sahalin-header-catalog-menu__link:focus-visible {
	background: #f3f6f8;
	color: #003459;
	outline: none;
}

.sahalin-header-catalog-menu__link--all {
	font-weight: 600;
	margin-bottom: 0.15rem;
}

.sahalin-header-catalog-menu__icon {
	flex-shrink: 0;
	width: 1.375rem;
	height: 1.375rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #6b7280;
}

.sahalin-header-catalog-menu__icon-img {
	display: block;
	width: 1.375rem;
	height: 1.375rem;
	object-fit: contain;
}

.sahalin-header-catalog-menu__icon-placeholder {
	display: block;
	width: 1.25rem;
	height: 1.25rem;
}

.sahalin-header-catalog-menu__label {
	flex: 1 1 auto;
	min-width: 0;
}

.sahalin-header-catalog-menu__count {
	flex-shrink: 0;
	font-size: 0.75rem;
	font-weight: 500;
	color: #9ca3af;
}

@media (max-width: 767px) {
	.sahalin-header-catalog-mobile .sahalin-header-catalog {
		position: static;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog.is-open .sahalin-header-catalog-btn {
		visibility: hidden;
		pointer-events: none;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog.is-open::before {
		content: "";
		position: fixed;
		inset: 0;
		z-index: 190;
		background: rgba(18, 28, 43, 0.5);
		-webkit-tap-highlight-color: transparent;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog-panel--drawer {
		position: fixed;
		z-index: 200;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		min-width: 0;
		max-width: none;
		height: 100dvh;
		max-height: 100dvh;
		margin: 0;
		transform: translateY(-100%);
		transition: transform 0.28s ease-out;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		box-sizing: border-box;
		padding-top: 0;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog.is-open .sahalin-header-catalog-panel--drawer {
		transform: translateY(0);
	}

	.sahalin-header-catalog-panel__head {
		flex-shrink: 0;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		padding: max(0.35rem, env(safe-area-inset-top, 0px)) 1rem 0.35rem;
		border-bottom: 1px solid #f3f4f6;
		background: #fff;
	}

	.sahalin-header-catalog-panel__title {
		margin: 0;
		font-size: 1.025rem;
		font-weight: 500;
		line-height: 1.3;
		color: #003459;
	}

	.sahalin-header-catalog-panel__close {
		flex-shrink: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.05rem;
		height: 2.05rem;
		margin: 0;
		padding: 0;
		border: none;
		border-radius: 10px;
		background: #fff;
		color: #003459;
		cursor: pointer;
		box-sizing: border-box;
		transition: background-color 0.15s ease, color 0.15s ease;
	}

	.sahalin-header-catalog-panel__close:hover,
	.sahalin-header-catalog-panel__close:focus-visible {
		background: #f3f6f8;
		color: #001f3f;
		outline: none;
	}

	.sahalin-header-catalog-panel__scroll-wrap {
		position: relative;
		flex: 1 1 auto;
		min-height: 0;
		display: flex;
		flex-direction: column;
	}

	.sahalin-header-catalog-panel__scroll {
		flex: 1 1 auto;
		min-height: 0;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
	}

	.sahalin-header-catalog-panel__scroll-fade {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		height: 3.25rem;
		display: flex;
		align-items: flex-end;
		justify-content: center;
		padding-bottom: 0.4rem;
		pointer-events: none;
		background: linear-gradient(
			to bottom,
			rgba(255, 255, 255, 0) 0%,
			rgba(255, 255, 255, 0.88) 58%,
			#fff 100%
		);
		opacity: 0;
		transition: opacity 0.2s ease;
	}

	.sahalin-header-catalog-panel__scroll-wrap.is-scrollable:not(.is-at-end) .sahalin-header-catalog-panel__scroll-fade {
		opacity: 1;
	}

	.sahalin-header-catalog-panel__scroll-hint {
		display: inline-flex;
		color: #9ca3af;
		animation: sahalin-catalog-scroll-hint 1.8s ease-in-out infinite;
	}

	@keyframes sahalin-catalog-scroll-hint {
		0%,
		100% {
			transform: translateY(0);
			opacity: 0.65;
		}

		50% {
			transform: translateY(4px);
			opacity: 1;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.sahalin-header-catalog-panel__scroll-hint {
			animation: none;
			opacity: 0.85;
		}
	}

	.sahalin-header-catalog-panel__site-nav {
		flex-shrink: 0;
		border-top: 1px solid #e8eaef;
		background: #f9fafb;
		padding: 0.25rem 1rem 0.25rem;
	}
	.sahalin-header-catalog-panel__contacts-scroll {
	flex-shrink: 1;
	min-height: 0;
	max-height: 40vh;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	display: flex;
	flex-direction: column;
}

	.sahalin-header-catalog-panel__messengers {
		display: flex;
		flex-direction: column;
		gap: 0.5rem;
		padding: 0.75rem 1rem 1rem;
		border-top: 1px solid #e5e7eb;
	}

	.sahalin-header-catalog-panel__messenger {
		display: inline-flex;
		align-items: center;
		gap: 0.5rem;
		font-size: 0.9375rem;
		font-weight: 600;
		color: #003459;
		text-decoration: none;
	}

	.sahalin-header-catalog-panel__messenger:hover,
	.sahalin-header-catalog-panel__messenger:focus-visible {
		color: #002a48;
		text-decoration: underline;
	}

	.sahalin-header-catalog-panel__messenger-icon {
		flex-shrink: 0;
		width: 1.25rem;
		height: 1.25rem;
		border-radius: 50%;
		object-fit: cover;
	}

	.sahalin-header-catalog-panel__phones {
		flex-shrink: 0;
		display: flex;
		flex-direction: column;
		gap: 0.35rem;
		padding: 0.25rem 1rem max(0.85rem, env(safe-area-inset-bottom, 0px));
		background: #f9fafb;
	}

	.sahalin-header-catalog-panel__phone {
		display: block;
		text-decoration: none;
		color: #003459;
		font-size: 1.0625rem;
		font-weight: 600;
		line-height: 1.3;
		transition: color 0.12s ease;
	}

	.sahalin-header-catalog-panel__phone:hover,
	.sahalin-header-catalog-panel__phone:focus-visible {
		color: #4b7b9b;
		outline: none;
	}

	.sahalin-header-catalog-site-nav {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		gap: 0.15rem;
	}

	.sahalin-header-catalog-site-nav__item {
		margin: 0;
		padding: 0;
	}

	.sahalin-header-catalog-site-nav__link {
		display: block;
		padding: 0.45rem 0;
		text-decoration: none;
		color: #374151;
		font-size: 0.9375rem;
		font-weight: 500;
		line-height: 1.35;
		transition: color 0.12s ease;
	}

	.sahalin-header-catalog-site-nav__link:hover,
	.sahalin-header-catalog-site-nav__link:focus-visible {
		color: #003459;
		outline: none;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog-menu__link {
		padding: 0.7rem 1rem;
		font-size: 0.9375rem;
		font-weight: 400;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog-menu__link--all {
		margin-bottom: 0;
	}
}

body.sahalin-catalog-menu-open {
	overflow: hidden;
}

/*FILESTART*//**
 * Иконка корзины и бейдж количества в шапке (все страницы).
 */

.header-cart-link__icon-wrap {
	position: relative;
	display: inline-flex;
	flex-shrink: 0;
}

.header-cart-count {
	position: absolute;
	top: -8px;
	right: -10px;
	z-index: 1;
	min-width: 1.125rem;
	height: 1.125rem;
	padding: 0 0.25rem;
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 1.125rem;
	text-align: center;
	color: #fff;
	background: #dc2626;
	border-radius: 9999px;
	box-sizing: border-box;
}

.header-cart-count:empty,
.header-cart-count[data-count="0"] {
	display: none;
}

/*FILESTART*//**
 * Выпадающий поиск в шапке (подсказки).
 */

/* Шапка: Inter (как в UI-макетах); остальной сайт — Nunito с body */
header {
	font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/* Верхняя полоса: одинаковый шрифт у ссылок и tel: */
.sahalin-header-top-bar__link {
	font-family: inherit;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
	color: inherit;
	text-decoration: none;
	letter-spacing: 0;
	font-variant-numeric: normal;
	font-feature-settings: normal;
}

.sahalin-header-top-bar__link--tel {
	-webkit-text-size-adjust: 100%;
}

/**
 * Логотип: явные max-width / max-height.
 * В собранном main.css часто нет произвольных классов вроде max-w-[150px], базовый img { height: auto } тогда не даёт нужного масштаба.
 */
header .sahalin-header-logo {
	display: block;
	box-sizing: border-box;
	width: auto;
	height: auto;
	max-height: 36px;
	max-width: 175px;
	object-fit: contain;
	object-position: left center;
}

@media (min-width: 640px) {
	header .sahalin-header-logo {
		max-height: 42px;
		max-width: 205px;
	}
}

@media (min-width: 1024px) {
	header .sahalin-header-logo {
		max-height: 46px;
		max-width: 232px;
	}
}

.sahalin-live-search-panel {
	overflow: hidden;
	border-radius: 1rem;
	border: 1px solid #e5e7eb;
	background: #fff;
	box-shadow: 0 16px 48px rgba(15, 23, 42, 0.12), 0 0 0 1px rgba(15, 23, 42, 0.04);
}

.sahalin-live-search-scroll {
	max-height: min(22rem, 90vh);
	overflow-y: auto;
	padding: 0.375rem 0;
}

.sahalin-live-search-section + .sahalin-live-search-section {
	border-top: 1px solid #f3f4f6;
	margin-top: 0.25rem;
	padding-top: 0.25rem;
}

.sahalin-live-search-section__label {
	display: flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.5rem 0.875rem 0.375rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.055em;
	text-transform: uppercase;
	color: #9ca3af;
}

.sahalin-live-search-row {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0.125rem 0.375rem;
	padding: 0.5rem 0.625rem;
	border-radius: 0.625rem;
	text-decoration: none;
	color: inherit;
	transition: background-color 0.12s ease;
}

.sahalin-live-search-row:hover {
	background: #f9fafb;
}

.sahalin-live-search-row.is-focused {
	background: #e5ecf0;
}

.sahalin-live-search-row--cat .sahalin-live-search-row__main {
	font-size: 0.875rem;
	font-weight: 600;
	color: #1f2937;
	min-width: 0;
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sahalin-live-search-row--cat .sahalin-live-search-chevron {
	flex-shrink: 0;
	color: #d1d5db;
}

.sahalin-live-search-icon-cat {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.5rem;
	background: #f3f4f6;
	color: #6b7280;
}

.sahalin-live-search-thumb {
	flex-shrink: 0;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 0.625rem;
	overflow: hidden;
	background: #f3f4f6;
}

.sahalin-live-search-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sahalin-live-search-product-body {
	min-width: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
}

.sahalin-live-search-product-title {
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.35;
	color: #111827;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sahalin-live-search-price {
	flex-shrink: 0;
	margin-left: auto;
	padding-left: 0.5rem;
	font-size: 0.8125rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	color: #374151;
	white-space: nowrap;
}

.sahalin-live-search-empty {
	padding: 0.875rem 1rem;
	font-size: 0.875rem;
	color: #6b7280;
}

.sahalin-live-search-footer {
	display: block;
	margin-top: 0.25rem;
	padding: 0.75rem 1rem;
	border-top: 1px solid #f3f4f6;
	text-align: center;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #4b7b9b;
	text-decoration: none;
	transition: background-color 0.12s ease, color 0.12s ease;
}

.sahalin-live-search-footer:hover {
	background: #f8fafc;
	color: #3d637d;
}

/* --- Шапка: сетка мобильная / flex десктоп --- */
.sahalin-header-inner {
	display: grid;
	align-items: center;
	column-gap: 0.5rem;
	row-gap: 0.5rem;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.sahalin-header-inner {
		grid-template-columns: minmax(0, 1fr) auto auto auto;
		grid-template-areas:
			"logo catalog search cart"
			"cats cats cats cats";
		column-gap: 0.35rem;
		row-gap: 0.5rem;
	}

	.sahalin-header-logo-link {
		grid-area: logo;
		min-width: 0;
	}

	header .sahalin-header-logo {
		max-height: 40px;
		max-width: 182px;
	}

	.sahalin-header-catalog-desktop {
		display: none !important;
	}

	.sahalin-header-catalog-mobile {
		grid-area: catalog;
		min-width: 0;
	}

	.sahalin-header-search-wrap {
		grid-area: search;
		position: static;
		width: auto;
		max-width: none;
		flex: none;
	}

	.sahalin-header-cart-slot {
		grid-area: cart;
	}

	.sahalin-header-quickcats-wrap {
		grid-area: cats;
		min-width: 0;
		margin: 0 -0.25rem;
		padding: 0.125rem 0.25rem 0;
	}

	.sahalin-header-cart-slot .header-cart-link {
		width: 2.75rem;
		height: 2.75rem;
		min-width: 2.75rem;
		padding: 0;
		gap: 0;
	}

	.sahalin-header-cart-slot .header-cart-total {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog-btn--icon-only .sahalin-header-catalog-btn__label {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	.sahalin-header-catalog-mobile .sahalin-header-catalog-btn--icon-only {
		min-height: 2.75rem !important;
		height: 2.75rem !important;
		width: 2.75rem !important;
		padding: 0 !important;
		border-radius: 10px !important;
	}

	.sahalin-header-search-toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.75rem;
		height: 2.75rem;
		min-width: 2.75rem;
		padding: 0;
		border: 1px solid #e5e7eb;
		border-radius: 10px;
		background: #fff;
		color: #374151;
		cursor: pointer;
		box-sizing: border-box;
		transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
	}

	.sahalin-header-search-toggle:hover,
	.sahalin-header-search-toggle:focus-visible {
		border-color: #d1d5db;
		background: #f9fafb;
		color: #003459;
		outline: none;
	}

	.sahalin-header-search-wrap.is-search-open .sahalin-header-search-toggle {
		border-color: #4b7b9b;
		background: #eef4f8;
		color: #003459;
	}

	.sahalin-header-search-field {
		display: none;
	}

	.sahalin-header-main.is-search-open .sahalin-header-search-field {
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		z-index: 80;
		padding: 0.5rem var(--sahalin-gutter, 0.6rem) 0.65rem;
		background: #fff;
		border-bottom: 1px solid #e8eaef;
		box-shadow: 0 10px 28px rgba(15, 23, 42, 0.1);
		box-sizing: border-box;
	}

	.sahalin-header-search-field #sahalin-header-search {
		min-height: 2.75rem !important;
		height: 2.75rem !important;
		font-size: 0.875rem !important;
		padding-left: 0.75rem !important;
		padding-right: 3rem !important;
	}

	.sahalin-header-search-field .sahalin-header-search-field__icon {
		right: 1rem !important;
		width: 1rem;
		height: 1rem;
	}
}

@media (min-width: 768px) {
	.sahalin-header-search-toggle {
		display: none !important;
	}

	.sahalin-header-search-field {
		display: block !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		padding: 0 !important;
		border: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
	}
}

@media (min-width: 768px) {
	.sahalin-header-inner {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		gap: 1rem 1.25rem;
	}

	.sahalin-header-catalog-mobile,
	.sahalin-header-quickcats-wrap {
		display: none !important;
	}

	.sahalin-header-logo-link {
		flex-shrink: 0;
	}

	.sahalin-header-catalog-desktop {
		flex-shrink: 0;
	}

	.sahalin-header-search-wrap {
		flex: 0 0 340px;
		width: 340px;
		max-width: 340px;
	}

	.sahalin-header-cart-slot {
		flex-shrink: 0;
		margin-left: auto;
	}
}

.sahalin-header-quickcats__link {
	display: inline-block;
	padding: 0.35rem 0.65rem;
	border-radius: 9999px;
	background: #f3f4f6;
	color: #374151;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.sahalin-header-quickcats__link:hover,
.sahalin-header-quickcats__link:focus-visible {
	background: #e8ecf0;
	color: #003459;
}

/* --- Шапка: «Каталог» (фон вне Tailwind-сборки) + поиск 340px от sm --- */
.sahalin-header-toolbar {
	min-width: 0;
}

.sahalin-header-catalog-btn {
	background-color: #003459 !important;
	color: #fff !important;
	border: 1px solid #002a48 !important;
	border-radius: 10px !important;
	font-weight: 500 !important;
	font-size: 0.875rem !important;
	line-height: 1.25 !important;
	box-sizing: border-box !important;
	min-height: 48px !important;
	height: 48px !important;
	cursor: pointer !important;
}

@media (min-width: 640px) {
	.sahalin-header-catalog-btn {
		font-size: 15px !important;
	}
}

.sahalin-header-catalog-btn:hover,
.sahalin-header-catalog-btn:focus-visible {
	background-color: #002a48 !important;
	color: #fff !important;
	border-color: #00223a !important;
}

.sahalin-header-catalog-btn svg {
	color: currentColor;
}

.sahalin-header-catalog-btn > span {
	letter-spacing: 0.02em;
}

.sahalin-header-search-wrap {
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.sahalin-header-search-wrap {
		width: 100%;
		max-width: 100%;
		flex: 0 0 auto;
	}
}

#sahalin-header-search {
	border-radius: 10px !important;
	box-sizing: border-box !important;
	min-height: 48px !important;
	height: 48px !important;
	font-size: 0.875rem !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
}

@media (min-width: 640px) {
	#sahalin-header-search {
		font-size: 15px !important;
	}
}

#sahalin-header-search::placeholder {
	font-weight: 300 !important;
	font-size: inherit !important;
	line-height: inherit !important;
	opacity: 1 !important;
}

/* Десктоп: фиксированная ширина поиска (правила выше не должны перебиваться общими width:100%) */
@media (min-width: 768px) {
	.sahalin-header-search-wrap {
		flex: 0 0 340px;
		width: 340px;
		max-width: 340px;
		min-width: 0;
	}

	.sahalin-header-cart-slot .header-cart-link {
		min-height: 48px;
		height: 48px;
		box-sizing: border-box;
	}
}

/* Поле поиска: фиксированная ширина — только десктоп (см. .sahalin-header-inner) */

/*FILESTART*//**
 * Toast при добавлении в корзину.
 */

.sm-cart-notice-root {
	position: fixed;
	right: 1rem;
	bottom: 1rem;
	z-index: 100050;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.5rem;
	max-width: min(22rem, calc(100vw - 2rem));
	pointer-events: none;
}

@media (min-width: 768px) {
	.sm-cart-notice-root {
		right: 1.5rem;
		bottom: 1.5rem;
	}
}

.sm-cart-notice {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	width: 100%;
	padding: 0.875rem 1rem;
	font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 0.875rem;
	box-shadow: 0 10px 40px -12px rgba(0, 52, 89, 0.25);
	pointer-events: auto;
	opacity: 0;
	transform: translateY(0.75rem) scale(0.98);
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.sm-cart-notice.is-visible {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.sm-cart-notice.is-leaving {
	opacity: 0;
	transform: translateY(0.5rem) scale(0.98);
}

.sm-cart-notice__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 9999px;
	background: #e8f4ec;
	color: #047857;
}

.sm-cart-notice__body {
	flex: 1;
	min-width: 0;
}

.sm-cart-notice__title {
	margin: 0 0 0.2rem;
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.3;
	color: #001f3f;
}

.sm-cart-notice__product {
	margin: 0 0 0.5rem;
	font-size: 0.8125rem;
	line-height: 1.35;
	color: #6b7280;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sm-cart-notice__link {
	font-size: 0.8125rem;
	font-weight: 600;
	color: #4b7b9b;
	text-decoration: none;
}

.sm-cart-notice__link:hover {
	color: #003459;
	text-decoration: underline;
}

.sm-cart-notice__close {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	margin: -0.25rem -0.25rem 0 0;
	padding: 0;
	border: 0;
	border-radius: 0.375rem;
	background: transparent;
	color: #9ca3af;
	cursor: pointer;
	font-family: inherit;
	line-height: 1;
}

.sm-cart-notice__close:hover {
	background: #f3f4f6;
	color: #374151;
}

/*FILESTART*//**
 * Главная: первый экран «Свежесть Сахалина» + полоска доверия.
 * Шрифт: Montserrat (подключается в functions.php). Токены — под референс-макет.
 */

.sm-hero-wrap,
.sm-hero-trust-wrap {
	--sm-hero-navy: #121c2b;
	--sm-hero-navy-rgb: 18, 28, 43;
	--sm-hero-cta: #fd6422;
	--sm-hero-cta-hover: #e85518;
	--sm-hero-muted: #7f8c8d;
	--sm-hero-trust-bg: #f3f4f6;
	--sm-hero-font: "Montserrat", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	font-family: var(--sm-hero-font);
}

.sm-hero-wrap {
	max-width: 1520px;
	width: 100%;
	margin-top: 1rem;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sm-hero-wrap {
		margin-top: 1.25rem;
	}
}

.sm-hero-shell {
	position: relative;
	overflow: hidden;
	border-radius: 1.25rem;
	background: transparent;
	min-height: auto;
	font-family: inherit;
}

@media (min-width: 768px) {
	.sm-hero-shell {
		min-height: 30rem;
	}
}

.sm-hero-photo {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.sm-hero-photo::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		105deg,
		rgba(var(--sm-hero-navy-rgb), 0.25) 0%,
		rgba(var(--sm-hero-navy-rgb), 0.20) 42%,
		rgba(var(--sm-hero-navy-rgb), 0.15) 72%,
		rgba(var(--sm-hero-navy-rgb), 0.08) 100%
	);
}

.sm-hero-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 62% 50%;
}

@media (min-width: 768px) {
	.sm-hero-photo img {
		object-position: 68% 50%;
	}
}

@media (min-width: 1024px) {
	.sm-hero-photo img {
		object-position: 72% 50%;
	}
}

.sm-hero-grid {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding: 1.5rem var(--sahalin-gutter, 0.6rem) 1.75rem;
	height: 100%;
	min-height: inherit;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sm-hero-grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		column-gap: 2rem;
		row-gap: 1.5rem;
		padding: 2rem 2rem 2.5rem;
	}
}

@media (min-width: 1024px) {
	.sm-hero-grid {
		padding: 2.5rem 2.75rem 2.75rem;
		column-gap: 2.5rem;
	}
}

.sm-hero-copy {
	min-width: 0;
	width: 100%;
	max-width: none;
	color: #fff;
}

.sm-hero-kicker {
	font-size: 0.875rem;
	font-weight: 300;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.88);
	margin: 0 0 0.625rem;
	line-height: 1.3;
}

@media (min-width: 768px) {
	.sm-hero-kicker {
		font-size: 1rem;
		margin-bottom: 0.875rem;
	}
}

.sm-hero-title {
	font-family: inherit;
	font-size: 3.5rem;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.03em;
	margin: 0 0 0.75rem;
	display: flex;
	flex-direction: column;
	gap: 0.06em;
}

@media (min-width: 768px) {
	.sm-hero-title {
		margin-bottom: 1rem;
	}
}

.sm-hero-title__line {
	display: block;
}

.sm-hero-title__line--bold {
	font-weight: 600;
}

.sm-hero-title__line--muted {
	font-weight: 400;
	color: rgba(255, 255, 255, 0.9);
	white-space: nowrap;
}

.sm-hero-lead {
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.94);
	margin: 0 0 1.25rem;
	max-width: none;
}

@media (min-width: 768px) {
	.sm-hero-lead {
		font-size: 1.125rem;
		margin-bottom: 1.5rem;
	}
}

@media (min-width: 1024px) {
	.sm-hero-lead {
		font-size: 1.25rem;
	}
}

/* Три фичи: слот иконки + две строки */
.sm-hero-features {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

@media (min-width: 768px) {
	.sm-hero-features {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-start;
		gap: 1.5rem;
		margin-bottom: 1.75rem;
	}
}

@media (min-width: 1024px) {
	.sm-hero-features {
		gap: 2rem;
	}
}

.sm-hero-feature {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
}

.sm-hero-feature__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.8rem;
	height: 2.8rem;
	border-radius: 0;
	border: 0;
	background: transparent;
	overflow: hidden;
}

.sm-hero-feature__icon-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 0.1875rem;
	box-sizing: border-box;
}

.sm-hero-feature__text {
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	min-width: 0;
	font-size: 0.8125rem;
	line-height: 1.3;
	color: rgba(255, 255, 255, 0.92);
	text-align: left;
}

@media (min-width: 768px) {
	.sm-hero-feature__text {
		font-size: 0.8125rem;
		max-width: 9.5rem;
	}
}

.sm-hero-feature__line1 {
	font-weight: 600;
	display: block;
}

.sm-hero-feature__line2 {
	font-weight: 400;
	display: block;
	color: rgba(255, 255, 255, 0.94);
}

.sm-hero-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 240px;
	max-width: 100%;
	padding: 0.75rem 1rem;
	border-radius: 8px;
	background: var(--sm-hero-cta);
	color: #fff !important;
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	transition: background-color 0.15s ease, transform 0.15s ease;
}

.sm-hero-cta__label {
	white-space: nowrap;
}

.sm-hero-cta:hover,
.sm-hero-cta:focus-visible {
	background: var(--sm-hero-cta-hover);
	color: #fff !important;
}

.sm-hero-cta:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

@media (min-width: 768px) {
	.sm-hero-cta {
		width: 240px;
		padding: 0.8125rem 1rem;
		font-size: 1.0625rem;
		font-weight: 500;
	}
}

/* Белая карточка статистики — компактнее по ширине, кеглю и отступам */
.sm-hero-panel {
	width: 100%;
	max-width: 15rem;
	margin-left: 0;
	justify-self: end;
	align-self: center;
}

@media (min-width: 768px) {
	.sm-hero-panel {
		width: 15rem;
		max-width: 15rem;
	}
}

@media (min-width: 1024px) {
	.sm-hero-panel {
		width: 15rem;
		max-width: 15rem;
	}
}

.sm-hero-panel-inner {
	background: #fff;
	border-radius: 16px;
	padding: 0;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08);
}

.sm-hero-stat {
	padding: 1.25rem 1rem;
	border-top: 1px solid #e5e5e5;
}

.sm-hero-stat:first-child {
	border-top: 0;
}

.sm-hero-stat__head {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35em;
}

.sm-hero-stat__value {
	display: inline;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.05;
	color: #002855;
	letter-spacing: -0.03em;
	font-variant-numeric: tabular-nums;
}

.sm-hero-stat__mid {
	display: inline;
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.2;
	color: #121212;
}

.sm-hero-stat__sub {
	display: block;
	margin-top: 0;
	font-size: 0.8125rem;
	line-height: 1.4;
	color: #656565;
	font-weight: 500;
}

/* Полоска доверия */
.sm-hero-trust-wrap {
	max-width: 1520px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0.75rem;
	padding: 0;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sm-hero-trust-wrap {
		margin-top: 1rem;
	}
}

.sm-hero-trust {
	background: var(--sm-hero-trust-bg);
	border-radius: 1rem;
	padding: 0.875rem 1rem;
	font-family: inherit;
	display: flex;
	align-items: center;
	min-height: 3.25rem;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sm-hero-trust {
		padding: 1rem 1.25rem;
		border-radius: 1.25rem;
		min-height: 3.5rem;
	}
}

.sm-hero-trust-grid {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 0.75rem 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
	font-family: inherit;
	width: 100%;
}

@media (min-width: 640px) {
	.sm-hero-trust-grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: center;
		column-gap: 1rem;
		row-gap: 0.875rem;
	}
}

@media (min-width: 900px) {
	.sm-hero-trust-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0.75rem;
		row-gap: 0;
	}
}

@media (min-width: 1200px) {
	.sm-hero-trust-grid {
		column-gap: 1.25rem;
	}
}

.sm-hero-trust-item {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	min-width: 0;
	padding: 0.25rem 0;
	width: 100%;
	box-sizing: border-box;
}

@media (min-width: 640px) {
	.sm-hero-trust-item {
		padding: 0.15rem 0;
	}
}

.sm-hero-trust-item__icon {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border: 0;
	background: transparent;
	border-radius: 0;
	overflow: visible;
	box-sizing: border-box;
}

.sm-hero-trust-item__icon-img {
	display: block;
	width: 2.25rem;
	height: 2.25rem;
	object-fit: contain;
	padding: 0;
	box-sizing: border-box;
}

.sm-hero-trust-item__text {
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	min-width: 0;
	font-size: 0.8125rem;
	line-height: 1.35;
	color: #3d4f5f;
	font-weight: 500;
	text-align: left;
}

.sm-hero-trust-item__line1 {
	font-weight: 600;
	display: block;
	color: #111827;
}

.sm-hero-trust-item__line2 {
	font-weight: 400;
	display: block;
	color: #3d4f5f;
}

.sm-hero-trust-item__line2 strong {
	font-weight: 700;
	color: #111827;
}

/* ——— Мобильная главная: компактный герой, горизонтальный trust ——— */
@media (max-width: 767px) {
	.sm-hero-wrap,
	.sm-hero-trust-wrap {
		--sm-touch-min: 2.75rem;
	}

	.sm-hero-wrap {
		margin-top: 0;
		padding-left: 0;
		padding-right: 0;
		box-sizing: border-box;
	}

	.sm-hero-shell {
		border-radius: 0;
	}

	.sm-hero-trust-wrap {
		min-width: 0;
		margin-top: 0.5rem;
		padding-left: 0;
		padding-right: 0;
		box-sizing: border-box;
	}

	.sm-hero-grid {
		gap: 1rem;
		padding: 1rem var(--sahalin-gutter, 0.6rem) 1.25rem;
		padding-left: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-left, 0px));
		padding-right: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-right, 0px));
	}

	.sm-hero-photo::after {
		background: linear-gradient(
			180deg,
			rgba(var(--sm-hero-navy-rgb), 0.84) 0%,
			rgba(var(--sm-hero-navy-rgb), 0.74) 40%,
			rgba(var(--sm-hero-navy-rgb), 0.6) 70%,
			rgba(var(--sm-hero-navy-rgb), 0.48) 100%
		);
	}

	.sm-hero-kicker {
		font-size: 0.75rem;
		margin-bottom: 0.5rem;
	}

	.sm-hero-title {
		font-size: clamp(1.625rem, 7.2vw, 2.125rem);
		line-height: 1.12;
		margin-bottom: 0.625rem;
	}

	.sm-hero-title__line--muted {
		white-space: normal;
	}

	.sm-hero-lead {
		font-size: 1rem;
		margin-bottom: 1rem;
		line-height: 1.4;
	}

	.sm-hero-features {
		gap: 0.65rem;
		margin-bottom: 1rem;
	}

	.sm-hero-feature__icon {
		width: 2.25rem;
		height: 2.25rem;
	}

	.sm-hero-feature__text {
		font-size: 0.8125rem;
		color: #fff;
	}

	.sm-hero-feature__line1 {
		color: #fff;
	}

	.sm-hero-feature__line2 {
		color: rgba(255, 255, 255, 0.96);
	}

	.sm-hero-trust-item__icon {
		width: 1.75rem;
		height: 1.75rem;
	}

	.sm-hero-trust-item__icon-img {
		width: 1.75rem;
		height: 1.75rem;
	}

	.sm-hero-trust-item__text {
		font-size: 0.75rem;
		line-height: 1.3;
		color: #374151;
	}

	.sm-hero-trust-item__line1 {
		font-size: 0.8125rem;
		color: #111827;
		font-weight: 600;
	}

	.sm-hero-trust-item__line2 {
		font-size: 0.6875rem;
		color: #6b7280;
		font-weight: 400;
	}

	.sm-hero-trust-item__line2 strong {
		font-size: inherit;
		color: #111827;
	}

	.sm-hero-cta {
		width: 100%;
		min-height: var(--sm-touch-min);
		font-size: 0.9375rem;
		padding: 0.6875rem 1rem;
	}

	.sm-hero-panel {
		max-width: 100%;
		width: 100%;
	}

	.sm-hero-panel-inner {
		display: flex;
		flex-direction: row;
		align-items: stretch;
	}

	.sm-hero-stat {
		flex: 1 1 0;
		min-width: 0;
		padding: 0.75rem 0.4rem;
		border-top: 0;
		border-left: 1px solid #e5e5e5;
		text-align: center;
	}

	.sm-hero-stat:first-child {
		border-left: 0;
	}

	.sm-hero-stat__head {
		flex-direction: column;
		align-items: center;
		gap: 0.15rem;
	}

	.sm-hero-stat__value {
		font-size: 1.25rem;
	}

	.sm-hero-stat__mid {
		font-size: 0.6875rem;
		line-height: 1.2;
	}

	.sm-hero-stat__sub {
		display: none;
	}

	.sm-hero-trust {
		--sm-hero-trust-edge: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-left, 0px));
		--sm-hero-trust-edge-end: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-right, 0px));
		display: block;
		min-width: 0;
		padding: 0.625rem 0;
		min-height: 0;
		border-radius: 0.625rem;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
	}

	.sm-hero-trust::-webkit-scrollbar {
		display: none;
	}

	.sm-hero-trust-grid {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 0.5rem;
		margin: 0;
		padding: 0;
		width: max-content;
		min-width: 100%;
		box-sizing: border-box;
	}

	.sm-hero-trust-grid::before,
	.sm-hero-trust-grid::after {
		content: "";
		display: block;
		flex: 0 0 auto;
		width: var(--sm-hero-trust-edge);
		pointer-events: none;
	}

	.sm-hero-trust-grid::after {
		width: var(--sm-hero-trust-edge-end);
	}

	.sm-hero-trust-item {
		flex: 0 0 auto;
		width: min(14.5rem, 76vw);
		max-width: none;
		justify-content: flex-start;
		gap: 0.5rem;
		padding: 0.1rem 0;
	}
}

/*FILESTART*//**
 * Главная: сначала hero, блоки ниже — после DOMContentLoaded.
 */

@media (max-width: 767px) {
	body:not(.sm-home-ready) .sm-home-below-fold {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		content-visibility: hidden;
	}

	body.sm-home-ready .sm-home-below-fold {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		content-visibility: auto;
		transition: opacity 0.35s ease;
	}
}

.sm-home-below-fold {
	content-visibility: auto;
	contain-intrinsic-size: auto 520px;
}

/*FILESTART*//**
 * Главная: блок «Хиты продаж» (промо + карточки). Шрифт — Nunito (как контент сайта).
 */

.sm-hits {
	--sm-hits-navy: #002855;
	--sm-hits-navy-deep: #001f3f;
	--sm-hits-orange: #fd6422;
	--sm-hits-muted: #6b7280;
	--sm-hits-border: #e8eaef;
	--sm-hits-pad-start: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-left, 0px));
	--sm-hits-pad-end: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-right, 0px));
	font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	margin-top: 0;
	margin-bottom: 2rem;
	padding: 1.5rem 0;
	background-color: #faf8f5;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sm-hits {
		margin-top: 0;
		margin-bottom: 2.5rem;
		padding-left: 0;
		padding-right: 0;
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
}

.sm-hits__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	align-items: stretch;
	width: 100%;
	max-width: 1520px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

@media (min-width: 900px) {
	.sm-hits__inner {
		grid-template-columns: minmax(0, 300px) minmax(0, 1fr);
		gap: 1.25rem;
	}
}

@media (min-width: 1024px) {
	.sm-hits__inner {
		gap: 1.5rem;
	}
}

/* Промо слева */
.sm-hits__promo {
	position: relative;
	overflow: hidden;
	border-radius: 14px;
	min-height: 7.5rem;
	display: flex;
	align-items: stretch;
}

@media (min-width: 768px) {
	.sm-hits__promo {
		min-height: 11rem;
	}
}

@media (min-width: 900px) {
	.sm-hits__promo {
		min-height: 100%;
		align-self: stretch;
	}
}

.sm-hits__promo-bg {
	position: absolute;
	inset: 0;
	background-image: var(--sm-hits-promo-img);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.sm-hits__promo-inner {
	position: relative;
	z-index: 1;
	flex: 1 1 auto;
	min-height: 0;
	padding: 1rem 1.15rem 1.1rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	width: 100%;
	max-width: 58%;
	box-sizing: border-box;
}

.sm-hits__promo-stack {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.55rem;
	width: 100%;
	max-width: 100%;
	text-align: left;
}

.sm-hits__promo-title {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	font-family: inherit;
	font-size: clamp(1.35rem, 3.4vw, 1.875rem);
	font-weight: 800;
	line-height: 0.92;
	letter-spacing: -0.03em;
	color: var(--sm-hits-navy-deep);
}

.sm-hits__promo-title-line {
	display: block;
}

.sm-hits__promo-sub {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	font-family: inherit;
	font-size: clamp(0.8125rem, 1.9vw, 0.9375rem);
	font-weight: 500;
	line-height: 1.15;
	color: var(--sm-hits-navy-deep);
}

.sm-hits__promo-sub-line {
	display: block;
}

/* Заголовок + ссылка */
.sm-hits__main {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.sm-hits__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

.sm-hits__title {
	margin: 0;
	font-size: 1.45rem;
	font-weight: 500;
	line-height: 1.2;
	color: var(--sm-hits-navy-deep);
	letter-spacing: -0.02em;
}

.sm-hits__all {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--sm-hits-navy-deep);
	text-decoration: none;
	transition: color 0.15s ease;
}

.sm-hits__all:hover,
.sm-hits__all:focus-visible {
	color: #4b7b9b;
}

.sm-hits__all-arrow {
	display: flex;
	flex-shrink: 0;
}

.sm-hits__all-arrow svg {
	display: block;
}

/* Ряд карточек (карусель: grid — одинаковая высота карточек в ряду) */
.sm-hits__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: clamp(9.75rem, 42vw, 11rem);
	grid-template-rows: 1fr;
	align-items: stretch;
	justify-content: start;
	gap: 0.875rem;
	overflow-x: auto;
	overflow-y: visible;
	padding-bottom: 0.25rem;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x proximity;
}

@media (min-width: 768px) and (max-width: 899px) {
	.sm-hits__track {
		grid-auto-columns: clamp(10rem, 42vw, 12.25rem);
	}
}

@media (min-width: 900px) {
	.sm-hits__track {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 1rem;
		align-items: stretch;
		overflow: visible;
		padding-bottom: 0;
		scroll-snap-type: none;
	}
}

@media (min-width: 1200px) {
	.sm-hits__track {
		gap: 1.125rem;
	}
}

/* Слева — gutter контента, справа — выезд карусели (как у блоков категорий) */
@media (max-width: 899px) {
	.sm-hits__inner {
		padding-inline: var(--sm-hits-pad-start) var(--sm-hits-pad-end);
		box-sizing: border-box;
	}

	.sm-hits__track {
		margin-inline: 0 calc(-1 * var(--sm-hits-pad-end));
		width: calc(100% + var(--sm-hits-pad-end));
		padding-inline: 0 var(--sm-hits-pad-end);
		scroll-padding-inline: 0;
	}
}

@media (min-width: 900px) {
	.sm-hits__inner {
		padding-inline: 0;
	}

	.sm-hits__track {
		margin-inline: 0;
		width: 100%;
		padding-inline: 0;
	}
}

/* ——— Мобильная главная: хиты ——— */
@media (max-width: 767px) {
	.sm-hits {
		--sm-section-title: 1.125rem;
		--sm-touch-min: 2.75rem;
		padding-top: 1rem;
		padding-bottom: 1rem;
		margin-bottom: 30px;
	}

	.sm-hits__inner {
		gap: 1.8rem;
	}

	.sm-hits__promo-inner {
		padding: 0.75rem 0.85rem;
		max-width: 72%;
	}

	.sm-hits__promo-title {
		font-size: 1.6rem;
	}

	.sm-hits__promo-sub {
		font-size: 1rem;
	}

	.sm-hits__main {
		gap: 0.65rem;
	}

	.sm-hits .sm-hits__title {
		font-size: var(--sm-section-title, 1.125rem);
		font-weight: 500;
	}

	.sm-hits__all {
		font-size: 0.8125rem;
	}

	.sm-hits__track {
		gap: 0.65rem;
		scrollbar-width: none;
		scroll-snap-type: x proximity;
	}

	.sm-hits__track::-webkit-scrollbar {
		display: none;
	}
}

/* Карточка товара: assets/css/product-showcase-card.css */

/*FILESTART*//**
 * Главная: блок «Популярные категории» (16 карточек на мобильном, 15 на ПК).
 */

.sm-popcat {
	font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	margin-top: 0;
	margin-bottom: 2rem;
	padding: 0;
	background-color: #faf8f5;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.sm-popcat {
		margin-bottom: 5.5rem;
	}
}

.sm-popcat__inner {
	min-width: 0;
}

.sm-popcat__bar {
	margin: 0 0 0.75rem;
}

.sm-popcat__title {
	margin: 0;
}

.sm-popcat__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

@media (min-width: 768px) {
	.sm-popcat__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.875rem;
	}
}

@media (min-width: 768px) {
	/* На планшете и ПК — 15 карточек (16-я только на мобильном). */
	.sm-popcat__item--mobile-only {
		display: none;
	}
}

@media (min-width: 900px) {
	.sm-popcat__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 1rem;
	}
}

@media (min-width: 1200px) {
	.sm-popcat__grid {
		gap: 1.125rem;
	}
}

.sm-popcat__item {
	margin: 0;
	padding: 0;
	min-width: 0;
}

.sm-popcat__card {
	display: block;
	position: relative;
	width: 100%;
	min-height: 0;
	aspect-ratio: 1.15 / 1;
	border-radius: 12px;
	overflow: hidden;
	text-decoration: none;
	color: #fff;
	background-color: #1e3a52;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.sm-popcat__photo {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	pointer-events: none;
}

.sm-popcat__card:hover,
.sm-popcat__card:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.1);
	outline: none;
}

.sm-popcat__card:focus-visible {
	box-shadow: 0 0 0 3px #fff, 0 0 0 5px #003459;
}

.sm-popcat__card-shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0) 0%,
		rgba(0, 0, 0, 0) 58%,
		rgba(0, 0, 0, 0.28) 78%,
		rgba(0, 0, 0, 0.45) 88%,
		rgba(0, 0, 0, 0.62) 100%
	);
	pointer-events: none;
}

.sm-popcat__icon {
	position: absolute;
	top: 0.55rem;
	left: 0.55rem;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
	pointer-events: none;
}

.sm-popcat__icon img {
	display: block;
	width: 1.35rem;
	height: 1.35rem;
	object-fit: contain;
}

.sm-popcat__card-foot {
	position: absolute;
	inset: auto 0 0;
	z-index: 2;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.5rem;
	padding: 0.65rem 0.65rem 0.7rem;
	pointer-events: none;
}

.sm-popcat__label {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2rem;
	min-width: 0;
	flex: 1 1 auto;
	font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	-webkit-font-smoothing: antialiased;
}

.sm-popcat__name {
	font-size: 1.0625rem;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: -0.01em;
	color: #fff;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}

.sm-popcat__from {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.25;
	color: rgba(255, 255, 255, 0.92);
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

.sm-popcat__go {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 50%;
	background: #fff;
	color: #6b7280;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.1);
}

.sm-popcat__go svg {
	display: block;
}

@media (min-width: 768px) {
	.sm-popcat__bar {
		margin-bottom: 0.75rem;
	}

	.sm-popcat__card {
		border-radius: 14px;
	}

	.sm-popcat__icon {
		top: 0.65rem;
		left: 0.65rem;
		width: 2.5rem;
		height: 2.5rem;
	}

	.sm-popcat__icon img {
		width: 1.5rem;
		height: 1.5rem;
	}

	.sm-popcat__card-foot {
		padding: 0.75rem 0.75rem 0.8rem;
	}

	.sm-popcat__name {
		font-size: 1.125rem;
	}

	.sm-popcat__from {
		font-size: 0.9375rem;
	}

	.sm-popcat__go {
		width: 2rem;
		height: 2rem;
	}
}

@media (max-width: 767px) {
	.sm-popcat {
		--sm-section-title: 1.125rem;
		--sm-hits-navy-deep: #001f3f;
		margin-bottom: 1.25rem;
	}

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

	.sm-popcat__item--mobile-only {
		display: block;
	}

	.sm-popcat__inner {
		display: flex;
		flex-direction: column;
		gap: 0.65rem;
	}

	.sm-popcat__bar {
		margin-bottom: 0;
		flex-wrap: nowrap;
		gap: 0.5rem;
		align-items: center;
	}

	.sm-popcat .sm-popcat__title {
		flex: 1 1 auto;
		min-width: 0;
		font-size: var(--sm-section-title, 1.125rem);
		font-weight: 500;
		text-align: left;
		line-height: 1.25;
	}

	.sm-popcat__all {
		flex-shrink: 0;
		max-width: 48%;
		font-size: 0.8125rem;
		padding: 0.35rem 0;
		text-align: right;
		line-height: 1.25;
	}

	.sm-popcat__grid {
		gap: 0.65rem;
	}

	.sm-popcat__card {
		aspect-ratio: 1 / 1;
		border-radius: 10px;
	}

	.sm-popcat__card:hover,
	.sm-popcat__card:focus-visible {
		transform: none;
	}

	.sm-popcat__icon {
		top: 0.4rem;
		left: 0.4rem;
		width: 1.85rem;
		height: 1.85rem;
	}

	.sm-popcat__icon img {
		width: 1.1rem;
		height: 1.1rem;
	}

	.sm-popcat__card-foot {
		padding: 0.45rem 0.45rem 0.5rem;
		gap: 0.35rem;
	}

	.sm-popcat__label {
		gap: 0.1rem;
	}

	.sm-popcat__name {
		font-size: 0.8125rem;
		line-height: 1.2;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.sm-popcat__from {
		font-size: 0.6875rem;
		line-height: 1.2;
	}

	.sm-popcat__go {
		width: 34px;
		height: 34px;
		min-width: 34px;
		border-radius: 7px;
	}

	.sm-popcat__go svg {
		width: 18px;
		height: 18px;
	}
}

@media (min-width: 768px) {
	.sm-popcat__bar {
		position: relative;
		margin-bottom: 0.75rem;
		min-height: 2.5rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.sm-popcat__title {
		width: 100%;
		font-size: 1.45rem;
		font-weight: 500;
		line-height: 1.2;
		color: #001f3f;
		letter-spacing: -0.02em;
		text-align: center;
	}

	.sm-popcat__all {
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.4rem;
		margin: 0;
		padding: 0;
		border: none;
		background: none;
		color: #001f3f;
		font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
		font-size: 1rem;
		font-weight: 500;
		line-height: 1.25;
		text-decoration: none;
		transition: color 0.15s ease;
	}

	.sm-popcat__all:hover,
	.sm-popcat__all:focus-visible {
		color: #4b7b9b;
	}

	.sm-popcat__all:focus-visible {
		outline: 2px solid #003459;
		outline-offset: 3px;
		border-radius: 4px;
	}
}

/*FILESTART*//**
 * Главная: карусели товаров по категориям (как «Хиты продаж», 5 карточек).
 */

.sm-cat-rows {
	--sm-hits-navy-deep: #001f3f;
	font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	margin-bottom: 2rem;
	padding: 0 0 1.5rem;
	background-color: #faf8f5;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.sm-cat-rows {
		margin-bottom: 30px;
	}
}

@media (min-width: 768px) {
	.sm-cat-rows {
		margin-bottom: 2.5rem;
		padding-bottom: 2rem;
	}
}

.sm-cat-rows__inner {
	display: flex;
	flex-direction: column;
	gap: 85px;
	width: 100%;
	max-width: 1520px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.sm-cat-row {
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.sm-cat-row__main {
	--sm-cat-row-pad-start: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-left, 0px));
	--sm-cat-row-pad-end: max(var(--sahalin-gutter, 0.6rem), env(safe-area-inset-right, 0px));
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding-left: var(--sm-cat-row-pad-start);
	box-sizing: border-box;
}

.sm-cat-row__all--head {
	display: none;
}

.sm-cat-row__head {
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	flex-wrap: nowrap;
}

.sm-cat-row__footer {
	margin: 0.25rem 0 0;
	padding: 0;
	text-align: center;
}

.sm-cat-row__title {
	width: 100%;
	text-align: center;
}

.sm-cat-row__all--foot {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	margin: 0;
	padding: 0.7rem 1.45rem;
	border-radius: 999px;
	background-color: #003459;
	color: #fff;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.sm-cat-row__all--foot:hover,
.sm-cat-row__all--foot:focus-visible {
	color: #fff;
	background-color: #002855;
	box-shadow: 0 4px 14px rgba(0, 52, 89, 0.28);
}

.sm-cat-row__all--foot:focus-visible {
	outline: 2px solid #003459;
	outline-offset: 3px;
}

.sm-cat-row__all--foot .sm-hits__all-arrow svg {
	display: block;
}

/* Карусель (grid — одинаковая высота карточек в ряду) */
.sm-cat-row__track.sm-hits__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: clamp(9.75rem, 42vw, 11rem);
	grid-template-rows: 1fr;
	align-items: stretch;
	justify-content: start;
	gap: 0.65rem;
	overflow-x: auto;
	overflow-y: visible;
	padding-bottom: 0.25rem;
	-webkit-overflow-scrolling: touch;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
}

@media (min-width: 768px) and (max-width: 899px) {
	.sm-cat-row__track.sm-hits__track {
		grid-auto-columns: clamp(10rem, 42vw, 12.25rem);
	}
}

.sm-cat-row__track.sm-hits__track::-webkit-scrollbar {
	display: none;
}


@media (min-width: 900px) {
	.sm-cat-row__main {
		--sm-cat-row-pad-start: 0;
		--sm-cat-row-pad-end: 0;
		padding-left: 0;
	}

	.sm-cat-row__track.sm-hits__track {
		display: grid;
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 1rem;
		align-items: stretch;
		overflow: visible;
		padding-bottom: 0;
		scroll-snap-type: none;
		margin-inline: 0;
		width: 100%;
		padding-inline: 0;
	}

	.sm-cat-row__track .sm-hits-card {
		flex: none;
		width: auto;
	}
}

@media (min-width: 1200px) {
	.sm-cat-row__track.sm-hits__track {
		gap: 1.125rem;
	}
}

/* Карусель: слева gutter контента, справа — выезд за край (перебивает общий breakout) */
@media (max-width: 899px) {
	.sm-cat-row__track.sm-hits__track {
		margin-inline: 0 calc(-1 * var(--sm-cat-row-pad-end));
		width: calc(100% + var(--sm-cat-row-pad-end));
		padding-inline: 0 var(--sm-cat-row-pad-end);
		scroll-padding-inline: 0;
	}
}

/* ——— Мобильная: как «Хиты продаж» ——— */
@media (max-width: 767px) {
	.sm-cat-rows {
		--sm-section-title: 1.125rem;
	}

	.sm-cat-rows__inner {
		gap: 60px;
	}

	.sm-cat-row {
		gap: 0;
	}

	.sm-cat-row__main {
		gap: 0.65rem;
	}

	.sm-cat-row .sm-hits__head.sm-cat-row__head {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		text-align: left;
		flex-wrap: nowrap;
		gap: 0.5rem;
		margin-left: 0;
		padding-left: 0;
	}

	.sm-cat-row__title {
		width: auto;
		flex: 1 1 auto;
		min-width: 0;
		text-align: left;
		font-size: var(--sm-section-title, 1.125rem);
		font-weight: 600;
	}

	.sm-cat-row__all--head {
		display: inline-flex;
		flex-shrink: 0;
		min-height: unset;
		font-size: 0.8125rem;
		font-weight: 500;
		color: var(--sm-hits-navy-deep);
		background: none;
		border-radius: 0;
		box-shadow: none;
	}

	.sm-cat-row__all--head:hover,
	.sm-cat-row__all--head:focus-visible {
		color: #4b7b9b;
		background: none;
		box-shadow: none;
	}

	.sm-cat-row__footer {
		display: none;
	}
}

/*FILESTART*//**
 * Главная: SEO-текст под блоками витрины.
 */
.sm-home-seo {
	font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	margin: 0;
	padding: 2.5rem 0 4.5rem;
	background-color: #fff;
	box-sizing: border-box;
}
@media (min-width: 768px) {
	.sm-home-seo {
		margin: 0;
		padding-top: 3.5rem;
		padding-bottom: 6rem;
	}
}
.sm-home-seo__inner {
	/*max-width: 52rem;*/
}
.sm-home-seo__title {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.3;
	color: #001f3f;
	letter-spacing: -0.02em;
}
.sm-home-seo__lead {
	margin: 0.5rem 0 0;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.35;
	color: #003459;
}
.sm-home-seo__intro,
.sm-home-seo__p,
.sm-home-seo__outro {
	margin: 1rem 0 0;
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.65;
	color: #374151;
}
.sm-home-seo__block {
	margin-top: 1.5rem;
}
.sm-home-seo__heading {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.35;
	color: #001f3f;
}
.sm-home-seo__list {
	margin: 0.75rem 0 0;
	padding: 0 0 0 1.15rem;
	list-style: disc;
}
.sm-home-seo__list li::marker {
	color: #fd6422;
}
.sm-home-seo__list--features {
	list-style: none;
	padding-left: 0;
}
.sm-home-seo__item {
	margin: 0 0 0.55rem;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #374151;
}
.sm-home-seo__list--features .sm-home-seo__item:last-child,
.sm-home-seo__list .sm-home-seo__item:last-child {
	margin-bottom: 0;
}
.sm-home-seo__item-title {
	font-weight: 600;
	color: #001f3f;
}
.sm-home-seo__contact {
	margin: 1.25rem 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.sm-home-seo__contact-item {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #374151;
}
.sm-home-seo__contact-label {
	font-weight: 500;
	color: #001f3f;
}
.sm-home-seo__contact-link {
	color: #003459;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.15s ease;
}
.sm-home-seo__phones {
	margin-left: 0.25rem;
}
.sm-home-seo__contact-link:hover,
.sm-home-seo__contact-link:focus-visible {
	color: #4b7b9b;
}
.sm-home-seo__contact-text {
	margin-left: 0.25rem;
}
.sm-home-seo__contact-text--multiline {
	display: block;
	margin: 0.15rem 0 0;
	white-space: pre-line;
}
.sm-home-seo__outro {
	margin-top: 1.5rem;
	font-weight: 500;
	color: #001f3f;
}
/*FILESTART*//**
 * Футер сайта — Montserrat и шкала как на главной (hero / SEO-блок).
 */

.sm-footer {
	--sm-footer-font: "Montserrat", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	--sm-footer-text: #374151;
	--sm-footer-muted: #6b7280;
	--sm-footer-heading: #121c2b;
	--sm-footer-brand: #003459;
	--sm-footer-accent: #4b7b9b;

	font-family: var(--sm-footer-font);
	font-size: 0.9375rem;
	line-height: 1.5;
	margin-top: 0;
	background: #fff;
	border-top: 0;
	color: var(--sm-footer-text);
	-webkit-font-smoothing: antialiased;
}

.sm-footer__inner {
	padding: 2rem var(--sahalin-gutter, 0.6rem) 1.25rem;
}

@media (min-width: 768px) {
	.sm-footer__inner {
		padding-top: 2.25rem;
		padding-bottom: 1.5rem;
	}
}

.sm-footer__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

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

@media (min-width: 1024px) {
	.sm-footer__grid {
		grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1.15fr);
		gap: 2rem 1.5rem;
	}
}

.sm-footer__logo {
	display: inline-block;
	margin-bottom: 1rem;
}

.sm-footer__logo img {
	display: block;
	width: min(200px, 100%);
	height: auto;
}

.sm-footer__legal {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: var(--sm-footer-muted);
}

.sm-footer__city {
	margin: 0 0 0.35rem;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.45;
	color: var(--sm-footer-heading);
}

.sm-footer__list--streets {
	margin-top: 0;
}
.sm-footer__list--streets .sm-footer__icon {
	color: #fd6422;
}

.sm-footer__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.sm-footer__link {
	display: inline-flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: inherit;
	line-height: 1.5;
	color: var(--sm-footer-text);
	text-decoration: none;
	transition: color 0.15s ease;
}

.sm-footer__link:hover,
.sm-footer__link:focus-visible {
	color: var(--sm-footer-accent);
}

.sm-footer__link--plain {
	display: inline;
}

.sm-footer__icon {
	flex-shrink: 0;
	width: 1rem;
	height: 1rem;
	margin-top: 0.15rem;
	color: var(--sm-footer-accent);
}

.sm-footer__icon--img {
	display: block;
	object-fit: cover;
	border-radius: 50%;
}

.sm-footer__schedule-title {
	margin: 1rem 0 0.2rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--sm-footer-heading);
}

.sm-footer__schedule-hours {
	margin: 0;
	font-size: 0.875rem;
	color: var(--sm-footer-muted);
}

.sm-footer__contacts .sm-footer__link {
	font-weight: 500;
}

.sm-footer__contacts .sm-footer__link--tel {
	font-size: 1rem;
	font-weight: 700;
	color: var(--sm-footer-heading);
	letter-spacing: -0.01em;
}

.sm-footer__social-title {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--sm-footer-muted);
}

.sm-footer__social-links {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.sm-footer__social-links .sm-footer__link {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--sm-footer-brand);
}

.sm-footer__callback-title {
	margin: 0 0 0.45rem;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--sm-footer-heading);
	letter-spacing: -0.02em;
}

.sm-footer__callback-text {
	margin: 0 0 0.85rem;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--sm-footer-muted);
}

.sm-footer__callback-text a {
	color: var(--sm-footer-brand);
	font-weight: 700;
	text-decoration: none;
}

.sm-footer__callback-text a:hover,
.sm-footer__callback-text a:focus-visible {
	color: var(--sm-footer-accent);
}

.sm-footer__callback-form {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

@media (min-width: 480px) {
	.sm-footer__callback-row {
		display: flex;
		align-items: stretch;
		gap: 0.5rem;
		max-width: 24rem;
	}
}

.sm-footer__callback-input {
	flex: 1 1 auto;
	min-width: 0;
	height: 2.75rem;
	padding: 0 0.875rem;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	font-family: inherit;
	font-size: 0.875rem;
	color: var(--sm-footer-heading);
	background: #fff;
}

.sm-footer__callback-input::placeholder {
	color: #9ca3af;
}

.sm-footer__callback-input:focus {
	outline: none;
	border-color: var(--sm-footer-accent);
	box-shadow: 0 0 0 3px rgba(75, 123, 155, 0.2);
}

.sm-footer__callback-submit {
	flex-shrink: 0;
	height: 2.75rem;
	padding: 0 1.125rem;
	border: none;
	border-radius: 8px;
	background: var(--sm-footer-brand);
	color: #fff;
	font-family: inherit;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	white-space: nowrap;
	cursor: pointer;
	transition: background 0.15s ease;
}

.sm-footer__callback-submit:hover,
.sm-footer__callback-submit:focus-visible {
	background: #002a48;
}

.sm-footer__callback-submit:disabled {
	opacity: 0.65;
	cursor: wait;
}

.sm-footer__callback-status {
	margin: 0;
	min-height: 1.35rem;
	font-size: 0.875rem;
	line-height: 1.45;
	color: var(--sm-footer-brand);
}

.sm-footer__callback-status.is-error {
	color: #b91c1c;
}

.sm-footer__bottom {
	margin-top: 2rem;
	padding-top: 1.25rem;
	border-top: 1px solid #f3f4f6;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

@media (min-width: 768px) {
	.sm-footer__bottom {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
	}
}

.sm-footer__copyright {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.5;
	color: var(--sm-footer-muted);
}

.sm-footer__legal-link {
	font-size: 0.8125rem;
	line-height: 1.45;
	color: var(--sm-footer-muted);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.sm-footer__legal-link:hover,
.sm-footer__legal-link:focus-visible {
	color: var(--sm-footer-accent);
}

@media (max-width: 767px) {
	.sm-footer {
		font-size: 0.8125rem;
		line-height: 1.5;
	}

	.sm-footer__inner {
		padding: 1.25rem var(--sahalin-gutter, 0.6rem) 1rem;
	}

	.sm-footer__grid {
		gap: 1.25rem;
	}

	.sm-footer__logo {
		margin-bottom: 0.65rem;
	}

	.sm-footer__logo img {
		width: min(140px, 58vw);
	}

	.sm-footer__legal {
		font-size: 0.75rem;
		line-height: 1.5;
	}

	.sm-footer__list {
		gap: 0.5rem;
	}

	.sm-footer__link {
		gap: 0.4rem;
		font-size: 0.8125rem;
		line-height: 1.45;
	}

	.sm-footer__icon {
		width: 1rem;
		height: 1rem;
		margin-top: 0.15rem;
	}

	.sm-footer__schedule-title {
		margin: 0.75rem 0 0.15rem;
		font-size: 0.875rem;
	}

	.sm-footer__schedule-hours {
		font-size: 0.8125rem;
	}

	.sm-footer__contacts .sm-footer__link--tel {
		font-size: 0.9375rem;
	}

	.sm-footer__social-title {
		margin: 0 0 0.5rem;
		font-size: 0.6875rem;
	}

	.sm-footer__social-links {
		gap: 0.35rem;
	}

	.sm-footer__social-links .sm-footer__link {
		font-size: 0.8125rem;
		font-weight: 600;
	}

	.sm-footer__callback-title {
		margin-bottom: 0.35rem;
		font-size: 0.9375rem;
	}

	.sm-footer__callback-text {
		margin-bottom: 0.65rem;
		font-size: 0.8125rem;
		line-height: 1.45;
	}

	.sm-footer__callback-form {
		gap: 0.35rem;
	}

	.sm-footer__callback-row {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 0.4rem;
		max-width: none;
	}

	.sm-footer__callback-input {
		height: 2.5rem;
		padding: 0 0.75rem;
		font-size: 0.875rem;
		border-radius: 7px;
	}

	.sm-footer__callback-submit {
		width: 100%;
		height: 2.5rem;
		padding: 0 1rem;
		font-size: 0.8125rem;
		border-radius: 7px;
	}

	.sm-footer__callback-status {
		min-height: 1.15rem;
		font-size: 0.75rem;
	}

	.sm-footer__bottom {
		margin-top: 1rem;
		padding-top: 0.85rem;
		gap: 0.5rem;
	}

	.sm-footer__copyright,
	.sm-footer__legal-link {
		font-size: 0.75rem;
		line-height: 1.45;
	}
}

/*FILESTART*//**
 * Нижняя панель навигации (мобильные).
 */

@media (min-width: 768px) {
	.sm-mobile-bar {
		display: none !important;
	}

	body.sm-has-mobile-bar {
		padding-bottom: 0;
	}
}

@media (max-width: 767px) {
	:root {
		--sm-mobile-bar-inner-height: 50px;
	}

	body.sm-has-mobile-bar {
		padding-bottom: calc(var(--sm-mobile-bar-inner-height) + env(safe-area-inset-bottom, 0px));
	}

	.sm-mobile-bar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 55;
		box-sizing: border-box;
		min-height: calc(var(--sm-mobile-bar-inner-height) + env(safe-area-inset-bottom, 0px));
		padding-bottom: env(safe-area-inset-bottom, 0px);
		background: #fff;
		border-top: 1px solid #e8eaef;
		box-shadow: 0 -4px 20px rgba(15, 23, 42, 0.08);
		font-family: "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
		-webkit-font-smoothing: antialiased;
		overflow: visible;
		transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		will-change: transform;
	}

	.sm-mobile-bar__list {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		align-items: center;
		margin: 0;
		height: var(--sm-mobile-bar-inner-height);
		min-height: var(--sm-mobile-bar-inner-height);
		max-height: var(--sm-mobile-bar-inner-height);
		padding: 0 max(0.25rem, env(safe-area-inset-left, 0px)) 0 max(0.25rem, env(safe-area-inset-right, 0px));
		list-style: none;
		flex-shrink: 0;
	}

	.sm-mobile-bar__cell {
		margin: 0;
		padding: 0;
		min-width: 0;
		flex-shrink: 0;
	}

	.sm-mobile-bar__item {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0.125rem;
		min-height: 0;
		height: 100%;
		padding: 0.125rem 0.1rem;
		border-radius: 8px;
		color: #6b7280;
		text-decoration: none;
		flex-shrink: 0;
		-webkit-tap-highlight-color: transparent;
		transition: color 0.15s ease, background-color 0.15s ease;
	}

	.sm-mobile-bar__item:hover,
	.sm-mobile-bar__item:focus-visible {
		color: #003459;
		background: #f3f6f8;
		outline: none;
	}

	.sm-mobile-bar__item.is-active {
		color: #003459;
	}

	.sm-mobile-bar__item--call {
		color: #003459;
	}

	.sm-mobile-bar__item--call .sm-mobile-bar__icon-wrap {
		background: #e8f4fc;
		border-radius: 999px;
	}

	.sm-mobile-bar__icon-wrap {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 1.375rem;
		height: 1.375rem;
		flex-shrink: 0;
	}

	.sm-mobile-bar__item--call .sm-mobile-bar__icon-wrap {
		width: 1.625rem;
		height: 1.625rem;
	}

	.sm-mobile-bar__icon {
		display: block;
		flex-shrink: 0;
		width: 20px;
		height: 20px;
	}

	.sm-mobile-bar__label {
		display: block;
		flex-shrink: 0;
		max-width: 100%;
		font-size: 0.625rem;
		font-weight: 600;
		line-height: 1.1;
		text-align: center;
		white-space: nowrap;
		overflow: visible;
	}

	.sm-mobile-bar__badge {
		position: absolute;
		top: -0.2rem;
		right: -0.3rem;
		display: flex;
		align-items: center;
		justify-content: center;
		min-width: 1rem;
		height: 1rem;
		padding: 0 0.15rem;
		border-radius: 999px;
		background: #fd6422;
		color: #fff;
		font-size: 0.625rem;
		font-weight: 700;
		line-height: 1;
	}

	.sm-mobile-bar__badge:empty,
	.sm-mobile-bar__badge[data-count="0"] {
		display: none;
	}

	/* Кнопка «Наверх» — выше панели, не перекрывает подписи */
	body.sm-has-mobile-bar .sm-scroll-top {
		right: 0.75rem;
		bottom: calc(var(--sm-mobile-bar-inner-height) + 0.75rem + env(safe-area-inset-bottom, 0px));
		z-index: 54;
	}
}

/*FILESTART*//**
 * Кнопка «Наверх».
 */

.sm-scroll-top {
	position: fixed;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 45;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: #fff;
	color: #374151;
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(0.5rem);
	transition:
		opacity 0.22s ease,
		visibility 0.22s ease,
		transform 0.22s ease,
		box-shadow 0.15s ease,
		color 0.15s ease;
}

@media (min-width: 768px) {
	.sm-scroll-top {
		right: 1.5rem;
		bottom: 1.5rem;
		width: 3.25rem;
		height: 3.25rem;
	}
}

.sm-scroll-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.sm-scroll-top:hover,
.sm-scroll-top:focus-visible {
	color: #003459;
	box-shadow: 0 6px 20px rgba(15, 23, 42, 0.16);
	outline: none;
}

.sm-scroll-top:active {
	transform: translateY(1px);
}

.sm-scroll-top.is-visible:active {
	transform: translateY(1px);
}

.sm-scroll-top__icon {
	display: block;
	width: 1.35rem;
	height: 1.35rem;
}

@media (prefers-reduced-motion: reduce) {
	.sm-scroll-top {
		transition: opacity 0.15s ease, visibility 0.15s ease;
	}
}
