/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
@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-scroll-snap-strictness: proximity;
            --tw-translate-x: 0;
            --tw-translate-y: 0;
            --tw-translate-z: 0;
            --tw-scale-x: 1;
            --tw-scale-y: 1;
            --tw-scale-z: 1;
            --tw-rotate-x: initial;
            --tw-rotate-y: initial;
            --tw-rotate-z: initial;
            --tw-skew-x: initial;
            --tw-skew-y: initial;
            --tw-space-y-reverse: 0;
            --tw-space-x-reverse: 0;
            --tw-divide-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-ordinal: initial;
            --tw-slashed-zero: initial;
            --tw-numeric-figure: initial;
            --tw-numeric-spacing: initial;
            --tw-numeric-fraction: initial;
            --tw-shadow: 0 0 #0000;
            --tw-shadow-color: initial;
            --tw-shadow-alpha: 100%;
            --tw-inset-shadow: 0 0 #0000;
            --tw-inset-shadow-color: initial;
            --tw-inset-shadow-alpha: 100%;
            --tw-ring-color: initial;
            --tw-ring-shadow: 0 0 #0000;
            --tw-inset-ring-color: initial;
            --tw-inset-ring-shadow: 0 0 #0000;
            --tw-ring-inset: initial;
            --tw-ring-offset-width: 0px;
            --tw-ring-offset-color: #fff;
            --tw-ring-offset-shadow: 0 0 #0000;
            --tw-outline-style: solid;
            --tw-blur: initial;
            --tw-brightness: initial;
            --tw-contrast: initial;
            --tw-grayscale: initial;
            --tw-hue-rotate: initial;
            --tw-invert: initial;
            --tw-opacity: initial;
            --tw-saturate: initial;
            --tw-sepia: initial;
            --tw-drop-shadow: initial;
            --tw-drop-shadow-color: initial;
            --tw-drop-shadow-alpha: 100%;
            --tw-drop-shadow-size: initial;
            --tw-backdrop-blur: initial;
            --tw-backdrop-brightness: initial;
            --tw-backdrop-contrast: initial;
            --tw-backdrop-grayscale: initial;
            --tw-backdrop-hue-rotate: initial;
            --tw-backdrop-invert: initial;
            --tw-backdrop-opacity: initial;
            --tw-backdrop-saturate: initial;
            --tw-backdrop-sepia: initial;
            --tw-duration: initial;
            --tw-ease: initial;
            --tw-content: ""
        }
    }
}

:root,
:host {
    --form-py: calc(var(--spacing)*2);
    --form-px: calc(var(--spacing)*3);
    --form-radius: var(--radius-lg);
    --form-stroke: var(--color-slate-400);
    --form-bg: #fff;
    --form-color: currentcolor;
    --form-active-color: var(--color-primary);
    --select-icon: url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke=\"hsl(0 0% 0%)\"><path d=\"m6 9 6 6 6-6\"/></svg>");
    --select-icon-size: 1.25em;
    --select-icon-offset: .8rem;
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --color-red-50: oklch(97.1% .013 17.38);
    --color-red-200: oklch(88.5% .062 18.334);
    --color-red-300: oklch(80.8% .114 19.571);
    --color-red-500: oklch(63.7% .237 25.331);
    --color-red-600: oklch(57.7% .245 27.325);
    --color-red-900: oklch(39.6% .141 25.723);
    --color-orange-400: oklch(75% .183 55.934);
    --color-yellow-50: oklch(98.7% .026 102.212);
    --color-yellow-300: oklch(90.5% .182 98.111);
    --color-yellow-500: oklch(79.5% .184 86.047);
    --color-yellow-900: oklch(42.1% .095 57.708);
    --color-green-50: oklch(98.2% .018 155.826);
    --color-green-300: oklch(87.1% .15 154.449);
    --color-green-400: oklch(79.2% .209 151.711);
    --color-green-500: oklch(72.3% .219 149.579);
    --color-green-900: oklch(39.3% .095 152.535);
    --color-blue-50: oklch(97% .014 254.604);
    --color-blue-300: oklch(80.9% .105 251.813);
    --color-blue-500: oklch(62.3% .214 259.815);
    --color-blue-600: oklch(54.6% .245 262.881);
    --color-blue-900: oklch(37.9% .146 265.522);
    --color-slate-50: oklch(98.4% .003 247.858);
    --color-slate-200: oklch(92.9% .013 255.508);
    --color-slate-300: oklch(86.9% .022 252.894);
    --color-slate-400: oklch(70.4% .04 256.788);
    --color-slate-600: oklch(44.6% .043 257.281);
    --color-slate-800: oklch(27.9% .041 260.031);
    --color-slate-950: oklch(12.9% .042 264.695);
    --color-gray-50: oklch(98.5% .002 247.839);
    --color-gray-100: oklch(96.7% .003 264.542);
    --color-gray-200: oklch(92.8% .006 264.531);
    --color-gray-300: oklch(87.2% .01 258.338);
    --color-gray-400: oklch(70.7% .022 261.325);
    --color-gray-500: oklch(55.1% .027 264.364);
    --color-gray-600: oklch(44.6% .03 256.802);
    --color-gray-700: oklch(37.3% .034 259.733);
    --color-gray-800: oklch(27.8% .033 256.848);
    --color-gray-900: oklch(21% .034 264.665);
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xs: 20rem;
    --container-md: 28rem;
    --container-xl: 36rem;
    --container-4xl: 56rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1/.75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25/.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-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-black: 900;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --tracking-widest: .1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --shadow-lg: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
    --ease-in: cubic-bezier(.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --blur-sm: 8px;
    --blur-xl: 24px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-container-lighter: var(--color-white);
    --color-container: var(--color-gray-50);
    --color-container-darker: var(--color-gray-100);
    --color-primary-lighter: oklch(52% .2 265);
    --color-primary: oklch(46% .2 265);
    --color-primary-darker: oklch(28% .2 265);
    --color-secondary-lighter: oklch(72% .2 150);
    --color-secondary: oklch(53% .15 150);
    --color-secondary-darker: oklch(39% .1 153);
    --color-on-primary: #fff;
    --color-bg: var(--color-slate-50);
    --color-fg: var(--color-slate-950);
    --color-fg-secondary: var(--color-slate-600);
    --color-surface: var(--color-white);
    --color-pp-brand-e6e1dc: #e6e1dc;
    --color-pp-brand-8d6f5b: #8d6f5b;
    --color-pp-brand-4a2e1b: #4a2e1b;
    --color-pp-brand-f6ebe5: #f6ebe5
}

@layer base {
    :is(input:where(:not([type])), [type=text], [type=email], [type=url], [type=password], [type=number], [type=date], [type=datetime-local], [type=month], [type=search], [type=tel], [type=time], [type=week], textarea, select, .form-input, .form-textarea, .form-select, .form-multiselect) {
        appearance: none;
        padding-block: var(--form-py);
        padding-inline: var(--form-px);
        border-radius: var(--form-radius);
        border-width: 1px;
        border-color: var(--form-stroke);
        background-color: var(--form-bg);
        color: var(--form-color);
        --outline-size: 1px;
        --outline-offset: 0px
    }

    :is(input:where(:not([type])), [type=text], [type=email], [type=url], [type=password], [type=number], [type=date], [type=datetime-local], [type=month], [type=search], [type=tel], [type=time], [type=week], textarea, select, .form-input, .form-textarea, .form-select, .form-multiselect):focus {
        border-color: var(--form-active-color);
        outline-color: var(--form-active-color)
    }

    :is(select:where(:not([size]:not([size="1"]), [multiple])), .form-select) {
        --_icon-position: right;
        background: var(--select-icon)var(--form-bg)var(--_icon-position)var(--select-icon-offset)center/var(--select-icon-size)no-repeat;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
        padding-inline-end: calc(var(--select-icon-size) + var(--select-icon-offset) + .5ch)
    }

    :is(select:where(:not([size]:not([size="1"]), [multiple])), .form-select):dir(rtl) {
        --_icon-position: left
    }

    :is([type=checkbox], [type=radio], .form-checkbox, .form-radio) {
        appearance: none;
        block-size: calc(var(--spacing)*4);
        inline-size: calc(var(--spacing)*4);
        border-width: 2px;
        border-color: var(--form-stroke);
        background-color: var(--form-bg);
        color: var(--form-color);
        vertical-align: middle;
        -webkit-user-select: none;
        user-select: none;
        print-color-adjust: exact;
        block-size: calc(var(--spacing)*4.5);
        inline-size: calc(var(--spacing)*4.5);
        background-origin: border-box;
        flex-shrink: 0;
        padding: 0;
        display: inline-block
    }

    :is([type=checkbox], [type=radio], .form-checkbox, .form-radio):focus {
        outline-color: var(--form-active-color)
    }

    :is([type=checkbox], [type=radio], .form-checkbox, .form-radio):focus,
    :is([type=checkbox], [type=radio], .form-checkbox, .form-radio):checked {
        border-color: var(--form-active-color)
    }

    :is([type=checkbox], .form-checkbox):checked,
    :is([type=checkbox], .form-checkbox):indeterminate {
        background: var(--form-active-color, currentColor)center/contain no-repeat;
        border-color: #0000
    }

    :is([type=checkbox], .form-checkbox):indeterminate {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E")
    }

    :is([type=checkbox], .form-checkbox):checked {
        background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3E%3C/svg%3E")
    }

    :is([type=radio], .form-radio) {
        border-radius: 50%
    }

    :is([type=radio], .form-radio):checked {
        background: var(--form-active-color, currentColor)center/contain no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E");
        border-color: #0000
    }

    *,
    :after,
    :before,
    ::backdrop {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    ::file-selector-button {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0
    }

    html,
    :host {
        -webkit-text-size-adjust: 100%;
        tab-size: 4;
        line-height: 1.5;
        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;
        -webkit-text-decoration: 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 {
        vertical-align: baseline;
        font-size: 75%;
        line-height: 0;
        position: relative
    }

    sub {
        bottom: -.25em
    }

    sup {
        top: -.5em
    }

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

    :-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 {
        vertical-align: middle;
        display: block
    }

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

    button,
    input,
    select,
    optgroup,
    textarea {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0
    }

    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0
    }

    :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)) {
            ::placeholder {
                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 {
        padding-block: 0
    }

    ::-webkit-datetime-edit-year-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-month-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-day-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-hour-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-minute-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-second-field {
        padding-block: 0
    }

    ::-webkit-datetime-edit-millisecond-field {
        padding-block: 0
    }

    ::-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]) {
        appearance: button
    }

    ::file-selector-button {
        appearance: button
    }

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

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

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

    :where(:focus-visible) {
        outline: var(--outline-size, 2px)solid var(--color-primary);
        outline-offset: var(--outline-offset, 2px)
    }

    :where(:active:focus-visible) {
        outline-offset: 0;
        transition: var(--outline-transition, outline-offset .15s cubic-bezier(.25, 0, .4, 1))
    }

    :disabled {
        cursor: not-allowed
    }

    :target {
        scroll-margin-block: var(--anchor-offset, 6ex)
    }

    @media (prefers-reduced-motion:no-preference) {
        :where(html):has(:target) {
            scroll-behavior: smooth
        }
    }

    html {
        scrollbar-gutter: stable;
        block-size: 100%
    }

    body {
        min-block-size: 100%
    }

    :where(:any-link, button, input, label[for], select, summary, textarea, [tabindex]:not([tabindex^=\-])) {
        touch-action: manipulation
    }

    :where(:any-link, button, label[for], label:has(input:is([type=radio], [type=checkbox]):enabled), select:has(option:enabled), summary) {
        cursor: pointer
    }

    :where(dialog) {
        background-color: var(--color-surface, canvas);
        max-block-size: calc(100% - 2rem);
        max-inline-size: calc(100% - 2rem);
        color: var(--color-fg, canvastext);
        box-shadow: var(--shadow-lg);
        border-radius: 1rem;
        margin: auto;
        padding: 1.5rem;
        position: fixed
    }

    :where(dialog)::backdrop {
        background-color: var(--backdrop, #0003)
    }

    :where(:root:has(dialog[open]:modal)) {
        overflow: hidden
    }

    address {
        font-style: normal
    }

    @view-transition {
        navigation: auto
    }

    :root {
        scrollbar-color: var(--scrollthumb-color, var(--color-primary))var(--scrolltrack-color, #0000);
        accent-color: var(--color-primary);
        caret-color: var(--color-primary);
        interpolate-size: allow-keywords
    }

    body {
        background: var(--color-bg);
        color: var(--color-fg)
    }

    [type=checkbox][role=switch] {
        --switch-width: calc(var(--spacing)*9);
        --switch-height: calc(var(--spacing)*5);
        --switch-thumb-offset: calc(var(--switch-width) - var(--switch-height));
        block-size: var(--switch-height);
        inline-size: var(--switch-width);
        border-width: 2px;
        border-radius: 3.40282e38px
    }

    [type=checkbox][role=switch]:not(:disabled) {
        cursor: pointer
    }

    [type=checkbox][role=switch]:after {
        content: "";
        aspect-ratio: 1;
        border-width: 1px;
        border-color: var(--form-bg);
        background-color: var(--form-stroke);
        border-radius: 3.40282e38px;
        height: 100%;
        transition: background-color .15s, border-color .15s, translate .15s;
        display: block
    }

    [type=checkbox][role=switch]:checked {
        background-image: none
    }

    [type=checkbox][role=switch]:checked:after {
        background-color: var(--form-bg);
        translate: var(--switch-thumb-offset)0%
    }

    [type=checkbox][role=switch]:dir(rtl):checked:after {
        translate: calc(var(--switch-thumb-offset)/-1)0%
    }

    :where(form label) {
        margin-bottom: calc(var(--spacing)*2);
        color: var(--color-fg-secondary);
        display: block
    }

    :where(form legend) {
        margin-bottom: calc(var(--spacing)*3);
        font-size: var(--text-xl);
        line-height: var(--tw-leading, var(--text-xl--line-height))
    }

    :where(form legend)+br {
        display: none
    }

    :where(fieldset~fieldset) {
        margin-top: calc(var(--spacing)*8)
    }
}

@layer theme;

@layer components {
    .actions-toolbar {
        gap: calc(var(--spacing)*4);
        border-block-start-width: 1px;
        border-block-start-color: var(--color-gray-300);
        flex-direction: column;
        margin-block-start: calc(var(--spacing)*6);
        padding-block-start: calc(var(--spacing)*4);
        display: flex
    }

    @media (min-width:48rem) {
        .actions-toolbar {
            flex-direction: row-reverse;
            align-items: center
        }
    }

    .actions-toolbar a.back {
        text-decoration-line: underline
    }

    .card {
        border-radius: var(--card-radius, var(--radius-lg));
        padding-block: var(--card-py, calc(var(--spacing)*6));
        padding-inline: var(--card-px, calc(var(--spacing)*6));
        border-width: 1px;
        border-color: var(--card-stroke, var(--color-gray-300));
        background-color: var(--card-bg, var(--color-surface));
        color: var(--card-color, var(--color-fg));
        transition-property: color, background-color, border-color, box-shadow, outline-color;
        transition-timing-function: var(--default-transition-timing-function);
        transition-duration: var(--default-transition-duration);
        position: relative
    }

    .card-interactive:is(:hover, :focus-within) {
        --card-stroke: #0000;
        box-shadow: var(--shadow-lg)
    }

    .form-input.qty {
        max-inline-size: calc(6ch + var(--form-px))
    }

    .field {
        margin-top: calc(var(--spacing)*1)
    }

    .field.field-reserved {
        --reserved-space: calc(var(--spacing)*7);
        margin-block-end: var(--reserved-space)
    }

    .field.field-reserved ul {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height))
    }

    .field.field-reserved ul:last-of-type {
        margin-block-end: calc(var(--reserved-space)*-1)
    }

    .field.choice {
        align-items: center;
        display: flex
    }

    .field.choice label {
        margin-bottom: calc(var(--spacing)*0)
    }

    .field.choice input {
        margin-right: calc(var(--spacing)*3)
    }

    .field.field-error .messages {
        color: var(--color-red-600);
        max-width: fit-content
    }

    .field.required>label:after {
        content: var(--tw-content);
        content: var(--tw-content);
        top: calc(var(--spacing)*-1);
        content: var(--tw-content);
        --tw-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M12 6v12M17.196 9 6.804 15M6.804 9l10.392 6'/%3E%3C/svg%3E");
        --tw-icon-size: 1em;
        width: var(--tw-icon-size);
        height: var(--tw-icon-size);
        -webkit-mask-size: contain;
        mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-image: var(--tw-icon);
        -webkit-mask-image: var(--tw-icon);
        mask-image: var(--tw-icon);
        content: var(--tw-content);
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
        content: var(--tw-content);
        color: var(--color-red-600);
        background-color: currentColor;
        display: inline-block;
        position: relative
    }

    .form-input-addon {
        appearance: none;
        padding-block: var(--form-py);
        padding-inline: var(--form-px);
        border-radius: var(--form-radius);
        border-width: 1px;
        border-color: var(--form-stroke);
        background-color: var(--form-bg);
        color: var(--form-color);
        --outline-size: 1px;
        --outline-offset: 0px
    }

    .form-input-addon:first-child {
        border-inline-end: 0;
        padding-inline-end: 0
    }

    .form-input-addon:last-child {
        border-inline-start: 0;
        padding-inline-start: 0
    }

    .input-group {
        border-radius: var(--form-radius);
        vertical-align: middle;
        display: flex;
        position: relative
    }

    .input-group:focus-within {
        --form-stroke: var(--form-active-color);
        outline: var(--outline-size, 1px)solid var(--form-active-color);
        outline-offset: var(--outline-offset, 0px)
    }

    .input-group>* {
        border-radius: 0;
        outline: none;
        margin: 0
    }

    .input-group>:first-child {
        border-start-start-radius: inherit;
        border-end-start-radius: inherit
    }

    .input-group>:last-child {
        border-start-end-radius: inherit;
        border-end-end-radius: inherit
    }

    .input-group>:not(template, [hidden]:where(:not([hidden=until-found])))+:not(button, .btn) {
        border-inline-start-width: 0
    }

    .message {
        margin-bottom: calc(var(--spacing)*2);
        background-color: var(--color-gray-100);
        width: 100%;
        padding: calc(var(--spacing)*2);
        padding-left: calc(var(--spacing)*5);
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
        color: var(--color-black);
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
        border-radius: .25rem;
        justify-content: space-between;
        align-items: center;
        display: flex
    }

    .message.error {
        border-style: var(--tw-border-style);
        border-width: 2px;
        border-color: var(--color-red-500);
        background-color: var(--color-red-50)
    }

    .message.success {
        border-style: var(--tw-border-style);
        border-width: 2px;
        border-color: var(--color-green-500);
        background-color: var(--color-green-50)
    }

    .message.info,
    .message.notice {
        border-style: var(--tw-border-style);
        border-width: 2px;
        border-color: var(--color-blue-500);
        background-color: var(--color-blue-50)
    }

    .message.warning {
        border-style: var(--tw-border-style);
        border-width: 2px;
        border-color: var(--color-yellow-500);
        background-color: var(--color-yellow-50)
    }

    .message a {
        text-decoration-line: underline
    }

    .rating-summary {
        color: var(--color-primary);
        display: flex
    }

    .snap-track {
        --snap-cols: 1;
        --snap-gap: calc(var(--spacing)*4);
        --snap-size: calc((100% - var(--snap-gap)*(var(--snap-cols) - 1))/var(--snap-cols));
        grid-auto-flow: column;
        grid-auto-columns: var(--snap-size);
        gap: var(--snap-gap);
        padding-block: calc(var(--spacing)*6);
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        display: grid;
        position: relative;
        overflow-x: auto
    }

    @media (prefers-reduced-motion:no-preference) {
        .snap-track {
            scroll-behavior: smooth
        }
    }

    .snap-track>* {
        scroll-snap-align: start
    }

    .snap-pager {
        justify-content: center;
        align-items: center;
        gap: calc(var(--spacing)*3);
        min-block-size: calc(var(--spacing)*11);
        padding-block: calc(var(--spacing)*2);
        flex-wrap: wrap;
        display: flex
    }

    .snap-marker {
        block-size: calc(var(--spacing)*4);
        inline-size: calc(var(--spacing)*4);
        border-width: 1px;
        border-color: var(--color-slate-600);
        border-radius: 1rem;
        flex-shrink: 0;
        transition-property: border-color, background-color;
        transition-duration: .3s
    }

    @media (prefers-reduced-motion:no-preference) {
        .snap-marker {
            will-change: inline-size;
            transition-property: inline-size, border-color, background-color
        }
    }

    .snap-marker[aria-current=true] {
        inline-size: calc(var(--spacing)*7);
        background-color: var(--color-primary);
        border-color: #0000
    }

    .swatch-attribute-options {
        flex-flow: wrap;
        display: flex
    }

    .swatch-option {
        margin: calc(var(--spacing)*1);
        border-style: var(--tw-border-style);
        padding-inline: calc(var(--spacing)*2);
        padding-block: calc(var(--spacing)*1);
        border-width: 1px;
        justify-content: center;
        min-width: 40px;
        display: flex
    }

    :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
        width: 100%
    }

    @media (min-width:40rem) {
        :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
            max-width: 40rem
        }
    }

    @media (min-width:48rem) {
        :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
            max-width: 48rem
        }
    }

    @media (min-width:64rem) {
        :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
            max-width: 64rem
        }
    }

    @media (min-width:80rem) {
        :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
            max-width: 80rem
        }
    }

    @media (min-width:96rem) {
        :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
            max-width: 96rem
        }
    }

    :where(main:not(.product-main-full-width, .page-main-full-width)) .columns {
        padding-inline: calc(var(--spacing)*6);
        margin-inline: auto
    }

    .account-nav li a,
    .account-nav li strong {
        padding-block: calc(var(--spacing)*1);
        color: var(--color-fg-secondary);
        justify-content: space-between;
        display: flex
    }

    .account-nav li a:hover {
        color: var(--color-fg);
        text-decoration-line: underline
    }

    .account-nav li strong {
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal);
        color: var(--color-fg);
        text-decoration-line: underline
    }

    .cms-content {
        --text-flow: 1em 1rem;
        --separator-flow: 2.5em;
        --list-flow: .5em;
        --h-color: initial;
        --h-family: initial;
        --h-size: 1.125em;
        --h-weight: 600;
        --h-line: 1.1;
        --h1-size: 3em;
        --h2-size: 2em;
        --h3-size: 1.625em;
        --h4-size: 1.375em;
        --marker-color: var(--color-primary);
        --link-color: var(--color-primary);
        --link-weight: 500;
        --blockquote-color: var(--color-primary);
        --table-py: calc(var(--spacing)*3);
        --table-px: calc(var(--spacing)*2);
        --table-stroke: var(--color-gray-400);
        --table-bg: canvas;
        --table-color: canvastext
    }

    .cms-content :where(h1, h2, h3, h4, h5, h6, p, dl, ul, ol, pre, hgroup) {
        margin-block: var(--text-flow)
    }

    .cms-content :where(blockquote, figure, hr) {
        margin-block: var(--separator-flow);
        margin-inline: 0
    }

    .cms-content :where([class~=lead]) {
        font-size: 1.25em
    }

    .cms-content :where(h1, h2, h3, h4, h5, h6) {
        color: var(--h-color);
        font-family: var(--h-family);
        font-size: var(--h-size);
        font-weight: var(--h-weight);
        line-height: var(--h-line);
        text-wrap: balance
    }

    .cms-content :where(h1) {
        --h-size: var(--h1-size)
    }

    .cms-content :where(h2) {
        --h-size: var(--h2-size)
    }

    .cms-content :where(h3) {
        --h-size: var(--h3-size)
    }

    .cms-content :where(h4) {
        --h-size: var(--h4-size)
    }

    .cms-content ::marker {
        color: var(--marker-color)
    }

    .cms-content :where(ul, ol) {
        list-style: revert;
        padding-inline-start: 2em
    }

    .cms-content :where(ol[type=a]) {
        list-style-type: lower-alpha
    }

    .cms-content :where(ol[type=i]) {
        list-style-type: lower-roman
    }

    .cms-content :where(ol[type="1"]) {
        list-style-type: decimal
    }

    .cms-content :where(blockquote) {
        border-inline-start: 4px solid var(--blockquote-color);
        padding-block: .25em;
        padding-inline-start: 1.5em
    }

    .cms-content :where(:any-link) {
        color: var(--link-color);
        font-weight: var(--link-weight)
    }

    .cms-content :where(:any-link):hover {
        text-decoration: underline
    }

    .cms-content :where(table) {
        border-collapse: separate;
        border-spacing: 0;
        border-color: var(--table-stroke)
    }

    .cms-content :where(thead, tbody, tfoot, tr, th, td) {
        border-color: inherit;
        text-align: inherit
    }

    .cms-content :where(th, td) {
        padding-block: var(--table-py);
        padding-inline: var(--table-px);
        background: var(--table-bg);
        color: var(--table-color)
    }

    .cms-content :where(tr+tr :is(th, td)) {
        border-block-start-width: 1px
    }

    .cms-content :where(thead tr:last-child :is(th, td)) {
        border-block-end-width: 2px
    }

    .cms-content :where(tfoot tr:first-child :is(th, td)) {
        border-block-start-width: 2px
    }

    .cms-content :where(table:not(:has(.table-wrapper, [class*=overflow-]))) {
        word-break: break-all
    }

    .cms-content>:where(:first-child) {
        margin-block-start: 0
    }

    .cms-content>:where(:last-child) {
        margin-block-end: 0
    }

    .cms-content {
        max-width: 100%
    }

    .table-wrapper {
        overflow: auto
    }
}

@layer utilities {
    .pointer-events-none {
        pointer-events: none
    }

    .invisible {
        visibility: hidden
    }

    .visible {
        visibility: visible
    }

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

    .\!relative {
        position: relative !important
    }

    .absolute {
        position: absolute
    }

    .fixed {
        position: fixed
    }

    .relative {
        position: relative
    }

    .static {
        position: static
    }

    .sticky {
        position: sticky
    }

    .inset-0 {
        inset: calc(var(--spacing)*0)
    }

    .inset-x-0 {
        inset-inline: calc(var(--spacing)*0)
    }

    .inset-x-4 {
        inset-inline: calc(var(--spacing)*4)
    }

    .inset-y-0 {
        inset-block: calc(var(--spacing)*0)
    }

    .-top-1\.5 {
        top: calc(var(--spacing)*-1.5)
    }

    .-top-2 {
        top: calc(var(--spacing)*-2)
    }

    .top-0 {
        top: calc(var(--spacing)*0)
    }

    .top-1\/2 {
        top: 50%
    }

    .top-2 {
        top: calc(var(--spacing)*2)
    }

    .top-3 {
        top: calc(var(--spacing)*3)
    }

    .top-4 {
        top: calc(var(--spacing)*4)
    }

    .top-full {
        top: 100%
    }

    .-right-1\.5 {
        right: calc(var(--spacing)*-1.5)
    }

    .-right-2 {
        right: calc(var(--spacing)*-2)
    }

    .right-0 {
        right: calc(var(--spacing)*0)
    }

    .right-2 {
        right: calc(var(--spacing)*2)
    }

    .right-3 {
        right: calc(var(--spacing)*3)
    }

    .right-4 {
        right: calc(var(--spacing)*4)
    }

    .bottom-0 {
        bottom: calc(var(--spacing)*0)
    }

    .bottom-4 {
        bottom: calc(var(--spacing)*4)
    }

    .bottom-full {
        bottom: 100%
    }

    .left-0 {
        left: calc(var(--spacing)*0)
    }

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

    .isolate {
        isolation: isolate
    }

    .z-0 {
        z-index: 0
    }

    .z-10 {
        z-index: 10
    }

    .z-20 {
        z-index: 20
    }

    .z-30 {
        z-index: 30
    }

    .z-50 {
        z-index: 50
    }

    .z-\[9999\] {
        z-index: 9999
    }

    .order-1 {
        order: 1
    }

    .order-2 {
        order: 2
    }

    .order-3 {
        order: 3
    }

    .order-last {
        order: 9999
    }

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

    .col-span-2 {
        grid-column: span 2/span 2
    }

    .col-span-3 {
        grid-column: span 3/span 3
    }

    .col-span-4 {
        grid-column: span 4/span 4
    }

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

    .float-end {
        float: inline-end
    }

    .container {
        width: 100%
    }

    @media (min-width:40rem) {
        .container {
            max-width: 40rem
        }
    }

    @media (min-width:48rem) {
        .container {
            max-width: 48rem
        }
    }

    @media (min-width:64rem) {
        .container {
            max-width: 64rem
        }
    }

    @media (min-width:80rem) {
        .container {
            max-width: 80rem
        }
    }

    @media (min-width:96rem) {
        .container {
            max-width: 96rem
        }
    }

    .\!m-0 {
        margin: calc(var(--spacing)*0) !important
    }

    .-m-2 {
        margin: calc(var(--spacing)*-2)
    }

    .-m-4 {
        margin: calc(var(--spacing)*-4)
    }

    .m-0 {
        margin: calc(var(--spacing)*0)
    }

    .m-1 {
        margin: calc(var(--spacing)*1)
    }

    .m-4 {
        margin: calc(var(--spacing)*4)
    }

    .m-auto {
        margin: auto
    }

    .prose {
        --text-flow: 1em 1rem;
        --separator-flow: 2.5em;
        --list-flow: .5em;
        --h-color: initial;
        --h-family: initial;
        --h-size: 1.125em;
        --h-weight: 600;
        --h-line: 1.1;
        --h1-size: 3em;
        --h2-size: 2em;
        --h3-size: 1.625em;
        --h4-size: 1.375em;
        --marker-color: var(--color-primary);
        --link-color: var(--color-primary);
        --link-weight: 500;
        --blockquote-color: var(--color-primary);
        --table-py: calc(var(--spacing)*3);
        --table-px: calc(var(--spacing)*2);
        --table-stroke: var(--color-gray-400);
        --table-bg: canvas;
        --table-color: canvastext
    }

    .prose :where(h1, h2, h3, h4, h5, h6, p, dl, ul, ol, pre, hgroup) {
        margin-block: var(--text-flow)
    }

    .prose :where(blockquote, figure, hr) {
        margin-block: var(--separator-flow);
        margin-inline: 0
    }

    .prose :where([class~=lead]) {
        font-size: 1.25em
    }

    .prose :where(h1, h2, h3, h4, h5, h6) {
        color: var(--h-color);
        font-family: var(--h-family);
        font-size: var(--h-size);
        font-weight: var(--h-weight);
        line-height: var(--h-line);
        text-wrap: balance
    }

    .prose :where(h1) {
        --h-size: var(--h1-size)
    }

    .prose :where(h2) {
        --h-size: var(--h2-size)
    }

    .prose :where(h3) {
        --h-size: var(--h3-size)
    }

    .prose :where(h4) {
        --h-size: var(--h4-size)
    }

    .prose ::marker {
        color: var(--marker-color)
    }

    .prose :where(ul, ol) {
        list-style: revert;
        padding-inline-start: 2em
    }

    .prose :where(ol[type=a]) {
        list-style-type: lower-alpha
    }

    .prose :where(ol[type=i]) {
        list-style-type: lower-roman
    }

    .prose :where(ol[type="1"]) {
        list-style-type: decimal
    }

    .prose :where(blockquote) {
        border-inline-start: 4px solid var(--blockquote-color);
        padding-block: .25em;
        padding-inline-start: 1.5em
    }

    .prose :where(:any-link) {
        color: var(--link-color);
        font-weight: var(--link-weight)
    }

    .prose :where(:any-link):hover {
        text-decoration: underline
    }

    .prose :where(table) {
        border-collapse: separate;
        border-spacing: 0;
        border-color: var(--table-stroke)
    }

    .prose :where(thead, tbody, tfoot, tr, th, td) {
        border-color: inherit;
        text-align: inherit
    }

    .prose :where(th, td) {
        padding-block: var(--table-py);
        padding-inline: var(--table-px);
        background: var(--table-bg);
        color: var(--table-color)
    }

    .prose :where(tr+tr :is(th, td)) {
        border-block-start-width: 1px
    }

    .prose :where(thead tr:last-child :is(th, td)) {
        border-block-end-width: 2px
    }

    .prose :where(tfoot tr:first-child :is(th, td)) {
        border-block-start-width: 2px
    }

    .prose :where(table:not(:has(.table-wrapper, [class*=overflow-]))) {
        word-break: break-all
    }

    .prose>:where(:first-child) {
        margin-block-start: 0
    }

    .prose>:where(:last-child) {
        margin-block-end: 0
    }

    .container {
        padding-inline: calc(var(--spacing)*6);
        margin-inline: auto
    }

    .-mx-1 {
        margin-inline: calc(var(--spacing)*-1)
    }

    .-mx-3 {
        margin-inline: calc(var(--spacing)*-3)
    }

    .mx-1 {
        margin-inline: calc(var(--spacing)*1)
    }

    .mx-2 {
        margin-inline: calc(var(--spacing)*2)
    }

    .mx-4 {
        margin-inline: calc(var(--spacing)*4)
    }

    .mx-6 {
        margin-inline: calc(var(--spacing)*6)
    }

    .mx-auto {
        margin-inline: auto
    }

    .my-0 {
        margin-block: calc(var(--spacing)*0)
    }

    .my-1 {
        margin-block: calc(var(--spacing)*1)
    }

    .my-2 {
        margin-block: calc(var(--spacing)*2)
    }

    .my-3 {
        margin-block: calc(var(--spacing)*3)
    }

    .my-4 {
        margin-block: calc(var(--spacing)*4)
    }

    .my-6 {
        margin-block: calc(var(--spacing)*6)
    }

    .my-8 {
        margin-block: calc(var(--spacing)*8)
    }

    .my-12 {
        margin-block: calc(var(--spacing)*12)
    }

    .ms-0 {
        margin-inline-start: calc(var(--spacing)*0)
    }

    .ms-7 {
        margin-inline-start: calc(var(--spacing)*7)
    }

    .ms-8 {
        margin-inline-start: calc(var(--spacing)*8)
    }

    .-me-4 {
        margin-inline-end: calc(var(--spacing)*-4)
    }

    .me-0 {
        margin-inline-end: calc(var(--spacing)*0)
    }

    .me-auto {
        margin-inline-end: auto
    }

    .\!mt-2 {
        margin-top: calc(var(--spacing)*2) !important
    }

    .\!mt-8 {
        margin-top: calc(var(--spacing)*8) !important
    }

    .-mt-6 {
        margin-top: calc(var(--spacing)*-6)
    }

    .mt-0 {
        margin-top: calc(var(--spacing)*0)
    }

    .mt-0\.5 {
        margin-top: calc(var(--spacing)*.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-10 {
        margin-top: calc(var(--spacing)*10)
    }

    .mt-12 {
        margin-top: calc(var(--spacing)*12)
    }

    .mt-auto {
        margin-top: auto
    }

    .-mr-1 {
        margin-right: calc(var(--spacing)*-1)
    }

    .mr-1 {
        margin-right: calc(var(--spacing)*1)
    }

    .mr-2 {
        margin-right: calc(var(--spacing)*2)
    }

    .mr-3 {
        margin-right: calc(var(--spacing)*3)
    }

    .mr-4 {
        margin-right: calc(var(--spacing)*4)
    }

    .mr-10 {
        margin-right: calc(var(--spacing)*10)
    }

    .mr-auto {
        margin-right: auto
    }

    .mb-0 {
        margin-bottom: calc(var(--spacing)*0)
    }

    .mb-1 {
        margin-bottom: calc(var(--spacing)*1)
    }

    .mb-2 {
        margin-bottom: calc(var(--spacing)*2)
    }

    .mb-3 {
        margin-bottom: calc(var(--spacing)*3)
    }

    .mb-4 {
        margin-bottom: calc(var(--spacing)*4)
    }

    .mb-5 {
        margin-bottom: calc(var(--spacing)*5)
    }

    .mb-6 {
        margin-bottom: calc(var(--spacing)*6)
    }

    .mb-8 {
        margin-bottom: calc(var(--spacing)*8)
    }

    .mb-12 {
        margin-bottom: calc(var(--spacing)*12)
    }

    .mb-24 {
        margin-bottom: calc(var(--spacing)*24)
    }

    .-ml-1 {
        margin-left: calc(var(--spacing)*-1)
    }

    .-ml-px {
        margin-left: -1px
    }

    .ml-1 {
        margin-left: calc(var(--spacing)*1)
    }

    .ml-1\.5 {
        margin-left: calc(var(--spacing)*1.5)
    }

    .ml-2 {
        margin-left: calc(var(--spacing)*2)
    }

    .ml-3 {
        margin-left: calc(var(--spacing)*3)
    }

    .ml-4 {
        margin-left: calc(var(--spacing)*4)
    }

    .ml-10 {
        margin-left: calc(var(--spacing)*10)
    }

    .ml-auto {
        margin-left: auto
    }

    .box-content {
        box-sizing: content-box
    }

    .snap {
        scroll-snap-type: x var(--tw-scroll-snap-strictness);
        --tw-scroll-snap-strictness: mandatory;
        scroll-behavior: smooth
    }

    .snap>* {
        scroll-snap-align: start
    }

    .snap {
        scrollbar-width: none
    }

    .snap::-webkit-scrollbar {
        display: none
    }

    .btn {
        --btn-stroke: #0000;
        --btn-bg: #1f48c51a
    }

    @supports (color:color-mix(in lab, red, red)) {
        .btn {
            --btn-bg: color-mix(in srgb, var(--color-primary)10%, #0000)
        }
    }

    .btn {
        --btn-hover-bg: #1f48c533
    }

    @supports (color:color-mix(in lab, red, red)) {
        .btn {
            --btn-hover-bg: color-mix(in srgb, var(--color-primary)20%, #0000)
        }
    }

    .btn {
        --btn-active-bg: #1f48c54d
    }

    @supports (color:color-mix(in lab, red, red)) {
        .btn {
            --btn-active-bg: color-mix(in srgb, var(--color-primary)30%, #0000)
        }
    }

    .btn {
        --btn-color: var(--color-fg);
        justify-content: center;
        align-items: center;
        gap: calc(var(--spacing)*1.5);
        padding-block: calc(var(--spacing)*2);
        padding-inline: calc(var(--spacing)*4);
        border-radius: var(--radius-lg);
        border-width: 2px;
        border-color: var(--btn-stroke);
        background-color: var(--btn-bg);
        color: var(--btn-color);
        -webkit-user-select: none;
        user-select: none;
        vertical-align: middle;
        transition-property: color, background-color, border-color, outline-color;
        transition-timing-function: var(--default-transition-timing-function);
        transition-duration: var(--default-transition-duration);
        font-weight: 500;
        display: inline-flex
    }

    .btn:hover {
        border-color: var(--btn-hover-stroke, var(--btn-stroke));
        background-color: var(--btn-hover-bg, var(--btn-bg));
        color: var(--btn-hover-color, var(--btn-color));
        text-decoration: none
    }

    .btn:is(:active, .is-active, [aria-current=page], [aria-current=true]) {
        border-color: var(--btn-active-stroke, var(--btn-stroke));
        background-color: var(--btn-active-bg, var(--btn-bg));
        color: var(--btn-active-color, var(--btn-color))
    }

    .btn:is(:disabled, [aria-disabled=true]) {
        border-color: var(--btn-disabled-stroke, var(--color-gray-200));
        background-color: var(--btn-disabled-bg, var(--color-gray-50));
        color: var(--btn-disabled-color, var(--color-gray-500))
    }

    .line-clamp-2 {
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden
    }

    .\!block {
        display: block !important
    }

    .\!flex {
        display: flex !important
    }

    .\!inline-flex {
        display: inline-flex !important
    }

    .block {
        display: block
    }

    .contents {
        display: contents
    }

    .flex {
        display: flex
    }

    .flow-root {
        display: flow-root
    }

    .grid {
        display: grid
    }

    .hidden {
        display: none
    }

    .inline {
        display: inline
    }

    .inline-block {
        display: inline-block
    }

    .inline-flex {
        display: inline-flex
    }

    .list-none::-webkit-details-marker {
        display: none
    }

    .table {
        display: table
    }

    .table-caption {
        display: table-caption
    }

    .table-cell {
        display: table-cell
    }

    .table-row {
        display: table-row
    }

    .aspect-auto {
        aspect-ratio: auto
    }

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

    .\!h-\[100dvh\] {
        height: 100dvh !important
    }

    .h-1 {
        height: calc(var(--spacing)*1)
    }

    .h-1\.5 {
        height: calc(var(--spacing)*1.5)
    }

    .h-2 {
        height: calc(var(--spacing)*2)
    }

    .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-16 {
        height: calc(var(--spacing)*16)
    }

    .h-20 {
        height: calc(var(--spacing)*20)
    }

    .h-48 {
        height: calc(var(--spacing)*48)
    }

    .h-\[2px\] {
        height: 2px
    }

    .h-\[34px\] {
        height: 34px
    }

    .h-\[38px\] {
        height: 38px
    }

    .h-\[40px\] {
        height: 40px
    }

    .h-\[44px\] {
        height: 44px
    }

    .h-\[52px\] {
        height: 52px
    }

    .h-\[70vh\] {
        height: 70vh
    }

    .h-\[80px\] {
        height: 80px
    }

    .h-\[200px\] {
        height: 200px
    }

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

    .h-auto {
        height: auto
    }

    .h-full {
        height: 100%
    }

    .\!max-h-\[100dvh\] {
        max-height: 100dvh !important
    }

    .max-h-0 {
        max-height: calc(var(--spacing)*0)
    }

    .max-h-48 {
        max-height: calc(var(--spacing)*48)
    }

    .max-h-64 {
        max-height: calc(var(--spacing)*64)
    }

    .max-h-72 {
        max-height: calc(var(--spacing)*72)
    }

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

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

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

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

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

    .max-h-full {
        max-height: 100%
    }

    .max-h-screen {
        max-height: 100vh
    }

    .max-h-svh {
        max-height: 100svh
    }

    .min-h-14 {
        min-height: calc(var(--spacing)*14)
    }

    .min-h-80 {
        min-height: calc(var(--spacing)*80)
    }

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

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

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

    .\!w-full {
        width: 100% !important
    }

    .w-0 {
        width: calc(var(--spacing)*0)
    }

    .w-1\.5 {
        width: calc(var(--spacing)*1.5)
    }

    .w-1\/2 {
        width: 50%
    }

    .w-3 {
        width: calc(var(--spacing)*3)
    }

    .w-3\.5 {
        width: calc(var(--spacing)*3.5)
    }

    .w-4 {
        width: calc(var(--spacing)*4)
    }

    .w-4\/12 {
        width: 33.3333%
    }

    .w-5 {
        width: calc(var(--spacing)*5)
    }

    .w-6 {
        width: calc(var(--spacing)*6)
    }

    .w-7 {
        width: calc(var(--spacing)*7)
    }

    .w-8 {
        width: calc(var(--spacing)*8)
    }

    .w-8\/12 {
        width: 66.6667%
    }

    .w-9 {
        width: calc(var(--spacing)*9)
    }

    .w-10 {
        width: calc(var(--spacing)*10)
    }

    .w-14 {
        width: calc(var(--spacing)*14)
    }

    .w-16 {
        width: calc(var(--spacing)*16)
    }

    .w-20 {
        width: calc(var(--spacing)*20)
    }

    .w-32 {
        width: calc(var(--spacing)*32)
    }

    .w-40 {
        width: calc(var(--spacing)*40)
    }

    .w-44 {
        width: calc(var(--spacing)*44)
    }

    .w-56 {
        width: calc(var(--spacing)*56)
    }

    .w-60 {
        width: calc(var(--spacing)*60)
    }

    .w-64 {
        width: calc(var(--spacing)*64)
    }

    .w-\[80px\] {
        width: 80px
    }

    .w-\[88px\] {
        width: 88px
    }

    .w-\[200px\] {
        width: 200px
    }

    .w-\[480px\] {
        width: 480px
    }

    .w-auto {
        width: auto
    }

    .w-fit {
        width: fit-content
    }

    .w-full {
        width: 100%
    }

    .w-xl {
        width: var(--container-xl)
    }

    .\!max-w-full {
        max-width: 100% !important
    }

    .max-w-4xl {
        max-width: var(--container-4xl)
    }

    .max-w-7xl {
        max-width: var(--container-7xl)
    }

    .max-w-\[25\%\] {
        max-width: 25%
    }

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

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

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

    .max-w-none {
        max-width: none
    }

    .max-w-prose {
        max-width: 65ch
    }

    .max-w-xl {
        max-width: var(--container-xl)
    }

    .\!min-w-16 {
        min-width: calc(var(--spacing)*16) !important
    }

    .min-w-9\.5 {
        min-width: calc(var(--spacing)*9.5)
    }

    .min-w-16 {
        min-width: calc(var(--spacing)*16)
    }

    .min-w-20 {
        min-width: calc(var(--spacing)*20)
    }

    .min-w-40 {
        min-width: calc(var(--spacing)*40)
    }

    .min-w-48 {
        min-width: calc(var(--spacing)*48)
    }

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

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

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

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

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

    .flex-1 {
        flex: 1
    }

    .flex-none {
        flex: none
    }

    .flex-shrink {
        flex-shrink: 1
    }

    .flex-shrink-0 {
        flex-shrink: 0
    }

    .shrink {
        flex-shrink: 1
    }

    .shrink-0 {
        flex-shrink: 0
    }

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

    .grow-0 {
        flex-grow: 0
    }

    .table-auto {
        table-layout: auto
    }

    .origin-top {
        transform-origin: top
    }

    .origin-top-left {
        transform-origin: 0 0
    }

    .-translate-x-1\/2 {
        --tw-translate-x: calc(calc(1/2*100%)*-1);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .-translate-x-5 {
        --tw-translate-x: calc(var(--spacing)*-5);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .-translate-x-full {
        --tw-translate-x: -100%;
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .translate-x-0 {
        --tw-translate-x: calc(var(--spacing)*0);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .translate-x-4 {
        --tw-translate-x: calc(var(--spacing)*4);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .translate-x-8 {
        --tw-translate-x: calc(var(--spacing)*8);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .translate-x-full {
        --tw-translate-x: 100%;
        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)
    }

    .-translate-y-2 {
        --tw-translate-y: calc(var(--spacing)*-2);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .-translate-y-8 {
        --tw-translate-y: calc(var(--spacing)*-8);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .-translate-y-full {
        --tw-translate-y: -100%;
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .translate-y-0 {
        --tw-translate-y: calc(var(--spacing)*0);
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .translate-y-full {
        --tw-translate-y: 100%;
        translate: var(--tw-translate-x)var(--tw-translate-y)
    }

    .scale-y-95 {
        --tw-scale-y: 95%;
        scale: var(--tw-scale-x)var(--tw-scale-y)
    }

    .scale-y-100 {
        --tw-scale-y: 100%;
        scale: var(--tw-scale-x)var(--tw-scale-y)
    }

    .rotate-45 {
        rotate: 45deg
    }

    .rotate-180 {
        rotate: 180deg
    }

    .transform {
        transform: var(--tw-rotate-x, )var(--tw-rotate-y, )var(--tw-rotate-z, )var(--tw-skew-x, )var(--tw-skew-y, )
    }

    .animate-spin {
        animation: var(--animate-spin)
    }

    .cursor-default {
        cursor: default
    }

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

    .cursor-pointer {
        cursor: pointer
    }

    .resize-none {
        resize: none
    }

    .list-disc {
        list-style-type: disc
    }

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

    .\[appearance\:textfield\] {
        appearance: textfield
    }

    .appearance-none {
        appearance: none
    }

    .grid-flow-row {
        grid-auto-flow: row
    }

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

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

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

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

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

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

    .grid-cols-\[1\.5fr_1fr\] {
        grid-template-columns: 1.5fr 1fr
    }

    .grid-cols-\[auto_1fr\] {
        grid-template-columns: auto 1fr
    }

    .\!flex-col {
        flex-direction: column !important
    }

    .flex-col {
        flex-direction: column
    }

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

    .flex-row {
        flex-direction: row
    }

    .flex-nowrap {
        flex-wrap: nowrap
    }

    .flex-wrap {
        flex-wrap: wrap
    }

    .place-items-center {
        place-items: center
    }

    .content-center {
        align-content: center
    }

    .content-start {
        align-content: flex-start
    }

    .\!items-center {
        align-items: center !important
    }

    .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 !important
    }

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

    .justify-center {
        justify-content: center
    }

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

    .justify-evenly {
        justify-content: space-evenly
    }

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

    .\!gap-1\.5 {
        gap: calc(var(--spacing)*1.5) !important
    }

    .\!gap-2 {
        gap: calc(var(--spacing)*2) !important
    }

    .\!gap-3 {
        gap: calc(var(--spacing)*3) !important
    }

    .\!gap-4 {
        gap: calc(var(--spacing)*4) !important
    }

    .gap-1 {
        gap: calc(var(--spacing)*1)
    }

    .gap-1\.5 {
        gap: calc(var(--spacing)*1.5)
    }

    .gap-2 {
        gap: calc(var(--spacing)*2)
    }

    .gap-2\.5 {
        gap: calc(var(--spacing)*2.5)
    }

    .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-\[30px\] {
        gap: 30px
    }

    :where(.\!space-y-4>:not(:last-child)) {
        --tw-space-y-reverse: 0 !important;
        margin-block-start: calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse)) !important;
        margin-block-end: calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse))) !important
    }

    :where(.space-y-1>: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)))
    }

    :where(.space-y-2>: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)))
    }

    :where(.space-y-4>: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)))
    }

    :where(.space-y-5>: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)))
    }

    .gap-x-1 {
        column-gap: calc(var(--spacing)*1)
    }

    .gap-x-2 {
        column-gap: calc(var(--spacing)*2)
    }

    .gap-x-4 {
        column-gap: calc(var(--spacing)*4)
    }

    .gap-x-6 {
        column-gap: calc(var(--spacing)*6)
    }

    .gap-x-7 {
        column-gap: calc(var(--spacing)*7)
    }

    :where(.space-x-4>:not(:last-child)) {
        --tw-space-x-reverse: 0;
        margin-inline-start: calc(calc(var(--spacing)*4)*var(--tw-space-x-reverse));
        margin-inline-end: calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-x-reverse)))
    }

    .gap-y-0 {
        row-gap: calc(var(--spacing)*0)
    }

    .gap-y-2 {
        row-gap: calc(var(--spacing)*2)
    }

    .gap-y-4 {
        row-gap: calc(var(--spacing)*4)
    }

    .gap-y-16 {
        row-gap: calc(var(--spacing)*16)
    }

    :where(.divide-y>:not(:last-child)) {
        --tw-divide-y-reverse: 0;
        border-bottom-style: var(--tw-border-style);
        border-top-style: var(--tw-border-style);
        border-top-width: calc(1px*var(--tw-divide-y-reverse));
        border-bottom-width: calc(1px*calc(1 - var(--tw-divide-y-reverse)))
    }

    .self-center {
        align-self: center
    }

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

    .self-stretch {
        align-self: stretch
    }

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

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

    .overflow-auto {
        overflow: auto
    }

    .overflow-hidden {
        overflow: hidden
    }

    .overflow-visible {
        overflow: visible
    }

    .overflow-x-auto {
        overflow-x: auto
    }

    .overflow-x-clip {
        overflow-x: clip
    }

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

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

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

    .\!rounded-full {
        border-radius: 3.40282e38px !important
    }

    .\!rounded-lg {
        border-radius: var(--radius-lg) !important
    }

    .\!rounded-xl {
        border-radius: var(--radius-xl) !important
    }

    .rounded {
        border-radius: .25rem
    }

    .rounded-2xl {
        border-radius: var(--radius-2xl)
    }

    .rounded-3xl {
        border-radius: var(--radius-3xl)
    }

    .rounded-\[4px\] {
        border-radius: 4px
    }

    .rounded-\[10px\] {
        border-radius: 10px
    }

    .rounded-full {
        border-radius: 3.40282e38px
    }

    .rounded-lg {
        border-radius: var(--radius-lg)
    }

    .rounded-md {
        border-radius: var(--radius-md)
    }

    .rounded-none {
        border-radius: 0
    }

    .rounded-sm {
        border-radius: var(--radius-sm)
    }

    .rounded-xl {
        border-radius: var(--radius-xl)
    }

    .rounded-s-none {
        border-start-start-radius: 0;
        border-end-start-radius: 0
    }

    .rounded-e-none {
        border-start-end-radius: 0;
        border-end-end-radius: 0
    }

    .rounded-t-2xl {
        border-top-left-radius: var(--radius-2xl);
        border-top-right-radius: var(--radius-2xl)
    }

    .rounded-l-md {
        border-top-left-radius: var(--radius-md);
        border-bottom-left-radius: var(--radius-md)
    }

    .rounded-r-md {
        border-top-right-radius: var(--radius-md);
        border-bottom-right-radius: var(--radius-md)
    }

    .rounded-b-xl {
        border-bottom-right-radius: var(--radius-xl);
        border-bottom-left-radius: var(--radius-xl)
    }

    .rounded-br-2xl {
        border-bottom-right-radius: var(--radius-2xl)
    }

    .rounded-bl-2xl {
        border-bottom-left-radius: var(--radius-2xl)
    }

    .\!border {
        border-style: var(--tw-border-style) !important;
        border-width: 1px !important
    }

    .\!border-0 {
        border-style: var(--tw-border-style) !important;
        border-width: 0 !important
    }

    .border {
        border-style: var(--tw-border-style);
        border-width: 1px
    }

    .border-0 {
        border-style: var(--tw-border-style);
        border-width: 0
    }

    .border-1 {
        border-style: var(--tw-border-style);
        border-width: 1px
    }

    .border-2 {
        border-style: var(--tw-border-style);
        border-width: 2px
    }

    .border-4 {
        border-style: var(--tw-border-style);
        border-width: 4px
    }

    .\!border-t {
        border-top-style: var(--tw-border-style) !important;
        border-top-width: 1px !important
    }

    .border-t {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px
    }

    .border-t-2 {
        border-top-style: var(--tw-border-style);
        border-top-width: 2px
    }

    .border-r-0 {
        border-right-style: var(--tw-border-style);
        border-right-width: 0
    }

    .\!border-b {
        border-bottom-style: var(--tw-border-style) !important;
        border-bottom-width: 1px !important
    }

    .border-b {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px
    }

    .border-b-2 {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 2px
    }

    .border-l {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px
    }

    .border-l-0 {
        border-left-style: var(--tw-border-style);
        border-left-width: 0
    }

    .border-l-2 {
        border-left-style: var(--tw-border-style);
        border-left-width: 2px
    }

    .border-l-4 {
        border-left-style: var(--tw-border-style);
        border-left-width: 4px
    }

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

    .\!border-\[\#E6E1DC\] {
        border-color: #e6e1dc !important
    }

    .border-\[\#543F31\] {
        border-color: #543f31
    }

    .border-\[\#BD9A81\] {
        border-color: #bd9a81
    }

    .border-\[\#C9A48A\] {
        border-color: #c9a48a
    }

    .border-\[\#D4B896\] {
        border-color: #d4b896
    }

    .border-\[\#E6E1DC\] {
        border-color: #e6e1dc
    }

    .border-\[\#E9DED5\] {
        border-color: #e9ded5
    }

    .border-\[\#E9DED5\]\/30 {
        border-color: oklab(90.6874% .00807023 .0151401/.3)
    }

    .border-\[\#F3EEE9\] {
        border-color: #f3eee9
    }

    .border-\[\#F5F2F0\] {
        border-color: #f5f2f0
    }

    .border-\[\#FDE8E8\] {
        border-color: #fde8e8
    }

    .border-blue-300 {
        border-color: var(--color-blue-300)
    }

    .border-blue-500 {
        border-color: var(--color-blue-500)
    }

    .border-container {
        border-color: var(--color-container)
    }

    .border-container-darker {
        border-color: var(--color-container-darker)
    }

    .border-current {
        border-color: currentColor
    }

    .border-gray-50 {
        border-color: var(--color-gray-50)
    }

    .border-gray-100 {
        border-color: var(--color-gray-100)
    }

    .border-gray-200 {
        border-color: var(--color-gray-200)
    }

    .border-gray-300 {
        border-color: var(--color-gray-300)
    }

    .border-green-300 {
        border-color: var(--color-green-300)
    }

    .border-green-400 {
        border-color: var(--color-green-400)
    }

    .border-pp-brand-e6e1dc {
        border-color: var(--color-pp-brand-e6e1dc)
    }

    .border-primary {
        border-color: var(--color-primary)
    }

    .border-red-300 {
        border-color: var(--color-red-300)
    }

    .border-red-500 {
        border-color: var(--color-red-500)
    }

    .border-slate-200 {
        border-color: var(--color-slate-200)
    }

    .border-slate-300 {
        border-color: var(--color-slate-300)
    }

    .border-transparent {
        border-color: #0000
    }

    .border-yellow-300 {
        border-color: var(--color-yellow-300)
    }

    .border-t-gray-800 {
        border-top-color: var(--color-gray-800)
    }

    .\!bg-\[\#3D2314\] {
        background-color: #3d2314 !important
    }

    .\!bg-\[\#614632\] {
        background-color: #614632 !important
    }

    .\!bg-\[\#E9DED5\] {
        background-color: #e9ded5 !important
    }

    .\!bg-\[\#F2EBE6\] {
        background-color: #f2ebe6 !important
    }

    .\!bg-\[\#F5F5F5\] {
        background-color: #f5f5f5 !important
    }

    .\!bg-\[\#F6EBE5\] {
        background-color: #f6ebe5 !important
    }

    .\!bg-white {
        background-color: var(--color-white) !important
    }

    .bg-\[\#4A2E1B\] {
        background-color: #4a2e1b
    }

    .bg-\[\#8d6f5b\] {
        background-color: #8d6f5b
    }

    .bg-\[\#9B1C1C\] {
        background-color: #9b1c1c
    }

    .bg-\[\#E6E1DC\] {
        background-color: #e6e1dc
    }

    .bg-\[\#E9DED5\] {
        background-color: #e9ded5
    }

    .bg-\[\#F5EDE8\] {
        background-color: #f5ede8
    }

    .bg-\[\#F5F5F5\] {
        background-color: #f5f5f5
    }

    .bg-\[\#FDF2F2\] {
        background-color: #fdf2f2
    }

    .bg-\[var\(--ammenu-main-menu-background-hover\)\] {
        background-color: var(--ammenu-main-menu-background-hover)
    }

    .bg-\[var\(--ammenu-submenu-background-color\)\] {
        background-color: var(--ammenu-submenu-background-color)
    }

    .bg-black {
        background-color: var(--color-black)
    }

    .bg-black\/40 {
        background-color: #0006
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-black\/40 {
            background-color: color-mix(in oklab, var(--color-black)40%, transparent)
        }
    }

    .bg-black\/50 {
        background-color: #00000080
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-black\/50 {
            background-color: color-mix(in oklab, var(--color-black)50%, transparent)
        }
    }

    .bg-blue-50 {
        background-color: var(--color-blue-50)
    }

    .bg-blue-600 {
        background-color: var(--color-blue-600)
    }

    .bg-container-darker {
        background-color: var(--color-container-darker)
    }

    .bg-container-lighter {
        background-color: var(--color-container-lighter)
    }

    .bg-gray-50 {
        background-color: var(--color-gray-50)
    }

    .bg-gray-50\/50 {
        background-color: #f9fafb80
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-gray-50\/50 {
            background-color: color-mix(in oklab, var(--color-gray-50)50%, transparent)
        }
    }

    .bg-gray-100 {
        background-color: var(--color-gray-100)
    }

    .bg-gray-200 {
        background-color: var(--color-gray-200)
    }

    .bg-gray-300 {
        background-color: var(--color-gray-300)
    }

    .bg-gray-800 {
        background-color: var(--color-gray-800)
    }

    .bg-gray-900 {
        background-color: var(--color-gray-900)
    }

    .bg-green-50 {
        background-color: var(--color-green-50)
    }

    .bg-green-500 {
        background-color: var(--color-green-500)
    }

    .bg-pp-brand-4a2e1b {
        background-color: var(--color-pp-brand-4a2e1b)
    }

    .bg-pp-brand-f6ebe5 {
        background-color: var(--color-pp-brand-f6ebe5)
    }

    .bg-primary[class*=bg-opacity-] {
        background-color: oklch(46% .2 265)
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-primary[class*=bg-opacity-] {
            background-color: color-mix(in srgb, var(--color-primary)calc(100%/var(--tw-bg-opacity)), #0000)
        }
    }

    .bg-primary {
        background-color: var(--color-primary)
    }

    .bg-red-50 {
        background-color: var(--color-red-50)
    }

    .bg-red-500 {
        background-color: var(--color-red-500)
    }

    .bg-surface {
        background-color: var(--color-surface)
    }

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

    .bg-white {
        background-color: var(--color-white)
    }

    .bg-white\/25 {
        background-color: #ffffff40
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-white\/25 {
            background-color: color-mix(in oklab, var(--color-white)25%, transparent)
        }
    }

    .bg-white\/60 {
        background-color: #fff9
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-white\/60 {
            background-color: color-mix(in oklab, var(--color-white)60%, transparent)
        }
    }

    .bg-white\/70 {
        background-color: #ffffffb3
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-white\/70 {
            background-color: color-mix(in oklab, var(--color-white)70%, transparent)
        }
    }

    .bg-white\/95 {
        background-color: #fffffff2
    }

    @supports (color:color-mix(in lab, red, red)) {
        .bg-white\/95 {
            background-color: color-mix(in oklab, var(--color-white)95%, transparent)
        }
    }

    .bg-yellow-50 {
        background-color: var(--color-yellow-50)
    }

    .bg-gradient-to-l {
        --tw-gradient-position: to left in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops))
    }

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

    .bg-\[image\:var\(--ammenu-submenu-background-image\)\] {
        background-image: var(--ammenu-submenu-background-image)
    }

    .from-surface {
        --tw-gradient-from: var(--color-surface);
        --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-cover {
        background-size: cover
    }

    .bg-center {
        background-position: 50%
    }

    .bg-no-repeat {
        background-repeat: no-repeat
    }

    .fill-black\/20 {
        fill: #0003
    }

    @supports (color:color-mix(in lab, red, red)) {
        .fill-black\/20 {
            fill: color-mix(in oklab, var(--color-black)20%, transparent)
        }
    }

    .fill-current {
        fill: currentColor
    }

    .fill-red-500 {
        fill: var(--color-red-500)
    }

    .stroke-current {
        stroke: currentColor
    }

    .stroke-white\/75 {
        stroke: #ffffffbf
    }

    @supports (color:color-mix(in lab, red, red)) {
        .stroke-white\/75 {
            stroke: color-mix(in oklab, var(--color-white)75%, transparent)
        }
    }

    .stroke-1 {
        stroke-width: 1px
    }

    .object-contain {
        object-fit: contain
    }

    .object-cover {
        object-fit: cover
    }

    .object-center {
        object-position: center
    }

    .\!p-0 {
        padding: calc(var(--spacing)*0) !important
    }

    .\!p-4 {
        padding: calc(var(--spacing)*4) !important
    }

    .\!p-6 {
        padding: calc(var(--spacing)*6) !important
    }

    .p-0 {
        padding: calc(var(--spacing)*0)
    }

    .p-1 {
        padding: calc(var(--spacing)*1)
    }

    .p-1\.5 {
        padding: calc(var(--spacing)*1.5)
    }

    .p-2 {
        padding: calc(var(--spacing)*2)
    }

    .p-2\.5 {
        padding: calc(var(--spacing)*2.5)
    }

    .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)
    }

    .p-10 {
        padding: calc(var(--spacing)*10)
    }

    .p-\[30px\] {
        padding: 30px
    }

    .\!px-2\.5 {
        padding-inline: calc(var(--spacing)*2.5) !important
    }

    .\!px-4 {
        padding-inline: calc(var(--spacing)*4) !important
    }

    .\!px-6 {
        padding-inline: calc(var(--spacing)*6) !important
    }

    .px-0 {
        padding-inline: calc(var(--spacing)*0)
    }

    .px-1 {
        padding-inline: calc(var(--spacing)*1)
    }

    .px-2 {
        padding-inline: calc(var(--spacing)*2)
    }

    .px-3 {
        padding-inline: calc(var(--spacing)*3)
    }

    .px-3\.5 {
        padding-inline: calc(var(--spacing)*3.5)
    }

    .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-12 {
        padding-inline: calc(var(--spacing)*12)
    }

    .\!py-1 {
        padding-block: calc(var(--spacing)*1) !important
    }

    .\!py-2 {
        padding-block: calc(var(--spacing)*2) !important
    }

    .\!py-4 {
        padding-block: calc(var(--spacing)*4) !important
    }

    .py-0 {
        padding-block: calc(var(--spacing)*0)
    }

    .py-0\.5 {
        padding-block: calc(var(--spacing)*.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-3\.5 {
        padding-block: calc(var(--spacing)*3.5)
    }

    .py-4 {
        padding-block: calc(var(--spacing)*4)
    }

    .py-6 {
        padding-block: calc(var(--spacing)*6)
    }

    .py-8 {
        padding-block: calc(var(--spacing)*8)
    }

    .py-12 {
        padding-block: calc(var(--spacing)*12)
    }

    .py-16 {
        padding-block: calc(var(--spacing)*16)
    }

    .\!pe-2 {
        padding-inline-end: calc(var(--spacing)*2) !important
    }

    .pe-2 {
        padding-inline-end: calc(var(--spacing)*2)
    }

    .\!pt-6 {
        padding-top: calc(var(--spacing)*6) !important
    }

    .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-5 {
        padding-top: calc(var(--spacing)*5)
    }

    .pt-6 {
        padding-top: calc(var(--spacing)*6)
    }

    .pt-8 {
        padding-top: calc(var(--spacing)*8)
    }

    .pt-10 {
        padding-top: calc(var(--spacing)*10)
    }

    .pr-1 {
        padding-right: calc(var(--spacing)*1)
    }

    .pr-2 {
        padding-right: calc(var(--spacing)*2)
    }

    .pr-3 {
        padding-right: calc(var(--spacing)*3)
    }

    .pr-4 {
        padding-right: calc(var(--spacing)*4)
    }

    .pr-6 {
        padding-right: calc(var(--spacing)*6)
    }

    .pr-7 {
        padding-right: calc(var(--spacing)*7)
    }

    .pr-10 {
        padding-right: calc(var(--spacing)*10)
    }

    .pr-12 {
        padding-right: calc(var(--spacing)*12)
    }

    .pr-16 {
        padding-right: calc(var(--spacing)*16)
    }

    .\!pb-1 {
        padding-bottom: calc(var(--spacing)*1) !important
    }

    .\!pb-4 {
        padding-bottom: calc(var(--spacing)*4) !important
    }

    .\!pb-6 {
        padding-bottom: calc(var(--spacing)*6) !important
    }

    .pb-0\.5 {
        padding-bottom: calc(var(--spacing)*.5)
    }

    .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-12 {
        padding-bottom: calc(var(--spacing)*12)
    }

    .pb-16 {
        padding-bottom: calc(var(--spacing)*16)
    }

    .pl-1 {
        padding-left: calc(var(--spacing)*1)
    }

    .pl-2 {
        padding-left: calc(var(--spacing)*2)
    }

    .pl-3 {
        padding-left: calc(var(--spacing)*3)
    }

    .pl-4 {
        padding-left: calc(var(--spacing)*4)
    }

    .pl-5 {
        padding-left: calc(var(--spacing)*5)
    }

    .pl-6 {
        padding-left: calc(var(--spacing)*6)
    }

    .\!text-center {
        text-align: center !important
    }

    .text-center {
        text-align: center
    }

    .text-left {
        text-align: left
    }

    .text-right {
        text-align: right
    }

    .text-start {
        text-align: start
    }

    .align-bottom {
        vertical-align: bottom
    }

    .align-middle {
        vertical-align: middle
    }

    .align-top {
        vertical-align: top
    }

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

    .\!text-3xl {
        font-size: var(--text-3xl) !important;
        line-height: var(--tw-leading, var(--text-3xl--line-height)) !important
    }

    .\!text-base {
        font-size: var(--text-base) !important;
        line-height: var(--tw-leading, var(--text-base--line-height)) !important
    }

    .\!text-lg {
        font-size: var(--text-lg) !important;
        line-height: var(--tw-leading, var(--text-lg--line-height)) !important
    }

    .\!text-sm {
        font-size: var(--text-sm) !important;
        line-height: var(--tw-leading, var(--text-sm--line-height)) !important
    }

    .\!text-xl {
        font-size: var(--text-xl) !important;
        line-height: var(--tw-leading, var(--text-xl--line-height)) !important
    }

    .\!text-xs {
        font-size: var(--text-xs) !important;
        line-height: var(--tw-leading, var(--text-xs--line-height)) !important
    }

    .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-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-\[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
    }

    .\!leading-none {
        --tw-leading: 1 !important;
        line-height: 1 !important
    }

    .leading-5 {
        --tw-leading: calc(var(--spacing)*5);
        line-height: calc(var(--spacing)*5)
    }

    .leading-6 {
        --tw-leading: calc(var(--spacing)*6);
        line-height: calc(var(--spacing)*6)
    }

    .leading-\[20px\] {
        --tw-leading: 20px;
        line-height: 20px
    }

    .leading-\[24px\] {
        --tw-leading: 24px;
        line-height: 24px
    }

    .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-black {
        --tw-font-weight: var(--font-weight-black) !important;
        font-weight: var(--font-weight-black) !important
    }

    .\!font-bold {
        --tw-font-weight: var(--font-weight-bold) !important;
        font-weight: var(--font-weight-bold) !important
    }

    .\!font-medium {
        --tw-font-weight: var(--font-weight-medium) !important;
        font-weight: var(--font-weight-medium) !important
    }

    .\!font-normal {
        --tw-font-weight: var(--font-weight-normal) !important;
        font-weight: var(--font-weight-normal) !important
    }

    .\!font-semibold {
        --tw-font-weight: var(--font-weight-semibold) !important;
        font-weight: var(--font-weight-semibold) !important
    }

    .font-black {
        --tw-font-weight: var(--font-weight-black);
        font-weight: var(--font-weight-black)
    }

    .font-bold {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold)
    }

    .font-medium {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }

    .font-normal {
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal)
    }

    .font-semibold {
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold)
    }

    .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)
    }

    .text-nowrap {
        text-wrap: nowrap
    }

    .break-words {
        overflow-wrap: break-word
    }

    .break-all {
        word-break: break-all
    }

    .hyphens-auto {
        -webkit-hyphens: auto;
        hyphens: auto
    }

    .whitespace-nowrap {
        white-space: nowrap
    }

    .\!text-\[\#3D2314\] {
        color: #3d2314 !important
    }

    .\!text-\[\#4A2E1B\] {
        color: #4a2e1b !important
    }

    .\!text-\[\#5F5F5F\] {
        color: #5f5f5f !important
    }

    .\!text-\[\#8D6F5B\] {
        color: #8d6f5b !important
    }

    .\!text-\[\#9B1C1C\] {
        color: #9b1c1c !important
    }

    .\!text-\[\#614632\] {
        color: #614632 !important
    }

    .\!text-\[\#C9B8A8\] {
        color: #c9b8a8 !important
    }

    .\!text-\[\#E9DED5\] {
        color: #e9ded5 !important
    }

    .\!text-red-600 {
        color: var(--color-red-600) !important
    }

    .\!text-white {
        color: var(--color-white) !important
    }

    .text-\[\#1C130C\] {
        color: #1c130c
    }

    .text-\[\#3D3D3D\] {
        color: #3d3d3d
    }

    .text-\[\#3D2314\] {
        color: #3d2314
    }

    .text-\[\#4A2E1B\] {
        color: #4a2e1b
    }

    .text-\[\#5F5F5F\] {
        color: #5f5f5f
    }

    .text-\[\#7D5A41\] {
        color: #7d5a41
    }

    .text-\[\#7c6e65\] {
        color: #7c6e65
    }

    .text-\[\#8C827A\] {
        color: #8c827a
    }

    .text-\[\#8D6F5B\],
    .text-\[\#8d6f5b\] {
        color: #8d6f5b
    }

    .text-\[\#9B1C1C\] {
        color: #9b1c1c
    }

    .text-\[\#412F22\] {
        color: #412f22
    }

    .text-\[\#70584A\] {
        color: #70584a
    }

    .text-\[\#443124\] {
        color: #443124
    }

    .text-\[\#614632\] {
        color: #614632
    }

    .text-\[\#C9B8A8\] {
        color: #c9b8a8
    }

    .text-\[\#D8B38F\] {
        color: #d8b38f
    }

    .text-\[\#D39B75\] {
        color: #d39b75
    }

    .text-black {
        color: var(--color-black)
    }

    .text-blue-600 {
        color: var(--color-blue-600)
    }

    .text-blue-900 {
        color: var(--color-blue-900)
    }

    .text-current {
        color: currentColor
    }

    .text-fg {
        color: var(--color-fg)
    }

    .text-fg-secondary {
        color: var(--color-fg-secondary)
    }

    .text-fg\/30 {
        color: #0206184d
    }

    @supports (color:color-mix(in lab, red, red)) {
        .text-fg\/30 {
            color: color-mix(in oklab, var(--color-fg)30%, transparent)
        }
    }

    .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-900 {
        color: var(--color-green-900)
    }

    .text-inherit {
        color: inherit
    }

    .text-on-primary {
        color: var(--color-on-primary)
    }

    .text-orange-400 {
        color: var(--color-orange-400)
    }

    .text-pp-brand-4a2e1b {
        color: var(--color-pp-brand-4a2e1b)
    }

    .text-pp-brand-8d6f5b {
        color: var(--color-pp-brand-8d6f5b)
    }

    .text-primary {
        color: var(--color-primary)
    }

    .text-primary-darker {
        color: var(--color-primary-darker)
    }

    .text-red-500 {
        color: var(--color-red-500)
    }

    .text-red-600 {
        color: var(--color-red-600)
    }

    .text-red-900 {
        color: var(--color-red-900)
    }

    .text-secondary {
        color: var(--color-secondary)
    }

    .text-secondary-darker {
        color: var(--color-secondary-darker)
    }

    .text-slate-400 {
        color: var(--color-slate-400)
    }

    .text-white {
        color: var(--color-white)
    }

    .text-white\! {
        color: var(--color-white) !important
    }

    .text-yellow-500 {
        color: var(--color-yellow-500)
    }

    .text-yellow-900 {
        color: var(--color-yellow-900)
    }

    .lowercase {
        text-transform: lowercase
    }

    .uppercase {
        text-transform: uppercase
    }

    .italic {
        font-style: italic
    }

    .not-italic {
        font-style: normal
    }

    .tabular-nums {
        --tw-numeric-spacing: tabular-nums;
        font-variant-numeric: var(--tw-ordinal, )var(--tw-slashed-zero, )var(--tw-numeric-figure, )var(--tw-numeric-spacing, )var(--tw-numeric-fraction, )
    }

    .underline {
        text-decoration-line: underline
    }

    .antialiased {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale
    }

    .opacity-0 {
        opacity: 0
    }

    .opacity-25 {
        opacity: .25
    }

    .opacity-50 {
        opacity: .5
    }

    .opacity-60 {
        opacity: .6
    }

    .opacity-75 {
        opacity: .75
    }

    .opacity-100 {
        opacity: 1
    }

    .mix-blend-multiply {
        mix-blend-mode: multiply
    }

    .\!shadow-sm {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a) !important;
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important
    }

    .shadow {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

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

    .shadow-card {
        --tw-shadow: 0px 0px 20px 0px var(--tw-shadow-color, #dfdfdf80);
        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, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .shadow-md {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
        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, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        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, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .ring {
        --tw-ring-shadow: var(--tw-ring-inset, )0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color, currentcolor);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .ring-blue-500\/50 {
        --tw-ring-color: #3080ff80
    }

    @supports (color:color-mix(in lab, red, red)) {
        .ring-blue-500\/50 {
            --tw-ring-color: color-mix(in oklab, var(--color-blue-500)50%, transparent)
        }
    }

    .ring-primary\/50 {
        --tw-ring-color: #1f48c580
    }

    @supports (color:color-mix(in lab, red, red)) {
        .ring-primary\/50 {
            --tw-ring-color: color-mix(in oklab, var(--color-primary)50%, transparent)
        }
    }

    .ring-primary\/75 {
        --tw-ring-color: #1f48c5bf
    }

    @supports (color:color-mix(in lab, red, red)) {
        .ring-primary\/75 {
            --tw-ring-color: color-mix(in oklab, var(--color-primary)75%, transparent)
        }
    }

    .outline {
        outline-style: var(--tw-outline-style);
        outline-width: 1px
    }

    .outline-offset-0 {
        outline-offset: 0px
    }

    .outline-offset-2 {
        outline-offset: 2px
    }

    .outline-primary {
        outline-color: var(--color-primary)
    }

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

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

    .backdrop-blur-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, )
    }

    .backdrop-filter {
        -webkit-backdrop-filter: var(--tw-backdrop-blur, )var(--tw-backdrop-brightness, )var(--tw-backdrop-contrast, )var(--tw-backdrop-grayscale, )var(--tw-backdrop-hue-rotate, )var(--tw-backdrop-invert, )var(--tw-backdrop-opacity, )var(--tw-backdrop-saturate, )var(--tw-backdrop-sepia, );
        backdrop-filter: var(--tw-backdrop-blur, )var(--tw-backdrop-brightness, )var(--tw-backdrop-contrast, )var(--tw-backdrop-grayscale, )var(--tw-backdrop-hue-rotate, )var(--tw-backdrop-invert, )var(--tw-backdrop-opacity, )var(--tw-backdrop-saturate, )var(--tw-backdrop-sepia, )
    }

    .\!transition-all {
        transition-property: all !important;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)) !important;
        transition-duration: var(--tw-duration, var(--default-transition-duration)) !important
    }

    .\!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 !important;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)) !important;
        transition-duration: var(--tw-duration, var(--default-transition-duration)) !important
    }

    .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-300 {
        --tw-duration: .3s !important;
        transition-duration: .3s !important
    }

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

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

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

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

    .ease-in {
        --tw-ease: var(--ease-in);
        transition-timing-function: var(--ease-in)
    }

    .ease-in-out {
        --tw-ease: var(--ease-in-out);
        transition-timing-function: var(--ease-in-out)
    }

    .ease-out {
        --tw-ease: var(--ease-out);
        transition-timing-function: var(--ease-out)
    }

    .btn-primary {
        --btn-stroke: #0000;
        --btn-bg: var(--color-primary);
        --btn-color: var(--color-on-primary);
        --btn-hover-stroke: #0000;
        --btn-hover-bg: var(--color-primary-lighter);
        --btn-hover-color: var(--color-on-primary);
        --btn-active-stroke: #0000;
        --btn-active-bg: var(--color-primary);
        --btn-active-color: var(--color-on-primary)
    }

    .btn-secondary {
        --btn-stroke: var(--color-primary-lighter);
        --btn-bg: var(--color-on-primary);
        --btn-color: var(--color-primary-darker);
        --btn-hover-stroke: var(--color-primary-lighter);
        --btn-hover-bg: var(--color-on-primary);
        --btn-hover-color: var(--color-primary-lighter);
        --btn-active-stroke: #0000;
        --btn-active-bg: var(--color-primary);
        --btn-active-color: var(--color-on-primary)
    }

    .outline-none {
        --tw-outline-style: none;
        outline-style: none
    }

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

    .bg-opacity-25 {
        --tw-bg-opacity: 25
    }

    .bg-opacity-100 {
        --tw-bg-opacity: 100
    }

    .group-open\:rotate-180:is(:where(.group):is([open], :popover-open, :open) *) {
        rotate: 180deg
    }

    @media (hover:hover) {
        .group-hover\:scale-110:is(:where(.group):hover *) {
            --tw-scale-x: 110%;
            --tw-scale-y: 110%;
            --tw-scale-z: 110%;
            scale: var(--tw-scale-x)var(--tw-scale-y)
        }

        .group-hover\:border-gray-200:is(:where(.group):hover *) {
            border-color: var(--color-gray-200)
        }

        .group-hover\:bg-white:is(:where(.group):hover *) {
            background-color: var(--color-white)
        }

        .group-hover\:opacity-100:is(:where(.group):hover *) {
            opacity: 1
        }
    }

    .group-aria-expanded\:rotate-180:is(:where(.group)[aria-expanded=true] *) {
        rotate: 180deg
    }

    .placeholder\:text-gray-200::placeholder {
        color: var(--color-gray-200)
    }

    .backdrop\:bg-\[\#3D2314\]\/40::backdrop {
        background-color: oklab(28.605% .0302989 .0361075/.4)
    }

    .backdrop\:backdrop-blur-sm::backdrop {
        --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, )
    }

    .before\:h-3:before {
        content: var(--tw-content);
        height: calc(var(--spacing)*3)
    }

    .before\:w-3:before {
        content: var(--tw-content);
        width: calc(var(--spacing)*3)
    }

    .before\:shrink-0:before {
        content: var(--tw-content);
        flex-shrink: 0
    }

    .before\:rounded-full:before {
        content: var(--tw-content);
        border-radius: 3.40282e38px
    }

    .before\:bg-green-500:before {
        content: var(--tw-content);
        background-color: var(--color-green-500)
    }

    .before\:bg-red-500:before {
        content: var(--tw-content);
        background-color: var(--color-red-500)
    }

    .first\:pt-0:first-child {
        padding-top: calc(var(--spacing)*0)
    }

    .last\:mr-0:last-child {
        margin-right: calc(var(--spacing)*0)
    }

    .last\:mb-0:last-child {
        margin-bottom: calc(var(--spacing)*0)
    }

    .last\:mb-6:last-child {
        margin-bottom: calc(var(--spacing)*6)
    }

    .last\:border-0:last-child {
        border-style: var(--tw-border-style);
        border-width: 0
    }

    .last\:border-b:last-child {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px
    }

    .last\:border-b-0:last-child {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 0
    }

    .last\:pb-0:last-child {
        padding-bottom: calc(var(--spacing)*0)
    }

    .even\:bg-gray-50:nth-child(2n) {
        background-color: var(--color-gray-50)
    }

    .even\:bg-gray-100:nth-child(2n) {
        background-color: var(--color-gray-100)
    }

    .open\:flex:is([open], :popover-open, :open) {
        display: flex
    }

    .invalid\:ring-2:invalid {
        --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)
    }

    .invalid\:ring-red-500:invalid {
        --tw-ring-color: var(--color-red-500)
    }

    .focus-within\:ring-1:focus-within {
        --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)
    }

    @media (hover:hover) {
        .hover\:-translate-y-1:hover {
            --tw-translate-y: calc(var(--spacing)*-1);
            translate: var(--tw-translate-x)var(--tw-translate-y)
        }

        .hover\:\!border-red-200:hover {
            border-color: var(--color-red-200) !important
        }

        .hover\:border-\[\#C9A48A\]:hover {
            border-color: #c9a48a
        }

        .hover\:border-primary:hover {
            border-color: var(--color-primary)
        }

        .hover\:\!bg-\[\#4A2E1B\]:hover {
            background-color: #4a2e1b !important
        }

        .hover\:\!bg-\[\#281D15\]:hover {
            background-color: #281d15 !important
        }

        .hover\:\!bg-\[\#DBC7B9\]:hover {
            background-color: #dbc7b9 !important
        }

        .hover\:bg-\[var\(--ammenu-main-menu-background-hover\)\]:hover {
            background-color: var(--ammenu-main-menu-background-hover)
        }

        .hover\:bg-black\/10:hover {
            background-color: #0000001a
        }

        @supports (color:color-mix(in lab, red, red)) {
            .hover\:bg-black\/10:hover {
                background-color: color-mix(in oklab, var(--color-black)10%, transparent)
            }
        }

        .hover\:bg-gray-50:hover {
            background-color: var(--color-gray-50)
        }

        .hover\:bg-gray-100:hover {
            background-color: var(--color-gray-100)
        }

        .hover\:bg-pp-brand-4a2e1b:hover {
            background-color: var(--color-pp-brand-4a2e1b)
        }

        .hover\:bg-pp-brand-4a2e1b\/95:hover {
            background-color: #4a2e1bf2
        }

        @supports (color:color-mix(in lab, red, red)) {
            .hover\:bg-pp-brand-4a2e1b\/95:hover {
                background-color: color-mix(in oklab, var(--color-pp-brand-4a2e1b)95%, transparent)
            }
        }

        .hover\:bg-pp-brand-f6ebe5:hover {
            background-color: var(--color-pp-brand-f6ebe5)
        }

        .hover\:bg-pp-brand-f6ebe5\/80:hover {
            background-color: #f6ebe5cc
        }

        @supports (color:color-mix(in lab, red, red)) {
            .hover\:bg-pp-brand-f6ebe5\/80:hover {
                background-color: color-mix(in oklab, var(--color-pp-brand-f6ebe5)80%, transparent)
            }
        }

        .hover\:\!text-\[\#3D2314\]:hover {
            color: #3d2314 !important
        }

        .hover\:\!text-red-600:hover {
            color: var(--color-red-600) !important
        }

        .hover\:\!text-white:hover {
            color: var(--color-white) !important
        }

        .hover\:text-\[\#3D2314\]:hover {
            color: #3d2314
        }

        .hover\:text-\[\#4A2E1B\]:hover {
            color: #4a2e1b
        }

        .hover\:text-\[\#7D5A41\]:hover {
            color: #7d5a41
        }

        .hover\:text-\[\#443124\]:hover {
            color: #443124
        }

        .hover\:text-\[\#614632\]:hover {
            color: #614632
        }

        .hover\:text-black:hover {
            color: var(--color-black)
        }

        .hover\:text-blue-600:hover {
            color: var(--color-blue-600)
        }

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

        .hover\:text-gray-200\!:hover {
            color: var(--color-gray-200) !important
        }

        .hover\:text-gray-400:hover {
            color: var(--color-gray-400)
        }

        .hover\:text-gray-500:hover {
            color: var(--color-gray-500)
        }

        .hover\:text-gray-600:hover {
            color: var(--color-gray-600)
        }

        .hover\:text-gray-700:hover {
            color: var(--color-gray-700)
        }

        .hover\:text-pp-brand-4a2e1b:hover {
            color: var(--color-pp-brand-4a2e1b)
        }

        .hover\:text-pp-brand-4a2e1b\/90:hover {
            color: #4a2e1be6
        }

        @supports (color:color-mix(in lab, red, red)) {
            .hover\:text-pp-brand-4a2e1b\/90:hover {
                color: color-mix(in oklab, var(--color-pp-brand-4a2e1b)90%, transparent)
            }
        }

        .hover\:text-primary:hover {
            color: var(--color-primary)
        }

        .hover\:text-red-500:hover {
            color: var(--color-red-500)
        }

        .hover\:text-red-600:hover {
            color: var(--color-red-600)
        }

        .hover\:text-slate-800:hover {
            color: var(--color-slate-800)
        }

        .hover\:text-white:hover {
            color: var(--color-white)
        }

        .hover\:text-yellow-500:hover {
            color: var(--color-yellow-500)
        }

        .hover\:\!underline:hover {
            text-decoration-line: underline !important
        }

        .hover\:no-underline:hover {
            text-decoration-line: none
        }

        .hover\:underline:hover {
            text-decoration-line: underline
        }

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

        .hover\:opacity-100:hover {
            opacity: 1
        }

        .hover\:\!shadow-md:hover {
            --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a) !important;
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important
        }

        .hover\:shadow:hover {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            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-card:hover {
            --tw-shadow: 0px 0px 20px 0px var(--tw-shadow-color, #dfdfdf80);
            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-card-hover:hover {
            --tw-shadow: 0px 15px 35px 0px var(--tw-shadow-color, #c8c8c899);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .hover\:shadow-md:hover {
            --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
            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 {
            --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }
    }

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

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

    .focus\:z-10:focus {
        z-index: 10
    }

    .focus\:z-30:focus {
        z-index: 30
    }

    .focus\:z-40:focus {
        z-index: 40
    }

    .focus\:border-0:focus {
        border-style: var(--tw-border-style);
        border-width: 0
    }

    .focus\:border-\[\#4A2E1B\]:focus {
        border-color: #4a2e1b
    }

    .focus\:border-\[\#C9A48A\]:focus {
        border-color: #c9a48a
    }

    .focus\:border-blue-300:focus {
        border-color: var(--color-blue-300)
    }

    .focus\:border-blue-500:focus {
        border-color: var(--color-blue-500)
    }

    .focus\:border-pp-brand-4a2e1b:focus {
        border-color: var(--color-pp-brand-4a2e1b)
    }

    .focus\:border-primary:focus {
        border-color: var(--color-primary)
    }

    .focus\:border-red-500:focus {
        border-color: var(--color-red-500)
    }

    .focus\:bg-white:focus {
        background-color: var(--color-white)
    }

    .focus\:p-2:focus {
        padding: calc(var(--spacing)*2)
    }

    .focus\:text-gray-600:focus {
        color: var(--color-gray-600)
    }

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

    .focus\:ring-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\:ring-1:focus {
        --tw-ring-shadow: var(--tw-ring-inset, )0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color, currentcolor);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
    }

    .focus\:ring-2:focus {
        --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\:ring-blue-500:focus {
        --tw-ring-color: var(--color-blue-500)
    }

    .focus\:ring-blue-500\/10:focus {
        --tw-ring-color: #3080ff1a
    }

    @supports (color:color-mix(in lab, red, red)) {
        .focus\:ring-blue-500\/10:focus {
            --tw-ring-color: color-mix(in oklab, var(--color-blue-500)10%, transparent)
        }
    }

    .focus\:ring-pp-brand-4a2e1b:focus {
        --tw-ring-color: var(--color-pp-brand-4a2e1b)
    }

    .focus\:ring-primary:focus {
        --tw-ring-color: var(--color-primary)
    }

    .focus\:ring-red-500:focus {
        --tw-ring-color: var(--color-red-500)
    }

    .focus\:outline-none:focus {
        --tw-outline-style: none;
        outline-style: none
    }

    .focus\:ring-opacity-50:focus {
        --tw-ring-opacity: 50
    }

    .active\:bg-gray-100:active {
        background-color: var(--color-gray-100)
    }

    .active\:text-gray-500:active {
        color: var(--color-gray-500)
    }

    .active\:text-gray-700:active {
        color: var(--color-gray-700)
    }

    .active\:ring-0:active {
        --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)
    }

    .disabled\:opacity-75:disabled {
        opacity: .75
    }

    .has-\[\:focus-visible\]\:outline-2:has(:focus-visible) {
        outline-style: var(--tw-outline-style);
        outline-width: 2px
    }

    .aria-\[current\=page\]\:font-medium[aria-current=page] {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium)
    }

    .data-\[active\]\:border-primary[data-active] {
        border-color: var(--color-primary)
    }

    @media (prefers-reduced-motion:reduce) {
        .motion-reduce\:duration-0 {
            --tw-duration: 0s;
            transition-duration: 0s
        }
    }

    @media (min-width:40rem) {
        .sm\:order-1 {
            order: 1
        }

        .sm\:order-2 {
            order: 2
        }

        .sm\:order-3 {
            order: 3
        }

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

        .sm\:col-span-6 {
            grid-column: span 6/span 6
        }

        .sm\:mt-0 {
            margin-top: calc(var(--spacing)*0)
        }

        .sm\:mr-8 {
            margin-right: calc(var(--spacing)*8)
        }

        .sm\:mb-0 {
            margin-bottom: calc(var(--spacing)*0)
        }

        .sm\:ml-2 {
            margin-left: calc(var(--spacing)*2)
        }

        .sm\:ml-3 {
            margin-left: calc(var(--spacing)*3)
        }

        .sm\:ml-6 {
            margin-left: calc(var(--spacing)*6)
        }

        .sm\:block {
            display: block
        }

        .sm\:flex {
            display: flex
        }

        .sm\:w-1\/2 {
            width: 50%
        }

        .sm\:w-20 {
            width: calc(var(--spacing)*20)
        }

        .sm\:w-48 {
            width: calc(var(--spacing)*48)
        }

        .sm\:w-96 {
            width: calc(var(--spacing)*96)
        }

        .sm\:w-auto {
            width: auto
        }

        .sm\:table-fixed {
            table-layout: fixed
        }

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

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

        .sm\:flex-row {
            flex-direction: row
        }

        .sm\:items-start {
            align-items: flex-start
        }

        .sm\:justify-between {
            justify-content: space-between
        }

        .sm\:gap-2 {
            gap: calc(var(--spacing)*2)
        }

        .sm\:p-16 {
            padding: calc(var(--spacing)*16)
        }

        .sm\:px-6 {
            padding-inline: calc(var(--spacing)*6)
        }

        .sm\:py-1 {
            padding-block: calc(var(--spacing)*1)
        }

        .sm\:pb-0 {
            padding-bottom: calc(var(--spacing)*0)
        }

        .sm\:text-right {
            text-align: right
        }

        .sm\:text-2xl {
            font-size: var(--text-2xl);
            line-height: var(--tw-leading, var(--text-2xl--line-height))
        }
    }

    @media (min-width:48rem) {
        .md\:visible {
            visibility: visible
        }

        .md\:sr-only {
            clip-path: inset(50%);
            white-space: nowrap;
            border-width: 0;
            width: 1px;
            height: 1px;
            margin: -1px;
            padding: 0;
            position: absolute;
            overflow: hidden
        }

        .md\:absolute {
            position: absolute
        }

        .md\:fixed {
            position: fixed
        }

        .md\:top-0 {
            top: calc(var(--spacing)*0)
        }

        .md\:top-full {
            top: 100%
        }

        .md\:right-0 {
            right: calc(var(--spacing)*0)
        }

        .md\:\!bottom-0 {
            bottom: calc(var(--spacing)*0) !important
        }

        .md\:\!left-auto {
            left: auto !important
        }

        .md\:left-0 {
            left: calc(var(--spacing)*0)
        }

        .md\:z-50 {
            z-index: 50
        }

        .md\:order-3 {
            order: 3
        }

        .md\:col-span-1 {
            grid-column: span 1/span 1
        }

        .md\:col-span-3 {
            grid-column: span 3/span 3
        }

        .md\:mx-0 {
            margin-inline: calc(var(--spacing)*0)
        }

        .md\:my-0 {
            margin-block: calc(var(--spacing)*0)
        }

        .md\:\!ms-auto {
            margin-inline-start: auto !important
        }

        .md\:me-0 {
            margin-inline-end: calc(var(--spacing)*0)
        }

        .md\:-mt-1 {
            margin-top: calc(var(--spacing)*-1)
        }

        .md\:mt-4 {
            margin-top: calc(var(--spacing)*4)
        }

        .md\:mt-5 {
            margin-top: calc(var(--spacing)*5)
        }

        .md\:-mr-1 {
            margin-right: calc(var(--spacing)*-1)
        }

        .md\:mb-0 {
            margin-bottom: calc(var(--spacing)*0)
        }

        .md\:mb-1 {
            margin-bottom: calc(var(--spacing)*1)
        }

        .md\:mb-6 {
            margin-bottom: calc(var(--spacing)*6)
        }

        .md\:ml-auto {
            margin-left: auto
        }

        .md\:block {
            display: block
        }

        .md\:flex {
            display: flex
        }

        .md\:grid {
            display: grid
        }

        .md\:hidden {
            display: none
        }

        .md\:inline-block {
            display: inline-block
        }

        .md\:inline-flex {
            display: inline-flex
        }

        .md\:h-6 {
            height: calc(var(--spacing)*6)
        }

        .md\:h-20 {
            height: calc(var(--spacing)*20)
        }

        .md\:h-24 {
            height: calc(var(--spacing)*24)
        }

        .md\:w-1\/2 {
            width: 50%
        }

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

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

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

        .md\:w-4\/6 {
            width: 66.6667%
        }

        .md\:w-6 {
            width: calc(var(--spacing)*6)
        }

        .md\:w-20 {
            width: calc(var(--spacing)*20)
        }

        .md\:w-24 {
            width: calc(var(--spacing)*24)
        }

        .md\:w-\[300px\] {
            width: 300px
        }

        .md\:w-\[350px\] {
            width: 350px
        }

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

        .md\:w-\[500px\] {
            width: 500px
        }

        .md\:w-\[550px\] {
            width: 550px
        }

        .md\:w-\[640px\] {
            width: 640px
        }

        .md\:w-auto {
            width: auto
        }

        .md\:w-full {
            width: 100%
        }

        .md\:\!max-w-\[550px\] {
            max-width: 550px !important
        }

        .md\:max-w-md {
            max-width: var(--container-md)
        }

        .md\:min-w-\[160px\] {
            min-width: 160px
        }

        .md\:shrink-0 {
            flex-shrink: 0
        }

        .md\:-translate-x-1\/3 {
            --tw-translate-x: calc(calc(1/3*100%)*-1);
            translate: var(--tw-translate-x)var(--tw-translate-y)
        }

        .md\:translate-x-0 {
            --tw-translate-x: calc(var(--spacing)*0);
            translate: var(--tw-translate-x)var(--tw-translate-y)
        }

        .md\:translate-x-full {
            --tw-translate-x: 100%;
            translate: var(--tw-translate-x)var(--tw-translate-y)
        }

        .md\:translate-y-0 {
            --tw-translate-y: calc(var(--spacing)*0);
            translate: var(--tw-translate-x)var(--tw-translate-y)
        }

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

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

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

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

        .md\:grid-cols-\[40px_40px_1fr_120px_150px_120px\] {
            grid-template-columns: 40px 40px 1fr 120px 150px 120px
        }

        .md\:grid-cols-\[42\%_minmax\(0px\,1fr\)\] {
            grid-template-columns: 42% minmax(0, 1fr)
        }

        .md\:grid-cols-\[50px_1fr_120px_150px_120px\] {
            grid-template-columns: 50px 1fr 120px 150px 120px
        }

        .md\:flex-row {
            flex-direction: row
        }

        .md\:flex-wrap {
            flex-wrap: wrap
        }

        .md\:items-center {
            align-items: center
        }

        .md\:items-start {
            align-items: flex-start
        }

        .md\:justify-between {
            justify-content: space-between
        }

        .md\:justify-center {
            justify-content: center
        }

        .md\:justify-start {
            justify-content: flex-start
        }

        .md\:gap-1 {
            gap: calc(var(--spacing)*1)
        }

        .md\:gap-4 {
            gap: calc(var(--spacing)*4)
        }

        .md\:gap-6 {
            gap: calc(var(--spacing)*6)
        }

        .md\:gap-8 {
            gap: calc(var(--spacing)*8)
        }

        .md\:gap-x-6 {
            column-gap: calc(var(--spacing)*6)
        }

        .md\:\!rounded-none {
            border-radius: 0 !important
        }

        .md\:border-0 {
            border-style: var(--tw-border-style);
            border-width: 0
        }

        .md\:border-r {
            border-right-style: var(--tw-border-style);
            border-right-width: 1px
        }

        .md\:border-b {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 1px
        }

        .md\:border-b-0 {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 0
        }

        .md\:\!border-l {
            border-left-style: var(--tw-border-style) !important;
            border-left-width: 1px !important
        }

        .md\:border-\[\#E6E1DC\] {
            border-color: #e6e1dc
        }

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

        .md\:px-0 {
            padding-inline: calc(var(--spacing)*0)
        }

        .md\:px-8 {
            padding-inline: calc(var(--spacing)*8)
        }

        .md\:py-0 {
            padding-block: calc(var(--spacing)*0)
        }

        .md\:py-6 {
            padding-block: calc(var(--spacing)*6)
        }

        .md\:\!pb-6 {
            padding-bottom: calc(var(--spacing)*6) !important
        }

        .md\:pl-5 {
            padding-left: calc(var(--spacing)*5)
        }

        .md\:text-center {
            text-align: center
        }

        .md\:text-left {
            text-align: left
        }

        .md\:text-2xl {
            font-size: var(--text-2xl);
            line-height: var(--tw-leading, var(--text-2xl--line-height))
        }

        .md\:text-3xl {
            font-size: var(--text-3xl);
            line-height: var(--tw-leading, var(--text-3xl--line-height))
        }

        .md\:text-4xl {
            font-size: var(--text-4xl);
            line-height: var(--tw-leading, var(--text-4xl--line-height))
        }

        .md\:text-base {
            font-size: var(--text-base);
            line-height: var(--tw-leading, var(--text-base--line-height))
        }

        .md\:text-lg {
            font-size: var(--text-lg);
            line-height: var(--tw-leading, var(--text-lg--line-height))
        }

        .md\:text-sm {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height))
        }

        .md\:\[--snap-cols\:2\] {
            --snap-cols: 2
        }

        .md\:first\:pt-6:first-child {
            padding-top: calc(var(--spacing)*6)
        }

        .md\:last\:border-b-0:last-child {
            border-bottom-style: var(--tw-border-style);
            border-bottom-width: 0
        }

        .md\:last\:pb-6:last-child {
            padding-bottom: calc(var(--spacing)*6)
        }
    }

    @media (min-width:64rem) {
        .lg\:sr-only {
            clip-path: inset(50%);
            white-space: nowrap;
            border-width: 0;
            width: 1px;
            height: 1px;
            margin: -1px;
            padding: 0;
            position: absolute;
            overflow: hidden
        }

        .lg\:absolute {
            position: absolute
        }

        .lg\:sticky {
            position: sticky
        }

        .lg\:top-4 {
            top: calc(var(--spacing)*4)
        }

        .lg\:top-\[var\(--msrp-block-offset\)\] {
            top: var(--msrp-block-offset)
        }

        .lg\:right-auto {
            right: auto
        }

        .lg\:bottom-auto {
            bottom: auto
        }

        .lg\:left-\[var\(--msrp-inline-offset\)\] {
            left: var(--msrp-inline-offset)
        }

        .lg\:order-0 {
            order: 0
        }

        .lg\:order-1 {
            order: 1
        }

        .lg\:order-2 {
            order: 2
        }

        .lg\:col-span-1 {
            grid-column: span 1/span 1
        }

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

        .lg\:col-span-6 {
            grid-column: span 6/span 6
        }

        .lg\:my-6 {
            margin-block: calc(var(--spacing)*6)
        }

        .lg\:mt-0 {
            margin-top: calc(var(--spacing)*0)
        }

        .lg\:mt-3 {
            margin-top: calc(var(--spacing)*3)
        }

        .lg\:mt-6 {
            margin-top: calc(var(--spacing)*6)
        }

        .lg\:mr-4 {
            margin-right: calc(var(--spacing)*4)
        }

        .lg\:mb-2 {
            margin-bottom: calc(var(--spacing)*2)
        }

        .lg\:mb-6 {
            margin-bottom: calc(var(--spacing)*6)
        }

        .lg\:mb-8 {
            margin-bottom: calc(var(--spacing)*8)
        }

        .lg\:ml-5 {
            margin-left: calc(var(--spacing)*5)
        }

        .lg\:block {
            display: block
        }

        .lg\:flex {
            display: flex
        }

        .lg\:grid {
            display: grid
        }

        .lg\:hidden {
            display: none
        }

        .lg\:inline {
            display: inline
        }

        .lg\:inline-block {
            display: inline-block
        }

        .lg\:table-cell {
            display: table-cell
        }

        .lg\:h-5 {
            height: calc(var(--spacing)*5)
        }

        .lg\:h-36 {
            height: calc(var(--spacing)*36)
        }

        .lg\:w-1\/2 {
            width: 50%
        }

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

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

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

        .lg\:w-5 {
            width: calc(var(--spacing)*5)
        }

        .lg\:w-36 {
            width: calc(var(--spacing)*36)
        }

        .lg\:w-56 {
            width: calc(var(--spacing)*56)
        }

        .lg\:w-80 {
            width: calc(var(--spacing)*80)
        }

        .lg\:w-96 {
            width: calc(var(--spacing)*96)
        }

        .lg\:max-w-xs {
            max-width: var(--container-xs)
        }

        .lg\:flex-1 {
            flex: 1
        }

        .lg\:table-auto {
            table-layout: auto
        }

        .lg\:-translate-y-0 {
            --tw-translate-y: calc(var(--spacing)*0);
            translate: var(--tw-translate-x)var(--tw-translate-y)
        }

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

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

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

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

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

        .lg\:flex-row {
            flex-direction: row
        }

        .lg\:flex-row-reverse {
            flex-direction: row-reverse
        }

        .lg\:flex-nowrap {
            flex-wrap: nowrap
        }

        .lg\:items-start {
            align-items: flex-start
        }

        .lg\:justify-start {
            justify-content: flex-start
        }

        .lg\:gap-6 {
            gap: calc(var(--spacing)*6)
        }

        .lg\:gap-8 {
            gap: calc(var(--spacing)*8)
        }

        .lg\:gap-x-10 {
            column-gap: calc(var(--spacing)*10)
        }

        .lg\:p-2\.5 {
            padding: calc(var(--spacing)*2.5)
        }

        .lg\:p-5 {
            padding: calc(var(--spacing)*5)
        }

        .lg\:p-8 {
            padding: calc(var(--spacing)*8)
        }

        .lg\:p-10 {
            padding: calc(var(--spacing)*10)
        }

        .lg\:px-5 {
            padding-inline: calc(var(--spacing)*5)
        }

        .lg\:px-8 {
            padding-inline: calc(var(--spacing)*8)
        }

        .lg\:py-2 {
            padding-block: calc(var(--spacing)*2)
        }

        .lg\:py-8 {
            padding-block: calc(var(--spacing)*8)
        }

        .lg\:py-10 {
            padding-block: calc(var(--spacing)*10)
        }

        .lg\:text-left {
            text-align: left
        }

        .lg\:text-2xl {
            font-size: var(--text-2xl);
            line-height: var(--tw-leading, var(--text-2xl--line-height))
        }

        .lg\:text-4xl {
            font-size: var(--text-4xl);
            line-height: var(--tw-leading, var(--text-4xl--line-height))
        }

        .lg\:text-base {
            font-size: var(--text-base);
            line-height: var(--tw-leading, var(--text-base--line-height))
        }

        .lg\:text-sm {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height))
        }

        .lg\:shadow-lg {
            --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
            box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
        }

        .lg\:\[--snap-cols\:3\] {
            --snap-cols: 3
        }
    }

    @media (min-width:80rem) {
        .xl\:col-span-2 {
            grid-column: span 2/span 2
        }

        .xl\:mt-0 {
            margin-top: calc(var(--spacing)*0)
        }

        .xl\:block {
            display: block
        }

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

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

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

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

        .xl\:border-none {
            --tw-border-style: none;
            border-style: none
        }

        .xl\:p-12 {
            padding: calc(var(--spacing)*12)
        }

        .xl\:py-32 {
            padding-block: calc(var(--spacing)*32)
        }

        .xl\:text-6xl {
            font-size: var(--text-6xl);
            line-height: var(--tw-leading, var(--text-6xl--line-height))
        }

        .xl\:\[--snap-cols\:4\] {
            --snap-cols: 4
        }
    }

    @media (min-width:96rem) {
        .\32 xl\:w-96 {
            width: calc(var(--spacing)*96)
        }

        .\32 xl\:grid-cols-5 {
            grid-template-columns: repeat(5, minmax(0, 1fr))
        }

        .\32 xl\:\[--snap-cols\:5\] {
            --snap-cols: 5
        }
    }

    .rtl\:-rotate-180:where(:dir(rtl), [dir=rtl], [dir=rtl] *) {
        rotate: -180deg
    }

    @media print {
        .print\:mt-0 {
            margin-top: calc(var(--spacing)*0)
        }

        .print\:ml-5 {
            margin-left: calc(var(--spacing)*5)
        }

        .print\:flex {
            display: flex
        }

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

        .print\:text-left {
            text-align: left
        }
    }

    .\[\&_\.col-span-4\]\:col-span-1 .col-span-4 {
        grid-column: span 1/span 1
    }

    .\[\&_\.col-span-4\]\:w-auto .col-span-4 {
        width: auto
    }

    .\[\&_\.pager\]\:flex .pager {
        display: flex
    }

    .\[\&_\.pager\]\:w-full .pager {
        width: 100%
    }

    .\[\&_\.pager\]\:justify-center .pager {
        justify-content: center
    }

    .\[\&_span\]\:\!text-base span {
        font-size: var(--text-base) !important;
        line-height: var(--tw-leading, var(--text-base--line-height)) !important
    }

    .\[\&_span\]\:\!text-sm span {
        font-size: var(--text-sm) !important;
        line-height: var(--tw-leading, var(--text-sm--line-height)) !important
    }

    .\[\&_span\]\:\!text-xl span {
        font-size: var(--text-xl) !important;
        line-height: var(--tw-leading, var(--text-xl--line-height)) !important
    }

    .\[\&_span\]\:\!font-bold span {
        --tw-font-weight: var(--font-weight-bold) !important;
        font-weight: var(--font-weight-bold) !important
    }

    .\[\&_span\]\:\!font-semibold span {
        --tw-font-weight: var(--font-weight-semibold) !important;
        font-weight: var(--font-weight-semibold) !important
    }

    .\[\&_span\]\:\!text-\[\#3D2314\] span {
        color: #3d2314 !important
    }

    .\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker {
        display: none
    }

    .\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button {
        appearance: none
    }

    .\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button {
        appearance: none
    }
}

@media print {

    *,
    :before,
    :after {
        box-shadow: none !important;
        text-shadow: none !important
    }

    :is(h1, h2, h3, h4, h5, h6) {
        page-break-after: avoid
    }

    :is(h2, h3, h4, h5, h6, p) {
        orphans: 3;
        widows: 3
    }

    :is(tr, img, svg, pre, blockquote) {
        page-break-inside: avoid
    }

    abbr[title]:after {
        content: " (" attr(title)")"
    }

    :is(.columns, .container) {
        max-width: 100% !important
    }
}

[x-cloak] {
    display: none !important
}

.btn-size-lg {
    padding-inline: calc(var(--spacing)*10);
    padding-block: calc(var(--spacing)*4);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height))
}

.btn-size-sm {
    padding-inline: calc(var(--spacing)*2);
    padding-block: calc(var(--spacing)*2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height))
}

.page.messages {
    top: calc(var(--spacing)*0);
    z-index: 20;
    position: sticky
}

.page.messages .messages section#messages {
    width: 100%
}

@media (min-width:40rem) {
    .page.messages .messages section#messages {
        max-width: 40rem
    }
}

@media (min-width:48rem) {
    .page.messages .messages section#messages {
        max-width: 48rem
    }
}

@media (min-width:64rem) {
    .page.messages .messages section#messages {
        max-width: 64rem
    }
}

@media (min-width:80rem) {
    .page.messages .messages section#messages {
        max-width: 80rem
    }
}

@media (min-width:96rem) {
    .page.messages .messages section#messages {
        max-width: 96rem
    }
}

.page.messages .messages section#messages {
    padding-inline: calc(var(--spacing)*6);
    padding-block: calc(var(--spacing)*3);
    margin-inline: auto
}

.price-box .price {
    font-size: var(--price-font-size, var(--text-base));
    font-weight: var(--price-font-weight, bolder)
}

.price-box .old-price,
.price-box .special-price {
    display: block
}

:is(.price-box .old-price, .price-box .special-price) .price-label {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden
}

.price-box .old-price {
    --price-font-size: .875em;
    --price-font-weight: normal
}

.price-box .old-price .price {
    text-decoration: line-through
}

.price-box .price-excluding-tax {
    display: block
}

.price-box .price-excluding-tax:after {
    content: " " attr(data-label);
    font-size: var(--price-font-size-label, .875rem);
    font-weight: var(--price-font-weight, normal)
}

.price-box .price-tax-label {
    font-size: var(--price-font-size-label, .875rem)
}

.price-including-tax+.price-excluding-tax {
    --price-font-size: 1rem
}

.price-container.price-tier_price {
    gap: calc(var(--spacing)*1);
    display: flex
}

.price-container.price-tier_price>.price-including-tax+.price-excluding-tax:before {
    content: "(" attr(data-label)": "
}

.price-container.price-tier_price>.price-including-tax+.price-excluding-tax:after {
    content: ")"
}

.grecaptcha-badge {
    visibility: hidden
}

.page-wrapper {
    flex-direction: column;
    min-height: 100vh;
    display: flex
}

.page-main {
    margin-block: calc(var(--spacing)*8);
    flex-grow: 1
}

.columns {
    gap: calc(var(--spacing)*4)calc(var(--spacing)*8);
    grid-template-columns: minmax(0, 1fr);
    display: grid
}

@media (min-width:48rem) {
    :is([class*=page-layout-2columns-], .page-layout-3columns) {
        --sidebar-width: 240px;
        --main-width: minmax(0px, 1fr);
        --page-layout: var(--sidebar-width)var(--main-width)
    }

    :is([class*=page-layout-2columns-], .page-layout-3columns) .columns {
        grid-template-columns: var(--page-layout);
        grid-template-rows: auto 1fr
    }

    :is([class*=page-layout-2columns-], .page-layout-3columns) .columns>.column.main {
        grid-row: span 2
    }

    .page-layout-2columns-left .columns>.column.main {
        grid-column-start: 2
    }

    .page-layout-2columns-right {
        --page-layout: var(--main-width)var(--sidebar-width)
    }

    .page-layout-2columns-right .columns>.column.main {
        order: -1
    }
}

@media (min-width:64rem) {

    [class*=page-layout-2columns-],
    .page-layout-3columns {
        --sidebar-width: 320px
    }
}

@media (min-width:80rem) {
    .page-layout-3columns {
        --sidebar-width: 240px;
        --page-layout: var(--sidebar-width)var(--main-width)var(--sidebar-width)
    }
}

@media (min-width:1600px)
{
    #customer-login-container {
        height: 100vh;
    }
}

@media (min-width:48rem) {
    /* #customer-login-container {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    } */
}

.order-links {
    gap: calc(var(--spacing)*4);
    flex-wrap: wrap;
    display: flex
}

.order-links a {
    text-decoration: underline
}

.product-item {
    --price-font-size: 1.25em
}

.product-item .price-from,
.product-item .price-to {
    --price-font-size: 1em
}

.product-info-main {
    --price-font-size: clamp(1.5em, 2.5vw, 2.5em)
}

.product-info-main .old-price {
    --price-font-size: 1em
}

.product-info-main .product-grouped-options,
.product-info-main .price-from,
.product-info-main .price-to {
    --price-font-size: 1.5em
}

.wishlist-widget .price-box .price-label,
.wishlist-widget .price-box .old-price {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden
}

.product-image-container {
    margin-inline: auto;
    display: block
}

[data-content-type=row][data-appearance=contained] {
    width: 100%
}

@media (min-width:40rem) {
    [data-content-type=row][data-appearance=contained] {
        max-width: 40rem
    }
}

@media (min-width:48rem) {
    [data-content-type=row][data-appearance=contained] {
        max-width: 48rem
    }
}

@media (min-width:64rem) {
    [data-content-type=row][data-appearance=contained] {
        max-width: 64rem
    }
}

@media (min-width:80rem) {
    [data-content-type=row][data-appearance=contained] {
        max-width: 80rem
    }
}

@media (min-width:96rem) {
    [data-content-type=row][data-appearance=contained] {
        max-width: 96rem
    }
}

[data-content-type=row][data-appearance=contained] {
    padding-inline: calc(var(--spacing)*6);
    margin-inline: auto
}

[data-content-type=row][data-appearance=contained] [data-element=inner],
[data-content-type=row][data-appearance=full-bleed],
[data-content-type=row][data-appearance=full-width] {
    background-attachment: scroll !important
}

[data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
    width: 100%
}

@media (min-width:40rem) {
    [data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
        max-width: 40rem
    }
}

@media (min-width:48rem) {
    [data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
        max-width: 48rem
    }
}

@media (min-width:64rem) {
    [data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
        max-width: 64rem
    }
}

@media (min-width:80rem) {
    [data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
        max-width: 80rem
    }
}

@media (min-width:96rem) {
    [data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
        max-width: 96rem
    }
}

[data-content-type=row][data-appearance=full-width]>.row-full-width-inner {
    padding-inline: calc(var(--spacing)*6);
    margin-inline: auto
}

body:where(:not([class*=-full-width])) [data-content-type=row][data-appearance=contained] {
    padding-inline: calc(var(--spacing)*0)
}

[data-content-type=column-group],
[data-content-type=column-line] {
    flex-wrap: wrap
}

@media (min-width:48rem) {

    [data-content-type=column-group],
    [data-content-type=column-line] {
        flex-wrap: nowrap
    }
}

[data-content-type=column] {
    flex-basis: 100%;
    width: 100%;
    max-width: 100%;
    background-attachment: scroll !important
}

@media (min-width:48rem) {
    [data-content-type=column] {
        flex-basis: auto
    }
}

[data-content-type=tabs] .tabs-navigation {
    padding: calc(var(--spacing)*0);
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    margin-bottom: -1px;
    display: block
}

[data-content-type=tabs] .tabs-navigation li.tab-header {
    margin-block: calc(var(--spacing)*0);
    margin-right: calc(var(--spacing)*0);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-bottom-style: var(--tw-border-style);
    --tw-border-style: solid;
    border-style: solid;
    border-bottom-width: 0;
    border-color: var(--color-gray-300);
    background-color: var(--color-gray-100);
    overflow-wrap: break-word;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    max-width: 100%;
    margin-left: -1px;
    display: inline-block;
    position: relative
}

[data-content-type=tabs] .tabs-navigation li.tab-header:first-child {
    margin-left: calc(var(--spacing)*0)
}

[data-content-type=tabs] .tabs-navigation li.tab-header.active {
    z-index: 20;
    background-color: var(--color-white);
    border-bottom: 1px solid #fff
}

[data-content-type=tabs] .tabs-navigation li.tab-header a.tab-title {
    cursor: pointer;
    padding-inline: calc(var(--spacing)*5);
    padding-block: calc(var(--spacing)*3);
    vertical-align: middle;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    white-space: normal;
    display: block;
    position: relative
}

[data-content-type=tabs] .tabs-navigation li.tab-header a.tab-title span {
    --tw-leading: calc(var(--spacing)*5);
    line-height: calc(var(--spacing)*5);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-black)
}

[data-content-type=tabs] .tabs-content {
    z-index: 10;
    border-radius: var(--radius-sm);
    border-style: var(--tw-border-style);
    --tw-border-style: solid;
    border-style: solid;
    border-width: 1px;
    border-color: var(--color-gray-300);
    background-color: var(--color-container-lighter);
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    position: relative;
    overflow: hidden
}

[data-content-type=tabs] .tabs-content [data-content-type=tab-item] {
    padding: calc(var(--spacing)*8);
    min-height: inherit;
    background-attachment: scroll !important
}

[data-content-type=tabs].tab-align-left .tabs-content {
    border-top-left-radius: 0 !important
}

[data-content-type=tabs].tab-align-right .tabs-content {
    border-top-right-radius: 0 !important
}

[data-content-type=text],
[data-content-type=heading] {
    overflow-wrap: break-word
}

[data-content-type=buttons] {
    max-width: 100%
}

[data-content-type=buttons] [data-content-type=button-item] {
    margin-right: calc(var(--spacing)*2);
    margin-bottom: calc(var(--spacing)*2);
    max-width: 100%
}

[data-content-type=buttons] [data-content-type=button-item] [data-element=link],
[data-content-type=buttons] [data-content-type=button-item] [data-element=empty_link] {
    overflow-wrap: break-word;
    max-width: 100%
}

[data-content-type=buttons] [data-content-type=button-item] [data-element=empty_link] {
    cursor: default
}

[data-content-type=buttons] [data-content-type=button-item] a,
[data-content-type=buttons] [data-content-type=button-item] button,
[data-content-type=buttons] [data-content-type=button-item] div {
    --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);
    display: inline-block
}

:is(a, button, div).pagebuilder-button-primary {
    --btn-bg: color-mix(in srgb, var(--color-primary)10%, #0000);
    --btn-hover-bg: color-mix(in srgb, var(--color-primary)20%, #0000);
    --btn-active-bg: color-mix(in srgb, var(--color-primary)30%, #0000);
    --btn-color: var(--color-fg);
    justify-content: center;
    align-items: center;
    gap: calc(var(--spacing)*1.5);
    padding-block: calc(var(--spacing)*2);
    padding-inline: calc(var(--spacing)*4);
    border-radius: var(--radius-lg);
    border-width: 2px;
    border-color: var(--btn-stroke);
    background-color: var(--btn-bg);
    color: var(--btn-color);
    -webkit-user-select: none;
    user-select: none;
    vertical-align: middle;
    transition-property: color, background-color, border-color, outline-color;
    transition-timing-function: var(--default-transition-timing-function);
    transition-duration: var(--default-transition-duration);
    font-weight: 500;
    display: inline-flex
}

:is(a, button, div).pagebuilder-button-primary:hover {
    border-color: var(--btn-hover-stroke, var(--btn-stroke));
    background-color: var(--btn-hover-bg, var(--btn-bg));
    color: var(--btn-hover-color, var(--btn-color));
    text-decoration: none
}

:is(a, button, div).pagebuilder-button-primary:is(:active, .is-active, [aria-current=page], [aria-current=true]) {
    border-color: var(--btn-active-stroke, var(--btn-stroke));
    background-color: var(--btn-active-bg, var(--btn-bg));
    color: var(--btn-active-color, var(--btn-color))
}

:is(a, button, div).pagebuilder-button-primary:is(:disabled, [aria-disabled=true]) {
    border-color: var(--btn-disabled-stroke, var(--color-gray-200));
    background-color: var(--btn-disabled-bg, var(--color-gray-50));
    color: var(--btn-disabled-color, var(--color-gray-500))
}

:is(a, button, div).pagebuilder-button-primary {
    --btn-stroke: #0000;
    --btn-bg: var(--color-primary);
    --btn-color: var(--color-on-primary);
    --btn-hover-stroke: #0000;
    --btn-hover-bg: var(--color-primary-lighter);
    --btn-hover-color: var(--color-on-primary);
    --btn-active-stroke: #0000;
    --btn-active-bg: var(--color-primary);
    --btn-active-color: var(--color-on-primary)
}

:is(a, button, div).pagebuilder-button-secondary {
    --btn-stroke: #0000;
    --btn-bg: #1f48c51a
}

@supports (color:color-mix(in lab, red, red)) {
    :is(a, button, div).pagebuilder-button-secondary {
        --btn-bg: color-mix(in srgb, var(--color-primary)10%, #0000)
    }
}

:is(a, button, div).pagebuilder-button-secondary {
    --btn-hover-bg: #1f48c533
}

@supports (color:color-mix(in lab, red, red)) {
    :is(a, button, div).pagebuilder-button-secondary {
        --btn-hover-bg: color-mix(in srgb, var(--color-primary)20%, #0000)
    }
}

:is(a, button, div).pagebuilder-button-secondary {
    --btn-active-bg: #1f48c54d
}

@supports (color:color-mix(in lab, red, red)) {
    :is(a, button, div).pagebuilder-button-secondary {
        --btn-active-bg: color-mix(in srgb, var(--color-primary)30%, #0000)
    }
}

:is(a, button, div).pagebuilder-button-secondary {
    --btn-color: var(--color-fg);
    justify-content: center;
    align-items: center;
    gap: calc(var(--spacing)*1.5);
    padding-block: calc(var(--spacing)*2);
    padding-inline: calc(var(--spacing)*4);
    border-radius: var(--radius-lg);
    border-width: 2px;
    border-color: var(--btn-stroke);
    background-color: var(--btn-bg);
    color: var(--btn-color);
    -webkit-user-select: none;
    user-select: none;
    vertical-align: middle;
    transition-property: color, background-color, border-color, outline-color;
    transition-timing-function: var(--default-transition-timing-function);
    transition-duration: var(--default-transition-duration);
    font-weight: 500;
    display: inline-flex
}

:is(a, button, div).pagebuilder-button-secondary:hover {
    border-color: var(--btn-hover-stroke, var(--btn-stroke));
    background-color: var(--btn-hover-bg, var(--btn-bg));
    color: var(--btn-hover-color, var(--btn-color));
    text-decoration: none
}

:is(a, button, div).pagebuilder-button-secondary:is(:active, .is-active, [aria-current=page], [aria-current=true]) {
    border-color: var(--btn-active-stroke, var(--btn-stroke));
    background-color: var(--btn-active-bg, var(--btn-bg));
    color: var(--btn-active-color, var(--btn-color))
}

:is(a, button, div).pagebuilder-button-secondary:is(:disabled, [aria-disabled=true]) {
    border-color: var(--btn-disabled-stroke, var(--color-gray-200));
    background-color: var(--btn-disabled-bg, var(--color-gray-50));
    color: var(--btn-disabled-color, var(--color-gray-500))
}

:is(a, button, div).pagebuilder-button-secondary {
    --btn-stroke: var(--color-primary-lighter);
    --btn-bg: var(--color-on-primary);
    --btn-color: var(--color-primary-darker);
    --btn-hover-stroke: var(--color-primary-lighter);
    --btn-hover-bg: var(--color-on-primary);
    --btn-hover-color: var(--color-primary-lighter);
    --btn-active-stroke: #0000;
    --btn-active-bg: var(--color-primary);
    --btn-active-color: var(--color-on-primary)
}

[data-content-type=divider] hr {
    border-block-end: 0;
    border-inline: 0
}

[data-content-type=html] {
    overflow-wrap: break-word
}

[data-content-type=image]>[data-element=link],
[data-content-type=image]>[data-element=link] img {
    border-radius: inherit
}

[data-content-type=image] .pagebuilder-mobile-hidden {
    display: none
}

@media (min-width:48rem) {
    [data-content-type=image] .pagebuilder-mobile-hidden {
        display: inline-block
    }
}

[data-content-type=image] .pagebuilder-mobile-only {
    display: inline-block
}

@media (min-width:48rem) {
    [data-content-type=image] .pagebuilder-mobile-only {
        display: none
    }
}

[data-content-type=image] figcaption {
    overflow-wrap: break-word
}

[data-content-type=video] {
    font-size: 0
}

[data-content-type=video] .pagebuilder-video-inner {
    width: 100%;
    display: inline-block
}

[data-content-type=video] .pagebuilder-video-container {
    border-radius: inherit;
    padding-top: 56.25%;
    position: relative;
    overflow: hidden
}

[data-content-type=video] iframe,
[data-content-type=video] video {
    top: calc(var(--spacing)*0);
    left: calc(var(--spacing)*0);
    width: 100%;
    height: 100%;
    position: absolute
}

[data-content-type=banner]>[data-element=link],
[data-content-type=banner]>[data-element=empty_link],
:is([data-content-type=banner]>[data-element=link], [data-content-type=banner]>[data-element=empty_link]):hover {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit
}

[data-content-type=banner] .pagebuilder-banner-wrapper {
    overflow-wrap: break-word;
    border-radius: inherit;
    background-clip: padding-box;
    background-attachment: scroll !important
}

[data-content-type=banner] .pagebuilder-banner-wrapper .pagebuilder-overlay {
    padding: calc(var(--spacing)*8);
    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));
    --tw-duration: .5s;
    --tw-ease: var(--ease-in-out);
    transition-duration: .5s;
    transition-timing-function: var(--ease-in-out);
    position: relative
}

[data-content-type=banner] .pagebuilder-banner-wrapper .pagebuilder-overlay.pagebuilder-poster-overlay {
    justify-content: center;
    align-items: center;
    display: flex
}

[data-content-type=banner] .pagebuilder-banner-wrapper .pagebuilder-overlay:not(.pagebuilder-poster-overlay) {
    max-width: none
}

@media (min-width:48rem) {
    [data-content-type=banner] .pagebuilder-banner-wrapper .pagebuilder-overlay:not(.pagebuilder-poster-overlay) {
        max-width: var(--container-xl)
    }
}

[data-content-type=banner] .pagebuilder-banner-wrapper.jarallax .video-overlay {
    z-index: 0
}

[data-content-type=banner] .pagebuilder-banner-wrapper [data-element=content] {
    min-height: 50px;
    overflow: auto
}

[data-content-type=banner] .pagebuilder-banner-wrapper .pagebuilder-banner-button {
    margin: calc(var(--spacing)*0);
    margin-top: calc(var(--spacing)*5);
    overflow-wrap: break-word;
    max-width: 100%;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: .5s;
    --tw-ease: var(--ease-in-out);
    transition-duration: .5s;
    transition-timing-function: var(--ease-in-out);
    text-align: inherit;
    display: inline-block
}

[data-content-type=banner] .pagebuilder-banner-wrapper .pagebuilder-poster-content {
    width: 100%
}

[data-content-type=banner][data-appearance=collage-centered] .pagebuilder-banner-wrapper .pagebuilder-overlay {
    margin-inline: auto
}

[data-content-type=banner][data-appearance=collage-left] .pagebuilder-banner-wrapper .pagebuilder-overlay {
    margin-right: auto
}

[data-content-type=banner][data-appearance=collage-right] .pagebuilder-banner-wrapper .pagebuilder-overlay {
    margin-left: auto
}

[data-content-type=slider] {
    padding-block-end: 3rem;
    position: relative
}

[data-content-type=slider]:not(:has(.snap-track)) {
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    grid-auto-columns: 100%;
    grid-auto-flow: column;
    padding-block: 1.5rem 4.5rem;
    display: grid;
    overflow-x: auto
}

@media (prefers-reduced-motion:no-preference) {
    [data-content-type=slider]:not(:has(.snap-track)) {
        scroll-behavior: smooth
    }
}

[data-content-type=slider]:not(:has(.snap-track))>* {
    scroll-snap-align: start
}

[data-content-type=slider] [data-page-builder-slider-nav] {
    position: absolute;
    inset: auto 0 0
}

[data-content-type=slide] {
    --overlay-align: initial;
    position: relative
}

[data-content-type=slide] .pagebuilder-slide-wrapper {
    border-radius: inherit;
    min-block-size: inherit;
    overflow-wrap: break-word
}

[data-content-type=slide] .pagebuilder-slide-wrapper.jarallax .video-overlay {
    -webkit-transform: unset;
    z-index: 1
}

[data-content-type=slide] .pagebuilder-slide-wrapper.jarallax .pagebuilder-overlay {
    z-index: 2;
    position: relative
}

[data-content-type=slide] .pagebuilder-slide-wrapper.jarallax [id*=jarallax-container]>:is(div, img, video, iframe) {
    margin: auto !important;
    transform: none !important
}

[data-content-type=slide] .pagebuilder-poster-content {
    inline-size: 100%
}

[data-content-type=slide] [data-element=content] {
    min-height: 50px;
    overflow: auto
}

[data-content-type=slide] .pagebuilder-overlay {
    border-radius: inherit;
    max-inline-size: 32rem;
    padding: 2rem;
    transition: background-color .5s
}

[data-content-type=slide] .pagebuilder-overlay.pagebuilder-poster-overlay {
    max-inline-size: 100%;
    min-block-size: inherit;
    justify-content: center;
    align-items: center;
    display: flex
}

[data-content-type=slide][data-appearance=collage-centered] .pagebuilder-overlay {
    margin-inline: auto
}

[data-content-type=slide][data-appearance=collage-left] .pagebuilder-overlay {
    margin-inline: 0 auto
}

[data-content-type=slide][data-appearance=collage-right] .pagebuilder-overlay {
    margin-inline: auto 0
}

[data-content-type=map] {
    height: calc(var(--spacing)*72)
}

[data-content-type$=block] .block p:last-child {
    margin-top: calc(var(--spacing)*0);
    margin-bottom: calc(var(--spacing)*4)
}

[data-content-type=dynamic_block] [data-content-type=image] img {
    display: inline
}

[data-content-type=dynamic_block] .block-banners .banner-item-content,
[data-content-type=dynamic_block] .block-banners-inline .banner-item-content {
    margin-bottom: auto
}

.glider-contain {
    margin-inline: auto;
    margin-block: calc(var(--spacing)*0);
    width: 100%;
    position: relative
}

.glider {
    overflow-y: hidden
}

.glider.draggable {
    -webkit-user-select: none;
    user-select: none;
    cursor: grab
}

.glider.draggable .glider-slide img {
    pointer-events: none;
    -webkit-user-select: none;
    user-select: none
}

.glider.drag {
    cursor: grabbing
}

.glider::-webkit-scrollbar {
    height: calc(var(--spacing)*0);
    opacity: 0
}

.glider .glider-track {
    z-index: 10;
    margin: calc(var(--spacing)*0);
    width: 100%;
    padding: calc(var(--spacing)*0);
    display: flex
}

.glider-slide {
    margin: calc(var(--spacing)*2);
    -webkit-user-select: none;
    user-select: none;
    place-content: center;
    width: 100%;
    min-width: 150px
}

.glider-slide img {
    max-width: 100%
}

.glider-hide {
    opacity: 0
}

:is(.glider-prev, .glider-next).disabled {
    cursor: default;
    color: var(--color-gray-500);
    opacity: .25
}

.glider-dot {
    margin: calc(var(--spacing)*1);
    height: calc(var(--spacing)*3);
    width: calc(var(--spacing)*3);
    cursor: pointer;
    background-color: var(--color-black);
    opacity: .25;
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    border-radius: 3.40282e38px;
    display: block
}

.glider-dot.active {
    opacity: 1
}

@media (max-width:36em) {
    .glider::-webkit-scrollbar {
        height: calc(var(--spacing)*1);
        width: calc(var(--spacing)*2);
        appearance: none;
        opacity: 1
    }

    .glider::-webkit-scrollbar-thumb {
        opacity: 1;
        background-color: #9c9c9c40;
        border-radius: 99px;
        box-shadow: 0 0 1px #ffffff40
    }
}

[data-show-arrows=false] .glider-prev,
[data-show-arrows=false] .glider-next,
[data-show-dots=false] .glider-dots {
    display: none
}

.mollie-buttons {
    text-align: center;
    opacity: 0;
    margin-top: 10%;
    animation: 1s 1s forwards fadeIn
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.mollie-buttons .button {
    color: #fff;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    -webkit-user-select: none;
    user-select: none;
    background-color: #0095ff;
    border: 0;
    border-radius: 6px;
    outline: none;
    max-width: 100%;
    margin: 20px;
    padding: 0 16px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 4.4rem;
    text-decoration: none;
    transition: background .15s;
    display: inline-block;
    overflow: hidden;
    box-shadow: 0 1px 2px #00000030
}

.mollie-buttons {
    opacity: 0;
    transition: opacity 2s ease-in
}

.mollie-buttons .button:hover {
    background-color: #0077cb
}

.mollie-loading .redirect-block {
    text-align: center;
    padding: 10%
}

.checkout-payment-method #mollie_methods_ideal-form .label {
    height: 35px;
    display: inline-block
}

.checkout-payment-method #mollie_methods_ideal-form .payment-icon {
    width: 35px;
    max-height: 30px
}

.checkout-payment-method #mollie_methods_kbc-form .label {
    height: 35px;
    display: inline-block
}

.checkout-payment-method #mollie_methods_kbc-form .payment-icon {
    width: 35px;
    max-height: 30px
}

.checkout-payment-method #mollie_methods_giftcard-form .label {
    height: 40px;
    display: inline-block
}

.checkout-payment-method #mollie_methods_giftcard-form .payment-icon {
    width: 35px;
    max-height: 30px
}

.mollie-payment-icon {
    vertical-align: middle;
    width: 25px;
    margin-right: 5px
}

.mollie-loading .loader {
    border: 16px solid #e3f0fa;
    border-top: 16px solid #31a8f0;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    margin-left: auto;
    margin-right: auto;
    animation: 2s linear infinite spin
}

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

.payment-method-content .card-container {
    background-color: #fff;
    border: 1px solid #0000001a;
    border-radius: 10px;
    max-width: 400px;
    margin-bottom: 10px;
    padding: 20px;
    display: block;
    overflow: auto
}

.apple-pay-button {
    -webkit-appearance: -apple-pay-button
}

@supports ((-webkit-appearance:-apple-pay-button)) {
    .apple-pay-button-with-text {
        -webkit-appearance: -apple-pay-button;
        -apple-pay-button-type: buy
    }

    .apple-pay-button-with-text>* {
        visibility: hidden
    }

    .apple-pay-button-black-with-text {
        -apple-pay-button-style: black
    }

    .apple-pay-button-white-with-text {
        -apple-pay-button-style: white;
        cursor: pointer
    }

    .apple-pay-button-white-with-line-with-text {
        -apple-pay-button-style: white-outline
    }

    .apple-pay-button-color-black {
        -apple-pay-button-style: black
    }

    .apple-pay-button-color-white {
        -apple-pay-button-style: white
    }

    .apple-pay-button-color-white-outline {
        -apple-pay-button-style: white-outline
    }

    .apple-pay-button-text-buy {
        -apple-pay-button-type: buy
    }

    .apple-pay-button-text-donate {
        -apple-pay-button-type: donate
    }

    .apple-pay-button-text-plain {
        -apple-pay-button-type: plain
    }

    .apple-pay-button-text-book {
        -apple-pay-button-type: book
    }

    .apple-pay-button-text-check-out {
        -apple-pay-button-type: check-out
    }

    .apple-pay-button-text-subscribe {
        -apple-pay-button-type: subscribe
    }

    .apple-pay-button-text-add-money {
        -apple-pay-button-type: add-money
    }

    .apple-pay-button-text-contribute {
        -apple-pay-button-type: contribute
    }

    .apple-pay-button-text-order {
        -apple-pay-button-type: order
    }

    .apple-pay-button-text-reload {
        -apple-pay-button-type: reload
    }

    .apple-pay-button-text-rent {
        -apple-pay-button-type: rent
    }

    .apple-pay-button-text-support {
        -apple-pay-button-type: support
    }

    .apple-pay-button-text-tip {
        -apple-pay-button-type: tip
    }

    .apple-pay-button-text-top-up {
        -apple-pay-button-type: top-up
    }
}

.mollie-applepay-button-hidden {
    display: none
}

.mollie-applepay-minicart-button {
    height: 40px
}

body.gallery-fullscreen-active {
    overflow: hidden !important
}

body.gallery-fullscreen-active .site-header {
    z-index: 10 !important
}

.catalog-category-view .page-wrapper .top-container {
    background-color: #fff
}

@property --tw-scroll-snap-strictness {
    syntax: "*";
    inherits: false;
    initial-value: proximity
}

@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-scale-x {
    syntax: "*";
    inherits: false;
    initial-value: 1
}

@property --tw-scale-y {
    syntax: "*";
    inherits: false;
    initial-value: 1
}

@property --tw-scale-z {
    syntax: "*";
    inherits: false;
    initial-value: 1
}

@property --tw-rotate-x {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-y {
    syntax: "*";
    inherits: false
}

@property --tw-rotate-z {
    syntax: "*";
    inherits: false
}

@property --tw-skew-x {
    syntax: "*";
    inherits: false
}

@property --tw-skew-y {
    syntax: "*";
    inherits: false
}

@property --tw-space-y-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0
}

@property --tw-space-x-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0
}

@property --tw-divide-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-ordinal {
    syntax: "*";
    inherits: false
}

@property --tw-slashed-zero {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-figure {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-spacing {
    syntax: "*";
    inherits: false
}

@property --tw-numeric-fraction {
    syntax: "*";
    inherits: false
}

@property --tw-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-inset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-inset-shadow-color {
    syntax: "*";
    inherits: false
}

@property --tw-inset-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%
}

@property --tw-ring-color {
    syntax: "*";
    inherits: false
}

@property --tw-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-inset-ring-color {
    syntax: "*";
    inherits: false
}

@property --tw-inset-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000
}

@property --tw-ring-inset {
    syntax: "*";
    inherits: false
}

@property --tw-ring-offset-width {
    syntax: "<length>";
    inherits: false;
    initial-value: 0
}

@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-content {
    syntax: "*";
    inherits: false;
    initial-value: ""
}/* Fix for Amasty Mega Menu in Hyva - Nav bar uses #E7E0DB */
.amasty-mega-menu .submenu,
[id^="ammenu-menu-content"] {
    background-color: var(--ammenu-submenu-background-color, #ffffff) !important;
}

.ammenu-main-wrapper,
#ammenu-sidebar,
#ammenu-header-container,
.navigation.flex.relative>div,
.amasty-mega-menu .absolute {
    background-color: #E7E0DB !important;
    background: #E7E0DB !important;
}

[data-action="amMenuMenubar"] {
    background-color: #E7E0DB !important;
    background: #E7E0DB !important;
}

/* Force all Amasty menu items within the nav bar to transparent */
.header-nav li,
.header-nav [class*="ammenu"] li,
.header-nav .ammenu-item,
.header-nav .ammenu-link,
[data-action="amMenuMenubar"] > li,
[data-action="amMenuMenubar"] > li > a {
    background-color: transparent !important;
    background: transparent !important;
}

/* Hide all currency switchers and related headers/nodes across the site */
.currency-switcher,
#currency-heading,
[id^="currency-"],
[aria-labelledby="currency-heading"],
.drill-item[data-id="currency"],
li[data-id="currency"],
.ammenu-drill-item[data-id="currency"],
[data-id="currency"],
[id="currency"],
[id="currency-switcher"] {
    display: none !important;
}

span.absolute.-top-1\.5.-right-1\.5.px-2.py-1.rounded-full.bg-primary.text-on-primary.text-xs.font-semibold.leading-none.text-center.uppercase.tabular-nums {
    background-color: var(--color-primary) !important;
}/* =========================================================
   PowerPlay Plus – Complete Design Revamp
   Synchronized with Builder.io Reference
   ========================================================= */

:root {
    --primary-950: #281D15;
    --primary-900: #443124;
    --primary-800: #614632;
    --primary-700: #7D5A41;
    /* Figma exact */
    --primary-500: #AF8465;
    --primary-400: #BD9A81;
    --primary-300: #CCB19D;
    --primary-200: #DBC7B9;
    /* Figma mobile status bar */
    --primary-100: #E9DED5;
    --primary-50: #F2EBE6;
    /* Figma exact */

    --secondary-700: #5F5F5F;
    --secondary-500: #8A8A8A;
    --secondary-200: #CACACA;
    --secondary-100: #DFDFDF;
    --secondary-50: #F5F5F5;

    --white: #FFFFFF;
    --black: #242424;

    --font-base: 'Montserrat', -apple-system, Roboto, Helvetica, sans-serif;
    --font-heading: 'Montserrat', sans-serif;

    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-pill: 39px;
    --radius-full: 50px;

    --shadow-card: 0 0 20px 0 rgba(223, 223, 223, 0.50);
    --shadow-cta: 0 4px 20px 0 rgba(213, 166, 132, 0.30), 0 1px 3px 0 rgba(175, 132, 101, 0.30);

    --page-gutter: 100px;
}

@media (max-width: 1600px) {
    :root {
        --page-gutter: clamp(40px, 5vw, 80px);
    }
}

@media (max-width: 1280px) {
    :root {
        --page-gutter: clamp(24px, 3.5vw, 40px);
    }
}

@media (max-width: 1024px) {
    :root {
        --page-gutter: 24px;
    }
}

/* Base Styles */
body {
    font-family: var(--font-base) !important;
    color: var(--black);
    background: var(--secondary-50) !important;
    -webkit-font-smoothing: antialiased;
    margin: 0;
    overflow-x: hidden;
}

.container {
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px var(--page-gutter) !important;
    width: 100%;
}

.rewards-section {
    max-width: 1920px;
    margin: 0 auto !important;
    width: 100%;
}

.form.mini-search {
    position: relative;
    z-index: 999;
    border: none !important;
    box-shadow: none !important;
    background: #fff !important;
    border-radius: 20px;
    border: none;
}

#amsearch-container {
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    top: calc(100% + 15px) !important;
    margin-top: 15px !important;
    z-index: 9999 !important;
    background-color: #ffffff !important;
    max-height: 80vh;
    overflow-y: auto;
    scrollbar-width: thin;
    animation: searchSlideIn 0.4s ease-out forwards;
}

@keyframes searchSlideIn {
    from {
        opacity: 0;
        transform: translateY(-150%);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#amsearch-container .am-col-left,
#amsearch-container .am-col-middle {
    background-color: #ffffff !important;
}

#amsearch-container .am-col-right {
    background-color: #F2EBE6 !important;
}

#amsearch-container .am-tag-pill {
    background-color: #F2EBE6 !important;
    border-color: #E9DED5 !important;
    color: #614632 !important;
}

#amsearch-container .am-recent-pill {
    background-color: #F5F5F5 !important;
    border-color: #e5e7eb !important;
    color: #374151 !important;
}

/* Drag handle hidden on desktop */
.am-mobile-drag-handle {
    display: none;
}

/* Mobile: slide-up bottom sheet */
@media (max-width: 767px) {
    #amsearch-container {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        top: auto !important;
        transform: none !important;
        margin-top: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        max-height: 78vh !important;
        border-radius: 20px 20px 0 0 !important;
        box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.18) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        flex-direction: column !important;
        animation: amSearchSlideUp 0.32s cubic-bezier(0.32, 0.72, 0, 1) both !important;
    }

    @keyframes amSearchSlideUp {
        from {
            transform: translateY(100%);
            opacity: 0.6;
        }

        to {
            transform: translateY(0);
            opacity: 1;
        }
    }

    .am-mobile-drag-handle {
        display: flex !important;
        justify-content: center;
        align-items: center;
        padding: 12px 0 6px;
        width: 100%;
        flex-shrink: 0;
    }

    .am-mobile-drag-bar {
        width: 40px;
        height: 4px;
        border-radius: 2px;
        background: #D1BDB0;
    }

    #amsearch-container .am-col-left,
    #amsearch-container .am-col-middle,
    #amsearch-container .am-col-right {
        width: 100% !important;
        max-width: 100% !important;
        border-right: none !important;
        border-bottom: 1px solid #E9DED5 !important;
    }

    #amsearch-container .am-col-right {
        border-bottom: none !important;
        min-height: auto !important;
        padding: 16px !important;
    }
}

/* ── Homepage: .columns becomes layout-transparent so hero & trending go edge-to-edge ── */
.cms-index-index .columns {
    display: contents;
    /* removes all box-model: no padding, margin, grid, gap */
}

.cms-index-index .page-main {
    margin: 0 !important;
    margin-block: 0 !important;
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    position: relative;
}

.cms-index-index #messages {
    position: absolute;
    width: 100%;
    max-width: 1280px;
    left: 50%;
    transform: translateX(-50%);
    top: 20px;
    z-index: 50;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
}

.cms-index-index .column.main {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

.columns {
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px var(--page-gutter) !important;
    width: 100%;
}

/* =========================================================
   HEADER
   ========================================================= */
.site-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: var(--white);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

.header-top {
    width: 100%;
    background: #FFFFFF !important;
    display: flex;
    align-items: center;
}

.header-container {
    max-width: 1920px;
    margin: 0 auto;
    padding: 20px var(--page-gutter) !important;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    transition: padding 0.2s ease;
}

.logo-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    /* Figma layout_0AZD5G: gap 10px */
    flex: 0 0 auto;
}

.logo-img {
    width: 48px !important;
    height: 40px !important;
    object-fit: contain;
}

.logo-text,
.site-header .logo-wrap a.logo-text,
header a.logo-text:not(nav a):not(.btn) {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: var(--primary-800) !important;
    white-space: nowrap;
    text-decoration: none;
    font-family: var(--font-base) !important;
}

.search-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1 1 auto;
    width: auto !important;
    max-width: 500px !important;
    min-width: 280px !important;
    padding: 0px !important;
    border: 1px solid var(--secondary-200);
    border-radius: 30px;
    background: var(--white);
    box-shadow: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;
    margin: 0px !important;
}

.search-wrap:focus-within {
    border-color: var(--primary-700);
    box-shadow: 0 0 0 3px rgba(125, 90, 65, 0.12);
}

.search-input {
    flex: 1;
    border: none !important;
    outline: none !important;
    font-family: var(--font-base);
    font-size: 14px;
    font-weight: 500;
    color: var(--secondary-700);
    background: transparent !important;
    box-shadow: none !important;
}

.search-input::placeholder {
    color: var(--secondary-700);
    font-weight: 500;
}

/* Figma Navbar Right (layout_ZTSL43): row, gap 58px, contains user area
   Points badges are absolutely positioned within Navbar Left at x:1385/1511, y:15
   In our flex layout: we keep points+user right-aligned with gap between them */
.header-points-group {
    display: flex;
    align-items: center;
    gap: 16px;
    /* Figma: spacing gap 16px between badges */
    flex-shrink: 0;
}

/* The Navbar Right wrapper (user + points group together) */
.header-right-group {
    display: flex;
    align-items: center;
    gap: clamp(24px, 3.5vw, 40px);
    /* Figma layout_ZTSL43: gap 58px. Fluids down to 24px on standard laptops */
    flex-shrink: 0;
}

.points-badge {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4px 16px !important;
    /* Figma: more generous padding */
    border-radius: 8px !important;
    /* Figma: 8px rounded corners */
    background: var(--primary-700) !important;
    text-decoration: none;
    gap: 0;
}

#header-points-wow,
#header-points-corp {
    width: auto !important;
    min-width: 0 !important;
}

#header-points-wow .points-value,
#header-points-corp .points-value {
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 28px !important;
    color: var(--white) !important;
    margin: 0 !important;
    display: block !important;
    font-family: var(--font-base) !important;
}

#header-points-wow .points-label,
#header-points-corp .points-label {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 20px !important;
    color: var(--primary-50) !important;
    text-transform: none !important;
    display: block !important;
    font-family: var(--font-base) !important;
}

.user-menu-wrap {
    position: relative;
    flex-shrink: 0;
}

.user-trigger {
    display: flex;
    align-items: center;
    gap: 10px;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    padding: 0;
}

.user-avatar-wrap {
    display: flex;
    flex-shrink: 0;
}

.user-avatar {
    width: 50px !important;
    /* Figma layout_9CWWJI: 50×50px */
    height: 50px !important;
    border-radius: 50% !important;
    /* Perfect circle */
    object-fit: cover;
    flex-shrink: 0;
    overflow: hidden;
    display: block;
}

.user-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.user-welcome {
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 20px !important;
    color: var(--primary-800) !important;
    font-family: var(--font-base) !important;
}

.user-name {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 24px !important;
    color: var(--primary-900) !important;
    font-family: var(--font-base) !important;
}

/* =========================================================
   DESKTOP USER DROPDOWN — Figma Parity
   ========================================================= */
.user-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: #FFFFFF;
    border: 1px solid #E7E0DB;
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(44, 30, 18, 0.12), 0 2px 6px rgba(44, 30, 18, 0.06);
    min-width: 210px;
    display: flex;
    flex-direction: column;
    padding: 6px 0;
    z-index: 200;
    overflow: hidden;
}

/* Every link/button row in the dropdown */
.user-dropdown-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 18px;
    font-family: var(--font-base);
    font-size: 14px;
    font-weight: 500;
    color: #2B2520;
    text-decoration: none;
    background: transparent;
    border: none;
    cursor: pointer;
    width: 100%;
    text-align: left;
    transition: background 0.15s, color 0.15s;
    box-sizing: border-box;
}

.user-dropdown-link svg {
    flex-shrink: 0;
    color: #8C827A;
    transition: color 0.15s;
}

.user-dropdown-link:hover {
    background: #FAF8F6;
    color: #77563E;
}

.user-dropdown-link:hover svg {
    color: #77563E;
}

/* Sign-out row — soft red tint on hover */
.user-dropdown-link--danger:hover {
    background: #FFF5F5;
    color: #C0392B;
}

.user-dropdown-link--danger:hover svg {
    color: #C0392B;
}

/* ── MY SITES — Desktop sub-dropdown ── */
.user-dropdown-sites-wrap {
    position: relative;
}

/* The My Sites toggle button */
.user-dropdown-sites-toggle {
    justify-content: space-between;
}

.user-dropdown-sites-toggle>span:first-of-type {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
}

.sites-chevron {
    flex-shrink: 0;
    color: #8C827A;
    transition: transform 0.2s ease, color 0.15s;
}

.user-dropdown-sites-toggle:hover .sites-chevron {
    color: #77563E;
}

.sites-chevron.rotate-180 {
    transform: rotate(180deg);
}

/* Sites sub-dropdown panel (slides down inside the dropdown) */
.sites-sub-dropdown {
    background: #F5F0EB;
    border-top: 1px solid #EDE6DE;
    border-bottom: 1px solid #EDE6DE;
    display: flex;
    flex-direction: column;
    padding: 4px 0;
}

/* Individual site link rows */
.sites-sub-link {
    display: block;
    padding: 9px 18px 9px 44px;
    font-family: var(--font-base);
    font-size: 13px;
    font-weight: 500;
    color: #443124;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
    border-left: 2px solid transparent;
}

.sites-sub-link:hover {
    background: #EDE6DE;
    color: #77563E;
    border-left-color: #77563E;
}

.sites-empty {
    display: block;
    padding: 9px 18px 9px 44px;
    font-size: 12px;
    color: #8C827A;
    font-style: italic;
}

/* ── MY SITES — Mobile accordion panel ── */
/* ── MY SITES — Mobile accordion panel (flat, left-aligned, one site per row) ── */
.mysites-accordion-panel {
    display: block;
    background: transparent;
    border-radius: 0;
    margin: 0;
    padding: 0 0 6px 0;
    overflow: hidden;
}

.mysites-site-link {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 9px 12px 9px 34px;
    font-family: var(--font-base);
    font-size: 13px;
    font-weight: 500;
    color: #443124;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-bottom: 1px solid #F3EEE9;
    transition: color 0.15s;
    position: relative;
    text-align: left;
}

.mysites-site-link::before {
    content: '';
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #C9B8A8;
}

.mysites-site-link:last-child {
    border-bottom: none;
}

.mysites-site-link:hover {
    color: #77563E;
}

.mysites-site-link:hover::before {
    background: #77563E;
}

.mysites-loading,
.mysites-empty {
    display: block;
    padding: 8px 12px 8px 34px;
    font-size: 12px;
    color: #8C827A;
    font-style: italic;
}

/* Navbar */
.header-nav {
    width: 100%;
    background: var(--primary-50) !important;
    display: flex;
    align-items: center;
    position: relative !important;
    /* Figma layout_7U6WRY: padding 10px 100px, vertical hug → natural height 44px */
}

.header-nav,
.header-nav .header-container,
.header-nav .nav-links,
.header-nav .navigation,
.ammenu-main-wrapper,
#ammenu-header-container {
    background-color: var(--primary-50) !important;
    background: var(--primary-50) !important;
}

.header-nav .navigation {
    margin-left: 0 !important;
}

a.group.flex.items-center.justify-center.cursor-pointer.relative.p-4.text-\[var\(--ammenu-main-menu-text\)\].group-\[\.link\]\:text-\[var\(--ammenu-main-menu-text-hover\)\] {
    padding-left: 0;
    padding-right: 20px;
}

/* Nav bar inner container: Figma padding 10px 100px (layout_7U6WRY) */
.header-nav .header-container {
    padding: 10px var(--page-gutter) !important;
    transition: padding 0.2s ease;
}

.nav-links {
    display: flex;
    align-items: center;
    gap: clamp(12px, 1.5vw, 20px);
    /* Figma layout_UDFJP2: gap 20px. Fluids down on smaller screens */
    position: static !important;
}

/* Global Amasty Reset for Navbar Row */
.amasty-mega-menu .submenu,
[id^="ammenu-menu-content"],
.ammenu-main-wrapper,
#ammenu-sidebar,
#ammenu-header-container,
.navigation.flex.relative>div,
.amasty-mega-menu .absolute {
    background-color: transparent !important;
    background: transparent !important;
}

.nav-link,
.nav-links a,
.nav-links span,
.header-nav a:not(.nav-cta-btn):not(.icon-btn),
.header-nav span:not(.icon-badge):not(.points-value):not(.points-label),
.ammenu-link,
.ammenu-main-container a,
.ammenu-main-container span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 24px !important;
    font-family: var(--font-base) !important;
    color: var(--primary-900) !important;
    white-space: nowrap;
    text-decoration: none;
    transition: color 0.15s;
}

.nav-link:hover,
.nav-links a:hover,
.ammenu-link:hover {
    color: var(--primary-700) !important;
}

/* Shop By Category Mega Menu Fixes */
/* .header-nav .header-container, */
.shop-by-dropdown-panel {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: 0 !important;
    background: #ffffff !important;
    z-index: 1000 !important;
    box-shadow: 0px 20px 70px 0px rgba(0, 0, 0, 0.4) !important;
    border-top: 1px solid #F3EEE9 !important;
    border-radius: 0 0 10px 10px !important;
    animation: dropdownSlideIn 0.4s ease-out forwards;
    height: 512px;
    overflow-y: scroll;
    padding-right: 10px;
    scrollbar-width: thin;
}

@keyframes dropdownSlideIn {
    from {
        opacity: 0;
        transform: translateY(-100%);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.shop-by-category-grid {
    display: grid !important;
    width: max-content !important;
    max-width: 100% !important;
    padding: 0 !important;
    gap: 0 !important;
}

.grid-column {
    width: 19vw;
    /* 260px !important; */
    padding: 0 24px !important;
    border-right: 1px solid #DFDFDF !important;
}

.grid-column:last-child {
    border-right: none !important;
}

.category-group {
    margin-bottom: 1rem !important;
}

.category-group h3 {
    margin-top: 24px !important;
    margin-bottom: 16px !important;
}


.category-group ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
}

.header-nav .category-group h3 a:not(.nav-cta-btn):not(.icon-btn),
.nav-links .category-group h3 a {
    text-transform: uppercase !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 24px !important;
    text-decoration: none !important;
    white-space: normal !important;
}

.header-nav a:not(.nav-cta-btn):not(.icon-btn).category-link,
.nav-links a.category-link {
    font-family: Montserrat, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #AF8465 !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
    display: block !important;
    line-height: 20px !important;
    padding: 8px 0 !important;
    position: relative;
    transition: all 0.3s !important;
    padding-right: 20px !important;
    text-wrap: auto;
}

.header-nav a:not(.nav-cta-btn):not(.icon-btn).category-link:after,
.nav-links a.category-link:after,
.header-nav a:not(.nav-cta-btn):not(.icon-btn).sub-category-link:after,
.nav-links a.sub-category-link:after {
    content: "" !important;
    position: absolute !important;
    display: block !important;
    background: url("../../frontend/Netweb/hyva_child/en_US/images/right-angle-icon.svg") no-repeat !important;
    right: 0 !important;
    top: 8px !important;
    width: 16px !important;
    height: 16px !important;
    opacity: 0 !important;
    transition: opacity 0.3s !important;
}

.header-nav a:not(.nav-cta-btn):not(.icon-btn).category-link:hover:after,
.nav-links a.category-link:hover:after,
.header-nav a:not(.nav-cta-btn):not(.icon-btn).sub-category-link:hover:after,
.nav-links a.sub-category-link:hover:after {
    opacity: 1 !important;
    transition: opacity 0.3s !important;
}

.sub-subcategory-list {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
    padding-left: 1.2rem !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    visibility: visible !important;
}

.header-nav a:not(.nav-cta-btn):not(.icon-btn).sub-category-link,
.nav-links a.sub-category-link {
    font-family: Montserrat, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #AF8465 !important;
    text-decoration: none !important;
    position: relative;
    padding: 8px 0 !important;
    padding-left: 20px !important;
    line-height: 20px !important;
    display: block !important;
    position: relative;
    transition: all 0.3s !important;
    padding-right: 20px !important;
    text-wrap: auto;
}

.header-nav a:not(.nav-cta-btn):not(.icon-btn).sub-category-link::before,
.nav-links a.sub-category-link::before {
    content: "\2022" !important;
    position: absolute !important;
    left: 6px !important;
    font-size: 16px !important;
    color: #AF8465 !important;
    line-height: 20px !important;
    top: 8px !important;
}

.header-nav a:not(.nav-cta-btn):not(.icon-btn).category-link:hover,
.header-nav a:not(.nav-cta-btn):not(.icon-btn).sub-category-link:hover,
.nav-links a.category-link:hover,
.nav-links a.sub-category-link:hover {
    color: var(--primary-900) !important;
    transition: color 0.3s !important;
}

.nav-links a.sub-category-link:hover::before,
.header-nav a:not(.nav-cta-btn):not(.icon-btn).sub-category-link:hover::before {
    color: var(--primary-900) !important;
}


.nav-actions {
    display: flex;
    align-items: center;
    align-self: stretch;
    gap: clamp(20px, 3vw, 30px) !important;
}

.nav-cta-group {
    display: flex;
    align-items: stretch;
    align-self: stretch;
    gap: 10px !important;
    /* Figma layout_28OV3Y: gap 10px */
}

.nav-cta-btn,
.header-nav .nav-cta-btn,
.header-nav a.nav-cta-btn,
.nav-cta-group .nav-cta-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    /* Figma layout_DE4AQQ: alignSelf stretch */
    padding: 10px 20px !important;
    /* Figma layout_DE4AQQ: padding 10px 20px */
    border-radius: 6px !important;
    background: var(--primary-700) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--white) !important;
    white-space: nowrap;
    text-decoration: none;
    transition: background 0.15s;
    font-family: var(--font-base) !important;
    line-height: 24px !important;
    gap: 4px;
    /* Fix for anonymous flex text node spacing collapse */
}

.nav-cta-group a.nav-cta-btn {
    width: auto !important;
}

.nav-cta-group button.nav-cta-btn {
    width: auto !important;
}

body#html-body .nav-cta-btn strong,
body#html-body .header-nav .nav-cta-btn strong,
body#html-body .header-nav a.nav-cta-btn strong,
body#html-body #header-menu .nav-cta-btn strong,
body#html-body #header-menu .nav-cta-group .nav-cta-btn strong {
    font-size: 20px !important;
    font-weight: 700 !important;
    /* SemiBold/Bold matching Figma font-16/SemiBold */
    color: #FFFFFF !important;
    margin: 0;
}

body#html-body .nav-cta-btn span,
body#html-body .header-nav .nav-cta-btn span,
body#html-body .header-nav a.nav-cta-btn span,
body#html-body #header-menu .nav-cta-btn span,
body#html-body #header-menu .nav-cta-group .nav-cta-btn span {
    color: #FFFFFF !important;
}

.nav-cta-btn:hover {
    background: var(--primary-800) !important;
}

.nav-icon-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 5px !important;
    /* Figma layout_0AZD5G (action buttons row): gap 10px */
}

.icon-btn {
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: clamp(38px, 3.5vw, 52px) !important;
    /* Figma layout_UCBAQA: 52×52px. Fluids down on laptops */
    height: clamp(38px, 3.5vw, 52px) !important;
    color: var(--primary-900) !important;
    flex-shrink: 0;
}

.icon-btn svg {
    width: clamp(26px, 2.5vw, 40px) !important;
    /* Figma layout_XNMS27: 40×40px. Fluids down */
    height: clamp(26px, 2.5vw, 40px) !important;
    color: var(--primary-900) !important;
}

.icon-badge {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    width: 18px !important;
    height: 18px !important;
    aspect-ratio: 1 / 1;
    border-radius: 50% !important;
    background: transparent !important;
    font-size: 14px !important;
    font-weight: 700;
    line-height: 1;
    color: var(--white) !important;
    box-sizing: content-box;
    font-family: var(--font-base) !important;
}

/* Position badge at the center of wishlist icon (heart) */
a.icon-btn .icon-badge {
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    transform: translate(-50%, -50%) !important;
}

/* Position badge at the center of cart icon (shopping bag body) */
button.icon-btn .icon-badge {
    top: 62% !important;
    left: 50% !important;
    right: auto !important;
    transform: translate(-50%, -50%) !important;
}


/* Redundancy & Redundant Logo Fixes */
.site-header .nav-icon-group svg[class*="menu"],
.nav-icon-group .hamburger-menu,
.site-header .logo img:not(.logo-img),
.site-header>.logo,
.site-header>a>.logo {
    display: none !important;
}

/* Global Hiding of Redundant Elements */
.site-header .header.content .logo,
.site-header .nav-sections,
.site-header .block-search .label,
.site-header .logo img:not(.logo-img) {
    display: none !important;
}

/* Fix for the huge logo on the left */
.site-header>.logo,
.site-header>a>.logo,
.site-header img[src*="logo"]:not(.logo-img):not(.user-avatar) {
    display: none !important;
}

/* =========================================================
   HERO
   ========================================================= */
.hero-slider-wrapper-inside {
    position: relative;
    width: 100%;
    min-height: 565px;
    overflow: hidden;
}

.hero-slide-item {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hero-section {
    display: flex;
    align-items: center;
    gap: 28px;
    padding: 120px var(--page-gutter);
    min-height: 600px;
    /* background:
        radial-gradient(ellipse at 70% 50%, rgba(125, 90, 65, 0.25) 0%, transparent 60%),
        linear-gradient(135deg, #0d0a07 0%, #1a1108 40%, #0f0d0a 100%); */
    position: relative;
    overflow: hidden;
    color: var(--white);
    width: 100%;
    margin: 0;
    box-sizing: border-box;
    background: url('../../frontend/Netweb/hyva_child/en_US/images/banner-background.png') center/cover no-repeat;
    max-width: 1920px;
    margin: 0 auto;
}

.hero-section::before {
    content: '';
    position: absolute;
    inset: 0;
    /* Figma hero background — stored in theme web/images/hero_background.png */
    /* background: url('../../frontend/Netweb/hyva_child/en_US/images/hero_background.png') center/cover no-repeat; */
    opacity: 0.08;
    pointer-events: none;
}

.hero-accent {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    left: 0;
}

.hero-accent-bar {
    display: block;
    width: 8px;
    height: 40px;
    border-radius: 50px;
    background: linear-gradient(180deg, #E9DED5 0%, #AF8465 100%);
    transition: height 2s ease;
}

.hero-accent-dot {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50px;
    background: var(--primary-500);
    transition: height 2s ease;
}

.hero-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    flex: 1;
    max-width: 700px;
    position: relative;
    z-index: 1;
}

.hero-badge {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid var(--primary-800);
    border-radius: 20px;
    background: var(--primary-950);
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    color: var(--primary-300);
    margin-bottom: 8px;
}

.hero-welcome-text,
#hero-title {
    font-size: 48px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    line-height: 50px !important;
    margin: 0 !important;
    font-family: var(--font-heading) !important;
}

/* #hero-title {
    font-family: var(--font-heading) !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    line-height: 1.1 !important;
    margin: 0 !important;
} */

.hero-brand-name,
#hero-brand-title {
    font-family: var(--font-heading) !important;
    font-size: 64px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    background: linear-gradient(90deg, #DED1C9 0%, #E8B26E 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    margin: 0 !important;
}

.hero-description {
    font-size: 18px;
    /* Slightly larger per Figma */
    font-weight: 500;
    line-height: 1.5;
    color: var(--primary-100);
    margin: 0;
    max-width: 600px;
}

.hero-tagline {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: var(--primary-500);
    margin: 0;
}

.hero-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 150px;
    height: 48px;
    border-radius: 8px;
    box-shadow: var(--shadow-cta);
    font-size: 16px;
    line-height: 20px;
    font-weight: 700;
    color: var(--primary-900) !important;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    padding: 16px 24px;
    text-shadow: none;

}

.hero-cta-btn.light-bg-btn {
    background: linear-gradient(90deg, #E7D2B3 0%, #E8C693 100%);
    color: var(--primary-900) !important;
    box-shadow:
        0px 1px 3px rgba(175, 132, 101, 0.3),
        0px 4px 20px rgba(213, 166, 132, 0.3);
}

.hero-cta-btn.dark-bg-btn {
    background: var(--primary-900) !important;
    color: var(--white) !important;
}

/* Hero product showcase */
.hero-image-wrap {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
    max-width: 55%;
}

.hero-showcase-img {
    width: 100%;
    max-width: 700px;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.3));
}

/* =========================================================
   REWARDS SECTION
   ========================================================= */
.rewards-section {
    padding: 48px var(--page-gutter);
    background: var(--secondary-50);
    width: 100%;
    margin: 0;
    box-sizing: border-box;
}

.rewards-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 30px;
}

.section-eyebrow {
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: var(--primary-700);
}

.section-title {
    font-family: var(--font-heading);
    font-size: 32px;
    font-weight: 700;
    line-height: 40px;
    color: var(--primary-900);
    margin: 0;
}

.view-all-link {
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: #7D5E4E;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.rewards-grid {
    display: grid;
    /* grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); */
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 30px;
}

@media (max-width: 767px) {
    .rewards-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .reward-card-body {
        gap: 0px !important;
        padding: 10px !important;
    }

    .reward-card-footer {
        display: block !important;
    }

    .reward-card .add-to-cart-btn {
        justify-content: center !important;
        width: 100% !important;
    }
}

.reward-card {
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-md);
    background: var(--white);
    box-shadow: var(--shadow-card);
    overflow: hidden;
    transition: box-shadow 0.5s, transform 0.5s;
    position: relative;
}

.reward-card-image-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 0;
    background: var(--white);
}

.reward-card-img {
    width: 200px;
    height: 200px;
    object-fit: contain;
    opacity: 0.6;
    transform: scale(1);
    transition: all 0.5s ease;
}

.reward-card:hover {
    box-shadow: 0 0 20px 0 #b5b5b5;
    transition: all 0.5s ease;
}

.reward-card:hover .reward-card-img {
    transform: scale(1.2);
    opacity: 1;
    transition: all 0.5s ease;
}

.reward-card:hover .add-to-cart-btn {
    background: var(--primary-800) !important;
    color: var(--white) !important;
    transition: all 0.5s ease;
}

.reward-card:hover .add-to-cart-btn svg path {
    stroke: var(--white) !important;
}

.reward-card-body,
.product-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px;
    border-top: 1px solid var(--secondary-100);
    background: var(--white);
    flex: 1;
}

.reward-card-name {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: var(--primary-800);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 48px;
    text-decoration: none;
}

.reward-card-category {
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    color: var(--primary-500);
}

.reward-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
}

.price-value {
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
    color: var(--primary-700);
}

.price-label {
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: var(--primary-500);
}

.add-to-cart-btn {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 10px 18px;
    border: 1px solid var(--primary-100);
    border-radius: var(--radius-pill);
    background: var(--primary-50);
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: var(--primary-800);
    cursor: pointer;
    transition: all 0.5s ease;
}

.add-to-cart-btn.added {
    background: var(--primary-800);
    border-color: var(--primary-800);
    color: var(--white);
}

.wishlist-icon {
    position: absolute;
    top: 16px;
    right: 16px;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 100 !important;
    cursor: pointer;
}

.reward-card:hover .wishlist-icon {
    opacity: 1;
    transition: opacity 0.3s ease;
}


/* =========================================================
   FOOTER  (Figma Parity – V3 Final)
   ========================================================= */
/* footer, .page-footer, footer [class*="bg-"], .page-footer [class*="bg-"]{
    background: #281D15 !important; 
} */
.site-footer {
    background: #281D15 !important;
    /* #443124 */
    display: flex;
    flex-direction: column;
    padding: 0;
    margin: 0;
    font-family: var(--font-base);
    position: relative;
    overflow: hidden;
    background-image: url(../../frontend/Netweb/hyva_child/en_US/images/footer-shadow.png) !important;
    background-repeat: no-repeat !important;
    background-position: top right !important;
}

/* ── Main row: contains all columns ── */
.footer-main {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 40px 24px 16px;
    position: relative;
    z-index: 1;
}

/* ── Col 1: Brand ── */
.footer-brand {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.footer-logo-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.footer-logo-img {
    width: 38px;
    height: 30px;
    object-fit: contain;
}

.footer-logo-text {
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    color: var(--white);
    font-family: var(--font-base);
    white-space: nowrap;
}

footer p.footer-tagline-white {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--white);
    margin: 0;
}

footer p.footer-slogan-gold {
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    color: var(--primary-500) !important;
    /* #AF8465 - Gold */
    margin: 0;
    font-family: var(--font-base);
}

/* Social icons row */
.footer-social-row {
    display: flex;
    flex-direction: row;
    gap: 8px;
    margin-top: 4px;
}

.footer-social-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.10);
    color: rgba(255, 255, 255, 0.70);
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
    flex-shrink: 0;
}

.footer-social-btn:hover {
    background: rgba(255, 255, 255, 0.20);
    color: #FFFFFF;
}

/* ── Shared column styles (Support / Legal / Account) ── */
.footer-links-col {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.footer-col-heading {
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: var(--white);
    margin: 0;
    font-family: var(--font-base);
}

.footer-col-divider {
    width: 20px;
    height: 1px;
    background: var(--primary-300);
    /* #CCB19D */
    margin: 16px 0 16px;
    border: none;
}

.footer-link-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 0;
    list-style: none;
    margin: 0;
}

.footer-link {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--white);
    text-decoration: none;
    transition: color 0.2s;
}

.footer-link:hover {
    color: var(--primary-300);
}

/* ── NEED HELP? column (always has card border on desktop) ── */
.footer-help-col {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.footer-help-text {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--white);
    margin: 0;
}

.footer-contact-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-contact-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--white);
}

.footer-contact-item strong {
    font-weight: 700;
    color: var(--white);
    font-size: 16px;
}

.footer-contact-muted {
    color: rgba(255, 255, 255, 0.50);
    font-size: 12px;
}

.footer-contact-item svg {
    flex-shrink: 0;
    opacity: 0.80;
}

/* ── Bottom Bar ── */
.footer-bottom {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 24px 0 0;
    border-top: 1px solid var(--primary-800);
    /* #614632 */
    margin: 0 24px;
}

footer .footer-copyright,
footer .footer-powered {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--secondary-200) !important;
    /* #CACACA */
    margin: 0;
    font-family: var(--font-base);
}

footer a.footer-powered-link {
    color: var(--primary-400) !important;
    /* var(--secondary-200); */
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.2s;
}

.footer-powered-link:hover {
    color: var(--white);
}

/* ── MOBILE: card style for Need Help on small screens ── */
@media (max-width: 767px) {
    .footer-help-col {
        background: rgba(255, 255, 255, 0.05);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 10px;
        padding: 16px;
    }
}

/* ── DESKTOP: 5-column horizontal layout ── */
@media (min-width: 1025px) {
    .site-footer {
        padding: 0;
    }

    .footer-main {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
        gap: 0;
        padding: 80px var(--page-gutter) 0;
        max-width: 1920px;
        margin: 0 auto;
        width: 100%;
        box-sizing: border-box;
        transition: padding 0.2s ease;
    }

    /* Col 1 – Brand */
    .footer-brand {
        flex: 0 0 auto;
        /* min-width: 200px;
        max-width: 260px; */
        padding-right: 40px;
    }

    .footer-logo-img {
        width: 60px;
        height: 50px;
    }

    .footer-logo-text {
        font-size: 24px;
        line-height: 32px;
    }

    /* Cols 2-4 – SUPPORT / LEGAL / ACCOUNT */
    .footer-links-col {
        flex: 0 0 auto;
        min-width: 160px;
        padding: 0 24px;
    }

    /* Col 5 – NEED HELP: bordered card */
    .footer-help-col {
        flex: 0 0 auto;
        min-width: 260px;
        padding: 24px;
        border: 1px solid var(--primary-800) !important;
        /* Stand out on primary-900 */
        border-radius: 10px;
        background: rgba(0, 0, 0, 0.15) !important;
        /* Sleek high-end card depth */
    }

    .footer-help-col .footer-col-heading {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: var(--primary-500) !important;
        /* #AF8465 */
        line-height: 28px !important;
        text-transform: none !important;
        letter-spacing: 0 !important;
    }

    .footer-help-col .footer-col-divider {
        display: none;
    }

    /* Bottom bar: space-between on desktop, 100px padding */
    .footer-bottom {
        flex-direction: row;
        justify-content: space-between;
        padding: 24px var(--page-gutter) 24px;
        margin: 0 auto 0;
        /* border-top: 1px solid var(--primary-800); */
        border-top: 0;
        transition: padding 0.2s ease;
        width: 100%;
        max-width: 1920px;
    }

    .footer-main-divider {
        width: 100%;
        max-width: 1920px;
        display: block;
        margin: 0 auto;
        padding: 0 var(--page-gutter);
        margin-top: 60px;
    }

    .footer-bottom-divider {
        width: 100%;
        border-top: 1px solid var(--primary-800);
    }

    /* Social icons shown on desktop */
    .footer-social-row {
        display: flex !important;
    }

    /* Mobile-only footer columns hidden on desktop */
    .footer-mobile-links {
        display: none;
    }
}

/* Mobile footer: hide link columns, center content */
@media (max-width: 1024px) {
    .footer-links-col {
        display: none !important;
    }

    .footer-main {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 40px 24px 0;
        gap: 16px;
    }

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

    .footer-logo-wrap {
        justify-content: center;
    }

    .footer-logo-img {
        width: 60px;
        height: 50px;
    }

    .footer-logo-text {
        font-size: 20px;
        line-height: 28px;
    }

    .footer-tagline-white {
        font-size: 16px;
        line-height: 24px;
        color: var(--white);
        text-align: center;
    }

    .footer-help-col {
        width: 100%;
        box-sizing: border-box;
        padding: 24px;
        border: 1px solid var(--primary-800) !important;
        border-radius: 10px;
        background: rgba(0, 0, 0, 0.15) !important;
        text-align: left;
    }

    .footer-help-col .footer-col-heading {
        font-size: 20px !important;
        font-weight: 700 !important;
        color: var(--primary-500) !important;
        line-height: 28px !important;
        text-transform: none !important;
        letter-spacing: 0 !important;
    }

    .footer-help-col .footer-col-divider {
        display: none;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 20px 0 0;
        margin: 16px 24px 24px;
    }

    .footer-social-row {
        display: flex !important;
        justify-content: center !important;
        /* Centered on tablet/mobile */
        margin-top: 12px !important;
    }
}



/* Sticky Header for Desktop view */
@media (min-width: 1025px) {

    #ammenu-header-container,
    .page-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
        background: #FFFFFF !important;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    }
}

/* =========================================================
   RESPONSIVE MOBILE HEADER (Figma Parity)
   ========================================================= */
@media (max-width: 1024px) {

    html,
    body,
    .page-wrapper {
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .site-header {
        display: grid !important;
        grid-template-columns: 36px 1fr auto !important;
        /* Adapt column 3 to icons width */
        grid-template-rows: auto auto !important;
        column-gap: 8px !important;
        row-gap: 10px !important;
        padding: 8px 12px !important;
        /* More compact padding to fit all elements */
        background: var(--primary-50) !important;
        /* #F2EBE6 – Figma Links Container bg */
        border-bottom: 1px solid var(--primary-200) !important;
    }

    /* display: contents allows children of these wrappers to directly participate in the site-header Grid */
    .header-top,
    .header-nav,
    .header-top .header-container,
    .header-nav .header-container {
        display: contents !important;
    }

    /* Row 1: Left - Hamburger Menu Toggle */
    .nav-links,
    .header-nav .nav-links {
        grid-column: 1 !important;
        grid-row: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: start !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Make the Amasty toggle and trigger look crisp and align precisely */
    .nav-links,
    .header-nav .nav-links,
    .nav-links button,
    .nav-links .navigation {
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    .nav-links>div {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    .nav-links button svg {
        /* width: 32px !important;
        height: 32px !important;
        color: #5C4330 !important; */
    }

    /* Row 1: Center - Logo */
    .logo-wrap {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 auto !important;
        gap: 8px !important;
    }

    .logo-img {
        width: clamp(32px, 8vw, 48px) !important;
        height: clamp(28px, 7vw, 40px) !important;
        object-fit: contain !important;
    }

    .site-header .logo-wrap a.logo-text {
        font-size: clamp(13px, 3.5vw, 18px) !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        color: var(--primary-800) !important;
        font-family: var(--font-base) !important;
        white-space: nowrap !important;
    }

    /* Row 1: Right - Wishlist and Cart Icons */
    .nav-actions {
        grid-column: 3 !important;
        grid-row: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: end !important;
        gap: 10px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .nav-icon-group {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .nav-icon-group .icon-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 36px !important;
        height: 36px !important;
        border-radius: 999px !important;
        background: transparent !important;
        position: relative !important;
        border: none !important;
        padding: 0 !important;
    }

    .nav-icon-group .icon-btn svg {
        width: 24px !important;
        height: 24px !important;
        color: var(--primary-800) !important;
    }

    /* Heart wishlist custom badge if simulated/hardcoded in mockup */
    .nav-icon-group .icon-badge {
        position: absolute !important;
        background: transparent !important;
        color: var(--white) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        font-family: var(--font-base) !important;
        border-radius: 50% !important;
        border: none !important;
        min-width: 18px !important;
        width: 18px !important;
        height: 18px !important;
        aspect-ratio: 1 / 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
        box-sizing: content-box !important;
        padding: 0 !important;
    }

    /* Row 2: Full-width Search Bar */
    .search-wrap {
        grid-column: 1 / span 3 !important;
        grid-row: 2 !important;
        width: 100% !important;
        margin: 0 !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        height: auto !important;
        box-shadow: none !important;
        position: relative !important;
        z-index: 5 !important;
    }

    .search-wrap .block-search {
        width: 100% !important;
    }

    /* Style the search form to match Figma mobile: white bg, secondary/100 border, 30px radius */
    .search-wrap form,
    .mobile-search-form {
        display: flex !important;
        align-items: center !important;
        background: var(--white) !important;
        border-radius: 30px !important;
        border: 1px solid var(--secondary-100) !important;
        /* #DFDFDF */
        padding: 4px 16px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        transition: border-color 0.2s, box-shadow 0.2s !important;
        box-shadow: none !important;
    }

    .search-wrap form:focus-within,
    .mobile-search-form:focus-within {
        border-color: #8C6B4A !important;
        box-shadow: 0 0 0 3px rgba(140, 107, 74, 0.12) !important;
    }

    .search-wrap input,
    .mobile-search-input {
        background: transparent !important;
        border: none !important;
        outline: none !important;
        width: 100% !important;
        font-family: var(--font-base) !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        color: var(--secondary-700) !important;
        padding: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    .search-wrap input::placeholder,
    .mobile-search-input::placeholder {
        color: var(--secondary-500) !important;
        /* #8A8A8A */
        font-weight: 500 !important;
    }

    /* Hide desktop-only components on mobile header */
    .header-points-group,
    .header-right-group,
    .user-menu-wrap,
    .nav-cta-group,
    .nav-actions>a.nav-cta-btn,
    .nav-actions>button.nav-cta-btn {
        display: none !important;
    }

    /* Set background color of Amasty mobile menu containers to be clean and transparent */
    .ammenu-main-container {
        background-color: transparent !important;
        border: none !important;
    }

    /* Prevent #ammenu-sidebar wrapper from bleeding outside the drawer */
    #ammenu-sidebar {
        overflow: hidden !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* Left Sidebar custom navigation drawer styling (Figma Parity) */
    #ammenu-sidebar aside {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        right: auto !important;
        width: 85vw !important;
        max-width: 360px !important;
        height: 100vh !important;
        border-radius: 0 32px 32px 0 !important;
        padding: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        background-color: var(--primary-50) !important;
        box-shadow: 10px 0 30px rgba(0, 0, 0, 0.15) !important;
        z-index: 50 !important;
        transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s ease-out !important;
        scrollbar-width: none !important;
        /* Firefox */
        -ms-overflow-style: none !important;
        /* IE/Edge */
    }

    /* Hide WebKit scrollbar on the drawer */
    #ammenu-sidebar aside::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
    }

    /* Map transitions to slide out horizontally from left */
    #ammenu-sidebar aside.-translate-x-full,
    #ammenu-sidebar aside.-translate-x-12 {
        transform: translateX(-100%) !important;
        opacity: 0 !important;
    }

    #ammenu-sidebar aside.translate-x-0 {
        transform: translateX(0) !important;
        opacity: 1 !important;
    }

    /* Accordion Category Submenu link customizations */
    #ammenu-sidebar [data-action="amMenuMenubar"] .ammenu-link,
    #ammenu-sidebar [data-action="amMenuMenubar"] .ammenu-item,
    #ammenu-sidebar [data-action="amMenuMenubar"] a {
        font-family: var(--font-base) !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        color: #2B2520 !important;
        padding: 10px 14px !important;
        border-bottom: 1px solid #F3EEE9 !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        background: transparent !important;
        transition: background-color 0.15s !important;
    }

    #ammenu-sidebar [data-action="amMenuMenubar"] .ammenu-link:hover,
    #ammenu-sidebar [data-action="amMenuMenubar"] a:hover {
        background-color: #FAF8F6 !important;
        color: #77563E !important;
    }

    /* Mobile Menu Drawer Custom Layout (Figma Parity) */
    .mobile-menu-drawer {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        right: auto !important;
        width: 85vw !important;
        max-width: 360px !important;
        height: 100vh !important;
        border-radius: 0 32px 32px 0 !important;
        padding: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        background-color: #FFFFFF !important;
        box-shadow: 10px 0 30px rgba(0, 0, 0, 0.15) !important;
        z-index: 9999 !important;
        transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s ease-out !important;
        box-sizing: border-box !important;
    }

    /* Drawer header wrapper */
    .mobile-menu-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 10 !important;
        /* background-color: #FAF8F6 !important; */
        border-bottom: 1px solid #F3EEE9 !important;
        background: url(../../frontend/Netweb/hyva_child/en_US/images/header-mob-bg.png) no-repeat !important;
    }

    .header-nav .mobile-menu-profile-card {
        padding: 50px 16px 10px !important;
        /* Increased top padding since close button is removed */
        /* background-color: #FAF8F6 !important; */
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        position: relative !important;
    }

    .header-nav .mobile-menu-profile-card .profile-avatar {
        display: block !important;
        width: 80px !important;
        height: 80px !important;
        border-radius: 50% !important;
        border: 2px solid #FFFFFF !important;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05) !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    .header-nav .mobile-menu-profile-card .profile-avatar img,
    .header-nav .mobile-menu-profile-card .profile-avatar svg {
        width: 100% !important;
        height: 100% !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .header-nav .mobile-menu-profile-card .profile-info {
        flex: 1 !important;
        min-width: 0 !important;
        padding-right: 32px !important;
        display: flex !important;
        flex-direction: column !important;
    }

    .header-nav .mobile-menu-profile-card .profile-welcome {
        font-family: var(--font-base) !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        color: var(--color-primary) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.05em !important;
    }

    .header-nav .mobile-menu-profile-card .profile-name {
        font-family: var(--font-heading) !important;
        font-size: 20px !important;
        font-weight: 700 !important;
        color: var(--primary-900) !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        margin-top: 2px !important;
    }

    .header-nav .mobile-menu-profile-card .profile-arrow-link {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        border-radius: 50% !important;
        background-color: #FFFFFF !important;
        border: 1px solid #F3EEE9 !important;
        color: #5C4330 !important;
        transition: background-color 0.2s, transform 0.2s !important;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05) !important;
        padding: 0 !important;
    }

    .header-nav .mobile-menu-profile-card .profile-arrow-link:hover {
        background-color: #E7E0DB !important;
        transform: scale(1.05) !important;
    }

    .mobile-menu-content {
        padding: 10px 10px 5px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        overflow: hidden !important;
        background: #fff !important;
    }

    .mobile-menu-points-card {
        background:
            linear-gradient(180deg, rgba(43, 30, 22, 0.72) 0%, rgba(21, 14, 9, 0.92) 100%),
            url('https://images.unsplash.com/photo-1486325212027-8081e485255e?w=800&q=80') center/cover no-repeat !important;
        border-radius: 16px !important;
        padding: 20px !important;
        color: #FFFFFF !important;
        position: relative !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        min-height: 110px !important;
        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.25) !important;
        box-sizing: border-box !important;
    }

    .mobile-menu-points-card .points-top {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .mobile-menu-points-card .points-value {
        font-family: var(--font-heading) !important;
        font-size: 28px !important;
        font-weight: 800 !important;
        color: #D8B38F !important;
    }

    .mobile-menu-points-card .points-label {
        font-family: var(--font-base) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        color: #C7B5A8 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.1em !important;
        margin-top: 8px !important;
    }

    .mobile-menu-cta-grid {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        align-items: stretch !important;
    }

    .nav-links .mobile-menu-cta-btn {
        background-color: #77563E !important;
        color: #FFFFFF !important;
        border-radius: 12px !important;
        padding: 8px 12px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-end !important;
        text-align: left !important;
        text-decoration: none !important;
        transition: background-color 0.2s, transform 0.2s !important;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12) !important;
        border: none !important;
        cursor: pointer !important;
        margin: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
        min-height: 60px !important;
        gap: 8px !important;
        overflow: hidden !important;
    }

    .mobile-menu-cta-btn:hover {
        background-color: #5C4330 !important;
        transform: translateY(-1px) !important;
    }

    .mobile-menu-section {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        padding: 0 10px !important;
    }

    .mobile-menu-section .section-title {
        font-family: var(--font-heading) !important;
        font-size: 14px !important;
        line-height: 20px !important;
        font-weight: 500 !important;
        color: var(--primary-500) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.08em !important;
        margin-bottom: 8px !important;
        text-align: left !important;
    }

    .mobile-menu-section .section-list {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        border-bottom: 1px solid var(--secondary-200) !important;
    }

    .mobile-menu-section .section-list.border-0 {
        border-bottom: none !important;
    }

    .mobile-menu-section .section-list-item {
        /* border-bottom: 1px solid #F3EEE9 !important; */
    }

    .mobile-menu-section .section-list-item:last-child {
        border-bottom: none !important;
    }

    .mobile-menu-section .section-link,
    .mobile-menu-section a.section-link,
    .mobile-menu-section button.section-link {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        padding: 12px 0 !important;
        text-decoration: none !important;
        color: #2B2520 !important;
        background: transparent !important;
        border: none !important;
        text-align: left !important;
        cursor: pointer !important;
        transition: color 0.2s !important;
        box-shadow: none !important;
        height: auto !important;
        margin: 0 !important;
    }

    .mobile-menu-section .section-link:hover,
    .mobile-menu-section a.section-link:hover,
    .mobile-menu-section button.section-link:hover {
        color: #77563E !important;
    }

    .mobile-menu-section .section-link-content {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .mobile-menu-section .section-link-text {
        font-family: var(--font-base) !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        color: inherit !important;
    }

    .mobile-menu-section .accordion-container {
        overflow: hidden !important;
        background-color: #FAF8F6 !important;
        border-radius: 12px !important;
        padding: 4px 12px !important;
        margin-top: 4px !important;
    }

    .mobile-menu-footer {
        border-top: none !important;
        text-align: left !important;
        font-family: var(--font-base) !important;
        font-size: 14px !important;
        line-height: 20px !important;
        color: var(--secondary-700) !important;
        line-height: 1.5 !important;
        padding: 20px !important;
    }

    header .mobile-menu-footer p:not(#cart-drawer *) {
        color: var(--secondary-700) !important;
    }

    .header-nav .mobile-menu-footer p a:not(.nav-cta-btn):not(.icon-btn),
    .nav-links .mobile-menu-footer p a,
    .mobile-menu-footer a {
        color: var(--secondary-700) !important;
        text-decoration: underline !important;
        font-weight: 400 !important;
    }

    /* ---- CTA Button Text (icon top, text bottom, two lines) ---- */
    /* .mobile-menu-cta-btn svg {
        flex-shrink: 0 !important;
        color: rgba(255,255,255,0.9) !important;
        width: 20px !important;
        height: 20px !important;
    } */
    .nav-links .mobile-menu-cta-btn {
        display: flex !important;
        color: #ffffff !important;
        font-size: 14px;
        line-height: 20px;
        gap: 10px !important;
        width: 100% !important;
        white-space: normal !important;
    }

    .header-nav .mobile-menu-cta-btn a:not(.nav-cta-btn):not(.icon-btn),
    .nav-links .mobile-menu-cta-btn a.cta-text {
        color: #ffffff !important;
        font-size: 14px !important;
        line-height: 20px !important;
    }

    .header-nav .mobile-menu-cta-btn span:not(.icon-badge):not(.points-value):not(.points-label),
    .nav-links .mobile-menu-cta-btn .cta-text span {
        color: #ffffff !important;
        font-size: 14px !important;
        line-height: 20px !important;
    }

    .header-nav .mobile-menu-cta-btn span.count-big:not(.icon-badge):not(.points-value):not(.points-label),
    .nav-links .mobile-menu-cta-btn .cta-text span.count-big {
        font-size: 24px !important;
        line-height: 32px !important;
        font-weight: 700 !important;
    }

    /* ---- Mobile Search Bar (Figma Parity) ---- */
    .mobile-search-wrap {
        width: 100% !important;
        color: #374151 !important;
    }

    .mobile-search-form {
        display: flex !important;
        align-items: center !important;
        background: #F5F0EB !important;
        border-radius: 50px !important;
        border: 1.5px solid #E2D9D0 !important;
        padding: 7px 16px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        transition: border-color 0.2s, box-shadow 0.2s !important;
    }

    .mobile-search-form:focus-within {
        border-color: #8C6B4A !important;
        box-shadow: 0 0 0 3px rgba(140, 107, 74, 0.12) !important;
    }

    .mobile-search-input {
        background: transparent !important;
        border: none !important;
        outline: none !important;
        width: 100% !important;
        font-size: 14px !important;
        color: #374151 !important;
        font-family: var(--font-base) !important;
        padding: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    .mobile-search-input::placeholder {
        color: #8C827A !important;
        font-size: 14px !important;
    }

    /* Remove browser default search input clear button */
    .mobile-search-input::-webkit-search-cancel-button {
        display: none !important;
    }

    .mobile-search-btn {
        background: none !important;
        border: none !important;
        padding: 4px !important;
        color: #8C827A !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
    }

    .mobile-search-btn:hover {
        color: #5C4330 !important;
    }

    /* ---- Mobile Footer Overrides ---- */
    .site-footer {
        padding: 0 !important;
    }

    .footer-main {
        padding: 10px;
        gap: 12px !important;
    }

    .footer-brand {
        padding: 0 !important;
    }

    .footer-bottom {
        flex-direction: column !important;
        gap: 10px !important;
        padding: 10px 0px 10px !important;
        text-align: center !important;
    }

}

.container {
    max-width: 1920px;
    margin: 0 auto;
    padding: 0px var(--page-gutter) !important;
}

/* =========================================================
   DESKTOP-ONLY 80% LAYOUT SCALING
   ========================================================= */
@media (max-width: 1610px) and (min-width: 1024px) {
    body {
        zoom: 0.8 !important;
    }
}


/* =========================================================
   LOCAL EXTENSIONS — Dashboard, PDP, Checkout, Gallery
   (Retained from local codebase — not present in design update)
   ========================================================= */

/* ---- Custom Account Dashboard (Figma Parity) ---- */

.dashboard-title-bar {
    /* font-family: 'Montserrat', sans-serif !important; */
    background-color: var(--white);
    /* border-bottom: 1px solid #DFDFDF !important; */
    padding: 14px 0 !important;
}

.custom-title-text {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: var(--primary-800) !important;
    margin: 0 !important;
}

.custom-dashboard-wrapper {
    font-family: 'Montserrat', sans-serif !important;
    background-color: #F5F5F5 !important;
    min-height: 100vh !important;
    padding: 10px 0 !important;
}

.customer-account-index .custom-dashboard-wrapper {
    padding: 48px 0 !important;
}

.custom-dashboard-wrapper>div {
    max-width: 1920px !important;
    margin: 0 auto !important;
}


.custom-welcome-title {
    font-size: 32px !important;
    font-weight: 600 !important;
    color: #443124 !important;
    line-height: 40px !important;
    margin: 0 !important;
}

.custom-welcome-desc {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: var(--primary-500) !important;
    /* Figma primary/500 */
    line-height: 24px !important;
    margin-top: 6px !important;
}

.custom-logout-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: var(--primary-700) !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 8px 16px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    gap: 6px !important;
}

.custom-logout-btn:hover {
    background-color: var(--primary-800) !important;
    color: #ffffff !important;
}

.custom-card-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    max-width: 1920px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* @media (min-width: 1025px) and (max-width: 1440px) {
    .custom-card-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
} */

@media (min-width: 768px) and (max-width: 1024px) {
    .custom-card-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 767px) {
    .custom-card-grid {
        grid-template-columns: 1fr !important;
    }

    .gallery-main-wrapper {
        width: 100% !important;
        aspect-ratio: unset !important;
    }

    .gallery-thumbs-container {
        gap: 10px !important;
    }

    .gallery-thumb-btn {
        height: 80px !important;
        width: 80px !important;
    }

    .wow-logout-btn {
        display: none !important;
    }
}

.custom-card {
    display: flex !important;
    flex-direction: column !important;
    background-color: #ffffff !important;
    border-radius: 16px !important;
    border: none !important;
    /* Floating card - no outer border */
    width: 100% !important;
    max-width: 415px !important;
    overflow: hidden !important;
    box-shadow: 0px 0px 20px 0px rgba(223, 223, 223, 0.5) !important;
    transition: all 0.3s ease;
}

@media (max-width: 1024px) {
    .custom-card {
        width: 100% !important;
        max-width: 100% !important;
    }
}

.custom-card:hover {
    /* transform: translateY(-2px) !important; */
    box-shadow: 0px 4px 25px 0px rgba(200, 200, 200, 0.6) !important;
    transition: all 0.3s ease;
}

.custom-card:hover img {
    opacity: 1 !important;
    transition: all 0.3s ease;
}

.custom-card-img-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 60px 20px !important;
    /* Figma exact padding layout_GWGFVO */
    background-color: #ffffff !important;
    border-bottom: 1px solid var(--secondary-100) !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.custom-card img {
    object-fit: contain !important;
    height: 100px !important;
    min-width: 88px !important;
    opacity: 0.6;
    transition: all 0.3s ease;
    /* Figma exact dimension layout_VUENGL */
}

.custom-card-body {
    display: flex !important;
    flex-direction: column !important;
    padding: 16px !important;
    flex-grow: 1 !important;
    justify-content: space-between !important;
    gap: 16px !important;
}

.custom-card-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: var(--primary-900) !important;
    line-height: 28px !important;
    margin: 0 !important;
}

.custom-card-desc {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: var(--primary-500) !important;
    /* Figma primary/500 */
    line-height: 24px !important;
    margin: 4px 0 0 !important;
}

.custom-card-action-wrap {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
}

.custom-card-action {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    text-decoration: none !important;
}

.custom-card-action-text {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--primary-800) !important;
    line-height: 20px !important;
}

.custom-card-arrow {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    background-color: var(--primary-100) !important;
    /* #E9DED5 */
    color: var(--primary-800) !important;
    /* #614632 */
    border-radius: 50% !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

.custom-card:hover .custom-card-arrow {
    background-color: var(--primary-800) !important;
    /* #CCB19D */
    color: #ffffff !important;
    transition: all 0.3s ease;
}

.custom-card-mobile-icon {
    display: none !important;
}

@media (max-width: 768px) {
    .custom-dashboard-wrapper {
        padding: 0px 0 !important;
    }

    .custom-card-img-wrap {
        padding: 40px 20px !important;
    }

    .custom-card img {
        opacity: 1 !important;
        height: 80px !important;
    }

    .custom-card-arrow {
        background-color: var(--primary-800) !important;
        color: #ffffff !important;
        transition: all 0.3s ease;
    }

    .dashboard-title-bar {
        background-color: var(--primary-50);
        padding: 12px 16px;
    }

    .custom-title-text {
        font-size: 22px;
        font-weight: 700;
        text-align: center;
        flex-grow: 1;
        color: var(--primary-900);
    }

    .custom-welcome-title {
        font-size: 24px !important;
        line-height: 32px !important;
    }

    .custom-welcome-desc {
        font-size: 14px !important;
        line-height: 20px !important;
    }

    .custom-logout-btn {
        display: none !important;
    }

    .customer-account-index .site-header,
    .wishlist-index-index .site-header {
        display: none !important;
    }

    .pp-website-tabs {
        margin-bottom: 10px !important;
    }

    .wow-top-grid {
        gap: 10px !important;
    }

    .wow-form-row {
        gap: 10px !important;
    }

    .wow-recipient-tags {
        display: block;
    }

    .wow-tag-amount-input {
        width: 120px;
    }

    .wow-recipient-tag {
        width: 100%;
    }

    .wow-top-grid {
        margin-bottom: 10px;
    }

    .wow-transactions-card {
        background-color: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    .wow-tx-row {
        display: block !important;
        background-color: #ffffff;
        border-radius: 10px;
        box-shadow: 0 0 20px rgba(223, 223, 223, 0.5);
        margin-bottom: 10px !important;
        padding: 0 !important;
    }

    .wow-tx-info {
        padding: 16px;
        border-bottom: 1px solid var(--secondary-100);
    }

    .wow-tx-badge {
        margin: 16px !important;
        padding: 6px 12px !important;
    }

    .pp-balance-label,
    .pp-add-card-title {
        margin-bottom: 8px;
    }

    .pp-points-grid {
        gap: 10px !important;
    }

    .pp-transactions-card {
        background-color: transparent !important;
    }

    .pp-transaction-row {
        background-color: #ffffff;
        border-radius: 10px;
        box-shadow: 0 0 20px rgba(223, 223, 223, 0.5);
        margin-bottom: 10px !important;
        flex-direction: column;
        align-items: flex-start !important;
        padding: 16px;
    }

    .pp-transaction-info {
        border-bottom: 1px solid var(--secondary-100);
        width: 100%;
    }

    .pp-transaction-date {
        margin-bottom: 16px !important;
    }

    .pp-view-more-btn {
        flex-direction: column;
        width: 100%;
        text-align: center;
        background-color: var(--primary-800);
        color: #ffffff;
        padding: 10px 20px;
        border-radius: 6px;
    }

    .wow-input {
        width: auto
    }

    .wow-checkbox-label {
        white-space: normal;
    }

    .wow-top-grid {
        display: block !important;
    }
    
    .wow-balance-card {
        margin-bottom: 10px;
    }

    .wow-input {
        width: auto;
    }

    .wow-form-row {
        display: block!important;
    }

    .wow-checkbox-label {
        align-items: flex-start !important;
        white-space: normal;
        flex-direction: column;
    }

    .wow-checkbox-label span {
        white-space: normal;
    }
}
/* @media (min-width: 767px) and (max-width: 1024px) {
    .wow-top-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 20px;
        align-items: start;
    }
} */

@media (min-width: 767px) {
    .pp-view-more-btn {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        text-decoration: none;
        font-size: 16px;
        font-weight: 700;
        color: var(--primary-800);
        background: none;
        border: none;
        cursor: pointer;
        padding: 0;
        transform: translateY(-2px);
    }
}
/* =========================================================
   PRODUCT DETAIL PAGE REVAMP (FIGMA PARITY)
   ========================================================= */
.category-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 20px;
    background-color: var(--primary-100);
    color: var(--primary-800);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
}

.product-title-custom {
    font-size: 24px;
    font-weight: 600;
    color: var(--primary-900);
    line-height: 1.25;
}

.product-price-custom {
    font-size: 24px;
    font-weight: 700;
    color: var(--primary-800);
    text-transform: capitalize;
}

.product-price-custom .price {
    font-weight: 700 !important;
    font-size: 24px !important;
}

.product-description {
    color: var(--primary-500);
}

.product-options-wrapper-custom form {
    margin-bottom: 0 !important;
}

.quantity-wrapper-custom {
    display: flex;
    align-items: center;
    border: 1px solid var(--primary-300);
    border-radius: 6px;
    background-color: var(--primary-50);
    padding: 4px 12px;
    gap: 12px;
    height: 44px;
}

.border-secondary-200 {
    border-color: var(--secondary-200) !important;
}

.quantity-btn-custom {
    color: var(--secondary-900);
    font-weight: 600;
    font-size: 18px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: none;
    border: none;
    -webkit-appearance: none;
    appearance: none;
}

.quantity-input-custom::-webkit-outer-spin-button,
.quantity-input-custom::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
.quantity-input-custom {
    -moz-appearance: textfield;
    appearance: textfield;
}

.quantity-btn-custom:hover {
    color: var(--primary-900);
}

.quantity-input-custom {
    background: transparent !important;
    text-align: center;
    font-weight: 600;
    font-size: 20px;
    color: var(--primary-900);
    width: 32px;
    border: none !important;
    outline: none !important;
    padding: 0;
    box-shadow: none !important;
    font-family: var(--font-base) !important;
}

.add-to-cart-btn-custom {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 44px;
    padding: 10px 32px;
    border-radius: 6px;
    background-color: var(--primary-700) !important;
    color: var(--white) !important;
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
    transition: background-color 0.2s;
    border: none;
    cursor: pointer;
    box-shadow: var(--shadow-cta);
    font-family: var(--font-base) !important;
}

.add-to-cart-btn-custom:hover {
    background-color: var(--primary-800) !important;
}

.wishlist-btn-custom {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    padding: 10px 24px;
    border-radius: 6px;
    border: none;
    background-color: var(--primary-100);
    color: var(--primary-800);
    font-weight: 600;
    font-size: 18px;
    transition: all 0.2s;
    position: relative;
    cursor: pointer;
    font-family: var(--font-base) !important;
}

.wishlist-btn-custom:hover {
    background-color: var(--primary-100);
    color: var(--primary-900);
}

/* Hide compare button on PDP info area */
.product-info-main .action.tocompare,
.product-info-main [data-role="add-to-links"] .action.tocompare,
[data-addto="compare"] {
    display: none !important;
}

.actions-secondary {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.product-meta-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 14px;
    color: var(--secondary-700);
}

.product-meta-row {
    display: flex;
}

.product-meta-label {
    font-weight: 600;
    /* width: 96px; */
    padding-right: 5px;
    flex-shrink: 0;
    color: var(--primary-800);
    font-size: 16px;
    line-height: 24px;
}

.product-meta-value {
    color: var(--primary-500);
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
}

.product-meta-value a {
    color: var(--primary-500);
    text-decoration: none;
}

.product-meta-value a:hover {
    color: var(--primary-700);
    text-decoration: underline;
}

/* Gallery Custom Styling */
.gallery-thumbs-container {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    width: 100%;
}

@media (min-width: 1024px) {
    .gallery-thumbs-container {
        flex-direction: column;
        overflow-y: auto;
        width: 100px;
    }
}

.gallery-thumb-btn {
    width: 100px;
    height: 100px;
    border-radius: 10px;
    overflow: hidden;
    border: 2px solid transparent;
    background-color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    flex-shrink: 0;
    outline: none;
}

.gallery-thumb-btn img {
    opacity: 0.6;
}

.gallery-thumb-btn.active {
    border-color: var(--primary-400) !important;
}

.gallery-thumb-btn.active img {
    opacity: 1;
}

.gallery-main-wrapper {
    position: relative;
    flex-grow: 1;
    overflow: hidden;
    background-color: #fff;
    width: calc(100% - 130px);
    aspect-ratio: 7/5;
    box-shadow: 0px 0px 20px rgba(223, 223, 223, 0.5);
    border-radius: 10px;
}

/* Main PDP layout grid */
.pdp-grid-container-custom {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
}

@media (min-width: 1024px) {
    .pdp-grid-container-custom {
        grid-template-columns: 1.1fr 1fr;
        gap: 48px;
    }
}

/* Bottom Tabs */
.tabs-header-custom {
    display: flex;
    border-bottom: 1px solid var(--secondary-100);
    gap: 32px;
    justify-content: flex-start;
}

.tab-btn-custom {
    padding-bottom: 10px;
    font-weight: 500;
    font-size: 18px;
    transition: all 0.2s;
    background: none;
    border: none;
    cursor: pointer;
    text-transform: capitalize;
}

.tab-btn-custom.active {
    border-bottom: 2px solid var(--primary-800) !important;
    color: var(--primary-800) !important;
    font-weight: 700 !important;
}

.tab-btn-custom:not(.active) {
    border-bottom: 2px solid transparent !important;
    color: var(--secondary-500) !important;
}

.tab-btn-custom:hover:not(.active) {
    color: var(--primary-700) !important;
}

.text-primary-500 {
    color: var(--primary-500) !important;
}

div#product-attributes.max-w-prose {
    max-width: 100%;
}

.additional-attributes tr th:first-child {
    width: 130px;
    background-color: var(--primary-50) !important;
    color: var(--primary-950) !important;
}

.additional-attributes {
    border: 1px solid var(--primary-100) !important;
    border-collapse: collapse !important;
}

.additional-attributes tr th,
.additional-attributes tr td {
    border-bottom: 1px solid var(--primary-100) !important;
}

.additional-attributes tr th {
    border-right: 1px solid var(--primary-100) !important;
}

/* Checkout Page Custom Styling */
.checkout-index-index,
.checkout-container.amcheckout-main-container {
    background-color: #F6F3F0 !important;
}

.checkout-container.amcheckout-main-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 40px 24px;
    font-family: 'Outfit', 'Inter', sans-serif !important;
}

/* Page Title and Description */
.checkout-container .page-title {
    color: var(--primary-900) !important;
    font-size: 36px !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    text-transform: capitalize !important;
    border: none !important;
    padding: 0 !important;
}

.checkout-container .checkout-description {
    color: var(--primary-700) !important;
    font-size: 16px !important;
    margin-bottom: 32px !important;
}

/* 3-Column Grid on Desktop */
@media (min-width: 1024px) {
    .checkout-container .amcheckout-wrapper {
        display: grid !important;
        grid-template-columns: 1.15fr 1fr 1.15fr !important;
        gap: 32px !important;
        align-items: start !important;
    }

    .checkout-container .amcheckout-column {
        width: 100% !important;
        margin: 0 !important;
    }
}

/* Card Block Design */
.checkout-container .checkout-block,
.checkout-container .opc-wrapper .checkout-block {
    background: var(--white) !important;
    border-radius: 12px !important;
    padding: 24px 30px !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03) !important;
    border: 1px solid var(--primary-100) !important;
    margin-bottom: 24px !important;
}

/* Title Styling inside Cards */
.checkout-container .checkout-block .block-title,
.checkout-container .checkout-block .title strong {
    background: transparent !important;
    border: none !important;
    color: var(--primary-900) !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    padding: 0 0 16px 0 !important;
    margin: 0 0 20px 0 !important;
    border-bottom: 1px solid var(--primary-100) !important;
    display: block !important;
    width: 100% !important;
}

/* Remove default step number or background from titles */
.checkout-container .checkout-block .block-title::before {
    display: none !important;
}

/* Order Summary specific card styling */
.checkout-container .checkout-block.order-summary {
    background-color: var(--primary-50) !important;
    border-color: var(--primary-200) !important;
}

.checkout-container .checkout-block.order-summary .block-title::before {
    content: "🛒 " !important;
    display: inline-block !important;
    font-size: 20px !important;
    margin-right: 8px !important;
}

/* Input Fields styling */
.checkout-container input[type="text"],
.checkout-container input[type="email"],
.checkout-container input[type="tel"],
.checkout-container select,
.checkout-container textarea {
    width: 100% !important;
    height: 44px !important;
    padding: 10px 16px !important;
    border-radius: 6px !important;
    border: 1px solid var(--primary-200) !important;
    background-color: var(--white) !important;
    color: var(--primary-900) !important;
    font-size: 14px !important;
    transition: all 0.2s !important;
}

.checkout-container input[type="text"]:focus,
.checkout-container input[type="email"]:focus,
.checkout-container input[type="tel"]:focus,
.checkout-container select:focus,
.checkout-container textarea:focus {
    border-color: var(--primary-700) !important;
    box-shadow: 0 0 0 3px rgba(125, 90, 65, 0.15) !important;
    outline: none !important;
}

/* Shipping and Payment Options Container */
.checkout-container .payment-method-item,
.checkout-container .table-checkout-shipping-method tbody tr {
    background-color: var(--primary-50) !important;
    border: 1px dashed var(--primary-300) !important;
    border-radius: 8px !important;
    padding: 16px !important;
    margin-bottom: 16px !important;
    display: block !important;
}

/* Hide default table styles for shipping method */
.checkout-container .table-checkout-shipping-method {
    width: 100% !important;
    border-collapse: collapse !important;
}

.checkout-container .table-checkout-shipping-method td {
    padding: 0 !important;
    border: none !important;
}

/* Place Order Button styling */
.checkout-container button.action.primary.checkout,
.checkout-container #checkout-step-payment button.checkout {
    background-color: var(--primary-900) !important;
    color: var(--white) !important;
    height: 48px !important;
    border-radius: 6px !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    border: none !important;
    width: 100% !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 20px !important;
}

.checkout-container button.action.primary.checkout:hover,
.checkout-container #checkout-step-payment button.checkout:hover {
    background-color: var(--primary-800) !important;
}

/* ==========================================================================
   Shared Customer Account Pages - 1-Column Desktop Parity (Figma)
   ========================================================================== */
@media (min-width: 768px) {

    /* Set soft grey page background and margins for customer pages */
    body.account:not(.customer-account-index):not(.wishlist-index-index):not(.sales-order-history):not(.wallet-index-index):not(.customer-account-awardwowpoints):not(.customer-address-index):not(.customer-address-form) #maincontent {
        max-width: 1920px !important;
        margin: 0 auto !important;
        padding: 48px var(--page-gutter) !important;
        box-sizing: border-box !important;
        /* background-color: #F5F5F5 !important; */
        min-height: 80vh !important;
        width: 100%;
    }

    /* Convert the main content column into a premium white floating card */
    body.account:not(.customer-account-index):not(.wishlist-index-index):not(.sales-order-history):not(.wallet-index-index):not(.customer-account-awardwowpoints):not(.vault-cards-listaction):not(.customer-address-index):not(.customer-address-form) .column.main {
        /* background: #ffffff !important; */
        border-radius: 12px !important;
        /* box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.05) !important; */
        /* padding: 48px 40px !important; */
        margin-top: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 767px) {

    /* Mobile styles for consistency */
    body.account:not(.customer-account-index):not(.wishlist-index-index):not(.sales-order-history):not(.wallet-index-index):not(.customer-account-awardwowpoints):not(.customer-address-index):not(.customer-address-form) #maincontent {
        padding: 16px !important;
        /* background-color: #F5F5F5 !important; */
    }

    body.account:not(.customer-account-index):not(.wishlist-index-index):not(.sales-order-history):not(.wallet-index-index):not(.customer-account-awardwowpoints):not(.vault-cards-listaction):not(.customer-address-index):not(.customer-address-form) .column.main {
        /* background: #ffffff !important; */
        border-radius: 12px !important;
        /* padding: 24px 16px !important; */
        /* box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.03) !important; */
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 768px) {
    body.account .site-header {
        display: none !important;
    }
}

.dashboard-logout-mobile {
    color: var(--primary-900) !important;
}

/* =========================================================
   POWERPLAY POINTS BALANCE PAGE — Desktop Layout (Figma 850:16633)
   ========================================================= */

/* ---- Breadcrumb / Page Title Bar ---- */
.pp-points-title-bar {
    background-color: #ffffff;
    border-bottom: 1px solid #DFDFDF;
    padding: 10px 96px;
}

.pp-points-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
}

.pp-points-breadcrumb a {
    color: var(--primary-500);
    text-decoration: none;
}

.pp-points-breadcrumb a:hover {
    color: var(--primary-700);
}

.pp-points-breadcrumb-sep {
    color: var(--secondary-300);
}

.pp-points-breadcrumb-current {
    color: var(--primary-800);
    font-weight: 600;
}

/* ---- Outer page wrapper ---- */
.pp-points-page {
    background-color: #F5F5F5;
    min-height: 80vh;
    font-family: 'Montserrat', sans-serif;
}

.pp-points-inner {
    max-width: 1920px;
    margin: 0 auto;
    padding: 48px 96px;
    box-sizing: border-box;
}

/* ---- Page Header Row ---- */
.pp-points-header-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 8px;
}

.pp-points-page-title {
    font-size: 32px;
    font-weight: 600;
    color: var(--primary-900);
    line-height: 40px;
    margin: 0;
}

.pp-points-page-desc {
    font-size: 16px;
    font-weight: 500;
    color: var(--primary-500);
    line-height: 24px;
    margin: 6px 0 0;
}

.pp-points-divider {
    border: none;
    border-top: 1px solid var(--secondary-200);
    margin: 24px 0;
}

/* ---- Website Filter Tabs ---- */
.pp-website-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;

    margin-bottom: 20px;
    background-color: var(--primary-100);
    border-radius: 4px;
    padding: 4px;

    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;

    scrollbar-width: thin;
}

.pp-website-tab-btn {
    display: inline-flex;
    align-items: center;
    padding: 6px 16px;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    border: none;
    transition: background-color 0.2s, color 0.2s;
    background-color: var(--primary-100);
    color: var(--primary-800);
    font-family: 'Montserrat', sans-serif;

    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;

    width: 150px;
}

.pp-website-tab-btn span {
    display: block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pp-website-tab-btn.active {
    background-color: var(--primary-800);
    color: #ffffff;
    font-weight: 700;
}

.pp-website-tab-btn:hover:not(.active) {
    background-color: var(--primary-200);
}

/* ---- Main Two-Column Grid ---- */
.pp-points-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ---- Left Column ---- */
.pp-left-col {
    display: flex;
    flex-direction: row;
    gap: 24px;
    align-items: stretch;
}

/* Balance Card (dark) */
.pp-balance-card {
    background-color: var(--primary-900);
    flex-shrink: 0;
}

.pp-card-box {
    padding: 28px;
    border-radius: 10px;
    align-content: center;
    width: 420px;
}

.pp-balance-label {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-400);
    line-height: 28px;
    margin-bottom: 16px;
}

.pp-balance-amount {
    display: flex;
    gap: 10px;
    font-size: 32px;
    font-weight: 700;
    color: #ffffff;
    line-height: 40px;
    margin: 0;
}

/* Add Points Card (beige dashed) */
.pp-add-card {
    background-color: var(--primary-100);
    border: 1px dashed var(--primary-500);
    width: 400px;
    flex-shrink: 0;
}

.pp-add-card-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-800);
    margin-bottom: 16px;
}

.pp-add-input-row {
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
}

.pp-add-input {
    flex: 1;
    height: 44px;
    padding: 0 14px;
    border-radius: 4px;
    border: 1px solid var(--secondary-100);
    background-color: #ffffff;
    font-size: 16px;
    outline: none;
    transition: border-color 0.2s;
}

.pp-add-input:focus {
    border-color: var(--primary-500);
}

.pp-add-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 44px;
    width: auto;
    padding: 8px 16px;
    border-radius: 6px;
    background-color: var(--primary-800);
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
    white-space: nowrap;
}

.pp-add-btn:hover {
    background-color: var(--primary-900);
}

.pp-add-error {
    font-size: 13px;
    color: #dc2626;
    margin-top: 2px;
}

/* ---- Right Column: Transactions ---- */
.pp-transactions-card {
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0px 0px 20px 0px rgba(223, 223, 223, 0.5);
    overflow: hidden;
}

.pp-transaction-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    gap: 16px;
}

.pp-transaction-row+.pp-transaction-row {
    border-top: 1px solid var(--secondary-100);
}

.pp-transaction-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.pp-transaction-desc {
    font-size: 16px;
    font-weight: 600;
    color: var(--primary-900);
    word-break: break-word;
}

.pp-transaction-date {
    font-size: 16px;
    font-weight: 500;
    color: var(--primary-500);
}

.color-badge-block {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 700;
    color: #ffffff;
    white-space: nowrap;
    flex-shrink: 0;
}

.pp-transactions-empty {
    padding: 48px 24px;
    text-align: center;
    color: var(--primary-500);
    font-size: 16px;
}

/* View More */
.pp-view-more-row {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    /* padding: 16px 20px; */
    /* border-top: 1px solid var(--secondary-100); */
}

.pp-view-more-btn {
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    transform: translateY(-2px);
}

.pp-view-more-btn:hover .pp-view-more-arrow {
    background-color: var(--primary-300);
}

.pp-view-more-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: var(--primary-100);
    color: var(--primary-800);
    transition: background-color 0.2s;
    flex-shrink: 0;
}

/* ---- Responsive ---- */
@media (max-width: 1024px) {
    .pp-points-title-bar {
        padding: 10px 24px;
    }

    .pp-points-inner {
        padding: 32px 20px;
    }

    .pp-left-col {
        flex-direction: column;
        gap: 16px;
    }

    .pp-balance-card,
    .pp-add-card {
        width: 100%;
    }

    .pp-website-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .pp-website-tabs::-webkit-scrollbar {
        display: none;
    }

    .pp-website-tab-btn {
        flex-shrink: 0;
    }

    .pp-view-more-row .pp-view-more-arrow {
        display: none;
    }
}

@media (max-width: 640px) {
    .pp-points-page-title {
        font-size: 24px;
        line-height: 32px;
    }

    .pp-points-title-bar {
        padding: 10px 16px;
    }

    /* .pp-add-input-row {
        display: block;
        /* flex-direction: column;
        align-items: stretch;
    }

    .pp-add-input {
        width: 100%;
        height: 44px;
    } */

    /* .pp-add-btn {
        width: 100%;
    } */
}

@media (max-width: 375px) {
    .pp-add-input-row {
        display: block;
    }

    .pp-add-input {
        width: 100%;
        height: 44px;
        margin-bottom: 10px;
    }

    .pp-add-btn {
        width: 100%;
    }
}


/* =========================================================
   WOW! POINTS BALANCE PAGE — Desktop Layout (Figma 894:2884)
   ========================================================= */

/* ── Page Header ── */
.wow-page {
    font-family: 'Montserrat', sans-serif;
}

.wow-header-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 8px;
}

.wow-page-title {
    font-size: 32px;
    font-weight: 600;
    color: var(--primary-900);
    line-height: 40px;
    margin: 0;
}

.wow-page-desc {
    font-size: 16px;
    font-weight: 500;
    color: var(--primary-500);
    line-height: 24px;
    margin: 6px 0 0;
}

.wow-logout-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--primary-700, #443124);
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    font-family: 'Montserrat', sans-serif;
    transition: background-color 0.2s;
}

.wow-logout-btn:hover {
    background: var(--primary-900);
    color: #fff;
}

.wow-divider {
    border: none;
    border-top: 1px solid var(--secondary-200);
    margin: 20px 0;
}

/* ── Top Two-Column Grid ── */
.wow-top-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    align-items: start;
    margin-bottom: 40px;
}

/* ── Left: Balance Card (dark) ── */
.wow-balance-card {
    background-color: var(--primary-900);
    border-radius: 10px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 600px;
}

.wow-balance-card-label {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-400);
    line-height: 28px;
    margin: 0;
}

.wow-balance-card-amount {
    font-size: 32px;
    font-weight: 700;
    color: #ffffff;
    line-height: 40px;
    margin: 0;
}

.wow-balance-card-unit {
    /* font-size: 18px;
    font-weight: 500;
    color: var(--primary-200); */
}

.wow-balance-card-desc {
    font-size: 16px;
    font-weight: 500;
    color: var(--primary-200);
    line-height: 24px;
    margin: 0;
}

/* ── Right: Award Form Card (beige/light) ── */
.wow-award-card {
    background-color: var(--primary-100);
    border-radius: 10px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px dashed var(--primary-500);
}

.wow-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 16px;
    align-items: end;
}

.wow-field-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.wow-field-group-checkbox {
    justify-content: flex-end;
    padding-bottom: 8px;
}

.wow-label {
    font-size: 16px;
    font-weight: 600;
    color: var(--primary-800);
    margin: 0;
}

.wow-relative {
    position: relative;
}

.wow-input {
    width: 100%;
    height: 44px;
    padding: 0 14px;
    border-radius: 6px;
    border: 1px solid var(--secondary-100);
    background-color: #ffffff;
    color: var(--primary-900);
    font-size: 16px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.wow-input:focus {
    border-color: var(--primary-500);
}

.wow-input-disabled {
    background-color: #f3f4f6;
    color: #9ca3af;
    cursor: not-allowed;
}

.wow-input-caret {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: var(--primary-900);
}

.wow-input-spinner {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--primary-500);
}

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

@keyframes wow-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.wow-checkbox-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    font-weight: 600;
    color: var(--primary-800);
    cursor: pointer;
    white-space: nowrap;
}

.wow-checkbox {
    width: 20px;
    height: 20px;
    cursor: pointer;
    /* accent-color: var(--primary-800); */
    border: 1px solid var(--primary-800);
}

/* Textarea */
.wow-textarea {
    width: 100%;
    border-radius: 6px;
    border: 1px solid var(--secondary-100);
    background-color: #ffffff;
    color: var(--primary-900);
    font-size: 16px;
    padding: 8px 16px;
    resize: vertical;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
    height: 120px;
}

.wow-textarea:focus {
    border-color: var(--primary-500);
}

/* Search Dropdown */
.wow-dropdown {
    position: absolute;
    z-index: 20;
    width: 100%;
    top: calc(100% + 4px);
    left: 0;
    background-color: #ffffff;
    border: 1px solid var(--secondary-100);
    border-radius: 6px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
    overflow: hidden;
}

.wow-dropdown-item {
    padding: 10px 14px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--secondary-50, #f5f0ea);
    transition: background-color 0.15s;
}

.wow-dropdown-item:last-child {
    border-bottom: none;
}

.wow-dropdown-item:hover {
    background-color: var(--primary-100);
}

.wow-dropdown-name {
    font-size: 14px;
    font-weight: 700;
    color: var(--primary-900);
}

.wow-dropdown-email {
    font-size: 12px;
    color: var(--primary-500);
}

/* ── Recipients Footer ── */
.wow-recipients-footer {
    margin-top: 20px;
    /* border-top: 1px solid var(--primary-200); */
    /* padding-top: 16px; */
}

.wow-recipients-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.wow-recipients-count {
    font-size: 16px;
    font-weight: 600;
    color: var(--primary-800);
}

.wow-recipients-actions-row {
    display: flex;
    align-items: center;
    gap: 8px;
}

.wow-link-btn {
    background: none;
    border: none;
    padding: 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-800);
    cursor: pointer;
    transition: color 0.2s;
}

.wow-link-btn:hover {
    color: var(--primary-900);
}

.wow-actions-sep {
    color: var(--primary-800);
    height: 20px;
}

/* Recipient Tags */
.wow-recipient-tags {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 16px;
    background: #ffffff;
    border: 1px solid var(--secondary-100);
    border-radius: 4px;
    padding: 16px;
}

.wow-recipient-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: var(--primary-900);
}

.wow-tag-name {
    color: var(--primary-900);
}

.wow-tag-points {
    color: var(--primary-600);
    font-weight: 500;
}

.wow-tag-amount-input {
    width: 183px;
    border: 1px solid var(--secondary-100);
    border-radius: 4px;
    padding: 6px 8px;
    font-size: 14px;
    line-height: 24px;
    text-align: left;
    outline: none;
}

.wow-tag-remove {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-100);
    border: none;
    cursor: pointer;
    color: var(--primary-900);
    /* padding: 2px; */
    transition: color 0.2s;
    line-height: 1;
    height: 20px;
    width: 20px;
    border-radius: 50%;
}

.wow-tag-remove:hover {
    color: #dc2626;
}

.wow-error-text {
    font-size: 13px;
    color: #dc2626;
    font-weight: 600;
    margin: 10px 0 0;
}

.wow-empty-recipients {
    padding: 10px 0;
    font-size: 14px;
    color: var(--primary-500);
    font-style: italic;
}

.wow-submit-row {
    margin-top: 16px;
}

/* ── Submit Button ── */
.wow-submit-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    background-color: var(--primary-800);
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
    text-decoration: none;
}

.wow-submit-btn:hover {
    background-color: var(--primary-900);
}

.wow-submit-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ── Transaction History ── */
.wow-transactions-section {
    margin-top: 0;
}

.wow-transactions-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-900);
    margin: 0 0 16px;
}

.wow-transactions-card {
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(223, 223, 223, 0.5);
    overflow: hidden;
}

.wow-tx-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px;
    gap: 16px;
    border-top: 1px solid var(--secondary-100);
}

.wow-tx-row:first-child {
  border-top: none !important;
}

.wow-tx-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.wow-tx-desc {
    font-size: 15px;
    font-weight: 500;
    color: var(--primary-900);
}

.wow-tx-note {
    font-size: 13px;
    color: var(--primary-500);
    font-style: italic;
}

.wow-tx-date {
    font-size: 16px;
    color: var(--primary-500);
    font-weight: 600;
    width: 90%;
}

/* .wow-tx-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 6px;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #ffffff;
    white-space: nowrap;
    flex-shrink: 0;
} */

/* .wow-tx-badge-credit {
    background-color: #7B8F6A;
}

.wow-tx-badge-debit {
    background-color: #B06B5E;
} */

.wow-transactions-empty {
    padding: 48px 24px;
    text-align: center;
    color: var(--primary-500);
    font-size: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* View More */
.wow-view-more-row {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 16px 20px;
}

.wow-view-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 15px;
    font-weight: 700;
    color: var(--primary-800);
    background: none;
    border: none;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    padding: 0;
    transition: color 0.2s;
}

.wow-view-more-btn:hover {
    color: var(--primary-900);
}

.wow-view-more-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: var(--primary-100);
    color: var(--primary-800);
    transition: background-color 0.2s;
    flex-shrink: 0;
}

.wow-view-more-btn:hover .wow-view-more-arrow {
    background-color: var(--primary-200);
}

/* ── Modal ── */
.wow-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.wow-modal-center {
    position: relative;
    width: 80%;
}

.wow-modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(17, 24, 39, 0.65);
    backdrop-filter: blur(4px);
}

.wow-modal-box {
    position: relative;
    background:var(--primary-50);
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.25);
    z-index: 1;
}

.wow-modal-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-900);
    margin: 0 0 12px;
}

.wow-modal-desc {
    font-size: 14px;
    color: var(--primary-600);
    margin: 0 0 16px;
    line-height: 1.6;
}


.wow-modal-detail-row {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-900);
    padding: 4px 0;
    border-bottom: 1px solid var(--primary-200);
}

.wow-modal-detail-row:last-child {
    border-bottom: none;
}

.wow-modal-actions {
    display: flex;
    gap: 16px;
    justify-content: flex-end;
}

.wow-cancel-btn {
    display: inline-flex;
    align-items: center;
    height: 44px;
    padding: 0 24px;
    background: var(--primary-100);
    color: var(--primary-800);
    font-size: 15px;
    font-weight: 600;
    border-radius: 6px;
    border: 1px solid var(--primary-300);
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    transition: background-color 0.2s;
}

.wow-cancel-btn:hover {
    background: var(--primary-200);
}

/* ── Responsive ── */
@media (max-width: 1024px) {
    .wow-top-grid {
        grid-template-columns: 1fr;
    }

    .wow-form-row {
        grid-template-columns: 1fr 1fr;
    }

    .wow-field-group-checkbox {
        grid-column: span 2;
    }
}

@media (max-width: 992px) {
    .product-title-custom {
        font-size: 20px !important;
    }

    .product-description {
        margin-top: 0px !important;
    }

    .add-to-cart-btn-custom.w-full {
        width: auto !important;
        margin-bottom: 10px !important;
    }

    .quantity-wrapper-custom,
    .wishlist-btn-custom {
        margin-bottom: 10px !important;
    }
}

@media (max-width: 640px) {
    .wow-page-title {
        font-size: 32px;
        line-height: 40px;
        margin-bottom: 4px;
    }

    .wow-divider{
        margin: 10px 0;
    }

    .wow-page-desc {
        font-size: 14px;
        line-height: 20px;
        margin: 4px 0 0;
    }

    .wow-form-row {
        grid-template-columns: 1fr;
    }

    .wow-field-group-checkbox {
        grid-column: span 1;
    }

    .wow-modal-actions {
        flex-direction: column-reverse;
    }

    .wow-cancel-btn,
    .wow-submit-btn {
        width: 100%;
    }
}

[x-cloak] {
    display: none !important;
}


.customer-account-index .columns {
    padding: 0 !important;
    width: 100% !important;
    max-width: 100%;
}

.customer-account-index .page-main {
    margin: 0 !important;
}

.catalog-product-view .page-title.text-3xl {
    display: none !important;
}

.product-image-photo {
    width: 200px !important;
    height: 200px !important;
    opacity: 0.6;
    transform: scale(1);
    transition: all 0.5s ease;
}

.product-item-photo {
    background: #fff;
}

.related-product-slider .btn-secondary:hover {
    color: inherit !important;
}

.customer-account-edit .columns {
    padding: 0 !important;
    width: 100% !important;
}

.customer-account-edit .page-main {
    margin: 0 !important;
}

.product-item:hover .product-image-photo {
    transform: scale(1.2);
    opacity: 1;
    transition: all 0.5s ease;
}

/* ==========================================================
   Edit Profile — Figma 985:6675 Pixel-Perfect Implementation
   primary color scale: 50=#F2EBE6 100=#E9DED5 200=#DBC7B9
   300=#CCB19D 400=#BD9A81 500=#AF8465 700=#7D5A41
   800=#614632 900=#443124 950=#281D15
   ========================================================== */

/* Outer wrapper — content area padding */

.ep-page {
    max-width: 1920px;
    margin: 0 auto;
    padding: 0 0 48px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ── Title Row (Figma 985:6689) ── */
.ep-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}

.ep-title-h1 {
    font-size: 32px;
    font-weight: 600;
    color: var(--primary-900);
    /* JD - Figma-985:6689 primary/900 */
    margin: 0 0 5px;
    line-height: 1.2;
}

.ep-title-desc {
    font-size: clamp(14px, 2vw, 16px);
    font-weight: 500;
    color: var(--primary-500);
    /* JD - Figma-985:6689 primary/500 */
    margin: 0;
    line-height: 1.5;
}

.ep-logout-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: var(--primary-700);
    /* JD- Figma 985:6691 primary/700 */
    color: #ffffff;
    font-size: 16px;
    /* JD - Figma 985:6691 fontSize:16px */
    font-weight: 600;
    line-height: 24px;
    padding: 9px 18px;
    border-radius: 4px;
    /* Figma 985:6691 borderRadius:4px */
    text-decoration: none;
    white-space: nowrap;
    margin-top: 4px;
    transition: background 0.2s;
    flex-shrink: 0;
}

.ep-logout-btn:hover {
    background: var(--primary-800);
    /* JD- Figma 985:6691 primary/800 */
    color: #fff;
}

/* Divider below title (Figma 985:6700 — secondary/200) */
.ep-page-divider {
    border: none;
    border-top: 1px solid var(--primary-200);
    /* JD- Figma 985:6700 secondary/200 */
    margin: 0 0 20px;
    /* JD - Figma 985:6700 marginBottom:20px */
}

/* ── User Summary Card (Figma 1004:7843) ── */
.ep-summary {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 20px;
    position: relative;
}

.ep-summary-banner {
    background: var(--primary-900);
    /* primary/900 */
    height: 96px;
    border-radius: 10px 10px 0 0;
}

.ep-summary-body {
    background: var(--primary-100);
    /* primary/100 */
    border: 1px solid var(--primary-300);
    /* primary/300 */
    border-top: none;
    border-radius: 0 0 10px 10px;
    padding: 0 32px 28px;
    display: flex;
    align-items: flex-end;
    gap: 20px;
}

.ep-avatar-col {
    margin-top: -68px;
    flex-shrink: 0;
}

.ep-avatar-ring {
    width: 136px;
    height: 136px;
    border-radius: 50%;
    border: 5px solid var(--primary-500);
    background: var(--primary-100);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
}

.ep-avatar-ring svg {
    color: var(--primary-700);
}

.ep-info-col {
    flex: 1;
    padding-top: 20px;
}

.ep-summary-name {
    font-size: 32px;
    font-weight: 700;
    color: var(--primary-900);
    /* JD - Figma-985:6689 primary/900 */
    margin: 0 0 4px;
    line-height: 1.2;
}

.ep-summary-email {
    font-size: 20px;
    font-weight: 500;
    color: var(--primary-800);
    /* JD - Figma-985:6689 primary/800 */
    margin: 0;
}

.ep-stats-col {
    text-align: right;
    padding-top: 20px;
    flex-shrink: 0;
}

.ep-stat-value {
    font-size: 32px;
    font-weight: 700;
    color: var(--primary-900);
    /* JD - Figma-985:6689 primary/900 */
    line-height: 1;
    display: block;
}

.ep-stat-label {
    font-size: 20px;
    font-weight: 800;
    color: var(--primary-800);
    /* JD - Figma-985:6689 primary/800 */
}

/* ── Two-column cards grid ── */
.ep-cards-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 24px;
}

/* ── Shared card style (Figma 1008:8071, 1009:8229) ── */
.ep-card {
    background: var(--primary-100);
    border: 1px solid var(--primary-300);
    border-radius: 10px;
    padding: 28px 28px 24px;
}

.ep-card-header {
    margin-bottom: 20px;
}

.ep-card-title {
    font-size: 28px;
    font-weight: 700;
    color: var(--primary-800);
    /* JD - Figma 1009:8230 primary/800 */
    margin: 0 0 16px;
    /* JD - Figma 1009:8230 marginBottom:16px */
    line-height: 1.2;
}

/* Orange accent line below card title (Figma — strokes: primary/400, strokeWeight: 2px) */
.ep-card-accent {
    width: 50px;
    height: 2px;
    background: var(--primary-400);
    /* primary/400 */
    border: none;
    margin: 0;
}

/* Hide remote shopping assistance on frontend */
[x-data="initAllowShippingAssistence()"] {
    display: none !important;
}

/* ── Form fields ── */
.ep-field-group {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 20px;
}

.ep-row-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.ep-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ep-label {
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    color: var(--primary-800);
    margin-bottom: 0;
}

.ep-input {
    width: 100%;
    padding: 10px 14px;
    font-size: 16px;
    font-weight: 600;
    color: var(--primary-900);
    background: #ffffff;
    border: 1px solid var(--secondary-100);
    border-radius: 4px;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.ep-input:focus {
    border-color: #7D5A41;
    box-shadow: 0 0 0 3px rgba(125, 90, 65, 0.12);
}

.ep-input::placeholder {
    color: var(--secondary-500);
    font-weight: 500;
    line-height: 24px;
}

.ep-field-hint {
    font-size: 16px;
    font-weight: 500;
    color: var(--primary-800);
    /* JD - Figma-985:6689 primary/800 */
    line-height: 1.5;
    margin-top: 2px;
}

/* ── Password section: fields + hints side by side ── */
.ep-pw-inner {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;
}

.ep-pw-fields {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Password field with eye toggle */
.ep-pw-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.ep-pw-wrap .ep-input {
    padding-right: 44px;
}

.ep-pw-eye {
    position: absolute;
    right: 12px;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--secondary-500);
    padding: 0;
    display: flex;
    align-items: center;
    line-height: 0;
}

.ep-pw-eye:hover {
    color: var(--secondary-700);
}

/* Hints box (Figma 1009:8373 — fills:primary/50, strokes:primary/200, borderRadius:10px) */
.ep-hints {
    background: #F2EBE6;
    /* primary/50 */
    border: 1px solid #DBC7B9;
    /* primary/200 */
    border-radius: 10px;
    padding: 18px 20px;
    width: 100%;
}

.ep-hints-title {
    font-size: 16px;
    font-weight: 700;
    color: #443124;
    margin: 0 0 8px;
    line-height: 24px;
}

.ep-hints-list {
    margin: 0;
    padding-left: 16px;
    list-style: disc;
}

.ep-hints-list li {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 500;
    color: #614632;
    margin-bottom: 5px;
    line-height: 1.4;
}

/* ── Submit row (Figma 1009:8461) ── */
.ep-submit-row {
    display: flex;
    justify-content: flex-end;
}

.ep-btn-save {
    align-items: center;
    background: var(--primary-800);
    /* primary/800 */
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}

.ep-btn-save:hover {
    background: #443124;
}

/* Password strength meter */
#password-strength-meter-container {
    font-size: 13px;
    color: #AF8465;
    margin-top: 6px;
}

/* Submit-time error banner: current password missing */
.ep-pw-missing-error {
    font-size: 12px;
    color: #DC2626;
}

.ep-pw-missing-error svg {
    flex-shrink: 0;
    color: #DC2626;
}

/* Validation errors styling */
.ep-field-error-container {
    margin-top: 4px;
}

.ep-field-error-container ul.messages {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.ep-field-error-container ul.messages li {
    font-size: 13px;
    font-weight: 500;
    color: #e02424;
    /* sleek red error color */
    line-height: 1.4;
}

/* ── Responsive ── */
@media (min-width: 1024px) {
    .ep-cards-grid {
        grid-template-columns: 1fr 1.25fr;
        align-items: stretch;
    }

    .ep-pw-inner {
        flex-direction: row;
        align-items: start;
        gap: 24px;
    }

    .ep-hints {
        width: 350px;
        flex-shrink: 0;
    }
}

@media (max-width: 767px) {
    .ep-page {
        padding: 0 0 8px;
    }

    .ep-title-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding: 16px 0 12px;
    }

    .ep-title-desc {
        line-height: 1.4;
    }

    .ep-logout-btn,
    .mo-logout-btn {
        display: none !important;
    }

    .ep-page-divider {
        margin: 0 0 16px;
    }

    .ep-summary-body {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 0 16px 20px !important;
        gap: 12px !important;
    }

    .ep-avatar-col {
        margin-top: -50px !important;
        margin-bottom: 0 !important;
    }

    .ep-info-col {
        padding-top: 0 !important;
        text-align: center !important;
    }

    .ep-stats-col {
        text-align: center !important;
        padding-top: 12px !important;
        border-top: 1px solid #CCB19D !important;
        width: 100% !important;
        margin-top: 4px !important;
    }

    .ep-stat-value {
        line-height: 28px;
    }

    .ep-card {
        padding: 20px 16px !important;
    }

    /* .ep-card-title {
        font-size: 22px !important;
    } */

    .ep-row-2 {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .ep-field-group {
        gap: 12px !important;
        margin-top: 16px !important;
    }

    .ep-pw-inner {
        gap: 16px !important;
        margin-top: 16px !important;
    }

    .ep-hints {
        padding: 16px !important;
        margin-top: 8px !important;
    }

    .ep-cards-grid {
        margin-bottom: 10px;
    }

    .ep-submit-row {
        justify-content: center !important;
        margin-top: 10px !important;
    }

    .ep-btn-save {
        width: 100% !important;
        justify-content: center !important;
        padding: 12px 24px !important;
    }

    .mo-title-row>div.flex {
        justify-content: space-between !important;
        width: 100% !important;
    }

    .mo-mobile-icon-btn {
        padding: 0px !important;
    }

    .mo-subtitle {
        margin-bottom: 10px !important;
    }
}


/* ── Layout wrappers - history page ─── */

.mo-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.mo-title {
    font-family: 'Outfit', 'Montserrat', sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 40px;
    color: #443124;
    margin: 0;
}

.mo-subtitle {
    font-size: 15px;
    font-weight: 500;
    line-height: 24px;
    color: #996E50;
    margin: 0 0 20px;
}

.mo-divider {
    border: none;
    border-top: 1px solid #E9DED5;
    margin: 0 0 24px;
}

/* ── Mobile action icons ─── */
.mo-mobile-icon-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 8px;
    border-radius: 50%;
    transition: background 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mo-mobile-icon-btn:hover {
    background: #F2EBE6;
}

/* ── Logout btn ─── */
.mo-logout-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #614632;
    color: #fff;
    border-radius: 6px;
    padding: 10px 18px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: all .2s ease-in-out;
}

.mo-logout-btn:hover {
    background: #443124;
    transform: translateY(-1px);
}

/* ── Filters ─── */
.mo-filters-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 28px;
}

.mo-search-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 420px;
    max-width: 100%;
    border: 1px solid #E6E6E6;
    border-radius: 8px;
    padding: 10px 16px;
    background: #fff;
    transition: all 0.25s ease;
    padding: 8px 16px;
}

.mo-search-wrap:focus-within {
    border-color: #614632;
    box-shadow: 0 0 0 3px rgba(97, 70, 50, 0.08);
}

.mo-search-input {
    border: none;
    outline: none;
    width: 100%;
    font-size: 15px;
    font-weight: 500;
    color: #443124;
    font-family: 'Outfit', 'Montserrat', sans-serif;
    background: transparent;
    padding: 0;
}

.mo-search-input::placeholder {
    color: #8A8A8A;
}

.mo-status-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mo-status-label {
    font-size: 15px;
    font-weight: 600;
    color: #614632;
    white-space: nowrap;
}

.mo-status-select {
    width: 180px;
    padding: 10px 16px;
    border: 1px solid #E6E6E6;
    border-radius: 8px;
    background: #fff;
    font-size: 15px;
    font-weight: 600;
    color: #443124;
    font-family: 'Outfit', 'Montserrat', sans-serif;
    cursor: pointer;
    appearance: auto;
    transition: all 0.25s ease;
}

.mo-status-select:focus {
    border-color: #614632;
    box-shadow: 0 0 0 3px rgba(97, 70, 50, 0.08);
    outline: none;
}

/* ── Orders grid (2 Columns on Desktop) ─── */
.mo-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

/* ── Order card ─── */
.mo-card {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
    border: 1px solid #F0ECE9;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mo-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(97, 70, 50, 0.08);
    border-color: #E9DED5;
}

.mo-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    background: #F9F6F3;
    border-bottom: 1px solid #F0ECE9;
}

.mo-order-num {
    font-size: 18px;
    font-weight: 700;
    color: #443124;
}

.mo-order-date {
    font-size: 14px;
    font-weight: 600;
    color: #996E50;
}

.mo-card-body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1;
}

.mo-items-count {
    font-size: 15px;
    font-weight: 700;
    color: #614632;
}

.mo-product-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mo-thumbs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.mo-thumb {
    width: 80px;
    height: 80px;
    border: 1px solid #E6E6E6;
    border-radius: 8px;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
    transition: transform 0.2s ease-in-out;
}

.mo-thumb:hover {
    transform: scale(1.05);
}

.mo-thumb-img {
    max-width: 85%;
    max-height: 85%;
    object-fit: contain;
}

.mo-points-block {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
}

.mo-points-label {
    font-size: 13px;
    font-weight: 600;
    color: #996E50;
}

.mo-points-value {
    font-size: 24px;
    font-weight: 800;
    color: #614632;
}

.mo-card-footer {
    padding: 16px 20px;
    border-top: 1px solid #F0ECE9;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

.mo-status-badge {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.mo-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* ── Buttons ─── */
.mo-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    font-family: 'Outfit', 'Montserrat', sans-serif;
    text-decoration: none;
    transition: all 0.2s;
    white-space: nowrap;
}

.mo-btn--solid {
    background: #614632;
    color: #fff;
}

.mo-btn--solid:hover {
    background: #443124;
    color: #fff;
}

.mo-btn--outline {
    background: #fff;
    color: #614632;
    border: 1px solid #E9DED5;
}

.mo-btn--outline:hover {
    background: #F9F6F3;
}

/* ── Empty state ─── */
.mo-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    gap: 16px;
    text-align: center;
}

.mo-empty-text {
    font-size: 18px;
    color: #996E50;
}

/* ── Pager ─── */
.mo-pager {
    margin-top: 24px;
}

/* ── Mobile and Tablet overrides ─── */
@media (max-width: 1023px) {
    .mo-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .mo-title {
        font-size: 24px;
    }

    .mo-divider {
        margin-bottom: 16px;
    }

    .mo-tabs-wrapper {
        margin-bottom: 16px;
    }

    .mo-filters-row {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
        display: none;
        /* hidden by default, toggled via searchActive/filterActive */
    }

    .mo-filters-row--mobile-active {
        display: flex;
    }

    .mo-search-wrap {
        width: 100%;
    }

    .mo-status-wrap {
        width: 100%;
        justify-content: space-between;
    }

    .mo-status-select {
        width: 60%;
    }

    .mo-card-header {
        padding: 12px 16px;
    }

    .mo-card-body {
        padding: 16px;
    }

    .mo-points-value {
        font-size: 20px;
    }

    .mo-thumb {
        width: 70px;
        height: 70px;
    }

    .mo-card-footer {
        flex-direction: column;
        align-items: stretch;
        padding: 12px 16px;
        gap: 12px;
    }

    .mo-status-badge {
        align-self: flex-start;
    }

    .mo-actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .mo-actions>* {
        justify-content: center;
        width: 100%;
    }

    .mo-actions>form {
        display: flex;
        width: 100%;
    }

    .mo-actions>form>button {
        width: 100%;
        justify-content: center;
    }

    /* Hide scrollbars for webkit while scrolling tabs */
    .mo-tabs-wrapper::-webkit-scrollbar {
        display: none;
    }
}

.hero-slider-wrapper {
    position: relative;
    overflow: hidden;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    min-height: 565px;
}

.hero-slider-wrapper::before {
    display: none !important;
}

.hero-slider-wrapper .hero-section {
    background: transparent !important;
    min-height: 565px;
}

.hero-slider-wrapper .hero-section::before {
    display: none !important;
}

/* ── Slider Dots ── */
.hero-slider-dots {
    position: absolute;
    bottom: 24px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: 8px;
    z-index: 30;
    pointer-events: none;
}

.hero-slider-dot {
    height: 8px;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: all 0.3s ease;
    pointer-events: auto;
}

.hero-slider-dot.active {
    width: 32px;
    background-color: #E6B980;
}

.hero-slider-dot:not(.active) {
    width: 8px;
    background-color: rgba(255, 255, 255, 0.4);
}

/* ── Responsive Mobile/Tablet Styles for Hero Banner & Slider ── */
@media (max-width: 1024px) {
    .hero-slider-wrapper {
        min-height: 500px;
    }

    .hero-slider-wrapper-inside {
        min-height: 500px;
    }

    .hero-slider-wrapper .hero-section {
        min-height: 500px;
        padding: 80px 24px 60px 48px;
    }

    .hero-welcome-text,
    #hero-title {
        font-size: 24px !important;
    }

    .hero-brand-name,
    #hero-brand-title {
        font-size: 48px !important;
    }
}

@media (max-width: 767px) {

    /* Figma mobile banner: ~230px height, text + image side-by-side */
    .hero-slider-wrapper {
        min-height: 372px;
        width: 100%;
    }

    .hero-slider-wrapper-inside {
        min-height: 372px !important;
    }

    /* Override the inline min-height: 600px from hero.phtml on mobile */
    .hero-slide-item {
        min-height: 372px !important;
    }

    .hero-slider-wrapper .hero-section {
        min-height: 372px;
        padding: 20px 12px 20px 44px;
        /* Leave space on left for nav dots */
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        gap: 8px;
    }

    .hero-section {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        padding: 20px 12px 20px 44px;
        min-height: 372px;
        gap: 8px;
    }

    .hero-content {
        gap: 10px;
        max-width: 100%;
        flex: 1;
        align-items: flex-start;
        text-align: left;
    }

    .hero-badge {
        font-size: 10px;
        padding: 3px 8px;
        gap: 4px;
    }

    .hero-welcome-text,
    #hero-title {
        font-size: 14px !important;
        line-height: 1.25 !important;
    }

    .hero-brand-name,
    #hero-brand-title {
        font-size: 22px !important;
        line-height: 1.15 !important;
    }

    .hero-description {
        font-family: var(--font-heading) !important;
        font-size: 12px !important;
        line-height: 1.4 !important;
        max-width: 100% !important;
        color: var(--primary-100) !important;
        display: block !important;
        margin-top: 4px !important;
    }

    .hero-tagline {
        font-family: var(--font-heading) !important;
        font-size: 11px !important;
        line-height: 1.4 !important;
        color: var(--primary-500) !important;
        display: block !important;
        margin-top: 2px !important;
    }

    .hero-cta-btn {
        width: 120px;
        height: 36px;
        font-size: 13px;
        padding: 0 12px;
    }

    .hero-slider-wrapper .hero-accent {
        left: 16px !important;
    }

    .hero-image-wrap {
        max-width: 45%;
        width: 45%;
        flex-shrink: 0;
        justify-content: flex-end;
        margin-top: 0;
    }

    .hero-showcase-img {
        max-width: 100%;
    }
}

/* ── Slider Navigation Dots positioning and mobile overrides ── */
.slider-nav-dots {
    position: absolute !important;
    left: var(--page-gutter) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 30;
    gap: 2px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: start !important;
    right: 0;
    margin: 0 auto;
    max-width: 1920px;
}

@media (max-width: 767px) {

    .hero-slider-wrapper .hero-section,
    .hero-section {
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-bottom: 70px !important;
    }

    .hero-slider-wrapper .hero-accent.slider-nav-dots,
    .slider-nav-dots {
        position: absolute !important;
        left: 20px !important;
        bottom: 20px !important;
        top: auto !important;
        transform: none !important;
        flex-direction: row !important;
        gap: 8px !important;
        z-index: 30 !important;
        align-items: center !important;
    }

    .slider-nav-dots .hero-accent-bar {
        width: 24px !important;
        height: 8px !important;
        background: linear-gradient(90deg, #E9DED5 0%, #AF8465 100%) !important;
    }

    .slider-nav-dots .hero-accent-dot {
        width: 8px !important;
        height: 8px !important;
    }
}

/* =========================================================
   PRODUCT GALLERY ZOOM / FULLSCREEN STYLES
   ========================================================= */
body.gallery-fullscreen-active {
    overflow: hidden !important;
}

body.gallery-fullscreen-active .site-header {
    z-index: 10 !important;
}

.gallery-close-btn-container {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 200;
}

body.gallery-fullscreen-active .gallery-close-btn-container {
    position: fixed !important;
    top: 24px !important;
    right: 24px !important;
    z-index: 100000 !important;
}

@media (max-width: 767px) {
    body.gallery-fullscreen-active .gallery-close-btn-container {
        top: 12px !important;
        right: 12px !important;
    }
}

/* Make homepage main containers full width to allow full-bleed hero banner */
.cms-index-index .columns {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.cms-index-index .column.main {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.cms-index-index .hero-slider-wrapper {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* =========================================================
   LAYERED NAVIGATION / FILTERS CUSTOM STYLES
   ========================================================= */
.filter-options-content::-webkit-scrollbar {
    width: 6px;
}

.filter-options-content::-webkit-scrollbar-track {
    background: #f6ebe5;
    border-radius: 4px;
}

.filter-options-content::-webkit-scrollbar-thumb {
    background: #ccb19d;
    border-radius: 4px;
}

.filter-options-content::-webkit-scrollbar-thumb:hover {
    background: #af8465;
}

.price-slider-wrapper input[type="range"]::-webkit-slider-thumb {
    pointer-events: auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #4A2E1B;
    cursor: pointer;
    -webkit-appearance: none;
    border: 2px solid #FFFFFF;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.price-slider-wrapper input[type="range"]::-moz-range-thumb {
    pointer-events: auto;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #4A2E1B;
    cursor: pointer;
    border: 2px solid #FFFFFF;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Ensure full width layout for category and search result pages by overriding 2columns-left layout */
.catalog-category-view.page-layout-2columns-left .columns,
.catalogsearch-rpxesult-index.page-layout-2columns-left .columns {
    grid-template-columns: minmax(0px, 1fr) !important;
}

.catalog-category-view.page-layout-2columns-left .column.main,
.catalogsearch-result-index.page-layout-2columns-left .column.main {
    grid-column-start: 1 !important;
}

.catalog-category-view.page-layout-2columns-left .sidebar-additional,
.catalogsearch-result-index.page-layout-2columns-left .sidebar-additional,
.catalog-category-view.page-layout-2columns-left div.sidebar-additional,
.catalogsearch-result-index.page-layout-2columns-left div.sidebar-additional,
.catalog-category-view.page-layout-2columns-left aside.sidebar-additional,
.catalogsearch-result-index.page-layout-2columns-left aside.sidebar-additional {
    display: none !important;
}

.catalog-category-view .page-wrapper .top-container {
    border-bottom: 1px solid var(--secondary-100);
    padding-top: 20px;
}

.catalog-category-view .page-wrapper .top-container .container .page-title {
    margin-bottom: 4px;
}

.category-product-count {
    border-bottom: 1px solid var(--secondary-200);
    color: var(--primary-500);
}

/* =========================================================
   GLOBAL 1440px RESPONSIVE SCALING RATIO
   Applied to Header, Menu, Banner, Trending Rewards, and Footer
   ========================================================= */


/* =========================================================
   Merged changes from dev-merged branch (WOW Modal & Header logic)
   ========================================================= */

.shop-by-dropdown-panel .category-link:hover,
.shop-by-dropdown-panel .sub-category-link:hover {
    color: #3D2314 !important;
    text-decoration: underline !important;
    text-decoration-color: #3D2314 !important;
    text-underline-offset: 3px !important;
}

.shop-by-dropdown-panel .sub-category-link:hover::before {
    color: #3D2314 !important;
}

.wow-modal-close {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: var(--primary-100);
    border: none;
    color: var(--primary-900);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    z-index: 10;
    outline: none;
    transition: background-color 0.2s, color 0.2s;
}

.wow-modal-close:hover {
    background-color: #ffff;
    color: var(--primary-800);
}

.wow-modal-title {
    font-size: 28px;
    font-weight: 700;
    color: var(--primary-500);
    margin: 0 0 10px;
}

.wow-modal-subheader {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-bottom: 10px;
    gap: 16px;
}

.wow-modal-desc-new {
    font-size: 14px;
    font-weight: 500;
    color: var(--primary-900);
    margin: 0;
}

.wow-modal-total-badge {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-800);
    white-space: nowrap;
}

.wow-modal-details {
    border-bottom: 4px solid var(--primary-700) !important;
    border-radius: 8px;
    margin-bottom: 10px;
    overflow-y: auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px 40px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
    background: #ffff;
    padding: 12px 16px;
    overflow-y: auto;
}

@media (max-width: 768px) {
    .wow-modal-details {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
}

.wow-modal-detail-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-900);
    padding: 4px 0;
    border-bottom: none;
}

.wow-modal-detail-name {
    color:var(--primary-900);
    font-weight: 500;
    font-size: 14px;
}

.wow-modal-detail-val {
    color: var(--primary-900);
    font-weight: 600;
    font-size: 14px;
}

.wow-modal-confirm-prompt {
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-900);
    margin: 0 0 20px;
}

.wow-modal-actions {
    display: flex !important;
    gap: 12px !important;
    justify-content: flex-start !important;
}

.wow-modal-yes-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0 24px;
    background: var(--primary-800);
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s;
}

.wow-modal-yes-btn:hover {
    background: var(--primary-700);
}

.wow-modal-cancel-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0 24px;
    background: #ffff;
    color: var(--primary-700);
    font-size: 14px;
    font-weight: 700;
    border-radius: 6px;
    border: 1.5px solid var(--primary-700);
    cursor: pointer;;
    transition: background-color 0.2s, color 0.2s;
}

.wow-modal-cancel-btn:hover {
    background: var(--primary-50);
}

/* Logout Confirmation Modal Button Hover States */
.logout-modal-cancel-btn:hover {
    background-color: #DCD0C5 !important;
}

.logout-modal-confirm-btn:hover {
    background-color: #352519 !important;
}

/* =========================================================
   MOBILE RESPONSIVE OVERRIDES
   ========================================================= */
@media (max-width: 767px) {
    .wow-modal-box {
        max-width: 100% !important;
    }

    .rewards-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .reward-card-body {
        gap: 0px !important;
        padding: 10px !important;
    }

    .reward-card-footer {
        display: block !important;
    }

    .reward-card .action-container,
    .reward-card .product_addtocart_form {
        display: block !important;
        width: 100% !important;
        margin-top: 8px !important;
    }

    .reward-card .add-to-cart-btn {
        justify-content: center !important;
        width: 100% !important;
    }

    /* Hero Banner Mobile Adjustments */
    .hero-welcome-text,
    #hero-title {
        font-size: 34px !important;
        line-height: 36px !important;
    }

    /* .hero-brand-name,
    #hero-brand-title {
        font-size: 46px !important;
        line-height: 48px !important;
    } */

    .hero-description,
    .hero-tagline {
        font-size: 12px !important;
        line-height: 18px !important;
    }

    .hero-badge {
        font-size: 10px !important;
        padding: 4px 10px !important;
    }
}




/* Login Page styling */

/* 
  :root {
    --primary-100: #E4D5C9;
    --primary-200: #DBC7B9;
    --primary-300: #C5B4A6;
    --primary-500: #997359;
    --primary-700: #7D5A41;
    --primary-900: #443124;
    --white: #FFFFFF;
    --btn-bg-color: <?= $buttonColor ?>;
    --btn-text-color: <?= $buttonTextColor ?>;
    --redeem-btn-bg-color: <?= $redeemButtonColor ?>;
    --redeem-btn-text-color: <?= $redeemButtonTextColor ?>;
  } */

.login-viewport {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    box-sizing: border-box;
    font-family: var(--font-heading) !important;
    display: flex;
}

/* Centered Layout */

.layout-center .visual-container {
    display: none;
}

.layout-center .form-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: 600px;
    padding-bottom: 0;
    margin: auto;
}

/* All layouts: powered-by is outside form-container, pinned bottom-right of viewport on desktop */

.layout-right .powered-by-container {
    left: 32px;
    right: auto !important;
}

/* Left Layout */
.layout-left {
    flex-direction: row-reverse;
    align-items: stretch;
    justify-content: flex-start;
}

.layout-left .form-container {
    width: 50%;
    min-width: 600px;
    background-color: rgba(233, 222, 213, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: clamp(24px, 4vh, 40px) 32px 0;
    overflow-y: auto;
    box-sizing: border-box;
}

/* Right Layout */
.layout-right {
    flex-direction: row;
    align-items: stretch;
    justify-content: flex-start;
}

.layout-right .form-container {
    width: 50%;
    min-width: 600px;
    background-color: rgba(233, 222, 213, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: clamp(24px, 4vh, 40px) 32px 0;
    overflow-y: auto;
    box-sizing: border-box;
}

.form-container-inner {
    margin: auto 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media (max-width: 1023px) {

    .layout-left,
    .layout-right {
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding: 24px 16px;
        background-color: rgba(233, 222, 213, 1);
        background-image: none;
    }

    .layout-left .visual-container,
    .layout-right .visual-container {
        display: none;
    }

    .layout-left .form-container,
    .layout-right .form-container {
        width: 100%;
        min-width: 0;
        max-width: 600px;
        background: transparent;
        padding: 0;
        overflow-y: visible;
        margin: auto;
    }
}

.brand-logo {
    max-width: 150px;
    max-height: 80px;
    width: auto;
    height: auto;
    object-fit: contain;
    flex-shrink: 0;
    margin-bottom: 25px;
}

.login-card {
    width: 100%;
    max-width: 600px;
    box-sizing: border-box;
    background-color: var(--white);
    border-radius: 16px;
    padding: clamp(24px, 3vh, 32px);
    display: flex;
    flex-direction: column;
    gap: clamp(10px, 0vh, 39px);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.login-subtitle {
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    color: var(--primary-700);
    text-align: center;
    margin: 10px 0;
}

.fields-container {
    display: flex;
    flex-direction: column;
    gap: clamp(24px, 4.5vh, 50px);
    width: 100%;
}

.form-inputs-group {
    display: flex;
    flex-direction: column;
    gap: clamp(12px, 1.5vh, 16px);
    width: 100%;
}

.field-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    position: relative;
    margin-bottom: 0 !important;
    margin-block-end: 0 !important;
}

.login-viewport .field .messages {
    margin: 2px 0 !important;
}

.login-viewport .message {
    margin-bottom: 0 !important;
}

.login-viewport .my-4 {
    margin-top: 0 !important;
}

.personal-info-parent label,
.field-label {
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    color: var(--primary-900);
    margin-bottom: 0 !important;
}

.input-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 56px;
    box-sizing: border-box;
    border-radius: 8px;
    border: 1px solid var(--primary-200);
    background-color: var(--white);
    padding: 0 16px;
    transition: border-color 0.2s;
}

.input-box:focus-within {
    border-color: var(--primary-700);
}

.input-element {
    width: 100%;
    border: none;
    background: transparent;
    outline: none;
    font-family: var(--font-heading) !important;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--primary-900);
    padding: 0 !important;
}

.input-element::placeholder {
    color: var(--primary-300);
}

.icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    color: var(--primary-900);
}

.remember-forgot-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 20px;
    margin-top: 4px;
    margin-bottom: 8px;
}

.checkbox-group {
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
}

.checkbox-custom {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid var(--primary-900);
    background-color: var(--white);
    margin: 0;
    border-radius: 3px;
    cursor: pointer;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.checkbox-custom:checked {
    background-color: var(--primary-900);
}

.checkbox-custom:checked::after {
    content: '';
    width: 4px;
    height: 8px;
    border: solid var(--white);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    margin-bottom: 2px;
}

.text-link-sm {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--primary-900);
    text-decoration: underline;
    cursor: pointer;
    font-family: var(--font-heading) !important;
}

.text-link-sm:hover {
    color: var(--primary-700);
}

.buttons-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
}

.btn-primary,
.btn-primary:not(:hover),
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    width: 100%;
    height: 56px;
    border: none;
    border-radius: 8px;
    background-color: #443124 !important;
    color: #ffffff !important;
    font-family: var(--font-heading) !important;
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity 0.2s, filter 0.2s;
    text-decoration: none;
}

.btn-primary:hover {
    filter: brightness(0.9);
}

.btn-primary:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-secondary:hover {
    filter: brightness(0.9);
}

.btn-sso {
    width: 100%;
    height: 56px;
    border: none;
    border-radius: 8px;
    background-color: #2e6da4;
    color: var(--white);
    font-family: var(--font-heading) !important;
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s;
    text-decoration: none;
    gap: 8px;
}

.btn-sso:hover {
    background-color: #245884;
}

.sso-top-section {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
}

.or-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin-top: 24px;
}

.or-divider-line {
    flex: 1;
    height: 1px;
    background-color: var(--primary-200);
}

.or-divider-text {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--primary-500);
    white-space: nowrap;
}

.privacy-footer {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 10px 0 0;
}

/* Utility to override Magento styles if needed */

.powered-by-container {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    justify-content: flex-end;
    margin-top: 24px;
    background: #F2EBE6;
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 14px;
}

.powered-by-text {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--primary-800, #614632);
}

.powered-by-link {
    display: flex;
    align-items: center;
    gap: 4px;
    text-decoration: none;
}

.powered-by-logo {
    width: 19px;
    height: 16px;
    object-fit: contain;
}

.powered-by-brand {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--primary-800, #614632);
    text-decoration: underline;
}

@media (max-width: 1023px) {

    .powered-by-container,
    .powered-by-container {
        position: relative;
        margin-top: 0px;
        justify-content: center;
        background-color: transparent;
        padding-bottom: 10px;
    }

    .layout-right .powered-by-container {
        padding-top: 10px;
        left: 0;
    }
}

@media (min-width: 1024px) {

    .layout-center .powered-by-container,
    .layout-left .powered-by-container,
    .layout-right .powered-by-container,
    .powered-by-container {
        position: fixed;
        bottom: 24px;
        right: 32px;
        width: auto;
        margin-top: 0;
        z-index: 1001;
    }
}

@media (max-width: 1440px) {

    .layout-left .form-container,
    .layout-right .form-container {
        min-width: 550px;
        padding-top: clamp(20px, 3.2vh, 32px);
    }

    .brand-logo {
        max-width: 100px;
        max-height: 50px;
        margin-bottom: 25px;
    }

    .login-card {
        max-width: 600px;
        padding: 32px;
        gap: clamp(8px, 0vh, 32px);
    }

    .fields-container {
        gap: clamp(20px, 3.5vh, 40px);
    }

    .form-inputs-group {
        gap: clamp(10px, 1.2vh, 12px);
    }

    .field-group {
        gap: 6px;
    }

    .input-element {
        font-size: 14px;
        line-height: 20px;
    }

    .field-label,
    .personal-info-parent label {
        font-size: 14px;
        line-height: 20px;
    }

    .buttons-container {
        gap: 12px;
    }

    .btn-primary,
    .btn-primary:hover,
    .btn-primary:not(:hover),
    .btn-primary:focus,
    .btn-primary:active,
    .btn-secondary,
    .btn-secondary:hover,
    .btn-secondary:not(:hover),
    .btn-secondary:focus,
    .btn-secondary:active,
    .btn-sso,
    .btn-sso:hover,
    .btn-sso:not(:hover),
    .btn-sso:focus,
    .btn-sso:active {
        font-size: 16px;
        line-height: 24px;
    }

    .btn-secondary,
    .btn-secondary:not(:hover) {
        line-height: 0px !important;
    }

    .btn-sso {
        gap: 6px;
    }

    .or-divider {
        gap: 10px;
        margin-top: 20px;
    }
}

@media (max-width: 767px) {
    .login-viewport {
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 0 !important;
        background-image: none !important;
        background-color: var(--primary-100) !important;
        overflow-y: auto !important;
        position: relative;
    }

    .buttons-container .btn-secondary,
    .buttons-container .btn-secondary:not(:hover) {
        background-color: var(--primary-200) !important;
    }

    .form-container {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        background: transparent !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .registration-container {
        background-color: rgba(233, 222, 213, 1) !important;
    }

    #customer-login-container.login-container {
        padding: 0 !important;
    }

    .form-container-inner {
        padding: 24px 16px !important;
    }

    .login-card {
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
        gap: 10px !important;
    }

    .form-login.fields-container {
        gap: 10px !important;
    }

    .password-hints-box {
        background-color: var(--primary-200) !important;
    }

}


.layout-center {
    background-color: #1a1a1a;
    background-size: cover;
    background-position: center;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 24px 16px;
}

.layout-right .visual-container {
    width: 50%;
    flex-grow: 1;
    background-color: #1a1a1a;
    background-size: cover;
    background-position: center;
}

.layout-left .visual-container {
    width: 50%;
    flex-grow: 1;
    background-color: #1a1a1a;
    background-size: cover;
    background-position: center;
}

.btn-secondary,
.btn-secondary:not(:hover),
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
    width: 100%;
    height: 56px;
    border: none;
    border-radius: 8px;
    background-color: #E9DED5 !important;
    font-family: var(--font-heading) !important;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity 0.2s, filter 0.2s;
    text-decoration: none;
}

@media (max-width: 767px) {
    .visual-container {
        display: block !important;
        width: 100% !important;
        height: 30vh !important;
        min-height: 220px !important;
        background-size: cover !important;
        background-position: top center !important;
        flex-shrink: 0 !important;
    }
}

.viewport-content-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 600px;
    margin-top: auto;
    margin-bottom: auto;
    padding: 40px 0;
    box-sizing: border-box;
}

.login-viewport .choice label,
.login-viewport .choice .label {
    margin-bottom: 0 !important;
    display: inline-block !important;
    font-size: 14px;
    line-height: 20px;
    color: var(--primary-900) !important;
}

.login-viewport .form-input,
.login-viewport .form-select {
    width: 100%;
    height: 56px;
    box-sizing: border-box;
    border-radius: 8px;
    border: 1px solid var(--primary-200);
    background-color: var(--white);
    padding: 0 16px;
    transition: border-color 0.2s;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--primary-900);
    outline: none;
}

.login-viewport .form-input:focus,
.login-viewport .form-select:focus {
    border-color: var(--primary-700);
    box-shadow: none;
    outline: none;
}

#password-field-wrapper>ul.messages {
    display: none !important;
}

[x-data="initAllowShippingAssistence()"] {
    display: none !important;
}

.login-viewport fieldset {
    border: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
}

.login-viewport legend {
    display: none !important;
}

@media (min-width: 1500px) {
    .grid-column {
        width: 230px;
    }
}

/* contact plus service screen styling */

body.specialorder-index-index.account:not(.d1):not(.d2):not(.d3):not(.d4):not(.d5):not(.d6):not(.d7):not(.d8) #maincontent {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
}

body.specialorder-index-index.account:not(.d1):not(.d2):not(.d3):not(.d4):not(.d5):not(.d6):not(.d7):not(.d8) .columns {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
}

/* Special Order Custom Styles */
.special-order-sidebar {
    background-color: #443124 !important;
    color: #ffffff !important;
}

.special-order-sidebar .icon-box {
    background-color: #DBC7B9 !important;
    color: var(--primary-900) !important;
    border: 2px solid var(--primary-700);
    width: 44px;
    height: 44px;
    border-radius: 12px;
}

.special-order-sidebar .icon-box svg {
    stroke-width: 2;
    width: 20px;
    height: 20px;
}

.special-order-sidebar .pro-tip-box {
    background-color: #543F31 !important;
    border: 1px dashed #996E50;
    border-radius: 10px;
}

.special-order-sidebar .text-gold {
    color: #D39B75 !important;
}

.form-title-underline {
    background-color: #D39B75 !important;
}

.special-order-btn-submit:hover {
    background-color: #2A1B10 !important;
}

.special-order .form-input:focus,
.special-order .form-textarea:focus,
.special-order .form-select:focus {
    border-color: #443124 !important;
    box-shadow: 0 0 0 2px rgba(68, 49, 36, 0.15) !important;
}

.special-order .message-error {
    color: #e53e3e;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    font-weight: 500;
}

.special-order-form-container {
    padding: 48px 0;
}


.specialorder-index-index .page-main {
    padding: 0 !important;
}

.policy-info p {
    font-size: 16px;
    line-height: 24px;
    color: var(--primary-500);
    margin-bottom: 0;
    padding-bottom: 10px;
}

.policy-info p strong {
    color: var(--primary-900);
}

.service-request-form {
    padding: 24px;
}

.service-form-title {
    font-size: 28px;
    line-height: 36px;
    color: var(--primary-800);
    font-weight: 700;
    padding-bottom: 10px;
}

.special-order label {
    color: var(--primary-900);
    font-size: 16px;
    line-height: 24px;
}

.special-order .actions-toolbar {
    border: none;
}

.special-order-btn-submit {
    background-color: var(--primary-800) !important;
    color: #ffffff !important;
    transition: background-color 0.2s ease-in-out;
    border-radius: 6px;
    font-size: 16px;
}

.special-order-sidebar {
    padding: 28px;
}

.help-title {
    font-size: 32px;
    line-height: 40px;
    color: var(--white);
    padding-bottom: 10px;
    font-weight: bold;
}

.special-order-sidebar .leading-relaxed {
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    color: var(--primary-300);
    padding-bottom: 16px;
    margin-bottom: 0;
}

.txt-info {
    font-size: 20px !important;
}

.special-order-sidebar .pro-tip-box-icon {
    height: 48px;
    width: 48px;
    background: var(--primary-700) !important;
    border-color: #996E50 !important;
    display: flex;
    align-items: center;
}

.pro-tip-content {
    width: calc(100% - 48px);
}

.tip-detials-txt {
    color: var(--primary-200);
    font-size: 16px;
    line-height: 24px;
}

.tracking-wide {
    font-size: 20px;
}

.tracking-wider {
    color: var(--primary-200);
}

/* Mobile responsive tweaks */
@media (max-width: 1023px) {

    /* Submit button full width on mobile */
    .special-order-form-container .actions-toolbar {
        /* justify-content: stretch; */
        padding-top: 0 !important;
    }

    .special-order-form-container .special-order-btn-submit {
        /* width: 100%;
            justify-content: center; */
    }

    .special-order .actions-toolbar {
        flex-flow: nowrap;
        justify-content: start;
    }
}

@media (max-width: 992px) {
    .so-title-bar {
        background: transparent;
        padding: 0;
    }

    .special-order-form-container {
        padding-top: 0;
    }

    .form-title-underline {
        margin-bottom: 15px !important;
    }

    .form-inn-section .gap-6 {
        gap: calc(var(--spacing) * 4) !important;
    }
}

/* =========================================================
   Breadcrumb Styling - Jahnvi - 11-June-202
   ========================================================= */
.breadcrumb-wrappper .breadcrumb-main-text {
    font-size: 14px;
    line-height: 20px;
    color: var(--primary-500);
    font-weight: 500;
}

.breadcrumb-wrappper svg.breadcrumb-arrow {
    color: var(--primary-500);
}

.breadcrumb-wrappper .breadcrumb-main-active {
    font-size: 14px;
    line-height: 20px;
    color: var(--primary-800);
    font-weight: 600;
}

input:placeholder,
textarea:placeholder {
    color: var(--primary-500);
    font-size: 16px;
    font-weight: 500;
    opacity: 1;
}

/* input.pp-add-input:placeholder {
    color: var(--secondary-100);
    font-size: 16px;
    font-weight: 500;
    opacity: 1;
} */

#password ul.messages {
    display: none !important;
}

.field.field-reserved.field-success {
    width: 100%;
}

.back-action {
    background: var(--primary-700);
    /* primary/700 */
    color: var(--white);
}

.back-action:hover {
    background: var(--primary-900);
    /* primary/700 */
}

.badge-green {
    background: #7B8F6A;
    color: var(--white);
    border: none !important;
}

.badge-red {
    background: #B06B5E;
    color: var(--white);
    border: none !important;
}/* Stripe Express */
@-webkit-keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.box-tocart .action.tocart.payment-request-button
{
    padding: 0;
}

:root {
    --stripe-payment-button-min-width: 248px;
}

.payment-request-button {
    min-width: var(--stripe-payment-button-min-width);
    height: auto;
}

.payment-request-button.disabled,
.payment-request-button.disabled * {
    pointer-events: none !important;
}

.payment-request-button.disabled {
    opacity: 0.5;
    filter: grayscale(50%);
}

.catalog-product-view .payment-request-button {
    margin-bottom: 15px;
}

@media screen and (min-width: 768px) {
    .catalog-product-view .payment-request-button {
        margin-right: 1%;
        width: 49%;
    }
}

.stripe-payments-express-minicart {
    margin-top: 15px;
}

.stripe-payments-express-minicart .payment-request-button, .payment-request-button.cart {
    width: 100% !important;
}

.cart-summary .stripe-payments-express-minicart {
    margin-top: 0;
    margin-bottom: 25px;
}

.block-bundle-summary .box-tocart .actions .payment-request-button {
    min-width: var(--stripe-payment-button-min-width);
}