/*
 * Custom overrides for VP Neoteric.
 * Keep personal style edits here to avoid editing vendor/minified files.
 */

:root {
  --neoteric-font-family-body: "Geometria", sans-serif !important;
  --neoteric-font-family-headings: "Geometria", sans-serif !important;
}

/* Legal information pages */
.fm-legal-page {
    --fm-legal-ink: #111722;
    --fm-legal-muted: #5f6b7c;
    --fm-legal-line: #dfe9f5;
    --fm-legal-soft: #f5f9fd;
    --fm-legal-blue: #168fe6;
    --fm-legal-green: #19b96f;
    color: var(--fm-legal-ink);
    padding-bottom: clamp(3rem, 7vw, 5.5rem);
}

.fm-legal-page *,
.fm-legal-page *::before,
.fm-legal-page *::after {
    box-sizing: border-box;
}

.fm-legal-page a {
    color: inherit;
    text-decoration: none;
}

.fm-legal-page h1,
.fm-legal-page h2,
.fm-legal-page h3,
.fm-legal-page p {
    margin-top: 0;
}

.fm-legal-page p,
.fm-legal-page li {
    color: var(--fm-legal-muted);
    font-size: clamp(1rem, 1.16vw, 1.1rem);
    line-height: 1.65;
}

.fm-legal-wrap {
    width: min(1080px, calc(100% - 2rem));
    margin-inline: auto;
}

.fm-legal-hero {
    margin-top: clamp(1.5rem, 4vw, 3rem);
    padding: clamp(1.6rem, 4vw, 3rem);
    border: 1px solid var(--fm-legal-line);
    border-radius: 30px;
    background:
        radial-gradient(circle at 90% 12%, rgba(22, 143, 230, .14), transparent 28%),
        radial-gradient(circle at 12% 94%, rgba(25, 185, 111, .14), transparent 30%),
        #fff;
}

.fm-legal-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: 1rem;
    color: #007a8a;
    font-size: .92rem;
    font-weight: 700;
}

.fm-legal-eyebrow::before {
    content: "";
    width: .52rem;
    height: .52rem;
    border-radius: 50%;
    background: #ff3d7f;
}

.fm-legal-hero h1 {
    max-width: 12em;
    margin-bottom: 1rem;
}

.fm-legal-lead {
    max-width: 820px;
    margin-bottom: 0;
}

.fm-legal-nav {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: 1.2rem;
}

.fm-legal-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 2.65rem;
    padding: .65rem .9rem;
    border-radius: 999px;
    background: var(--fm-legal-soft);
    color: var(--fm-legal-ink) !important;
    font-size: .94rem;
    font-weight: 650;
}

.fm-legal-section {
    margin-top: clamp(1rem, 2.6vw, 1.6rem);
    padding: clamp(1.2rem, 2.8vw, 2rem);
    border: 1px solid var(--fm-legal-line);
    border-radius: 26px;
    background: #fff;
}

.fm-legal-section h2 {
    margin-bottom: .85rem;
}

.fm-legal-section h3 {
    margin: 1rem 0 .45rem;
}

.fm-legal-section p:last-child,
.fm-legal-section li:last-child {
    margin-bottom: 0;
}

.fm-legal-list {
    display: grid;
    gap: .55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.fm-legal-list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .65rem;
}

.fm-legal-list li::before {
    content: "";
    width: .5rem;
    height: .5rem;
    margin-top: .66rem;
    border-radius: 50%;
    background: var(--fm-legal-green);
}

.fm-legal-table {
    display: grid;
    overflow: hidden;
    margin-top: 1rem;
    border: 1px solid var(--fm-legal-line);
    border-radius: 18px;
}

.fm-legal-row {
    display: grid;
    grid-template-columns: minmax(170px, .42fr) minmax(0, 1fr);
    gap: 1rem;
    padding: .9rem 1rem;
    border-bottom: 1px solid var(--fm-legal-line);
}

.fm-legal-row:last-child {
    border-bottom: 0;
}

.fm-legal-row strong {
    color: var(--fm-legal-ink);
}

.fm-legal-row span {
    color: var(--fm-legal-muted);
    line-height: 1.55;
}

.fm-legal-note {
    margin-top: clamp(1rem, 2.6vw, 1.6rem);
    padding: clamp(1.15rem, 2.5vw, 1.7rem);
    border-radius: 24px;
    background: linear-gradient(135deg, #f3f8ff, #effff7);
    border: 1px solid var(--fm-legal-line);
}

.fm-legal-note p {
    margin-bottom: 0;
}

@media (max-width: 640px) {
    .fm-legal-wrap {
        width: min(100% - 1rem, 1080px);
    }

    .fm-legal-hero,
    .fm-legal-section,
    .fm-legal-note {
        border-radius: 22px;
    }

    .fm-legal-row {
        grid-template-columns: 1fr;
        gap: .35rem;
    }
}

/* Short FAQ pages: payment and delivery */
.fm-faq-page {
    --fm-faq-ink: #111722;
    --fm-faq-muted: #667085;
    --fm-faq-line: #dfe9f5;
    --fm-faq-soft: #f5f9fd;
    --fm-faq-blue: #168fe6;
    --fm-faq-green: #19b96f;
    --fm-faq-pink: #ff3d7f;
    color: var(--fm-faq-ink);
    padding-bottom: clamp(3rem, 7vw, 5.5rem);
}

.fm-faq-page *,
.fm-faq-page *::before,
.fm-faq-page *::after {
    box-sizing: border-box;
}

.fm-faq-page a {
    color: inherit;
    text-decoration: none;
}

.fm-faq-page h1,
.fm-faq-page h2,
.fm-faq-page h3,
.fm-faq-page p {
    margin-top: 0;
}

.fm-faq-page p {
    color: var(--fm-faq-muted);
    font-size: clamp(1rem, 1.18vw, 1.12rem);
    line-height: 1.58;
}

.fm-faq-wrap {
    width: min(1120px, calc(100% - 2rem));
    margin-inline: auto;
}

.fm-faq-hero {
    position: relative;
    overflow: hidden;
    margin-top: clamp(1.5rem, 4vw, 3rem);
    padding: clamp(1.6rem, 4vw, 3rem);
    border-radius: 30px;
    background: linear-gradient(135deg, #168fe6 0%, #18b978 100%);
    color: #fff;
    isolation: isolate;
}

.fm-faq-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: -5rem;
    bottom: -7rem;
    width: clamp(15rem, 30vw, 25rem);
    aspect-ratio: 1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .18);
}

.fm-faq-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, .92);
    font-size: .92rem;
    font-weight: 700;
}

.fm-faq-eyebrow::before {
    content: "";
    width: .52rem;
    height: .52rem;
    border-radius: 50%;
    background: var(--fm-faq-pink);
}

.fm-faq-hero h1 {
    max-width: 10em;
    margin-bottom: 1rem;
    color: #fff;
}

.fm-faq-lead {
    max-width: 760px;
    margin-bottom: 1.25rem;
    color: rgba(255, 255, 255, .92) !important;
    font-size: clamp(1.04rem, 1.55vw, 1.16rem) !important;
}

.fm-faq-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
}

.fm-faq-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 3rem;
    padding: .82rem 1.12rem;
    border-radius: 999px;
    background: #fff;
    color: var(--fm-faq-ink) !important;
    font-weight: 650;
    transition: transform .2s ease, box-shadow .2s ease;
}

.fm-faq-button svg {
    width: 1rem;
    height: 1rem;
}

.fm-faq-button:hover,
.fm-faq-button:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px rgba(12, 42, 80, .16);
}

.fm-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
    margin-top: clamp(1.2rem, 3vw, 2rem);
}

.fm-faq-item {
    padding: clamp(1.1rem, 2vw, 1.45rem);
    border: 1px solid var(--fm-faq-line);
    border-radius: 24px;
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fm-faq-item:hover {
    transform: translateY(-2px);
    border-color: rgba(22, 143, 230, .28);
    box-shadow: 0 16px 34px rgba(26, 64, 103, .08);
}

.fm-faq-item h2,
.fm-faq-item h3 {
    margin-bottom: .55rem;
    color: var(--fm-faq-ink);
}

.fm-faq-item p {
    margin-bottom: 0;
}

.fm-pickup-locations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .9rem;
    margin-top: clamp(1.2rem, 3vw, 2rem);
}

.fm-pickup-location {
    display: grid;
    gap: 1rem;
    padding: clamp(1.2rem, 2.4vw, 1.8rem);
    border: 1px solid var(--fm-faq-line);
    border-radius: 26px;
    background:
        radial-gradient(circle at 90% 14%, rgba(255, 61, 127, .1), transparent 26%),
        radial-gradient(circle at 16% 90%, rgba(25, 185, 111, .12), transparent 30%),
        #fff;
}

.fm-pickup-location__head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.fm-pickup-location h2 {
    margin-bottom: .45rem;
}

.fm-pickup-badge {
    display: inline-flex;
    align-items: center;
    min-height: 2.35rem;
    padding: .5rem .78rem;
    border-radius: 999px;
    background: var(--fm-faq-soft);
    color: var(--fm-faq-ink);
    font-weight: 700;
    white-space: nowrap;
}

.fm-pickup-location__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
}

.fm-pickup-location__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 2.75rem;
    padding: .72rem .98rem;
    border-radius: 999px;
    background: #eefbf4;
    color: #008a52 !important;
    font-weight: 650;
}

.fm-pickup-location__actions svg {
    width: 1rem;
    height: 1rem;
}

.fm-pickup-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
    margin-top: clamp(1.2rem, 3vw, 2rem);
    counter-reset: pickupStep;
}

.fm-pickup-step {
    padding: clamp(1.05rem, 2vw, 1.35rem);
    border: 1px solid var(--fm-faq-line);
    border-radius: 22px;
    background: var(--fm-faq-soft);
    counter-increment: pickupStep;
}

.fm-pickup-step::before {
    content: counter(pickupStep, decimal-leading-zero);
    display: grid;
    place-items: center;
    width: 2.55rem;
    height: 2.55rem;
    margin-bottom: .9rem;
    border-radius: 999px;
    background: #fff;
    color: #008a52;
    font-weight: 760;
}

.fm-pickup-step strong {
    display: block;
    margin-bottom: .45rem;
    color: var(--fm-faq-ink);
    font-size: 1.02rem;
}

.fm-pickup-step p {
    margin-bottom: 0;
    font-size: .98rem;
}

.fm-faq-note {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(1.2rem, 3vw, 2rem);
    padding: clamp(1.2rem, 2.5vw, 1.8rem);
    border: 1px solid var(--fm-faq-line);
    border-radius: 26px;
    background: linear-gradient(135deg, #f3f8ff, #effff7);
}

.fm-faq-note h2 {
    margin-bottom: .45rem;
}

.fm-faq-note p {
    margin-bottom: 0;
}

@media (max-width: 760px) {
    .fm-faq-wrap {
        width: min(100% - 1rem, 1120px);
    }

    .fm-faq-hero {
        margin-top: 1rem;
        padding: 1.35rem;
        border-radius: 24px;
    }

    .fm-faq-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-faq-button {
        padding-inline: .72rem;
        font-size: .9rem;
    }

    .fm-faq-grid,
    .fm-faq-note,
    .fm-pickup-locations,
    .fm-pickup-steps {
        grid-template-columns: 1fr;
    }

    .fm-pickup-location__head {
        display: grid;
    }
}

/* Partnership page */
.fm-collab-page {
    --fm-collab-ink: #111722;
    --fm-collab-muted: #657085;
    --fm-collab-line: #dfe9f5;
    --fm-collab-soft: #f5f9fd;
    --fm-collab-blue: #168fe6;
    --fm-collab-green: #19b96f;
    --fm-collab-pink: #ff3d7f;
    --fm-collab-orange: #ff9b3d;
    color: var(--fm-collab-ink);
    font-family: inherit;
    padding-bottom: clamp(3.25rem, 7vw, 6rem);
}

.fm-collab-page *,
.fm-collab-page *::before,
.fm-collab-page *::after {
    box-sizing: border-box;
}

.fm-collab-page a {
    color: inherit;
    text-decoration: none;
}

.fm-collab-page h1,
.fm-collab-page h2,
.fm-collab-page h3,
.fm-collab-page p {
    margin-top: 0;
}

.fm-collab-page p {
    color: var(--fm-collab-muted);
    font-size: clamp(1rem, 1.22vw, 1.16rem);
    line-height: 1.62;
}

.fm-collab-hero,
.fm-collab-section,
.fm-collab-final {
    width: min(1200px, calc(100% - 2rem));
    margin-inline: auto;
}

.fm-collab-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(310px, .88fr);
    gap: clamp(1rem, 2vw, 1.5rem);
    align-items: stretch;
    margin-top: clamp(1.5rem, 4vw, 3.25rem);
}

.fm-collab-hero__main,
.fm-collab-hero__side,
.fm-collab-card,
.fm-collab-format,
.fm-collab-step,
.fm-collab-faq article,
.fm-collab-final {
    border: 1px solid var(--fm-collab-line);
    border-radius: 30px;
}

.fm-collab-hero__main {
    position: relative;
    overflow: hidden;
    min-height: 560px;
    padding: clamp(2rem, 5vw, 4.5rem);
    background: linear-gradient(135deg, #148de5 0%, #1ab178 100%);
    color: #fff;
    isolation: isolate;
}

.fm-collab-hero__main::before,
.fm-collab-hero__main::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
}

.fm-collab-hero__main::before {
    width: clamp(16rem, 28vw, 25rem);
    aspect-ratio: 1;
    right: -8%;
    bottom: -18%;
}

.fm-collab-hero__main::after {
    width: clamp(8rem, 14vw, 13rem);
    aspect-ratio: 1;
    right: 18%;
    top: 16%;
}

.fm-collab-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
    color: rgba(255, 255, 255, .94);
    font-size: .92rem;
    font-weight: 700;
}

.fm-collab-eyebrow::before {
    content: "";
    width: .56rem;
    height: .56rem;
    border-radius: 50%;
    background: var(--fm-collab-pink);
}

.fm-collab-hero h1 {
    max-width: 10.5em;
    margin-bottom: clamp(1rem, 2vw, 1.4rem);
    color: #fff;
}

.fm-collab-lead {
    max-width: 760px;
    margin-bottom: clamp(1.35rem, 3vw, 2rem);
    color: rgba(255, 255, 255, .92) !important;
    font-size: clamp(1.05rem, 1.55vw, 1.16rem) !important;
    line-height: 1.58 !important;
}

.fm-collab-actions,
.fm-collab-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.fm-collab-button,
.fm-collab-final__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3.2rem;
    padding: .88rem 1.22rem;
    border-radius: 999px;
    font-weight: 650;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.fm-collab-button svg,
.fm-collab-final__actions svg {
    width: 1.08rem;
    height: 1.08rem;
    flex: 0 0 auto;
}

.fm-collab-button--light {
    background: #fff;
    color: var(--fm-collab-ink) !important;
}

.fm-collab-button--ghost {
    border: 1px solid rgba(255, 255, 255, .38);
    background: rgba(255, 255, 255, .1);
    color: #fff !important;
}

.fm-collab-button:hover,
.fm-collab-button:focus-visible,
.fm-collab-final__actions a:hover,
.fm-collab-final__actions a:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(12, 42, 80, .16);
}

.fm-collab-hero__side {
    display: grid;
    align-content: center;
    gap: 1.25rem;
    padding: clamp(1.4rem, 3vw, 2.25rem);
    background:
        radial-gradient(circle at 84% 18%, rgba(255, 61, 127, .12), transparent 28%),
        radial-gradient(circle at 16% 86%, rgba(25, 185, 111, .15), transparent 30%),
        #fff;
}

.fm-collab-hero__icon {
    display: grid;
    place-items: center;
    width: min(100%, 250px);
    aspect-ratio: 1;
    margin-inline: auto;
    border-radius: 36px;
    background: linear-gradient(145deg, #f2f8ff, #fff6fa);
}

.fm-collab-hero__icon svg {
    width: 76%;
    height: 76%;
}

.fm-collab-hero__side h2 {
    margin-bottom: .55rem;
    color: var(--fm-collab-ink);
}

.fm-collab-hero__side p {
    margin-bottom: 0;
}

.fm-collab-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.fm-collab-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 2.45rem;
    padding: .55rem .85rem;
    border-radius: 999px;
    background: var(--fm-collab-soft);
    color: var(--fm-collab-ink);
    font-size: .92rem;
    font-weight: 650;
}

.fm-collab-section {
    margin-top: clamp(3rem, 6vw, 5.25rem);
}

.fm-collab-section__head {
    display: grid;
    grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr);
    gap: clamp(1rem, 4vw, 3rem);
    align-items: start;
    margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.fm-collab-section__head h2 {
    color: var(--fm-collab-ink);
}

.fm-collab-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .9rem;
}

.fm-collab-card,
.fm-collab-format,
.fm-collab-faq article {
    padding: clamp(1.15rem, 2vw, 1.55rem);
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fm-collab-card:hover,
.fm-collab-format:hover,
.fm-collab-step:hover,
.fm-collab-faq article:hover {
    transform: translateY(-3px);
    border-color: rgba(22, 143, 230, .28);
    box-shadow: 0 18px 42px rgba(26, 64, 103, .09);
}

.fm-collab-card__icon,
.fm-collab-format__icon {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    margin-bottom: 1rem;
    border-radius: 1rem;
    background: #eef7ff;
    color: var(--fm-collab-blue);
}

.fm-collab-card:nth-child(2n) .fm-collab-card__icon,
.fm-collab-format:nth-child(2n) .fm-collab-format__icon {
    background: #eefbf4;
    color: var(--fm-collab-green);
}

.fm-collab-card:nth-child(3n) .fm-collab-card__icon,
.fm-collab-format:nth-child(3n) .fm-collab-format__icon {
    background: #fff3e8;
    color: var(--fm-collab-orange);
}

.fm-collab-card__icon svg,
.fm-collab-format__icon svg {
    width: 1.55rem;
    height: 1.55rem;
}

.fm-collab-card h3,
.fm-collab-format h3,
.fm-collab-faq h3 {
    margin-bottom: .55rem;
    color: var(--fm-collab-ink);
}

.fm-collab-card p,
.fm-collab-format p,
.fm-collab-faq p {
    margin-bottom: 0;
}

.fm-collab-formats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
}

.fm-collab-format {
    min-height: 220px;
}

.fm-collab-brief {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-collab-brief__panel {
    position: relative;
    overflow: hidden;
    padding: clamp(1.35rem, 3vw, 2.2rem);
    border: 1px solid var(--fm-collab-line);
    border-radius: 30px;
    background: linear-gradient(135deg, #f3f8ff, #effff7);
}

.fm-collab-brief__panel::after {
    content: "";
    position: absolute;
    right: -4rem;
    bottom: -5rem;
    width: 15rem;
    aspect-ratio: 1;
    border-radius: 999px;
    background: rgba(22, 143, 230, .11);
}

.fm-collab-brief__list {
    display: grid;
    gap: .75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.fm-collab-brief__list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .7rem;
    align-items: start;
    padding: 1rem;
    border-radius: 1.1rem;
    background: #fff;
    color: var(--fm-collab-muted);
    line-height: 1.5;
}

.fm-collab-brief__list li::before {
    content: "";
    width: .55rem;
    height: .55rem;
    margin-top: .45rem;
    border-radius: 50%;
    background: var(--fm-collab-green);
}

.fm-collab-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.fm-collab-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 61, 127, .12), transparent 26%),
        linear-gradient(135deg, #f3f8ff, #effff7);
}

.fm-collab-final h2 {
    margin-bottom: .5rem;
    color: var(--fm-collab-ink);
}

.fm-collab-final p {
    margin-bottom: 0;
}

.fm-collab-final__actions a {
    background: #fff;
    color: var(--fm-collab-ink) !important;
}

@media (max-width: 1100px) {
    .fm-collab-formats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .fm-collab-hero,
    .fm-collab-section__head,
    .fm-collab-brief,
    .fm-collab-final {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 640px) {
    .fm-collab-page {
        padding-bottom: 3.25rem;
    }

    .fm-collab-hero,
    .fm-collab-section,
    .fm-collab-final {
        width: min(100% - 1rem, 1200px);
    }

    .fm-collab-hero {
        margin-top: 1rem;
    }

    .fm-collab-hero__main {
        min-height: auto;
        padding: 1.35rem;
        border-radius: 24px;
    }

    .fm-collab-hero__side,
    .fm-collab-card,
    .fm-collab-format,
    .fm-collab-faq article,
    .fm-collab-final,
    .fm-collab-brief__panel {
        border-radius: 22px;
    }

    .fm-collab-actions,
    .fm-collab-final__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-collab-button,
    .fm-collab-final__actions a {
        padding-inline: .75rem;
        font-size: .9rem;
    }

    .fm-collab-grid,
    .fm-collab-formats,
    .fm-collab-faq {
        grid-template-columns: 1fr;
    }
}

/* Business customers page */
.fm-business-page {
    --fm-biz-ink: #111722;
    --fm-biz-muted: #667085;
    --fm-biz-line: #dfe9f5;
    --fm-biz-soft: #f5f9fd;
    --fm-biz-blue: #168fe6;
    --fm-biz-green: #20bf6b;
    --fm-biz-pink: #ff3d7f;
    --fm-biz-orange: #ff9b3d;
    color: var(--fm-biz-ink);
    font-family: inherit;
    padding-bottom: clamp(3rem, 7vw, 6rem);
}

.fm-business-page *,
.fm-business-page *::before,
.fm-business-page *::after {
    box-sizing: border-box;
}

.fm-business-page a {
    color: inherit;
    text-decoration: none;
}

.fm-business-page h1,
.fm-business-page h2,
.fm-business-page h3,
.fm-business-page p {
    margin-top: 0;
}

.fm-business-page p {
    color: var(--fm-biz-muted);
    font-size: clamp(1rem, 1.22vw, 1.18rem);
    line-height: 1.62;
}

.fm-business-hero,
.fm-business-section,
.fm-business-final {
    width: min(1200px, calc(100% - 2rem));
    margin-inline: auto;
}

.fm-business-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(310px, .9fr);
    gap: clamp(1rem, 2vw, 1.5rem);
    align-items: stretch;
    margin-top: clamp(1.5rem, 4vw, 3.25rem);
}

.fm-business-hero__main,
.fm-business-hero__side,
.fm-business-card,
.fm-business-format,
.fm-business-step,
.fm-business-faq article,
.fm-business-final {
    border: 1px solid var(--fm-biz-line);
    border-radius: 30px;
}

.fm-business-hero__main {
    position: relative;
    overflow: hidden;
    min-height: 560px;
    padding: clamp(2rem, 5vw, 4.5rem);
    background: linear-gradient(135deg, #111827 0%, #18365a 100%);
    color: #fff;
    isolation: isolate;
}

.fm-business-hero__main::before,
.fm-business-hero__main::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
}

.fm-business-hero__main::before {
    width: clamp(16rem, 28vw, 25rem);
    aspect-ratio: 1;
    right: -8%;
    bottom: -18%;
}

.fm-business-hero__main::after {
    width: clamp(8rem, 14vw, 13rem);
    aspect-ratio: 1;
    right: 17%;
    top: 17%;
}

.fm-business-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
    color: rgba(255, 255, 255, .9);
    font-size: .92rem;
    font-weight: 720;
}

.fm-business-eyebrow::before {
    content: "";
    width: .56rem;
    height: .56rem;
    border-radius: 50%;
    background: var(--fm-biz-pink);
}

.fm-business-hero h1 {
    max-width: 10em;
    color: #fff;
    margin-bottom: clamp(1rem, 2vw, 1.4rem);
}

.fm-business-lead {
    max-width: 760px;
    color: rgba(255, 255, 255, .88) !important;
    font-size: clamp(1.05rem, 1.55vw, 1.18rem) !important;
    line-height: 1.58 !important;
    margin-bottom: clamp(1.35rem, 3vw, 2rem);
}

.fm-business-actions,
.fm-business-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.fm-business-button,
.fm-business-final__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3.25rem;
    padding: .9rem 1.25rem;
    border-radius: 999px;
    font-weight: 720;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.fm-business-button svg,
.fm-business-final__actions svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
}

.fm-business-button--light {
    background: #fff;
    color: var(--fm-biz-ink) !important;
}

.fm-business-button--ghost {
    border: 1px solid rgba(255, 255, 255, .34);
    background: rgba(255, 255, 255, .09);
    color: #fff !important;
}

.fm-business-button:hover,
.fm-business-button:focus-visible,
.fm-business-final__actions a:hover,
.fm-business-final__actions a:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(12, 42, 80, .16);
}

.fm-business-hero__side {
    display: grid;
    align-content: center;
    gap: 1.2rem;
    padding: clamp(1.4rem, 3vw, 2.25rem);
    background:
        radial-gradient(circle at 86% 18%, rgba(255, 61, 127, .13), transparent 28%),
        radial-gradient(circle at 16% 86%, rgba(32, 191, 107, .14), transparent 30%),
        #fff;
}

.fm-business-hero__icon {
    display: grid;
    place-items: center;
    width: min(100%, 250px);
    aspect-ratio: 1;
    margin-inline: auto;
    border-radius: 36px;
    background: linear-gradient(145deg, #f2f8ff, #fff6fa);
}

.fm-business-hero__icon svg {
    width: 74%;
    height: 74%;
}

.fm-business-hero__side h2 {
    color: var(--fm-biz-ink);
    margin-bottom: .55rem;
}

.fm-business-hero__side p {
    margin-bottom: 0;
}

.fm-business-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
}

.fm-business-metrics div {
    padding: .9rem;
    border-radius: 1.15rem;
    background: var(--fm-biz-soft);
}

.fm-business-metrics strong {
    display: block;
    color: var(--fm-biz-ink);
    font-size: clamp(1.2rem, 2vw, 1.65rem);
    line-height: 1;
}

.fm-business-metrics span {
    display: block;
    margin-top: .35rem;
    color: var(--fm-biz-muted);
    font-size: .88rem;
    line-height: 1.35;
}

.fm-business-section {
    margin-top: clamp(3rem, 6vw, 5.25rem);
}

.fm-business-section__head {
    display: grid;
    grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr);
    gap: clamp(1rem, 4vw, 3rem);
    align-items: start;
    margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.fm-business-section__head h2 {
    color: var(--fm-biz-ink);
}

.fm-business-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .9rem;
}

.fm-business-card,
.fm-business-format,
.fm-business-faq article {
    padding: clamp(1.15rem, 2vw, 1.55rem);
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fm-business-card:hover,
.fm-business-format:hover,
.fm-business-step:hover,
.fm-business-faq article:hover {
    transform: translateY(-3px);
    border-color: rgba(22, 143, 230, .28);
    box-shadow: 0 18px 42px rgba(26, 64, 103, .09);
}

.fm-business-card__icon,
.fm-business-format__icon {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    margin-bottom: 1rem;
    border-radius: 1rem;
    background: #eef7ff;
    color: var(--fm-biz-blue);
}

.fm-business-card:nth-child(2n) .fm-business-card__icon,
.fm-business-format:nth-child(2n) .fm-business-format__icon {
    background: #eefbf4;
    color: var(--fm-biz-green);
}

.fm-business-card__icon svg,
.fm-business-format__icon svg {
    width: 1.55rem;
    height: 1.55rem;
}

.fm-business-card h3,
.fm-business-format h3,
.fm-business-faq h3 {
    color: var(--fm-biz-ink);
    margin-bottom: .55rem;
}

.fm-business-card p,
.fm-business-format p,
.fm-business-faq p {
    margin-bottom: 0;
}

.fm-business-formats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
}

.fm-business-format {
    min-height: 230px;
}

.fm-business-process {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .85rem;
    counter-reset: businessStep;
}

.fm-business-step {
    position: relative;
    min-height: 230px;
    padding: clamp(1.15rem, 2vw, 1.55rem);
    background: var(--fm-biz-soft);
    counter-increment: businessStep;
}

.fm-business-step::before {
    content: counter(businessStep, decimal-leading-zero);
    display: grid;
    place-items: center;
    width: 2.7rem;
    height: 2.7rem;
    margin-bottom: 1rem;
    border-radius: 999px;
    background: #fff;
    color: #007a8a;
    font-weight: 780;
}

.fm-business-step strong {
    display: block;
    margin-bottom: .5rem;
    color: var(--fm-biz-ink);
    font-size: 1.05rem;
    line-height: 1.25;
}

.fm-business-step p {
    margin-bottom: 0;
    font-size: .98rem;
    line-height: 1.5;
}

.fm-business-docs {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-business-docs__panel {
    padding: clamp(1.35rem, 3vw, 2.2rem);
    border-radius: 30px;
    background: linear-gradient(135deg, #f0fff7, #f3f8ff);
    border: 1px solid var(--fm-biz-line);
}

.fm-business-docs__panel h2 {
    margin-bottom: .7rem;
}

.fm-business-docs__list {
    display: grid;
    gap: .75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.fm-business-docs__list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .7rem;
    align-items: start;
    padding: 1rem;
    border-radius: 1.1rem;
    background: #fff;
    color: var(--fm-biz-muted);
    line-height: 1.5;
}

.fm-business-docs__list li::before {
    content: "";
    width: .55rem;
    height: .55rem;
    margin-top: .45rem;
    border-radius: 50%;
    background: var(--fm-biz-green);
}

.fm-business-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.fm-business-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 61, 127, .12), transparent 26%),
        linear-gradient(135deg, #f3f8ff, #effff7);
}

.fm-business-final h2 {
    color: var(--fm-biz-ink);
    margin-bottom: .5rem;
}

.fm-business-final p {
    margin-bottom: 0;
}

.fm-business-final__actions a {
    background: #fff;
    color: var(--fm-biz-ink) !important;
}

@media (max-width: 1100px) {
    .fm-business-process {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

@media (max-width: 980px) {
    .fm-business-hero,
    .fm-business-section__head,
    .fm-business-docs,
    .fm-business-final {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 640px) {
    .fm-business-page {
        padding-bottom: 3.25rem;
    }

    .fm-business-hero,
    .fm-business-section,
    .fm-business-final {
        width: min(100% - 1rem, 1200px);
    }

    .fm-business-hero {
        margin-top: 1rem;
    }

    .fm-business-hero__main {
        min-height: auto;
        padding: 1.35rem;
        border-radius: 24px;
    }

    .fm-business-hero__side,
    .fm-business-card,
    .fm-business-format,
    .fm-business-step,
    .fm-business-faq article,
    .fm-business-final {
        border-radius: 22px;
    }

    .fm-business-actions,
    .fm-business-final__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-business-button,
    .fm-business-final__actions a {
        padding-inline: .75rem;
        font-size: .92rem;
    }

    .fm-business-grid,
    .fm-business-formats,
    .fm-business-process,
    .fm-business-faq {
        grid-template-columns: 1fr;
    }

    .fm-business-metrics {
        grid-template-columns: 1fr;
    }
}

/* Legal details page */
.fm-requisites-page {
    --fm-req-ink: #111722;
    --fm-req-muted: #657083;
    --fm-req-line: #dfe9f5;
    --fm-req-soft: #f5f9fd;
    --fm-req-blue: #168fe6;
    --fm-req-green: #20bf6b;
    --fm-req-pink: #ff3d7f;
    color: var(--fm-req-ink);
    font-family: inherit;
    padding-bottom: clamp(3rem, 7vw, 6rem);
}

.fm-requisites-page *,
.fm-requisites-page *::before,
.fm-requisites-page *::after {
    box-sizing: border-box;
}

.fm-requisites-page a {
    color: inherit;
    text-decoration: none;
}

.fm-requisites-page h1,
.fm-requisites-page h2,
.fm-requisites-page h3,
.fm-requisites-page p {
    margin-top: 0;
}

.fm-requisites-page p {
    color: var(--fm-req-muted);
    font-size: clamp(1rem, 1.22vw, 1.18rem);
    line-height: 1.62;
}

.fm-requisites-hero,
.fm-requisites-section,
.fm-requisites-final {
    width: min(1200px, calc(100% - 2rem));
    margin-inline: auto;
}

.fm-requisites-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(310px, .92fr);
    gap: clamp(1rem, 2vw, 1.5rem);
    align-items: stretch;
    margin-top: clamp(1.5rem, 4vw, 3.25rem);
}

.fm-requisites-hero__main,
.fm-requisites-hero__side,
.fm-requisites-card,
.fm-requisites-use article,
.fm-requisites-final {
    border: 1px solid var(--fm-req-line);
    border-radius: 30px;
}

.fm-requisites-hero__main {
    position: relative;
    overflow: hidden;
    min-height: 510px;
    padding: clamp(2rem, 5vw, 4.5rem);
    background: linear-gradient(135deg, #111827 0%, #1d3150 100%);
    color: #fff;
    isolation: isolate;
}

.fm-requisites-hero__main::before {
    content: "";
    position: absolute;
    z-index: -1;
    right: -6%;
    bottom: -18%;
    width: clamp(16rem, 30vw, 26rem);
    aspect-ratio: 1;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(22, 143, 230, .42), transparent 64%);
}

.fm-requisites-hero__main::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: 10%;
    top: 16%;
    width: clamp(8rem, 14vw, 12rem);
    aspect-ratio: 1;
    border-radius: 42%;
    background: rgba(255, 255, 255, .08);
    transform: rotate(14deg);
}

.fm-requisites-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
    color: rgba(255, 255, 255, .86);
    font-size: .92rem;
    font-weight: 720;
}

.fm-requisites-eyebrow::before {
    content: "";
    width: .56rem;
    height: .56rem;
    border-radius: 50%;
    background: var(--fm-req-pink);
}

.fm-requisites-hero h1 {
    max-width: 8.8em;
    color: #fff;
    font-size: clamp(2.45rem, 5vw, 5rem);
    font-weight: 820;
    line-height: 1.02;
    letter-spacing: 0;
    margin-bottom: clamp(1.1rem, 2vw, 1.5rem);
}

.fm-requisites-lead {
    max-width: 720px;
    color: rgba(255, 255, 255, .86) !important;
    font-size: clamp(1.08rem, 1.45vw, 1.3rem) !important;
    line-height: 1.58 !important;
    margin-bottom: clamp(1.4rem, 3vw, 2rem);
}

.fm-requisites-actions,
.fm-requisites-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.fm-requisites-button,
.fm-requisites-final__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3.25rem;
    padding: .9rem 1.25rem;
    border-radius: 999px;
    font-weight: 720;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.fm-requisites-button svg,
.fm-requisites-final__actions svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
}

.fm-requisites-button--light {
    background: #fff;
    color: var(--fm-req-ink) !important;
}

.fm-requisites-button--ghost {
    border: 1px solid rgba(255, 255, 255, .34);
    background: rgba(255, 255, 255, .09);
    color: #fff !important;
}

.fm-requisites-button:hover,
.fm-requisites-button:focus-visible,
.fm-requisites-final__actions a:hover,
.fm-requisites-final__actions a:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(12, 42, 80, .16);
}

.fm-requisites-hero__side {
    display: grid;
    align-content: space-between;
    gap: 1rem;
    padding: clamp(1.4rem, 3vw, 2.25rem);
    background:
        radial-gradient(circle at 84% 16%, rgba(32, 191, 107, .16), transparent 28%),
        radial-gradient(circle at 12% 90%, rgba(22, 143, 230, .14), transparent 30%),
        #fff;
}

.fm-requisites-document {
    display: grid;
    gap: 1.2rem;
}

.fm-requisites-document__icon {
    display: grid;
    place-items: center;
    width: min(100%, 250px);
    aspect-ratio: 1;
    margin-inline: auto;
    border-radius: 36px;
    background: linear-gradient(145deg, #f2f8ff, #fff6fa);
}

.fm-requisites-document__icon svg {
    width: 72%;
    height: 72%;
}

.fm-requisites-document h2 {
    color: var(--fm-req-ink);
    font-size: clamp(1.65rem, 2.4vw, 2.45rem);
    font-weight: 780;
    line-height: 1.08;
    margin-bottom: .55rem;
}

.fm-requisites-document p {
    margin-bottom: 0;
}

.fm-requisites-pills {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
}

.fm-requisites-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 2.4rem;
    padding: .55rem .9rem;
    border-radius: 999px;
    background: var(--fm-req-soft);
    color: var(--fm-req-ink);
    font-weight: 720;
}

.fm-requisites-section {
    margin-top: clamp(3rem, 6vw, 5.25rem);
}

.fm-requisites-section__head {
    display: grid;
    grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr);
    gap: clamp(1rem, 4vw, 3rem);
    align-items: start;
    margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.fm-requisites-section__head h2 {
    color: var(--fm-req-ink);
    font-size: clamp(1.85rem, 3.4vw, 3.2rem);
    font-weight: 780;
    line-height: 1.08;
    letter-spacing: 0;
}

.fm-requisites-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.fm-requisites-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    min-height: 126px;
    padding: clamp(1.15rem, 2vw, 1.5rem);
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fm-requisites-card:hover {
    transform: translateY(-3px);
    border-color: rgba(22, 143, 230, .32);
    box-shadow: 0 18px 38px rgba(26, 64, 103, .09);
}

.fm-requisites-card span {
    display: block;
    margin-bottom: .45rem;
    color: var(--fm-req-muted);
    font-size: .9rem;
    font-weight: 720;
    text-transform: uppercase;
}

.fm-requisites-card strong {
    display: block;
    color: var(--fm-req-ink);
    font-size: clamp(1.05rem, 1.35vw, 1.24rem);
    font-weight: 720;
    line-height: 1.35;
}

.fm-requisites-card__icon {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 1rem;
    background: #eef7ff;
    color: var(--fm-req-blue);
}

.fm-requisites-card:nth-child(2n) .fm-requisites-card__icon {
    background: #eefbf4;
    color: var(--fm-req-green);
}

.fm-requisites-card__icon svg {
    width: 1.55rem;
    height: 1.55rem;
}

.fm-requisites-card--wide {
    grid-column: 1 / -1;
}

.fm-requisites-use {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
}

.fm-requisites-use article {
    min-height: 210px;
    padding: clamp(1.15rem, 2vw, 1.55rem);
    background: var(--fm-req-soft);
}

.fm-requisites-use span {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    margin-bottom: 1rem;
    border-radius: 1rem;
    background: #fff;
    color: var(--fm-req-blue);
}

.fm-requisites-use svg {
    width: 1.55rem;
    height: 1.55rem;
}

.fm-requisites-use h3 {
    color: var(--fm-req-ink);
    font-size: clamp(1.15rem, 1.45vw, 1.36rem);
    font-weight: 760;
    line-height: 1.2;
    margin-bottom: .55rem;
}

.fm-requisites-use p {
    margin-bottom: 0;
}

.fm-requisites-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background:
        radial-gradient(circle at 92% 18%, rgba(255, 61, 127, .12), transparent 26%),
        linear-gradient(135deg, #effff7, #f3f8ff);
}

.fm-requisites-final h2 {
    color: var(--fm-req-ink);
    font-size: clamp(1.7rem, 3vw, 2.75rem);
    font-weight: 780;
    line-height: 1.08;
    margin-bottom: .5rem;
}

.fm-requisites-final p {
    margin-bottom: 0;
}

.fm-requisites-final__actions a {
    background: #fff;
    color: var(--fm-req-ink) !important;
}

@media (max-width: 980px) {
    .fm-requisites-hero,
    .fm-requisites-section__head,
    .fm-requisites-final {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 640px) {
    .fm-requisites-page {
        padding-bottom: 3.25rem;
    }

    .fm-requisites-hero,
    .fm-requisites-section,
    .fm-requisites-final {
        width: min(100% - 1rem, 1200px);
    }

    .fm-requisites-hero {
        margin-top: 1rem;
    }

    .fm-requisites-hero__main {
        min-height: auto;
        padding: 1.35rem;
        border-radius: 24px;
    }

    .fm-requisites-hero__side,
    .fm-requisites-card,
    .fm-requisites-use article,
    .fm-requisites-final {
        border-radius: 22px;
    }

    .fm-requisites-hero h1 {
        max-width: 9em;
        font-size: clamp(2.1rem, 11vw, 3.2rem);
    }

    .fm-requisites-actions,
    .fm-requisites-final__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-requisites-button,
    .fm-requisites-final__actions a {
        padding-inline: .75rem;
        font-size: .92rem;
    }

    .fm-requisites-grid,
    .fm-requisites-use {
        grid-template-columns: 1fr;
    }

    .fm-requisites-card {
        min-height: auto;
    }

    .fm-requisites-final {
        margin-top: 2.25rem;
    }
}

/* Cookies info page */
.fm-cookies-page {
    --fm-cookie-ink: #111722;
    --fm-cookie-muted: #647084;
    --fm-cookie-line: #dfeaf5;
    --fm-cookie-soft: #f5f9fd;
    --fm-cookie-blue: #168fe6;
    --fm-cookie-green: #20bf6b;
    --fm-cookie-pink: #ff3d7f;
    --fm-cookie-orange: #ff9b3d;
    color: var(--fm-cookie-ink);
    font-family: inherit;
    padding-bottom: clamp(3rem, 7vw, 6rem);
}

.fm-cookies-page *,
.fm-cookies-page *::before,
.fm-cookies-page *::after {
    box-sizing: border-box;
}

.fm-cookies-page a {
    color: inherit;
    text-decoration: none;
}

.fm-cookies-page h1,
.fm-cookies-page h2,
.fm-cookies-page h3,
.fm-cookies-page p {
    margin-top: 0;
}

.fm-cookies-page p {
    color: var(--fm-cookie-muted);
    font-size: clamp(1rem, 1.22vw, 1.18rem);
    line-height: 1.62;
}

.fm-cookies-hero,
.fm-cookies-section,
.fm-cookies-final {
    width: min(1200px, calc(100% - 2rem));
    margin-inline: auto;
}

.fm-cookies-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
    gap: clamp(1rem, 2vw, 1.5rem);
    margin-top: clamp(1.5rem, 4vw, 3.25rem);
    align-items: stretch;
}

.fm-cookies-hero__main,
.fm-cookies-hero__side,
.fm-cookies-card,
.fm-cookies-browser,
.fm-cookies-faq article,
.fm-cookies-final {
    border: 1px solid var(--fm-cookie-line);
    border-radius: 30px;
}

.fm-cookies-hero__main {
    position: relative;
    overflow: hidden;
    min-height: 520px;
    padding: clamp(2rem, 5vw, 4.5rem);
    background: linear-gradient(135deg, #0b8ee8 0%, #24a8ef 100%);
    color: #fff;
    isolation: isolate;
}

.fm-cookies-hero__main::before,
.fm-cookies-hero__main::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .2);
}

.fm-cookies-hero__main::before {
    width: clamp(15rem, 28vw, 25rem);
    aspect-ratio: 1;
    right: -7%;
    bottom: -18%;
}

.fm-cookies-hero__main::after {
    width: clamp(8rem, 14vw, 13rem);
    aspect-ratio: 1;
    right: 15%;
    top: 18%;
}

.fm-cookies-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: clamp(1.2rem, 2vw, 1.8rem);
    color: rgba(255, 255, 255, .92);
    font-size: .92rem;
    font-weight: 720;
}

.fm-cookies-page .fm-cookies-eyebrow {
    color: rgba(255, 255, 255, .92);
}

.fm-cookies-eyebrow::before {
    content: "";
    width: .56rem;
    height: .56rem;
    border-radius: 50%;
    background: var(--fm-cookie-pink);
}

.fm-cookies-hero h1 {
    max-width: 8.5em;
    color: #fff;
    font-size: clamp(2.45rem, 5vw, 5rem);
    font-weight: 820;
    line-height: 1.02;
    letter-spacing: 0;
    margin-bottom: clamp(1.1rem, 2vw, 1.5rem);
}

.fm-cookies-lead {
    max-width: 700px;
    color: rgba(255, 255, 255, .9) !important;
    font-size: clamp(1.08rem, 1.45vw, 1.3rem) !important;
    line-height: 1.58 !important;
    margin-bottom: clamp(1.4rem, 3vw, 2rem);
}

.fm-cookies-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.fm-cookies-button,
.fm-cookies-final a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3.25rem;
    padding: .9rem 1.25rem;
    border-radius: 999px;
    font-weight: 720;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.fm-cookies-button svg,
.fm-cookies-final a svg {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
}

.fm-cookies-button--light {
    background: #fff;
    color: var(--fm-cookie-ink) !important;
}

.fm-cookies-button--ghost {
    border: 1px solid rgba(255, 255, 255, .42);
    background: rgba(255, 255, 255, .12);
    color: #fff !important;
}

.fm-cookies-button:hover,
.fm-cookies-button:focus-visible,
.fm-cookies-final a:hover,
.fm-cookies-final a:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 18px 38px rgba(12, 42, 80, .16);
}

.fm-cookies-hero__side {
    display: grid;
    align-content: center;
    gap: clamp(1.15rem, 2.4vw, 2rem);
    padding: clamp(1.4rem, 3vw, 2.25rem);
    background:
        radial-gradient(circle at 76% 20%, rgba(255, 61, 127, .16), transparent 30%),
        radial-gradient(circle at 18% 86%, rgba(32, 191, 107, .15), transparent 32%),
        #fff;
}

.fm-cookies-hero__icon {
    display: grid;
    place-items: center;
    width: min(100%, 230px);
    aspect-ratio: 1;
    margin-inline: auto;
    border-radius: 36px;
    background: linear-gradient(145deg, #fff7fb, #eef9f2);
}

.fm-cookies-hero__icon svg {
    width: 72%;
    height: 72%;
}

.fm-cookies-hero__side h2 {
    margin-bottom: .55rem;
    color: var(--fm-cookie-ink);
    font-size: clamp(1.65rem, 2.4vw, 2.45rem);
    font-weight: 780;
    line-height: 1.08;
}

.fm-cookies-hero__side p {
    margin-bottom: 0;
}

.fm-cookies-pills {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: 1.1rem;
}

.fm-cookies-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 2.4rem;
    padding: .55rem .9rem;
    border-radius: 999px;
    background: var(--fm-cookie-soft);
    color: var(--fm-cookie-ink);
    font-weight: 720;
}

.fm-cookies-section {
    margin-top: clamp(3rem, 6vw, 5.25rem);
}

.fm-cookies-section__head {
    display: grid;
    grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr);
    gap: clamp(1rem, 4vw, 3rem);
    align-items: start;
    margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.fm-cookies-section__head h2 {
    color: var(--fm-cookie-ink);
    font-size: clamp(1.85rem, 3.4vw, 3.2rem);
    font-weight: 780;
    line-height: 1.08;
    letter-spacing: 0;
}

.fm-cookies-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(.85rem, 1.6vw, 1.25rem);
}

.fm-cookies-card {
    min-height: 250px;
    padding: clamp(1.25rem, 2.2vw, 1.8rem);
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fm-cookies-card:hover {
    transform: translateY(-4px);
    border-color: rgba(22, 143, 230, .32);
    box-shadow: 0 20px 45px rgba(26, 64, 103, .1);
}

.fm-cookies-card__icon {
    display: grid;
    place-items: center;
    width: 3.4rem;
    height: 3.4rem;
    margin-bottom: 1.1rem;
    border-radius: 1.1rem;
    background: #eaf6ff;
    color: var(--fm-cookie-blue);
}

.fm-cookies-card:nth-child(2) .fm-cookies-card__icon {
    background: #eefbf4;
    color: var(--fm-cookie-green);
}

.fm-cookies-card:nth-child(3) .fm-cookies-card__icon {
    background: #fff3e5;
    color: var(--fm-cookie-orange);
}

.fm-cookies-card__icon svg {
    width: 1.65rem;
    height: 1.65rem;
}

.fm-cookies-card h3,
.fm-cookies-browser h3,
.fm-cookies-faq h3 {
    color: var(--fm-cookie-ink);
    font-size: clamp(1.15rem, 1.45vw, 1.38rem);
    font-weight: 760;
    line-height: 1.2;
    margin-bottom: .65rem;
}

.fm-cookies-card p,
.fm-cookies-faq p,
.fm-cookies-browser p {
    margin-bottom: 0;
}

.fm-cookies-usage {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
}

.fm-cookies-usage article {
    min-height: 160px;
    padding: 1.25rem;
    border-radius: 24px;
    background: var(--fm-cookie-soft);
}

.fm-cookies-usage strong {
    display: block;
    margin-bottom: .45rem;
    color: var(--fm-cookie-ink);
    font-size: 1.05rem;
    font-weight: 760;
}

.fm-cookies-usage p {
    font-size: .98rem;
    line-height: 1.5;
}

.fm-cookies-banner {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.2rem;
    align-items: center;
    padding: clamp(1.4rem, 3.4vw, 2.5rem);
    border-radius: 30px;
    background: linear-gradient(135deg, #111827, #18263d);
    color: #fff;
    isolation: isolate;
}

.fm-cookies-banner::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: -3rem;
    bottom: -4rem;
    width: clamp(14rem, 25vw, 23rem);
    aspect-ratio: 1;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255, 61, 127, .32), transparent 58%);
}

.fm-cookies-banner h2 {
    max-width: 12em;
    color: #fff;
    font-size: clamp(1.75rem, 3vw, 2.8rem);
    font-weight: 780;
    line-height: 1.08;
    margin-bottom: .65rem;
}

.fm-cookies-banner p {
    max-width: 780px;
    color: rgba(255, 255, 255, .78);
    margin-bottom: 0;
}

.fm-cookies-banner__mark {
    display: grid;
    place-items: center;
    width: clamp(5.5rem, 10vw, 8rem);
    aspect-ratio: 1;
    border-radius: 32px;
    background: rgba(255, 255, 255, .1);
}

.fm-cookies-banner__mark svg {
    width: 58%;
    height: 58%;
    color: #fff;
}

.fm-cookies-browsers {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
}

.fm-cookies-browser {
    display: grid;
    grid-template-columns: 3.4rem minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    padding: 1.15rem;
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease;
}

.fm-cookies-browser:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 38px rgba(26, 64, 103, .09);
}

.fm-cookies-browser__icon {
    display: grid;
    place-items: center;
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 1.1rem;
    background: #eef7ff;
    color: var(--fm-cookie-blue);
}

.fm-cookies-browser__icon svg {
    width: 1.55rem;
    height: 1.55rem;
}

.fm-cookies-browser__link {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    margin-top: .75rem;
    color: #007a8a;
    font-weight: 720;
}

.fm-cookies-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.fm-cookies-faq article {
    padding: clamp(1.15rem, 2vw, 1.55rem);
    background: #fff;
}

.fm-cookies-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(3rem, 6vw, 5rem);
    padding: clamp(1.4rem, 3vw, 2.2rem);
    background:
        radial-gradient(circle at 92% 16%, rgba(255, 61, 127, .12), transparent 26%),
        linear-gradient(135deg, #f0fff7, #f1f8ff);
}

.fm-cookies-final h2 {
    color: var(--fm-cookie-ink);
    font-size: clamp(1.7rem, 3vw, 2.75rem);
    font-weight: 780;
    line-height: 1.08;
    margin-bottom: .5rem;
}

.fm-cookies-final p {
    margin-bottom: 0;
}

.fm-cookies-final a {
    background: #fff;
    color: var(--fm-cookie-ink) !important;
}

@media (max-width: 980px) {
    .fm-cookies-hero,
    .fm-cookies-section__head,
    .fm-cookies-banner,
    .fm-cookies-final {
        grid-template-columns: 1fr;
    }

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

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

    .fm-cookies-banner__mark {
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .fm-cookies-page {
        padding-bottom: 3.25rem;
    }

    .fm-cookies-hero,
    .fm-cookies-section,
    .fm-cookies-final {
        width: min(100% - 1rem, 1200px);
    }

    .fm-cookies-hero {
        margin-top: 1rem;
    }

    .fm-cookies-hero__main {
        min-height: auto;
        padding: 1.35rem;
        border-radius: 24px;
    }

    .fm-cookies-hero__side,
    .fm-cookies-card,
    .fm-cookies-browser,
    .fm-cookies-faq article,
    .fm-cookies-final {
        border-radius: 22px;
    }

    .fm-cookies-hero h1 {
        max-width: 9em;
        font-size: clamp(2.1rem, 11vw, 3.2rem);
    }

    .fm-cookies-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-cookies-button {
        padding-inline: .75rem;
        font-size: .92rem;
    }

    .fm-cookies-grid,
    .fm-cookies-usage,
    .fm-cookies-browsers,
    .fm-cookies-faq {
        grid-template-columns: 1fr;
    }

    .fm-cookies-card {
        min-height: auto;
    }

    .fm-cookies-final {
        margin-top: 2.25rem;
    }
}

/* Guarantees page */
.fm-guarantees-page {
    --fm-g-ink: #141821;
    --fm-g-muted: #657083;
    --fm-g-line: #dde8f2;
    --fm-g-soft: #f6f9fc;
    --fm-g-blue: #168fe6;
    --fm-g-green: #23bf6b;
    --fm-g-pink: #f25f92;
    --fm-g-orange: #ff9b3d;
    color: var(--fm-g-ink);
    font-family: inherit;
}

.fm-guarantees-page *,
.fm-guarantees-page *::before,
.fm-guarantees-page *::after {
    box-sizing: border-box;
}

.fm-guarantees-page a {
    color: inherit;
    text-decoration: none;
}

.fm-guarantees-page h1,
.fm-guarantees-page h2,
.fm-guarantees-page h3,
.fm-guarantees-page p {
    margin-top: 0;
}

.fm-guarantees-page p {
    color: var(--fm-g-muted);
    line-height: 1.55;
}

.fm-guarantees-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
    align-items: stretch;
    gap: clamp(1rem, 2.2vw, 1.6rem);
    margin: clamp(1rem, 2.6vw, 1.7rem) auto clamp(2rem, 5vw, 4rem);
}

.fm-guarantees-hero__copy,
.fm-guarantees-hero__card,
.fm-guarantees-banner,
.fm-guarantees-final {
    border-radius: 32px;
    overflow: hidden;
}

.fm-guarantees-hero__copy {
    position: relative;
    min-height: 560px;
    padding: clamp(2rem, 5vw, 4.5rem);
    background:
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, .2) 0 90px, transparent 91px),
        radial-gradient(circle at 72% 72%, rgba(255, 255, 255, .16) 0 54px, transparent 55px),
        linear-gradient(135deg, #087fd7 0%, #118fe5 48%, #22a7ee 100%);
    color: #fff;
    isolation: isolate;
    box-shadow: 0 22px 60px rgba(10, 93, 166, .18);
}

.fm-guarantees-hero__copy::before,
.fm-guarantees-hero__copy::after {
    content: "";
    position: absolute;
    right: -5%;
    bottom: -16%;
    width: 240px;
    height: 240px;
    border-radius: 44% 56% 52% 48%;
    background: rgba(255, 255, 255, .16);
    transform: rotate(-18deg);
    z-index: -1;
}

.fm-guarantees-hero__copy::after {
    right: 15%;
    bottom: 12%;
    width: 92px;
    height: 92px;
    background: rgba(255, 255, 255, .22);
    box-shadow: -84px 34px 0 rgba(255, 255, 255, .13), 74px -58px 0 rgba(255, 255, 255, .15);
}

.fm-guarantees-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, .86);
    font-size: .95rem;
    font-weight: 800;
}

.fm-guarantees-hero__copy .fm-guarantees-eyebrow {
    color: rgba(255, 255, 255, .88);
}

.fm-guarantees-eyebrow::before {
    content: "";
    width: .65rem;
    height: .65rem;
    border-radius: 999px;
    background: currentColor;
}

.fm-guarantees-hero h1 {
    max-width: 9.8em;
    margin-bottom: 1.2rem;
    color: #fff;
    font-size: clamp(2.35rem, 5.2vw, 4.15rem);
    font-weight: 820;
    line-height: 1.02;
}

.fm-guarantees-lead {
    max-width: 720px;
    margin-bottom: 2rem;
    color: rgba(255, 255, 255, .92);
    font-size: clamp(1.08rem, 1.55vw, 1.35rem);
}

.fm-guarantees-hero__copy .fm-guarantees-lead {
    color: rgba(255, 255, 255, .92);
}

.fm-guarantees-actions,
.fm-guarantees-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
}

.fm-guarantees-button,
.fm-guarantees-final__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: .85rem 1.35rem;
    border-radius: 999px;
    font-size: .98rem;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.fm-guarantees-page .fm-guarantees-button--light,
.fm-guarantees-page .fm-guarantees-button--light:visited {
    background: #fff;
    color: #111827;
    box-shadow: 0 16px 38px rgba(13, 58, 112, .16);
}

.fm-guarantees-page .fm-guarantees-button--light:hover,
.fm-guarantees-page .fm-guarantees-button--light:focus-visible {
    background: #f7fbff;
    color: #111827;
}

.fm-guarantees-page .fm-guarantees-button--ghost,
.fm-guarantees-page .fm-guarantees-button--ghost:visited {
    border: 1px solid rgba(255, 255, 255, .36);
    background: rgba(255, 255, 255, .12);
    color: #fff;
}

.fm-guarantees-page .fm-guarantees-button--ghost:hover,
.fm-guarantees-page .fm-guarantees-button--ghost:focus-visible {
    background: rgba(255, 255, 255, .2);
    color: #fff;
}

.fm-guarantees-button:hover,
.fm-guarantees-button:focus-visible,
.fm-guarantees-final__actions a:hover,
.fm-guarantees-final__actions a:focus-visible {
    transform: translateY(-2px);
}

.fm-guarantees-hero__card {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    align-content: stretch;
    gap: 1rem;
    height: 100%;
    min-height: 560px;
    padding: clamp(1rem, 2vw, 1.35rem);
    border: 1px solid var(--fm-g-line);
    background: #fff;
    box-shadow: 0 22px 60px rgba(18, 38, 63, .08);
}

.fm-guarantees-photo {
    position: relative;
    height: 100%;
    min-height: 0;
    margin: 0;
    border-radius: 26px;
    overflow: hidden;
    background: #eef5f8;
}

.fm-guarantees-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 42%;
    transform: scale(1.02);
}

.fm-guarantees-photo::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(8, 16, 28, 0) 42%, rgba(8, 16, 28, .66) 100%);
}

.fm-guarantees-photo figcaption {
    position: absolute;
    left: clamp(1rem, 2vw, 1.4rem);
    right: clamp(1rem, 2vw, 1.4rem);
    bottom: clamp(1rem, 2vw, 1.4rem);
    z-index: 1;
}

.fm-guarantees-photo figcaption span {
    display: inline-flex;
    margin-bottom: .7rem;
    padding: .45rem .75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: #0f7f4d;
    font-size: .86rem;
    font-weight: 850;
}

.fm-guarantees-photo figcaption strong {
    display: block;
    max-width: 460px;
    color: #fff;
    font-size: clamp(1.3rem, 2.1vw, 2rem);
    line-height: 1.08;
}

.fm-guarantees-proof {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
}

.fm-guarantees-proof span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    border-radius: 16px;
    background: #f4f8fb;
    color: #111827;
    font-weight: 850;
}

.fm-guarantees-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: clamp(2rem, 5vw, 4rem);
}

.fm-guarantees-strip article,
.fm-guarantees-cards article,
.fm-guarantees-faq article,
.fm-guarantees-steps li {
    border: 1px solid var(--fm-g-line);
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fm-guarantees-strip article {
    min-height: 220px;
    padding: 1.35rem;
    border-radius: 24px;
}

.fm-guarantees-strip article:hover,
.fm-guarantees-cards article:hover,
.fm-guarantees-faq article:hover,
.fm-guarantees-steps li:hover {
    border-color: color-mix(in srgb, var(--fm-g-blue) 35%, var(--fm-g-line));
    box-shadow: 0 18px 45px rgba(18, 38, 63, .08);
    transform: translateY(-3px);
}

.fm-guarantees-icon {
    display: inline-grid;
    place-items: center;
    width: 52px;
    height: 52px;
    margin-bottom: 1rem;
    border-radius: 17px;
    background: #eff8ff;
    color: var(--fm-g-blue);
}

.fm-guarantees-icon svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.fm-guarantees-strip strong {
    display: block;
    margin-bottom: .45rem;
    font-size: 1.15rem;
    line-height: 1.15;
}

.fm-guarantees-strip p {
    margin-bottom: 0;
    font-size: .98rem;
}

.fm-guarantees-section {
    margin-bottom: clamp(2rem, 5vw, 4rem);
}

.fm-guarantees-section__head {
    display: grid;
    grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr);
    gap: 1.5rem;
    align-items: start;
    margin-bottom: 1.4rem;
}

.fm-guarantees-section__head h2,
.fm-guarantees-banner h2,
.fm-guarantees-process__intro h2,
.fm-guarantees-final h2 {
    margin-bottom: 0;
    font-size: clamp(1.75rem, 3vw, 2.8rem);
    font-weight: 760;
    line-height: 1.08;
}

.fm-guarantees-section__head p,
.fm-guarantees-process__intro p {
    max-width: 760px;
    margin-bottom: 0;
    font-size: 1.06rem;
}

.fm-guarantees-cards,
.fm-guarantees-faq {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.fm-guarantees-cards article,
.fm-guarantees-faq article {
    padding: clamp(1.2rem, 2vw, 1.65rem);
    border-radius: 24px;
}

.fm-guarantees-cards h3,
.fm-guarantees-faq h3 {
    margin-bottom: .65rem;
    font-size: 1.25rem;
    line-height: 1.16;
}

.fm-guarantees-cards ul {
    display: grid;
    gap: .55rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
}

.fm-guarantees-cards li {
    position: relative;
    padding-left: 1.35rem;
    color: var(--fm-g-muted);
    line-height: 1.45;
}

.fm-guarantees-cards li::before {
    content: "";
    position: absolute;
    top: .55em;
    left: 0;
    width: .45rem;
    height: .45rem;
    border-radius: 999px;
    background: var(--fm-g-green);
}

.fm-guarantees-banner {
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
    gap: clamp(1.5rem, 4vw, 3rem);
    align-items: center;
    margin-bottom: clamp(2rem, 5vw, 4rem);
    padding: clamp(1.5rem, 4vw, 3rem);
    background: #141c2f;
    color: #fff;
}

.fm-guarantees-banner p {
    color: rgba(255, 255, 255, .78);
}

.fm-guarantees-banner h2 {
    margin-bottom: 1rem;
    color: #fff;
}

.fm-guarantees-legal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.fm-guarantees-legal-grid article {
    min-height: 150px;
    padding: 1.1rem;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 20px;
    background: rgba(255, 255, 255, .08);
}

.fm-guarantees-legal-grid strong,
.fm-guarantees-legal-grid span {
    display: block;
}

.fm-guarantees-legal-grid strong {
    margin-bottom: .45rem;
    color: #fff;
    font-size: 1.15rem;
}

.fm-guarantees-legal-grid span {
    color: rgba(255, 255, 255, .76);
    line-height: 1.45;
}

.fm-guarantees-table-wrap {
    overflow: hidden;
    border: 1px solid var(--fm-g-line);
    border-radius: 26px;
    background: #fff;
}

.fm-guarantees-table {
    width: 100%;
    border-collapse: collapse;
}

.fm-guarantees-table th,
.fm-guarantees-table td {
    padding: 1.15rem 1.25rem;
    border-bottom: 1px solid var(--fm-g-line);
    text-align: left;
    vertical-align: top;
}

.fm-guarantees-table th {
    background: #f4f8fc;
    color: var(--fm-g-muted);
    font-size: .82rem;
    font-weight: 850;
    text-transform: uppercase;
}

.fm-guarantees-table td {
    color: var(--fm-g-muted);
    line-height: 1.5;
}

.fm-guarantees-table td:first-child {
    color: var(--fm-g-ink);
    font-weight: 800;
}

.fm-guarantees-table tr:last-child td {
    border-bottom: 0;
}

.fm-guarantees-process {
    display: grid;
    grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr);
    gap: clamp(1.2rem, 3vw, 2rem);
    margin-bottom: clamp(2rem, 5vw, 4rem);
}

.fm-guarantees-process__intro {
    position: sticky;
    top: 1rem;
    align-self: start;
}

.fm-guarantees-process__intro h2 {
    margin-bottom: .8rem;
}

.fm-guarantees-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.fm-guarantees-steps li {
    min-height: 260px;
    padding: 1.2rem;
    border-radius: 24px;
}

.fm-guarantees-steps span {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 1.1rem;
    border-radius: 999px;
    background: #eaf8f1;
    color: #0a8f48;
    font-weight: 850;
}

.fm-guarantees-steps strong {
    display: block;
    margin-bottom: .55rem;
    font-size: 1.12rem;
    line-height: 1.18;
}

.fm-guarantees-steps p,
.fm-guarantees-faq p {
    margin-bottom: 0;
}

.fm-guarantees-final {
    display: flex;
    justify-content: space-between;
    gap: 1.25rem;
    align-items: center;
    margin-bottom: clamp(2.5rem, 6vw, 5rem);
    padding: clamp(1.4rem, 4vw, 2.6rem);
    background: linear-gradient(120deg, #eefbf4, #eef8ff 68%, #fff7fb);
    border: 1px solid var(--fm-g-line);
}

.fm-guarantees-final h2 {
    margin-bottom: .35rem;
}

.fm-guarantees-final p {
    margin-bottom: 0;
}

.fm-guarantees-final__actions {
    justify-content: flex-end;
    min-width: 330px;
}

.fm-guarantees-final__actions a {
    background: #fff;
    color: #111827;
    box-shadow: 0 12px 35px rgba(18, 38, 63, .08);
}

.fm-guarantees-final__actions a:visited,
.fm-guarantees-final__actions a:hover,
.fm-guarantees-final__actions a:focus-visible {
    color: #111827;
}

@media (max-width: 1100px) {
    .fm-guarantees-hero,
    .fm-guarantees-banner,
    .fm-guarantees-process {
        grid-template-columns: 1fr;
    }

    .fm-guarantees-strip,
    .fm-guarantees-cards,
    .fm-guarantees-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-guarantees-process__intro {
        position: static;
    }
}

@media (max-width: 760px) {
    .fm-guarantees-hero {
        margin-top: .75rem;
    }

    .fm-guarantees-hero__copy,
    .fm-guarantees-hero__card,
    .fm-guarantees-banner,
    .fm-guarantees-final {
        border-radius: 24px;
    }

    .fm-guarantees-hero__copy,
    .fm-guarantees-hero__card {
        min-height: auto;
    }

    .fm-guarantees-photo {
        height: auto;
        min-height: 360px;
    }

    .fm-guarantees-section__head,
    .fm-guarantees-strip,
    .fm-guarantees-cards,
    .fm-guarantees-faq,
    .fm-guarantees-legal-grid,
    .fm-guarantees-steps {
        grid-template-columns: 1fr;
    }

    .fm-guarantees-actions,
    .fm-guarantees-final,
    .fm-guarantees-final__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .fm-guarantees-button,
    .fm-guarantees-final__actions a {
        width: 100%;
    }

    .fm-guarantees-final__actions {
        min-width: 0;
    }

    .fm-guarantees-table,
    .fm-guarantees-table tbody,
    .fm-guarantees-table tr,
    .fm-guarantees-table td {
        display: block;
        width: 100%;
    }

    .fm-guarantees-table thead {
        display: none;
    }

    .fm-guarantees-table tr {
        padding: .9rem;
        border-bottom: 1px solid var(--fm-g-line);
    }

    .fm-guarantees-table tr:last-child {
        border-bottom: 0;
    }

    .fm-guarantees-table td {
        padding: .4rem 0;
        border-bottom: 0;
    }

    .fm-guarantees-table td::before {
        display: block;
        margin-bottom: .15rem;
        color: var(--fm-g-muted);
        font-size: .78rem;
        font-weight: 850;
        text-transform: uppercase;
    }

    .fm-guarantees-table td:nth-child(1)::before {
        content: "Ситуация";
    }

    .fm-guarantees-table td:nth-child(2)::before {
        content: "Что прислать";
    }

    .fm-guarantees-table td:nth-child(3)::before {
        content: "Как решаем";
    }
}

/* Journal article page */
body.com-content.view-article .main-section {
    padding-top: clamp(0.55rem, 1.4vw, 1rem);
}

body.com-content.view-article {
    overflow-x: hidden;
}

.fm-article-page {
    --article-blue: #005bff;
    --article-pink: #f72473;
    --article-ink: #071329;
    --article-text: #4f5f77;
    --article-muted: #728198;
    --article-line: #dbe7f6;
    --article-soft: #f6f9fe;
    width: min(100%, 1280px);
    margin: 0 auto clamp(2rem, 4vw, 4rem);
    color: var(--article-ink);
}

.fm-article-page__page-heading {
    display: none;
}

.fm-article-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(360px, 0.94fr);
    gap: 0;
    align-items: stretch;
    overflow: hidden;
    min-height: clamp(25rem, 34vw, 34rem);
    margin-bottom: clamp(1rem, 2.4vw, 2rem);
    border: 1px solid var(--article-line);
    border-radius: 34px;
    background:
        radial-gradient(circle at 78% 24%, rgba(0, 91, 255, 0.13) 0 8.5rem, transparent 8.7rem),
        linear-gradient(135deg, #fff 0%, #f6f9ff 100%);
}

.fm-article-hero__copy {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    padding: clamp(2rem, 4.5vw, 4.5rem);
    order: 2;
}

.fm-article-hero__eyebrow {
    display: none;
}

.fm-article-hero__eyebrow::before {
    display: none;
}

.fm-article-hero__title {
    margin: 0;
}

.fm-article-hero__title h1,
.fm-article-hero__title h2 {
    max-width: 10.2em;
    margin: 0;
    color: var(--article-ink);
    font-family: inherit;
    font-size: clamp(3.25rem, 6.35vw, 7.15rem);
    font-weight: 860;
    line-height: 0.9;
    letter-spacing: 0;
}

.fm-article-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.48rem;
    order: -1;
    margin: 0 0 1.05rem;
    color: var(--article-muted);
    font-size: 0.92rem;
    font-weight: 720;
}

.fm-article-hero__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 1.86rem;
    padding: 0.34rem 0.7rem;
    border: 1px solid var(--article-line);
    border-radius: 999px;
    background: #eef5ff;
    color: #49617f;
    line-height: 1;
}

.fm-article-hero__meta span:first-child {
    color: var(--article-blue);
    font-weight: 840;
}

.fm-article-hero__media {
    position: relative;
    overflow: hidden;
    margin: 0;
    background: var(--article-soft);
    order: 1;
    border-radius: 0;
    clip-path: polygon(0 0, 92% 0, 100% 50%, 92% 100%, 0 100%);
}

.fm-article-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: inherit;
    aspect-ratio: auto;
    object-fit: cover;
}

.fm-article-hero__media figcaption {
    position: absolute;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
    width: fit-content;
    max-width: calc(100% - 2rem);
    padding: 0.42rem 0.68rem;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    color: var(--article-text);
    font-size: 0.78rem;
    font-weight: 720;
    backdrop-filter: blur(12px);
}

.fm-article-page__tools,
.fm-article-page__info,
.fm-article-page__tags,
.fm-article-page .com-content-article__links {
    width: min(100%, 1000px);
    margin: 0 auto 1rem;
}

.fm-article-page__info .article-info {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin: 0;
    color: var(--article-muted);
    font-size: 0.88rem;
}

.fm-article-page__info .article-info-term {
    display: none;
}

.fm-article-page__info .article-info dd {
    margin: 0;
}

.fm-article-body {
    width: min(100%, 1000px);
    margin: 0 auto;
    padding: clamp(1.15rem, 2.4vw, 2rem);
    border: 1px solid var(--article-line);
    border-radius: 28px;
    background: #fff;
    color: #343434;
    font-size: clamp(1rem, 1.25vw, 1.14rem);
    line-height: 1.74;
}

.fm-article-body > *:first-child {
    margin-top: 0;
}

.fm-article-body > *:last-child {
    margin-bottom: 0;
}

.fm-article-body p {
    margin: 0 0 1.05rem;
}

.fm-article-body h2,
.fm-article-body h3,
.fm-article-body h4 {
    color: var(--article-ink);
    font-family: inherit;
    font-weight: 820;
    line-height: 1.16;
    letter-spacing: 0;
}

.fm-article-body h2 {
    margin: 2rem 0 0.8rem;
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.fm-article-body h3 {
    margin: 1.6rem 0 0.65rem;
    font-size: clamp(1.22rem, 1.7vw, 1.55rem);
}

.fm-article-body a {
    color: var(--article-blue);
    font-weight: 760;
    text-decoration-thickness: 0.08em;
    text-underline-offset: 0.16em;
}

.fm-article-body ul,
.fm-article-body ol {
    display: grid;
    gap: 0.5rem;
    margin: 0 0 1.15rem;
    padding-left: 1.25rem;
}

.fm-article-body blockquote {
    margin: 1.3rem 0;
    padding: 1rem 1.15rem;
    border: 1px solid var(--article-line);
    border-left: 4px solid var(--article-blue);
    border-radius: 18px;
    background: #f7fbff;
    color: var(--article-ink);
    font-weight: 720;
}

.fm-article-body img {
    max-width: 100%;
    height: auto;
    border-radius: 22px;
}

.fm-article-page .pagenavigation {
    width: min(100%, 1000px);
    margin: clamp(1.1rem, 2.6vw, 2rem) auto 0;
}

.fm-article-page .pagenavigation .pagination {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
    margin: 0 !important;
}

.fm-article-page .pagenavigation .pagination:has(.previous:only-child),
.fm-article-page .pagenavigation .pagination:has(.next:only-child) {
    grid-template-columns: minmax(0, 1fr);
}

.fm-article-page .pagenavigation a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 4rem;
    padding: 1rem 1.1rem;
    border: 1px solid var(--article-line);
    border-radius: 22px;
    background: #fff;
    color: var(--article-ink);
    font-size: 0;
    font-weight: 820;
    text-decoration: none;
}

.fm-article-page .pagenavigation a::before {
    color: var(--article-muted);
    font-size: 0.72rem;
    font-weight: 820;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.fm-article-page .pagenavigation a.previous::before {
    content: "Предыдущая статья";
}

.fm-article-page .pagenavigation a.next::before {
    content: "Следующая статья";
}

.fm-article-page .pagenavigation a .icon-chevron-left,
.fm-article-page .pagenavigation a .icon-chevron-right {
    display: grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    background: #eef5ff;
    color: var(--article-blue);
    font-size: 0.92rem;
}

.fm-article-page .pagenavigation a.previous {
    justify-content: flex-start;
}

.fm-article-page .pagenavigation a.previous .icon-chevron-left {
    order: -1;
    margin-right: 0.8rem;
}

.fm-article-page .pagenavigation a.next {
    margin-left: auto;
}

.fm-article-page .pagenavigation a.next .icon-chevron-right {
    margin-left: 0.8rem;
}

.fm-article-page .pagenavigation a:hover,
.fm-article-page .pagenavigation a:focus-visible {
    border-color: color-mix(in srgb, var(--article-blue) 34%, var(--article-line));
    color: var(--article-blue);
    background: #f8fbff;
}

@media (max-width: 991.98px) {
    .fm-article-page {
        width: min(100%, 760px);
    }

    .fm-article-hero {
        grid-template-columns: 1fr;
        align-items: start;
        min-height: 0;
    }

    .fm-article-hero__media {
        clip-path: none;
    }

    .fm-article-hero__media img {
        height: auto;
        min-height: 0;
        aspect-ratio: 16 / 10;
    }

    .fm-article-hero__copy {
        padding: clamp(1.15rem, 4vw, 2rem);
    }

    .fm-article-hero__title h1,
    .fm-article-hero__title h2 {
        max-width: 100%;
    }
}

@media (max-width: 575.98px) {
    .fm-article-page {
        margin-bottom: 2rem;
    }

    .fm-article-hero {
        gap: 0.9rem;
        margin-bottom: 0.9rem;
    }

    .fm-article-hero__eyebrow {
        margin-bottom: 0.62rem;
        font-size: 0.76rem;
    }

    .fm-article-hero__title h1,
    .fm-article-hero__title h2 {
        font-size: clamp(2rem, 9.6vw, 3.15rem);
        line-height: 1.04;
    }

    .fm-article-hero__meta {
        gap: 0.38rem;
        margin-top: 0.72rem;
        font-size: 0.78rem;
    }

    .fm-article-hero__meta span {
        min-height: 1.78rem;
        padding: 0.28rem 0.58rem;
    }

    .fm-article-hero__media {
        border-radius: 22px;
    }

    .fm-article-hero__media img {
        aspect-ratio: 4 / 3;
    }

    .fm-article-hero__media figcaption {
        left: 0.7rem;
        right: 0.7rem;
        bottom: 0.7rem;
        max-width: calc(100% - 1.4rem);
    }

    .fm-article-body {
        padding: 1rem;
        border-radius: 22px;
        font-size: 0.98rem;
        line-height: 1.62;
    }

    .fm-article-page .pagenavigation .pagination {
        grid-template-columns: 1fr;
    }

    .fm-article-page .pagenavigation a {
        min-height: 3.45rem;
        border-radius: 18px;
    }
}

/* Modern compact breadcrumbs */
.breadcrumbs-section {
    padding: .45rem 0;
    border: 0;
    background:
        linear-gradient(180deg, rgba(248, 251, 255, .96) 0%, rgba(255, 255, 255, .86) 100%);
    box-shadow: inset 0 -1px 0 rgba(15, 23, 42, .06);
}

.breadcrumbs-section .breadcrumbs-inner {
    min-height: 2.6rem;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}

.breadcrumbs-section .breadcrumbs-inner::-webkit-scrollbar {
    display: none;
}

.breadcrumbs-section .mod-position-breadcrumbs {
    min-width: 0;
}

.breadcrumbs-section .mod-breadcrumbs__wrapper {
    display: inline-flex;
    max-width: 100%;
}

.breadcrumbs-section .mod-breadcrumbs {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: .22rem;
    max-width: 100%;
    min-height: 2.25rem;
    margin: 0;
    padding: .25rem .35rem !important;
    border: 1px solid rgba(190, 207, 232, .72);
    border-radius: 999px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 10px 30px rgba(17, 34, 68, .07);
    backdrop-filter: blur(10px);
    white-space: nowrap;
}

.breadcrumbs-section .mod-breadcrumbs__divider,
.breadcrumbs-section .mod-breadcrumbs__here {
    display: none;
}

.breadcrumbs-section .breadcrumb-item {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    padding: 0 !important;
    color: #697586;
    font-size: .92rem;
    font-weight: 650;
    line-height: 1;
}

.breadcrumbs-section .breadcrumb-item + .breadcrumb-item::before {
    content: "";
    width: .42rem;
    height: .42rem;
    margin: 0 .34rem 0 .18rem;
    padding: 0;
    border-top: 1.5px solid #9aa8bc;
    border-right: 1.5px solid #9aa8bc;
    transform: rotate(45deg);
    opacity: .72;
}

.breadcrumbs-section .breadcrumb-item a,
.breadcrumbs-section .breadcrumb-item span {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: 0 .62rem;
    border-radius: 999px;
    color: inherit;
    text-decoration: none;
    transition: color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

.breadcrumbs-section .breadcrumb-item a:hover,
.breadcrumbs-section .breadcrumb-item a:focus-visible {
    color: #0b63ff;
    background: #eef5ff;
    box-shadow: inset 0 0 0 1px rgba(11, 99, 255, .12);
    outline: 0;
}

.breadcrumbs-section .breadcrumb-item.active,
.breadcrumbs-section .breadcrumb-item:last-child {
    color: #172033;
    font-weight: 800;
}

.breadcrumbs-section .breadcrumb-item.active span,
.breadcrumbs-section .breadcrumb-item:last-child span {
    max-width: min(34rem, 42vw);
    overflow: hidden;
    background: linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%);
    color: #172033;
    text-overflow: ellipsis;
}

@media (max-width: 767.98px) {
    .breadcrumbs-section {
        padding: .28rem 0;
    }

    .breadcrumbs-section .breadcrumbs-inner {
        display: flex !important;
        align-items: center !important;
        min-height: 2.15rem;
        overflow: hidden;
    }

    .breadcrumbs-section .mod-position-breadcrumbs {
        flex: 1 1 auto;
        min-width: 0;
        max-width: 100%;
        overflow-x: auto !important;
        overflow-y: hidden;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    .breadcrumbs-section .mod-position-breadcrumbs::-webkit-scrollbar {
        display: none;
    }

    .breadcrumbs-section .mod-breadcrumbs__wrapper {
        display: inline-flex;
        width: max-content;
        min-width: max-content;
        max-width: none;
        overflow: visible !important;
    }

    .breadcrumbs-section .product-navigation {
        flex: 0 0 auto;
        margin-left: 0 !important;
        padding: 0 0 0 .35rem !important;
    }

    .breadcrumbs-section .mod-breadcrumbs {
        width: max-content;
        max-width: none;
        min-height: 1.9rem;
        padding: .13rem .18rem !important;
        box-shadow: none;
        background: #fff;
    }

    .breadcrumbs-section .breadcrumb-item {
        flex: 0 0 auto;
        display: inline-flex !important;
        overflow: visible !important;
        min-width: auto;
        width: auto !important;
        padding: 0 !important;
        font-size: .8rem;
        line-height: 1;
        visibility: visible !important;
    }

    .breadcrumbs-section .breadcrumbs-inner.d-flex .mod-position-breadcrumbs {
        flex-shrink: 1;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    .breadcrumbs-section .breadcrumb .breadcrumb-item:not(:first-child):not(:last-child) {
        display: inline-flex !important;
        overflow: visible !important;
        text-overflow: clip !important;
        visibility: visible !important;
        width: auto !important;
        padding: 0 !important;
    }

    .breadcrumbs-section .breadcrumb-item::before,
    .breadcrumbs-section .breadcrumb-item + .breadcrumb-item::before,
    .breadcrumbs-section .breadcrumb .breadcrumb-item:last-child:not(:first-child)::before {
        font-family: inherit !important;
        content: "" !important;
        width: .32rem;
        height: .32rem;
        margin: 0 .24rem 0 .1rem;
        padding: 0 !important;
        border-top: 1.5px solid #9aa8bc;
        border-right: 1.5px solid #9aa8bc;
        color: transparent !important;
        transform: rotate(45deg);
        opacity: .72;
    }

    .breadcrumbs-section .breadcrumb-item a,
    .breadcrumbs-section .breadcrumb-item span {
        min-height: 1.45rem;
        padding: 0 .46rem;
        white-space: nowrap;
    }

    .breadcrumbs-section .breadcrumb-item a {
        position: relative;
        z-index: 1;
        pointer-events: auto;
        touch-action: manipulation;
    }

    .breadcrumbs-section .breadcrumb-item.active span,
    .breadcrumbs-section .breadcrumb-item:last-child span {
        max-width: none;
        overflow: hidden;
        text-overflow: clip;
    }

}

/* Support page. */
.fm-about-page {
    --fm-about-ink: #14171f;
    --fm-about-muted: #667085;
    --fm-about-line: #dfe8f5;
    --fm-about-blue: #1288e8;
    --fm-about-green: #22c36a;
    --fm-about-pink: #ff2f7d;
    --fm-about-soft: #f6f9fc;
    max-width: min(100%, 1540px);
    margin: 0 auto;
    padding: clamp(1rem, 2vw, 1.35rem) clamp(.8rem, 2vw, 1.4rem) clamp(3rem, 7vw, 5rem);
    color: var(--fm-about-ink);
}

.fm-about-page *,
.fm-about-page *::before,
.fm-about-page *::after {
    box-sizing: border-box;
}

.fm-about-page a {
    text-decoration: none;
}

.fm-about-page h1,
.fm-about-page h2,
.fm-about-page h3 {
    color: var(--fm-about-ink);
    letter-spacing: 0;
}

.fm-about-page p {
    margin: 0;
    color: var(--fm-about-muted);
    font-size: clamp(1rem, 1.35vw, 1.18rem);
    line-height: 1.58;
}

.fm-about-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(340px, .75fr);
    gap: clamp(1rem, 2.4vw, 1.8rem);
    align-items: stretch;
    margin: clamp(1rem, 2vw, 1.5rem) 0 clamp(2rem, 5vw, 4rem);
}

.fm-about-hero__main,
.fm-about-hero__visual,
.fm-about-mission,
.fm-about-proof,
.fm-about-final {
    border-radius: clamp(1.35rem, 3vw, 2.2rem);
    overflow: hidden;
}

.fm-about-hero__main {
    position: relative;
    min-height: clamp(31rem, 42vw, 42rem);
    padding: clamp(2rem, 5vw, 4.8rem);
    background: linear-gradient(135deg, #0f88e6 0%, #1699ee 52%, #33b4f3 100%);
    color: #fff;
    isolation: isolate;
    box-shadow: 0 24px 70px rgba(15, 112, 195, .18);
}

.fm-about-hero__main::before,
.fm-about-hero__main::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 46% 54% 58% 42%;
    background: rgba(255, 255, 255, .17);
}

.fm-about-hero__main::before {
    right: -9%;
    bottom: -17%;
    width: 320px;
    height: 320px;
}

.fm-about-hero__main::after {
    right: 14%;
    top: 14%;
    width: 120px;
    height: 120px;
    box-shadow: -110px 190px 0 rgba(255, 255, 255, .13), 150px 230px 0 rgba(255, 255, 255, .16);
}

.fm-about-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: clamp(1.2rem, 3vw, 2.2rem);
    font-size: .9rem;
    font-weight: 850;
}

.fm-about-page .fm-about-eyebrow {
    color: rgba(255, 255, 255, .92);
}

.fm-about-eyebrow::before {
    content: "";
    width: .65rem;
    height: .65rem;
    border-radius: 999px;
    background: var(--fm-about-pink);
}

.fm-about-hero h1 {
    max-width: 11em;
    margin: 0 0 1.35rem;
    color: #fff;
    font-size: clamp(2.35rem, 5.5vw, 4.15rem);
    font-weight: 850;
    line-height: 1.02;
}

.fm-about-lead {
    max-width: 760px;
    color: rgba(255, 255, 255, .92) !important;
    font-size: clamp(1.05rem, 1.65vw, 1.1rem) !important;
    line-height: 1.58 !important;
}

.fm-about-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    margin-top: clamp(1.5rem, 3vw, 2.2rem);
}

.fm-about-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3.35rem;
    padding: .95rem 1.35rem;
    border-radius: 999px;
    font-weight: 720;
    line-height: 1;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.fm-about-button svg,
.fm-about-store__links svg,
.fm-about-final__actions svg {
    flex: 0 0 auto;
    width: 1.05rem;
    height: 1.05rem;
    stroke-width: 2.35;
}

.fm-about-button--primary {
    background: #fff;
    color: #101828 !important;
    box-shadow: 0 16px 36px rgba(8, 44, 86, .16);
}

.fm-about-button--ghost {
    border: 1px solid rgba(255, 255, 255, .38);
    background: rgba(255, 255, 255, .12);
    color: #fff !important;
}

.fm-about-button:hover,
.fm-about-button:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 20px 46px rgba(8, 44, 86, .18);
}

.fm-about-hero__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
    margin-top: clamp(2rem, 5vw, 4rem);
    max-width: 780px;
}

.fm-about-hero__stats div {
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, .13);
    backdrop-filter: blur(8px);
}

.fm-about-hero__stats strong {
    display: block;
    margin-bottom: .35rem;
    color: #fff;
    font-size: clamp(1.35rem, 3vw, 2.25rem);
    line-height: 1;
}

.fm-about-hero__stats span {
    color: rgba(255, 255, 255, .86);
    font-size: .92rem;
    line-height: 1.35;
}

.fm-about-hero__visual {
    display: grid;
    min-height: 100%;
    border: 1px solid var(--fm-about-line);
    background: linear-gradient(145deg, #fff 0%, #f9fbff 56%, #eef8ff 100%);
    box-shadow: 0 22px 60px rgba(18, 38, 63, .08);
}

.fm-about-hero__visual img {
    width: 100%;
    height: 100%;
    min-height: clamp(24rem, 40vw, 42rem);
    object-fit: cover;
}

.fm-about-section {
    margin-bottom: clamp(2rem, 5vw, 4.2rem);
}

.fm-about-section__head {
    display: grid;
    grid-template-columns: minmax(260px, .65fr) minmax(0, 1fr);
    gap: clamp(1rem, 3vw, 3rem);
    align-items: start;
    margin-bottom: clamp(1.2rem, 3vw, 2rem);
}

.fm-about-section h2 {
    margin: 0;
    font-size: clamp(1.9rem, 4vw, 3.05rem);
    font-weight: 850;
    line-height: 1.06;
}

.fm-about-fact-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(.85rem, 1.8vw, 1.2rem);
}

.fm-about-fact {
    min-height: 190px;
    padding: clamp(1.2rem, 2vw, 1.55rem);
    border: 1px solid var(--fm-about-line);
    border-radius: 1.45rem;
    background: #fff;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-about-fact:hover,
.fm-about-value:hover,
.fm-about-store:hover,
.fm-about-step:hover,
.fm-about-faq article:hover {
    transform: translateY(-3px);
    border-color: rgba(18, 136, 232, .24);
    box-shadow: 0 18px 44px rgba(18, 38, 63, .08);
}

.fm-about-fact strong {
    display: block;
    margin-bottom: .85rem;
    color: var(--fm-about-ink);
    font-size: clamp(2rem, 4vw, 2.4rem);
    font-weight: 780;
    line-height: 1;
}

.fm-about-fact span {
    display: block;
    color: var(--fm-about-muted);
    font-size: .98rem;
    line-height: 1.45;
}

.fm-about-proof {
    display: grid;
    grid-template-columns: minmax(310px, .8fr) minmax(0, 1fr);
    gap: clamp(1.2rem, 3vw, 3rem);
    align-items: center;
    padding: clamp(1.2rem, 3vw, 2.5rem);
    border: 1px solid var(--fm-about-line);
    background: linear-gradient(135deg, #f7fbff 0%, #fff 55%, #fff2f6 100%);
}

.fm-about-proof .fm-about-section__head {
    grid-template-columns: 1fr;
    gap: .8rem;
    margin-bottom: clamp(1rem, 2vw, 1.45rem);
}

.fm-about-proof .fm-about-section__head h2 {
    max-width: 12em;
    font-size: clamp(2rem, 3.1vw, 3.15rem);
    line-height: 1.05;
}

.fm-about-proof .fm-about-section__head p {
    max-width: 680px;
}

.fm-about-proof__photo {
    aspect-ratio: 1 / 1;
    width: min(100%, 520px);
    margin: 0 auto;
    border-radius: 46% 54% 51% 49%;
    overflow: hidden;
    background: #eef5f8;
}

.fm-about-proof__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fm-about-proof__list {
    display: grid;
    gap: 0;
}

.fm-about-proof__item {
    display: grid;
    grid-template-columns: minmax(90px, .35fr) minmax(0, 1fr);
    gap: clamp(1rem, 2vw, 2rem);
    padding: clamp(1rem, 2vw, 1.35rem) 0;
    border-bottom: 1px solid var(--fm-about-line);
}

.fm-about-proof__item:last-child {
    border-bottom: 0;
}

.fm-about-proof__item strong {
    color: var(--fm-about-ink);
    font-size: clamp(1.8rem, 4vw, 3.1rem);
    line-height: 1;
}

.fm-about-proof__item span {
    color: var(--fm-about-muted);
    font-size: clamp(1rem, 1.4vw, 1.15rem);
    line-height: 1.5;
}

.fm-about-mission {
    position: relative;
    min-height: clamp(34rem, 54vw, 48rem);
    padding: clamp(1.4rem, 4vw, 4.5rem);
    background:
        radial-gradient(circle at 10% 12%, rgba(255, 255, 255, .45) 0 135px, transparent 136px),
        radial-gradient(circle at 94% 76%, rgba(255, 255, 255, .34) 0 170px, transparent 171px),
        linear-gradient(135deg, #c7f2dc 0%, #a6e7c3 48%, #dff6ed 100%);
    overflow: hidden;
}

.fm-about-mission__image {
    position: absolute;
    top: clamp(1rem, 4vw, 3rem);
    right: clamp(1rem, 4vw, 3rem);
    width: min(46%, 650px);
    height: min(46vw, 500px);
    border-radius: 42% 58% 48% 52%;
    overflow: hidden;
}

.fm-about-mission__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fm-about-mission h2 {
    max-width: 8em;
    margin-bottom: clamp(2rem, 5vw, 4rem);
    font-size: clamp(2.3rem, 5vw, 4rem);
}

.fm-about-values {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(.9rem, 2vw, 1.4rem);
    align-items: stretch;
    max-width: 1180px;
}

.fm-about-value {
    min-height: 260px;
    padding: clamp(1.25rem, 2.4vw, 2rem);
    border-radius: 1.3rem;
    background: rgba(255, 255, 255, .93);
    box-shadow: 0 20px 48px rgba(18, 38, 63, .08);
    transition: transform .18s ease, box-shadow .18s ease;
}

.fm-about-value h3,
.fm-about-store h3,
.fm-about-step h3,
.fm-about-faq h3 {
    margin: 0 0 .75rem;
    color: var(--fm-about-ink);
    font-size: clamp(1.25rem, 2vw, 1.7rem);
    font-weight: 820;
    line-height: 1.15;
}

.fm-about-stores {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(.9rem, 2vw, 1.25rem);
}

.fm-about-store {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    min-height: 230px;
    padding: clamp(1.25rem, 2vw, 1.7rem);
    border: 1px solid var(--fm-about-line);
    border-radius: 1.45rem;
    background: #fff;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-about-store__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 2.35rem;
    padding: 0 .9rem;
    border-radius: 999px;
    background: #f1f6ff;
    color: var(--fm-about-ink);
    font-size: .9rem;
    font-weight: 850;
    white-space: nowrap;
}

.fm-about-store__links {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: 1.15rem;
}

.fm-about-store__links a {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    min-height: 2.55rem;
    padding: .7rem .95rem;
    border-radius: 999px;
    background: #effaf4;
    color: #087a43 !important;
    font-weight: 720;
}

.fm-about-process {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(.85rem, 1.8vw, 1.2rem);
}

.fm-about-step {
    position: relative;
    min-height: 250px;
    padding: clamp(1.15rem, 2vw, 1.55rem);
    border: 1px solid var(--fm-about-line);
    border-radius: 1.45rem;
    background: #fff;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-about-step::before {
    content: attr(data-step);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    margin-bottom: 1.1rem;
    border-radius: 50%;
    background: #e9f8f0;
    color: #087a43;
    font-weight: 850;
}

.fm-about-faq {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(.85rem, 1.8vw, 1.2rem);
}

.fm-about-faq article {
    min-height: 210px;
    padding: clamp(1.15rem, 2vw, 1.55rem);
    border: 1px solid var(--fm-about-line);
    border-radius: 1.45rem;
    background: linear-gradient(145deg, #fff 0%, #fff 58%, #f5fbff 100%);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fm-about-final {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.2rem;
    padding: clamp(1.4rem, 3vw, 2.2rem);
    border: 1px solid rgba(34, 195, 106, .2);
    background: linear-gradient(120deg, #edfff5 0%, #eef8ff 62%, #fff4f8 100%);
}

.fm-about-final h2 {
    margin: 0 0 .4rem;
    font-size: clamp(1.8rem, 3.4vw, 3.2rem);
    font-weight: 850;
}

.fm-about-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
    justify-content: flex-end;
}

.fm-about-final__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 3.1rem;
    padding: .85rem 1.15rem;
    border-radius: 999px;
    background: #fff;
    color: #101828 !important;
    font-weight: 720;
    box-shadow: 0 16px 36px rgba(18, 38, 63, .08);
}

.fm-about-final__actions a:first-child {
    background: #101828;
    color: #fff !important;
}

@media (max-width: 1180px) {
    .fm-about-hero,
    .fm-about-proof {
        grid-template-columns: 1fr;
    }

    .fm-about-hero__visual img {
        min-height: 420px;
    }

    .fm-about-fact-grid,
    .fm-about-process {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .fm-about-page {
        padding-inline: .85rem;
    }

    .fm-about-hero__main {
        min-height: auto;
        padding: 1.45rem;
    }

    .fm-about-hero h1 {
        font-size: clamp(2.1rem, 11vw, 3rem);
    }

    .fm-about-hero__stats,
    .fm-about-section__head,
    .fm-about-fact-grid,
    .fm-about-values,
    .fm-about-stores,
    .fm-about-process,
    .fm-about-faq {
        grid-template-columns: 1fr;
    }

    .fm-about-hero__visual img {
        min-height: 340px;
    }

    .fm-about-proof {
        padding: 1rem;
    }

    .fm-about-proof__item,
    .fm-about-store {
        grid-template-columns: 1fr;
    }

    .fm-about-mission {
        min-height: auto;
        padding: 1.25rem;
    }

    .fm-about-mission__image {
        position: relative;
        top: auto;
        right: auto;
        width: 100%;
        height: 300px;
        margin-bottom: 1rem;
    }

    .fm-about-values {
        gap: .8rem;
    }

    .fm-about-value,
    .fm-about-step,
    .fm-about-faq article {
        min-height: auto;
    }

    .fm-about-final,
    .fm-about-final__actions {
        align-items: stretch;
        flex-direction: column;
    }
}

.fm-support-page {
    --fm-support-ink: #14171f;
    --fm-support-muted: #5f6877;
    --fm-support-line: #e3eaf1;
    --fm-support-blue: #1288e8;
    --fm-support-soft: #f6f8fb;
    --fm-support-green: #28bf6a;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(1rem, 2.5vw, 2rem) 0 clamp(2.8rem, 5vw, 4.6rem);
    color: var(--fm-support-ink);
}

.fm-support-page *,
.fm-support-page *::before,
.fm-support-page *::after {
    box-sizing: border-box;
}

.fm-support-page a {
    color: inherit;
    text-decoration: none !important;
}

.fm-support-page p {
    margin: 0;
    color: var(--fm-support-muted);
    font-size: 1rem;
    line-height: 1.62;
}

.fm-support-page h1,
.fm-support-page h2,
.fm-support-page h3 {
    margin: 0;
    color: var(--fm-support-ink);
    letter-spacing: 0;
}

.fm-support-hero {
    position: relative;
    display: grid;
    justify-items: center;
    min-height: clamp(20rem, 39vw, 27rem);
    padding: clamp(2rem, 5vw, 4rem);
    border-radius: clamp(1.35rem, 3vw, 2rem);
    background: var(--fm-support-blue);
    color: #fff;
    text-align: center;
    overflow: hidden;
    isolation: isolate;
}

.fm-support-hero::before,
.fm-support-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    pointer-events: none;
}

.fm-support-hero::before {
    left: clamp(-1.2rem, 3vw, 2rem);
    top: clamp(2rem, 8vw, 4.5rem);
    width: clamp(8rem, 18vw, 15rem);
    aspect-ratio: 1.15;
    background: linear-gradient(135deg, rgb(255 255 255 / .34), rgb(255 255 255 / .08));
    clip-path: polygon(0 48%, 84% 0, 60% 100%, 42% 56%);
    transform: rotate(-18deg);
}

.fm-support-hero::after {
    right: clamp(-2.5rem, -2vw, -1rem);
    bottom: clamp(-2rem, -2vw, -.75rem);
    width: clamp(13rem, 24vw, 19rem);
    aspect-ratio: .9;
    border-radius: 3.8rem;
    background:
        radial-gradient(circle at 55% 22%, rgb(255 255 255 / .45) 0 .32rem, transparent .35rem),
        linear-gradient(135deg, rgb(255 210 222 / .9), rgb(255 255 255 / .1));
    transform: rotate(14deg);
}

.fm-support-hero__copy {
    align-self: center;
    max-width: 48rem;
}

.fm-support-eyebrow {
    margin-bottom: .75rem !important;
    color: rgb(255 255 255 / .82) !important;
    font-size: .95rem !important;
    font-weight: 700;
}

.fm-support-hero h1 {
    color: #fff;
    font-size: clamp(2.4rem, 5.2vw, 4.6rem);
    font-weight: 820;
    line-height: 1.02;
    text-transform: uppercase;
}

.fm-support-lead {
    max-width: 40rem;
    margin: .9rem auto 0 !important;
    color: rgb(255 255 255 / .9) !important;
    font-size: clamp(1rem, 1.55vw, 1.25rem) !important;
}

.fm-support-actions {
    display: grid;
    grid-template-columns: repeat(4, max-content);
    justify-content: center;
    gap: .65rem;
    margin-top: 1.45rem;
}

.fm-support-action {
    --support-action-bg: #fff;
    --support-action-ink: #172033;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3rem;
    padding: 0 1.05rem;
    border: 1px solid rgb(255 255 255 / .65);
    border-radius: .95rem;
    background: var(--support-action-bg);
    color: var(--support-action-ink) !important;
    font-size: .95rem;
    font-weight: 720;
    box-shadow: 0 14px 30px rgb(20 23 31 / .1);
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.fm-support-action__icon {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: .6rem;
    background: #eef7ff;
    color: #0b7dd6;
}

.fm-support-action__icon svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

.fm-support-action--call .fm-support-action__icon {
    background: #eaf9f1;
    color: #087a40;
}

.fm-support-action--mail .fm-support-action__icon,
.fm-support-action--chat .fm-support-action__icon {
    background: #fff3e7;
    color: #d46c15;
}

.fm-support-action--delivery .fm-support-action__icon {
    background: #eef7ff;
    color: #0b7dd6;
}

.fm-support-action--contacts .fm-support-action__icon {
    background: #f2edff;
    color: #7656d9;
}

.fm-support-action:hover,
.fm-support-action:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px rgb(20 23 31 / .13);
    outline: 0;
}

.fm-support-section {
    margin-top: clamp(2.1rem, 5vw, 4rem);
}

.fm-support-section__head {
    display: flex;
    align-items: center;
    gap: clamp(1rem, 3vw, 2.5rem);
    margin-bottom: 1.15rem;
}

.fm-support-section h2 {
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    font-weight: 700;
    line-height: 1.08;
}

.fm-support-section__head p {
    max-width: 42rem;
}

.fm-support-section--faq .fm-support-section__head {
    display: grid;
    justify-items: center;
    text-align: center;
    margin-bottom: clamp(1.2rem, 3vw, 2rem);
}

.fm-help-center {
    max-width: 58rem;
    margin: 0 auto;
}

.fm-help-center__head {
    margin-bottom: 1.15rem;
    text-align: center;
}

.fm-help-center__head p {
    max-width: 38rem;
    margin: .55rem auto 0 !important;
}

.fm-help-list {
    display: grid;
    gap: .65rem;
}

.fm-help-item {
    border: 1px solid #edf1f5;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 10px 28px rgb(20 23 31 / .055);
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-help-item:hover,
.fm-help-item[open] {
    border-color: #dbe7f3;
    box-shadow: 0 16px 38px rgb(20 23 31 / .08);
    transform: translateY(-1px);
}

.fm-help-item summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    min-height: 4rem;
    padding: 1rem 1.15rem;
    cursor: pointer;
    list-style: none;
}

.fm-help-item summary::-webkit-details-marker {
    display: none;
}

.fm-help-item summary::after {
    content: "›";
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #f5f8fb;
    color: #6a7380;
    font-size: 1.4rem;
    line-height: 1;
    transition: transform .16s ease, background .16s ease, color .16s ease;
}

.fm-help-item[open] summary::after {
    background: #e9f8f0;
    color: #087a40;
    transform: rotate(90deg);
}

.fm-help-item__title {
    display: block;
    color: var(--fm-support-ink);
    font-size: 1.05rem;
    font-weight: 760;
    line-height: 1.25;
}

.fm-help-item__meta {
    display: block;
    margin-top: .2rem;
    color: var(--fm-support-muted);
    font-size: .9rem;
    line-height: 1.45;
}

.fm-help-answers {
    display: grid;
    gap: .45rem;
    padding: 0 1.15rem 1.15rem;
}

.fm-help-answer {
    padding: .95rem 1rem;
    border-radius: .85rem;
    background: #f7fafc;
}

.fm-help-answer h3 {
    margin-bottom: .32rem;
    font-size: 1rem;
    font-weight: 720;
    line-height: 1.24;
}

.fm-help-answer p {
    font-size: .94rem;
    line-height: 1.55;
}

.fm-help-answer a {
    color: #087a40 !important;
    font-weight: 720;
}

.fm-support-topic-grid,
.fm-support-faq-grid {
    display: grid;
    gap: 1rem;
}

.fm-support-topic-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    margin-bottom: clamp(1.4rem, 3.5vw, 2.4rem);
}

.fm-support-faq-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    counter-reset: support-faq;
}

.fm-support-topic,
.fm-support-faq {
    position: relative;
    padding: 1.25rem;
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .1), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-support-topic {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(5.2rem, .48fr);
    gap: 1rem;
    align-items: center;
    min-height: 10rem;
    border-color: transparent;
    background: #fff;
    box-shadow: none;
}

.fm-support-faq {
    min-height: 12rem;
}

.fm-support-topic::after {
    content: none;
}

.fm-support-topic:hover,
.fm-support-topic:focus-visible,
.fm-support-faq:hover {
    border-color: #dce8f4;
    box-shadow: 0 16px 38px rgb(26 38 58 / .07);
    transform: translateY(-2px);
    outline: 0;
}

.fm-support-faq::before {
    display: grid;
    place-items: center;
    width: 3.2rem;
    height: 3.2rem;
    margin-bottom: 1rem;
    border-radius: 1rem;
    background: #eef7ff;
    color: #147fd1;
    font-weight: 820;
}

.fm-support-topic__copy {
    position: relative;
    z-index: 1;
}

.fm-support-topic__image {
    justify-self: end;
    width: min(100%, 7.5rem);
    max-height: 7rem;
    object-fit: contain;
    filter: drop-shadow(0 14px 20px rgb(20 23 31 / .1));
}

.fm-support-faq::before {
    counter-increment: support-faq;
    content: counter(support-faq);
    width: 2rem;
    height: 2rem;
    margin-bottom: .85rem;
    border-radius: 50%;
    background: #eef9f3;
    color: #087a40;
    font-size: .9rem;
}

.fm-support-topic h3,
.fm-support-faq h3 {
    margin-bottom: .55rem;
    font-size: 1.12rem;
    font-weight: 720;
    line-height: 1.24;
}

.fm-support-topic h3 {
    max-width: 12rem;
    font-size: clamp(1.18rem, 1.8vw, 1.45rem);
}

.fm-support-topic p {
    font-size: .94rem;
}

.fm-support-contact-band {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: clamp(1.2rem, 3vw, 2rem);
    border: 1px solid #dceee5;
    border-radius: 1.45rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(40 191 106 / .18), transparent 28%),
        linear-gradient(135deg, #f4fff9 0%, #fff 68%);
}

.fm-support-contact-band__actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .6rem;
}

@media (max-width: 991.98px) {
    .fm-support-topic-grid,
    .fm-support-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-support-contact-band {
        grid-template-columns: 1fr;
    }

    .fm-support-contact-band__actions {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .fm-support-hero {
        justify-items: start;
        min-height: 0;
        text-align: left;
    }

    .fm-support-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        justify-content: stretch;
        width: 100%;
    }

    .fm-support-action {
        width: 100%;
        min-width: 0;
        padding: 0 .75rem;
        font-size: .9rem;
    }

    .fm-support-section__head {
        flex-direction: column;
        align-items: flex-start;
        gap: .65rem;
    }

    .fm-support-topic-grid,
    .fm-support-faq-grid {
        grid-template-columns: 1fr;
    }
}

/* Flower care page. */
.fm-care-page {
    --fm-care-ink: #14171f;
    --fm-care-muted: #5f6877;
    --fm-care-line: #e3eaf1;
    --fm-care-soft: #f6f8fb;
    --fm-care-green: #29bf6b;
    --fm-care-blue: #38a9f4;
    --fm-care-pink: #f3658b;
    --fm-care-orange: #ff9b3d;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(1rem, 2.5vw, 2rem) 0 clamp(2.8rem, 5vw, 4.6rem);
    color: var(--fm-care-ink);
}

.fm-care-page *,
.fm-care-page *::before,
.fm-care-page *::after {
    box-sizing: border-box;
}

.fm-care-page a {
    color: inherit;
    text-decoration: none !important;
}

.fm-care-page h1,
.fm-care-page h2,
.fm-care-page h3 {
    margin: 0;
    color: var(--fm-care-ink);
    letter-spacing: 0;
}

.fm-care-page p {
    margin: 0;
    color: var(--fm-care-muted);
    font-size: 1rem;
    line-height: 1.62;
}

.fm-care-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(18rem, .92fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-care-hero__copy,
.fm-care-hero__visual {
    border-radius: clamp(1.35rem, 3vw, 2rem);
    overflow: hidden;
}

.fm-care-hero__copy {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: clamp(25rem, 38vw, 32rem);
    padding: clamp(1.35rem, 3.8vw, 3.5rem);
    background: var(--fm-care-green);
    color: #fff;
}

.fm-care-hero__copy::after {
    content: "";
    position: absolute;
    right: -4rem;
    bottom: -4rem;
    z-index: -1;
    width: clamp(14rem, 28vw, 23rem);
    aspect-ratio: 1;
    border-radius: 48%;
    background:
        radial-gradient(circle at 34% 34%, rgb(255 255 255 / .34) 0 .38rem, transparent .4rem),
        radial-gradient(circle at 62% 58%, rgb(255 255 255 / .22) 0 .55rem, transparent .58rem),
        linear-gradient(135deg, rgb(255 255 255 / .25), rgb(255 220 235 / .55));
    transform: rotate(18deg);
}

.fm-care-eyebrow {
    margin-bottom: .85rem !important;
    color: rgb(255 255 255 / .84) !important;
    font-size: .95rem !important;
    font-weight: 720;
}

.fm-care-hero h1 {
    max-width: 9em;
    color: #fff;
    font-size: clamp(2.55rem, 5.3vw, 4.65rem);
    font-weight: 820;
    line-height: 1.02;
}

.fm-care-lead {
    max-width: 42rem;
    margin-top: 1rem !important;
    color: rgb(255 255 255 / .9) !important;
    font-size: clamp(1rem, 1.55vw, 1.22rem) !important;
}

.fm-care-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1.45rem;
}

.fm-care-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    padding: 0 1rem;
    border-radius: .95rem;
    background: #fff;
    color: #172033 !important;
    font-size: .95rem;
    font-weight: 760;
    box-shadow: 0 14px 30px rgb(20 23 31 / .1);
    transition: transform .16s ease, box-shadow .16s ease;
}

.fm-care-button:hover,
.fm-care-button:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px rgb(20 23 31 / .13);
    outline: 0;
}

.fm-care-hero__visual {
    display: grid;
    align-content: stretch;
    gap: 1rem;
}

.fm-care-flower {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 18rem;
    border: 1px solid var(--fm-care-line);
    background:
        radial-gradient(circle at 78% 20%, rgb(243 101 139 / .16), transparent 24%),
        linear-gradient(135deg, #f7fbff 0%, #fff 74%);
}

.fm-care-flower svg {
    width: min(78%, 25rem);
    height: auto;
    filter: drop-shadow(0 24px 28px rgb(20 23 31 / .12));
}

.fm-care-quick {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.fm-care-quick article {
    min-height: 10.2rem;
    padding: 1.15rem;
    border: 1px solid var(--fm-care-line);
    border-radius: 1.35rem;
    background: #fff;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.fm-care-quick article:hover {
    border-color: #cfe0ee;
    box-shadow: 0 16px 38px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-care-quick strong {
    display: block;
    margin-bottom: .45rem;
    color: var(--fm-care-ink);
    font-size: 1.12rem;
    line-height: 1.18;
}

.fm-care-section {
    margin-top: clamp(2.2rem, 5vw, 4rem);
}

.fm-care-section__head {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1fr);
    gap: clamp(1rem, 3vw, 2.5rem);
    align-items: start;
    margin-bottom: 1.2rem;
}

.fm-care-section h2 {
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    font-weight: 700;
    line-height: 1.08;
}

.fm-care-type-tabs {
    display: grid;
    gap: 1rem;
}

.fm-care-type-tabs input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.fm-care-tab-nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
}

.fm-care-tab-nav label {
    display: grid;
    grid-template-columns: 2.4rem minmax(0, 1fr);
    gap: .7rem;
    align-items: center;
    min-height: 4.2rem;
    padding: .75rem;
    border: 1px solid var(--fm-care-line);
    border-radius: 1.05rem;
    background: #fff;
    color: var(--fm-care-ink);
    cursor: pointer;
    font-weight: 730;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background-color .16s ease;
}

.fm-care-tab-nav label span {
    display: grid;
    place-items: center;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: .8rem;
    background: #eef9f3;
    color: #087a40;
}

.fm-care-tab-nav svg {
    width: 1.24rem;
    height: 1.24rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.1;
}

#fm-care-tab-mono:checked ~ .fm-care-tab-nav label[for="fm-care-tab-mono"],
#fm-care-tab-mix:checked ~ .fm-care-tab-nav label[for="fm-care-tab-mix"],
#fm-care-tab-box:checked ~ .fm-care-tab-nav label[for="fm-care-tab-box"],
#fm-care-tab-basket:checked ~ .fm-care-tab-nav label[for="fm-care-tab-basket"] {
    border-color: color-mix(in srgb, var(--fm-care-green) 45%, var(--fm-care-line));
    background: #f4fff9;
    box-shadow: 0 16px 34px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-care-tab-panel {
    display: none;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 1rem;
    align-items: stretch;
    padding: clamp(1rem, 2.5vw, 1.5rem);
    border: 1px solid var(--fm-care-line);
    border-radius: 1.45rem;
    background: linear-gradient(135deg, #fff 0%, #fbfdff 100%);
}

#fm-care-tab-mono:checked ~ .fm-care-tab-panels .fm-care-tab-panel--mono,
#fm-care-tab-mix:checked ~ .fm-care-tab-panels .fm-care-tab-panel--mix,
#fm-care-tab-box:checked ~ .fm-care-tab-panels .fm-care-tab-panel--box,
#fm-care-tab-basket:checked ~ .fm-care-tab-panels .fm-care-tab-panel--basket {
    display: grid;
}

.fm-care-tab-copy {
    padding: clamp(.3rem, 1vw, .7rem);
}

.fm-care-tab-copy h3 {
    margin-bottom: .65rem;
    font-size: clamp(1.35rem, 2.2vw, 1.95rem);
    font-weight: 740;
    line-height: 1.12;
}

.fm-care-checklist {
    display: grid;
    gap: .6rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
}

.fm-care-checklist li {
    display: grid;
    grid-template-columns: 1.7rem minmax(0, 1fr);
    gap: .65rem;
    align-items: start;
    color: var(--fm-care-muted);
    line-height: 1.55;
}

.fm-care-checklist li::before {
    content: "";
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 50%, #fff 0 .16rem, transparent .18rem),
        var(--fm-care-green);
    box-shadow: inset 0 0 0 .42rem #eaf9f1;
}

.fm-care-tab-note {
    display: grid;
    gap: .8rem;
}

.fm-care-note-card {
    padding: 1rem;
    border-radius: 1.05rem;
    background: #f6f9fe;
}

.fm-care-note-card strong {
    display: block;
    margin-bottom: .35rem;
    color: var(--fm-care-ink);
    font-size: 1rem;
}

.fm-care-species {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.fm-care-species article,
.fm-care-mistake,
.fm-care-faq {
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .1), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-care-species article:hover,
.fm-care-mistake:hover,
.fm-care-faq:hover {
    border-color: #cfe0ee;
    box-shadow: 0 16px 38px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-care-species article {
    min-height: 14rem;
    padding: 1.15rem;
}

.fm-care-species__icon {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    margin-bottom: 1rem;
    border-radius: 1rem;
    background: #fff2f6;
    color: var(--fm-care-pink);
}

.fm-care-species__icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.fm-care-species h3,
.fm-care-mistake h3,
.fm-care-faq h3 {
    margin-bottom: .55rem;
    font-size: 1.12rem;
    font-weight: 730;
    line-height: 1.24;
}

.fm-care-signal {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, .75fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-care-signal__main {
    position: relative;
    overflow: hidden;
    padding: clamp(1.3rem, 3vw, 2rem);
    border-radius: 1.45rem;
    background: #172033;
    color: #fff;
}

.fm-care-signal__main::after {
    content: "";
    position: absolute;
    right: -2rem;
    bottom: -3rem;
    width: 12rem;
    aspect-ratio: 1;
    border-radius: 45%;
    background: linear-gradient(135deg, rgb(243 101 139 / .72), rgb(255 155 61 / .5));
}

.fm-care-signal__main h2,
.fm-care-signal__main p,
.fm-care-signal__main ul {
    position: relative;
    z-index: 1;
}

.fm-care-signal__main h2 {
    color: #fff;
}

.fm-care-signal__main p,
.fm-care-signal__main li {
    color: rgb(255 255 255 / .82);
}

.fm-care-signal__main ul {
    display: grid;
    gap: .5rem;
    margin: 1rem 0 0;
    padding-left: 1.2rem;
}

.fm-care-signal__side {
    display: grid;
    gap: 1rem;
}

.fm-care-signal__side article {
    padding: 1.1rem;
    border: 1px solid var(--fm-care-line);
    border-radius: 1.15rem;
    background: #fff;
}

.fm-care-mistakes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    counter-reset: care-mistake;
}

.fm-care-mistake {
    padding: 1.2rem;
    counter-increment: care-mistake;
}

.fm-care-mistake::before {
    content: counter(care-mistake);
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    margin-bottom: .85rem;
    border-radius: 50%;
    background: #fff3e7;
    color: #c96413;
    font-weight: 820;
}

.fm-care-faq-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.fm-care-faq {
    padding: 1.2rem;
}

.fm-care-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid #dceee5;
    border-radius: 1.45rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(41 191 107 / .18), transparent 28%),
        linear-gradient(135deg, #f4fff9 0%, #fff 68%);
}

.fm-care-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    justify-content: flex-end;
}

@media (max-width: 991.98px) {
    .fm-care-hero,
    .fm-care-tab-panel,
    .fm-care-signal,
    .fm-care-final {
        grid-template-columns: 1fr;
    }

    .fm-care-tab-nav,
    .fm-care-species,
    .fm-care-mistakes,
    .fm-care-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-care-final__actions {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .fm-care-hero__copy {
        min-height: 0;
    }

    .fm-care-actions,
    .fm-care-quick,
    .fm-care-tab-nav,
    .fm-care-section__head,
    .fm-care-species,
    .fm-care-mistakes,
    .fm-care-faq-grid {
        grid-template-columns: 1fr;
    }

    .fm-care-actions {
        display: grid;
    }

    .fm-care-button {
        width: 100%;
    }
}

/* How to order flowers page. */
.fm-order-page {
    --fm-order-ink: #14171f;
    --fm-order-muted: #5f6877;
    --fm-order-line: #e3eaf1;
    --fm-order-blue: #168fea;
    --fm-order-green: #29bf6b;
    --fm-order-orange: #ff9842;
    --fm-order-purple: #8d70df;
    --fm-order-pink: #f3658b;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(1rem, 2.5vw, 2rem) 0 clamp(2.8rem, 5vw, 4.6rem);
    color: var(--fm-order-ink);
}

.fm-order-page *,
.fm-order-page *::before,
.fm-order-page *::after {
    box-sizing: border-box;
}

.fm-order-page a {
    color: inherit;
    text-decoration: none !important;
}

.fm-order-page h1,
.fm-order-page h2,
.fm-order-page h3 {
    margin: 0;
    color: var(--fm-order-ink);
    letter-spacing: 0;
}

.fm-order-page p {
    margin: 0;
    color: var(--fm-order-muted);
    font-size: 1rem;
    line-height: 1.62;
}

.fm-order-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-order-hero__copy,
.fm-order-hero__side {
    border-radius: clamp(1.35rem, 3vw, 2rem);
    overflow: hidden;
}

.fm-order-hero__copy {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: clamp(25rem, 38vw, 32rem);
    padding: clamp(1.35rem, 3.8vw, 3.5rem);
    background: var(--fm-order-blue);
    color: #fff;
}

.fm-order-hero__copy::after {
    content: "";
    position: absolute;
    right: -4rem;
    bottom: -4rem;
    z-index: -1;
    width: clamp(14rem, 28vw, 23rem);
    aspect-ratio: 1;
    border-radius: 48%;
    background:
        radial-gradient(circle at 36% 34%, rgb(255 255 255 / .36) 0 .38rem, transparent .4rem),
        radial-gradient(circle at 62% 58%, rgb(255 255 255 / .22) 0 .55rem, transparent .58rem),
        linear-gradient(135deg, rgb(255 255 255 / .2), rgb(255 218 232 / .6));
    transform: rotate(18deg);
}

.fm-order-eyebrow {
    margin-bottom: .85rem !important;
    color: rgb(255 255 255 / .84) !important;
    font-size: .95rem !important;
    font-weight: 720;
}

.fm-order-hero h1 {
    max-width: 9em;
    color: #fff;
    font-size: clamp(2.55rem, 5.3vw, 4.65rem);
    font-weight: 820;
    line-height: 1.02;
}

.fm-order-lead {
    max-width: 42rem;
    margin-top: 1rem !important;
    color: rgb(255 255 255 / .9) !important;
    font-size: clamp(1rem, 1.55vw, 1.22rem) !important;
}

.fm-order-actions,
.fm-order-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
}

.fm-order-actions {
    margin-top: 1.45rem;
}

.fm-order-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 3rem;
    padding: 0 1rem;
    border-radius: .95rem;
    background: #fff;
    color: #172033 !important;
    font-size: .95rem;
    font-weight: 760;
    box-shadow: 0 14px 30px rgb(20 23 31 / .1);
    transition: transform .16s ease, box-shadow .16s ease;
}

.fm-order-button:hover,
.fm-order-button:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px rgb(20 23 31 / .13);
    outline: 0;
}

.fm-order-hero__side {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 1rem;
}

.fm-order-cart-visual {
    display: grid;
    place-items: center;
    min-height: 18rem;
    border: 1px solid var(--fm-order-line);
    background:
        radial-gradient(circle at 78% 20%, rgb(243 101 139 / .16), transparent 24%),
        linear-gradient(135deg, #f7fbff 0%, #fff 74%);
}

.fm-order-cart-visual svg {
    width: min(80%, 25rem);
    height: auto;
    filter: drop-shadow(0 24px 28px rgb(20 23 31 / .12));
}

.fm-order-hero-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.fm-order-hero-cards article {
    min-height: 10.2rem;
    padding: 1.15rem;
    border: 1px solid var(--fm-order-line);
    border-radius: 1.35rem;
    background: #fff;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.fm-order-hero-cards article:hover {
    border-color: #cfe0ee;
    box-shadow: 0 16px 38px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-order-hero-cards strong {
    display: block;
    margin-bottom: .45rem;
    color: var(--fm-order-ink);
    font-size: 1.12rem;
    line-height: 1.18;
}

.fm-order-section {
    margin-top: clamp(2.2rem, 5vw, 4rem);
}

.fm-order-section__head {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1fr);
    gap: clamp(1rem, 3vw, 2.5rem);
    align-items: start;
    margin-bottom: 1.2rem;
}

.fm-order-section h2 {
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    font-weight: 700;
    line-height: 1.08;
}

.fm-order-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    counter-reset: order-step;
}

.fm-order-step {
    position: relative;
    min-height: 16rem;
    padding: 1.2rem;
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .1), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    counter-increment: order-step;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-order-step:hover,
.fm-order-card:hover,
.fm-order-faq:hover {
    border-color: #cfe0ee;
    box-shadow: 0 16px 38px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-order-step::before {
    content: counter(order-step);
    display: grid;
    place-items: center;
    width: 2.55rem;
    height: 2.55rem;
    margin-bottom: .95rem;
    border-radius: .9rem;
    background: #eef7ff;
    color: #0b7dd6;
    font-weight: 820;
}

.fm-order-step h3,
.fm-order-card h3,
.fm-order-faq h3 {
    margin-bottom: .55rem;
    font-size: 1.12rem;
    font-weight: 730;
    line-height: 1.24;
}

.fm-order-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1rem;
}

.fm-order-chip {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 .7rem;
    border-radius: 999px;
    background: #f3f7fb;
    color: #344054;
    font-size: .88rem;
    font-weight: 700;
}

.fm-order-scenarios {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.fm-order-card {
    min-height: 14rem;
    padding: 1.2rem;
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background: #fff;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-order-card--green {
    background: linear-gradient(135deg, #f4fff9 0%, #fff 70%);
}

.fm-order-card--orange {
    background: linear-gradient(135deg, #fff8f1 0%, #fff 70%);
}

.fm-order-card--purple {
    background: linear-gradient(135deg, #f6f2ff 0%, #fff 70%);
}

.fm-order-card__icon {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    margin-bottom: 1rem;
    border-radius: 1rem;
    background: #eef9f3;
    color: #087a40;
}

.fm-order-card--orange .fm-order-card__icon {
    background: #fff3e7;
    color: #c96413;
}

.fm-order-card--purple .fm-order-card__icon {
    background: #f2edff;
    color: #7656d9;
}

.fm-order-card__icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.fm-order-detail {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-order-detail__main {
    position: relative;
    overflow: hidden;
    padding: clamp(1.3rem, 3vw, 2rem);
    border-radius: 1.45rem;
    background: #172033;
    color: #fff;
}

.fm-order-detail__main::after {
    content: "";
    position: absolute;
    right: -2rem;
    bottom: -3rem;
    width: 12rem;
    aspect-ratio: 1;
    border-radius: 45%;
    background: linear-gradient(135deg, rgb(243 101 139 / .72), rgb(255 155 61 / .5));
}

.fm-order-detail__main h2,
.fm-order-detail__main p,
.fm-order-detail__main ul {
    position: relative;
    z-index: 1;
}

.fm-order-detail__main h2 {
    color: #fff;
}

.fm-order-detail__main p,
.fm-order-detail__main li {
    color: rgb(255 255 255 / .82);
}

.fm-order-detail__main ul {
    display: grid;
    gap: .5rem;
    margin: 1rem 0 0;
    padding-left: 1.2rem;
}

.fm-order-detail__side {
    display: grid;
    gap: 1rem;
}

.fm-order-detail__side article {
    padding: 1.1rem;
    border: 1px solid var(--fm-order-line);
    border-radius: 1.15rem;
    background: #fff;
}

.fm-order-faq-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.fm-order-faq {
    padding: 1.2rem;
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .1), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-order-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid #dceee5;
    border-radius: 1.45rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(41 191 107 / .18), transparent 28%),
        linear-gradient(135deg, #f4fff9 0%, #fff 68%);
}

.fm-order-final__actions {
    justify-content: flex-end;
}

@media (max-width: 991.98px) {
    .fm-order-hero,
    .fm-order-detail,
    .fm-order-final {
        grid-template-columns: 1fr;
    }

    .fm-order-steps,
    .fm-order-scenarios,
    .fm-order-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-order-final__actions {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .fm-order-hero__copy {
        min-height: 0;
    }

    .fm-order-actions,
    .fm-order-hero-cards,
    .fm-order-section__head,
    .fm-order-steps,
    .fm-order-scenarios,
    .fm-order-faq-grid {
        grid-template-columns: 1fr;
    }

    .fm-order-actions {
        display: grid;
    }

    .fm-order-button {
        width: 100%;
    }
}

/* Quality control page. */
.fm-quality-page {
    --fm-quality-ink: #14171f;
    --fm-quality-muted: #5f6877;
    --fm-quality-line: #e3eaf1;
    --fm-quality-blue: #1288e8;
    --fm-quality-green: #28bf6a;
    --fm-quality-pink: #f3658b;
    --fm-quality-orange: #ff9b3d;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(1rem, 2.5vw, 2rem) 0 clamp(2.8rem, 5vw, 4.6rem);
    color: var(--fm-quality-ink);
}

.fm-quality-page *,
.fm-quality-page *::before,
.fm-quality-page *::after {
    box-sizing: border-box;
}

.fm-quality-page a {
    color: inherit;
    text-decoration: none !important;
}

.fm-quality-page h1,
.fm-quality-page h2,
.fm-quality-page h3 {
    margin: 0;
    color: var(--fm-quality-ink);
    letter-spacing: 0;
}

.fm-quality-page p {
    margin: 0;
    color: var(--fm-quality-muted);
    font-size: 1rem;
    line-height: 1.62;
}

.fm-quality-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr);
    gap: clamp(1rem, 3vw, 2rem);
    align-items: stretch;
    min-height: clamp(24rem, 38vw, 31rem);
    border-radius: clamp(1.35rem, 3vw, 2rem);
    background: linear-gradient(135deg, #f8fbff 0%, #fff 58%, #fff3f7 100%);
    overflow: hidden;
}

.fm-quality-hero__copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(1.2rem, 3.4vw, 3rem);
    border-radius: 1.45rem;
    background: var(--fm-quality-blue);
    color: #fff;
    overflow: hidden;
    isolation: isolate;
    position: relative;
}

.fm-quality-hero__copy::after {
    content: "";
    position: absolute;
    right: -3rem;
    bottom: -3rem;
    z-index: -1;
    width: clamp(11rem, 25vw, 18rem);
    aspect-ratio: 1;
    border-radius: 45%;
    background:
        radial-gradient(circle at 42% 38%, rgb(255 255 255 / .34) 0 .35rem, transparent .38rem),
        linear-gradient(135deg, rgb(255 255 255 / .28), rgb(255 210 226 / .72));
    transform: rotate(18deg);
}

.fm-quality-eyebrow {
    margin-bottom: .85rem !important;
    color: rgb(255 255 255 / .82) !important;
    font-size: .95rem !important;
    font-weight: 720;
}

.fm-quality-hero h1 {
    max-width: 9em;
    color: #fff;
    font-size: clamp(2.4rem, 5.1vw, 4.5rem);
    font-weight: 820;
    line-height: 1.02;
}

.fm-quality-lead {
    max-width: 43rem;
    margin-top: 1rem !important;
    color: rgb(255 255 255 / .9) !important;
    font-size: clamp(1rem, 1.55vw, 1.25rem) !important;
}

.fm-quality-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1.5rem;
}

.fm-quality-action {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    min-height: 3rem;
    padding: 0 1rem;
    border-radius: .95rem;
    background: #fff;
    color: #172033 !important;
    font-size: .95rem;
    font-weight: 760;
    box-shadow: 0 14px 30px rgb(20 23 31 / .1);
    transition: transform .16s ease, box-shadow .16s ease;
}

.fm-quality-action:hover,
.fm-quality-action:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 34px rgb(20 23 31 / .13);
    outline: 0;
}

.fm-quality-action svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

.fm-quality-hero__panel {
    display: grid;
    align-content: stretch;
    gap: 1rem;
}

.fm-quality-proof {
    display: grid;
    min-height: 0;
    padding: clamp(1.15rem, 2.5vw, 1.7rem);
    border: 1px solid var(--fm-quality-line);
    border-radius: 1.45rem;
    background: #fff;
    box-shadow: 0 18px 45px rgb(20 23 31 / .06);
}

.fm-quality-proof strong {
    display: block;
    color: var(--fm-quality-ink);
    font-size: clamp(1.35rem, 2.2vw, 1.9rem);
    line-height: 1.1;
}

.fm-quality-proof span {
    display: block;
    margin-top: .55rem;
    color: var(--fm-quality-muted);
    line-height: 1.55;
}

.fm-quality-proof--green {
    background: linear-gradient(135deg, #f3fff8 0%, #fff 72%);
}

.fm-quality-proof--pink {
    background: linear-gradient(135deg, #fff5f8 0%, #fff 72%);
}

.fm-quality-section {
    margin-top: clamp(2.2rem, 5vw, 4rem);
}

.fm-quality-section__head {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1fr);
    gap: clamp(1rem, 3vw, 2.5rem);
    align-items: start;
    margin-bottom: 1.2rem;
}

.fm-quality-section h2 {
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    font-weight: 700;
    line-height: 1.08;
}

.fm-quality-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.fm-quality-card,
.fm-quality-step,
.fm-quality-faq {
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .1), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-quality-card:hover,
.fm-quality-step:hover,
.fm-quality-faq:hover {
    border-color: #cfe0ee;
    box-shadow: 0 16px 38px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-quality-card {
    min-height: 13.5rem;
    padding: 1.25rem;
}

.fm-quality-card__icon {
    display: grid;
    place-items: center;
    width: 2.9rem;
    height: 2.9rem;
    margin-bottom: 1rem;
    border-radius: .95rem;
    background: #eef7ff;
    color: #0b7dd6;
}

.fm-quality-card__icon svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.15;
}

.fm-quality-card h3,
.fm-quality-step h3,
.fm-quality-faq h3 {
    margin-bottom: .55rem;
    font-size: 1.12rem;
    font-weight: 730;
    line-height: 1.24;
}

.fm-quality-report {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    gap: 1rem;
    align-items: stretch;
}

.fm-quality-report__box {
    padding: clamp(1.25rem, 3vw, 2rem);
    border-radius: 1.45rem;
    background: #172033;
    color: #fff;
    overflow: hidden;
    position: relative;
}

.fm-quality-report__box::after {
    content: "";
    position: absolute;
    right: -2rem;
    bottom: -3rem;
    width: 12rem;
    aspect-ratio: 1;
    border-radius: 45%;
    background: linear-gradient(135deg, rgb(246 101 139 / .75), rgb(255 155 61 / .55));
}

.fm-quality-report__box h2,
.fm-quality-report__box p {
    position: relative;
    z-index: 1;
}

.fm-quality-report__box h2 {
    color: #fff;
}

.fm-quality-report__box p {
    max-width: 34rem;
    margin-top: .75rem;
    color: rgb(255 255 255 / .82);
}

.fm-quality-report__list {
    display: grid;
    gap: .65rem;
    margin-top: 1.2rem;
    position: relative;
    z-index: 1;
}

.fm-quality-report__list span {
    display: flex;
    align-items: center;
    gap: .65rem;
    min-height: 2.8rem;
    padding: .65rem .8rem;
    border: 1px solid rgb(255 255 255 / .14);
    border-radius: .9rem;
    background: rgb(255 255 255 / .08);
    color: #fff;
    font-weight: 700;
}

.fm-quality-steps {
    display: grid;
    gap: .8rem;
    counter-reset: quality-step;
}

.fm-quality-step {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    padding: 1rem;
    counter-increment: quality-step;
}

.fm-quality-step::before {
    content: counter(quality-step);
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    background: #eef9f3;
    color: #087a40;
    font-weight: 820;
}

.fm-quality-faq-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.fm-quality-faq {
    padding: 1.25rem;
}

.fm-quality-final {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: clamp(1.25rem, 3vw, 2rem);
    border-radius: 1.45rem;
    background: linear-gradient(135deg, #f4fff9 0%, #fff 68%);
    border: 1px solid #dceee5;
}

.fm-quality-final__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    justify-content: flex-end;
}

@media (max-width: 991.98px) {
    .fm-quality-hero,
    .fm-quality-report,
    .fm-quality-final {
        grid-template-columns: 1fr;
    }

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

    .fm-quality-final__actions {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .fm-quality-hero {
        min-height: 0;
        padding: 0;
        background: transparent;
    }

    .fm-quality-hero__copy {
        border-radius: 1.35rem;
    }

    .fm-quality-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .fm-quality-action {
        justify-content: center;
        min-width: 0;
        padding: 0 .75rem;
        font-size: .9rem;
    }

    .fm-quality-section__head,
    .fm-quality-grid,
    .fm-quality-faq-grid {
        grid-template-columns: 1fr;
    }
}

/* Contacts page. */
.fm-contacts-page {
    --fm-contact-ink: #14171f;
    --fm-contact-muted: #5f6877;
    --fm-contact-line: #e3eaf1;
    --fm-contact-soft: #f6f8fb;
    --fm-contact-green: #28bf6a;
    --fm-contact-blue: #4baaf4;
    --fm-contact-pink: #f3658b;
    --fm-contact-dark: #172033;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(1rem, 2.6vw, 2rem) 0 clamp(2.8rem, 5vw, 4.6rem);
    color: var(--fm-contact-ink);
}

.fm-contacts-page *,
.fm-contacts-page *::before,
.fm-contacts-page *::after {
    box-sizing: border-box;
}

.fm-contacts-page a {
    color: inherit;
    text-decoration: none !important;
}

.fm-contacts-page p {
    margin: 0;
    color: var(--fm-contact-muted);
    font-size: 1rem;
    line-height: 1.62;
}

.fm-contacts-page h1,
.fm-contacts-page h2,
.fm-contacts-page h3 {
    margin: 0;
    color: var(--fm-contact-ink);
    letter-spacing: 0;
}

.fm-contacts-hero {
    position: relative;
    display: grid;
    justify-items: center;
    text-align: center;
    padding: clamp(.6rem, 2vw, 1.2rem) 0 clamp(1rem, 2.4vw, 1.7rem);
    overflow: hidden;
}

.fm-contacts-hero::before,
.fm-contacts-hero::after {
    content: "";
    position: absolute;
    width: clamp(2.5rem, 5vw, 4.4rem);
    aspect-ratio: 1;
    background: url("/images/heart-love-marriage-13-svgrepo-com.svg") center / contain no-repeat;
    opacity: .9;
    filter: drop-shadow(0 12px 20px rgb(40 191 106 / .18));
    transform: rotate(28deg);
    pointer-events: none;
}

.fm-contacts-hero::before {
    left: clamp(1rem, 12vw, 9rem);
    top: 30%;
    transform: rotate(-18deg);
}

.fm-contacts-hero::after {
    right: clamp(1rem, 9vw, 7rem);
    top: 3%;
    transform: rotate(15deg) scale(1.12);
}

.fm-contacts-eyebrow {
    margin-bottom: .6rem !important;
    color: var(--fm-contact-green) !important;
    font-size: .95rem !important;
    font-weight: 720;
}

.fm-contacts-hero h1 {
    max-width: 10em;
    font-size: clamp(2.75rem, 6vw, 5rem);
    font-weight: 820;
    line-height: 1;
    text-transform: uppercase;
}

.fm-contacts-lead {
    max-width: 36rem;
    margin-top: .8rem !important;
    font-size: clamp(.98rem, 1.25vw, 1.12rem) !important;
}

.fm-contacts-fast {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: clamp(1.2rem, 3vw, 2rem);
}

.fm-contacts-card {
    position: relative;
    min-height: 15rem;
    padding: clamp(1.2rem, 2.7vw, 2rem);
    border: 1px solid var(--fm-contact-line);
    border-radius: 1.6rem;
    background: #fff;
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-contacts-card:hover {
    border-color: #cbdceb;
    box-shadow: 0 18px 42px rgb(20 23 31 / .08);
    transform: translateY(-2px);
}

.fm-contacts-card--soft {
    background:
        radial-gradient(circle at 100% 0%, rgb(40 191 106 / .14), transparent 34%),
        linear-gradient(135deg, #f7fffb 0%, #fff 62%);
}

.fm-contacts-card--dark {
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .12), transparent 34%),
        linear-gradient(135deg, #f7fbff 0%, #fff 64%);
    color: var(--fm-contact-ink);
}

.fm-contacts-card--dark h2,
.fm-contacts-card--dark h3 {
    color: var(--fm-contact-ink);
}

.fm-contacts-card--dark p {
    color: var(--fm-contact-muted);
}

.fm-contacts-card h2,
.fm-contacts-card h3 {
    margin-bottom: .85rem;
    font-size: clamp(1.28rem, 2.1vw, 1.75rem);
    font-weight: 720;
    line-height: 1.14;
}

.fm-contacts-links {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1rem;
}

.fm-contacts-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.35rem;
    padding: 0 .9rem;
    border-radius: 999px;
    background: #eef9f3;
    color: #087a40 !important;
    font-size: .95rem;
    font-weight: 700;
    white-space: nowrap;
    transition: background-color .16s ease, transform .16s ease;
}

.fm-contacts-pill:hover,
.fm-contacts-pill:focus-visible {
    background: #dcf4e7;
    transform: translateY(-1px);
    outline: 0;
}

.fm-contacts-card--dark .fm-contacts-pill {
    background: #eef7ff;
    color: #1672b9 !important;
    box-shadow: none;
}

.fm-contacts-hours {
    display: block;
    margin-top: .75rem;
    color: var(--fm-contact-muted);
    font-size: .92rem;
}

.fm-contacts-card--dark .fm-contacts-hours {
    color: var(--fm-contact-muted);
}

.fm-contacts-section {
    margin-top: clamp(2rem, 4.7vw, 3.8rem);
}

.fm-contacts-section-head {
    display: flex;
    align-items: center;
    gap: clamp(1rem, 3vw, 2.5rem);
    margin-bottom: 1.15rem;
}

.fm-contacts-section h2 {
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    font-weight: 700;
    line-height: 1.08;
}

.fm-contacts-section-head p {
    max-width: 42rem;
}

.fm-contacts-addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.fm-contacts-address {
    display: grid;
    gap: 1rem;
    padding: 1.15rem;
    border: 1px solid var(--fm-contact-line);
    border-radius: 1.35rem;
    background: #fff;
}

.fm-contacts-address__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .85rem;
    align-items: start;
}

.fm-contacts-badge {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 .7rem;
    border-radius: 999px;
    background: var(--fm-contact-soft);
    color: #293244;
    font-size: .9rem;
    font-weight: 700;
    white-space: nowrap;
}

.fm-contacts-map {
    position: relative;
    min-height: 22rem;
    border: 1px solid #dce8f4;
    border-radius: 1.15rem;
    background: #eef6fb;
    overflow: hidden;
    box-shadow: inset 0 0 0 1px rgb(255 255 255 / .55);
}

.fm-contacts-map iframe {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 22rem;
    border: 0;
    filter: saturate(.95) contrast(.98);
}

.fm-contacts-map::before {
    content: "Цветочная Мафия";
    position: absolute;
    left: 1rem;
    top: 1rem;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    min-height: 2.2rem;
    padding: 0 .85rem;
    border-radius: 999px;
    background: #fff;
    color: #172033;
    font-size: .9rem;
    font-weight: 760;
    box-shadow: 0 12px 30px rgb(20 23 31 / .08);
}

.fm-contacts-map::after {
    content: "";
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    z-index: 1;
    width: 2.65rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 38%, #fff 0 .42rem, transparent .44rem),
        radial-gradient(circle at 36% 58%, #ff8faf 0 .5rem, transparent .52rem),
        radial-gradient(circle at 64% 58%, #f3658b 0 .5rem, transparent .52rem),
        radial-gradient(circle at 50% 74%, #e94d7c 0 .44rem, transparent .46rem),
        #fff;
    box-shadow: 0 14px 32px rgb(20 23 31 / .12);
    pointer-events: none;
}

.fm-contacts-legal {
    display: grid;
    grid-template-columns: minmax(16rem, .8fr) minmax(0, 1.2fr);
    gap: 1rem;
    padding: clamp(1rem, 2.5vw, 1.35rem);
    border: 1px solid #dfe9f3;
    border-radius: 1.6rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(243 101 139 / .13), transparent 25%),
        linear-gradient(135deg, #fff9fb 0%, #fff 52%, #f5fbff 100%);
}

.fm-contacts-legal__summary {
    position: relative;
    padding: 1.35rem;
    border-radius: 1.25rem;
    border: 1px solid #dce8f4;
    background:
        radial-gradient(circle at 100% 0%, rgb(40 191 106 / .16), transparent 32%),
        linear-gradient(135deg, #ffffff 0%, #f8fcff 100%);
    color: var(--fm-contact-ink);
    overflow: hidden;
    box-shadow: 0 16px 38px rgb(26 38 58 / .06);
}

.fm-contacts-legal__summary::before {
    content: "Реквизиты";
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    margin-bottom: 1rem;
    padding: 0 .75rem;
    border-radius: 999px;
    background: #eef9f3;
    color: #087a40;
    font-size: .9rem;
    font-weight: 740;
}

.fm-contacts-legal__summary::after {
    content: "";
    position: absolute;
    right: -1.3rem;
    bottom: -1.6rem;
    width: 9rem;
    aspect-ratio: 1;
    border-radius: 2rem;
    background:
        linear-gradient(135deg, rgb(75 170 244 / .18), rgb(40 191 106 / .18));
    transform: rotate(14deg);
    pointer-events: none;
}

.fm-contacts-legal__summary h3 {
    max-width: 15rem;
    color: var(--fm-contact-ink);
    font-size: clamp(1.35rem, 2.4vw, 2rem);
    font-weight: 760;
    line-height: 1.08;
}

.fm-contacts-legal__summary p {
    position: relative;
    z-index: 1;
    max-width: 28rem;
    margin-top: .8rem;
    color: var(--fm-contact-muted);
}

.fm-contacts-legal__summary .fm-contacts-links {
    position: relative;
    z-index: 1;
}

.fm-contacts-requisites {
    border: 1px solid var(--fm-contact-line);
    border-radius: 1.25rem;
    background: #fff;
    overflow: hidden;
}

.fm-contacts-requisites summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.2rem;
    cursor: pointer;
    font-weight: 730;
    list-style: none;
}

.fm-contacts-requisites summary::-webkit-details-marker {
    display: none;
}

.fm-contacts-requisites summary::after {
    content: "+";
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--fm-contact-soft);
    color: var(--fm-contact-blue);
    font-size: 1.25rem;
}

.fm-contacts-requisites[open] summary::after {
    content: "-";
}

.fm-contacts-req-list {
    display: grid;
    gap: .65rem;
    padding: 0 1.2rem 1.2rem;
}

.fm-contacts-req-list div {
    display: grid;
    grid-template-columns: minmax(8rem, .45fr) minmax(0, 1fr);
    gap: 1rem;
    padding-top: .65rem;
    border-top: 1px solid var(--fm-contact-line);
}

.fm-contacts-req-list dt {
    color: var(--fm-contact-muted);
    font-size: .92rem;
}

.fm-contacts-req-list dd {
    margin: 0;
    color: var(--fm-contact-ink);
    font-weight: 650;
}

.fm-contacts-faq {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    counter-reset: contacts-faq;
}

.fm-contacts-faq article {
    position: relative;
    min-height: 12rem;
    padding: 1.25rem 1.2rem 1.2rem;
    border: 1px solid #dce8f4;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .1), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-contacts-faq article::before {
    counter-increment: contacts-faq;
    content: counter(contacts-faq);
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    margin-bottom: .85rem;
    border-radius: 50%;
    background: #eef9f3;
    color: #087a40;
    font-size: .9rem;
    font-weight: 760;
}

.fm-contacts-faq article:first-child {
    grid-column: span 2;
    background:
        radial-gradient(circle at 92% 0%, rgb(40 191 106 / .18), transparent 30%),
        linear-gradient(135deg, #f4fff9 0%, #ffffff 62%);
}

.fm-contacts-faq article:hover {
    border-color: #cbdceb;
    box-shadow: 0 14px 34px rgb(26 38 58 / .07);
    transform: translateY(-2px);
}

.fm-contacts-faq h3 {
    margin-bottom: .55rem;
    font-size: 1.08rem;
    font-weight: 700;
    line-height: 1.25;
}

.fm-contacts-faq p {
    font-size: .98rem;
}

@media (max-width: 991.98px) {
    .fm-contacts-fast,
    .fm-contacts-addresses,
    .fm-contacts-legal,
    .fm-contacts-faq {
        grid-template-columns: 1fr;
    }

    .fm-contacts-section-head {
        flex-direction: column;
        align-items: flex-start;
        gap: .65rem;
    }
}

@media (max-width: 767.98px) {
    .fm-contacts-hero {
        text-align: left;
        justify-items: start;
    }

    .fm-contacts-hero::before,
    .fm-contacts-hero::after {
        opacity: .25;
    }

    .fm-contacts-hero h1 {
        font-size: 2.55rem;
    }

    .fm-contacts-address__top,
    .fm-contacts-req-list div {
        grid-template-columns: 1fr;
        gap: .45rem;
    }

    .fm-contacts-map,
    .fm-contacts-map iframe {
        min-height: 18rem;
    }

    .fm-contacts-badge {
        justify-self: start;
    }

    .fm-contacts-faq article:first-child {
        grid-column: auto;
    }

    .fm-contacts-pill {
        width: 100%;
    }
}

/* Main delivery page. */
.fm-delivery-info {
    --fm-di-ink: #131722;
    --fm-di-muted: #5e6878;
    --fm-di-line: #e3e9f0;
    --fm-di-soft: #f6f8fb;
    --fm-di-blue: #4baaf4;
    --fm-di-orange: #ff9540;
    --fm-di-purple: #8d70df;
    --fm-di-green: #55c779;
    --fm-di-coral: #f3655b;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(1rem, 2.5vw, 2rem) 0 clamp(2.6rem, 5vw, 4.5rem);
    color: var(--fm-di-ink);
    overflow-wrap: anywhere;
}

.fm-delivery-info *,
.fm-delivery-info *::before,
.fm-delivery-info *::after {
    box-sizing: border-box;
}

.fm-delivery-info a {
    text-decoration: none !important;
}

.fm-delivery-info p {
    margin: 0;
    color: var(--fm-di-muted);
    font-size: 1rem;
    line-height: 1.62;
}

.fm-delivery-info h1,
.fm-delivery-info h2,
.fm-delivery-info h3 {
    margin: 0;
    color: var(--fm-di-ink);
    letter-spacing: 0;
}

.fm-delivery-info__hero {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(18rem, .92fr);
    gap: clamp(1.2rem, 3vw, 2rem);
    align-items: stretch;
    margin-bottom: clamp(1.6rem, 4vw, 3rem);
}

.fm-delivery-info__intro {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 26rem;
    padding: clamp(1.45rem, 3.4vw, 3rem);
    border-radius: 2rem;
    background: var(--fm-di-blue);
    color: #fff;
    overflow: hidden;
    position: relative;
    isolation: isolate;
}

.fm-delivery-info__intro::after {
    content: "";
    position: absolute;
    right: clamp(-1.8rem, -3vw, -.7rem);
    bottom: clamp(-1.6rem, -3vw, -.5rem);
    width: clamp(9rem, 19vw, 15rem);
    aspect-ratio: 1;
    border-radius: 50%;
    background:
        radial-gradient(ellipse at 50% 14%, rgb(255 255 255 / .9) 0 13%, transparent 14%),
        radial-gradient(ellipse at 82% 38%, rgb(255 236 246 / .78) 0 16%, transparent 17%),
        radial-gradient(ellipse at 68% 82%, rgb(255 255 255 / .72) 0 16%, transparent 17%),
        radial-gradient(ellipse at 32% 82%, rgb(255 236 246 / .72) 0 16%, transparent 17%),
        radial-gradient(ellipse at 18% 38%, rgb(255 255 255 / .78) 0 16%, transparent 17%),
        radial-gradient(circle at 50% 50%, rgb(255 197 224 / .95) 0 11%, transparent 12%),
        radial-gradient(circle at 50% 50%, rgb(0 95 190 / .28), transparent 58%);
    opacity: .92;
    transform: rotate(-10deg);
    z-index: -1;
}

.fm-delivery-info__eyebrow {
    margin-bottom: .8rem !important;
    color: rgb(255 255 255 / .82) !important;
    font-size: .95rem !important;
    font-weight: 650;
}

.fm-delivery-info__intro h1 {
    max-width: 10em;
    color: #fff;
    font-size: clamp(2.35rem, 5.4vw, 3.8rem);
    font-weight: 820;
    line-height: 1.02;
}

.fm-delivery-info__lead {
    max-width: 41rem;
    margin-top: 1rem !important;
    color: rgb(255 255 255 / .9) !important;
    font-size: clamp(1.02rem, 1.5vw, 1.25rem) !important;
    line-height: 1.55 !important;
}

.fm-delivery-info__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
    margin-top: 1.35rem !important;
}

.fm-delivery-info__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: 0 1rem;
    border-radius: 999px;
    background: #fff;
    color: #172033 !important;
    font-size: .95rem;
    font-weight: 680;
    transition: transform .16s ease, background-color .16s ease, color .16s ease;
}

.fm-delivery-info__button--ghost {
    background: rgb(255 255 255 / .16);
    color: #fff !important;
    box-shadow: inset 0 0 0 1px rgb(255 255 255 / .3);
}

.fm-delivery-info__button:hover,
.fm-delivery-info__button:focus-visible {
    transform: translateY(-1px);
    outline: 0;
}

.fm-delivery-info__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.fm-delivery-tile {
    position: relative;
    min-height: 13.2rem;
    padding: 1.35rem;
    border-radius: 1.55rem;
    overflow: hidden;
    color: #fff;
    isolation: isolate;
    transition: transform .16s ease, box-shadow .16s ease;
}

.fm-delivery-tile:hover {
    box-shadow: 0 18px 42px rgb(20 23 31 / .12);
    transform: translateY(-3px);
}

.fm-delivery-tile::after {
    content: "";
    position: absolute;
    right: -2.4rem;
    bottom: -2.4rem;
    width: 9rem;
    aspect-ratio: 1;
    border-radius: 2.2rem;
    background: rgb(255 255 255 / .2);
    transform: rotate(18deg);
    z-index: -1;
}

.fm-delivery-tile--express { background: var(--fm-di-orange); }
.fm-delivery-tile--time { background: var(--fm-di-purple); }
.fm-delivery-tile--area { background: var(--fm-di-green); }
.fm-delivery-tile--pickup { background: var(--fm-di-coral); }

.fm-delivery-tile h2,
.fm-delivery-tile h3 {
    color: #fff;
    font-size: clamp(1.55rem, 2.7vw, 2.4rem);
    font-weight: 760;
    line-height: 1.08;
}

.fm-delivery-tile p {
    max-width: 22rem;
    margin-top: .75rem;
    color: rgb(255 255 255 / .9);
    font-size: .95rem;
    line-height: 1.52;
}

.fm-delivery-tile__price {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    margin-top: 1rem;
    padding: 0 .75rem;
    border-radius: 999px;
    background: rgb(255 255 255 / .18);
    color: #fff;
    font-size: .9rem;
    font-weight: 700;
}

.fm-delivery-info__section {
    margin-top: clamp(2.2rem, 5vw, 4rem);
}

.fm-delivery-info__section-head {
    display: flex;
    gap: clamp(1rem, 3vw, 2.5rem);
    align-items: center;
    margin-bottom: 1.15rem;
}

.fm-delivery-info__section-head > p {
    max-width: 42rem;
}

.fm-delivery-info__section h2 {
    font-size: clamp(1.65rem, 3vw, 2.65rem);
    font-weight: 700;
    line-height: 1.08;
}

.fm-delivery-rates {
    display: grid;
    gap: .8rem;
}

.fm-delivery-rate {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(8rem, .2fr) minmax(8rem, .16fr);
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    border: 1px solid var(--fm-di-line);
    border-radius: 1.1rem;
    background: #fff;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-delivery-rate:hover {
    border-color: #cbd7e4;
    box-shadow: 0 12px 30px rgb(20 23 31 / .07);
    transform: translateY(-1px);
}

.fm-delivery-rate h3 {
    margin-bottom: .25rem;
    font-size: 1.12rem;
    font-weight: 740;
}

.fm-delivery-rate__meta,
.fm-delivery-rate__price {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    min-height: 2.1rem;
    padding: .4rem .72rem;
    border-radius: 999px;
    background: var(--fm-di-soft);
    color: #273142;
    font-size: .92rem;
    font-weight: 680;
    white-space: nowrap;
}

.fm-delivery-rate__price {
    justify-self: end;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--fm-di-line);
}

.fm-delivery-zone-grid,
.fm-delivery-pickup-grid,
.fm-delivery-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.fm-delivery-panel {
    padding: 1.25rem;
    border: 1px solid var(--fm-di-line);
    border-radius: 1.25rem;
    background: #fff;
}

.fm-delivery-panel h3 {
    margin-bottom: .55rem;
    font-size: 1.12rem;
    font-weight: 740;
}

.fm-delivery-faq-grid {
    counter-reset: delivery-faq;
}

.fm-delivery-faq-grid .fm-delivery-panel {
    position: relative;
    min-height: 9.25rem;
    padding: 1.35rem 1.35rem 1.35rem 4.15rem;
    border-color: #dce8f4;
    background:
        radial-gradient(circle at 100% 0%, rgb(75 170 244 / .12), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdff 100%);
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-delivery-faq-grid .fm-delivery-panel::before {
    counter-increment: delivery-faq;
    content: counter(delivery-faq);
    position: absolute;
    left: 1.25rem;
    top: 1.25rem;
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #eef7ff;
    color: #1f83d1;
    font-size: .95rem;
    font-weight: 760;
    box-shadow: inset 0 0 0 1px #d9ebfb;
}

.fm-delivery-faq-grid .fm-delivery-panel::after {
    content: "";
    position: absolute;
    right: 1.1rem;
    bottom: 1rem;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 34%, #ffd7e0 0 .28rem, transparent .3rem),
        radial-gradient(circle at 35% 55%, #ff8faf 0 .34rem, transparent .36rem),
        radial-gradient(circle at 65% 56%, #ff7fa1 0 .34rem, transparent .36rem),
        radial-gradient(circle at 50% 72%, #e94d7c 0 .32rem, transparent .34rem);
    opacity: .22;
    pointer-events: none;
}

.fm-delivery-faq-grid .fm-delivery-panel:hover {
    border-color: #c9ddf0;
    box-shadow: 0 14px 34px rgb(26 38 58 / .08);
    transform: translateY(-2px);
}

.fm-delivery-faq-grid .fm-delivery-panel h3 {
    margin-bottom: .6rem;
    font-size: 1.08rem;
    font-weight: 700;
    line-height: 1.25;
}

.fm-delivery-payment {
    display: grid;
    grid-template-columns: minmax(16rem, .85fr) minmax(0, 1.15fr);
    gap: 1rem;
    padding: clamp(1rem, 2.5vw, 1.35rem);
    border: 1px solid #dfe9f3;
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(255 143 175 / .14), transparent 25%),
        linear-gradient(135deg, #fff8fb 0%, #ffffff 46%, #f5fbff 100%);
}

.fm-delivery-payment__note {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
        "title"
        "text"
        "image"
        "contacts";
    gap: .85rem;
    align-items: start;
    min-height: 22rem;
    padding: 1.45rem;
    border-radius: 1.35rem;
    background: #172033;
    color: #fff;
    overflow: hidden;
}

.fm-delivery-payment__note::after {
    content: "";
    position: absolute;
    right: -4.2rem;
    bottom: -4.4rem;
    width: 14rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle, rgb(75 170 244 / .24), transparent 68%);
    opacity: .9;
}

.fm-delivery-payment__note b {
    grid-area: title;
    align-self: start;
    display: block;
    max-width: 24rem;
    color: #fff;
    font-size: clamp(1.55rem, 2.7vw, 2.25rem);
    font-weight: 760;
    line-height: 1.08;
    position: relative;
    z-index: 1;
}

.fm-delivery-payment__note p {
    grid-area: text;
    align-self: start;
    max-width: 25rem;
    margin-top: 0;
    color: rgb(255 255 255 / .78);
    position: relative;
    z-index: 1;
}

.fm-delivery-payment__contacts {
    grid-area: contacts;
    align-self: start;
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: .15rem;
    position: relative;
    z-index: 2;
}

.fm-delivery-payment__contacts a {
    display: inline-flex;
    align-items: center;
    min-height: 2.2rem;
    padding: 0 .8rem;
    border-radius: 999px;
    background: rgb(255 255 255 / .12);
    color: #fff !important;
    font-size: .92rem;
    font-weight: 650;
    box-shadow: inset 0 0 0 1px rgb(255 255 255 / .18);
    transition: background-color .16s ease, transform .16s ease;
}

.fm-delivery-payment__contacts a:hover,
.fm-delivery-payment__contacts a:focus-visible {
    background: rgb(255 255 255 / .18);
    transform: translateY(-1px);
    outline: 0;
}

.fm-delivery-payment__image {
    grid-area: image;
    align-self: center;
    justify-self: center;
    display: block;
    width: min(92%, 24rem);
    max-height: 18rem;
    object-fit: contain;
    filter: drop-shadow(0 18px 32px rgb(0 0 0 / .22));
    position: relative;
    z-index: 1;
}

.fm-delivery-payment__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.fm-delivery-payment-card {
    position: relative;
    min-height: 8.8rem;
    padding: 1.15rem;
    border: 1px solid #dfe8f2;
    border-radius: 1.15rem;
    background: rgb(255 255 255 / .86);
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-delivery-payment-card::before {
    content: "";
    position: absolute;
    right: 1rem;
    top: 1rem;
    width: .65rem;
    height: .65rem;
    border-radius: 50%;
    background: var(--fm-di-blue);
    box-shadow: 0 0 0 .45rem rgb(75 170 244 / .1);
}

.fm-delivery-payment-card:hover {
    border-color: #cad9e8;
    box-shadow: 0 14px 34px rgb(26 38 58 / .08);
    transform: translateY(-2px);
}

.fm-delivery-payment-card h3 {
    max-width: 12rem;
    margin-bottom: .55rem;
    font-size: 1.08rem;
    font-weight: 700;
    line-height: 1.25;
}

.fm-delivery-payment-card p {
    max-width: 22rem;
    font-size: .96rem;
    line-height: 1.55;
}

.fm-delivery-payment-card--bank::before { background: #ef3124; box-shadow: 0 0 0 .45rem rgb(239 49 36 / .1); }
.fm-delivery-payment-card--sbp::before { background: #24b36b; box-shadow: 0 0 0 .45rem rgb(36 179 107 / .12); }
.fm-delivery-payment-card--yookassa::before { background: #8d70df; box-shadow: 0 0 0 .45rem rgb(141 112 223 / .12); }
.fm-delivery-payment-card--cash::before { background: #ff9540; box-shadow: 0 0 0 .45rem rgb(255 149 64 / .13); }
.fm-delivery-payment-card--pickup::before { background: #4baaf4; box-shadow: 0 0 0 .45rem rgb(75 170 244 / .1); }
.fm-delivery-payment-card--transfer::before { background: #e94d7c; box-shadow: 0 0 0 .45rem rgb(233 77 124 / .11); }

.fm-delivery-chips {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: .9rem;
}

.fm-delivery-chips span,
.fm-delivery-chips a {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 .7rem;
    border: 1px solid var(--fm-di-line);
    border-radius: 999px;
    background: #fff;
    color: #354052;
    font-size: .9rem;
    font-weight: 600;
}

.fm-delivery-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--fm-di-line);
    border-radius: 1.2rem;
    background: #fff;
    -webkit-overflow-scrolling: touch;
}

.fm-delivery-directions {
    display: grid;
    gap: 1rem;
    padding: clamp(1rem, 2.5vw, 1.35rem);
    border: 1px solid #dceaf7;
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at 92% 0%, rgb(75 170 244 / .16), transparent 24%),
        linear-gradient(135deg, #f7fbff 0%, #ffffff 54%, #f8fbff 100%);
}

.fm-delivery-directions__top {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
}

.fm-delivery-direction-card {
    position: relative;
    padding: 1rem;
    border: 1px solid #dce8f4;
    border-radius: 1.1rem;
    background: #fff;
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-delivery-direction-card::after {
    content: "";
    position: absolute;
    right: -.9rem;
    bottom: -.9rem;
    width: 3.4rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgb(75 170 244 / .13);
}

.fm-delivery-direction-card:hover {
    border-color: #cbd7e4;
    box-shadow: 0 12px 28px rgb(20 23 31 / .08);
    transform: translateY(-2px);
}

.fm-delivery-direction-card b {
    display: block;
    margin-bottom: .45rem;
    color: var(--fm-di-ink);
    font-size: 1.04rem;
    font-weight: 720;
    line-height: 1.2;
}

.fm-delivery-direction-card span {
    position: relative;
    z-index: 1;
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    padding: 0 .7rem;
    border-radius: 999px;
    background: var(--fm-di-soft);
    color: #273142;
    font-size: .92rem;
    font-weight: 680;
}

.fm-delivery-directions__details {
    border: 1px solid #cfe1f2;
    border-radius: 1.35rem;
    background:
        radial-gradient(circle at 88% 28%, rgb(75 170 244 / .16), transparent 28%),
        linear-gradient(135deg, #f6fbff 0%, #ffffff 58%);
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fm-delivery-directions__details:hover {
    border-color: #cbd7e4;
    box-shadow: 0 14px 34px rgb(20 23 31 / .08);
    transform: translateY(-1px);
}

.fm-delivery-directions__details summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 2.5rem;
    align-items: center;
    gap: .9rem;
    min-height: 5rem;
    padding: 1rem 1.1rem;
    color: #273142;
    cursor: pointer;
    list-style: none;
}

.fm-delivery-directions__details summary::-webkit-details-marker {
    display: none;
}

.fm-delivery-directions__details summary::after {
    content: "";
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background:
        linear-gradient(45deg, transparent 45%, currentColor 46% 54%, transparent 55%) center / .9rem .9rem no-repeat,
        #fff;
    color: var(--fm-di-blue);
    box-shadow: inset 0 0 0 1px var(--fm-di-line);
    transform: rotate(90deg);
    transition: transform .16s ease, background-color .16s ease;
}

.fm-delivery-directions__details[open] summary::after {
    transform: rotate(270deg);
}

.fm-delivery-directions__details[open] {
    box-shadow: 0 18px 42px rgb(20 23 31 / .08);
}

.fm-delivery-directions__details .fm-delivery-table-wrap {
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
    border-radius: 0;
}

.fm-delivery-directions__details .fm-delivery-table-wrap table {
    min-width: 0;
}

.fm-delivery-directions__details td:nth-child(2),
.fm-delivery-directions__details td:nth-child(4) {
    color: #273142;
    font-weight: 700;
    white-space: nowrap;
}

.fm-delivery-directions__summary-copy {
    min-width: 0;
}

.fm-delivery-directions__summary-copy b {
    display: block;
    color: var(--fm-di-ink);
    font-size: clamp(1.08rem, 1.6vw, 1.35rem);
    font-weight: 760;
    line-height: 1.2;
}

.fm-delivery-directions__summary-copy span {
    display: block;
    margin-top: .25rem;
    color: var(--fm-di-muted);
    font-size: .95rem;
    line-height: 1.35;
}

.fm-delivery-directions__summary-badge {
    display: inline-flex;
    align-items: center;
    min-height: 2.35rem;
    padding: 0 .85rem;
    border-radius: 999px;
    background: #fff;
    color: #273142;
    font-size: .92rem;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: inset 0 0 0 1px var(--fm-di-line);
}

.fm-delivery-info table {
    width: 100%;
    min-width: 46rem;
    border-collapse: collapse;
}

.fm-delivery-info th,
.fm-delivery-info td {
    padding: .9rem 1rem;
    border-bottom: 1px solid var(--fm-di-line);
    text-align: left;
    vertical-align: top;
    font-size: .95rem;
    line-height: 1.45;
}

.fm-delivery-info th {
    background: #f7f9fc;
    color: #667085;
    font-size: .78rem;
    font-weight: 720;
    text-transform: uppercase;
}

.fm-delivery-info tr:last-child td {
    border-bottom: 0;
}

.fm-delivery-steps {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .85rem;
}

.fm-delivery-step {
    padding: 1rem;
    border: 1px solid var(--fm-di-line);
    border-radius: 1.1rem;
    background: #fff;
}

.fm-delivery-step b {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    margin-bottom: .85rem;
    border-radius: 50%;
    background: var(--fm-di-soft);
    color: #273142;
}

.fm-delivery-step p {
    font-size: .93rem;
}

.fm-delivery-order {
    position: relative;
    overflow: hidden;
    padding: clamp(1.45rem, 4vw, 3rem);
    border-radius: 2rem;
    background: #8f72df;
    color: #fff;
    isolation: isolate;
}

.fm-delivery-order::before,
.fm-delivery-order::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: -1;
}

.fm-delivery-order::before {
    right: -9%;
    top: -18%;
    width: min(48rem, 62vw);
    height: 150%;
    background: rgb(255 255 255 / .18);
    transform: rotate(-38deg);
    border-radius: 6rem;
}

.fm-delivery-order::after {
    right: 18%;
    bottom: -38%;
    width: min(28rem, 42vw);
    aspect-ratio: 1;
    border-radius: 50%;
    background: rgb(255 255 255 / .14);
}

.fm-delivery-order__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: clamp(1.6rem, 4vw, 3.1rem);
}

.fm-delivery-order__head h2 {
    max-width: 8em;
    color: #fff;
    font-size: clamp(2rem, 5vw, 4rem);
    font-weight: 760;
    line-height: 1.02;
}

.fm-delivery-order__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    padding: 0 1.15rem;
    border-radius: .8rem;
    background: #fff;
    color: #16171f !important;
    font-size: .95rem;
    font-weight: 680;
    white-space: nowrap;
    transition: transform .16s ease, box-shadow .16s ease;
}

.fm-delivery-order__button:hover,
.fm-delivery-order__button:focus-visible {
    box-shadow: 0 12px 26px rgb(20 23 31 / .14);
    outline: 0;
    transform: translateY(-1px);
}

.fm-delivery-order__steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1rem, 2.2vw, 1.8rem);
}

.fm-delivery-order-step {
    position: relative;
    min-width: 0;
}

.fm-delivery-order-step:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 4rem;
    right: .7rem;
    top: 2rem;
    height: 2px;
    background: linear-gradient(90deg, rgb(255 255 255 / .34), rgb(255 255 255 / .12));
}

.fm-delivery-order-step__num {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 4rem;
    height: 4rem;
    margin-bottom: 1.3rem;
    border-radius: 50%;
    background: rgb(255 255 255 / .22);
    color: #fff;
    font-size: 1.6rem;
    font-weight: 760;
}

.fm-delivery-order-step h3 {
    color: #fff;
    font-size: 1.08rem;
    font-weight: 720;
    line-height: 1.25;
}

.fm-delivery-order-step p {
    margin-top: .65rem;
    color: rgb(255 255 255 / .82);
    font-size: .95rem;
    line-height: 1.55;
}

.fm-delivery-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(2.2rem, 5vw, 4rem);
    padding: clamp(1.25rem, 3vw, 2rem);
    border-radius: 1.55rem;
    background: var(--fm-di-ink);
}

.fm-delivery-cta h2,
.fm-delivery-cta p {
    color: #fff;
}

.fm-delivery-cta h2 {
    font-size: clamp(1.45rem, 2.8vw, 2.35rem);
}

.fm-delivery-cta p {
    margin-top: .4rem;
    opacity: .82;
}

@media (max-width: 991.98px) {
    .fm-delivery-info__hero,
    .fm-delivery-info__section-head,
    .fm-delivery-cta {
        grid-template-columns: 1fr;
    }

    .fm-delivery-info__intro {
        min-height: 22rem;
    }

    .fm-delivery-info__section-head {
        flex-direction: column;
        align-items: flex-start;
        gap: .65rem;
    }

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

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

    .fm-delivery-order-step:nth-child(2)::after {
        content: none;
    }
}

@media (max-width: 767.98px) {
    .fm-delivery-info__cards,
    .fm-delivery-zone-grid,
    .fm-delivery-pickup-grid,
    .fm-delivery-faq-grid,
    .fm-delivery-directions__top {
        grid-template-columns: 1fr;
    }

    .fm-delivery-info__intro h1 {
        font-size: 2.35rem;
    }

    .fm-delivery-directions__details summary {
        grid-template-columns: minmax(0, 1fr) 2.5rem;
    }

    .fm-delivery-directions__summary-badge {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .fm-delivery-rate {
        grid-template-columns: 1fr;
        gap: .65rem;
    }

    .fm-delivery-rate__price {
        justify-self: start;
    }

    .fm-delivery-payment {
        grid-template-columns: 1fr;
        border-radius: 1.25rem;
        padding: .85rem;
    }

    .fm-delivery-payment__note {
        min-height: 0;
    }

    .fm-delivery-payment__image {
        width: min(92%, 18rem);
        max-height: 15rem;
        margin-top: .15rem;
    }

    .fm-delivery-payment__contacts {
        margin-top: .2rem;
    }

    .fm-delivery-payment__grid {
        grid-template-columns: 1fr;
    }

    .fm-delivery-faq-grid .fm-delivery-panel {
        min-height: 0;
        padding: 1.15rem 1.1rem 1.15rem 3.65rem;
    }

    .fm-delivery-faq-grid .fm-delivery-panel::before {
        left: 1rem;
        top: 1.05rem;
    }

    .fm-delivery-steps {
        grid-template-columns: 1fr;
    }

    .fm-delivery-order__head {
        display: grid;
    }

    .fm-delivery-order__button {
        width: 100%;
    }

    .fm-delivery-order__steps {
        grid-template-columns: 1fr;
    }

    .fm-delivery-order-step:not(:last-child)::after {
        left: 2rem;
        right: auto;
        top: 4.4rem;
        width: 2px;
        height: calc(100% - 2.1rem);
        background: linear-gradient(180deg, rgb(255 255 255 / .34), rgb(255 255 255 / .12));
    }

    .fm-delivery-info table {
        min-width: 40rem;
    }

    .fm-delivery-directions {
        padding: .8rem;
        border-radius: 1.25rem;
    }

    .fm-delivery-directions__details .fm-delivery-table-wrap {
        overflow: visible;
    }

    .fm-delivery-directions__details table,
    .fm-delivery-directions__details thead,
    .fm-delivery-directions__details tbody,
    .fm-delivery-directions__details tr,
    .fm-delivery-directions__details td {
        display: block;
        width: 100%;
        min-width: 0;
    }

    .fm-delivery-directions__details table {
        padding: .8rem;
    }

    .fm-delivery-directions__details thead {
        display: none;
    }

    .fm-delivery-directions__details tr {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: .55rem .8rem;
        padding: .85rem;
        border: 1px solid var(--fm-di-line);
        border-radius: 1rem;
        background: #fff;
    }

    .fm-delivery-directions__details tr + tr {
        margin-top: .65rem;
    }

    .fm-delivery-directions__details td {
        padding: 0;
        border: 0;
        font-size: .95rem;
    }

    .fm-delivery-directions__details td:nth-child(2),
    .fm-delivery-directions__details td:nth-child(4) {
        justify-self: end;
        color: #273142;
        font-weight: 720;
    }

    .fm-delivery-directions__details td:nth-child(3) {
        padding-top: .6rem;
        border-top: 1px dashed var(--fm-di-line);
    }
}

/* Clean editorial layout for the 24/7 flower delivery landing page. */
.night-delivery-page {
    --night-ink: #14171f;
    --night-muted: #626b79;
    --night-line: #e7ebf0;
    --night-soft: #f5f6f8;
    --night-soft-2: #eef6f8;
    --night-accent: #0f7a86;
    --night-rose: #e72d73;
    max-width: 1180px;
    margin: 0 auto;
    padding: clamp(1.1rem, 2.5vw, 2rem) 0 clamp(2.5rem, 5vw, 4.5rem);
    color: var(--night-ink);
}

.night-delivery-page *,
.night-delivery-page *::before,
.night-delivery-page *::after {
    box-sizing: border-box;
}

.night-delivery-page a {
    color: inherit;
    text-decoration: none;
}

.night-delivery-page p {
    margin: 0;
    color: var(--night-muted);
    font-size: 1rem;
    line-height: 1.65;
}

.night-delivery-page h1,
.night-delivery-page h2,
.night-delivery-page h3,
.night-delivery-hero__title {
    margin: 0;
    color: var(--night-ink);
    letter-spacing: 0;
}

.night-delivery-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr);
    gap: clamp(1.5rem, 4vw, 3.4rem);
    align-items: center;
    padding: clamp(1rem, 2vw, 1.5rem) 0 clamp(2.4rem, 5vw, 4rem);
}

.night-delivery-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    margin-bottom: 1rem;
    padding: 0 .85rem;
    border: 1px solid var(--night-line);
    border-radius: 999px;
    background: #fff;
    color: var(--night-accent);
    font-size: .82rem;
    font-weight: 800;
    line-height: 1;
}

.night-delivery-hero__title {
    display: block;
    max-width: 13em;
    font-size: clamp(2.05rem, 4.6vw, 4.05rem);
    font-weight: 900;
    line-height: 1.08;
}

.night-delivery-page .night-delivery-hero__lead {
    max-width: 42rem;
    margin-top: clamp(1.05rem, 2vw, 1.55rem);
    color: #3d4550;
    font-size: clamp(1.02rem, 1.35vw, 1.18rem);
    line-height: 1.62;
}

.night-delivery-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.45rem;
}

.night-delivery-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.85rem;
    padding: 0 1.05rem;
    border-radius: 999px;
    background: var(--night-ink);
    color: #fff !important;
    font-size: .96rem;
    font-weight: 680;
    line-height: 1;
}

.night-delivery-button--light {
    border: 1px solid var(--night-line);
    background: #fff;
    color: #243041 !important;
    font-weight: 620;
}

.night-delivery-visual {
    min-height: clamp(20rem, 34vw, 31rem);
    border-radius: 1.75rem;
    background:
        linear-gradient(135deg, rgb(15 122 134 / .12), rgb(231 45 115 / .08)),
        #f4f6f8;
    overflow: hidden;
}

.night-delivery-visual,
.night-delivery-photo-slot {
    position: relative;
    display: grid;
    place-items: center;
    border: 1px dashed #c7d0db;
}

.night-delivery-visual--image {
    border-style: solid;
    border-color: var(--night-line);
    background: #edf2f5;
}

.night-delivery-visual::before,
.night-delivery-photo-slot::before {
    content: "";
    position: absolute;
    inset: clamp(1rem, 2.5vw, 1.8rem);
    border-radius: inherit;
    background:
        linear-gradient(135deg, rgb(255 255 255 / .72), rgb(255 255 255 / .24)),
        repeating-linear-gradient(135deg, transparent 0 1.1rem, rgb(20 23 31 / .035) 1.1rem 1.2rem);
}

.night-delivery-visual--image::before {
    content: none;
}

.night-delivery-visual img {
    width: 100%;
    height: 100%;
    min-height: inherit;
    object-fit: cover;
    object-position: center;
}

.night-delivery-visual span,
.night-delivery-photo-slot span {
    position: relative;
    max-width: 16rem;
    color: #536170;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1.45;
    text-align: center;
}

.night-delivery-strip {
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: .95rem;
    border: 1px solid var(--night-line);
    border-radius: 1.45rem;
    background: #f7f9fb;
}

.night-delivery-strip__item {
    min-height: 9rem;
    padding: 1.15rem 1.2rem;
    border: 1px solid #edf1f5;
    border-radius: 1.05rem;
    background: #fff;
}

.night-delivery-strip__item:last-child {
    border-right: 1px solid #edf1f5;
}

.night-delivery-strip b {
    display: block;
    margin-bottom: .55rem;
    color: #151922;
    font-size: clamp(1.18rem, 1.7vw, 1.62rem);
    font-weight: 850;
    line-height: 1.12;
}

.night-delivery-strip p {
    color: #667085;
    font-size: .95rem;
    line-height: 1.58;
}

.night-delivery-section {
    padding: clamp(2.6rem, 5vw, 4.5rem) 0 0;
}

.night-delivery-section__head {
    display: grid;
    grid-template-columns: minmax(13rem, .34fr) minmax(0, .66fr);
    gap: clamp(1rem, 3vw, 3rem);
    align-items: start;
    margin-bottom: 1.5rem;
}

.night-delivery-section h2 {
    font-size: clamp(1.75rem, 3.2vw, 3rem);
    font-weight: 900;
    line-height: 1.05;
}

.night-delivery-list {
    display: grid;
    border-top: 1px solid var(--night-line);
}

.night-delivery-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(10.5rem, .16fr) minmax(8rem, .12fr);
    gap: 1rem;
    align-items: center;
    padding: 1.15rem 0;
    border-bottom: 1px solid var(--night-line);
}

.night-delivery-row h3 {
    margin-bottom: .28rem;
    font-size: clamp(1.04rem, 1.3vw, 1.24rem);
    font-weight: 780;
    line-height: 1.25;
}

.night-delivery-row p {
    max-width: 58rem;
    font-size: .98rem;
    line-height: 1.55;
}

.night-delivery-row__meta,
.night-delivery-row__price {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    min-height: 2.15rem;
    padding: .45rem .75rem;
    border-radius: 999px;
    background: #f5f7fa;
    color: #29313d;
    font-size: .95rem;
    font-weight: 760;
    line-height: 1;
    white-space: nowrap;
}

.night-delivery-row__price {
    justify-self: end;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--night-line);
    text-align: center;
}

.night-delivery-note {
    margin-top: 1.2rem;
    padding: 1.1rem 1.25rem;
    border-radius: 1.2rem;
    background: var(--night-soft);
}

.night-delivery-note strong {
    color: var(--night-ink);
}

.night-delivery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.night-delivery-card {
    min-height: 13rem;
    padding: .85rem;
    border: 1px solid var(--night-line);
    border-radius: 1.25rem;
    background: #fff;
    color: inherit;
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background-color .16s ease;
}

a.night-delivery-card {
    display: flex;
    flex-direction: column;
    text-decoration: none !important;
}

a.night-delivery-card:hover,
a.night-delivery-card:focus-visible {
    border-color: #cfd8e3;
    background: #fbfcfe;
    box-shadow: 0 16px 36px rgb(20 23 31 / .08);
    color: inherit;
    outline: 0;
    transform: translateY(-2px);
}

.night-delivery-card h3 {
    padding: 0 .5rem;
    margin-bottom: .55rem;
    font-size: 1.18rem;
    font-weight: 760;
    line-height: 1.25;
}

.night-delivery-card p {
    padding: 0 .5rem;
}

.night-delivery-card__media {
    display: block;
    aspect-ratio: 5 / 3.35;
    margin-bottom: 1rem;
    border-radius: .95rem;
    overflow: hidden;
    background: #eef3f7;
}

.night-delivery-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .22s ease;
}

a.night-delivery-card:hover .night-delivery-card__media img,
a.night-delivery-card:focus-visible .night-delivery-card__media img {
    transform: scale(1.035);
}

.night-delivery-card__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    margin-top: auto;
    padding: 1.2rem .5rem .25rem;
    color: var(--night-accent);
    font-size: .92rem;
    font-weight: 680;
}

.night-delivery-card__arrow {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #eef6f8;
    color: var(--night-accent);
    transition: transform .16s ease, background-color .16s ease;
}

a.night-delivery-card:hover .night-delivery-card__arrow,
a.night-delivery-card:focus-visible .night-delivery-card__arrow {
    background: #dff0f3;
    transform: translateX(2px);
}

.night-delivery-linkrow {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1rem;
}

.night-delivery-linkrow a {
    display: inline-flex;
    align-items: center;
    min-height: 2.25rem;
    padding: 0 .85rem;
    border: 1px solid var(--night-line);
    border-radius: 999px;
    background: #fff;
    color: #344054;
    font-size: .9rem;
    font-weight: 620;
    text-decoration: none !important;
    transition: border-color .16s ease, color .16s ease, background-color .16s ease;
}

.night-delivery-linkrow a:hover,
.night-delivery-linkrow a:focus-visible {
    border-color: #cbd7e4;
    background: #f7fafc;
    color: var(--night-accent);
    outline: 0;
}

.night-delivery-steps {
    display: grid;
    gap: 0;
    border-top: 1px solid var(--night-line);
}

.night-delivery-step {
    display: grid;
    grid-template-columns: 4rem minmax(0, 1fr);
    gap: 1rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--night-line);
}

.night-delivery-step b {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    background: var(--night-ink);
    color: #fff;
    font-weight: 900;
}

.night-delivery-step h3 {
    margin-bottom: .35rem;
    font-size: 1.22rem;
    font-weight: 900;
}

.night-delivery-photo-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
    gap: 1rem;
}

.night-delivery-photo-slot {
    min-height: 18rem;
    border-radius: 1.35rem;
    background: var(--night-soft-2);
    overflow: hidden;
}

.night-delivery-photo-stack {
    display: grid;
    gap: 1rem;
}

.night-delivery-photo-stack .night-delivery-photo-slot {
    min-height: 8.5rem;
}

.night-delivery-faq {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.night-delivery-faq__item {
    padding: 1.25rem 0;
    border-top: 1px solid var(--night-line);
}

.night-delivery-faq__item h3 {
    margin-bottom: .45rem;
    font-size: 1.08rem;
    font-weight: 900;
}

.night-delivery-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin-top: clamp(2.6rem, 5vw, 4.4rem);
    padding: clamp(1.35rem, 3vw, 2rem);
    border-radius: 1.5rem;
    background: var(--night-ink);
}

.night-delivery-cta h2,
.night-delivery-cta p {
    color: #fff;
}

.night-delivery-cta h2 {
    margin-bottom: .4rem;
    font-size: clamp(1.45rem, 2.7vw, 2.4rem);
}

.night-delivery-cta p {
    opacity: .82;
}

@media (max-width: 991.98px) {
    .night-delivery-hero,
    .night-delivery-section__head,
    .night-delivery-photo-grid,
    .night-delivery-cta {
        grid-template-columns: 1fr;
    }

    .night-delivery-strip,
    .night-delivery-grid,
    .night-delivery-faq {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .night-delivery-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .night-delivery-row__price {
        justify-self: start;
        text-align: left;
    }
}

@media (max-width: 575.98px) {
    .night-delivery-page {
        padding-top: .75rem;
    }

    .night-delivery-hero__title {
        font-size: 2.35rem;
    }

    .night-delivery-strip,
    .night-delivery-grid,
    .night-delivery-faq {
        grid-template-columns: 1fr;
    }

    .night-delivery-strip__item {
        min-height: auto;
        border-right: 1px solid #edf1f5;
        border-bottom: 1px solid #edf1f5;
    }

    .night-delivery-strip__item:last-child {
        border-bottom: 1px solid #edf1f5;
    }

    .night-delivery-step {
        grid-template-columns: 3.2rem minmax(0, 1fr);
    }

    .night-delivery-button {
        width: 100%;
    }
}

#cart-view .checkout-sidebar-coupon:not(.is-open) .checkout-sidebar-coupon__panel {
    display: none !important;
}

#cart-view .checkout-sidebar-coupon.is-open .checkout-sidebar-coupon__panel {
    display: block !important;
}

/* VMEssentials action toasts */
html body #vme-message-box.fm-vme-toast {
    position: fixed !important;
    top: clamp(.85rem, 1.8vw, 1.35rem) !important;
    right: clamp(.85rem, 1.8vw, 1.35rem) !important;
    bottom: auto !important;
    left: auto !important;
    width: min(29rem, calc(100vw - 1.7rem)) !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    z-index: 20000 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(-.55rem) !important;
    transition: opacity .18s ease, transform .18s ease !important;
}

html body #vme-message-box.fm-vme-toast.vme-in {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

html body #vme-message-box.fm-vme-toast .vme-message {
    position: relative !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dce7f5 !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .13) !important;
    transform: none !important;
    pointer-events: auto !important;
}

html body #vme-message-box.fm-vme-toast.vme-fade .vme-message,
html body #vme-message-box.fm-vme-toast.vme-fade.vme-in .vme-message {
    transform: none !important;
}

html body #vme-message-box.fm-vme-toast .vme-message-content {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 2.8rem minmax(0, 1fr) !important;
    gap: .85rem !important;
    align-items: start !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 1rem 3rem 1rem 1rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #07162f !important;
    box-shadow: none !important;
    text-align: left !important;
    font-size: .95rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    pointer-events: auto !important;
}

html body #vme-message-box.fm-vme-toast .vme-message-content::before {
    content: none !important;
    display: none !important;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__icon {
    display: grid;
    place-items: center;
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 16px;
    background: #eef5ff;
    color: #005bff;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__icon svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

html body #vme-message-box.fm-vme-toast.is-remove .fm-vme-toast__icon {
    background: #fff1f6;
    color: #ff2f73;
}

html body #vme-message-box.fm-vme-toast.is-error .fm-vme-toast__icon {
    background: #fff7e8;
    color: #d97706;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__body {
    min-width: 0;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__title {
    display: block;
    margin: 0;
    color: #07162f;
    font-size: 1rem;
    font-weight: 760;
    line-height: 1.2;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__product {
    display: block;
    margin-top: .22rem;
    color: #344054;
    font-size: .9rem;
    font-weight: 650;
    line-height: 1.28;
    overflow-wrap: anywhere;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__note {
    margin: .34rem 0 0;
    color: #667085;
    font-size: .86rem;
    font-weight: 430;
    line-height: 1.35;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .72rem;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    padding: .48rem .82rem;
    border: 1px solid #005bff;
    border-radius: 999px;
    background: #005bff;
    color: #fff;
    font-size: .82rem;
    font-weight: 720;
    line-height: 2;
    text-decoration: none;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__action:hover,
html body #vme-message-box.fm-vme-toast .fm-vme-toast__action:focus-visible {
    background: #004ce0;
    border-color: #004ce0;
    color: #fff;
    text-decoration: none;
    outline: 0;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    padding: .48rem .74rem;
    border: 1px solid #d9e4f2;
    border-radius: 999px;
    background: #fff;
    color: #475467;
    font-size: .82rem;
    font-weight: 680;
    line-height: 1;
    text-decoration: none;
}

html body #vme-message-box.fm-vme-toast .fm-vme-toast__secondary:hover,
html body #vme-message-box.fm-vme-toast .fm-vme-toast__secondary:focus-visible {
    border-color: #c6d6ea;
    color: #07162f;
    text-decoration: none;
    outline: 0;
}

html body #vme-message-box.fm-vme-toast .vme-message-close {
    position: absolute !important;
    top: .65rem !important;
    right: .65rem !important;
    display: grid !important;
    place-items: center !important;
    width: 1.9rem !important;
    height: 1.9rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #98a2b3 !important;
    font-size: 1.35rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

html body #vme-message-box.fm-vme-toast .vme-message-close:hover,
html body #vme-message-box.fm-vme-toast .vme-message-close:focus-visible {
    border-color: #d9e4f2 !important;
    background: #f8fbff !important;
    color: #07162f !important;
    outline: 0 !important;
}

@media (max-width: 767.98px) {
    html body #vme-message-box.fm-vme-toast {
        top: auto !important;
        right: .75rem !important;
        bottom: .75rem !important;
        left: .75rem !important;
        width: auto !important;
        transform: translateY(.75rem) !important;
    }

    html body #vme-message-box.fm-vme-toast.vme-in {
        transform: translateY(0) !important;
    }

    html body #vme-message-box.fm-vme-toast .vme-message {
        border-radius: 18px !important;
    }

    html body #vme-message-box.fm-vme-toast .vme-message-content {
        grid-template-columns: 2.45rem minmax(0, 1fr) !important;
        gap: .72rem !important;
        padding: .9rem 2.65rem .9rem .9rem !important;
    }

    html body #vme-message-box.fm-vme-toast .fm-vme-toast__icon {
        width: 2.45rem;
        height: 2.45rem;
        border-radius: 14px;
    }

    html body #vme-message-box.fm-vme-toast .fm-vme-toast__title {
        font-size: .96rem;
    }

    html body #vme-message-box.fm-vme-toast .fm-vme-toast__product,
    html body #vme-message-box.fm-vme-toast .fm-vme-toast__note {
        font-size: .82rem;
    }

    html body #vme-message-box.fm-vme-toast .fm-vme-toast__actions {
        gap: .42rem;
        margin-top: .62rem;
    }

    html body #vme-message-box.fm-vme-toast .fm-vme-toast__action,
    html body #vme-message-box.fm-vme-toast .fm-vme-toast__secondary {
        min-height: 2.15rem;
        padding: .45rem .68rem;
        font-size: .78rem;
    }
}

.vm-order-done,
.vm-order-details-view {
    --fm-order-text: #07172f;
    --fm-order-muted: #667085;
    --fm-order-blue: #005bff;
    --fm-order-pink: #ff2f7d;
    --fm-order-green: #19c86f;
    --fm-order-line: #dfe8f5;
    --fm-order-soft: #f4f8ff;
}

.fm-order-success,
.fm-order-view {
    max-width: 1180px;
    margin: 0 auto;
    padding: clamp(1.35rem, 3vw, 2.8rem) 0 clamp(2rem, 4vw, 3.5rem);
    color: var(--fm-order-text);
}

.fm-order-success__hero,
.fm-order-view__hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.35rem;
    padding: clamp(1.25rem, 3vw, 2.15rem);
    border: 1px solid var(--fm-order-line);
    border-radius: 28px;
    background:
        radial-gradient(circle at 92% 18%, rgb(255 47 125 / .12), transparent 28%),
        linear-gradient(135deg, #fff 0%, #f6f9ff 100%);
}

.fm-order-success__hero {
    align-items: flex-start;
}

.fm-order-success__mark {
    position: relative;
    flex: 0 0 auto;
    width: clamp(3.4rem, 6vw, 5rem);
    aspect-ratio: 1;
    border-radius: 50%;
    background: #19c86f;
}

.fm-order-success__mark::before {
    content: "";
    position: absolute;
    left: 31%;
    top: 47%;
    width: 39%;
    height: 20%;
    border-left: 4px solid #fff;
    border-bottom: 4px solid #fff;
    transform: translateY(-50%) rotate(-45deg);
}

.fm-order-success__content,
.fm-order-view__hero > div:first-child {
    min-width: 0;
}

.fm-order-success__eyebrow,
.fm-order-view__eyebrow {
    margin: 0 0 .45rem;
    color: var(--fm-order-blue);
    font-size: .88rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.fm-order-success__title,
.fm-order-view h1 {
    margin: 0;
    color: var(--fm-order-text);
    font-size: clamp(2rem, 4.2vw, 3.4rem);
    font-weight: 800;
    line-height: 1.02;
    letter-spacing: -1px;
}

.fm-order-success__lead,
.fm-order-view__hero p:not(.fm-order-view__eyebrow) {
    max-width: 48rem;
    margin: .85rem 0 0;
    color: #344054;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    font-weight: 400;
    line-height: 1.5;
}

.fm-order-success__summary,
.fm-order-view__quick {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: .8rem;
    margin-top: .9rem;
}

.fm-order-success__metric,
.fm-order-view__quick > div {
    min-width: 0;
    padding: 1rem 1.1rem;
    border: 1px solid var(--fm-order-line);
    border-radius: 20px;
    background: #fff;
}

.fm-order-success__metric span,
.fm-order-view__quick span,
.fm-order-view__detail span,
.fm-order-view__side-list span,
.fm-order-total span {
    display: block;
    margin-bottom: .32rem;
    color: var(--fm-order-muted);
    font-size: .86rem;
    font-weight: 600;
    line-height: 1.2;
}

.fm-order-success__metric strong,
.fm-order-view__quick strong,
.fm-order-view__detail strong,
.fm-order-view__side-list strong {
    display: block;
    min-width: 0;
    color: var(--fm-order-text);
    font-size: clamp(1rem, 1.35vw, 1.15rem);
    font-weight: 750;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.fm-order-success__body,
.fm-order-view__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
    gap: 1rem;
    margin-top: 1rem;
}

.fm-order-success__steps,
.fm-order-success__care,
.fm-order-view__panel {
    border: 1px solid var(--fm-order-line);
    border-radius: 24px;
    background: #fff;
}

.fm-order-success__steps,
.fm-order-success__care {
    padding: clamp(1.1rem, 2.3vw, 1.65rem);
}

.fm-order-success h2,
.fm-order-view__panel h2,
.fm-order-view__section-head h2 {
    margin: 0;
    color: var(--fm-order-text);
    font-size: clamp(1.16rem, 1.7vw, 1.45rem);
    font-weight: 800;
    line-height: 1.18;
}

.fm-order-success__steps ol,
.fm-order-view__steps {
    display: grid;
    gap: .95rem;
    margin: 1rem 0 0;
    padding: 0;
    list-style: none;
}

.fm-order-success__steps li {
    display: grid;
    grid-template-columns: 2.15rem minmax(0, 1fr);
    gap: .8rem;
    align-items: start;
}

.fm-order-success__steps li > span {
    display: grid;
    place-items: center;
    width: 2.15rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #eaf2ff;
    color: var(--fm-order-blue);
    font-size: .95rem;
    font-weight: 800;
}

.fm-order-success__steps strong,
.fm-order-view__steps li {
    color: var(--fm-order-text);
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.25;
}

.fm-order-success__steps p,
.fm-order-success__care p {
    margin: .25rem 0 0;
    color: var(--fm-order-muted);
    font-size: .98rem;
    line-height: 1.45;
}

.fm-order-success__actions,
.fm-order-view__actions {
    display: grid;
    gap: .65rem;
    margin-top: 1.15rem;
}

.fm-order-success__button,
.fm-order-view__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3.15rem;
    padding: .85rem 1.1rem;
    border-radius: 16px;
    font-size: 1rem;
    font-weight: 750;
    line-height: 1;
    text-align: center;
    text-decoration: none !important;
}

.fm-order-success__button--primary,
.fm-order-view__button--primary {
    background: var(--fm-order-blue);
    color: #fff !important;
}

.fm-order-success__button--secondary,
.fm-order-view__button--secondary {
    border: 1px solid var(--fm-order-line);
    background: #fff;
    color: var(--fm-order-text) !important;
}

.fm-order-view__status {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: .5rem;
    min-height: 2.65rem;
    padding: 0 1rem;
    border-radius: 999px;
    background: #eef4ff;
    color: var(--fm-order-blue);
    font-size: .98rem;
    font-weight: 800;
    line-height: 1;
}

.fm-order-view__status span {
    width: .55rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: currentColor;
}

.fm-order-view__status--green {
    background: #ecfdf3;
    color: #16803d;
}

.fm-order-view__status--purple {
    background: #f4f0ff;
    color: #6d28d9;
}

.fm-order-view__status--dark {
    background: #f2f4f7;
    color: #182230;
}

.fm-order-view__status--red {
    background: #fff1f3;
    color: #d92d20;
}

.fm-order-view__status--orange {
    background: #fff7ed;
    color: #c2410c;
}

.fm-order-view__status--muted {
    background: #f2f4f7;
    color: #667085;
}

.fm-order-view__main,
.fm-order-view__side {
    display: grid;
    align-content: start;
    gap: 1rem;
}

.fm-order-view__panel {
    padding: clamp(1rem, 2vw, 1.45rem);
}

.fm-order-view__panel--accent {
    background: #f6f9ff;
}

.fm-order-view__section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .95rem;
}

.fm-order-view__section-head span {
    color: var(--fm-order-muted);
    font-size: .9rem;
    font-weight: 650;
    line-height: 1.2;
}

.fm-order-items {
    display: grid;
    gap: .75rem;
}

.fm-order-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: start;
    padding: .9rem 0;
    border-top: 1px solid #edf2f8;
}

.fm-order-item:first-child {
    border-top: 0;
    padding-top: 0;
}

.fm-order-item__title {
    color: var(--fm-order-text) !important;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.22;
    text-decoration: none !important;
}

.fm-order-item__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .5rem;
}

.fm-order-item__meta span {
    padding: .38rem .55rem;
    border-radius: 999px;
    background: #f3f6fb;
    color: var(--fm-order-muted);
    font-size: .82rem;
    font-weight: 650;
    line-height: 1;
}

.fm-order-item__custom {
    margin-top: .55rem;
    color: var(--fm-order-muted);
    font-size: .9rem;
    line-height: 1.35;
}

.fm-order-item__price {
    display: grid;
    justify-items: end;
    gap: .18rem;
    min-width: 7rem;
    color: var(--fm-order-text);
}

.fm-order-item__price s {
    color: #98a2b3;
    font-size: .9rem;
    font-weight: 650;
}

.fm-order-item__price strong {
    color: var(--fm-order-text);
    font-size: 1.05rem;
    font-weight: 850;
    line-height: 1.1;
}

.fm-order-total {
    display: grid;
    gap: .58rem;
    margin-top: .35rem;
    padding-top: .95rem;
    border-top: 1px solid var(--fm-order-line);
}

.fm-order-total > div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.fm-order-total span {
    margin: 0;
}

.fm-order-total strong {
    color: var(--fm-order-text);
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.15;
    white-space: nowrap;
}

.fm-order-total__grand {
    margin-top: .25rem;
    padding-top: .8rem;
    border-top: 1px solid var(--fm-order-line);
}

.fm-order-total__grand strong {
    color: var(--fm-order-pink);
    font-size: 1.45rem;
    font-weight: 850;
}

.fm-order-view__details-grid,
.fm-order-view__side-list {
    display: grid;
    gap: .75rem;
}

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

.fm-order-view__detail {
    min-width: 0;
    padding: .85rem .95rem;
    border-radius: 16px;
    background: var(--fm-order-soft);
}

.fm-order-view__detail--wide {
    grid-column: 1 / -1;
}

.fm-order-view__side-list > div {
    padding: .85rem 0;
    border-top: 1px solid #edf2f8;
}

.fm-order-view__side-list > div:first-child {
    border-top: 0;
}

@media (max-width: 991.98px) {
    .fm-order-success__body,
    .fm-order-view__layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .fm-order-view__hero {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {
    .fm-order-success,
    .fm-order-view {
        padding-top: 1rem;
    }

    .fm-order-success__hero,
    .fm-order-view__hero {
        border-radius: 22px;
    }

    .fm-order-success__summary,
    .fm-order-view__quick,
    .fm-order-view__details-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .fm-order-success__hero {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .fm-order-item {
        grid-template-columns: minmax(0, 1fr);
    }

    .fm-order-item__price {
        justify-items: start;
        min-width: 0;
    }

    .fm-order-view__section-head {
        align-items: flex-start;
        flex-direction: column;
        gap: .25rem;
    }
}

/* Header mini cart trigger */
.mod-minicart .fm-header-cart {
    gap: .48rem;
    min-height: 2.8rem;
    padding: .18rem .25rem .18rem 0;
    border-radius: 999px;
    text-decoration: none;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.mod-minicart .fm-header-cart:hover,
.mod-minicart .fm-header-cart:focus-visible {
    color: #07162f;
    text-decoration: none;
    outline: 0;
}

.mod-minicart .fm-header-cart__icon {
    position: relative;
    display: inline-grid !important;
    place-items: center;
    flex: 0 0 auto;
    width: 2.65rem;
    height: 2.65rem;
    border: 1px solid #d8e4f2;
    border-radius: 16px;
    background: #fff;
    color: #07162f;
}

.mod-minicart .fm-header-cart__icon i {
    display: block !important;
    margin: 0 !important;
    color: inherit;
    font-size: 1.45rem;
    line-height: 1;
}

.mod-minicart .fm-header-cart__icon .jewel,
.mod-minicart .fm-header-cart__icon .mod-minicart__product-count {
    position: absolute !important;
    top: -.42rem !important;
    right: -.38rem !important;
    display: grid !important;
    place-items: center !important;
    min-width: 1.34rem !important;
    height: 1.34rem !important;
    padding: 0 .25rem !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: #ff2f73 !important;
    color: #fff !important;
    font-size: .72rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

.mod-minicart .fm-header-cart__total {
    display: inline-flex !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: .08rem;
    min-height: 2.42rem;
    margin-left: .18rem !important;
    padding: .34rem .72rem .36rem !important;
    border: 1px solid #d8e4f2;
    border-radius: 999px;
    background: #f8fbff;
    color: #07162f;
    white-space: nowrap;
}

.mod-minicart .fm-header-cart__label {
    display: block;
    color: #667085;
    font-size: .68rem;
    font-weight: 760;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.mod-minicart .fm-header-cart__sum {
    display: block;
    color: #07162f;
    font-size: .98rem;
    font-weight: 850;
    line-height: 1;
}

.mod-minicart .fm-header-cart__sum .PricesalesPrice,
.mod-minicart .fm-header-cart__sum .PricebillTotal,
.mod-minicart .fm-header-cart__sum span {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.mod-minicart .fm-header-cart:hover .fm-header-cart__icon,
.mod-minicart .fm-header-cart:focus-visible .fm-header-cart__icon,
.mod-minicart .fm-header-cart:hover .fm-header-cart__total,
.mod-minicart .fm-header-cart:focus-visible .fm-header-cart__total {
    border-color: #b9cff0;
    background: #f4f8ff;
}

@media (max-width: 991.98px) {
    .mod-minicart .fm-header-cart {
        gap: .34rem;
        min-height: 2.55rem;
    }

    .mod-minicart .fm-header-cart__icon {
        width: 2.45rem;
        height: 2.45rem;
        border-radius: 15px;
    }

    .mod-minicart .fm-header-cart__icon i {
        font-size: 1.32rem;
    }

    .mod-minicart .fm-header-cart__total {
        min-height: 2.25rem;
        padding: .34rem .62rem !important;
    }

    .mod-minicart .fm-header-cart__label {
        display: none;
    }

    .mod-minicart .fm-header-cart__sum {
        font-size: .92rem;
    }
}

@media (max-width: 420px) {
    .mod-minicart .fm-header-cart__total {
        padding-inline: .5rem !important;
    }

    .mod-minicart .fm-header-cart__sum {
        font-size: .86rem;
    }
}

.vme-mod-wishlist,
.vme-mod-compare,
.vme-mod-wishlist .vme-mod-inner,
.vme-mod-compare .vme-mod-inner,
.vme-mod-wishlist .vme-mod-contents,
.vme-mod-compare .vme-mod-contents,
.vme-mod-wishlist .vme-mod__anchor,
.vme-mod-compare .vme-mod__anchor {
    display: flex;
    align-items: center;
}

.vme-mod-wishlist .vme-mod__anchor > a.btn-icon,
.vme-mod-compare .vme-mod__anchor > a.btn-icon {
    position: relative;
    display: inline-grid !important;
    place-items: center;
    flex: 0 0 auto;
    width: 2.65rem;
    height: 2.65rem;
    padding: 0 !important;
    border: 1px solid #d8e4f2;
    border-radius: 16px;
    background: #fff;
    color: #07162f;
    line-height: 1;
    text-decoration: none;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.vme-mod-wishlist .vme-mod__anchor > a.btn-icon:hover,
.vme-mod-wishlist .vme-mod__anchor > a.btn-icon:focus-visible,
.vme-mod-compare .vme-mod__anchor > a.btn-icon:hover,
.vme-mod-compare .vme-mod__anchor > a.btn-icon:focus-visible {
    border-color: #b9cff0;
    background: #f4f8ff;
    color: #07162f;
    outline: 0;
}

.vme-mod-wishlist .vme-mod__anchor .jewel-group,
.vme-mod-compare .vme-mod__anchor .jewel-group {
    position: static;
    display: grid !important;
    place-items: center;
    width: 100%;
    height: 100%;
}

.vme-mod-wishlist .vme-mod__anchor .vpi-lg,
.vme-mod-compare .vme-mod__anchor .vpi-lg {
    display: block !important;
    margin: 0 !important;
    color: inherit;
    font-size: 1rem !important;
    line-height: 1 !important;
}

.vme-mod-wishlist .vme-mod__anchor .jewel,
.vme-mod-compare .vme-mod__anchor .jewel,
.vme-mod-wishlist .vme-mod__product-count,
.vme-mod-compare .vme-mod__product-count {
    position: absolute !important;
    top: -.42rem !important;
    right: -.38rem !important;
    display: grid !important;
    place-items: center !important;
    min-width: 1.34rem !important;
    height: 1.34rem !important;
    padding: 0 .25rem !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: #ff2f73 !important;
    color: #fff !important;
    font-size: .72rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

@media (max-width: 991.98px) {
    .vme-mod-wishlist .vme-mod__anchor > a.btn-icon,
    .vme-mod-compare .vme-mod__anchor > a.btn-icon {
        width: 2.45rem;
        height: 2.45rem;
        border-radius: 15px;
    }
}

/* Mobile liquid glass bottom toolbar */
.fm-toolbar-label {
    display: none;
}

@media (max-width: 991.98px) {
    .header-right-lg.footer-toolbar.fixed-bottom {
        top: auto !important;
        left: max(.55rem, env(safe-area-inset-left));
        right: max(.55rem, env(safe-area-inset-right));
        bottom: .25rem;
        z-index: 1038;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        align-items: center !important;
        justify-content: center !important;
        gap: .24rem;
        width: auto;
        max-width: 31rem;
        height: 4.45rem !important;
        min-height: 4.45rem !important;
        max-height: 4.45rem !important;
        margin-inline: auto;
        padding: .3rem .38rem .5rem;
        border: 1px solid rgba(218, 231, 250, .72);
        border-radius: 1.55rem;
        background:
            radial-gradient(circle at 18% 12%, rgba(255, 255, 255, .92), rgba(255, 255, 255, 0) 34%),
            linear-gradient(135deg, rgba(255, 255, 255, .74), rgba(245, 249, 255, .5));
        box-shadow:
            0 1.2rem 3rem rgba(15, 35, 75, .18),
            0 .28rem 1.1rem rgba(10, 35, 80, .09),
            inset 0 1px 0 rgba(255, 255, 255, .92),
            inset 0 -1px 0 rgba(130, 164, 210, .16);
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        overflow: visible;
        isolation: isolate;
        box-sizing: border-box;
        transition:
            border-color .18s ease,
            background .18s ease,
            box-shadow .18s ease,
            backdrop-filter .18s ease;
    }

    .header-right-lg.footer-toolbar.fixed-bottom::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 0;
        border-radius: inherit;
        background:
            linear-gradient(110deg, rgba(255, 255, 255, .68), rgba(255, 255, 255, 0) 34%),
            radial-gradient(circle at 80% 92%, rgba(0, 91, 255, .12), transparent 36%);
        -webkit-backdrop-filter: saturate(165%) blur(18px);
        backdrop-filter: saturate(165%) blur(18px);
        pointer-events: none;
        transition: opacity .18s ease, transform .24s cubic-bezier(.2, .8, .2, 1);
    }

    .header-right-lg.footer-toolbar.fixed-bottom > * {
        position: relative;
        z-index: 1;
        min-width: 0;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog-wrapper,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support-wrapper,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart {
        display: flex !important;
        align-items: center;
        justify-content: center;
        min-width: 0;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__icon {
        position: relative;
        display: inline-grid !important;
        place-items: center;
        flex: 0 0 auto;
        width: 2.58rem;
        height: 2.58rem;
        padding: 0 !important;
        border: 1px solid rgba(209, 224, 244, .76);
        border-radius: 1.08rem;
        background:
            linear-gradient(145deg, rgba(255, 255, 255, .82), rgba(248, 251, 255, .5));
        color: #07162f;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .94),
            inset 0 -1px 0 rgba(104, 139, 190, .12),
            0 .34rem 1rem rgba(13, 39, 78, .08);
        -webkit-backdrop-filter: saturate(180%) blur(18px);
        backdrop-filter: saturate(180%) blur(18px);
        transition:
            transform .18s cubic-bezier(.2, .8, .2, 1),
            background .18s ease,
            border-color .18s ease,
            box-shadow .18s ease,
            color .18s ease;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon::before,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog::before,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon::before,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon::before,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support::before,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__icon::before {
        content: "";
        position: absolute;
        inset: 1px;
        border-radius: inherit;
        background: radial-gradient(circle at 35% 20%, rgba(255, 255, 255, .9), rgba(255, 255, 255, 0) 42%);
        opacity: .8;
        pointer-events: none;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon:hover,
    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon:focus-visible,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog:hover,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog:focus-visible,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon:hover,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon:focus-visible,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon:hover,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon:focus-visible,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support:hover,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support:focus-visible,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart:hover .fm-header-cart__icon,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart:focus-visible .fm-header-cart__icon {
        border-color: rgba(0, 91, 255, .34);
        background:
            radial-gradient(circle at 50% 110%, rgba(0, 91, 255, .2), transparent 54%),
            linear-gradient(145deg, rgba(255, 255, 255, .95), rgba(239, 246, 255, .68));
        color: #005bff;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .96),
            inset 0 -1px 0 rgba(0, 91, 255, .1),
            0 .5rem 1.4rem rgba(0, 91, 255, .13);
        outline: 0;
        transform: translateY(-1px);
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon:active,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog:active,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon:active,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon:active,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support:active,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart:active .fm-header-cart__icon {
        transform: translateY(1px) scale(.96);
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper .vpi-lg,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog__icon,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor .vpi-lg,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor .vpi-lg,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support__icon,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__icon i {
        position: relative;
        z-index: 1;
        color: inherit;
        font-size: 1.12rem !important;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog__icon {
        width: 1.16rem;
        height: 1.16rem;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support__icon {
        width: 1.2rem;
        height: 1.2rem;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart {
        overflow: visible;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-label {
        display: block;
        position: absolute;
        top: calc(100% + .1rem);
        left: 50%;
        z-index: 4;
        max-width: 4.3rem;
        color: #000000;
        font-size: .66rem;
        font-weight: 700;
        line-height: 1;
        letter-spacing: 0;
        text-align: center;
        white-space: nowrap;
        transform: translateX(-50%);
        pointer-events: none;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon:hover .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon:focus-visible .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog:hover .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog:focus-visible .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon:hover .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon:focus-visible .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon:hover .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon:focus-visible .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support:hover .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support:focus-visible .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart:hover .fm-toolbar-label,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart:focus-visible .fm-toolbar-label {
        color: #005bff;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart {
        display: inline-flex !important;
        position: relative;
        justify-content: center;
        gap: .28rem;
        min-height: 2.58rem;
        padding: 0 !important;
        color: #07162f;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__total {
        position: absolute;
        left: 66%;
        top: -.34rem;
        bottom: auto;
        z-index: 3;
        min-height: 1.28rem;
        margin-left: 0 !important;
        padding: .13rem .52rem .16rem !important;
        border: 1px solid rgba(255, 255, 255, .86);
        border-radius: 999px;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(239, 246, 255, .72));
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .9),
            0 .34rem 1rem rgba(13, 39, 78, .14);
        transform: translateX(-50%);
        -webkit-backdrop-filter: saturate(170%) blur(16px);
        backdrop-filter: saturate(170%) blur(16px);
    }

    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__sum {
        color: #07162f;
        font-size: .76rem;
        font-weight: 900;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor .jewel,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor .jewel,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__product-count,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__product-count,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__icon .jewel,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__icon .mod-minicart__product-count {
        top: -.32rem !important;
        right: -.34rem !important;
        min-width: 1.22rem !important;
        height: 1.22rem !important;
        border: 2px solid rgba(255, 255, 255, .92) !important;
        background: linear-gradient(135deg, #ff2f73, #ff0f87) !important;
        box-shadow:
            0 .38rem .9rem rgba(255, 47, 115, .26),
            inset 0 1px 0 rgba(255, 255, 255, .35) !important;
        font-size: .68rem !important;
    }
}

/* Apply before JavaScript adds .is-ios, so Safari never paints a full-height toolbar. */
@supports (-webkit-touch-callout: none) {
    @media (max-width: 991.98px) {
        .header-right-lg.footer-toolbar.fixed-bottom {
            top: auto !important;
            bottom: .18rem !important;
            height: 4.45rem !important;
            min-height: 4.45rem !important;
            max-height: 4.45rem !important;
            padding-bottom: .5rem !important;
        }
    }
}

@media (max-width: 380px) {
    .header-right-lg.footer-toolbar.fixed-bottom {
        left: .38rem;
        right: .38rem;
        gap: .16rem;
        height: 4.25rem !important;
        min-height: 4.25rem !important;
        max-height: 4.25rem !important;
        padding: .26rem .28rem .46rem;
        border-radius: 1.42rem;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .home-page-link-wrapper > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-catalog,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-wishlist .vme-mod__anchor > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .vme-mod-compare .vme-mod__anchor > a.btn-icon,
    .header-right-lg.footer-toolbar.fixed-bottom .fm-toolbar-support,
    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__icon {
        width: 2.42rem;
        height: 2.42rem;
        border-radius: 1rem;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__total {
        top: -.4rem;
        bottom: auto;
        min-height: 1.18rem;
        padding-inline: .42rem !important;
    }

    .header-right-lg.footer-toolbar.fixed-bottom .mod-minicart .fm-header-cart__sum {
        font-size: .7rem;
    }

}

/* Automatic discounts page */
.discounts-view {
    --discounts-blue: #005bff;
    --discounts-ink: #07162f;
    --discounts-muted: #667085;
    --discounts-border: #dce7f5;
    margin-top: .35rem;
}

.discounts-view .product-items-container {
    transition: opacity .16s ease;
}

.discounts-view.is-loading .product-items-container {
    opacity: .48;
    pointer-events: none;
}

.discounts-view__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.2rem;
    align-items: center;
    margin-bottom: .8rem;
}

.discounts-view__header h1 {
    position: relative;
    padding-bottom: .8rem;
    margin: 0 0 1rem;
    color: var(--discounts-ink);
    font-size: 2rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.5px;
    text-transform: none;
}

.discounts-view__header h1::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 4rem;
    height: .22rem;
    border-radius: 999px;
    background: #ff3d7f;
}

.discounts-view__header p {
    max-width: 43rem;
    margin: .42rem 0 0;
    color: var(--discounts-muted);
    font-size: clamp(.94rem, 1.25vw, 1.08rem);
    font-weight: 500;
    line-height: 1.4;
}

.discounts-view__count {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    min-height: 2.3rem;
    padding: .44rem .72rem;
    border: 1px solid var(--discounts-border);
    border-radius: 999px;
    background: #fff;
    white-space: nowrap;
}

.discounts-view__count strong {
    color: var(--discounts-blue);
    font-size: 1rem;
    font-weight: 850;
    line-height: 1;
}

.discounts-view__count span {
    color: var(--discounts-muted);
    font-size: .92rem;
    font-weight: 600;
    line-height: 1;
}

.discounts-view__toolbar {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: 1.05rem;
    padding-bottom: .2rem;
}

.discounts-view__toolbar-label {
    color: var(--discounts-muted);
    font-size: .86rem;
    font-weight: 780;
    line-height: 1;
}

.discounts-view__sort {
    display: flex;
    flex-wrap: wrap;
    gap: .48rem;
    min-width: 0;
}

.discounts-view__sort-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15rem;
    padding: .45rem .78rem;
    border: 1px solid var(--discounts-border);
    border-radius: 999px;
    background: #fff;
    color: var(--discounts-ink);
    font-size: .84rem;
    font-weight: 760;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.discounts-view__sort-button:hover,
.discounts-view__sort-button:focus-visible {
    border-color: #b9cff0;
    color: var(--discounts-ink);
    text-decoration: none;
    outline: 0;
}

.discounts-view__sort-button.is-active {
    border-color: var(--discounts-blue);
    background: var(--discounts-blue);
    color: #fff;
}

.discounts-view__empty {
    display: grid;
    justify-items: center;
    max-width: 38rem;
    margin: 2rem auto 4rem;
    padding: 2rem;
    border: 1px solid var(--discounts-border);
    border-radius: 24px;
    background: #fff;
    text-align: center;
}

.discounts-view__empty > span {
    display: grid;
    place-items: center;
    width: 4.5rem;
    height: 4.5rem;
    margin-bottom: 1rem;
    border-radius: 22px;
    background: #eef5ff;
    color: var(--discounts-blue);
    font-size: 2rem;
    font-weight: 900;
}

.discounts-view__empty h2 {
    margin: 0;
    color: var(--discounts-ink);
    font-size: 1.6rem;
    font-weight: 850;
    line-height: 1.15;
}

.discounts-view__empty p {
    margin: .5rem 0 1rem;
    color: var(--discounts-muted);
    font-size: 1rem;
    line-height: 1.45;
}

.discounts-view__empty a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: .72rem 1.1rem;
    border-radius: 999px;
    background: var(--discounts-blue);
    color: #fff;
    font-weight: 760;
    line-height: 1;
    text-decoration: none;
}

.discounts-view__empty a:hover,
.discounts-view__empty a:focus-visible {
    background: #004ce0;
    color: #fff;
    text-decoration: none;
    outline: 0;
}

@media (max-width: 767.98px) {
    .discounts-view__header {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .55rem .75rem;
        align-items: start;
        margin-bottom: .8rem;
    }

    .discounts-view__copy {
        display: contents;
    }

    .discounts-view__header h1 {
        grid-column: 1;
        grid-row: 1;
        font-size: 2rem;
    }

    .discounts-view__header p {
        grid-column: 1 / -1;
        grid-row: 2;
        margin-top: 0;
        font-size: .92rem;
    }

    .discounts-view__count {
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
        align-self: start;
        margin-top: .2rem;
        min-height: 2rem;
        padding: .36rem .62rem;
    }

    .discounts-view__toolbar {
        display: block;
        margin-right: -1rem;
        margin-bottom: 1rem;
        overflow: hidden;
    }

    .discounts-view__toolbar-label {
        display: block;
        margin-bottom: .55rem;
        font-size: .78rem;
    }

    .discounts-view__sort {
        flex-wrap: nowrap;
        gap: .4rem;
        overflow-x: auto;
        padding-right: 1rem;
        scrollbar-width: none;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
    }

    .discounts-view__sort::-webkit-scrollbar {
        display: none;
    }

    .discounts-view__sort-button {
        min-height: 2.1rem;
        padding: .43rem .72rem;
        font-size: .8rem;
        scroll-snap-align: start;
    }
}

/* Mobile focused offcanvas backdrop */
@media (max-width: 991.98px) {
    .offcanvas-backdrop {
        z-index: 1036;
        background:
            radial-gradient(circle at 50% 100%, rgba(0, 91, 255, .18), transparent 46%),
            radial-gradient(circle at 12% 18%, rgba(255, 47, 125, .12), transparent 34%),
            rgba(7, 19, 41, .54);
        -webkit-backdrop-filter: blur(10px) saturate(125%);
        backdrop-filter: blur(10px) saturate(125%);
        transition:
            opacity .14s ease,
            -webkit-backdrop-filter .14s ease,
            backdrop-filter .14s ease;
    }

    .offcanvas-backdrop.show {
        opacity: 1;
    }

    .offcanvas-backdrop.fade:not(.show) {
        opacity: 0;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }

    .fm-cart-drawer .offcanvas,
    .fm-wishlist-drawer .offcanvas,
    .fm-compare-drawer .offcanvas {
        z-index: 1042 !important;
    }
}

/* Mini cart drawer */
.fm-cart-drawer .offcanvas {
    width: min(430px, 100vw);
    border-left: 1px solid #dfe7f2;
}

.fm-cart-drawer__header {
    align-items: flex-start;
    padding-top: .95rem !important;
    padding-bottom: .85rem !important;
    border-bottom: 1px solid #e5ebf4;
}

.fm-cart-drawer__header h5 {
    margin: 0;
    color: #07172f;
    font-size: 1.2rem;
    font-weight: 900;
    letter-spacing: 0;
}

.fm-cart-drawer__header p {
    margin: .18rem 0 0;
    color: #66758b;
    font-size: .84rem;
    font-weight: 500;
    line-height: 1.35;
}

.fm-cart-drawer .mod-minicart__contents {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 74px);
}

.fm-cart-drawer__benefits {
    display: flex;
    gap: .38rem;
    padding: .65rem .75rem 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.fm-cart-drawer__benefits::-webkit-scrollbar {
    display: none;
}

.fm-cart-drawer__benefits span {
    flex: 0 0 auto;
    min-height: 1.8rem;
    padding: .3rem .56rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    background: #f8fbff;
    color: #526176;
    font-size: .76rem;
    font-weight: 750;
    line-height: 1;
}

.fm-cart-drawer__body {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: .75rem !important;
}

.fm-cart-drawer__item {
    position: relative;
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) 26px;
    gap: .68rem;
    align-items: center;
    padding: .62rem;
    border: 1px solid #e4ebf5;
    border-radius: 15px;
    background: #fff;
    max-height: 9rem;
    transition:
        max-height .18s ease,
        margin .18s ease,
        padding .18s ease,
        opacity .14s ease,
        transform .14s ease,
        border-color .14s ease;
}

.fm-cart-drawer__item.is-removing,
.fm-wishlist-drawer__item.is-removing,
.fm-compare-drawer__item.is-removing {
    max-height: 0;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-color: transparent !important;
    opacity: 0;
    transform: translateX(.6rem) scale(.98);
    pointer-events: none;
    overflow: hidden;
    transition:
        max-height .18s ease,
        margin .18s ease,
        padding .18s ease,
        opacity .14s ease,
        transform .14s ease,
        border-color .14s ease;
}

.fm-live-empty {
    display: grid;
    place-items: center;
    min-height: 9rem;
    padding: 1rem;
    border: 1px dashed #d8e4f3;
    border-radius: 1.15rem;
    background: #f8fbff;
    color: #66758b;
    font-size: .92rem;
    font-weight: 750;
    text-align: center;
}

.fm-cart-drawer__item + .fm-cart-drawer__item {
    margin-top: .55rem;
}

.fm-cart-drawer__thumb {
    display: block;
    width: 76px;
    height: 76px;
    overflow: hidden;
    border-radius: 12px;
    background: #f3f6fb;
}

.fm-cart-drawer__thumb img {
    display: block;
    width: 76px !important;
    height: 76px !important;
    max-width: 76px !important;
    object-fit: cover !important;
}

.fm-cart-drawer__info {
    min-width: 0;
}

.fm-cart-drawer__info strong,
.fm-cart-drawer__info a {
    color: #07172f;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.24;
    text-decoration: none;
}

.fm-cart-drawer__variants {
    margin-top: .24rem;
    color: #66758b;
    font-size: .78rem;
    line-height: 1.3;
}

.fm-cart-drawer__meta {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-top: .34rem;
}

.fm-cart-drawer__meta span {
    color: #66758b;
    font-size: .78rem;
    font-weight: 700;
}

.fm-cart-drawer__meta b {
    color: #ff2f7d;
    font-size: 1rem;
    font-weight: 900;
}

.fm-cart-drawer__remove {
    align-self: start;
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    padding: 0;
    border: 1px solid #dbe4f1;
    border-radius: 50%;
    background: #fff;
    color: #7b8798;
    font-size: 1rem;
    line-height: 1;
}

.fm-cart-drawer__remove:hover,
.fm-cart-drawer__remove:focus-visible {
    border-color: #ffb7cf;
    color: #ff2f7d;
    outline: 0;
}

.fm-cart-drawer__footer {
    flex: 0 0 auto;
    padding: .85rem .95rem .95rem;
    border-top: 1px solid #e5ebf4;
    background: #fff;
}

.fm-cart-drawer__total {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .42rem;
}

.fm-cart-drawer__total > span:first-child {
    color: #07172f;
    font-size: 1rem;
    font-weight: 850;
}

.fm-cart-drawer__subtotal {
    color: #ff2f7d !important;
    font-size: 1.35rem;
    font-weight: 900;
    line-height: 1;
}

.fm-cart-drawer__note {
    margin-bottom: .72rem;
    color: #66758b;
    font-size: .82rem;
    font-weight: 500;
    line-height: 1.35;
}

.fm-cart-drawer__button,
.fm-cart-drawer__empty-button {
    min-height: 3.15rem;
    border-radius: 16px;
    background: #0b63ff !important;
    color: #fff !important;
    font-size: .98rem;
    font-weight: 760;
    letter-spacing: 0;
}

.fm-cart-drawer__empty {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 140px);
    padding: 2rem 1.1rem;
    text-align: center;
}

.fm-cart-drawer__empty .empty-cart-icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 3.45rem;
    height: 3.45rem;
    margin-bottom: 1.1rem;
    border-radius: 50%;
    background: #eef4ff;
    color: #0b63ff;
    font-size: 1.28rem;
    line-height: 1;
}

.fm-cart-drawer__empty .empty-cart-icon i {
    display: block;
    width: 1.28rem;
    height: 1.28rem;
    font-size: 1.28rem;
    line-height: 1;
}

.fm-cart-drawer__empty .empty-cart-icon::after {
    content: "";
    position: absolute;
    right: -.08rem;
    bottom: .28rem;
    width: .72rem;
    height: .72rem;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #19c759;
}

.fm-cart-drawer__empty .empty-cart-heading {
    margin: 0 0 .38rem;
    color: #07172f;
    font-size: 1.08rem;
    font-weight: 900;
    line-height: 1.2;
}

.fm-cart-drawer__empty > span {
    max-width: 292px;
    color: #66758b;
    font-size: .9rem;
    font-weight: 500;
    line-height: 1.42;
}

.fm-cart-drawer__empty-benefits {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .38rem;
    margin: .95rem 0 1.2rem;
}

.fm-cart-drawer__empty-benefits b {
    min-height: 1.78rem;
    padding: .28rem .55rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    background: #fff;
    color: #526176;
    font-size: .76rem;
    font-weight: 800;
}

@media (max-width: 767.98px) {
    .fm-cart-drawer .offcanvas.offcanvas-end {
        top: auto !important;
        right: 0 !important;
        bottom: calc(5.55rem + env(safe-area-inset-bottom, 0px)) !important;
        left: 0 !important;
        width: calc(100% - 1.2rem) !important;
        max-width: none;
        height: min(70dvh, 38rem) !important;
        max-height: calc(100dvh - 7.1rem);
        margin-inline: auto;
        border: 1px solid rgba(214, 227, 245, .86);
        border-radius: 1.8rem;
        background:
            radial-gradient(circle at 18% 0, rgba(255, 255, 255, .98), rgba(255, 255, 255, 0) 34%),
            linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .95));
        box-shadow:
            0 -1.1rem 3.4rem rgba(11, 32, 68, .28),
            0 .4rem 1.4rem rgba(11, 32, 68, .1),
            inset 0 1px 0 rgba(255, 255, 255, .92);
        opacity: 0;
        transform: translateY(104%);
        transform-origin: center bottom;
        transition: transform .34s cubic-bezier(.2, .8, .2, 1), opacity .22s ease;
        will-change: transform, opacity;
        -webkit-backdrop-filter: saturate(180%) blur(22px);
        backdrop-filter: saturate(180%) blur(22px);
        overflow: hidden;
    }

    .fm-cart-drawer .offcanvas.offcanvas-end.show,
    .fm-cart-drawer .offcanvas.offcanvas-end.showing {
        opacity: 1;
        transform: translateY(0);
    }

    .fm-cart-drawer .offcanvas.offcanvas-end.hiding {
        opacity: 0;
        transform: translateY(calc(100% + 1rem));
        transition: transform .24s cubic-bezier(.55, .05, .35, 1), opacity .16s ease;
    }

    .fm-cart-drawer .offcanvas.offcanvas-end.hiding > * {
        opacity: 0;
        transform: translateY(.35rem);
        transition: opacity .12s ease, transform .16s ease;
    }

    .fm-cart-drawer__header {
        position: relative;
        flex: 0 0 auto;
        padding: 1.18rem 3.25rem .74rem .98rem !important;
        border-bottom-color: rgba(218, 230, 246, .82);
        background: rgba(255, 255, 255, .34);
    }

    .fm-cart-drawer__header::before {
        content: "";
        position: absolute;
        top: .48rem;
        left: 50%;
        width: 2.9rem;
        height: .24rem;
        border-radius: 999px;
        background: rgba(104, 119, 141, .28);
        transform: translateX(-50%);
    }

    .fm-cart-drawer__header > button {
        position: absolute;
        top: .72rem;
        right: .78rem;
        display: grid !important;
        place-items: center;
        width: 2.3rem;
        height: 2.3rem;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid rgba(218, 230, 246, .86);
        border-radius: 999px;
        background: rgba(255, 255, 255, .72);
        color: #667085;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .9),
            0 .35rem 1rem rgba(11, 32, 68, .08);
        -webkit-backdrop-filter: saturate(170%) blur(14px);
        backdrop-filter: saturate(170%) blur(14px);
    }

    .fm-cart-drawer__header > button i {
        margin: 0 !important;
        font-size: 1rem !important;
        line-height: 1 !important;
    }

    .fm-cart-drawer__header h5 {
        font-size: 1.12rem;
    }

    .fm-cart-drawer__header p {
        max-width: 14rem;
        font-size: .78rem;
        line-height: 1.3;
    }

    .fm-cart-drawer .mod-minicart__contents {
        height: 100%;
        min-height: 0;
    }

    .fm-cart-drawer__benefits {
        flex: 0 0 auto;
        padding: .56rem .72rem 0;
    }

    .fm-cart-drawer__benefits span {
        min-height: 1.62rem;
        padding: .24rem .48rem;
        background: rgba(255, 255, 255, .62);
        font-size: .7rem;
    }

    .fm-cart-drawer__body {
        flex: 1 1 auto;
        min-height: 0;
        padding: .62rem .72rem !important;
        overscroll-behavior: contain;
    }

    .fm-cart-drawer__item {
        grid-template-columns: 64px minmax(0, 1fr) 2rem;
        gap: .58rem;
        padding: .52rem;
        border-color: rgba(221, 232, 247, .9);
        border-radius: 1rem;
        background: rgba(255, 255, 255, .76);
    }

    .fm-cart-drawer__thumb,
    .fm-cart-drawer__thumb img {
        width: 64px !important;
        height: 64px !important;
        max-width: 64px !important;
        border-radius: .8rem;
    }

    .fm-cart-drawer__info strong,
    .fm-cart-drawer__info a {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        font-size: .84rem;
        line-height: 1.18;
    }

    .fm-cart-drawer__meta {
        gap: .36rem;
        margin-top: .32rem;
    }

    .fm-cart-drawer__meta span {
        font-size: .72rem;
    }

    .fm-cart-drawer__meta b {
        font-size: .95rem;
    }

    .fm-cart-drawer__remove {
        width: 2rem;
        height: 2rem;
        border-color: #ffd2df;
        background: #fff6fa;
        color: #ff2f7d;
    }

    .fm-cart-drawer__footer {
        position: sticky;
        right: 0;
        bottom: 0;
        left: 0;
        padding: .72rem .82rem calc(.82rem + env(safe-area-inset-bottom));
        border-top-color: rgba(218, 230, 246, .82);
        background:
            linear-gradient(180deg, rgba(255, 255, 255, .74), rgba(255, 255, 255, .96));
        box-shadow: 0 -.9rem 1.8rem rgba(245, 248, 252, .78);
        -webkit-backdrop-filter: saturate(170%) blur(18px);
        backdrop-filter: saturate(170%) blur(18px);
    }

    .fm-cart-drawer__total {
        margin-bottom: .38rem;
    }

    .fm-cart-drawer__total > span:first-child {
        font-size: .9rem;
    }

    .fm-cart-drawer__subtotal {
        font-size: 1.18rem;
    }

    .fm-cart-drawer__note {
        margin-bottom: .58rem;
        font-size: .74rem;
    }

    .fm-cart-drawer__button,
    .fm-cart-drawer__empty-button {
        min-height: 2.85rem;
        border-radius: 999px;
        box-shadow: 0 .72rem 1.5rem rgba(0, 91, 255, .22);
    }

    .fm-cart-drawer__empty {
        min-height: 0;
        padding: 1.4rem .95rem 1.2rem;
    }
}

/* Wishlist drawer and page */
.fm-wishlist-drawer .offcanvas {
    width: min(430px, 100vw);
    border-left: 1px solid #dfe7f2;
}

.fm-wishlist-drawer__header {
    align-items: flex-start;
    padding-top: .95rem !important;
    padding-bottom: .85rem !important;
    border-bottom: 1px solid #e5ebf4;
}

.fm-wishlist-drawer__header h5 {
    margin: 0;
    color: #07172f;
    font-size: 1.15rem;
    font-weight: 900;
    letter-spacing: 0;
}

.fm-wishlist-drawer__header p {
    margin: .18rem 0 0;
    color: #66758b;
    font-size: .84rem;
    font-weight: 500;
    line-height: 1.35;
}

.fm-wishlist-drawer__hint {
    display: flex;
    gap: .38rem;
    padding: .65rem .75rem 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.fm-wishlist-drawer__hint::-webkit-scrollbar {
    display: none;
}

.fm-wishlist-drawer__hint span {
    flex: 0 0 auto;
    min-height: 1.78rem;
    padding: .3rem .56rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    background: #f8fbff;
    color: #526176;
    font-size: .76rem;
    font-weight: 750;
    line-height: 1;
}

.fm-wishlist-drawer .offcanvas-body {
    padding: .75rem !important;
}

.fm-wishlist-drawer__item {
    position: relative;
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) 26px;
    gap: .68rem;
    align-items: center;
    padding: .62rem;
    border: 1px solid #e4ebf5;
    border-radius: 15px;
    background: #fff;
    max-height: 9rem;
    transition:
        max-height .18s ease,
        margin .18s ease,
        padding .18s ease,
        opacity .14s ease,
        transform .14s ease,
        border-color .14s ease;
}

.fm-wishlist-drawer__item + .fm-wishlist-drawer__item {
    margin-top: .55rem;
}

.fm-wishlist-drawer__thumb {
    display: block;
    width: 74px;
    height: 74px;
    overflow: hidden;
    border-radius: 12px;
    background: #f3f6fb;
}

.fm-wishlist-drawer__thumb img {
    display: block;
    width: 74px !important;
    height: 74px !important;
    max-width: 74px !important;
    object-fit: cover !important;
}

.fm-wishlist-drawer__info {
    min-width: 0;
}

.fm-wishlist-drawer__info strong,
.fm-wishlist-drawer__info a {
    color: #07172f;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1.22;
    text-decoration: none;
}

.fm-wishlist-drawer__info .mod-product-price {
    margin-top: .28rem;
    color: #ff2f7d !important;
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.1;
}

.fm-wishlist-drawer__remove-form {
    align-self: start;
}

.fm-wishlist-drawer__remove {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    padding: 0;
    border: 1px solid #dbe4f1;
    border-radius: 50%;
    background: #fff;
    color: #7b8798;
    font-size: 1rem;
    line-height: 1;
}

.fm-wishlist-drawer__remove:hover,
.fm-wishlist-drawer__remove:focus-visible {
    border-color: #ffb7cf;
    color: #ff2f7d;
    outline: 0;
}

.fm-wishlist-drawer__button {
    min-height: 3.1rem;
    border-radius: 16px;
    background: #0b63ff !important;
    color: #fff !important;
    font-size: .96rem;
    font-weight: 760;
    letter-spacing: 0;
}

.fm-wishlist-drawer__empty {
    min-height: calc(100vh - 110px);
}

.fm-wishlist-drawer__empty .empty-icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 3.35rem;
    height: 3.35rem;
    margin-bottom: 1.12rem;
    border-radius: 50%;
    background: #fff1f6;
    color: #ff2f7d;
    font-size: 1.2rem;
    line-height: 1;
}

.fm-wishlist-drawer__empty .empty-icon i {
    display: block;
    width: 1.2rem;
    height: 1.2rem;
    font-size: 1.2rem;
    line-height: 1;
}

.fm-wishlist-drawer__empty .empty-icon::after {
    content: "";
    position: absolute;
    right: -.12rem;
    bottom: .22rem;
    width: .72rem;
    height: .72rem;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #19c759;
}

.fm-wishlist-drawer__empty .empty-heading {
    margin: 0 0 .4rem;
    color: #07172f;
    font-size: 1.05rem;
    font-weight: 900;
    line-height: 1.2;
}

.fm-wishlist-drawer__empty > span {
    max-width: 305px;
    color: #66758b;
    font-size: .9rem;
    font-weight: 500;
    line-height: 1.42;
}

.fm-wishlist-drawer__empty-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .38rem;
    margin-top: .95rem;
}

.fm-wishlist-drawer__empty-tags b {
    min-height: 1.78rem;
    padding: .28rem .55rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    background: #fff;
    color: #526176;
    font-size: .76rem;
    font-weight: 800;
}

.fm-wishlist-page .vme-share-container {
    display: none !important;
}

.fm-wishlist-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin: 1.2rem 0 1.35rem;
}

.fm-wishlist-head h1 {
    margin: 0;
    color: #07172f;
    font-size: clamp(1.75rem, 3vw, 2.55rem);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: 0;
}

.fm-wishlist-head p {
    max-width: 720px;
    margin: .45rem 0 0;
    color: #66758b;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.4;
}

.fm-wishlist-head > span {
    flex: 0 0 auto;
    padding: .48rem .75rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    color: #526176;
    font-size: .86rem;
    font-weight: 800;
}

.fm-wishlist-grid .product-remove-from-wishlist {
    margin: 0 0 .5rem !important;
    text-align: left !important;
}

.fm-wishlist-grid .product-remove-from-wishlist button,
.fm-wishlist-grid .product-remove-from-wishlist a {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: .28rem .58rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    background: #fff;
    color: #66758b;
    font-size: .8rem;
    font-weight: 700;
    text-decoration: none;
}

.fm-wishlist-grid .product-remove-from-wishlist a:hover,
.fm-wishlist-grid .product-remove-from-wishlist a:focus-visible {
    border-color: #ffb7cf;
    color: #ff2f7d;
    outline: 0;
}

.fm-wishlist-grid .product-remove-from-wishlist i {
    font-size: .82rem;
}

.fm-wishlist-empty {
    display: grid;
    place-items: center;
    gap: .55rem;
    min-height: 380px;
    padding: 2rem 1rem;
    text-align: center;
}

.fm-wishlist-empty .empty-card-icon {
    display: grid;
    place-items: center;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background: #fff1f6;
    color: #ff2f7d;
    font-size: 1.35rem;
}

.fm-wishlist-empty h1 {
    margin: .45rem 0 0;
    color: #07172f;
    font-size: clamp(1.7rem, 4vw, 2.3rem);
    font-weight: 900;
}

.fm-wishlist-empty p {
    max-width: 540px;
    margin: 0;
    color: #66758b;
    font-weight: 500;
    line-height: 1.45;
}

.fm-wishlist-empty__tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .42rem;
    margin: .42rem 0 .7rem;
}

.fm-wishlist-empty__tags span {
    min-height: 1.9rem;
    padding: .32rem .62rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    color: #526176;
    font-size: .8rem;
    font-weight: 800;
}

.fm-wishlist-empty .btn {
    min-height: 3rem;
    padding-inline: 1.2rem;
    border-radius: 16px;
    font-weight: 760;
}

@media (max-width: 767.98px) {
    .fm-wishlist-drawer .offcanvas {
        width: min(390px, 100vw);
    }

    .fm-wishlist-drawer__item {
        grid-template-columns: 70px minmax(0, 1fr) 24px;
        gap: .6rem;
        padding: .56rem;
    }

    .fm-wishlist-drawer__thumb,
    .fm-wishlist-drawer__thumb img {
        width: 70px !important;
        height: 70px !important;
        max-width: 70px !important;
    }

    .fm-wishlist-head {
        display: grid;
        align-items: flex-start;
        margin-top: .8rem;
    }

    .fm-wishlist-head h1 {
        font-size: 1.7rem;
    }

    .fm-wishlist-head p {
        font-size: .92rem;
    }
}

/* Compare */
.fm-compare-drawer .offcanvas {
    width: min(430px, 100vw);
    border-left: 1px solid #dfe7f2;
}

.fm-compare-drawer__header {
    align-items: flex-start;
    border-bottom: 1px solid #e5ebf4;
    padding-top: .95rem !important;
    padding-bottom: .85rem !important;
}

.fm-compare-drawer__header h5 {
    margin: 0;
    color: #07172f;
    font-size: 1.1rem;
    font-weight: 900;
    letter-spacing: 0;
}

.fm-compare-drawer__header p {
    margin: .18rem 0 0;
    color: #66758b;
    font-size: .82rem;
    font-weight: 500;
    line-height: 1.35;
}

.fm-compare-drawer .offcanvas-body {
    padding: .75rem !important;
}

.fm-compare-drawer__item {
    position: relative;
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr) 26px;
    gap: .68rem;
    align-items: center;
    padding: .62rem;
    border: 1px solid #e4ebf5;
    border-radius: 14px;
    background: #fff;
    max-height: 9rem;
    transition:
        max-height .18s ease,
        margin .18s ease,
        padding .18s ease,
        opacity .14s ease,
        transform .14s ease,
        border-color .14s ease;
}

.fm-compare-drawer .vme-mod__product-details.fm-compare-drawer__item {
    display: grid !important;
}

.fm-compare-drawer__item + .fm-compare-drawer__item {
    margin-top: .55rem;
}

.fm-compare-drawer__media,
.fm-compare-drawer__media a {
    display: block;
    overflow: hidden;
    width: 74px;
    height: 74px;
    border-radius: 12px;
    background: #f3f6fb;
}

.fm-compare-drawer__media img {
    display: block;
    width: 74px !important;
    height: 74px !important;
    max-width: 74px !important;
    object-fit: cover !important;
}

.fm-compare-drawer__media .product-image,
.fm-compare-drawer__media picture,
.fm-compare-drawer__media source {
    width: 74px !important;
    height: 74px !important;
}

.fm-compare-drawer__media .product-utilities,
.fm-compare-drawer__media .product-module-cart,
.fm-compare-drawer__media .btn,
.fm-compare-drawer__media button {
    display: none !important;
}

.fm-compare-drawer__info {
    min-width: 0;
}

.fm-compare-drawer__info strong,
.fm-compare-drawer__info a {
    color: #07172f;
    font-size: .9rem;
    font-weight: 850;
    line-height: 1.22;
    text-decoration: none;
}

.fm-compare-drawer__info .mod-product-price {
    margin-top: .26rem;
    color: #ff2f7d !important;
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.1;
}

.fm-compare-drawer__remove-form {
    align-self: start;
}

.fm-compare-drawer__remove {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    padding: 0;
    border: 1px solid #dbe4f1;
    border-radius: 50%;
    background: #fff;
    color: #7b8798;
    font-size: 1rem;
    line-height: 1;
}

.fm-compare-drawer__remove:hover,
.fm-compare-drawer__remove:focus-visible {
    border-color: #ffb7cf;
    color: #ff2f7d;
    outline: 0;
}

.fm-compare-drawer__button {
    min-height: 3.15rem;
    border-radius: 16px;
    font-weight: 850;
}

.fm-compare-drawer__empty .empty-icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 3.35rem;
    height: 3.35rem;
    margin-bottom: 1.12rem;
    border-radius: 50%;
    background: #eef4ff;
    color: #0b63ff;
    font-size: 1.25rem;
    line-height: 1;
}

.fm-compare-drawer__empty .empty-icon i {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    font-size: 1.25rem;
    line-height: 1;
}

.fm-compare-drawer__empty .empty-icon::after {
    content: "";
    position: absolute;
    right: -.12rem;
    bottom: .22rem;
    width: .72rem;
    height: .72rem;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #19c759;
}

.fm-compare-drawer__empty .empty-heading {
    margin: 0 0 .4rem;
    color: #07172f;
    font-size: 1.05rem;
    font-weight: 900;
    line-height: 1.2;
}

.fm-compare-drawer__empty span {
    max-width: 300px;
    color: #66758b;
    font-size: .9rem;
    font-weight: 500;
    line-height: 1.42;
}

.fm-compare-drawer__empty-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .38rem;
    margin-top: .95rem;
}

.fm-compare-drawer__empty-tags b {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: .28rem .55rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    background: #fff;
    color: #526176;
    font-size: .78rem;
    font-weight: 800;
}

@media (max-width: 767.98px) {
    .fm-wishlist-drawer .offcanvas,
    .fm-compare-drawer .offcanvas {
        top: auto !important;
        right: 0 !important;
        bottom: calc(5.55rem + env(safe-area-inset-bottom, 0px)) !important;
        left: 0 !important;
        width: calc(100% - 1.2rem) !important;
        max-width: none !important;
        height: auto !important;
        max-height: min(70dvh, 38rem);
        margin-inline: auto;
        overflow: hidden;
        border: 1px solid rgba(211, 225, 246, .92);
        border-radius: 28px;
        background:
            linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(246, 250, 255, .95)),
            color-mix(in srgb, #ffffff 96%, transparent);
        box-shadow:
            0 -1.1rem 3.4rem rgba(7, 19, 41, .28);
        backdrop-filter: blur(22px) saturate(1.35);
        -webkit-backdrop-filter: blur(22px) saturate(1.35);
        opacity: 0;
        transform: translateY(104%);
        transform-origin: center bottom;
        transition: transform .34s cubic-bezier(.2, .8, .2, 1), opacity .22s ease;
        will-change: transform, opacity;
    }

    .fm-wishlist-drawer .offcanvas.show,
    .fm-wishlist-drawer .offcanvas.showing,
    .fm-compare-drawer .offcanvas.show,
    .fm-compare-drawer .offcanvas.showing {
        opacity: 1;
        transform: translateY(0);
    }

    .fm-wishlist-drawer .offcanvas.hiding,
    .fm-compare-drawer .offcanvas.hiding {
        opacity: 0;
        transform: translateY(calc(100% + 1rem));
        transition: transform .24s cubic-bezier(.55, .05, .35, 1), opacity .16s ease;
    }

    .fm-wishlist-drawer .offcanvas.hiding > *,
    .fm-compare-drawer .offcanvas.hiding > * {
        opacity: 0;
        transform: translateY(.35rem);
        transition: opacity .12s ease, transform .16s ease;
    }

    .fm-wishlist-drawer__header,
    .fm-compare-drawer__header {
        position: relative;
        padding: 1.34rem 3.35rem .78rem 1rem !important;
        border-bottom: 0;
        background: transparent;
    }

    .fm-wishlist-drawer__header::before,
    .fm-compare-drawer__header::before {
        content: "";
        position: absolute;
        top: .52rem;
        left: 50%;
        width: 2.9rem;
        height: .24rem;
        border-radius: 999px;
        background: rgba(104, 119, 141, .28);
        transform: translateX(-50%);
    }

    .fm-wishlist-drawer__header::after,
    .fm-compare-drawer__header::after {
        content: "";
        position: absolute;
        left: 1rem;
        right: 1rem;
        bottom: 0;
        height: 1px;
        background: linear-gradient(90deg, transparent, rgba(196, 212, 236, .9), transparent);
    }

    .fm-wishlist-drawer__header h5,
    .fm-compare-drawer__header h5 {
        font-size: 1.08rem;
        line-height: 1.12;
    }

    .fm-wishlist-drawer__header p,
    .fm-compare-drawer__header p {
        max-width: 18rem;
        font-size: .82rem;
        line-height: 1.25;
    }

    .fm-wishlist-drawer__header > button,
    .fm-compare-drawer__header > button {
        position: absolute;
        top: .75rem;
        right: .82rem;
        display: grid;
        place-items: center;
        width: 2.45rem;
        height: 2.45rem;
        padding: 0;
        border: 1px solid rgba(216, 226, 241, .82);
        border-radius: 50%;
        background: rgba(255, 255, 255, .72);
        color: #526176;
        box-shadow: 0 .55rem 1.4rem rgba(7, 19, 41, .08);
    }

    .fm-wishlist-drawer__header > button i,
    .fm-compare-drawer__header > button i {
        width: 1rem;
        height: 1rem;
        font-size: 1rem;
        line-height: 1;
    }

    .fm-wishlist-drawer .vme-mod__contents.has-mod-loader,
    .fm-compare-drawer .vme-mod__contents.has-mod-loader {
        display: flex;
        flex-direction: column;
        min-height: 0;
        max-height: calc(min(74vh, 620px) - 4.5rem);
    }

    .fm-wishlist-drawer .offcanvas-body,
    .fm-compare-drawer .offcanvas-body {
        flex: 1 1 auto;
        min-height: 0;
        padding: .78rem .72rem .72rem !important;
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: none;
    }

    .fm-wishlist-drawer .offcanvas-body::-webkit-scrollbar,
    .fm-compare-drawer .offcanvas-body::-webkit-scrollbar {
        display: none;
    }

    .fm-wishlist-drawer__hint {
        padding: .72rem .72rem 0;
    }

    .fm-wishlist-drawer__hint span {
        min-height: 1.65rem;
        padding: .26rem .52rem;
        background: rgba(255, 255, 255, .68);
        font-size: .72rem;
    }

    .fm-wishlist-drawer__item,
    .fm-compare-drawer__item,
    .fm-compare-drawer .vme-mod__product-details.fm-compare-drawer__item {
        grid-template-columns: 72px minmax(0, 1fr) 2rem;
        gap: .65rem;
        padding: .58rem;
        border-color: rgba(213, 226, 244, .9);
        border-radius: 18px;
        background: rgba(255, 255, 255, .76);
        box-shadow: 0 .45rem 1.2rem rgba(7, 19, 41, .05);
    }

    .fm-wishlist-drawer__thumb,
    .fm-wishlist-drawer__thumb img,
    .fm-compare-drawer__media,
    .fm-compare-drawer__media a,
    .fm-compare-drawer__media img,
    .fm-compare-drawer__media .product-image,
    .fm-compare-drawer__media picture {
        width: 72px !important;
        height: 72px !important;
        max-width: 72px !important;
        border-radius: 15px;
    }

    .fm-wishlist-drawer__info strong,
    .fm-wishlist-drawer__info a,
    .fm-compare-drawer__info strong,
    .fm-compare-drawer__info a {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        font-size: .86rem;
        line-height: 1.17;
    }

    .fm-wishlist-drawer__info .mod-product-price,
    .fm-compare-drawer__info .mod-product-price {
        margin-top: .32rem;
        font-size: .92rem;
    }

    .fm-wishlist-drawer__remove,
    .fm-compare-drawer__remove {
        width: 2rem;
        height: 2rem;
        border-color: rgba(255, 183, 207, .8);
        background: rgba(255, 241, 246, .82);
        color: #ff2f7d;
        font-size: 1.05rem;
    }

    .fm-wishlist-drawer .vme-mod__show-link-container,
    .fm-compare-drawer .vme-mod__show-link-container {
        position: sticky;
        bottom: 0;
        padding: .72rem !important;
        border-top: 1px solid rgba(213, 226, 244, .84);
        background: linear-gradient(180deg, rgba(255, 255, 255, .68), rgba(255, 255, 255, .96));
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }

    .fm-wishlist-drawer__button,
    .fm-compare-drawer__button {
        min-height: 3rem;
        border-radius: 999px;
        background: #0b63ff !important;
        color: #fff !important;
        box-shadow: 0 .75rem 1.6rem rgba(0, 91, 255, .22);
    }

    .fm-wishlist-drawer__empty,
    .fm-compare-drawer__empty {
        min-height: 15rem;
        padding: 1.35rem .95rem 1.2rem !important;
    }
}

.fm-compare-page {
    margin-bottom: 2rem;
}

.fm-compare-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin: 1.2rem 0 1.35rem;
}

.fm-compare-head h1 {
    margin: 0;
    color: #07172f;
    font-size: clamp(1.75rem, 3vw, 2.55rem);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: 0;
}

.fm-compare-head p {
    margin: .45rem 0 0;
    color: #66758b;
    font-size: 1rem;
    font-weight: 500;
}

.fm-compare-head > span {
    flex: 0 0 auto;
    padding: .48rem .75rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    color: #526176;
    font-size: .86rem;
    font-weight: 800;
}

.fm-compare-scroll {
    overflow-x: auto;
    border: 1px solid #dfe7f2;
    border-radius: 22px;
    background: #fff;
}

.fm-compare-table {
    width: 100%;
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0;
}

.fm-compare-table th,
.fm-compare-table td {
    width: 280px;
    min-width: 240px;
    padding: 1rem;
    border-bottom: 1px solid #e6edf5;
    vertical-align: top;
}

.fm-compare-table th {
    position: sticky;
    left: 0;
    z-index: 2;
    width: 180px;
    min-width: 180px;
    background: #f8fbff;
    color: #526176;
    font-size: .84rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.fm-compare-table tr:last-child th,
.fm-compare-table tr:last-child td {
    border-bottom: 0;
}

.fm-compare-row--cards th {
    padding-top: 1.2rem;
}

.fm-compare-card {
    position: relative;
}

.fm-compare-card__image {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-bottom: .82rem;
    border-radius: 18px;
    background: #f5f7fb;
}

.fm-compare-card__image img {
    display: block;
    width: 100%;
    height: 230px;
    object-fit: contain;
    background: #f5f7fb;
}

.fm-compare-card h2 {
    margin: 0 2.1rem .55rem 0;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.25;
}

.fm-compare-card h2 a {
    color: #07172f;
    text-decoration: none;
}

.fm-compare-remove {
    position: absolute;
    top: 0;
    right: 0;
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 1px solid #dfe7f2;
    border-radius: 50%;
    background: #fff;
    color: #7b8798;
    font-size: 1.15rem;
}

.fm-compare-remove:hover,
.fm-compare-remove:focus-visible {
    border-color: #ffb7cf;
    color: #ff2f7d;
    outline: 0;
}

.fm-compare-price {
    display: grid;
    gap: .18rem;
}

.fm-compare-price__old {
    display: flex;
    align-items: center;
    gap: .45rem;
    color: #7b8798;
    font-size: .9rem;
    font-weight: 800;
}

.fm-compare-price__old span {
    text-decoration: line-through;
}

.fm-compare-price__old b {
    padding: .12rem .42rem;
    border: 1px solid #bfe8d1;
    border-radius: 999px;
    background: #f0fff6;
    color: #0f8b4d;
    font-size: .78rem;
    font-weight: 900;
    text-decoration: none;
}

.fm-compare-price__current {
    color: #ff2f7d;
    font-size: 1.3rem;
    font-weight: 950;
    line-height: 1.1;
}

.fm-compare-text {
    color: #455267;
    font-size: .96rem;
    font-weight: 500;
    line-height: 1.45;
}

.fm-compare-muted {
    color: #98a2b3;
}

.fm-compare-stock {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-height: 2rem;
    padding: .34rem .62rem;
    border: 1px solid #dfe7f2;
    border-radius: 999px;
    color: #526176;
    font-size: .86rem;
    font-weight: 850;
}

.fm-compare-stock::before {
    content: "";
    width: .48rem;
    height: .48rem;
    border-radius: 50%;
    background: #98a2b3;
}

.fm-compare-stock.is-in-stock::before {
    background: #19c759;
}

.fm-compare-cart .addtocart-bar {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.fm-compare-cart .quantity-box {
    display: none !important;
}

.fm-compare-cart .vm-customfields-container,
.fm-compare-cart .product-fields,
.fm-compare-cart .product-field,
.fm-compare-cart .custom-field-C-container {
    display: none !important;
}

.fm-compare-cart .vm-quick-order-trigger,
.fm-compare-cart [data-quick-order-open] {
    display: none !important;
}

.fm-compare-cart .addtocart-button-container .btn,
.fm-compare-cart .addtocart-button-container button,
.fm-compare-cart .addtocart-button-container input[type="submit"] {
    min-height: 2.65rem;
    width: auto;
    min-width: 10.5rem;
    padding-inline: 1rem;
    border-radius: 14px;
    background: #0b63ff !important;
    color: #fff !important;
    font-size: .95rem;
    font-weight: 750;
    letter-spacing: 0;
}

.fm-compare-empty {
    display: grid;
    place-items: center;
    gap: .55rem;
    min-height: 360px;
    padding: 2rem 1rem;
    text-align: center;
}

.fm-compare-empty__icon {
    display: grid;
    place-items: center;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background: #eef4ff;
    color: #0b63ff;
    font-size: 1.35rem;
}

.fm-compare-empty h1 {
    margin: .45rem 0 0;
    color: #07172f;
    font-size: clamp(1.7rem, 4vw, 2.3rem);
    font-weight: 900;
}

.fm-compare-empty p {
    max-width: 520px;
    margin: 0 0 .65rem;
    color: #66758b;
    font-weight: 500;
}

@media (max-width: 767.98px) {
    .fm-compare-head {
        align-items: flex-start;
        margin-top: .8rem;
    }

    .fm-compare-head {
        display: grid;
    }

    .fm-compare-head h1 {
        font-size: 1.7rem;
    }

    .fm-compare-head p {
        font-size: .92rem;
        line-height: 1.35;
    }

    .fm-compare-scroll {
        margin-right: -1rem;
        border-right: 0;
        border-radius: 18px 0 0 18px;
    }

    .fm-compare-table {
        min-width: 660px;
    }

    .fm-compare-table th,
    .fm-compare-table td {
        width: 220px;
        min-width: 210px;
        padding: .78rem;
    }

    .fm-compare-table th {
        width: 128px;
        min-width: 128px;
        font-size: .72rem;
    }

    .fm-compare-card__image {
        border-radius: 14px;
    }

    .fm-compare-card__image img {
        height: 170px;
    }

    .fm-compare-card h2 {
        font-size: .9rem;
    }

    .fm-compare-price__current {
        font-size: 1.12rem;
    }

    .fm-compare-text {
        font-size: .86rem;
    }
}

/* Category sorting */
.browse-view .top-toolbar {
    gap: .65rem 1rem;
    margin-bottom: 1.45rem !important;
}

.browse-view .productlist-results {
    color: #667085;
    font-size: .94rem;
    font-weight: 520;
    line-height: 1.2;
}

.browse-view .toolbar-seprator {
    width: 1px;
    height: 1.9rem;
    padding: 0;
    background: #e3e9f2;
}

.browse-view .orderby-container {
    min-width: 0;
}

.fm-orderby {
    display: flex;
    align-items: center;
    gap: .55rem;
    min-width: 0;
}

.fm-orderby__label {
    color: #667085;
    font-size: .88rem;
    font-weight: 620;
    line-height: 1;
    white-space: nowrap;
}

.fm-orderby__list {
    display: flex;
    align-items: center;
    gap: .35rem;
    min-width: 0;
    flex-wrap: wrap;
}

.fm-orderby__link,
.fm-orderby__dir {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.25rem;
    border: 1px solid #d9e3ef;
    background: #fff;
    color: #18243a;
    text-decoration: none;
    box-shadow: none !important;
    transition: border-color .16s ease, color .16s ease, background-color .16s ease;
}

.fm-orderby__link {
    padding: .48rem .76rem;
    border-radius: 999px;
    font-size: .88rem;
    font-weight: 650;
    line-height: 1;
    white-space: nowrap;
}

.fm-orderby__dir {
    flex: 0 0 2.25rem;
    width: 2.25rem;
    border-radius: 12px;
    font-size: .9rem;
}

.fm-orderby__link:hover,
.fm-orderby__link:focus-visible,
.fm-orderby__dir:hover,
.fm-orderby__dir:focus-visible {
    border-color: #005bff;
    background: #f7faff;
    color: #005bff;
    text-decoration: none;
}

.fm-orderby__link.is-active {
    border-color: #005bff;
    background: #005bff;
    color: #fff;
}

@media (max-width: 767.98px) {
    .browse-view .top-toolbar {
        display: flex;
        align-items: flex-start !important;
        gap: .55rem;
        margin-bottom: 1rem !important;
    }

    .browse-view .toolbar-seprator {
        display: none !important;
    }

    .browse-view .orderby-container {
        width: 100%;
    }

    .fm-orderby {
        align-items: center;
        gap: .45rem;
        width: 100%;
    }

    .fm-orderby__label {
        flex: 0 0 auto;
        font-size: .78rem;
    }

    .fm-orderby__list {
        flex: 1 1 auto;
        display: flex;
        flex-wrap: nowrap;
        gap: .3rem;
        min-width: 0;
        margin: 0 -.25rem;
        padding: .15rem .25rem .35rem;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .fm-orderby__list::-webkit-scrollbar {
        display: none;
    }

    .fm-orderby__link {
        flex: 0 0 auto;
        min-height: 2rem;
        padding: .42rem .58rem;
        font-size: .78rem;
        scroll-snap-align: start;
        touch-action: pan-x;
    }

    .fm-orderby__dir {
        flex-basis: 2rem;
        width: 2rem;
        min-height: 2rem;
        border-radius: 10px;
    }
}

/* Modern VirtueMart checkout */
#cart-view {
    --checkout-blue: #005bff;
    --checkout-blue-soft: #eef5ff;
    --checkout-pink: #ff2f72;
    --checkout-green: #16c75d;
    --checkout-ink: #172033;
    --checkout-muted: #6b7280;
    --checkout-line: #e6ebf3;
    --checkout-bg: #f6f8fc;
    --checkout-shadow: none;
    color: var(--checkout-ink);
    font-size: 16px;
    line-height: 1.45;
}

#cart-view .page-header h1 {
    margin-bottom: 1.25rem;
    font-size: clamp(1.55rem, 2.2vw, 2rem);
    letter-spacing: 0;
}

#cart-view form#checkoutForm > .row {
    align-items: flex-start;
}

#cart-view .cart-summary {
    border-collapse: separate;
    border-spacing: 0 .85rem;
    margin-bottom: .75rem;
}

#cart-view .cart-summary thead th {
    padding: 0 .95rem .55rem;
    border: 0;
    color: #8a94a6;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.2;
    text-transform: uppercase;
}

#cart-view .cart-summary tbody tr {
    background: #fff;
    box-shadow: none;
}

#cart-view .cart-summary tbody td {
    padding: 1.05rem .95rem;
    border-top: 1px solid var(--checkout-line);
    border-bottom: 1px solid var(--checkout-line);
    vertical-align: middle !important;
}

#cart-view .cart-summary tbody td:first-child {
    border-left: 1px solid var(--checkout-line);
    border-radius: 14px 0 0 14px;
}

#cart-view .cart-summary tbody td:last-child {
    border-right: 1px solid var(--checkout-line);
    border-radius: 0 14px 14px 0;
}

#cart-view .cart-summary .checkout-product-row td {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
}

#cart-view .cart-item-info-section {
    align-items: center;
}

#cart-view .cart-item-image {
    flex: 0 0 104px;
    width: 104px;
}

#cart-view .cart-thumbnail-image {
    width: 104px;
    height: 132px;
    border-radius: 16px;
    object-fit: cover;
    background: #f3f5f9;
    box-shadow: none;
}

#cart-view .cart-item-info h6 {
    margin: 0 0 .45rem;
    font-size: 1.16rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0;
}

#cart-view .cart-item-info h6 a {
    color: var(--checkout-ink);
    text-decoration: none;
}

#cart-view .cart-item-info h6 a:hover {
    color: var(--checkout-blue);
}

#cart-view .cart-item-sku,
#cart-view .cart-item-sku .text-muted {
    display: inline-flex;
    color: var(--checkout-muted) !important;
    font-size: .98rem;
}

#cart-view .cart-item-basicprice,
#cart-view .cart-item-total {
    font-size: 1.12rem;
    font-weight: 700;
}

#cart-view .cart-item-total .PricesalesPrice,
#cart-view .cart-item-total .PricebillTotal,
#cart-view .cart-item-total .PricesalesPriceShipment,
#cart-view .cart-item-total .PricesalesPricePayment {
    color: var(--checkout-ink);
    font-size: 1.18rem;
    font-weight: 800;
}

#cart-view .cart-item-discount,
#cart-view .cart-item-discount .PricesalesPriceShipment,
#cart-view .cart-item-discount .PricebillDiscountAmount {
    color: var(--checkout-pink);
    font-weight: 800;
}

#cart-view .quanity-update-section {
    gap: .35rem !important;
}

#cart-view .quantity-input {
    width: 74px;
    min-height: 48px;
    padding: .35rem .55rem;
    border: 1px solid #005bff00;
    border-radius: 16px;
    color: var(--checkout-ink);
    font-weight: 750;
    line-height: 1;
    text-align: center;
}

#cart-view .quanity-update-section .btn {
    width: 38px;
    height: 38px;
    display: inline-grid;
    place-items: center;
    border-radius: 12px;
    color: #2b3445;
    text-decoration: none;
}

#cart-view .quanity-update-section .btn:hover {
    background: var(--checkout-blue-soft);
    color: var(--checkout-blue);
}

#cart-view .checkout-subtotal-row,
#cart-view .checkout-shipment-row,
#cart-view .checkout-payment-row,
#cart-view .checkout-methods-row {
    box-shadow: none !important;
}

#cart-view .checkout-subtotal-row td,
#cart-view .checkout-shipment-row td,
#cart-view .checkout-payment-row td,
#cart-view .checkout-methods-row td {
    background: #fff;
    border-color: #dfe6f1;
}

#cart-view .checkout-subtotal-row .section-title,
#cart-view .checkout-grand-total-row .cart-section-header {
    font-size: 1.14rem;
    font-weight: 750;
}

#cart-view .checkout-methods-row > td {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

#cart-view .checkout-methods-block {
    margin: .95rem 0;
}

#cart-view .cart-summery .checkout-methods-block {
    margin: 0 0 1rem;
}

#cart-view .cart-summery .checkout-methods-block .checkout-block-heading {
    margin-bottom: .65rem;
}

#cart-view .cart-summery .checkout-methods-block .checkout-block-heading h2 {
    font-size: 1rem;
}

#cart-view .cart-summery .checkout-methods-block .checkout-block-heading p {
    display: none;
}

#cart-view .checkout-methods-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

#cart-view .cart-summery .checkout-methods-grid {
    grid-template-columns: 1fr;
    gap: .62rem;
}

#cart-view .checkout-method-panel {
    position: relative;
    min-width: 0;
    padding: .95rem 1rem 1rem;
    border: 1px solid #dfe6f1;
    border-radius: 16px;
    background:
        linear-gradient(90deg, rgba(0, 91, 255, .06) 0, rgba(0, 91, 255, 0) 42%),
        #fff;
    overflow: hidden;
}

#cart-view .cart-summery .checkout-method-panel {
    padding: .78rem;
    border-radius: 13px;
}

#cart-view .checkout-method-panel::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--checkout-blue);
}

#cart-view .checkout-payment-panel::before {
    background: var(--checkout-pink);
}

#cart-view .checkout-method-head {
    display: flex;
    align-items: flex-start;
    gap: .9rem;
    margin-bottom: .65rem;
}

#cart-view .cart-summery .checkout-method-head {
    margin-bottom: .5rem;
}

#cart-view .checkout-method-head h6 {
    margin: 0 0 .38rem;
    color: var(--checkout-ink);
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none;
}

#cart-view .cart-summery .checkout-method-head h6 {
    font-size: .9rem;
}

#cart-view .checkout-method-price {
    margin-left: auto;
    flex: 0 0 auto;
    padding-top: .1rem;
    color: var(--checkout-ink);
    font-size: 1rem;
    font-weight: 900;
    white-space: nowrap;
}

#cart-view .cart-summery .checkout-method-price {
    font-size: .9rem;
}

#cart-view .checkout-method-price.is-discount,
#cart-view .checkout-method-price.is-discount .PricesalesPriceShipment,
#cart-view .checkout-method-price.is-discount .PricesalesPricePayment {
    color: var(--checkout-pink);
}

#cart-view .checkout-method-body {
    min-width: 0;
}

#cart-view .cart-coupon-field {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    width: 100%;
    min-height: 3.15rem;
    padding: .28rem;
    border: 1px solid #dbe7f6;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: none;
}

#cart-view .cart-coupon-field .form-control {
    min-width: 0;
    min-height: 2.55rem;
    padding: .45rem .55rem;
    border: 0 !important;
    border-radius: 12px;
    background: transparent;
    color: var(--checkout-ink);
    font-size: .96rem;
    font-weight: 520;
    box-shadow: none !important;
}

#cart-view .cart-coupon-field .form-control::placeholder {
    color: #8a95a6;
    opacity: 1;
}

#cart-view .cart-coupon-field .btn {
    min-width: 7.2rem;
    min-height: 2.55rem;
    padding: .55rem .9rem;
    border: 0;
    border-radius: 12px;
    background: #005bff;
    color: #fff;
    font-size: .9rem;
    font-weight: 760;
    line-height: 1;
    box-shadow: none !important;
}

#cart-view .cart-coupon-field .btn:hover,
#cart-view .cart-coupon-field .btn:focus {
    background: #004ce0;
}

#cart-view .checkout-sidebar-coupon.checkout-field-invalid,
#cart-view .cart-coupon-field.checkout-field-invalid {
    border-color: var(--checkout-pink);
    background: #fff6fa;
}

#cart-view .cart-coupon-field__icon {
    display: grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    margin-left: .15rem;
    border-radius: 11px;
    background: #f3f7ff;
    color: var(--checkout-blue);
}

#cart-view .cart-coupon-field__icon svg {
    width: 1.05rem;
    height: 1.05rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#cart-view .checkout-sidebar-coupon {
    margin: 0 0 1.15rem;
}

#cart-view .checkout-sidebar-coupon__toggle {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    width: auto;
    padding: 0 0 .12rem;
    border: 0;
    border-bottom: 1px dashed currentColor;
    border-radius: 0;
    background: transparent;
    color: #ff7b6f;
    font-size: .95rem;
    font-weight: 650;
    line-height: 1.25;
    letter-spacing: 0;
    cursor: pointer;
}

#cart-view .checkout-sidebar-coupon__toggle svg {
    width: .82rem;
    height: .82rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: transform .18s ease;
}

#cart-view .checkout-sidebar-coupon__toggle:hover,
#cart-view .checkout-sidebar-coupon__toggle:focus {
    color: var(--checkout-pink);
}

#cart-view .checkout-sidebar-coupon.is-open .checkout-sidebar-coupon__toggle svg {
    transform: rotate(180deg);
}

#cart-view .checkout-sidebar-coupon__panel {
    display: none;
    margin-top: .75rem;
    padding: .85rem;
    border: 1px solid #dfe8f4;
    border-radius: 18px;
    background: #f8fbff;
}

#cart-view .checkout-sidebar-coupon.is-open .checkout-sidebar-coupon__panel {
    display: block;
}

#cart-view .checkout-sidebar-coupon__head {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    margin-bottom: .7rem;
}

#cart-view .checkout-sidebar-coupon__icon {
    display: grid;
    place-items: center;
    flex: 0 0 2.25rem;
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid #dbe7f6;
    border-radius: 12px;
    background: #fff;
    color: var(--checkout-pink);
}

#cart-view .checkout-sidebar-coupon__icon svg {
    width: 1.05rem;
    height: 1.05rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#cart-view .checkout-sidebar-coupon__head h3 {
    margin: 0;
    color: var(--checkout-ink);
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0;
    text-transform: none;
}

#cart-view .checkout-sidebar-coupon__head p {
    margin: .18rem 0 0;
    color: #667085;
    font-size: .82rem;
    font-weight: 440;
    line-height: 1.3;
}

#cart-view .checkout-sidebar-coupon__applied {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .65rem;
    margin-top: .65rem;
    padding: .62rem .7rem;
    border: 1px solid #d7f2e4;
    border-radius: 13px;
    background: #f2fbf7;
    color: #147a3e;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.2;
}

#cart-view .checkout-sidebar-coupon__applied-price {
    flex: 0 0 auto;
    color: var(--checkout-pink);
    font-weight: 850;
    white-space: nowrap;
}

#cart-view .continue-shopping-section {
    display: flex;
    justify-content: flex-start;
    margin: 1.2rem 0 2.4rem;
    padding-bottom: .35rem;
}

#cart-view .continue-shopping-link {
    display: inline-flex;
    align-items: center;
    gap: .58rem;
    min-height: 2.85rem;
    padding: .58rem .9rem .58rem .62rem;
    border: 1px solid #dbe7f6;
    border-radius: 999px;
    background: #fff;
    color: #344054;
    font-size: .96rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    box-shadow: none;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease;
}

#cart-view .continue-shopping-link__icon {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: #f3f7ff;
    color: var(--checkout-blue);
}

#cart-view .continue-shopping-link__icon svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.35;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#cart-view .continue-shopping-link:hover,
#cart-view .continue-shopping-link:focus-visible {
    border-color: #bcd2ff;
    background: #f7fbff;
    color: var(--checkout-blue);
    text-decoration: none;
    transform: translateY(-1px);
}

#cart-view .checkout-shipment-row > td:first-child,
#cart-view .checkout-payment-row > td:first-child {
    padding: .85rem 1rem;
}

#cart-view .checkout-shipment-row h6.mb-2,
#cart-view .checkout-payment-row h6.mb-2,
#cart-view .checkout-choice-title {
    margin: 0 0 .58rem !important;
    color: var(--checkout-ink);
    font-size: .96rem;
    font-weight: 850;
    line-height: 1.25;
    letter-spacing: 0;
    text-transform: none;
}

#cart-view .checkout-method-body .checkout-choice-title {
    display: block;
    margin: 0 0 .5rem !important;
    padding: .52rem .65rem;
    border: 1px solid #e7edf6;
    border-radius: 10px;
    background: #f8fbff;
    color: #526071;
    font-size: .78rem;
    font-weight: 650;
    line-height: 1.35;
}

#cart-view .checkout-shipment-row .cart-section-header > .checkout-choice-title,
#cart-view .checkout-payment-row .cart-section-header > .checkout-choice-title,
#cart-view .checkout-shipment-row .cart-section-header > h6:not(:first-child),
#cart-view .checkout-payment-row .cart-section-header > h6:not(:first-child) {
    margin-top: .55rem !important;
}

#cart-view .cart-shipment-name,
#cart-view .cart-payment-name {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    margin: 0 !important;
    padding: .28rem .68rem;
    border-radius: 10px;
    background: #eef5ff;
    color: var(--checkout-blue);
    font-size: .98rem;
    font-weight: 650;
}

#cart-view .checkout-payment-panel .cart-payment-name {
    background: #fff0f6;
    color: var(--checkout-pink);
}

#cart-view .checkout-choice-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .6rem;
    align-items: stretch;
    max-width: 860px;
}

#cart-view .checkout-method-panel .checkout-choice-list {
    grid-template-columns: 1fr;
    gap: .5rem;
    max-width: none;
}

#cart-view .cart-summery .checkout-choice-card {
    padding: .62rem .68rem .62rem 2.65rem;
    border-radius: 10px;
}

#cart-view .cart-summery .checkout-choice-card input[type="radio"] {
    left: .78rem;
    top: 50%;
}

#cart-view .cart-summery .checkout-choice-card label {
    font-size: .82rem;
}

#cart-view .checkout-choice-card {
    position: relative;
    display: flex;
    align-items: center;
    min-width: min(100%, 210px);
    margin: 0;
    padding: .74rem .86rem .74rem 3.15rem;
    border: 1px solid #dfe6f1;
    border-radius: 12px;
    background: rgba(255, 255, 255, .82);
    color: var(--checkout-ink);
    box-shadow: none;
    transition: border-color .16s ease, background-color .16s ease;
}

#cart-view .checkout-choice-card:hover {
    border-color: rgba(0, 91, 255, .45);
    background: #fbfdff;
}

#cart-view .checkout-choice-card:has(input:checked) {
    border-color: var(--checkout-blue);
    background: #f5f9ff;
    box-shadow: none;
}

#cart-view .checkout-payment-panel .checkout-choice-card:has(input:checked) {
    border-color: var(--checkout-blue);
    background: #f5f9ff;
}

#cart-view .checkout-choice-card input[type="radio"] {
    position: absolute;
    left: .86rem;
    top: 50%;
    width: 1.55rem;
    height: 1.55rem;
    margin: 0;
    transform: translateY(-50%);
    border: 2px solid #cbd6e5;
    border-radius: .48rem;
    background: #fff;
    box-shadow: none;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

#cart-view .checkout-choice-card input[type="radio"]:checked {
    border-color: var(--checkout-blue);
    background-color: var(--checkout-blue);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6.5 12.5 3.3 3.3 7.7-8' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 1rem;
    box-shadow: none;
}

#cart-view .checkout-choice-card input[type="radio"]:focus-visible {
    outline: 3px solid rgba(0, 91, 255, .16);
    outline-offset: 3px;
}

#cart-view .checkout-choice-card label,
#cart-view .checkout-choice-card span {
    cursor: pointer;
}

#cart-view .checkout-choice-card label {
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    width: 100%;
    gap: .28rem .46rem;
    min-height: 0;
    margin: 0;
    color: var(--checkout-ink);
    font-size: 1.04rem;
    font-weight: 650;
    line-height: 1.25;
}

#cart-view .checkout-choice-card .text-muted,
#cart-view .checkout-choice-card small {
    display: inline;
    color: var(--checkout-muted) !important;
    font-weight: 500;
    font-size: .9rem;
}

#cart-view .checkout-methods-block > .checkout-block-heading {
    display: grid;
    gap: .22rem;
    margin: .25rem 0 .95rem;
    padding-bottom: .82rem;
    border-bottom: 1px solid #edf1f7;
}

#cart-view .checkout-methods-block > .checkout-block-heading h2 {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: 1.26rem;
    font-weight: 800;
    line-height: 1.18;
}

#cart-view .checkout-methods-block > .checkout-block-heading h2::before {
    content: "\f0d1";
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid #dce7f6;
    border-radius: 10px;
    background: #f6faff;
    color: var(--checkout-blue);
    font-family: "Font Awesome 5 Free";
    font-size: .78rem;
    font-weight: 900;
}

#cart-view .checkout-methods-block > .checkout-block-heading h2 .fas {
    display: none;
}

#cart-view .checkout-methods-block > .checkout-block-heading p {
    max-width: 760px;
    color: #687486;
    font-size: .94rem;
    line-height: 1.35;
}

#cart-view .checkout-method-panel {
    padding: 1rem 1.05rem 1.08rem;
    border-color: #dfe7f2;
    background: #fff;
}

#cart-view .checkout-method-panel::before {
    display: none;
}

#cart-view .checkout-method-panel::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(246, 249, 253, .9), rgba(255, 255, 255, 0) 104px);
}

#cart-view .checkout-method-panel > * {
    position: relative;
    z-index: 1;
}

#cart-view .checkout-method-head {
    align-items: center;
    gap: .7rem;
    padding-bottom: .72rem;
    border-bottom: 1px solid #edf1f7;
}

#cart-view .checkout-method-title-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem;
    min-width: 0;
}

#cart-view .checkout-method-head-icon {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #dce7f6;
    border-radius: 10px;
    background: #f7fbff;
    color: var(--checkout-blue);
    font-size: .98rem;
}

#cart-view .checkout-payment-panel .checkout-method-head-icon {
    color: var(--checkout-pink);
    background: #fff8fb;
    border-color: #f4d9e4;
}

#cart-view .checkout-method-head h6 {
    margin: 0;
    color: #263246;
    font-size: 1.02rem;
    font-weight: 750;
}

#cart-view .cart-shipment-name,
#cart-view .cart-payment-name {
    min-height: auto;
    padding: .18rem .58rem;
    border: 1px solid #e5ebf4;
    background: #f8fafd;
    color: #526071;
    font-size: .9rem;
    font-weight: 650;
    line-height: 1.15;
}

#cart-view .checkout-payment-panel .cart-payment-name {
    border-color: #e5ebf4;
    background: #f8fafd;
    color: #526071;
}

#cart-view .checkout-payment-panel .cart-payment-name .vmpayment_description,
#cart-view .checkout-payment-panel .cart-payment-name .vmCartPaymentLogo {
    display: none;
}

#cart-view .checkout-method-price,
#cart-view .checkout-method-price.is-discount,
#cart-view .checkout-method-price.is-discount .PricesalesPriceShipment,
#cart-view .checkout-method-price.is-discount .PricesalesPricePayment {
    color: #263246;
    font-size: .98rem;
    font-weight: 800;
}

#cart-view .checkout-method-body {
    padding-top: .78rem;
}

#cart-view .checkout-method-body .checkout-choice-title {
    padding: 0;
    border: 0;
    background: transparent;
    color: #7a8493;
    font-size: .84rem;
    font-weight: 600;
}

#cart-view .checkout-choice-card {
    min-height: 54px;
    padding: .76rem .86rem .76rem 3.05rem;
    border-color: #dde6f1;
    background: #fff;
}

#cart-view .checkout-choice-card:hover {
    border-color: #b8c7dc;
    background: #fbfdff;
}

#cart-view .checkout-choice-card:has(input:checked),
#cart-view .checkout-payment-panel .checkout-choice-card:has(input:checked) {
    border-color: var(--checkout-blue);
    background: #f5f9ff;
}

#cart-view .checkout-choice-card input[type="radio"]:checked {
    background-color: var(--checkout-blue);
    border-color: var(--checkout-blue);
}

#cart-view .checkout-choice-card label {
    font-size: 1rem;
    font-weight: 650;
}

#cart-view .checkout-payment-panel .checkout-choice-card .vmpayment_name {
    display: block;
    flex: 0 0 100%;
    width: 100%;
    color: var(--checkout-ink);
    font-size: .94rem;
    font-weight: 700;
    line-height: 1.15;
}

#cart-view .checkout-payment-panel .checkout-choice-card .vmpayment_description {
    display: block;
    flex: 0 0 100%;
    width: 100%;
    margin-top: .08rem;
    color: #788393;
    font-size: .74rem;
    font-weight: 400;
    line-height: 1.22;
}

#cart-view .checkout-shipment-row .cart-item-total,
#cart-view .checkout-shipment-row .cart-item-discount,
#cart-view .checkout-payment-row .cart-item-total,
#cart-view .checkout-payment-row .cart-item-discount {
    padding-top: 1rem;
    color: var(--checkout-ink);
    font-size: 1rem;
    font-weight: 900;
}

#cart-view .checkout-grand-total-row td {
    background: #101828 !important;
    border-color: #101828 !important;
    color: #fff;
}

#cart-view .checkout-grand-total-row .cart-item-total,
#cart-view .checkout-grand-total-row .PricebillTotal {
    color: #fff;
    font-size: 1.22rem;
    font-weight: 900;
}

#cart-view .cart-summery {
    position: sticky;
    top: 1rem;
    border: 1px solid var(--checkout-line) !important;
    border-radius: 22px;
    background: #fff;
    box-shadow: none;
}

#cart-view .cart-summery h3 {
    margin-bottom: 1rem !important;
    font-size: 1.12rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: none !important;
}

#cart-view .checkout-sidebar-fields {
    margin-bottom: 1rem;
}

#cart-view .cart-summery .checkout-block-heading {
    margin-bottom: .75rem;
}

#cart-view .cart-summery .checkout-block-heading h2 {
    font-size: 1.28rem;
    font-weight: 800;
}

#cart-view .cart-summery .checkout-block-heading p {
    font-size: 1rem;
    line-height: 1.45;
}

#cart-view .cart-summery .checkout-user-fields {
    gap: .62rem;
    margin-bottom: .7rem;
}

#cart-view .cart-summery .checkout-user-section,
#cart-view .cart-summery .cart-fields-section {
    padding: .72rem;
    border-radius: 13px;
}

#cart-view .cart-summery .checkout-user-section-head {
    margin-bottom: .55rem;
}

#cart-view .cart-summery .checkout-user-section-head h6,
#cart-view .cart-summery .cart-fields-section legend {
    font-size: 1.08rem;
    font-weight: 750;
}

#cart-view .cart-summery .checkout-user-section-head span {
    font-size: .78rem;
    font-weight: 650;
}

#cart-view .cart-summery .checkout-user-grid {
    grid-template-columns: 1fr;
    gap: .5rem;
}

#cart-view .cart-summery .checkout-user-label,
#cart-view .cart-summery .cart-fields-section .form-label {
    margin-bottom: .24rem;
    font-size: .86rem;
    font-weight: 650;
}

#cart-view .cart-summery .checkout-user-control input:not([type="checkbox"]):not([type="radio"]),
#cart-view .cart-summery .checkout-user-control select,
#cart-view .cart-summery .checkout-user-control textarea,
#cart-view .cart-summery .cart-fields-section input:not([type="checkbox"]):not([type="radio"]),
#cart-view .cart-summery .cart-fields-section select,
#cart-view .cart-summery .cart-fields-section textarea {
    min-height: 48px;
    padding: .58rem .68rem;
    border-radius: 12px;
    font-size: 1rem;
}

#cart-view .cart-summery .checkout-user-control textarea,
#cart-view .cart-summery .cart-fields-section textarea {
    min-height: 112px;
}

#cart-view .cart-summery .checkout-recipient-switch {
    gap: .48rem;
    margin-bottom: .55rem;
}

#cart-view .cart-summery .checkout-recipient-card {
    grid-template-columns: 1fr;
    min-height: 66px;
    padding: .72rem .85rem;
    border-radius: 12px;
    font-size: 1rem;
}

#cart-view .checkout-main-flow {
    margin-top: .9rem;
    padding: 1.15rem;
    border: 1px solid #dfe6f1;
    border-radius: 18px;
    background: #fff;
}

#cart-view .checkout-block-heading {
    margin-bottom: 1.15rem;
}

#cart-view .checkout-block-heading h2 {
    margin: 0 0 .32rem;
    color: var(--checkout-ink);
    font-size: 1.58rem;
    font-weight: 850;
    line-height: 1.12;
    letter-spacing: 0;
}

#cart-view .checkout-block-heading p {
    margin: 0;
    color: var(--checkout-muted);
    font-size: 1rem;
    line-height: 1.35;
}

#cart-view .checkout-user-fields {
    display: grid;
    gap: .9rem;
    margin-bottom: .95rem;
}

#cart-view .checkout-user-section {
    padding: .95rem;
    border: 1px solid #e3e9f2;
    border-radius: 16px;
    background: #fbfcff;
}

#cart-view .checkout-user-section-buyer {
    border-top: 3px solid var(--checkout-blue);
}

#cart-view .checkout-user-section-delivery {
    border-top: 3px solid #16c75d;
}

#cart-view .checkout-user-section-recipient {
    border-top: 3px solid var(--checkout-pink);
}

#cart-view .is-checkout-panel-hidden {
    display: none !important;
}

#cart-view .is-checkout-panel-muted {
    opacity: .72;
}

#cart-view .checkout-user-section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .75rem;
}

#cart-view .checkout-user-section-head h6 {
    margin: 0;
    color: var(--checkout-ink);
    font-size: 1.14rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
}

#cart-view .checkout-user-section-head span {
    color: var(--checkout-blue);
    font-size: .84rem;
    font-weight: 650;
    text-transform: uppercase;
}

#cart-view .checkout-user-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: .68rem;
}

@media (min-width: 768px) {
    #cart-view .checkout-main-flow .billing-address-section .checkout-user-grid,
    #cart-view .checkout-main-flow #output-shipto-display .checkout-user-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #cart-view .checkout-main-flow .checkout-user-field-email,
    #cart-view .checkout-main-flow .checkout-user-field-address_1,
    #cart-view .checkout-main-flow .checkout-user-field-address_2,
    #cart-view .checkout-main-flow .checkout-user-field-shipto_address_1,
    #cart-view .checkout-main-flow .checkout-user-field-shipto_address_2 {
        grid-column: 1 / -1;
    }
}

#cart-view .checkout-user-field {
    min-width: 0;
}

#cart-view .checkout-user-label {
    display: block;
    margin: 0 0 .28rem;
    color: #526071;
    font-size: .9rem;
    font-weight: 650;
    line-height: 1.25;
}

#cart-view .checkout-user-control input:not([type="checkbox"]):not([type="radio"]),
#cart-view .checkout-user-control select,
#cart-view .checkout-user-control textarea,
#cart-view .cart-fields-section input:not([type="checkbox"]):not([type="radio"]),
#cart-view .cart-fields-section select,
#cart-view .cart-fields-section textarea {
    width: 100%;
    min-height: 44px;
    padding: .58rem .72rem;
    border: 1px solid #d8e1ee;
    border-radius: 12px;
    background: #fff;
    color: var(--checkout-ink);
    font-size: 1.04rem;
    line-height: 1.35;
}

#cart-view .checkout-user-control textarea,
#cart-view .cart-fields-section textarea {
    min-height: 96px;
    resize: vertical;
}

#cart-view .checkout-user-control input:focus,
#cart-view .checkout-user-control select:focus,
#cart-view .checkout-user-control textarea:focus,
#cart-view .cart-fields-section input:focus,
#cart-view .cart-fields-section select:focus,
#cart-view .cart-fields-section textarea:focus {
    border-color: var(--checkout-blue);
    box-shadow: 0 0 0 3px rgba(0, 91, 255, .1);
    outline: 0;
}

#cart-view .checkout-native-select-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

#cart-view .checkout-district-select {
    position: relative;
    width: 100%;
    z-index: 40;
}

#cart-view .checkout-district-select.is-open {
    z-index: 10000;
}

#cart-view .checkout-district-select__button {
    position: relative;
    width: 100%;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .72rem 2.75rem .72rem .9rem;
    border: 1px solid #d8e1ee;
    border-radius: 14px;
    background: #fff;
    color: var(--checkout-ink);
    font-family: inherit;
    font-size: 1.04rem;
    font-weight: 500;
    line-height: 1.25;
    text-align: left;
    box-shadow: none;
    appearance: none;
    cursor: pointer;
    transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

#cart-view .checkout-district-select__button::after {
    content: "";
    position: absolute;
    right: .95rem;
    top: 50%;
    width: .58rem;
    height: .58rem;
    border-right: 2px solid #7a8798;
    border-bottom: 2px solid #7a8798;
    transform: translateY(-62%) rotate(45deg);
    transition: transform .16s ease, border-color .16s ease;
}

#cart-view .checkout-district-select__button:hover,
#cart-view .checkout-district-select.is-open .checkout-district-select__button {
    border-color: var(--checkout-blue);
    background: #fbfdff;
    box-shadow: 0 0 0 3px rgba(0, 91, 255, .08);
}

#cart-view .checkout-district-select.is-open .checkout-district-select__button::after {
    border-color: var(--checkout-blue);
    transform: translateY(-34%) rotate(225deg);
}

#cart-view .checkout-district-select__button.is-placeholder {
    color: #7a8798;
}

#cart-view .checkout-district-select__menu {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + .45rem);
    display: grid;
    gap: .22rem;
    max-height: 260px;
    padding: .42rem;
    border: 1px solid #dce6f4;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(18, 34, 64, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-4px);
    overflow-y: auto;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

#cart-view .checkout-district-select.is-open .checkout-district-select__menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

#cart-view .checkout-district-select__option {
    width: 100%;
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    padding: .58rem .72rem;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: #253047;
    font-family: inherit;
    font-size: .98rem;
    font-weight: 520;
    line-height: 1.2;
    text-align: left;
    cursor: pointer;
    transition: background-color .14s ease, color .14s ease;
}

#cart-view .checkout-district-select__option:hover,
#cart-view .checkout-district-select__option:focus-visible {
    background: #f1f6ff;
    color: var(--checkout-blue);
    outline: 0;
}

#cart-view .checkout-district-select__option.is-selected {
    background: var(--checkout-blue-soft);
    color: var(--checkout-blue);
    font-weight: 700;
}

#cart-view .checkout-district-select__option.is-selected::after {
    content: "";
    width: .36rem;
    height: .62rem;
    margin-right: .18rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
}

#cart-view .fm-address-control {
    position: relative;
    z-index: 55;
}

#cart-view .fm-address-control.is-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    right: .9rem;
    width: 16px;
    height: 16px;
    margin-top: -8px;
    border: 2px solid #d7e4f8;
    border-top-color: var(--checkout-blue);
    border-radius: 50%;
    animation: fm-address-spin .7s linear infinite;
    pointer-events: none;
}

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

#cart-view .fm-address-suggestions {
    position: absolute;
    top: calc(100% + .42rem);
    left: 0;
    right: 0;
    z-index: 10020;
    padding: .36rem;
    border: 1px solid #dce6f4;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(20, 38, 70, .14);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-4px);
    transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
}

#cart-view .fm-address-suggestions.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

#cart-view .fm-address-suggestions__items {
    display: grid;
    gap: 2px;
    max-height: min(320px, 45vh);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

#cart-view .fm-address-suggestion {
    width: 100%;
    display: grid;
    gap: .12rem;
    padding: .68rem .72rem;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--checkout-ink);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background-color .14s ease, color .14s ease;
}

#cart-view .fm-address-suggestion:hover,
#cart-view .fm-address-suggestion:focus-visible,
#cart-view .fm-address-suggestion.is-active {
    background: #f1f6ff;
    color: var(--checkout-blue);
    outline: 0;
}

#cart-view .fm-address-suggestion__address {
    font-size: .96rem;
    font-weight: 680;
    line-height: 1.25;
}

#cart-view .fm-address-suggestion__meta {
    color: #708097;
    font-size: .78rem;
    font-weight: 520;
    line-height: 1.2;
}

#cart-view .fm-address-suggestions__empty {
    padding: .8rem .72rem;
    color: #627087;
    font-size: .88rem;
    line-height: 1.35;
}

#cart-view .fm-address-suggestions__brand {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: .22rem .48rem .1rem;
    color: #9aa6b7;
    line-height: 1;
    text-decoration: none;
    opacity: .72;
}

#cart-view .fm-address-suggestions__brand b {
    color: inherit;
    font-size: .64rem;
    font-weight: 700;
    letter-spacing: -.02em;
}

#cart-view .fm-address-suggestions__brand:hover,
#cart-view .fm-address-suggestions__brand:focus-visible {
    color: #657287;
    opacity: 1;
}

#cart-view .fm-address-status {
    display: flex;
    align-items: center;
    gap: .38rem;
    min-height: 22px;
    margin-top: .32rem;
    padding: 0 .12rem;
    color: #718096;
    font-size: .77rem;
    font-weight: 550;
    line-height: 1.25;
}

#cart-view .fm-address-status__icon {
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #aab6c7;
}

#cart-view .fm-address-status.is-ready {
    color: #168653;
}

#cart-view .fm-address-status.is-ready .fm-address-status__icon {
    width: 14px;
    height: 14px;
    flex-basis: 14px;
    background: #e5f8ef;
    box-shadow: inset 0 0 0 1px #bfead5;
}

#cart-view .fm-address-status.is-ready .fm-address-status__icon::after {
    content: "";
    display: block;
    width: 4px;
    height: 7px;
    margin: 2px 0 0 5px;
    border-right: 1.5px solid #15915a;
    border-bottom: 1.5px solid #15915a;
    transform: rotate(45deg);
}

#cart-view .fm-address-status.is-loading .fm-address-status__icon {
    background: var(--checkout-blue);
}

#cart-view .fm-address-status.is-error {
    color: #7b5d22;
}

#cart-view .fm-address-status.is-error .fm-address-status__icon,
#cart-view .fm-address-status.is-fallback .fm-address-status__icon {
    background: #e6a72d;
}

#cart-view .fm-address-status.is-fallback {
    color: #657287;
}

#cart-view .fm-address-status__manual {
    display: none;
    margin-left: auto;
    padding: .18rem .42rem;
    border: 0;
    border-radius: 7px;
    background: #f2f5fa;
    color: #506079;
    font: inherit;
    font-weight: 650;
    cursor: pointer;
}

#cart-view .checkout-user-field.is-address-district-fallback:not(.is-manual-visible) {
    display: none;
}

#cart-view .checkout-user-field.is-address-district-fallback.is-manual-visible {
    grid-column: 1 / -1;
    margin-top: -.18rem;
}

#cart-view .checkout-user-field.is-address-district-fallback.is-manual-visible .checkout-user-label {
    font-size: .78rem;
}

@media (max-width: 575.98px) {
    #cart-view .fm-address-suggestions {
        left: -.05rem;
        right: -.05rem;
        border-radius: 14px;
    }

    #cart-view .fm-address-suggestion {
        padding: .62rem .64rem;
    }

    #cart-view .fm-address-status {
        align-items: flex-start;
        font-size: .72rem;
    }

    #cart-view .fm-address-status__manual {
        flex: 0 0 auto;
        margin-top: -.12rem;
    }
}

#cart-view .checkout-user-help {
    margin-top: .28rem;
    color: var(--checkout-muted);
    font-size: .86rem;
    line-height: 1.35;
}

#cart-view .checkout-same-address {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: 0 0 .75rem;
    padding: .62rem .7rem;
    border: 1px solid #e3e9f2;
    border-radius: 12px;
    background: #fff;
}

#cart-view .checkout-recipient-toggle {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: 0 0 .75rem;
    padding: .62rem .7rem;
    border: 1px solid #ffd0df;
    border-radius: 12px;
    background: #fff7fb;
}

#cart-view .checkout-recipient-switch {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    margin-bottom: .7rem;
}

#cart-view .checkout-recipient-system-field {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
}

#cart-view .checkout-recipient-card {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    gap: .18rem;
    min-height: 68px;
    padding: .82rem .9rem;
    border: 1px solid #e0e6ef;
    border-radius: 12px;
    background: #fff;
    color: var(--checkout-ink);
    font-family: inherit;
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.1;
    text-align: left;
    word-break: normal;
    overflow-wrap: anywhere;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

#cart-view .checkout-recipient-card strong,
#cart-view .checkout-recipient-card small {
    display: block;
}

#cart-view .checkout-recipient-card strong {
    font-size: 1.06rem;
    font-weight: 700;
    line-height: 1.12;
}

#cart-view .checkout-recipient-card small {
    margin-top: .16rem;
    color: #6f7a89;
    font-size: .88rem;
    font-weight: 500;
    line-height: 1.15;
}

#cart-view .checkout-recipient-card.is-active small {
    color: currentColor;
    opacity: .72;
}

#cart-view .checkout-user-section-postcard {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: .9rem;
    align-items: flex-start;
}

#cart-view .checkout-postcard-visual {
    display: grid;
    place-items: center;
    width: 68px;
    height: 68px;
    border-radius: 18px;
    background: #fff7fb;
    color: #d28ea4;
}

#cart-view .checkout-postcard-visual svg {
    width: 58px;
    height: 58px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#cart-view .checkout-postcard-visual svg path:last-child {
    fill: rgba(255, 47, 114, .08);
}

#cart-view .checkout-postcard-content {
    min-width: 0;
}

#cart-view .checkout-postcard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .62rem;
}

#cart-view .checkout-postcard-head h6 {
    margin: 0;
    color: var(--checkout-ink);
    font-size: 1.05rem;
    font-weight: 760;
    line-height: 1.18;
}

#cart-view .checkout-postcard-head span {
    flex: 0 0 auto;
    color: #263246;
    font-size: .92rem;
    font-weight: 750;
}

#cart-view .checkout-postcard-empty {
    display: inline-flex;
    align-items: center;
    gap: .58rem;
    margin: 0 0 .64rem;
    color: #667085;
    font-size: .95rem;
    font-weight: 520;
    line-height: 1.25;
    cursor: pointer;
}

#cart-view .checkout-postcard-empty input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

#cart-view .checkout-postcard-check {
    position: relative;
    width: 1.14rem;
    height: 1.14rem;
    flex: 0 0 1.14rem;
    border: 1px solid #c8d2e0;
    border-radius: 5px;
    background: #fff;
    transition: border-color .16s ease, background-color .16s ease;
}

#cart-view .checkout-postcard-empty input[type="checkbox"]:checked + .checkout-postcard-check {
    border-color: var(--checkout-blue);
    background: var(--checkout-blue);
}

#cart-view .checkout-postcard-empty input[type="checkbox"]:checked + .checkout-postcard-check::after {
    content: "";
    position: absolute;
    left: .35rem;
    top: .16rem;
    width: .34rem;
    height: .58rem;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
}

#cart-view .checkout-postcard-text textarea {
    min-height: 92px;
    border-radius: 14px;
    resize: vertical;
}

#cart-view .checkout-user-section-postcard.is-postcard-empty-selected .checkout-postcard-text {
    display: none;
}

#cart-view .checkout-postcard-empty-note {
    display: none;
    min-width: 0;
    padding: .72rem .86rem;
    border: 1px solid #f5d7e3;
    border-radius: 14px;
    background: #fff8fb;
    color: #5b6472;
    font-size: .92rem;
    font-weight: 650;
    line-height: 1.3;
}

#cart-view .checkout-user-section-postcard.is-postcard-empty-selected .checkout-postcard-empty-note {
    display: block;
}

#cart-view .cart-summary tbody .checkout-cart-postcard-row {
    background: transparent;
}

#cart-view .cart-summary tbody .checkout-cart-postcard-row td {
    padding: 0 0 .7rem;
    border: 0;
    border-radius: 0;
    background: transparent;
}

#cart-view .checkout-cart-postcard {
    position: relative;
    margin: -.25rem 0 .25rem 132px;
    padding: .78rem .9rem;
    border: 1px solid #dfe7f2;
    border-radius: 16px;
    background:
        linear-gradient(135deg, rgba(255, 47, 114, .055), rgba(0, 91, 255, .035)),
        #fff;
}

#cart-view .checkout-cart-postcard::before {
    content: "";
    position: absolute;
    left: -58px;
    top: 28px;
    width: 44px;
    height: 22px;
    border-left: 2px solid #ff9abd;
    border-bottom: 2px solid #ff9abd;
    border-radius: 0 0 0 18px;
}

#cart-view .checkout-cart-postcard::after {
    content: "";
    position: absolute;
    left: -19px;
    top: 44px;
    width: 9px;
    height: 9px;
    border-right: 2px solid #ff9abd;
    border-bottom: 2px solid #ff9abd;
    transform: rotate(-45deg);
}

#cart-view .checkout-cart-postcard .checkout-postcard-head {
    align-items: flex-start;
    margin-bottom: .5rem;
}

#cart-view .checkout-cart-postcard .checkout-postcard-head h6 {
    font-size: 1rem;
}

#cart-view .checkout-cart-postcard .checkout-postcard-head p {
    margin: .18rem 0 0;
    color: #667085;
    font-size: .86rem;
    font-weight: 450;
    line-height: 1.25;
}

#cart-view .checkout-cart-postcard .checkout-postcard-head span {
    padding: .3rem .62rem;
    border: 1px solid #ffd3e1;
    border-radius: 999px;
    background: #fff6fa;
    color: #d92363;
    font-size: .72rem;
    font-weight: 850;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}

#cart-view .checkout-cart-postcard .checkout-postcard-visual {
    background: #fff;
}

#cart-view .checkout-cart-postcard .checkout-postcard-fields {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .9rem;
    align-items: center;
    width: 100%;
}

#cart-view .checkout-cart-postcard .checkout-postcard-empty {
    min-height: 0;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    font-size: .9rem;
    font-weight: 650;
    white-space: nowrap;
}

#cart-view .checkout-cart-postcard .checkout-postcard-text textarea {
    width: 100% !important;
    min-height: 54px;
    height: 54px;
    border: 1px solid #005bff00;
    padding-top: .62rem;
    padding-bottom: .62rem;
}

#cart-view .checkout-recipient-card:hover {
    border-color: rgba(255, 47, 114, .42);
    background: #fff9fc;
}

#cart-view .checkout-recipient-card.is-active {
    border-color: var(--checkout-pink);
    background: #fff6fa;
    color: var(--checkout-pink);
}

#cart-view .checkout-recipient-card.is-recipient-me.is-active {
    border-color: var(--checkout-blue);
    background: #f4f8ff;
    color: var(--checkout-blue);
}

#cart-view .checkout-recipient-toggle label {
    margin: 0;
    color: var(--checkout-ink);
    font-size: .92rem;
    font-weight: 600;
    line-height: 1.25;
}

#cart-view .checkout-extra-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    margin-top: .65rem;
}

#cart-view .checkout-extra-options:empty {
    display: none;
}

#cart-view .checkout-user-field-dopolnitelno {
    grid-column: 1 / -1;
    display: block !important;
    padding: .88rem;
    border: 1px solid #dfe7f2;
    border-radius: 14px;
    background: #fff;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-user-label {
    display: block;
    margin: 0 0 .74rem;
    color: var(--checkout-ink);
    font-size: .92rem;
    font-weight: 700;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-user-control,
#cart-view .checkout-user-field-dopolnitelno fieldset,
#cart-view .checkout-user-field-dopolnitelno .checkout-addon-options {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .68rem;
    margin: 0;
    padding: 0;
    border: 0;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-user-control {
    flex: none !important;
    line-height: 1.2;
}

#cart-view .checkout-user-field-dopolnitelno.is-choice-field {
    align-items: stretch;
}

#cart-view .checkout-user-field-dopolnitelno > .checkout-user-control {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .68rem !important;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-options {
    width: 100% !important;
    display: contents !important;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-option {
    width: 100% !important;
    max-width: none !important;
}

#cart-view .checkout-user-field-dopolnitelno legend,
#cart-view .checkout-user-field-dopolnitelno .control-label {
    display: none;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-option {
    width: 100%;
    min-width: 0;
    min-height: 48px;
    display: flex;
    align-items: center;
    gap: .48rem;
    margin: 0;
    padding: .64rem .74rem;
    border: 1px solid #e3eaf4;
    border-radius: 12px;
    background: #f9fbff;
    color: var(--checkout-ink);
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-option input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-check {
    width: 1rem;
    height: 1rem;
    margin: 0;
    flex: 0 0 auto;
    border: 1px solid #c8d2e0;
    border-radius: 4px;
    background: #fff;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-text {
    min-width: 0;
    overflow-wrap: normal;
    word-break: normal;
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-option:has(input:checked) .checkout-addon-check {
    background-color: var(--checkout-pink);
    border-color: var(--checkout-pink);
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-option:has(input:checked) .checkout-addon-check::after {
    content: "";
    display: block;
    width: .32rem;
    height: .55rem;
    margin: .12rem auto 0;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
}

#cart-view .checkout-user-field-dopolnitelno .checkout-addon-option:has(input:checked) {
    border-color: var(--checkout-pink);
    background: #fff6fa;
    color: #d92363;
}

#cart-view .is-choice-field {
    display: flex;
    align-items: center;
    gap: .5rem;
    min-height: 42px;
    padding: .55rem .65rem;
    border: 1px solid #e3e9f2;
    border-radius: 12px;
    background: #fff;
}

#cart-view .is-choice-field .checkout-user-label {
    order: 2;
    margin: 0;
    font-size: .86rem;
    font-weight: 600;
    color: var(--checkout-ink);
}

#cart-view .is-choice-field .checkout-user-control {
    order: 1;
    flex: 0 0 auto;
    line-height: 1;
}

#cart-view .is-native-delivery-field-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
}

#cart-view .checkout-delivery-slot {
    position: relative;
    grid-column: 1 / -1;
}

#cart-view .checkout-delivery-slot-button {
    width: 100%;
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    padding: .65rem .8rem .65rem .9rem;
    border: 1.5px solid #ff6f9b;
    border-radius: 14px;
    background: #fff;
    color: var(--checkout-ink);
    font-family: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease;
}

#cart-view .checkout-delivery-slot-button:hover,
#cart-view .checkout-delivery-slot.is-open .checkout-delivery-slot-button {
    border-color: var(--checkout-blue);
    background: #f8fbff;
}

#cart-view .checkout-delivery-slot-button small,
#cart-view .checkout-delivery-slot-button strong {
    display: block;
}

#cart-view .checkout-delivery-slot-button small {
    margin-bottom: .16rem;
    color: #526071;
    font-size: .7rem;
    font-weight: 800;
    line-height: 1;
}

#cart-view .checkout-delivery-slot-button strong {
    color: #0b1324;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.2;
}

#cart-view .checkout-delivery-slot-button svg {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    fill: none;
    stroke: #ff6f8f;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#cart-view .checkout-delivery-slot-popover {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 10050;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .14);
}

#cart-view .checkout-delivery-slot.is-open .checkout-delivery-slot-popover,
.checkout-delivery-slot-popover.is-open {
    display: flex;
}

.checkout-delivery-slot-modal-open {
    overflow: hidden;
}

body > .checkout-delivery-slot-popover {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 10050;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .14);
}

body > .checkout-delivery-slot-popover.is-open {
    display: flex;
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-panel {
    position: relative;
    z-index: 10051;
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-panel {
    width: min(780px, 100%);
    display: grid;
    grid-template-columns: minmax(190px, .8fr) minmax(280px, 1fr);
    gap: 2.25rem;
    padding: 2.15rem 2.55rem 1.9rem;
    border: 1px solid #edf1f7;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 46px rgba(15, 23, 42, .12);
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #1f2937;
    font-size: 1.65rem;
    line-height: 1;
    cursor: pointer;
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-close:hover {
    background: #f3f6fb;
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-col h4 {
    margin: 0 0 1rem;
    color: #667085;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.2;
}

body > .checkout-delivery-slot-popover .checkout-delivery-rate-note {
    display: grid;
    gap: .22rem;
    margin: -.35rem 0 .85rem;
    padding: .58rem .68rem;
    border: 1px solid #e7edf6;
    border-radius: 12px;
    background: #f8fbff;
    color: #5b6677;
    font-size: .78rem;
    font-weight: 700;
    line-height: 1.25;
}

body > .checkout-delivery-slot-popover .checkout-delivery-rate-note b {
    color: var(--checkout-blue);
    font-weight: 900;
}

body > .checkout-delivery-slot-popover .checkout-delivery-rate-note span {
    color: #ff2f72;
}

body > .checkout-delivery-slot-popover .checkout-delivery-date-list,
body > .checkout-delivery-slot-popover .checkout-delivery-time-list {
    max-height: 245px;
    overflow: auto;
    padding-right: .6rem;
    scrollbar-width: thin;
    scrollbar-color: #b9c2cf transparent;
}

body > .checkout-delivery-slot-popover .checkout-delivery-date-list button,
body > .checkout-delivery-slot-popover .checkout-delivery-time-list button {
    width: 100%;
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: .62rem;
    padding: .38rem .1rem;
    border: 0;
    border-bottom: 1px solid #edf1f6;
    background: transparent;
    color: #2b3445;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: color .16s ease, background .16s ease;
}

body > .checkout-delivery-slot-popover .checkout-delivery-time-list button {
    justify-content: space-between;
}

body > .checkout-delivery-slot-popover .checkout-delivery-time-list button span {
    flex: 1 1 auto;
}

body > .checkout-delivery-slot-popover .checkout-delivery-time-list button small {
    flex: 0 0 auto;
    color: #697586;
    font-size: .72rem;
    font-weight: 700;
}

body > .checkout-delivery-slot-popover .checkout-delivery-time-list button.is-night-slot small {
    color: #ff2f72;
}

body > .checkout-delivery-slot-popover .checkout-delivery-date-list button:hover,
body > .checkout-delivery-slot-popover .checkout-delivery-time-list button:hover {
    color: var(--checkout-blue);
    background: #f8fbff;
}

body > .checkout-delivery-slot-popover .checkout-delivery-date-list button::before,
body > .checkout-delivery-slot-popover .checkout-delivery-time-list button::before {
    content: "";
    width: 13px;
    height: 7px;
    flex: 0 0 13px;
    margin-left: .08rem;
    border-left: 2px solid transparent;
    border-bottom: 2px solid transparent;
    transform: rotate(-45deg);
}

body > .checkout-delivery-slot-popover .checkout-delivery-date-list button.is-active,
body > .checkout-delivery-slot-popover .checkout-delivery-time-list button.is-active {
    color: #6aa8ff;
    font-weight: 800;
}

body > .checkout-delivery-slot-popover .checkout-delivery-date-list button.is-active::before,
body > .checkout-delivery-slot-popover .checkout-delivery-time-list button.is-active::before {
    border-color: #6aa8ff;
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-apply {
    min-width: 190px;
    min-height: 48px;
    display: block;
    margin: 1.35rem 0 0 auto;
    border: 0;
    border-radius: 999px;
    background: #efd2da;
    color: #5d2436;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 800;
    cursor: pointer;
    transition: background .18s ease, color .18s ease;
}

body > .checkout-delivery-slot-popover .checkout-delivery-slot-apply:hover {
    background: #ffcfe0;
}

#cart-view .checkout-delivery-slot-panel {
    position: relative;
    z-index: 10051;
    width: min(780px, 100%);
    display: grid;
    grid-template-columns: minmax(190px, .8fr) minmax(280px, 1fr);
    gap: 2.25rem;
    padding: 2.15rem 2.55rem 1.9rem;
    border: 1px solid #edf1f7;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 46px rgba(15, 23, 42, .12);
}

#cart-view .checkout-delivery-slot-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #1f2937;
    font-size: 1.65rem;
    line-height: 1;
    cursor: pointer;
}

#cart-view .checkout-delivery-slot-close:hover {
    background: #f3f6fb;
}

#cart-view .checkout-delivery-slot-col h4 {
    margin: 0 0 1rem;
    color: #667085;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.2;
}

#cart-view .checkout-delivery-rate-note {
    display: grid;
    gap: .22rem;
    margin: -.35rem 0 .85rem;
    padding: .58rem .68rem;
    border: 1px solid #e7edf6;
    border-radius: 12px;
    background: #f8fbff;
    color: #5b6677;
    font-size: .78rem;
    font-weight: 700;
    line-height: 1.25;
}

#cart-view .checkout-delivery-rate-note b {
    color: var(--checkout-blue);
    font-weight: 900;
}

#cart-view .checkout-delivery-rate-note span {
    color: #ff2f72;
}

#cart-view .checkout-delivery-date-list,
#cart-view .checkout-delivery-time-list {
    max-height: 245px;
    overflow: auto;
    padding-right: .6rem;
    scrollbar-width: thin;
    scrollbar-color: #b9c2cf transparent;
}

#cart-view .checkout-delivery-date-list button,
#cart-view .checkout-delivery-time-list button {
    width: 100%;
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: .62rem;
    padding: .38rem .1rem;
    border: 0;
    border-bottom: 1px solid #edf1f6;
    background: transparent;
    color: #2b3445;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: color .16s ease, background .16s ease;
}

#cart-view .checkout-delivery-time-list button {
    justify-content: space-between;
}

#cart-view .checkout-delivery-time-list button span {
    flex: 1 1 auto;
}

#cart-view .checkout-delivery-time-list button small {
    flex: 0 0 auto;
    color: #697586;
    font-size: .72rem;
    font-weight: 700;
}

#cart-view .checkout-delivery-time-list button.is-night-slot small {
    color: #ff2f72;
}

#cart-view .checkout-delivery-date-list button:hover,
#cart-view .checkout-delivery-time-list button:hover {
    color: var(--checkout-blue);
    background: #f8fbff;
}

#cart-view .checkout-delivery-date-list button::before,
#cart-view .checkout-delivery-time-list button::before {
    content: "";
    width: 13px;
    height: 7px;
    flex: 0 0 13px;
    margin-left: .08rem;
    border-left: 2px solid transparent;
    border-bottom: 2px solid transparent;
    transform: rotate(-45deg);
}

#cart-view .checkout-delivery-date-list button.is-active,
#cart-view .checkout-delivery-time-list button.is-active {
    color: #6aa8ff;
    font-weight: 800;
}

#cart-view .checkout-delivery-date-list button.is-active::before,
#cart-view .checkout-delivery-time-list button.is-active::before {
    content: "✓";
}

#cart-view .checkout-delivery-slot-apply {
    min-width: 190px;
    min-height: 48px;
    display: block;
    margin: 1.35rem 0 0 auto;
    border: 0;
    border-radius: 999px;
    background: #efd2da;
    color: #5d2436;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 750;
}

#cart-view .checkout-delivery-slot-apply:hover {
    background: #ffcfe0;
}

#cart-view .checkout-delivery-date-list button.is-active::before,
#cart-view .checkout-delivery-time-list button.is-active::before {
    content: "";
    border-color: #6aa8ff;
}

#cart-view .checkout-delivery-slot-apply {
    font-weight: 800;
    cursor: pointer;
    transition: background .18s ease, color .18s ease;
}

#cart-view .checkout-night-delivery-badge {
    display: inline-flex;
    align-items: center;
    margin-left: .35rem;
    padding: .12rem .42rem;
    border-radius: 999px;
    background: #fff0f6;
    color: #ff2f72;
    font-size: .72rem;
    font-weight: 800;
    vertical-align: middle;
}

#cart-view .checkout-same-address input {
    flex: 0 0 auto;
}

#cart-view .checkout-same-address label {
    margin: 0;
    color: var(--checkout-ink);
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.25;
}

#cart-view .cart-fields-section {
    margin: .95rem 0 0;
    padding: .95rem;
    border: 1px solid #e3e9f2;
    border-radius: 16px;
    background: #fbfcff;
}

#cart-view .cart-fields-section fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}

#cart-view .cart-fields-section legend {
    margin: 0 0 .6rem;
    color: var(--checkout-ink);
    font-size: 1.14rem;
    font-weight: 700;
    line-height: 1.2;
}

#cart-view .cart-fields-section .control-group {
    margin-bottom: .78rem;
}

#cart-view .cart-fields-section .control-label {
    margin-bottom: .28rem;
}

#cart-view .cart-fields-section .form-label {
    margin: 0;
    color: #526071;
    font-size: .9rem;
    font-weight: 650;
    line-height: 1.25;
}

#cart-view .cart-fields-section .cart-field-tos,
#cart-view .cart-fields-section .cart-field-agreed {
    margin: .85rem 0 0;
    padding: .78rem;
    border: 1px solid #ffd3e1;
    border-radius: 14px;
    background: #fff7fb;
}

#cart-view .cart-fields-section .cart-field-tos .controls,
#cart-view .cart-fields-section .cart-field-agreed .controls {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    color: #334155;
    font-size: .98rem;
    font-weight: 500;
    line-height: 1.38;
}

#cart-view .checkout-terms-check {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    margin: .1rem 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    appearance: none;
}

#cart-view .checkout-terms-native,
#cart-view .checkout-terms-check input[type="checkbox"] {
    position: absolute;
    width: 1px !important;
    height: 1px !important;
    opacity: 0;
    pointer-events: none;
}

#cart-view .checkout-terms-check span,
#cart-view .cart-fields-section .cart-field-tos input[type="checkbox"],
#cart-view .cart-fields-section .cart-field-agreed input[type="checkbox"] {
    width: 1.15rem;
    height: 1.15rem;
    flex: 0 0 1.15rem;
    margin: 0;
    border: 1px solid #cbd5e1;
    border-radius: 5px;
    background: #fff;
}

#cart-view .checkout-terms-check input[type="checkbox"]:checked + span,
#cart-view .cart-field-tos.is-terms-checked .checkout-terms-check span,
#cart-view .cart-field-agreed.is-terms-checked .checkout-terms-check span,
#cart-view .cart-fields-section .cart-field-tos input[type="checkbox"]:checked,
#cart-view .cart-fields-section .cart-field-agreed input[type="checkbox"]:checked {
    background-color: var(--checkout-pink);
    border-color: var(--checkout-pink);
}

#cart-view .checkout-terms-check input[type="checkbox"]:checked + span::after,
#cart-view .cart-field-tos.is-terms-checked .checkout-terms-check span::after,
#cart-view .cart-field-agreed.is-terms-checked .checkout-terms-check span::after {
    content: "";
    display: block;
    width: .34rem;
    height: .58rem;
    margin: .12rem auto 0;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
}

#cart-view .checkout-terms-copy {
    min-width: 0;
}

#cart-view .checkout-terms-link,
#cart-view .cart-fields-section .cart-field-tos a,
#cart-view .cart-fields-section .cart-field-agreed a {
    display: inline;
    padding: 0;
    border: 0;
    background: transparent;
    color: #d92363;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
}

.checkout-terms-modal {
    position: fixed;
    inset: 0;
    z-index: 120000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .28);
}

.checkout-terms-modal.is-open {
    display: flex;
}

.checkout-terms-modal-open {
    overflow: hidden;
}

.checkout-terms-modal__dialog {
    position: relative;
    z-index: 120001;
    width: min(720px, 100%);
    max-height: min(720px, calc(100vh - 2rem));
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    border: 1px solid #edf1f7;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .14);
    overflow: hidden;
}

.checkout-terms-modal__header {
    padding: 1.1rem 1.25rem .9rem;
    border-bottom: 1px solid #eef2f7;
}

.checkout-terms-modal__header h3 {
    margin: 0;
    color: #172033;
    font-size: 1.28rem;
    font-weight: 800;
    line-height: 1.25;
}

.checkout-terms-modal__close {
    position: absolute;
    top: .75rem;
    right: .75rem;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 50%;
    background: #f3f6fb;
    color: #172033;
    font-size: 1.55rem;
    line-height: 1;
    cursor: pointer;
}

.checkout-terms-modal__body {
    min-height: 180px;
    padding: 1.15rem 1.25rem;
    overflow: auto;
    color: #334155;
    font-size: 1rem;
    line-height: 1.58;
}

.checkout-terms-modal__body h1,
.checkout-terms-modal__body h2,
.checkout-terms-modal__body h3 {
    color: #172033;
    line-height: 1.25;
}

.checkout-terms-modal__footer {
    padding: .95rem 1.25rem 1.15rem;
    border-top: 1px solid #eef2f7;
    text-align: right;
}

.checkout-terms-modal__button {
    min-height: 46px;
    padding: 0 1.35rem;
    border: 0;
    border-radius: 14px;
    background: #005bff;
    color: #fff;
    font-weight: 800;
    cursor: pointer;
}

#cart-view .cart-fields-section .asterisk,
#cart-view .checkout-user-label .asterisk {
    color: var(--checkout-pink);
}

#cart-view .cart-order-total,
#cart-view .cart-order-payment-total {
    padding: .9rem 0 0;
    border-top: 1px solid var(--checkout-line);
}

#cart-view .cart-order-total .PricebillTotal {
    color: var(--checkout-pink);
    font-size: 1.35rem;
    font-weight: 900;
}

#cart-view #checkoutFormSubmit {
    min-height: 54px;
    border-radius: 16px;
    border-color: #005bff !important;
    background: #005bff !important;
    color: #fff !important;
    font-weight: 900;
    text-transform: none;
    box-shadow: none;
}

#cart-view #checkoutFormSubmit:hover,
#cart-view #checkoutFormSubmit:focus,
#cart-view #checkoutFormSubmit:active {
    border-color: #005bff !important;
    background: #005bff !important;
    color: #fff !important;
    filter: brightness(.96);
}

.checkout-terms-modal,
.checkout-terms-modal * {
    box-sizing: border-box;
}

.checkout-terms-modal a:not(.btn) {
    color: var(--checkout-blue, #005bff);
}

#cart-view .cart-summery {
    padding: 1.25rem !important;
    border-radius: 18px;
}

#cart-view .cart-summery .checkout-block-heading {
    display: grid;
    gap: .2rem;
    margin-bottom: .9rem;
    padding-bottom: .82rem;
    border-bottom: 1px solid #edf1f7;
}

#cart-view .cart-summery .checkout-block-heading h2 {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin: 0;
    color: #172033;
    font-size: 1.32rem;
    font-weight: 850;
    line-height: 1.2;
}

#cart-view .cart-summery .checkout-block-heading h2::before {
    content: "\f007";
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid #dce7f6;
    border-radius: 10px;
    background: #f7fbff;
    color: var(--checkout-blue);
    font-family: "Font Awesome 5 Free";
    font-size: .92rem;
    font-weight: 900;
}

#cart-view .cart-summery .checkout-block-heading p {
    color: #687486;
    font-size: .95rem;
    line-height: 1.35;
}

#cart-view .cart-summery .checkout-user-fields {
    gap: .72rem;
}

#cart-view .cart-summery .checkout-user-section,
#cart-view .cart-summery .cart-fields-section {
    padding: .86rem;
    border: 1px solid #dfe7f2;
    border-radius: 14px;
    background: #fff;
}

#cart-view .checkout-user-section-buyer,
#cart-view .checkout-user-section-delivery,
#cart-view .checkout-user-section-recipient {
    border-top: 1px solid #dfe7f2;
}

#cart-view .cart-summery .checkout-user-section-head {
    align-items: center;
    justify-content: flex-start;
    gap: .52rem;
    margin-bottom: .7rem;
}

#cart-view .cart-summery .checkout-user-section-head h6,
#cart-view .cart-summery .cart-fields-section legend {
    display: flex;
    align-items: center;
    gap: .48rem;
    margin: 0;
    color: #172033;
    font-size: 1.05rem;
    font-weight: 780;
    line-height: 1.2;
}

#cart-view .cart-summery .checkout-user-section-head h6::before,
#cart-view .cart-summery .cart-fields-section legend::before {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid #dfe7f2;
    border-radius: 9px;
    background: #f7fbff;
    color: var(--checkout-blue);
    font-family: "Font Awesome 5 Free";
    font-size: .78rem;
    font-weight: 900;
}

#cart-view .cart-summery .checkout-user-section-buyer .checkout-user-section-head h6::before {
    content: "\f2bb";
}

#cart-view .cart-summery .checkout-user-section-recipient .checkout-user-section-head h6::before {
    content: "\f06b";
}

#cart-view .cart-summery .checkout-user-section-delivery .checkout-user-section-head h6::before {
    content: "\f0d1";
}

#cart-view .cart-summery .checkout-user-section-postcard {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: .72rem;
}

#cart-view .cart-summery .checkout-postcard-visual {
    width: 48px;
    height: 48px;
    border-radius: 14px;
}

#cart-view .cart-summery .checkout-postcard-visual svg {
    width: 42px;
    height: 42px;
}

#cart-view .cart-summery .checkout-postcard-head {
    margin-bottom: .5rem;
}

#cart-view .cart-summery .checkout-postcard-head h6 {
    font-size: 1.05rem;
    font-weight: 780;
}

#cart-view .cart-summery .checkout-postcard-head span {
    padding: .22rem .5rem;
    border: 1px solid #e5ebf4;
    border-radius: 999px;
    background: #f8fafd;
    color: #667388;
    font-size: .68rem;
    font-weight: 750;
    line-height: 1;
    text-transform: uppercase;
}

#cart-view .cart-summery .checkout-postcard-text textarea {
    min-height: 86px;
}

#cart-view .cart-summery .cart-fields-section legend::before {
    content: "\f044";
}

#cart-view .cart-summery .checkout-user-section-head span {
    margin-left: auto;
    padding: .22rem .5rem;
    border: 1px solid #e5ebf4;
    border-radius: 999px;
    background: #f8fafd;
    color: #667388;
    font-size: .68rem;
    font-weight: 750;
    line-height: 1;
    text-transform: uppercase;
}

#cart-view .cart-summery .checkout-user-label,
#cart-view .cart-summery .cart-fields-section .form-label {
    color: #566277;
    font-size: .86rem;
    font-weight: 650;
}

#cart-view .cart-summery .checkout-user-control input:not([type="checkbox"]):not([type="radio"]),
#cart-view .cart-summery .checkout-user-control select,
#cart-view .cart-summery .checkout-user-control textarea,
#cart-view .cart-summery .cart-fields-section input:not([type="checkbox"]):not([type="radio"]),
#cart-view .cart-summery .cart-fields-section select,
#cart-view .cart-summery .cart-fields-section textarea {
    min-height: 46px;
    border-color: #dbe4f0;
    border-radius: 12px;
    background: #fff;
    font-size: 1rem;
}

#cart-view .cart-summery .checkout-recipient-card {
    min-height: 58px;
    padding: .68rem .78rem;
    border-color: #dfe7f2;
    background: #fff;
}

#cart-view .cart-summery .checkout-recipient-card strong {
    font-size: 1rem;
    font-weight: 750;
}

#cart-view .cart-summery .checkout-recipient-card small {
    color: #687486;
    font-size: .82rem;
}

#cart-view .cart-summery .checkout-recipient-card.is-active,
#cart-view .cart-summery .checkout-recipient-card.is-recipient-me.is-active {
    border-color: var(--checkout-blue);
    background: #f5f9ff;
    color: var(--checkout-blue);
}

#cart-view .cart-summery .checkout-delivery-slot-button {
    min-height: 56px;
    border: 1px solid #dfe7f2;
    border-radius: 13px;
    background: #fff;
}

#cart-view .cart-summery .checkout-delivery-slot-button:hover,
#cart-view .cart-summery .checkout-delivery-slot.is-open .checkout-delivery-slot-button {
    border-color: var(--checkout-blue);
    background: #f7fbff;
}

#cart-view .cart-summery .checkout-delivery-slot-button svg {
    color: var(--checkout-blue);
    stroke: currentColor;
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno {
    padding: .88rem;
    border-color: #dfe7f2;
    border-radius: 13px;
    background: #fbfcff;
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-user-label {
    display: flex;
    align-items: center;
    gap: .45rem;
    color: #172033;
    font-size: .98rem;
    font-weight: 780;
    margin-bottom: .76rem;
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-user-label::before {
    content: "\f067";
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid #dfe7f2;
    border-radius: 8px;
    background: #fff;
    color: var(--checkout-blue);
    font-family: "Font Awesome 5 Free";
    font-size: .72rem;
    font-weight: 900;
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-addon-option {
    min-height: 50px;
    border-color: #dfe7f2;
    background: #fff;
    font-size: .9rem;
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-addon-option:has(input:checked) {
    border-color: var(--checkout-blue);
    background: #f5f9ff;
    color: var(--checkout-blue);
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-addon-option:has(input:checked) .checkout-addon-check {
    border-color: var(--checkout-blue);
    background: var(--checkout-blue);
}

#cart-view .cart-summery .cart-fields-section {
    display: grid;
    gap: .75rem;
}

#cart-view .cart-summery .cart-fields-section legend {
    float: none;
    width: auto;
    padding: 0;
    margin-bottom: .5rem;
    border: 0;
}

#cart-view .cart-summery .cart-fields-section .cart-field-customer_note textarea {
    min-height: 65px;
}

#cart-view .cart-summery .cart-field-tos,
#cart-view .cart-summery .cart-field-agreed {
    padding: .74rem .82rem;
    border: 1px solid #dfe7f2;
    border-radius: 13px;
    background: #fbfcff;
}

#cart-view .cart-summery .cart-fields-section .cart-field-tos .controls,
#cart-view .cart-summery .cart-fields-section .cart-field-agreed .controls {
    align-items: center;
    gap: .62rem;
    color: #263246;
    font-size: .94rem;
    font-weight: 600;
    line-height: 1.32;
}

#cart-view .cart-summery .checkout-terms-check {
    margin: 0;
}

#cart-view .cart-summery .checkout-terms-check span,
#cart-view .cart-summery .cart-fields-section .cart-field-tos input[type="checkbox"],
#cart-view .cart-summery .cart-fields-section .cart-field-agreed input[type="checkbox"] {
    width: 1.25rem;
    height: 1.25rem;
    flex-basis: 1.25rem;
    border: 2px solid #cbd6e5;
    border-radius: 7px;
}

#cart-view .cart-summery .checkout-terms-check input[type="checkbox"]:checked + span,
#cart-view .cart-summery .cart-field-tos.is-terms-checked .checkout-terms-check span,
#cart-view .cart-summery .cart-field-agreed.is-terms-checked .checkout-terms-check span,
#cart-view .cart-summery .cart-fields-section .cart-field-tos input[type="checkbox"]:checked,
#cart-view .cart-summery .cart-fields-section .cart-field-agreed input[type="checkbox"]:checked {
    border-color: var(--checkout-blue);
    background-color: var(--checkout-blue);
}

#cart-view .cart-summery .checkout-terms-link,
#cart-view .cart-summery .cart-fields-section .cart-field-tos a,
#cart-view .cart-summery .cart-fields-section .cart-field-agreed a {
    color: var(--checkout-blue);
    font-weight: 750;
}

#cart-view .cart-summery > h3 {
    margin: 1rem 0 .55rem !important;
    padding-top: .9rem;
    border-top: 1px solid #edf1f7;
    color: #172033;
    font-size: 1.1rem;
    font-weight: 850;
}

#cart-view .cart-summery .cart-order-total,
#cart-view .cart-summery .cart-order-payment-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .9rem !important;
    padding: .86rem 0 0;
    border-top: 1px solid #edf1f7;
    color: #172033;
    font-size: 1.08rem;
    font-weight: 800;
}

#cart-view .cart-summery .cart-order-total .PricebillTotal {
    color: var(--checkout-pink);
    font-size: 1.25rem;
    font-weight: 900;
}

#cart-view .cart-summery #checkoutFormSubmit {
    min-height: 58px;
    border-radius: 15px;
    border-color: #005bff !important;
    background: #005bff !important;
    color: #fff !important;
    font-size: 1.04rem;
    font-weight: 850;
}

@media (max-width: 767.98px) {
    #cart-view .cart-summery {
        padding: .9rem !important;
        border-radius: 16px;
    }

    #cart-view .cart-summery .checkout-block-heading {
        margin-bottom: .72rem;
        padding-bottom: .68rem;
    }

    #cart-view .cart-summery .checkout-block-heading h2 {
        gap: .45rem;
        font-size: 1.18rem;
    }

    #cart-view .cart-summery .checkout-block-heading h2::before {
        width: 30px;
        height: 30px;
        border-radius: 9px;
        font-size: .8rem;
    }

    #cart-view .cart-summery .checkout-user-section,
    #cart-view .cart-summery .cart-fields-section {
        padding: .72rem;
        border-radius: 13px;
    }

    #cart-view .cart-summery .checkout-user-section-head {
        align-items: flex-start;
        gap: .45rem;
    }

    #cart-view .cart-summery .checkout-user-section-head h6,
    #cart-view .cart-summery .cart-fields-section legend {
        font-size: .98rem;
    }

    #cart-view .cart-summery .checkout-user-section-head h6::before,
    #cart-view .cart-summery .cart-fields-section legend::before {
        width: 28px;
        height: 28px;
        border-radius: 8px;
        font-size: .72rem;
    }

    #cart-view .cart-summery .checkout-user-section-head span {
        padding: .2rem .42rem;
        font-size: .62rem;
        line-height: 1.1;
    }

    #cart-view .cart-summery .checkout-recipient-card {
        min-height: 56px;
        padding: .62rem .68rem;
    }

    #cart-view .cart-summery .checkout-recipient-card strong {
        font-size: .96rem;
    }

    #cart-view .cart-summery .checkout-recipient-card small {
        font-size: .78rem;
    }

    #cart-view .cart-summery .checkout-user-field-dopolnitelno {
        padding: .64rem;
    }

    #cart-view .cart-summery .checkout-user-field-dopolnitelno > .checkout-user-control {
        gap: .45rem !important;
    }

    #cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-addon-option {
        min-height: 42px;
        padding: .48rem .52rem;
        font-size: .84rem;
    }

    #cart-view .cart-summery .cart-field-tos,
    #cart-view .cart-summery .cart-field-agreed {
        padding: .66rem .7rem;
    }

    #cart-view .cart-summery > h3 {
        margin-top: .82rem !important;
        font-size: 1.04rem;
    }
}

#cart-view .checkout-methods-block > .checkout-block-heading h2::before,
#cart-view .cart-summery .checkout-block-heading h2::before,
#cart-view .cart-summery .checkout-user-section-head h6::before,
#cart-view .cart-summery .cart-fields-section legend::before,
#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-user-label::before {
    content: "" !important;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17px 17px;
    font-family: inherit;
}

#cart-view .checkout-methods-block > .checkout-block-heading h2::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 18H4.5A2.5 2.5 0 0 1 2 15.5V7h11v11H9' stroke='%23005BFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13 10h4l3 3v5h-2' stroke='%23005BFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='7.5' cy='18' r='2' stroke='%23005BFF' stroke-width='2'/%3E%3Ccircle cx='16' cy='18' r='2' stroke='%23005BFF' stroke-width='2'/%3E%3C/svg%3E");
}

#cart-view .cart-summery .checkout-block-heading h2::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 7a4 4 0 1 0 8 0a4 4 0 0 0-8 0Z' stroke='%23005BFF' stroke-width='2'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0' stroke='%23005BFF' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

#cart-view .cart-summery .checkout-user-section-buyer .checkout-user-section-head h6::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='5' width='16' height='14' rx='3' stroke='%23005BFF' stroke-width='2'/%3E%3Cpath d='M8 10h8M8 14h5' stroke='%23005BFF' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

#cart-view .cart-summery .checkout-user-section-recipient .checkout-user-section-head h6::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 8h-3.5M4 8h16v12H4V8Z' stroke='%23005BFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8 8c-1.2-1.6-.5-4 1.5-4C11 4 12 6 12 8c0-2 1-4 2.5-4C16.5 4 17.2 6.4 16 8' stroke='%23005BFF' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M12 8v12' stroke='%23005BFF' stroke-width='2'/%3E%3C/svg%3E");
}

#cart-view .cart-summery .checkout-user-section-delivery .checkout-user-section-head h6::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 18H4.5A2.5 2.5 0 0 1 2 15.5V7h11v11H9' stroke='%23005BFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13 10h4l3 3v5h-2' stroke='%23005BFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='7.5' cy='18' r='2' stroke='%23005BFF' stroke-width='2'/%3E%3Ccircle cx='16' cy='18' r='2' stroke='%23005BFF' stroke-width='2'/%3E%3C/svg%3E");
}

#cart-view .cart-summery .cart-fields-section legend::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 5h14v14H5V5Z' stroke='%23005BFF' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M8 9h8M8 13h5' stroke='%23005BFF' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

#cart-view .cart-summery .checkout-user-field-dopolnitelno .checkout-user-label::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 5v14M5 12h14' stroke='%23005BFF' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
}

#cart-view .checkout-field-invalid input:not([type="checkbox"]):not([type="radio"]),
#cart-view .checkout-field-invalid select,
#cart-view .checkout-field-invalid textarea {
    border-color: var(--checkout-pink) !important;
    background: #fff8fb;
}

#cart-view .checkout-field-invalid .checkout-terms-check span,
#cart-view .checkout-field-invalid input[type="checkbox"] {
    border-color: var(--checkout-pink) !important;
}

#cart-view .checkout-field-invalid.checkout-method-panel,
#cart-view .checkout-field-invalid.cart-fields-section,
#cart-view .checkout-field-invalid.control-group,
#cart-view .checkout-field-invalid.checkout-user-field {
    border-color: #ff9abd !important;
    background: #fff8fb;
}

#cart-view .checkout-field-invalid.checkout-method-panel {
    border-color: #ff2f7d !important;
    background:
        linear-gradient(90deg, rgba(255, 47, 125, .08) 0, rgba(255, 47, 125, 0) 48%),
        #fff;
}

#cart-view .checkout-field-invalid.checkout-method-panel::before {
    height: 4px;
    background: #ff2f7d !important;
}

#cart-view .checkout-field-invalid.checkout-method-panel .checkout-method-head {
    margin-bottom: .5rem;
}

#cart-view .checkout-field-error {
    margin-top: .34rem;
    color: #d92363;
    font-size: .92rem;
    font-weight: 600;
    line-height: 1.25;
}

#cart-view .checkout-method-error {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    margin: 0 0 .72rem;
    padding: .5rem .68rem;
    border: 1px solid #ffd0df;
    border-radius: 12px;
    background: #fff4f8;
    color: #c91555;
    font-size: .9rem;
    font-weight: 750;
}

#cart-view .checkout-form-alert {
    margin: .25rem 0 .85rem;
    padding: .72rem .82rem;
    border: 1px solid #ffd3e1;
    border-radius: 14px;
    background: #fff7fb;
    color: #d92363;
    font-size: .94rem;
    font-weight: 700;
    line-height: 1.35;
}

@media (max-width: 991.98px) {
    #cart-view .cart-summery {
        position: static;
        margin-top: 1rem;
    }
}

@media (max-width: 767.98px) {
    #cart-view form#checkoutForm > .row {
        --gutter-y: .75rem;
    }

    #cart-view .checkout-main-flow {
        margin-top: .65rem;
        padding: .75rem;
        border-radius: 14px;
    }

    #cart-view .checkout-block-heading {
        margin-bottom: .78rem;
    }

    #cart-view .checkout-block-heading h2 {
        font-size: 1.32rem;
    }

    #cart-view .checkout-block-heading p {
        font-size: .94rem;
    }

    #cart-view .checkout-user-fields {
        gap: .62rem;
        margin-bottom: .65rem;
    }

    #cart-view .checkout-user-section,
    #cart-view .cart-fields-section {
        padding: .72rem;
        border-radius: 13px;
    }

    #cart-view .checkout-user-section-head {
        margin-bottom: .55rem;
    }

    #cart-view .checkout-user-section-head h6,
    #cart-view .cart-fields-section legend {
        font-size: 1.04rem;
    }

    #cart-view .checkout-user-grid {
        gap: .52rem;
    }

    #cart-view .checkout-user-label,
    #cart-view .cart-fields-section .form-label {
        margin-bottom: .2rem;
        font-size: .84rem;
    }

    #cart-view .cart-summery .checkout-block-heading h2 {
        font-size: 1.18rem;
    }

    #cart-view .cart-summery .checkout-block-heading p {
        font-size: .94rem;
    }

    #cart-view .cart-summery .checkout-user-section-head h6,
    #cart-view .cart-summery .cart-fields-section legend {
        font-size: 1rem;
    }

    #cart-view .cart-summery .checkout-user-label,
    #cart-view .cart-summery .cart-fields-section .form-label {
        font-size: .82rem;
    }

    #cart-view .cart-summery .checkout-user-control input:not([type="checkbox"]):not([type="radio"]),
    #cart-view .cart-summery .checkout-user-control select,
    #cart-view .cart-summery .checkout-user-control textarea,
    #cart-view .cart-summery .cart-fields-section input:not([type="checkbox"]):not([type="radio"]),
    #cart-view .cart-summery .cart-fields-section select,
    #cart-view .cart-summery .cart-fields-section textarea {
        min-height: 44px;
        font-size: .94rem;
    }

    #cart-view .checkout-user-section-postcard,
    #cart-view .cart-summery .checkout-user-section-postcard {
        grid-template-columns: minmax(0, 1fr) 82px;
        gap: .58rem .7rem;
        align-items: start;
    }

    #cart-view .checkout-postcard-visual,
    #cart-view .cart-summery .checkout-postcard-visual {
        display: grid;
        grid-column: 2;
        grid-row: 1 / span 2;
        justify-self: end;
        align-self: center;
        width: 72px;
        height: 72px;
        border-radius: 17px;
        opacity: .95;
    }

    #cart-view .checkout-postcard-visual svg,
    #cart-view .cart-summery .checkout-postcard-visual svg {
        width: 56px;
        height: 56px;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-content {
        display: contents;
    }

    #cart-view .checkout-postcard-head h6,
    #cart-view .cart-summery .checkout-postcard-head h6 {
        font-size: 1rem;
    }

    #cart-view .checkout-postcard-empty {
        font-size: .9rem;
    }

    #cart-view .checkout-postcard-text textarea,
    #cart-view .cart-summery .checkout-postcard-text textarea {
        min-height: 82px;
    }

    #cart-view .checkout-cart-postcard {
        margin: -.3rem 0 -1rem;
        padding: .82rem .78rem;
        border-radius: 15px;
    }

    #cart-view .checkout-cart-postcard::before,
    #cart-view .checkout-cart-postcard::after {
        display: none;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-head {
        grid-column: 1;
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        align-items: start;
        gap: .24rem;
        margin-bottom: 0;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-head span {
        justify-self: start;
        margin-top: .12rem;
        padding: .26rem .48rem;
        font-size: .64rem;
        white-space: nowrap;
        text-align: center;
        order: 3;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-head h6 {
        line-height: 1.15;
        text-align: left;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-head p {
        grid-column: auto;
        margin-top: 0;
        font-size: .82rem;
        line-height: 1.28;
        text-align: left;
        order: 2;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-fields {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: 1fr;
        gap: .52rem;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-empty {
        grid-column: 1;
        min-height: 36px;
        padding: 0;
        border-radius: 12px;
        font-size: .84rem;
    }

    #cart-view .checkout-cart-postcard .checkout-postcard-text textarea,
    #cart-view .cart-summery .checkout-cart-postcard .checkout-postcard-text textarea {
        min-height: 48px;
        height: 48px;
    }

    #cart-view .cart-fields-section .cart-field-tos,
    #cart-view .cart-fields-section .cart-field-agreed {
        padding: .62rem .66rem;
        border-radius: 12px;
    }

    #cart-view .cart-fields-section .cart-field-tos .controls,
    #cart-view .cart-fields-section .cart-field-agreed .controls {
        gap: .52rem;
        font-size: .9rem;
    }

    .checkout-terms-modal {
        align-items: flex-end;
        padding: .55rem;
    }

    .checkout-terms-modal__dialog {
        max-height: calc(100vh - 1.1rem);
        border-radius: 18px;
    }

    .checkout-terms-modal__header {
        padding: 1rem 3rem .75rem 1rem;
    }

    .checkout-terms-modal__header h3 {
        font-size: 1.12rem;
    }

    .checkout-terms-modal__body {
        padding: .95rem 1rem;
        font-size: .94rem;
    }

    .checkout-terms-modal__footer {
        padding: .8rem 1rem 1rem;
    }

    .checkout-terms-modal__button {
        width: 100%;
    }

    #cart-view .checkout-user-control input:not([type="checkbox"]):not([type="radio"]),
    #cart-view .checkout-user-control select,
    #cart-view .checkout-user-control textarea,
    #cart-view .cart-fields-section input:not([type="checkbox"]):not([type="radio"]),
    #cart-view .cart-fields-section select,
    #cart-view .cart-fields-section textarea {
        min-height: 40px;
        padding: .48rem .58rem;
        border-radius: 10px;
        font-size: .98rem;
    }

    #cart-view .checkout-user-control textarea,
    #cart-view .cart-fields-section textarea {
        min-height: 82px;
    }

    #cart-view .checkout-same-address {
        margin-bottom: .55rem;
        padding: .5rem .58rem;
        border-radius: 10px;
    }

    #cart-view .checkout-same-address label {
        font-size: .8rem;
    }

    #cart-view .checkout-recipient-toggle {
        margin-bottom: .55rem;
        padding: .5rem .58rem;
        border-radius: 10px;
    }

    #cart-view .checkout-recipient-switch {
        gap: .5rem;
        margin-bottom: .62rem;
    }

    #cart-view .checkout-recipient-card {
        grid-template-columns: 1fr;
        min-height: 64px;
        padding: .68rem .72rem;
        border-radius: 11px;
        font-size: .95rem;
    }

    #cart-view .checkout-recipient-card strong {
        font-size: 1rem;
    }

    #cart-view .checkout-district-select__button {
        min-height: 48px;
        padding: .68rem 2.5rem .68rem .78rem;
        border-radius: 13px;
        font-size: 1rem;
    }

    #cart-view .checkout-district-select__menu {
        max-height: 230px;
        border-radius: 14px;
    }

    #cart-view .checkout-district-select__option {
        min-height: 40px;
        padding: .54rem .62rem;
        border-radius: 10px;
        font-size: .94rem;
    }

    #cart-view .checkout-recipient-card small {
        font-size: .78rem;
    }

    #cart-view .checkout-recipient-toggle label {
        font-size: .84rem;
    }

    #cart-view .checkout-extra-options {
        grid-template-columns: 1fr;
        gap: .45rem;
        margin-top: .52rem;
    }

    #cart-view .checkout-user-field-dopolnitelno {
        padding: .72rem;
        border-radius: 12px;
    }

    #cart-view .checkout-user-field-dopolnitelno .checkout-user-label {
        margin-bottom: .58rem;
        font-size: .84rem;
    }

    #cart-view .checkout-user-field-dopolnitelno .checkout-user-control,
    #cart-view .checkout-user-field-dopolnitelno fieldset,
    #cart-view .checkout-user-field-dopolnitelno .checkout-addon-options {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .48rem;
    }

    #cart-view .checkout-user-field-dopolnitelno .checkout-addon-option {
        min-height: 42px;
        padding: .52rem .56rem;
        border-radius: 10px;
        font-size: .78rem;
    }

    #cart-view .is-choice-field {
        min-height: 38px;
        padding: .46rem .55rem;
        border-radius: 10px;
    }

    #cart-view .is-choice-field .checkout-user-label {
        font-size: .76rem;
    }

    #cart-view .checkout-delivery-slot-button {
        min-height: 50px;
        padding: .52rem .6rem .52rem .68rem;
        border-radius: 12px;
    }

    #cart-view .checkout-delivery-slot-button small {
        font-size: .64rem;
    }

    #cart-view .checkout-delivery-slot-button strong {
        font-size: .86rem;
    }

    #cart-view .checkout-delivery-slot-button svg {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
    }

    #cart-view .checkout-delivery-slot-popover {
        align-items: flex-end;
        padding: .55rem;
    }

    #cart-view .checkout-delivery-slot-panel {
        width: 100%;
        max-height: calc(100vh - 1.1rem);
        grid-template-columns: 1fr;
        gap: .82rem;
        padding: 1rem .78rem .82rem;
        border-radius: 16px;
        overflow: auto;
    }

    #cart-view .checkout-delivery-slot-close {
        top: .5rem;
        right: .5rem;
        width: 30px;
        height: 30px;
        font-size: 1.45rem;
    }

    #cart-view .checkout-delivery-slot-col h4 {
        margin-bottom: .45rem;
        padding-right: 2rem;
        font-size: .88rem;
    }

    #cart-view .checkout-delivery-rate-note {
        margin: -.1rem 0 .55rem;
        padding: .48rem .55rem;
        border-radius: 10px;
        font-size: .68rem;
    }

    #cart-view .checkout-delivery-date-list,
    #cart-view .checkout-delivery-time-list {
        max-height: none;
        display: grid;
        gap: .38rem;
        overflow: visible;
        padding-right: 0;
    }

    #cart-view .checkout-delivery-date-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #cart-view .checkout-delivery-date-list button,
    #cart-view .checkout-delivery-time-list button {
        min-height: 38px;
        padding: .45rem .55rem;
        border: 1px solid #e4eaf3;
        border-radius: 10px;
        background: #fff;
        font-size: .84rem;
        line-height: 1.15;
    }

    #cart-view .checkout-delivery-time-list button {
        align-items: flex-start;
        flex-direction: column;
        gap: .18rem;
    }

    #cart-view .checkout-delivery-time-list button small {
        font-size: .66rem;
    }

    #cart-view .checkout-delivery-time-list button:first-child {
        min-height: 42px;
    }

    #cart-view .checkout-delivery-date-list button.is-active,
    #cart-view .checkout-delivery-time-list button.is-active {
        border-color: var(--checkout-blue);
        background: #f1f6ff;
    }

    #cart-view .checkout-delivery-slot-apply {
        width: 100%;
        min-height: 44px;
        margin-top: .75rem;
        font-size: .9rem;
    }

    body > .checkout-delivery-slot-popover {
        align-items: flex-end;
        padding: .55rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-panel {
        width: 100%;
        max-height: calc(100vh - 1.1rem);
        grid-template-columns: 1fr;
        gap: .82rem;
        padding: 1rem .78rem .82rem;
        border-radius: 16px;
        overflow: auto;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-close {
        top: .5rem;
        right: .5rem;
        width: 30px;
        height: 30px;
        font-size: 1.45rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-col h4 {
        margin-bottom: .45rem;
        padding-right: 2rem;
        font-size: .88rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-rate-note {
        margin: -.1rem 0 .55rem;
        padding: .48rem .55rem;
        border-radius: 10px;
        font-size: .68rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list,
    body > .checkout-delivery-slot-popover .checkout-delivery-time-list {
        max-height: none;
        display: grid;
        gap: .38rem;
        overflow: visible;
        padding-right: 0;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list button,
    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button {
        min-height: 38px;
        padding: .45rem .55rem;
        border: 1px solid #e4eaf3;
        border-radius: 10px;
        background: #fff;
        font-size: .84rem;
        line-height: 1.15;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button {
        align-items: flex-start;
        flex-direction: column;
        gap: .18rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button small {
        font-size: .66rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button:first-child {
        min-height: 42px;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list button.is-active,
    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button.is-active {
        border-color: var(--checkout-blue);
        background: #f1f6ff;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-apply {
        width: 100%;
        min-height: 44px;
        margin-top: .75rem;
        font-size: .9rem;
    }

    #cart-view .checkout-methods-block {
        margin: .65rem 0;
    }

    #cart-view .checkout-methods-block .checkout-block-heading {
        margin: .15rem 0 .58rem;
        padding-bottom: .58rem;
    }

    #cart-view .checkout-methods-block > .checkout-block-heading h2 {
        font-size: 1.12rem;
    }

    #cart-view .checkout-methods-block > .checkout-block-heading h2::before {
        width: 28px;
        height: 28px;
        border-radius: 9px;
        font-size: .72rem;
    }

    #cart-view .checkout-methods-block .checkout-block-heading p {
        display: block;
        font-size: .86rem;
    }

    #cart-view .cart-summary {
        border-spacing: 0 .48rem;
    }

    #cart-view .cart-summary thead {
        display: none;
    }

    #cart-view .cart-summary,
    #cart-view .cart-summary tbody,
    #cart-view .cart-summary tr,
    #cart-view .cart-summary td {
        display: block;
        width: 100%;
    }

    #cart-view .cart-summary tbody tr {
        border: 1px solid var(--checkout-line);
        border-radius: 14px;
        overflow: hidden;
    }

    #cart-view .cart-summary tbody td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
        min-height: 0;
        padding: .46rem .72rem;
        border: 0;
        border-radius: 0 !important;
        text-align: right !important;
    }

    #cart-view .cart-summary tbody td[data-title]::before {
        content: attr(data-title);
        flex: 0 0 auto;
        color: var(--checkout-muted);
        font-size: .68rem;
        font-weight: 800;
        text-align: left;
        text-transform: uppercase;
    }

    #cart-view .cart-summary .cart-item-name,
    #cart-view .cart-summary .cart-section-header {
        display: block;
        padding: .68rem .72rem .45rem;
        text-align: left !important;
    }

    #cart-view .cart-summary .checkout-product-row td + td,
    #cart-view .checkout-subtotal-row td + td {
        border-top: 1px solid #f0f3f8;
    }

    #cart-view .cart-summary .checkout-product-row {
        display: grid !important;
        grid-template-columns: minmax(0, .82fr) minmax(136px, 1.35fr) minmax(0, .82fr);
        align-items: stretch;
    }

    #cart-view .cart-summary .cart-products-track.has-multiple-items {
        display: flex !important;
        align-items: stretch;
        gap: .72rem;
        width: 100%;
        padding: 0 1px .3rem;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-inline: contain;
        scroll-padding-inline: 1px;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    #cart-view .cart-summary .cart-products-track.has-multiple-items::-webkit-scrollbar {
        display: none;
    }

    #cart-view .cart-summary .cart-products-track.has-multiple-items .checkout-product-row {
        flex: 0 0 80%;
        width: 80%;
        min-width: 0;
        margin: 0;
        scroll-snap-align: start;
        scroll-snap-stop: always;
    }

    #cart-view .cart-summary .checkout-product-row .cart-item-name {
        grid-column: 1 / -1;
        width: 100%;
    }

    #cart-view .cart-summary .checkout-product-row .cart-item-basicprice,
    #cart-view .cart-summary .checkout-product-row .cart-item-quantity,
    #cart-view .cart-summary .checkout-product-row .cart-item-total {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: .22rem;
        width: 100%;
        min-height: 58px;
        padding: .52rem .62rem;
        border-top: 1px solid #f0f3f8;
        text-align: left !important;
    }

    #cart-view .cart-summary .checkout-product-row .cart-item-quantity {
        align-items: center;
    }

    #cart-view .cart-summary .checkout-product-row .cart-item-total {
        align-items: flex-end;
        text-align: right !important;
    }

    #cart-view .cart-summary .checkout-product-row .cart-item-basicprice::before,
    #cart-view .cart-summary .checkout-product-row .cart-item-quantity::before,
    #cart-view .cart-summary .checkout-product-row .cart-item-total::before {
        content: attr(data-title);
        flex: 0 0 auto;
        color: var(--checkout-muted);
        font-size: .62rem;
        font-weight: 850;
        line-height: 1;
        text-align: inherit;
        text-transform: uppercase;
    }

    #cart-view .cart-summary .checkout-product-row .cart-item-quantity::before {
        align-self: center;
    }

    #cart-view .cart-summary .checkout-product-row .cart-column-empty,
    #cart-view .cart-summary .checkout-product-row .cart-item-tax:empty,
    #cart-view .cart-summary .checkout-product-row .cart-item-discount:empty,
    #cart-view .checkout-subtotal-row .cart-column-empty {
        display: none;
    }

    #cart-view .cart-item-image {
        flex-basis: 74px;
        width: 74px;
    }

    #cart-view .cart-thumbnail-image {
        width: 74px;
        height: 92px;
        border-radius: 12px;
    }

    #cart-view .cart-item-info-section {
        gap: .65rem !important;
    }

    #cart-view .cart-item-info h6 {
        margin-bottom: .25rem;
        font-size: .94rem;
        line-height: 1.2;
    }

    #cart-view .cart-item-sku,
    #cart-view .cart-item-sku .text-muted {
        font-size: .78rem;
    }

    #cart-view .cart-item-basicprice,
    #cart-view .cart-item-total {
        font-size: .92rem;
    }

    #cart-view .cart-item-total .PricesalesPrice,
    #cart-view .cart-item-total .PricebillTotal,
    #cart-view .cart-item-total .PricesalesPriceShipment,
    #cart-view .cart-item-total .PricesalesPricePayment {
        font-size: .96rem;
    }

    #cart-view .quanity-update-section {
        justify-content: center !important;
        gap: .24rem !important;
        width: auto;
    }

    #cart-view .quantity-input {
        width: 50px;
        min-height: 36px;
        padding: .25rem .4rem;
        border-radius: 12px;
        font-size: .9rem;
    }

    #cart-view .quanity-update-section .btn {
        width: 30px;
        height: 30px;
        padding: 0 !important;
        border-radius: 9px;
        font-size: .82rem;
    }

    #cart-view .checkout-subtotal-row .section-title {
        font-size: .98rem;
    }

    #cart-view .checkout-grand-total-row td {
        padding: .62rem .75rem;
    }

    #cart-view .cart-coupon-field {
        width: 100%;
        min-height: 48px;
        border-radius: 14px;
        grid-template-columns: auto minmax(0, 1fr) auto;
        padding: .22rem;
    }

    #cart-view .cart-coupon-field .form-control {
        min-height: 44px;
        padding: .42rem .48rem;
        font-size: .86rem;
    }

    #cart-view .cart-coupon-field .btn {
        min-width: 96px;
        min-height: 44px;
        padding: .42rem .58rem;
        border-radius: 12px;
        font-size: .78rem;
    }

    #cart-view .cart-coupon-field__icon {
        width: 2rem;
        height: 2rem;
        border-radius: 10px;
    }

    #cart-view .checkout-sidebar-coupon {
        margin-bottom: .9rem;
    }

    #cart-view .checkout-sidebar-coupon__panel {
        padding: .72rem;
        border-radius: 16px;
    }

    #cart-view .checkout-sidebar-coupon__head {
        gap: .55rem;
        margin-bottom: .58rem;
    }

    #cart-view .checkout-sidebar-coupon__icon {
        flex-basis: 2rem;
        width: 2rem;
        height: 2rem;
        border-radius: 10px;
    }

    #cart-view .checkout-sidebar-coupon__head h3 {
        font-size: .95rem;
    }

    #cart-view .checkout-sidebar-coupon__head p {
        font-size: .76rem;
    }

    #cart-view .checkout-sidebar-coupon__applied {
        align-items: flex-start;
        flex-direction: column;
        gap: .25rem;
        padding: .55rem .62rem;
        border-radius: 12px;
        font-size: .8rem;
    }

    #cart-view .continue-shopping-section {
        justify-content: center;
        margin: .9rem 0 1.8rem;
        padding-bottom: .25rem;
    }

    #cart-view .continue-shopping-link {
        width: 100%;
        justify-content: center;
        min-height: 2.75rem;
        padding: .54rem .75rem;
        border-radius: 14px;
        font-size: .9rem;
    }

    #cart-view .continue-shopping-link__icon {
        width: 1.85rem;
        height: 1.85rem;
    }

    #cart-view .checkout-methods-grid {
        grid-template-columns: 1fr;
        gap: .62rem;
    }

    #cart-view .checkout-method-panel {
        padding: .72rem 0 .74rem .72rem;
        border-radius: 16px;
    }

    #cart-view .checkout-method-head {
        gap: .65rem;
        margin-right: .72rem;
        margin-bottom: 0;
        padding-bottom: .56rem;
    }

    #cart-view .checkout-method-head-icon {
        width: 34px;
        height: 34px;
        border-radius: 9px;
        font-size: .9rem;
    }

    #cart-view .checkout-method-head h6 {
        font-size: .96rem;
    }

    #cart-view .cart-shipment-name,
    #cart-view .cart-payment-name {
        min-height: 26px;
        padding: .22rem .5rem;
        border-radius: 8px;
        font-size: .76rem;
    }

    #cart-view .checkout-method-body .checkout-choice-title {
        margin: .54rem .72rem .42rem 0 !important;
        padding: 0;
        border-radius: 0;
        font-size: .72rem;
        letter-spacing: 0;
    }

    #cart-view .checkout-choice-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .46rem;
        max-width: none;
        margin-right: -.02rem;
        padding: .04rem .72rem .18rem 0;
        overflow: visible;
    }

    #cart-view .checkout-choice-list::-webkit-scrollbar {
        display: none;
    }

    #cart-view .checkout-choice-card {
        min-width: 0;
        min-height: 3.8rem;
        padding: .5rem .58rem .5rem 2.78rem;
        border-radius: 15px;
        scroll-snap-align: start;
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .84),
            0 .25rem .85rem rgba(17, 33, 62, .04);
    }

    #cart-view .checkout-choice-list:has(> .checkout-choice-card:nth-child(3)) {
        display: flex !important;
        grid-template-columns: none;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    #cart-view .checkout-choice-list:has(> .checkout-choice-card:nth-child(3)) .checkout-choice-card {
        flex: 0 0 calc((100% - .92rem) / 2.45);
        min-width: calc((100% - .92rem) / 2.45);
    }

    #cart-view .checkout-choice-card input[type="radio"] {
        left: .62rem;
        top: 50%;
        width: 1.58rem;
        height: 1.58rem;
        transform: translateY(-50%);
        border-radius: .5rem;
        box-shadow: none;
    }

    #cart-view .checkout-choice-card input[type="radio"]:checked {
        background-size: 1.1rem;
        box-shadow: none;
    }

    #cart-view .checkout-choice-card label {
        display: flex;
        min-height: 0;
        align-content: center;
        align-items: center;
        gap: .22rem;
        overflow: hidden;
        font-size: .75rem;
        font-weight: 780;
        line-height: 1.16;
    }

    #cart-view .checkout-payment-panel .checkout-choice-card .vmpayment_name {
        font-size: .73rem;
        font-weight: 750;
        line-height: 1.12;
    }

    #cart-view .checkout-payment-panel .checkout-choice-card .vmpayment_description {
        margin-top: .04rem;
        font-size: .6rem;
        font-weight: 400;
        line-height: 1.14;
    }

    #cart-view .checkout-choice-card .text-muted,
    #cart-view .checkout-choice-card small {
        font-size: .72rem;
        line-height: 1.15;
    }

    #cart-view .payment-methods.checkout-choice-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
    }

    #cart-view .payment-methods .checkout-choice-card {
        min-width: 0;
        width: 100%;
    }
}

body {
  font-family: "Geometria", sans-serif;
}

#PrimeProductCarousel-143 > .tns-item {
  width: calc(50%) !important;
  padding-right: 10px !important;
}

/* Category 22 (Розы): editorial SEO + FAQ */
.mag-seo {
  margin: 3rem 0 2.5rem;
  color: #1a1d26;
}

.mag-seo__sheet {
  background: linear-gradient(165deg, #fafbfc 0%, #ffffff 48%, #f7f8fb 100%);
  border: 1px solid rgba(24, 32, 56, 0.08);
  border-radius: 24px;
  padding: clamp(1.25rem, 2.5vw, 2rem);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.06);
}

.mag-seo__masthead {
  max-width: 46rem;
}

.mag-seo__eyebrow {
  margin: 0 0 0.65rem;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #6b7280;
}

.mag-seo__headline {
  margin: 0 0 0.85rem;
  font-size: clamp(1.45rem, 2.8vw, 2rem);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.02em;
}

.mag-seo__deck {
  margin: 0 0 1rem;
  font-size: 1.12rem;
  line-height: 1.55;
  color: #374151;
}

.mag-seo__lead {
  margin: 0;
  font-size: 1.06rem;
  line-height: 1.6;
  color: #4b5563;
}

.mag-seo__expand {
  margin-top: 1.35rem;
  padding-top: 1.15rem;
  border-top: 1px solid rgba(24, 32, 56, 0.08);
}

.mag-seo__expand-inner {
  max-height: 6.5rem;
  overflow: hidden;
  position: relative;
  transition: max-height 0.35s ease;
}

.mag-seo__expand-inner::after {
  content: "";
  position: absolute;
  inset: 0 0 0 0;
  background: linear-gradient(to bottom, rgba(250, 251, 252, 0), rgba(250, 251, 252, 0.92) 72%, #fafbfc 100%);
  pointer-events: none;
}

.mag-seo__expand.is-expanded .mag-seo__expand-inner::after {
  display: none;
}

.mag-seo__toggle {
  margin-top: 0.85rem;
  padding: 0.45rem 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #3730a3;
}

.mag-seo__toggle:hover {
  color: #1e1b4b;
}

.mag-seo__article {
  font-size: 1.09rem;
  line-height: 1.65;
  color: #252830;
}

.mag-seo__article p {
  margin: 0 0 1.1rem;
}

.mag-seo__dropcap {
  float: left;
  font-size: 3.1rem;
  line-height: 0.82;
  padding-right: 0.45rem;
  margin-top: 0.12rem;
  font-weight: 600;
  color: #111827;
}

.mag-seo__dropcap-wrap::after {
  content: "";
  display: table;
  clear: both;
}

.mag-seo__subhead {
  margin: 1.75rem 0 0.55rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #6b7280;
}

.mag-seo__note {
  margin: 1.5rem 0 0;
  padding: 1rem 1.1rem;
  border-radius: 14px;
  border-left: 3px solid #4f46e5;
  background: rgba(79, 70, 229, 0.06);
  font-size: 0.96rem;
  line-height: 1.55;
  color: #374151;
}

.mag-faq {
  margin-top: 2.25rem;
}

.mag-faq__intro {
  margin-bottom: 1.25rem;
}

.mag-faq__title {
  margin: 0 0 0.5rem;
  font-size: clamp(1.15rem, 2.8vw, 1.45rem);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #111827;
}

.mag-faq__eyebrow {
  margin: 0 0 0.35rem;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #6b7280;
}

.mag-faq__hint {
  margin: 0;
  font-size: clamp(1rem, 1.4vw, 1.06rem);
  line-height: 1.5;
  color: #6b7280;
}

.mag-faq__grid {
  display: grid;
  gap: 1rem;
}

@media (min-width: 768px) {
  .mag-faq__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem 1.25rem;
  }
}

.mag-faq__panel {
  background: #fff;
  border: 1px solid rgba(0, 91, 255, 0.12);
  border-radius: 20px;
  padding: 1.08rem 1.18rem 0.45rem;
  box-shadow: none;
}

.mag-faq__group-title {
  margin: 0 0 0.72rem;
  padding-bottom: 0.62rem;
  border-bottom: 1px solid rgba(24, 32, 56, 0.06);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #8b95a7;
}

.mag-faq__accordion .mag-faq__item + .mag-faq__item {
  border-top: 1px solid rgba(24, 32, 56, 0.06);
}

.mag-faq__q {
  margin: 0;
}

.mag-faq__btn {
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.86rem 0;
  border: 0;
  background: transparent;
  text-align: left;
  font-family: inherit;
  font-size: clamp(1.02rem, 1.35vw, 1.1rem);
  font-weight: 600;
  line-height: 1.42;
  color: #071329;
  transition: color 0.18s ease;
}

.mag-faq__btn:hover {
  color: #005bff;
}

.mag-faq__btn::after {
  content: "";
  flex: 0 0 0.66rem;
  width: 0.66rem;
  height: 0.66rem;
  margin-top: 0.34rem;
  border-right: 1.7px solid #9ca3af;
  border-bottom: 1.7px solid #9ca3af;
  transform: rotate(45deg);
  transition: transform 0.2s ease, border-color 0.18s ease;
}

.mag-faq__btn:hover::after,
.mag-faq__btn:not(.collapsed)::after {
  border-color: #005bff;
}

.mag-faq__btn:not(.collapsed)::after {
  transform: rotate(-135deg);
  margin-top: 0.45rem;
}

.mag-faq__a {
  padding: 0.05rem 0 1.05rem;
  max-width: 56rem;
  font-size: clamp(1rem, 1.25vw, 1.07rem);
  line-height: 1.58;
  color: #4b5563;
}

@media (max-width: 767.98px) {
  .mag-seo__article {
    font-size: 1.03rem;
  }

  .mag-faq__btn {
    padding: 0.82rem 0;
    font-size: 0.98rem;
  }

  .mag-faq__a {
    font-size: 0.96rem;
    line-height: 1.56;
  }
}

.mod-megamenu--item.mod-megamenu--level-1>.mod-megamenu--item-anchor .mod-megamenu--item-title {
    text-transform: initial;
    font-weight: var(--megamenu-top-item-weight, bold);
    font-size: 1.1rem;
    color: rgb(0 0 0);
    font-weight: 400;
    letter-spacing: -0.3px;
}

.product-list-images {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    min-height: 10rem;
    backface-visibility: hidden;
    border-radius: 0 2.4rem 0 1.6rem 16px;
    border-radius: 10px;
}
.main-bottom-horizontal-section, .main-bottom-vertical-section, .main-top-horizontal-section, .main-top-vertical-section {
    margin: 1rem 0 1rem;
}
.mb-5 {
    margin-bottom: 2rem !important;
}
.text-muted {
    display: none;
    --text-opacity: 1;
    color: var(--secondary-color) !important;
}

.product-prices.text-center.mb-3 {
    margin-bottom: 2px !important;
}
.text-center {
    text-align: left !important;
}
.main-section {
    padding-top: 1rem;
}

body.itemid-420 .main-top-vertical-section,
body.itemid-421 .main-top-vertical-section,
body.itemid-422 .main-top-vertical-section,
body.itemid-423 .main-top-vertical-section,
body.itemid-424 .main-top-vertical-section,
body.itemid-425 .main-top-vertical-section,
body.itemid-426 .main-top-vertical-section,
body.itemid-431 .main-top-vertical-section,
body.itemid-432 .main-top-vertical-section,
body.itemid-434 .main-top-vertical-section,
body.itemid-440 .main-top-vertical-section {
    margin-bottom: 0;
}

body.itemid-420 .main-top-vertical-section .mod-block,
body.itemid-421 .main-top-vertical-section .mod-block,
body.itemid-422 .main-top-vertical-section .mod-block,
body.itemid-423 .main-top-vertical-section .mod-block,
body.itemid-424 .main-top-vertical-section .mod-block,
body.itemid-425 .main-top-vertical-section .mod-block,
body.itemid-426 .main-top-vertical-section .mod-block,
body.itemid-431 .main-top-vertical-section .mod-block,
body.itemid-432 .main-top-vertical-section .mod-block,
body.itemid-434 .main-top-vertical-section .mod-block,
body.itemid-440 .main-top-vertical-section .mod-block {
    margin-bottom: .35rem !important;
}

body.itemid-420 .main-top-vertical-section .vp-price-ranges,
body.itemid-421 .main-top-vertical-section .vp-price-ranges,
body.itemid-422 .main-top-vertical-section .vp-price-ranges,
body.itemid-423 .main-top-vertical-section .vp-price-ranges,
body.itemid-424 .main-top-vertical-section .vp-price-ranges,
body.itemid-425 .main-top-vertical-section .vp-price-ranges,
body.itemid-426 .main-top-vertical-section .vp-price-ranges {
    margin-bottom: .35rem;
}

body.itemid-420 .main-section,
body.itemid-421 .main-section,
body.itemid-422 .main-section,
body.itemid-423 .main-section,
body.itemid-424 .main-section,
body.itemid-425 .main-section,
body.itemid-426 .main-section {
    padding-top: .35rem;
}

@media (max-width: 767.98px) {
    body.itemid-420 .main-top-vertical-section .mod-block,
    body.itemid-421 .main-top-vertical-section .mod-block,
    body.itemid-422 .main-top-vertical-section .mod-block,
    body.itemid-423 .main-top-vertical-section .mod-block,
    body.itemid-424 .main-top-vertical-section .mod-block,
    body.itemid-425 .main-top-vertical-section .mod-block,
    body.itemid-426 .main-top-vertical-section .mod-block {
        margin-bottom: .15rem !important;
    }

    body.itemid-420 .main-top-vertical-section .vp-price-ranges,
    body.itemid-421 .main-top-vertical-section .vp-price-ranges,
    body.itemid-422 .main-top-vertical-section .vp-price-ranges,
    body.itemid-423 .main-top-vertical-section .vp-price-ranges,
    body.itemid-424 .main-top-vertical-section .vp-price-ranges,
    body.itemid-425 .main-top-vertical-section .vp-price-ranges,
    body.itemid-426 .main-top-vertical-section .vp-price-ranges {
        margin-bottom: .15rem;
    }

    body.itemid-420 .main-section,
    body.itemid-421 .main-section,
    body.itemid-422 .main-section,
    body.itemid-423 .main-section,
    body.itemid-424 .main-section,
    body.itemid-425 .main-section,
    body.itemid-426 .main-section {
        padding-top: .25rem;
    }
}
img.product-image.lazy.lz-entered.lz-loaded {
    border-radius: 10px;
}

a.mod-megamenu--item-anchor.kruglosutochno,
a.mod-offcanvas-menu--item-anchor.kruglosutochno {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    align-self: center;
    gap: .54rem;
    min-height: 38px;
    padding: .3rem .15rem !important;
    margin-top: auto;
    margin-bottom: auto;
    color: #111827 !important;
    text-decoration: none !important;
    line-height: 1;
    transition: color 0.16s ease;
}

a.mod-megamenu--item-anchor.kruglosutochno::before,
a.mod-offcanvas-menu--item-anchor.kruglosutochno::before {
    content: "";
    width: .5rem;
    height: .5rem;
    flex: 0 0 .5rem;
    border-radius: 50%;
    background: #12c878;
}

a.mod-megamenu--item-anchor.kruglosutochno::after,
a.mod-offcanvas-menu--item-anchor.kruglosutochno::after {
    content: "24/7";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: auto;
    padding: 0;
    background: transparent;
    color: rgb(241 17 126);
    font-size: 1.38rem;
    font-weight: 900;
    line-height: .9;
    letter-spacing: -.04em;
    font-style: italic;
}

a.mod-megamenu--item-anchor.kruglosutochno .mod-megamenu--item-title,
a.mod-offcanvas-menu--item-anchor.kruglosutochno .mod-offcanvas-menu--item-title {
    color: #111827 !important;
    font-weight: 600 !important;
    line-height: 1;
    letter-spacing: 0;
}



a.mod-megamenu--item-anchor.kruglosutochno:hover .mod-megamenu--item-title,
a.mod-megamenu--item-anchor.kruglosutochno:focus-visible .mod-megamenu--item-title,
a.mod-offcanvas-menu--item-anchor.kruglosutochno:hover .mod-offcanvas-menu--item-title,
a.mod-offcanvas-menu--item-anchor.kruglosutochno:focus-visible .mod-offcanvas-menu--item-title {
    color: #111827 !important;
}

a.mod-megamenu--item-anchor.kruglosutochno:hover,
a.mod-megamenu--item-anchor.kruglosutochno:focus-visible,
a.mod-offcanvas-menu--item-anchor.kruglosutochno:hover,
a.mod-offcanvas-menu--item-anchor.kruglosutochno:focus-visible {
    color: #111827 !important;
}

@keyframes kruglosutochnoPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 211, 111, 0.42);
    }
    70% {
        box-shadow: 0 0 0 0.36rem rgba(0, 211, 111, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(0, 211, 111, 0);
    }
}

.mod-megamenu--item:has(> a.mod-megamenu--item-anchor.kruglosutochno) {
    display: flex;
    align-items: center;
}

.mod-offcanvas-menu--item:has(> a.mod-offcanvas-menu--item-anchor.kruglosutochno) {
    display: flex;
    align-items: center;
}

#content .fm-bento-order-note {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .85rem;
    margin: -.45rem 0 1.7rem;
    padding: .95rem 1rem;
    border: 1px solid rgba(241, 17, 126, .24);
    border-radius: 18px;
    background: rgba(241, 17, 126, .055);
    color: #1b2a41;
}

#content .fm-bento-order-note__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: rgb(241 17 126);
    color: #fff;
}

#content .fm-bento-order-note__icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#content .fm-bento-order-note__copy {
    display: grid;
    gap: .1rem;
    min-width: 0;
}

#content .fm-bento-order-note__copy strong {
    font-size: 1rem;
    line-height: 1.25;
}

#content .fm-bento-order-note__copy > span {
    color: #69778c;
    font-size: .88rem;
    line-height: 1.35;
}

#content .fm-bento-order-note__term {
    padding: .5rem .7rem;
    border: 0;
    border-radius: 999px;
    background: rgb(241 17 126);
    color: #fff;
    font-size: .78rem;
    font-weight: 750;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    #content .fm-bento-order-note {
        grid-template-columns: auto minmax(0, 1fr);
        gap: .65rem;
        margin-bottom: 1.15rem;
        padding: .78rem;
        border-radius: 15px;
    }

    #content .fm-bento-order-note__icon {
        width: 36px;
        height: 36px;
        border-radius: 11px;
    }

    #content .fm-bento-order-note__copy strong {
        font-size: .88rem;
    }

    #content .fm-bento-order-note__copy > span {
        font-size: .76rem;
    }

    #content .fm-bento-order-note__term {
        grid-column: 2;
        justify-self: start;
        padding: .35rem .55rem;
        font-size: .7rem;
    }

}

@media (prefers-reduced-motion: reduce) {
    a.mod-megamenu--item-anchor.kruglosutochno::before,
    a.mod-offcanvas-menu--item-anchor.kruglosutochno::before {
        animation: none;
    }
}

@media (max-width: 991.98px) {
    a.mod-megamenu--item-anchor.kruglosutochno,
    a.mod-offcanvas-menu--item-anchor.kruglosutochno {
        width: fit-content;
        max-width: calc(100% - 1rem);
        min-height: 40px;
        margin: 0.4rem 0;
        padding: 0.48rem 0.88rem !important;
    }

    a.mod-offcanvas-menu--item-anchor.kruglosutochno {
        margin-left: 0.75rem;
    }
}


.btn-primary {
    --btn-color: var(--template-primary-contrast-color);
    --btn-bg: #005bff;
    --btn-border-color: #005bff;
    --btn-hover-color: #ffffffcc;
    --btn-hover-bg: #2673ff;
    --btn-hover-border-color: #2673ff;
    --btn-focus-shadow-rgb: 39, 39, 111;
    --btn-active-color: var(--template-primary-hover-contrast-color);
    --btn-active-bg: #005bff;
    --btn-active-border-color: #005bff;
    --btn-active-shadow: none;
    --btn-disabled-color: var(--template-primary-contrast-color);
    --btn-disabled-bg: #005bff;
    --btn-disabled-border-color: #005bff;
	border-radius: 0.9rem;
	
}
.cf-form-search .input-append input[type=search]:not(.form-control), .cf-form-search .input-append input[type=text]:not(.form-control), .form-control, .old-form input[type=email], .old-form input[type=password], .old-form input[type=text], .old-form textarea {
    display: block;
    width: 100%;
    padding: .6rem 1rem;
    font-size: 1rem;
    font-weight: var(--neoteric-font-weight-normal, 400);
    line-height: 1.9;
    color: var(--body-color);
    appearance: none;
    background-color: var(--body-bg);
    background-clip: padding-box;
    border: 2px solid #005bff;
    border-radius: 1.25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.cf-form-search .input-append input[type=search]:focus:not(.form-control),
.cf-form-search .input-append input[type=text]:focus:not(.form-control),
.form-control:focus,
.old-form input[type=email]:focus,
.old-form input[type=password]:focus,
.old-form input[type=text]:focus,
.old-form textarea:focus {
  color: var(--body-color);
  background-color: var(--body-bg);
  border-color: #005bff;
  box-shadow: none;
}

a.mod-megamenu--item-anchor.catalog-cvetov {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    align-self: center;
    gap: 0.62rem;
    min-height: 42px;
    padding: 0.62rem 1.05rem !important;
    margin-top: auto;
    margin-bottom: auto;
    border: 1px solid #005bff;
    border-radius: 13px;
    background: #005bff;
    color: #fff !important;
    line-height: 2;
    text-decoration: none !important;
    transition: background 0.16s ease, border-color 0.16s ease;
}

a.mod-megamenu--item-anchor.catalog-cvetov::before {
    content: "";
    width: 1.18rem;
    height: 1.18rem;
    flex: 0 0 1.18rem;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.167 9.167c-.458 0-.85-.164-1.177-.49A1.604 1.604 0 0 1 2.5 7.5V4.167c0-.458.164-.851.49-1.177.326-.327.719-.49 1.177-.49H7.5c.458 0 .851.163 1.177.49.327.326.49.719.49 1.177V7.5c0 .458-.163.851-.49 1.177-.326.326-.719.49-1.177.49H4.167Zm0 8.333c-.458 0-.85-.163-1.177-.49a1.604 1.604 0 0 1-.49-1.177V12.5c0-.458.164-.851.49-1.177.326-.326.719-.49 1.177-.49H7.5c.458 0 .851.164 1.177.49.327.326.49.719.49 1.177v3.333c0 .458-.163.851-.49 1.177-.326.327-.719.49-1.177.49H4.167Zm8.333-8.333c-.458 0-.851-.164-1.177-.49a1.604 1.604 0 0 1-.49-1.177V4.167c0-.458.164-.851.49-1.177.326-.327.719-.49 1.177-.49h3.333c.458 0 .851.163 1.177.49.327.326.49.719.49 1.177V7.5c0 .458-.163.851-.49 1.177-.326.326-.719.49-1.177.49H12.5Zm0 8.333c-.458 0-.851-.163-1.177-.49a1.604 1.604 0 0 1-.49-1.177V12.5c0-.458.164-.851.49-1.177.326-.326.719-.49 1.177-.49h3.333c.458 0 .851.164 1.177.49.327.326.49.719.49 1.177v3.333c0 .458-.163.851-.49 1.177-.326.327-.719.49-1.177.49H12.5ZM4.167 7.5H7.5V4.167H4.167V7.5ZM12.5 7.5h3.333V4.167H12.5V7.5Zm0 8.333h3.333V12.5H12.5v3.333Zm-8.333 0H7.5V12.5H4.167v3.333Z' fill='white'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

a.mod-megamenu--item-anchor.catalog-cvetov::after,
.mod-megamenu--deeper:not(.mod-megamenu--group) > a.mod-megamenu--item-anchor.catalog-cvetov::after {
    content: none !important;
    display: none !important;
}

a.mod-megamenu--item-anchor.catalog-cvetov .mod-megamenu--item-title {
    color: #fff !important;
    font-weight: 700 !important;
    line-height: 1;
}

a.mod-megamenu--item-anchor.catalog-cvetov:hover,
a.mod-megamenu--item-anchor.catalog-cvetov:focus-visible,
.mod-megamenu--item.mod-megamenu--expand:hover > a.mod-megamenu--item-anchor.catalog-cvetov,
.mod-megamenu--item.is-catalog-open > a.mod-megamenu--item-anchor.catalog-cvetov {
    border-color: #004ee0;
    background: #004ee0;
}

.mod-megamenu--item.mod-megamenu--expand:hover > a.mod-megamenu--item-anchor.catalog-cvetov::before,
.mod-megamenu--item.mod-megamenu--expand:focus-within > a.mod-megamenu--item-anchor.catalog-cvetov::before,
.mod-megamenu--item.is-catalog-open > a.mod-megamenu--item-anchor.catalog-cvetov::before {
    transform: scale(1.04);
}

.mod-megamenu--item.is-catalog-open > .mod-megamenu--container {
    visibility: visible;
    opacity: 1;
}

.mod-megamenu--item:has(> a.mod-megamenu--item-anchor.catalog-cvetov) {
    display: flex;
    align-items: center;
}

.mod-megamenu--sticker {
    display: flex;
    position: absolute;
    top: -0.8rem;
    border-radius: 5px;
    left: 80%;
    padding: .2rem .2rem;
    font-size: .7rem;
    font-weight: 400;
    line-height: 1;
    text-align: center;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    white-space: nowrap;
    vertical-align: middle;
    background-color: var(--megamenu-sticker-background, red);
    color: var(--megamenu-sticker-color, #fff);
}

.mega-menu-container {
    --megamenu-border-color: var(--template-megamenu-border-color, #ddd);
    --megamenu-bg: var(--template-megamenu-bg, #fff);
    border-top: 1px solid var(--megamenu-border-color);
    border-bottom: 1px solid var(--megamenu-border-color);
    background-color: var(--megamenu-bg);
    line-height: 30px;
}
.mod-megamenu--item .mod-megamenu--item>.mod-megamenu--item-anchor .mod-megamenu--item-icon, .mod-megamenu--item .mod-megamenu--item>.mod-megamenu--item-anchor .mod-megamenu--item-title {
    color: #000000;
	font-size: 16px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 24px;
	letter-spacing: -0.5px;
}

.mod-megamenu--sub .mod-megamenu--heading.mod-megamenu--item-anchor,
.mod-megamenu--sub .mod-megamenu--separator.mod-megamenu--item-anchor {
    display: block;
    width: 100%;
    min-height: 0;
    margin: 0 0 .9rem;
    padding: .58rem 1.5rem .88rem !important;
    border-bottom: 1px solid #e4ecf7;
    color: #005bff !important;
    cursor: default;
    pointer-events: none;
    text-decoration: none !important;
}

.mod-megamenu--sub .mod-megamenu--heading.mod-megamenu--item-anchor .mod-megamenu--item-inner,
.mod-megamenu--sub .mod-megamenu--heading.mod-megamenu--item-anchor .mod-megamenu--item-title,
.mod-megamenu--sub .mod-megamenu--separator.mod-megamenu--item-anchor .mod-megamenu--item-inner,
.mod-megamenu--sub .mod-megamenu--separator.mod-megamenu--item-anchor .mod-megamenu--item-title {
    display: block;
    color: inherit !important;
    font-size: .86rem !important;
    font-weight: 800 !important;
    line-height: 1.16 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase;
}

.mod-megamenu--sub .mod-megamenu--heading.mod-megamenu--item-anchor + .mod-megamenu--container,
.mod-megamenu--sub .mod-megamenu--separator.mod-megamenu--item-anchor + .mod-megamenu--container {
    margin-top: 0;
}

.mod-megamenu--expand>.mod-megamenu--container {
    position: absolute;
    top: 100%;
    border-radius: 24px;
    left: 0;
    z-index: 520;
    margin-right: 0;
    margin-left: 0;
    border: 1px solid rgba(198, 214, 236, .92);
    background-color: var(--megamenu-dropdown-background, #fff);
    background-image: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .97));
    background-position: bottom right;
    background-clip: border-box;
    background-repeat: no-repeat;
    box-shadow: 0 28px 70px rgba(15, 23, 42, .18), 0 6px 18px rgba(15, 23, 42, .08);
    text-align: left;
    visibility: hidden;
    opacity: 0;
    transition: opacity .4s cubic-bezier(.19, 1, .22, 1), visibility .4s cubic-bezier(.19, 1, .22, 1), transform .4s cubic-bezier(.19, 1, .22, 1);
    transform: translateY(12px) translateZ(0);
    pointer-events: none;
    padding: .85rem;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.mod-megamenu--expand>.mod-megamenu--container::before {
    content: "";
    position: absolute;
    top: .45rem;
    right: .85rem;
    left: .85rem;
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(0, 91, 255, .22), transparent);
    pointer-events: none;
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--item > .mod-megamenu--item-anchor {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.1rem;
    min-height: 3rem;
    padding: .7rem .88rem !important;
    border-radius: 15px;
    color: #14233a !important;
    text-decoration: none !important;
    transition: background-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--item > .mod-megamenu--item-anchor:hover,
.mega-menu-container .mod-megamenu--container .mod-megamenu--item > .mod-megamenu--item-anchor:focus-visible,
.mega-menu-container .mod-megamenu--container .mod-megamenu--item.mod-megamenu--expand:hover > .mod-megamenu--item-anchor {
    background: #eef5ff;
    color: #005bff !important;
    box-shadow: inset 0 0 0 1px rgba(0, 91, 255, .12);
    transform: translateX(2px);
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--item > .mod-megamenu--item-anchor .mod-megamenu--item-title,
.mega-menu-container .mod-megamenu--container .mod-megamenu--item > .mod-megamenu--item-anchor .mod-megamenu--item-icon {
    color: inherit !important;
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--deeper:not(.mod-megamenu--group) > .mod-megamenu--item-anchor::after {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: center;
    flex: 0 0 1.65rem;
    width: 1.65rem;
    height: 1.65rem;
    margin-left: auto;
    border-radius: 999px;
    background: rgba(20, 35, 58, .06);
    color: #708096;
    line-height: 1;
    position: static;
    transform: none;
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--deeper:not(.mod-megamenu--group):hover > .mod-megamenu--item-anchor::after {
    background: #005bff;
    color: #fff;
    transform: translateX(1px);
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--item-inner {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-width: 0;
    max-width: 100%;
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--sticker {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    flex: 0 0 auto;
    margin-left: .06rem;
    padding: .18rem .42rem;
    border-radius: 999px;
    font-size: .6rem;
    font-weight: 800;
    letter-spacing: .025em;
    line-height: 1.05;
    box-shadow: 0 7px 16px rgba(236, 20, 111, .20);
    transform: translateY(-.58em);
}

.item-container.add-hover-effect:hover .item-backdrop, .product-container.add-hover-effect.state-hover .product-backdrop {
    visibility: visible;
    opacity: 1;
    transition: opacity .3s ease, transform .3s ease;
    transform: scale(1);
    z-index: 21;
    border-radius: 20px;
}

.btn-group-lg>.btn, .btn-lg, .btn-vm-customfield .btn-group-lg>.form-check-label-text {
    --btn-padding-y: 0.7rem;
    --btn-padding-x: 1.5rem;
    /* --btn-font-size: 1.2rem; */
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 30px;
    --btn-border-radius: var(--border-radius-lg);
	text-transform: none;
}

h1.product-page-title.flex-fill.mt-0.mb-0 {
    letter-spacing: -0.5px;
}
.mb-0 {
    margin-bottom: 0 !important;
}
@media (min-width: 1200px) {
    .h1, h1 {
        font-size: 2rem;
    }
}
.mb-4 {
    margin-bottom: 0.9rem !important;
}

.btn-vme-round>i {
    display: inline-block;
    height: 2.15rem;
    width: 2.15rem;
    border: none;
    border-radius: 0;
    line-height: calc(2rem - 5px);
    background-color: var(--white);
    color: var(--gray-900);
    border: 1px solid var(--gray-300);
    text-align: center;
    margin: 0;
    transition: background-color .15s ease-in-out, color .15s ease-in-out, border-color .15s ease-in-out;
}

.productdetails-view .product-add-actions .btn-item-added i {
    background: #ff2f72 !important;
    color: #fff;
}

@media (max-width: 767.98px) {
    .productdetails-view .product-add-actions .product-utility-item i {
        width: 1.7rem !important;
        height: 1.7rem !important;
        font-size: .76rem;
    }
}

.page-header .h1, .page-header h1 {
    position: relative;
    padding-bottom: .8rem;
    margin-bottom: 1rem;
    text-transform: none;
    font-size: 2rem;
    font-weight: 800;
    letter-spacing: -0.5px;
}

body.com-content.view-article .fm-article-page .fm-article-hero__title h1,
body.com-content.view-article .fm-article-page .fm-article-hero__title h2 {
    max-width: 10.2em;
    padding-bottom: .18em;
    margin: 0;
    font-size: clamp(3.25rem, 6.35vw, 4.15rem);
    font-weight: 860;
    line-height: .9;
    letter-spacing: 0;
}

/* Journal category list */
.fm-journal-list {
    --journal-blue: #005bff;
    --journal-pink: #f72473;
    --journal-ink: #071329;
    --journal-text: #58677f;
    --journal-muted: #75849a;
    --journal-line: #dbe7f6;
    --journal-soft: #f6f9fe;
    width: min(100%, 1280px);
    margin: 0 auto clamp(2rem, 4vw, 4rem);
    color: var(--journal-ink);
}

.fm-journal-list__head {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: clamp(1rem, 2.6vw, 2rem);
    padding: clamp(1rem, 2.6vw, 1.65rem);
    border: 1px solid var(--journal-line);
    border-radius: 30px;
    background:
        radial-gradient(circle at 88% 10%, rgba(0, 91, 255, 0.12) 0 5.4rem, transparent 5.55rem),
        linear-gradient(135deg, #fff 0%, #f7faff 100%);
}

.fm-journal-list__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    width: fit-content;
    margin-bottom: .55rem;
    padding: .34rem .72rem;
    border: 1px solid color-mix(in srgb, var(--journal-blue) 22%, #fff);
    border-radius: 999px;
    background: #eef5ff;
    color: var(--journal-blue);
    font-size: .82rem;
    font-weight: 840;
    line-height: 1;
}

.fm-journal-list__eyebrow::before {
    content: "";
    width: .48rem;
    height: .48rem;
    border-radius: 999px;
    background: var(--journal-pink);
}

.fm-journal-list__head h1,
.fm-journal-list__head h2 {
    margin: 0;
    color: var(--journal-ink);
    font-family: inherit;
    font-size: clamp(2rem, 4.2vw, 4.4rem);
    font-weight: 860;
    line-height: .98;
    letter-spacing: 0;
}

.fm-journal-list__head p {
    max-width: 44rem;
    margin: .65rem 0 0;
    color: var(--journal-text);
    font-size: clamp(.98rem, 1.25vw, 1.1rem);
    font-weight: 620;
    line-height: 1.48;
}

.fm-journal-list__count {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    min-width: 5.5rem;
    padding: .8rem .95rem;
    border: 1px solid var(--journal-line);
    border-radius: 22px;
    background: #fff;
}

.fm-journal-list__count strong {
    color: var(--journal-blue);
    font-size: 1.8rem;
    line-height: 1;
}

.fm-journal-list__count span {
    margin-top: .22rem;
    color: var(--journal-muted);
    font-size: .72rem;
    font-weight: 820;
    text-transform: uppercase;
}

.fm-journal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(.85rem, 1.6vw, 1.25rem);
}

.fm-journal-card {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    min-width: 0;
    border: 1px solid var(--journal-line);
    border-radius: 26px;
    background: #fff;
}

.fm-journal-card--featured {
    grid-column: span 2;
    grid-template-columns: minmax(0, 1.05fr) minmax(310px, .95fr);
    grid-template-rows: 1fr;
    min-height: 24rem;
}

.fm-journal-card__media {
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--journal-soft);
}

.fm-journal-card:not(.fm-journal-card--featured) .fm-journal-card__media {
    aspect-ratio: 16 / 10;
}

.fm-journal-card--featured .fm-journal-card__media {
    min-height: 100%;
    clip-path: polygon(0 0, 92% 0, 100% 50%, 92% 100%, 0 100%);
}

.fm-journal-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.fm-journal-card__placeholder {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    min-height: 14rem;
    color: var(--journal-blue);
    font-size: 2rem;
    font-weight: 900;
}

.fm-journal-card__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    padding: clamp(.95rem, 1.8vw, 1.35rem);
}

.fm-journal-card--featured .fm-journal-card__content {
    justify-content: center;
    padding: clamp(1.2rem, 3vw, 2.35rem);
    background:
        radial-gradient(circle at 82% 18%, rgba(0, 91, 255, .11) 0 4.6rem, transparent 4.8rem),
        linear-gradient(135deg, #fff 0%, #f7faff 100%);
}

.fm-journal-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .38rem;
    margin-bottom: .72rem;
}

.fm-journal-card__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 1.62rem;
    padding: .28rem .55rem;
    border-radius: 999px;
    background: #eef5ff;
    color: #58708d;
    font-size: .74rem;
    font-weight: 800;
    line-height: 1;
}

.fm-journal-card h2 {
    margin: 0;
    font-family: inherit;
    font-size: clamp(1.08rem, 1.7vw, 1.55rem);
    font-weight: 840;
    line-height: 1.08;
    letter-spacing: 0;
}

.fm-journal-card--featured h2 {
    max-width: 9.8em;
    font-size: clamp(1.8rem, 3.5vw, 3.1rem);
    line-height: .96;
}

.fm-journal-card h2 a {
    color: var(--journal-ink);
    text-decoration: none;
}

.fm-journal-card p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    margin: .75rem 0 0;
    color: #5b5b5b;
    font-size: .94rem;
    font-weight: 400;
    line-height: 1.48;
}

.fm-journal-card--featured p {
    max-width: 34rem;
    font-size: 1rem;
    -webkit-line-clamp: 4;
}

.fm-journal-card__read {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    margin-top: auto;
    padding-top: .95rem;
    color: var(--journal-blue);
    font-size: .92rem;
    font-weight: 840;
    line-height: 1;
    text-decoration: none;
}

.fm-journal-card__read span {
    transition: transform .18s ease;
}

.fm-journal-card:hover .fm-journal-card__media img {
    transform: scale(1.035);
}

.fm-journal-card:hover h2 a,
.fm-journal-card:focus-within h2 a,
.fm-journal-card__read:hover,
.fm-journal-card__read:focus-visible {
    color: var(--journal-blue);
    text-decoration: none;
}

.fm-journal-card:hover .fm-journal-card__read span {
    transform: translateX(.18rem);
}

.fm-journal-list__empty {
    padding: 1rem 1.1rem;
    border: 1px solid var(--journal-line);
    border-radius: 20px;
    background: #fff;
    color: var(--journal-text);
    font-weight: 700;
}

.fm-journal-list__pagination {
    margin-top: 1.4rem;
}

@media (max-width: 991.98px) {
    .fm-journal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fm-journal-card--featured {
        grid-column: span 2;
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .fm-journal-card--featured .fm-journal-card__media {
        min-height: 0;
        aspect-ratio: 16 / 9;
        clip-path: none;
    }
}

@media (max-width: 575.98px) {
    .fm-journal-list {
        margin-bottom: 2rem;
    }

    .fm-journal-list__head {
        display: grid;
        gap: .8rem;
        align-items: start;
        margin-bottom: .85rem;
        padding: .9rem;
        border-radius: 22px;
    }

    .fm-journal-list__head h1,
    .fm-journal-list__head h2 {
        font-size: clamp(1.75rem, 8.5vw, 2.55rem);
        line-height: 1.02;
    }

    .fm-journal-list__head p {
        font-size: .9rem;
        line-height: 1.42;
    }

    .fm-journal-list__count {
        display: none;
    }

    .fm-journal-grid {
        grid-template-columns: 1fr;
        gap: .72rem;
    }

    .fm-journal-card,
    .fm-journal-card--featured {
        grid-column: auto;
        grid-template-columns: 6.25rem minmax(0, 1fr);
        grid-template-rows: 1fr;
        min-height: 7.25rem;
        border-radius: 20px;
    }

    .fm-journal-card .fm-journal-card__media,
    .fm-journal-card--featured .fm-journal-card__media {
        width: 6.25rem;
        min-width: 0;
        min-height: 100%;
        aspect-ratio: auto;
        clip-path: none;
    }

    .fm-journal-card__media img {
        height: 100%;
        min-height: 7.25rem;
        object-fit: cover;
    }

    .fm-journal-card__content,
    .fm-journal-card--featured .fm-journal-card__content {
        justify-content: center;
        min-width: 0;
        overflow: hidden;
        padding: .78rem .82rem;
        background: #fff;
    }

    .fm-journal-card__meta {
        gap: .28rem;
        margin-bottom: .42rem;
    }

    .fm-journal-card__meta span {
        min-height: 1.38rem;
        padding: .22rem .42rem;
        font-size: .66rem;
    }

    .fm-journal-card__meta span:nth-child(n+3) {
        display: none;
    }

    .fm-journal-card h2,
    .fm-journal-card--featured h2 {
        max-width: 100%;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        font-size: .98rem;
        line-height: 1.14;
        color: var(--journal-ink);
    }

    .fm-journal-card h2 a {
        color: inherit;
    }

    .fm-journal-card p {
        display: none;
    }

    .fm-journal-card__read {
        padding-top: .55rem;
        font-size: .78rem;
    }
}

.mod-header-group--date {
    align-items: flex-start;
    text-align: left;
}

.vertical-module-section .mod-header-group.mod-header-group--date {
    text-align: left;
}

.mod-header-group--date .mod-header {
    justify-content: flex-start;
}

.mod-title.mod-block-title.date,
.mod-header-group--date .mod-title.mod-block-title {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: .75rem;
    margin: 0;
    letter-spacing: -.02em;
    line-height: 1.08;
}

.mod-title.mod-block-title.date .mod-title-date__main,
.mod-header-group--date .mod-title-date__main {
    display: inline-block;
    text-transform: none;
}

.mod-title.mod-block-title.date .mod-title-date__badge,
.mod-header-group--date .mod-title-date__badge {
    position: relative;
    display: inline-grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    column-gap: .56rem;
    align-items: center;
    min-height: 2.55rem;
    padding: .42rem .9rem .44rem .78rem;
    border: 1px solid rgba(16, 185, 129, .26);
    border-radius: 999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 253, 251, .98)),
        radial-gradient(circle at 18% 12%, rgba(16, 185, 129, .18), transparent 34%);
    box-shadow: 0 10px 26px rgba(15, 23, 42, .08), inset 0 1px 0 rgba(255, 255, 255, .9);
    color: #142033;
    font-size: .78rem;
    font-weight: 750;
    line-height: 1.05;
    text-transform: none;
    letter-spacing: 0;
    white-space: nowrap;
}

.mod-title.mod-block-title.date .mod-title-date__badge::before,
.mod-header-group--date .mod-title-date__badge::before {
    content: "";
    grid-row: 1 / 3;
    width: .62rem;
    height: .62rem;
    border-radius: 50%;
    background: #16c76f;
    box-shadow: 0 0 0 .34rem rgba(22, 199, 111, .12), 0 0 0 .58rem rgba(22, 199, 111, .06);
}

.mod-title.mod-block-title.date .mod-title-date__status,
.mod-header-group--date .mod-title-date__status {
    display: block;
    color: #0d8f52;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1;
    text-transform: uppercase;
}

.mod-title.mod-block-title.date .mod-title-date__value,
.mod-header-group--date .mod-title-date__value {
    display: block;
    margin-top: .14rem;
    color: #182230;
    font-size: .86rem;
    font-weight: 760;
    line-height: 1;
}

.mod-header-group--date .mod-subtitle--date {
    max-width: 680px;
    margin: .65rem 0 0;
    color: #667085;
    font-size: clamp(.95rem, 1.5vw, 1.08rem);
    font-weight: 400;
    line-height: 1.45;
    letter-spacing: 0;
}

.vertical-module-section .mod-header-group--date .mod-subtitle,
.vertical-module-section .mod-header-group--date .mod-subtitle--date {
    margin-left: 0;
    margin-right: 0;
    text-align: left;
}

@media (max-width: 575.98px) {
    .mod-title.mod-block-title.date,
    .mod-header-group--date .mod-title.mod-block-title {
        flex-wrap: nowrap;
        gap: .5rem;
    }

    .mod-title.mod-block-title.date .mod-title-date__main,
    .mod-header-group--date .mod-title-date__main {
        width: auto;
        min-width: 0;
    }

    .mod-title.mod-block-title.date .mod-title-date__badge,
    .mod-header-group--date .mod-title-date__badge {
        min-height: 2.15rem;
        padding: .35rem .68rem .36rem .62rem;
        column-gap: .48rem;
    }

    .mod-title.mod-block-title.date .mod-title-date__badge::before,
    .mod-header-group--date .mod-title-date__badge::before {
        width: .52rem;
        height: .52rem;
    }

    .mod-title.mod-block-title.date .mod-title-date__status,
    .mod-header-group--date .mod-title-date__status {
        font-size: .56rem;
    }

    .mod-title.mod-block-title.date .mod-title-date__value,
    .mod-header-group--date .mod-title-date__value {
        font-size: .74rem;
    }

    .mod-header-group--date .mod-subtitle--date {
        margin: .5rem 0 0;
        font-size: .92rem;
    }
}

.row {
    --gutter-x: 1.2em;
    --gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--gutter-y));
    margin-right: calc(-.5 * var(--gutter-x));
    margin-left: calc(-.5 * var(--gutter-x));
}

.product-image-gallery.mb-5.mb-md-4.position-relative {
    margin-bottom: 0rem !important;
}

.tns-lazy-img.tns-complete {
    opacity: 1;
    border-radius: 10px;
}
.header-group, .mod-header-group {
    margin-bottom: 0.5rem;
}

.mod-header-group,
.vertical-module-section .mod-header-group {
    text-align: left;
}

.mod-header,
.vertical-module-section .mod-header {
    justify-content: flex-start;
    margin-bottom: 0.2rem;
    text-align: left;
}

.mod-header .mod-title,
.mod-subtitle {
    text-align: left;
}

.mod-header .mod-title {
    text-transform: none !important;
    color: var(--fm-promo-title, #071329);
    font-size: clamp(1.35rem, 2.2vw, 2.2rem) !important;
    font-weight: 780;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.mod-title.mod-block-title,
.mod-title-date__main,
.mod-title-gift__main,
.mod-title-mono__main {
    color: var(--fm-promo-title, #071329);
    font-size: clamp(1.35rem, 2.2vw, 2.2rem);
    font-weight: 780;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.mod-title.mod-block-title.podaroksert {
    display: inline-flex;
    align-items: center;
    gap: .48rem;
    max-width: 100%;
    margin: 0 0 .65rem;
    padding: .34rem .72rem .36rem;
    border: 1px solid #dfe8f5;
    border-radius: 999px;
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
    color: #071329;
    font-size: clamp(1rem, 1.35vw, 1.28rem) !important;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0 !important;
    text-transform: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

.mod-title.mod-block-title.podaroksert::before {
    content: "";
    width: 1.2rem;
    height: 1.2rem;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #ff2b7a;
    box-shadow: 0 0 0 5px rgba(255, 43, 122, .10);
    mask: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M20 7h-2.18A3 3 0 0 0 12 5.76A3 3 0 0 0 6.18 7H4a2 2 0 0 0-2 2v2a1 1 0 0 0 1 1h1v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7h1a1 1 0 0 0 1-1V9a2 2 0 0 0-2-2ZM9 5a1 1 0 0 1 1 1v1H9a1 1 0 0 1 0-2Zm6 0a1 1 0 0 1 0 2h-1V6a1 1 0 0 1 1-1ZM4 9h7v1H4V9Zm2 3h5v7H6v-7Zm12 7h-5v-7h5v7Zm2-9h-7V9h7v1Z'/%3E%3C/svg%3E") center / 1rem 1rem no-repeat;
    -webkit-mask: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='black' d='M20 7h-2.18A3 3 0 0 0 12 5.76A3 3 0 0 0 6.18 7H4a2 2 0 0 0-2 2v2a1 1 0 0 0 1 1h1v7a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7h1a1 1 0 0 0 1-1V9a2 2 0 0 0-2-2ZM9 5a1 1 0 0 1 1 1v1H9a1 1 0 0 1 0-2Zm6 0a1 1 0 0 1 0 2h-1V6a1 1 0 0 1 1-1ZM4 9h7v1H4V9Zm2 3h5v7H6v-7Zm12 7h-5v-7h5v7Zm2-9h-7V9h7v1Z'/%3E%3C/svg%3E") center / 1rem 1rem no-repeat;
}

.mod-header-group--gift,
.mod-header-group--mono {
    align-items: flex-start;
    text-align: left;
}

.mod-title.mod-block-title.podarok,
.mod-header-group--gift .mod-title.mod-block-title,
.mod-title.mod-block-title.mono,
.mod-header-group--mono .mod-title.mod-block-title {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: .75rem;
    margin: 0;
    text-transform: none !important;
    color: var(--fm-promo-title, #071329);
    font-size: clamp(1.35rem, 2.2vw, 2.2rem) !important;
    font-weight: 780;
    line-height: 1.2;
    letter-spacing: -0.5px !important;
}

.mod-title.mod-block-title.podarok .mod-title-gift__main,
.mod-header-group--gift .mod-title-gift__main,
.mod-title.mod-block-title.mono .mod-title-mono__main,
.mod-header-group--mono .mod-title-mono__main {
    display: inline-block;
    text-transform: none;
    color: var(--fm-promo-title, #071329);
    font-size: clamp(1.35rem, 2.2vw, 2.2rem);
    font-weight: 780;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.mod-title.mod-block-title.podarok .mod-title-gift__icon,
.mod-header-group--gift .mod-title-gift__icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    border: 1px solid rgba(0, 102, 255, .24);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(247, 250, 255, .99)),
        radial-gradient(circle at 18% 12%, rgba(0, 102, 255, .13), transparent 34%);
    box-shadow: 0 10px 26px rgba(15, 23, 42, .06), inset 0 1px 0 rgba(255, 255, 255, .9);
    color: #1168ff;
}

.mod-title.mod-block-title.podarok .mod-title-gift__icon svg,
.mod-header-group--gift .mod-title-gift__icon svg {
    width: 1.18rem;
    height: 1.18rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mod-title.mod-block-title.mono .mod-title-mono__icon,
.mod-header-group--mono .mod-title-mono__icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    border: 1px solid rgba(0, 102, 255, .24);
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(247, 250, 255, .99)),
        radial-gradient(circle at 24% 18%, rgba(241, 17, 126, .13), transparent 34%);
    color: #1168ff;
    box-shadow: none !important;
}

.mod-title.mod-block-title.mono .mod-title-mono__icon::after,
.mod-header-group--mono .mod-title-mono__icon::after {
    content: "";
    position: absolute;
    right: .48rem;
    top: .5rem;
    width: .42rem;
    height: .42rem;
    border-radius: 50%;
    background: rgb(241 17 126);
}

.mod-title.mod-block-title.mono .mod-title-mono__icon svg,
.mod-header-group--mono .mod-title-mono__icon svg {
    width: 1.45rem;
    height: 1.45rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.55;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mod-title.mod-block-title.mono .mono-flower-stem,
.mod-header-group--mono .mono-flower-stem {
    stroke: #109467;
}

.mod-title.mod-block-title.mono .mono-flower-leaf,
.mod-header-group--mono .mono-flower-leaf {
    fill: #24c77a;
    stroke: #109467;
}

.mod-title.mod-block-title.mono .mono-flower-petal,
.mod-header-group--mono .mono-flower-petal {
    fill: #ff5b98;
    stroke: #f1117e;
}

.mod-title.mod-block-title.mono .mono-flower-petal--right,
.mod-header-group--mono .mono-flower-petal--right {
    fill: #6aa6ff;
    stroke: #1168ff;
}

.mod-title.mod-block-title.mono .mono-flower-petal--bottom,
.mod-header-group--mono .mono-flower-petal--bottom {
    fill: #40d690;
    stroke: #109467;
}

.mod-title.mod-block-title.mono .mono-flower-center,
.mod-header-group--mono .mono-flower-center {
    fill: #ffd15c;
    stroke: #f5a900;
    stroke-width: 1.2;
}

.mod-header-group--with-sort {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .45rem 1rem;
    align-items: start;
}

.mod-header-group--with-sort .mod-header {
    grid-column: 1;
    min-width: 0;
}

.mod-header-group--with-sort .mod-subtitle {
    grid-column: 1;
    min-width: 0;
}

.mod-header-group--with-sort .fm-module-sort--attached {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    justify-self: end;
    margin-top: .12rem;
}

.mod-header-group--with-tabs {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .45rem 1rem;
    align-items: start;
}

.mod-header-group--with-tabs .mod-header {
    grid-column: 1;
    min-width: 0;
}

.mod-header-group--with-tabs .mod-subtitle {
    grid-column: 1;
    min-width: 0;
}

.mod-header-group--with-tabs .fm-module-gift-tabs--attached {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    justify-self: end;
    margin-top: .12rem;
}

.mod-header-group--with-mono-tabs {
    grid-template-columns: minmax(12rem, 1fr) minmax(0, min(68vw, 64rem));
}

.mod-header-group--with-mono-tabs .fm-module-gift-tabs--attached {
    width: min(68vw, 64rem);
    max-width: 100%;
    min-width: 0;
}

.fm-module-sort {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .55rem;
    min-width: 0;
}

.fm-module-sort__label {
    color: #667085;
    font-size: .82rem;
    font-weight: 620;
    line-height: 1;
    white-space: nowrap;
}

.fm-module-sort__list {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    min-width: 0;
    flex-wrap: wrap;
}

.fm-module-sort__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15rem;
    padding: .42rem .7rem;
    border: 1px solid #d9e3ef;
    border-radius: 999px;
    background: #fff;
    color: #18243a;
    font: inherit;
    font-size: .92rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: none !important;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

.fm-module-sort__button:hover,
.fm-module-sort__button:focus-visible {
    border-color: #005bff;
    background: #f7faff;
    color: #005bff;
    outline: 0;
}

.fm-module-sort__button.is-active {
    border-color: #005bff;
    background: #005bff;
    color: #fff;
}

.fm-module-sort__button[data-fm-sort="random"] {
    order: -2;
}

.fm-module-sort__button[data-fm-sort="price"] {
    order: -1;
}

.fm-module-sort__button[data-fm-sort="initial"] {
    order: 10;
}

.vm-product-module--showcase .vm-product-card-showcase > [data-fm-sort-item][hidden] {
    display: none !important;
}

.fm-module-gift-tabs {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .55rem;
    min-width: 0;
}

.fm-module-gift-tabs__label {
    color: #667085;
    font-size: .82rem;
    font-weight: 620;
    line-height: 1;
    white-space: nowrap;
}

.fm-module-gift-tabs__list {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    min-width: 0;
    flex-wrap: wrap;
}

.fm-module-gift-tabs__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15rem;
    padding: .42rem .72rem;
    border: 1px solid #d9e3ef;
    border-radius: 999px;
    background: #fff;
    color: #18243a;
    font: inherit;
    font-size: .92rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: none !important;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

.fm-module-gift-tabs__button:hover,
.fm-module-gift-tabs__button:focus-visible {
    border-color: #005bff;
    background: #f7faff;
    color: #005bff;
    outline: 0;
}

.fm-module-gift-tabs__button.is-active {
    border-color: #005bff;
    background: #005bff;
    color: #fff;
}

.fm-module-gift-tabs--mono {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
}

.fm-module-gift-tabs__arrow {
    display: none;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    border: 1px solid #d9e3ef;
    border-radius: 50%;
    background: #fff;
    color: #1168ff;
    font: inherit;
    font-size: 1.35rem;
    font-weight: 760;
    line-height: 1;
    cursor: pointer;
    box-shadow: none !important;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow:hover,
.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow:focus-visible {
    border-color: rgba(0, 102, 255, .42);
    background: #f7faff;
    color: #005bff;
    outline: 0;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow--prev:hover,
.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow--prev:focus-visible {
    transform: translateX(-1px);
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow--next:hover,
.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow--next:focus-visible {
    transform: translateX(1px);
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow span {
    display: block;
    margin-top: -.08rem;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__list {
    flex: 1 1 auto;
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    padding: .08rem .08rem .34rem;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    cursor: grab;
    user-select: none;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__list::-webkit-scrollbar {
    display: none;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__list.is-dragging,
.fm-module-gift-tabs--mono .fm-module-gift-tabs__list.is-gliding {
    cursor: grabbing;
    scroll-behavior: auto;
    scroll-snap-type: none;
}

.fm-module-gift-tabs--mono .fm-module-gift-tabs__button {
    flex: 0 0 auto;
    scroll-snap-align: start;
}

.fm-module-gift-panel[hidden] {
    display: none !important;
}

.fm-module-gift-empty {
    padding: 1rem 1.1rem;
    border: 1px solid #dbe7f6;
    border-radius: 14px;
    background: #f8fbff;
    color: #667085;
    font-size: .95rem;
    line-height: 1.4;
}

.fm-module-more {
    display: flex;
    justify-content: center;
    margin-top: 1.15rem;
}

.fm-module-more__button {
    position: relative;
    display: inline-grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    gap: .52rem;
    min-height: 3rem;
    padding: .55rem .68rem .55rem 1.05rem;
    border: 1px solid rgba(0, 102, 255, .24);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(247, 250, 255, .99));
    color: #0f5ff2;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.fm-module-more__button:hover,
.fm-module-more__button:focus-visible {
    border-color: rgba(0, 102, 255, .42);
    background: #fff;
    color: #0757e4;
    text-decoration: none;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .09);
    transform: translateY(-1px);
}

.fm-module-more__text {
    color: #0b1220;
    font-size: .98rem;
    font-weight: 800;
    line-height: 1;
}

.fm-module-more__meta {
    padding: .33rem .58rem;
    border-radius: 999px;
    background: rgba(0, 102, 255, .08);
    color: #0f5ff2;
    font-size: .74rem;
    font-weight: 750;
    line-height: 1;
}

.fm-module-more__icon {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #1168ff;
    color: #fff;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1;
    transition: transform .18s ease;
}

.fm-module-more__button:hover .fm-module-more__icon,
.fm-module-more__button:focus-visible .fm-module-more__icon {
    transform: translateX(2px);
}

.vm-product-module--showcase .vm-product-card-showcase.is-sorting {
    opacity: .72;
    transition: opacity .14s ease;
}

@media (max-width: 991.98px) {
    .mod-header-group--with-sort,
    .mod-header-group--with-tabs {
        grid-template-columns: 1fr;
    }

    .mod-header-group--with-sort .fm-module-sort--attached,
    .mod-header-group--with-tabs .fm-module-gift-tabs--attached {
        grid-column: 1;
        grid-row: auto;
        justify-self: stretch;
        margin-top: .3rem;
    }

    .mod-header-group--with-mono-tabs .fm-module-gift-tabs--attached {
        width: 100%;
        max-width: 100%;
    }

    .fm-module-gift-tabs--mono .fm-module-gift-tabs__arrow {
        display: none;
    }

    .fm-module-sort,
    .fm-module-gift-tabs {
        justify-content: flex-start;
        width: 100%;
    }

    .fm-module-gift-tabs--mono {
        max-width: 100%;
    }

    .fm-module-sort__list,
    .fm-module-gift-tabs__list {
        justify-content: flex-start;
        flex-wrap: nowrap;
        flex: 1 1 auto;
        min-width: 0;
        margin: 0 -.25rem;
        padding: .1rem .25rem .35rem;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .fm-module-sort__list::-webkit-scrollbar,
    .fm-module-gift-tabs__list::-webkit-scrollbar {
        display: none;
    }

    .fm-module-sort__button,
    .fm-module-gift-tabs__button {
        flex: 0 0 auto;
        min-height: 2rem;
        padding: .4rem .58rem;
        font-size: .76rem;
        scroll-snap-align: start;
    }

    .fm-module-more {
        margin-top: .85rem;
    }

    .fm-module-more__button {
        width: 100%;
        max-width: 22rem;
        justify-content: center;
        min-height: 2.8rem;
        padding: .5rem .55rem .5rem .9rem;
    }

    .fm-module-more__text {
        font-size: .92rem;
    }

    .fm-module-more__meta {
        font-size: .7rem;
    }
}

@media (max-width: 575.98px) {
    .mod-title.mod-block-title.podaroksert {
        gap: .4rem;
        margin-bottom: .55rem;
        padding: .3rem .62rem .32rem;
        font-size: 1rem !important;
        line-height: 1.12;
    }

    .mod-title.mod-block-title.podaroksert::before {
        width: 1.05rem;
        height: 1.05rem;
        mask-size: .9rem .9rem;
        -webkit-mask-size: .9rem .9rem;
    }

    .mod-title.mod-block-title.podarok,
    .mod-header-group--gift .mod-title.mod-block-title,
    .mod-title.mod-block-title.mono,
    .mod-header-group--mono .mod-title.mod-block-title {
        flex-wrap: nowrap;
        gap: .5rem;
        font-size: clamp(1.35rem, 2.2vw, 2.2rem) !important;
    }

    .mod-title.mod-block-title.podarok .mod-title-gift__main,
    .mod-header-group--gift .mod-title-gift__main,
    .mod-title.mod-block-title.mono .mod-title-mono__main,
    .mod-header-group--mono .mod-title-mono__main {
        width: auto;
        min-width: 0;
    }

    .mod-title.mod-block-title.podarok .mod-title-gift__icon,
    .mod-header-group--gift .mod-title-gift__icon,
    .mod-title.mod-block-title.mono .mod-title-mono__icon,
    .mod-header-group--mono .mod-title-mono__icon {
        width: 2.15rem;
        height: 2.15rem;
        border-radius: 12px;
    }

    .mod-title.mod-block-title.podarok .mod-title-gift__icon svg,
    .mod-header-group--gift .mod-title-gift__icon svg,
    .mod-title.mod-block-title.mono .mod-title-mono__icon svg,
    .mod-header-group--mono .mod-title-mono__icon svg {
        width: 1.04rem;
        height: 1.04rem;
    }

    .fm-module-sort,
    .fm-module-gift-tabs {
        align-items: center;
        gap: .42rem;
    }

    .fm-module-sort__label,
    .fm-module-gift-tabs__label {
        flex: 0 0 auto;
        font-size: .74rem;
    }
}

.brand-logo .logo-mafia,
.offcanvas-brand-logo .logo-mafia {
    width: 210px;
    max-width: 100%;
    height: auto;
}

.offcanvas-brand-logo .logo-mafia {
    width: 210px;
}

.header-main .container-inner {
    position: relative;
    padding: .5rem 0;
    transition: padding .2s ease;
}

@media (max-width: 991.98px) {
    .header-content .header-main .container-inner {
        display: flex;
        min-height: 4.5rem;
        padding: .42rem 0;
        align-items: center;
    }

    .header-content .header-main .container-inner > .d-lg-none {
        width: 100%;
    }

    .mobile-header-left,
    .mobile-header-right {
        flex: 0 0 2.75rem;
    }

    .mobile-header-center {
        min-width: 0;
        flex: 1 1 auto;
    }

    .mobile-header-center .brand-logo {
        display: flex;
        min-width: 0;
        height: 3.45rem;
        align-items: center;
        justify-content: center;
    }

    .mobile-header-center .brand-logo .logo-mafia {
        display: block !important;
        width: auto;
        max-width: min(47vw, 180px);
        height: auto;
        max-height: 3.45rem;
        object-fit: contain;
    }
}

@media (min-width: 992px) {
    .header-main .container-inner {
        padding: 1.2rem 0;
    }
}

/* Mobile offcanvas menu */
.block-offcanvas {
    --fm-offcanvas-blue: #1168ff;
    --fm-offcanvas-pink: rgb(241 17 126);
    --fm-offcanvas-ink: #071329;
    --fm-offcanvas-muted: #667085;
    --fm-offcanvas-line: #dbe7f6;
    --fm-offcanvas-soft: #f6f9ff;
    width: min(25rem, calc(100vw - .75rem)) !important;
    max-width: 100%;
    overflow: hidden;
    border: 0;
    background:
        linear-gradient(180deg, rgba(246, 249, 255, .94) 0%, #fff 36%, #fff 100%);
    color: var(--fm-offcanvas-ink);
}

.block-offcanvas .offcanvas-tabs {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 2.3rem;
    gap: .42rem;
    align-items: center;
    padding: .48rem .62rem;
    border-bottom: 1px solid var(--fm-offcanvas-line);
    background: rgba(255, 255, 255, .96);
}

.block-offcanvas .nav-offcanvas-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .18rem;
    min-width: 0;
    padding: .2rem;
    border: 1px solid #e1e9f4;
    border-radius: 13px;
    background: #f3f6fa;
}

.block-offcanvas .nav-offcanvas-tabs::-webkit-scrollbar {
    display: none;
}

.block-offcanvas .nav-offcanvas-tabs .nav-item {
    min-width: 0;
}

.block-offcanvas .nav-offcanvas-tabs .nav-link {
    width: 100%;
    min-width: 0;
    min-height: 2.05rem;
    padding: .38rem .3rem;
    overflow: hidden;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: var(--fm-offcanvas-muted);
    font-size: clamp(.7rem, 3.4vw, .79rem);
    font-weight: 680;
    line-height: 1;
    letter-spacing: 0;
    text-overflow: ellipsis;
    text-transform: none;
    white-space: nowrap;
    box-shadow: none;
    transition: background-color .16s ease, color .16s ease;
}

.block-offcanvas .nav-offcanvas-tabs .nav-link.active {
    background: var(--fm-offcanvas-blue);
    color: #fff;
}

.block-offcanvas .offcanvas-close {
    display: inline-grid;
    place-items: center;
    width: 2.3rem;
    height: 2.3rem;
    padding: 0;
    border: 1px solid var(--fm-offcanvas-line);
    border-radius: 12px;
    background: #fff;
    color: var(--fm-offcanvas-ink);
    box-shadow: none !important;
}

.block-offcanvas .offcanvas-compact-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 3.25rem;
    padding: .48rem .62rem;
    border-bottom: 1px solid var(--fm-offcanvas-line);
    background: rgba(255, 255, 255, .96);
    color: var(--fm-offcanvas-ink);
    font-size: .9rem;
    font-weight: 700;
}

.block-offcanvas .offcanvas-body {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
    padding: .62rem .62rem .7rem;
    background: transparent;
}

.block-offcanvas .offcanvas-body:has(.msm--inline) {
    padding-bottom: 0;
}

.block-offcanvas .tab-content {
    width: 100%;
    height: 100%;
    min-width: 0;
}

.block-offcanvas .tab-pane {
    height: 100%;
    min-width: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.block-offcanvas .tab-pane:has(.msm--inline) {
    overflow: hidden;
}

.block-offcanvas .tab-pane > * {
    min-width: 0;
    max-width: 100%;
}

.block-offcanvas .mod-offcanvas-menu,
.block-offcanvas .mod-offcanvas-menu--sub {
    gap: .48rem;
    margin: 0;
    padding: 0;
}

.block-offcanvas .mod-offcanvas-menu--item {
    min-width: 0;
}

.block-offcanvas .mod-offcanvas-menu--item-anchor {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 3.25rem;
    overflow: hidden;
    border: 1px solid var(--fm-offcanvas-line) !important;
    border-radius: 16px;
    background: #fff !important;
    color: var(--fm-offcanvas-ink) !important;
    text-decoration: none !important;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.block-offcanvas .mod-offcanvas-menu--item-anchor:hover,
.block-offcanvas .mod-offcanvas-menu--item-anchor:focus-visible {
    border-color: rgba(17, 104, 255, .38) !important;
    background: #f8fbff !important;
    color: var(--fm-offcanvas-blue) !important;
}

.block-offcanvas .mod-offcanvas-menu--current > .mod-offcanvas-menu--item-anchor,
.block-offcanvas .mod-offcanvas-menu--active > .mod-offcanvas-menu--item-anchor {
    border-color: rgba(17, 104, 255, .42) !important;
    background: #eef5ff !important;
    color: var(--fm-offcanvas-blue) !important;
}

.block-offcanvas .mod-offcanvas-menu--item-anchor::before {
    content: "";
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
    margin-left: .62rem;
    border: 1px solid #d9e8ff;
    border-radius: 12px;
    background:
        radial-gradient(circle at 50% 50%, var(--fm-offcanvas-blue) 0 .18rem, transparent .2rem),
        linear-gradient(135deg, #eef5ff 0%, #fff 100%);
}

.block-offcanvas .mod-offcanvas-menu--current > .mod-offcanvas-menu--item-anchor::before,
.block-offcanvas .mod-offcanvas-menu--active > .mod-offcanvas-menu--item-anchor::before {
    border-color: rgba(17, 104, 255, .35);
    background:
        radial-gradient(circle at 50% 50%, #fff 0 .18rem, transparent .2rem),
        var(--fm-offcanvas-blue);
}

.block-offcanvas .mod-offcanvas-menu--item-inner {
    display: flex;
    align-items: center;
    min-width: 0;
    flex: 1 1 auto;
    padding: .62rem .72rem;
}

.block-offcanvas .mod-offcanvas-menu--item-title {
    min-width: 0;
    overflow-wrap: anywhere;
    color: inherit !important;
    font-size: .98rem;
    font-weight: 650;
    line-height: 1.18;
    letter-spacing: 0;
    text-transform: none;
}

.block-offcanvas .mod-offcanvas-menu--level-1 > .mod-offcanvas-menu--item-anchor {
    text-transform: none !important;
}

.block-offcanvas .mod-offcanvas-menu--item-sub-opener {
    align-self: stretch;
    min-width: 3rem;
    margin: 0;
    padding: 0 .92rem;
    border: 0 !important;
    border-left: 1px solid var(--fm-offcanvas-line) !important;
    background: transparent !important;
    color: #98a2b3 !important;
}

.block-offcanvas .mod-offcanvas-menu--item-sub-opener > i {
    font-size: .78rem;
}

.block-offcanvas .mod-offcanvas-menu--open > .mod-offcanvas-menu--item-anchor {
    border-color: rgba(17, 104, 255, .42) !important;
    background: #f4f8ff !important;
}

.block-offcanvas .mod-offcanvas-menu--sub {
    display: none;
    padding: .48rem 0 .1rem .72rem;
}

.block-offcanvas .mod-offcanvas-menu--open > .mod-offcanvas-menu--sub {
    display: flex;
}

.block-offcanvas .mod-offcanvas-menu--opening > .mod-offcanvas-menu--sub {
    display: flex;
    overflow: hidden;
    height: 0;
    transition: height .22s ease;
}

.block-offcanvas .mod-offcanvas-menu--sub .mod-offcanvas-menu--item-anchor {
    min-height: 2.75rem;
    border-radius: 14px;
    background: #f9fbff !important;
}

.block-offcanvas .mod-offcanvas-menu--sub .mod-offcanvas-menu--item-anchor::before {
    flex-basis: .5rem;
    width: .5rem;
    height: .5rem;
    margin-left: .8rem;
    border: 0;
    border-radius: 50%;
    background: #b6c7dc;
}

.block-offcanvas .mod-offcanvas-menu--sub .mod-offcanvas-menu--item-title {
    color: #344054 !important;
    font-size: .92rem;
    font-weight: 600;
}

.block-offcanvas .mod-offcanvas-menu--item:not(.mod-offcanvas-menu--deeper) > .mod-offcanvas-menu--item-anchor::after {
    content: "";
    flex: 0 0 .48rem;
    width: .48rem;
    height: .48rem;
    margin-right: .9rem;
    border-right: 2px solid #b6c7dc;
    border-bottom: 2px solid #b6c7dc;
    transform: rotate(-45deg);
}

.block-offcanvas .mod-offcanvas-menu--item-image {
    width: 1.25rem;
    height: 1.25rem;
    object-fit: contain;
}

.block-offcanvas ul.mod-menu,
.block-offcanvas ul.menu {
    display: grid;
    gap: .48rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.block-offcanvas ul.mod-menu li,
.block-offcanvas ul.menu li {
    min-width: 0;
    list-style: none;
}

/* Thematic icons for the Information menu */
.mega-menu-container .mod-megamenu--container .mod-megamenu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-megamenu--item-anchor {
    justify-content: flex-start;
    gap: .72rem;
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-megamenu--item-anchor::before,
.block-offcanvas .mod-offcanvas-menu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-offcanvas-menu--item-anchor::before {
    content: "";
    flex: 0 0 2.1rem;
    width: 2.1rem;
    height: 2.1rem;
    border: 1px solid color-mix(in srgb, var(--fm-info-menu-accent, #1168ff) 28%, #fff);
    border-radius: 13px;
    background-color: var(--fm-info-menu-bg, #eef5ff);
    background-image: var(--fm-info-menu-icon);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.22rem 1.22rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82);
}

.mega-menu-container .mod-megamenu--container .mod-megamenu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-megamenu--item-anchor:hover::before,
.mega-menu-container .mod-megamenu--container .mod-megamenu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-megamenu--item-anchor:focus-visible::before,
.block-offcanvas .mod-offcanvas-menu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-offcanvas-menu--item-anchor:hover::before,
.block-offcanvas .mod-offcanvas-menu--item:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-offcanvas-menu--item-anchor:focus-visible::before {
    border-color: color-mix(in srgb, var(--fm-info-menu-accent, #1168ff) 42%, #fff);
    background-color: color-mix(in srgb, var(--fm-info-menu-accent, #1168ff) 12%, #fff);
}

.block-offcanvas .mod-offcanvas-menu--current:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-offcanvas-menu--item-anchor::before,
.block-offcanvas .mod-offcanvas-menu--active:is(.item-438, .item-440, .item-441, .item-443, .item-444, .item-506) > .mod-offcanvas-menu--item-anchor::before {
    border-color: color-mix(in srgb, var(--fm-info-menu-accent, #1168ff) 46%, #fff);
    background-color: color-mix(in srgb, var(--fm-info-menu-accent, #1168ff) 16%, #fff);
}

.mod-megamenu--item.item-438,
.mod-offcanvas-menu--item.item-438 {
    --fm-info-menu-accent: #1168ff;
    --fm-info-menu-bg: #edf5ff;
    --fm-info-menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231168ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3z'/%3E%3Cpath d='M14 10h3l3 3v3h-6z'/%3E%3Ccircle cx='7' cy='18' r='1.7'/%3E%3Ccircle cx='17' cy='18' r='1.7'/%3E%3Cpath d='M6 10h5'/%3E%3C/svg%3E");
}

.mod-megamenu--item.item-440,
.mod-offcanvas-menu--item.item-440 {
    --fm-info-menu-accent: #16a36f;
    --fm-info-menu-bg: #ecfff6;
    --fm-info-menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a36f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-2.8 7.8-7 10-4.2-2.2-7-5.5-7-10V6z'/%3E%3Cpath d='M8.5 12l2.2 2.2 4.8-5'/%3E%3C/svg%3E");
}

.mod-megamenu--item.item-441,
.mod-offcanvas-menu--item.item-441 {
    --fm-info-menu-accent: #7c5cff;
    --fm-info-menu-bg: #f4f0ff;
    --fm-info-menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c5cff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 5h14v10H8l-3 3z'/%3E%3Cpath d='M8 9h8'/%3E%3Cpath d='M8 12h5'/%3E%3C/svg%3E");
}

.mod-megamenu--item.item-443,
.mod-offcanvas-menu--item.item-443 {
    --fm-info-menu-accent: #ff3d7f;
    --fm-info-menu-bg: #fff0f6;
    --fm-info-menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff3d7f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l6 3v6c0 3.6-2.3 6.5-6 8.5C8.3 18.5 6 15.6 6 12V6z'/%3E%3Cpath d='M9 12l2 2 4-5'/%3E%3C/svg%3E");
}

.mod-megamenu--item.item-444,
.mod-offcanvas-menu--item.item-444 {
    --fm-info-menu-accent: #ff8a00;
    --fm-info-menu-bg: #fff6e8;
    --fm-info-menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff8a00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 7h14l-2 7H8z'/%3E%3Cpath d='M7 7L6 4H3'/%3E%3Ccircle cx='9' cy='19' r='1.5'/%3E%3Ccircle cx='18' cy='19' r='1.5'/%3E%3Cpath d='M11 11h5'/%3E%3C/svg%3E");
}

.mod-megamenu--item.item-506,
.mod-offcanvas-menu--item.item-506 {
    --fm-info-menu-accent: #0f9d7a;
    --fm-info-menu-bg: #eafff8;
    --fm-info-menu-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f9d7a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20v-7'/%3E%3Cpath d='M12 13c-2.5-2.1-2.7-5.1-.3-8 2.4 2.9 2.1 5.9.3 8z'/%3E%3Cpath d='M11.8 16c-2.5-.1-4.1-1.3-4.8-3.7 2.6-.1 4.2 1.1 4.8 3.7z'/%3E%3Cpath d='M12.2 17c2.2-.2 3.6-1.3 4.2-3.4-2.3-.1-3.8 1-4.2 3.4z'/%3E%3C/svg%3E");
}

.block-offcanvas ul.mod-menu a,
.block-offcanvas ul.mod-menu .mod-menu__heading,
.block-offcanvas ul.mod-menu .separator,
.block-offcanvas ul.menu a,
.block-offcanvas ul.menu .separator {
    position: relative;
    display: flex;
    align-items: center;
    gap: .72rem;
    min-height: 3.25rem;
    padding: .66rem 2.25rem .66rem .72rem;
    overflow: hidden;
    border: 1px solid var(--fm-offcanvas-line);
    border-radius: 16px;
    background: #fff;
    color: var(--fm-offcanvas-ink) !important;
    font-size: .98rem;
    font-weight: 650;
    line-height: 1.18;
    letter-spacing: 0;
    text-decoration: none !important;
    text-transform: none !important;
    overflow-wrap: anywhere;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

.block-offcanvas ul.mod-menu a::before,
.block-offcanvas ul.mod-menu .mod-menu__heading::before,
.block-offcanvas ul.mod-menu .separator::before,
.block-offcanvas ul.menu a::before,
.block-offcanvas ul.menu .separator::before {
    content: "";
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
    border: 1px solid #d9e8ff;
    border-radius: 12px;
    background:
        radial-gradient(circle at 50% 50%, var(--fm-offcanvas-blue) 0 .18rem, transparent .2rem),
        linear-gradient(135deg, #eef5ff 0%, #fff 100%);
}

.block-offcanvas ul.mod-menu a::after,
.block-offcanvas ul.menu a::after {
    content: "";
    position: absolute;
    right: 1rem;
    top: 50%;
    width: .48rem;
    height: .48rem;
    border-right: 2px solid #b6c7dc;
    border-bottom: 2px solid #b6c7dc;
    transform: translateY(-50%) rotate(-45deg);
}

.block-offcanvas ul.mod-menu a:hover,
.block-offcanvas ul.mod-menu a:focus-visible,
.block-offcanvas ul.menu a:hover,
.block-offcanvas ul.menu a:focus-visible {
    border-color: rgba(17, 104, 255, .38);
    background: #f8fbff;
    color: var(--fm-offcanvas-blue) !important;
}

.block-offcanvas ul.mod-menu .active > a,
.block-offcanvas ul.mod-menu .current > a,
.block-offcanvas ul.mod-menu a.active,
.block-offcanvas ul.menu .active > a,
.block-offcanvas ul.menu .current > a,
.block-offcanvas ul.menu a.active {
    border-color: rgba(17, 104, 255, .42);
    background: #eef5ff;
    color: var(--fm-offcanvas-blue) !important;
}

.block-offcanvas ul.mod-menu .active > a::before,
.block-offcanvas ul.mod-menu .current > a::before,
.block-offcanvas ul.mod-menu a.active::before,
.block-offcanvas ul.menu .active > a::before,
.block-offcanvas ul.menu .current > a::before,
.block-offcanvas ul.menu a.active::before {
    border-color: rgba(17, 104, 255, .35);
    background:
        radial-gradient(circle at 50% 50%, #fff 0 .18rem, transparent .2rem),
        var(--fm-offcanvas-blue);
}

.block-offcanvas ul.mod-menu ul,
.block-offcanvas ul.menu ul {
    display: grid;
    gap: .4rem;
    margin: .48rem 0 .1rem;
    padding: 0 0 0 .72rem;
    list-style: none;
}

.block-offcanvas ul.mod-menu ul a,
.block-offcanvas ul.menu ul a {
    min-height: 2.75rem;
    border-radius: 14px;
    background: #f9fbff;
    color: #344054 !important;
    font-size: .92rem;
    font-weight: 600;
}

.block-offcanvas ul.mod-menu ul a::before,
.block-offcanvas ul.menu ul a::before {
    flex-basis: .5rem;
    width: .5rem;
    height: .5rem;
    border: 0;
    border-radius: 50%;
    background: #b6c7dc;
}

/* VP Prime Product List */
.utility-horizontal .mod-header,
.utility-horizontal .mod-block-header,
.utility-horizontal-section .mod-header,
.utility-horizontal-section .mod-block-header {
    margin-bottom: .7rem;
}

.utility-horizontal .mod-title,
.utility-horizontal .mod-block-title,
.utility-horizontal-section .mod-title,
.utility-horizontal-section .mod-block-title,
.utility-horizontal-section .mod-row-title {
    color: #111827;
    font-size: clamp(1.05rem, 1.25vw, 1.22rem) !important;
    font-weight: 780;
    line-height: 1.12;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
}

.utility-horizontal .mod-title::first-letter,
.utility-horizontal .mod-block-title::first-letter,
.utility-horizontal-section .mod-title::first-letter,
.utility-horizontal-section .mod-block-title::first-letter,
.utility-horizontal-section .mod-row-title::first-letter {
    text-transform: uppercase;
}

.utility-horizontal-section .container-inner {
    padding: 1rem 0;
}

.fm-vppl {
    --fm-vppl-blue: #1168ff;
    --fm-vppl-pink: #ff2f72;
    --fm-vppl-ink: #111827;
    --fm-vppl-muted: #667085;
    --fm-vppl-line: #e6edf6;
    --fm-vppl-soft: #f7faff;
}

.fm-vppl__list {
    display: grid;
    gap: .72rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.fm-vppl__item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.05rem;
    align-items: center;
    min-width: 0;
    padding: .72rem;
    border: 1px solid var(--fm-vppl-line);
    border-radius: 16px;
    background: #fff;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.fm-vppl__item:hover,
.fm-vppl__item:focus-within {
    border-color: rgba(17, 104, 255, .28);
    background: var(--fm-vppl-soft);
    transform: translateY(-1px);
}

.fm-vppl__media {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border-radius: 13px;
    background: #f3f6fb;
    text-decoration: none;
}

.fm-vppl__media img,
.fm-vppl__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .2s ease;
}

.fm-vppl__item:hover .fm-vppl__media img,
.fm-vppl__item:focus-within .fm-vppl__media img {
    transform: scale(1.025);
}

.fm-vppl__badge {
    position: absolute;
    left: .45rem;
    top: .45rem;
    display: inline-flex;
    align-items: center;
    min-height: 1.32rem;
    padding: .18rem .42rem;
    border-radius: 999px;
    border: 1px solid rgba(22, 199, 93, .24);
    background: rgba(255, 255, 255, .94);
    color: #17a85b;
    font-size: .76rem;
    font-weight: 800;
    line-height: 1;
    text-transform: none;
    box-shadow: none;
    backdrop-filter: blur(8px);
}

.fm-vppl__content {
    display: grid;
    gap: .46rem;
    min-width: 0;
}

.fm-vppl__name {
    display: -webkit-box;
    overflow: hidden;
    color: var(--fm-vppl-ink);
    font-size: .94rem;
    font-weight: 690;
    line-height: 1.25;
    letter-spacing: 0;
    text-decoration: none;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.fm-vppl__name:hover,
.fm-vppl__name:focus-visible {
    color: var(--fm-vppl-blue);
    text-decoration: none;
    outline: 0;
}

.fm-vppl__prices {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .28rem .42rem;
}

.fm-vppl__old-price {
    color: #98a2b3;
    font-size: .82rem;
    font-weight: 620;
    line-height: 1;
    text-decoration: line-through;
    text-decoration-thickness: 1px;
}

.fm-vppl__price {
    color: var(--fm-vppl-pink);
    font-size: 1.05rem;
    font-weight: 830;
    line-height: 1;
    white-space: nowrap;
}

.fm-vppl__discount {
    display: inline-flex;
    align-items: center;
    min-height: 1.32rem;
    padding: .18rem .42rem;
    border-radius: 999px;
    background: #e8fff3;
    color: #079455;
    font-size: .72rem;
    font-weight: 760;
    line-height: 1;
    white-space: nowrap;
}

.fm-vppl__rating {
    max-width: 8rem;
    overflow: hidden;
}

@media (max-width: 1199.98px) {
    .fm-vppl__item {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: .92rem;
        padding: .62rem;
        border-radius: 14px;
    }

    .fm-vppl__name {
        font-size: .88rem;
    }

    .fm-vppl__price {
        font-size: .98rem;
    }
}

@media (max-width: 575.98px) {
    .utility-horizontal .mod-header,
    .utility-horizontal .mod-block-header,
    .utility-horizontal-section .mod-header,
    .utility-horizontal-section .mod-block-header {
        margin-bottom: .55rem;
    }

    .utility-horizontal .mod-title,
    .utility-horizontal .mod-block-title,
    .utility-horizontal-section .mod-title,
    .utility-horizontal-section .mod-block-title,
    .utility-horizontal-section .mod-row-title {
        font-size: 1.05rem !important;
    }

    .fm-vppl__list {
        gap: .58rem;
    }

    .fm-vppl__item {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: .72rem;
        padding: .55rem;
        border-radius: 13px;
    }
}

/* VirtueMart add-to-cart popup */
.virtuemart-dialog {
    --vm-cart-popup-blue: #005bff;
    --vm-cart-popup-pink: #ff2f72;
    --vm-cart-popup-ink: #101828;
    --vm-cart-popup-muted: #667085;
    --vm-cart-popup-line: #e5eaf2;
    --vm-cart-popup-soft: #f5f7fb;
}

.virtuemart-dialog.modal {
    display: none;
}

.virtuemart-dialog.modal.show {
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.virtuemart-dialog .modal-dialog {
    width: min(94vw, 560px);
    max-width: 560px;
    margin: 0 auto !important;
    transform: none !important;
}

.virtuemart-dialog .modal-content {
    overflow: hidden;
    border: 1px solid rgba(229, 234, 242, .95);
    border-radius: 24px;
    background: #fff;
    color: var(--vm-cart-popup-ink);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .28);
}

.virtuemart-dialog .modal-header {
    position: relative;
    display: flex;
    gap: .9rem;
    align-items: center;
    padding: 0.6rem 1.35rem 0.9rem;
    border: 0;
    background: #fff !important;
    color: var(--vm-cart-popup-ink) !important;
}

.virtuemart-dialog .modal-header::before {
    content: "";
    position: relative;
    display: grid;
    place-items: center;
    flex: 0 0 2.35rem;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 50%;
    background: var(--vm-cart-popup-blue);
    box-shadow: none;
}

.virtuemart-dialog .modal-header::after {
    content: "";
    position: absolute;
    left: 2.16rem;
    top: 1.86rem;
    width: .78rem;
    height: .42rem;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    border-radius: 1px;
    transform: rotate(-45deg);
}

.virtuemart-dialog .modal-title {
    margin: 0;
    color: var(--vm-cart-popup-ink);
    font-size: 1.28rem !important;
    font-weight: 850;
    line-height: 1.16;
    letter-spacing: 0;
}

.virtuemart-dialog .close-button-container {
    margin-left: auto;
}

.virtuemart-dialog .btn-close {
    position: relative;
    width: 2.2rem;
    height: 2.2rem;
    margin: 0;
    border-radius: 50%;
    background: var(--vm-cart-popup-soft) !important;
    opacity: 1;
    box-shadow: none !important;
}

.virtuemart-dialog .btn-close::before,
.virtuemart-dialog .btn-close::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: .95rem;
    height: 2px;
    border-radius: 999px;
    background: #475467;
    transform-origin: center;
}

.virtuemart-dialog .btn-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.virtuemart-dialog .btn-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.virtuemart-dialog .btn-close:hover {
    background: #eaf0f8 !important;
}

.virtuemart-dialog .btn-close:hover::before,
.virtuemart-dialog .btn-close:hover::after {
    background: #101828;
}

.virtuemart-dialog .modal-body {
    padding: .25rem 1.35rem 1.1rem;
    color: var(--vm-cart-popup-muted);
    font-size: 1rem;
    line-height: 1.45;
}

.virtuemart-dialog .cart-popup-content,
.virtuemart-dialog .modal-body p {
    margin: 0;
}

.virtuemart-dialog .modal-body strong,
.virtuemart-dialog .modal-body b,
.virtuemart-dialog .cart-popup-content a {
    color: var(--vm-cart-popup-ink);
    font-weight: 750;
    text-decoration: none;
}

.virtuemart-dialog .cart-popup-message {
    margin-bottom: .9rem;
}

.virtuemart-dialog .cart-popup-message p {
    text-align: left !important;
    color: #687486;
    font-size: .98rem;
    line-height: 1.35;
}

.virtuemart-dialog .cart-popup-related-products {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--vm-cart-popup-line);
}

.virtuemart-dialog .cart-popup-related-head {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .22rem;
    margin-bottom: .9rem;
    padding: .78rem .9rem .78rem 1rem;
    border: 1px solid #e8eef7;
    border-radius: 16px;
    background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}

.virtuemart-dialog .cart-popup-related-head span {
    grid-column: 1;
    display: flex;
    align-items: center;
    gap: .48rem;
    color: var(--vm-cart-popup-ink);
    font-size: 1.08rem;
    font-weight: 850;
    line-height: 1.18;
}

.virtuemart-dialog .cart-popup-related-head span::before {
    content: "+";
    display: inline-grid;
    place-items: center;
    width: 1.55rem;
    height: 1.55rem;
    border-radius: 50%;
    background: var(--vm-cart-popup-blue);
    color: #fff;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1;
}

.virtuemart-dialog .cart-popup-related-head small {
    grid-column: 1;
    padding-left: 2.03rem;
    color: #687486;
    font-size: .88rem;
    font-weight: 560;
    line-height: 1.25;
}

.virtuemart-dialog .cart-popup-related-nav {
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
    display: flex;
    gap: .38rem;
    padding-left: .7rem;
}

.virtuemart-dialog .cart-popup-related-nav[hidden] {
    display: none !important;
}

.virtuemart-dialog .cart-popup-related-nav button {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 1px solid #dbe5f3;
    border-radius: 10px;
    background: #fff;
    color: #0b63f6;
    box-shadow: none;
    cursor: pointer;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease, opacity .16s ease;
}

.virtuemart-dialog .cart-popup-related-nav button:hover,
.virtuemart-dialog .cart-popup-related-nav button:focus-visible {
    border-color: #b8cef1;
    background: #edf5ff;
    color: #0757db;
    outline: none;
}

.virtuemart-dialog .cart-popup-related-nav button:disabled {
    border-color: #e8edf5;
    background: #f8fafc;
    color: #aab4c4;
    cursor: default;
    opacity: .72;
}

.virtuemart-dialog .cart-popup-related-nav svg {
    display: block;
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.virtuemart-dialog .cart-popup-related-products .row {
    --gutter-x: .75rem;
    --gutter-y: .75rem;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: .2rem;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    scroll-padding-inline: calc(var(--gutter-x) * .5);
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.virtuemart-dialog .cart-popup-related-products .row::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.virtuemart-dialog .cart-popup-related-products .row > [class*="col-"] {
    display: flex;
    width: 132px;
    max-width: 132px;
    flex: 0 0 132px;
    scroll-snap-align: start;
    scroll-snap-stop: normal;
    padding-right: calc(var(--gutter-x) * .5);
    padding-left: calc(var(--gutter-x) * .5);
}

.virtuemart-dialog .cart-popup-related-products .product-field-display {
    display: flex;
    width: 100%;
    margin-bottom: 0 !important;
}

.virtuemart-dialog .cart-popup-related-products .product-container {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: .38rem;
    width: 100%;
    height: 100%;
    padding: .52rem;
    border: 1px solid #e7edf6;
    border-radius: 14px;
    background: #fff;
}

.virtuemart-dialog .fm-cart-popup-quick-add-form {
    position: absolute;
    right: .52rem;
    bottom: .52rem;
    margin: 0;
}

.virtuemart-dialog .fm-cart-popup-quick-add {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: #0b63f6;
    color: #fff;
    box-shadow: none;
    cursor: pointer;
    transition: background-color .16s ease, transform .16s ease;
}

.virtuemart-dialog .fm-cart-popup-quick-add:hover,
.virtuemart-dialog .fm-cart-popup-quick-add:focus-visible {
    background: #0757db;
    color: #fff;
    outline: none;
    transform: translateY(-1px);
}

.virtuemart-dialog .fm-cart-popup-quick-add:focus-visible {
    box-shadow: 0 0 0 3px rgba(11, 99, 246, .18);
}

.virtuemart-dialog .fm-cart-popup-quick-add:disabled {
    cursor: wait;
    opacity: .72;
    transform: none;
}

.virtuemart-dialog .fm-cart-popup-quick-add.is-added {
    background: #079455;
}

.virtuemart-dialog .fm-cart-popup-quick-add.is-error {
    background: #d92d20;
}

.virtuemart-dialog .fm-cart-popup-quick-add__glyph {
    display: block;
    font-size: 1.35rem;
    font-weight: 500;
    line-height: 1;
    transform: translateY(-.04em);
}

.virtuemart-dialog .fm-cart-popup-quick-status {
    min-height: 1.2rem;
    margin: .5rem .1rem 0;
    color: #079455;
    font-size: .78rem;
    font-weight: 650;
    line-height: 1.25;
}

.virtuemart-dialog .fm-cart-popup-quick-status.is-error {
    color: #d92d20;
}

.virtuemart-dialog .cart-popup-related-products .product-list-images {
    margin-bottom: 0 !important;
}

.virtuemart-dialog .cart-popup-related-products .product-list-images a,
.virtuemart-dialog .cart-popup-related-products .product-list-images img,
.virtuemart-dialog .cart-popup-related-products .product-image {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    border-radius: 11px;
    object-fit: cover;
    object-position: center;
}

.virtuemart-dialog .cart-popup-related-products .product-labels,
.virtuemart-dialog .cart-popup-related-products .product-list-utilities {
    display: none !important;
}

.virtuemart-dialog .cart-popup-related-products .product-name {
    margin: 0 !important;
    text-align: left !important;
}

.virtuemart-dialog .cart-popup-related-products .product-name a {
    display: -webkit-box;
    height: 2.45em;
    overflow: hidden;
    color: var(--vm-cart-popup-ink);
    font-size: .82rem;
    font-weight: 760;
    line-height: 1.22;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.virtuemart-dialog .cart-popup-related-products .product-prices {
    display: flex;
    align-items: flex-end;
    min-height: 2.65rem;
    margin-top: auto;
    padding-right: 2.3rem;
    margin-bottom: 0 !important;
    text-align: left !important;
}

.virtuemart-dialog .cart-popup-related-products .product-price {
    display: grid;
    grid-template-rows: 1rem 1.35rem;
    align-content: end;
    gap: .12rem;
    width: 100%;
    min-height: 2.47rem;
    color: var(--vm-cart-popup-ink);
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.12;
}

.virtuemart-dialog .cart-popup-related-products .product-price-before-discount {
    grid-row: 1;
    display: inline-flex;
    align-items: center;
    color: #98a2b3 !important;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1;
    text-decoration: line-through;
    text-decoration-thickness: 1.5px;
}

.virtuemart-dialog .cart-popup-related-products .product-price-before-discount * {
    color: inherit !important;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

.virtuemart-dialog .cart-popup-related-products .product-price-current-row {
    grid-row: 2;
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .3rem;
    min-width: 0;
}

.virtuemart-dialog .cart-popup-related-products .product-sales-price,
.virtuemart-dialog .cart-popup-related-products .product-sales-price * {
    color: var(--vm-cart-popup-pink) !important;
    font-size: .94rem;
    font-weight: 720;
    line-height: 1.05;
}

.virtuemart-dialog .cart-popup-related-products .product-price-current-row .product-discount-amount {
    position: absolute;
    top: .72rem;
    right: .72rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 1.05rem;
    padding: .06rem .34rem;
    border-radius: 999px;
    background: #e8f8ef;
    color: #079455 !important;
    font-size: .68rem;
    font-weight: 720;
    line-height: 1;
    white-space: nowrap;
}

.virtuemart-dialog .cart-popup-related-products .product-price > .product-discount-amount {
    display: none !important;
}

.virtuemart-dialog .modal-footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
    padding: 1rem 1.35rem 1.35rem;
    border-top: 1px solid var(--vm-cart-popup-line);
    background: #fff;
}

.virtuemart-dialog .modal-footer .btn,
.virtuemart-dialog .modal-footer a {
    width: 100%;
    min-height: 3.05rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    border-radius: 15px !important;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    box-shadow: none !important;
}

.virtuemart-dialog .continue-link {
    border: 1px solid var(--vm-cart-popup-line) !important;
    background: var(--vm-cart-popup-soft) !important;
    color: var(--vm-cart-popup-ink) !important;
}

.virtuemart-dialog .continue-link:hover {
    border-color: #d0d8e7 !important;
    background: #eef4ff !important;
}

.virtuemart-dialog .cart-link {
    border: 0 !important;
    background: var(--vm-cart-popup-blue) !important;
    color: #fff !important;
}

.virtuemart-dialog .cart-link:hover {
    background: #004ce0 !important;
}

.addtocart-button .addtocart-button-icon {
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 auto;
    align-self: center;
    margin: 0;
    line-height: 0;
}

.addtocart-button .addtocart-button-icon svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.85;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.addtocart-button .addtocart-button-label {
    display: block;
    flex: 0 1 auto;
    margin: 0;
    line-height: 1;
}

.addtocart-button.btn,
button.addtocart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    line-height: 1;
    vertical-align: middle;
}

.modal-backdrop.show {
    opacity: .48;
}



@media (max-width: 575.98px) {
    .virtuemart-dialog.modal.show {
        padding: .8rem;
    }

    .virtuemart-dialog .modal-dialog {
        width: 100%;
    }

    .virtuemart-dialog .modal-content {
        border-radius: 20px;
    }

    .virtuemart-dialog .modal-header {
                padding: 0.5rem 1.35rem .7rem;
    }

    .virtuemart-dialog .modal-title {
        font-size: 1.05rem !important;
    }

    .virtuemart-dialog .modal-body {
        padding: .2rem 1rem .9rem;
        font-size: .92rem;
    }

    .virtuemart-dialog .cart-popup-message {
        margin-bottom: .7rem;
    }

    .virtuemart-dialog .cart-popup-message p {
        font-size: .88rem;
    }

    .virtuemart-dialog .cart-popup-related-products {
        margin-top: .82rem;
        padding-top: .82rem;
    }

    .virtuemart-dialog .cart-popup-related-head {
        margin-bottom: .72rem;
        padding: .66rem .72rem;
        border-radius: 14px;
    }

    .virtuemart-dialog .cart-popup-related-head span {
        font-size: .98rem;
    }

    .virtuemart-dialog .cart-popup-related-head span::before {
        width: 1.38rem;
        height: 1.38rem;
        font-size: 1rem;
    }

    .virtuemart-dialog .cart-popup-related-head small {
        padding-left: 1.86rem;
        font-size: .8rem;
    }

    .virtuemart-dialog .cart-popup-related-nav {
        display: none !important;
    }

    .virtuemart-dialog .cart-popup-related-products .row > [class*="col-"] {
        width: 118px;
        max-width: 118px;
        flex-basis: 118px;
    }

    .virtuemart-dialog .modal-footer {
        grid-template-columns: 1fr;
        padding: .9rem 1rem 1rem;
    }
}

/* Compact product cards for VirtueMart product modules */
.vm-product-module--showcase .row {
    --gutter-x: 1.6rem;
    --gutter-y: 1.05rem;
}

.vm-product-module--showcase .product.product-grid-view {
    display: flex;
}

.vm-product-module--showcase .product-container {
    position: relative;
    width: 100%;
    min-width: 0;
    padding: 0 0 .82rem;
    border: 0;
    border-bottom: 1px solid #edf1f7;
    border-radius: 18px;
    background: transparent;
    box-shadow: none;
    overflow: visible;
    transition: transform .18s ease;
}

.vm-product-module--showcase .product-container.mb-4 {
    margin-bottom: .1rem !important;
}

.vm-product-module--showcase .product-container:hover {
    transform: translateY(-2px);
}

.vm-product-module--showcase .product-backdrop {
    display: none !important;
}

.vm-product-module--showcase .product-top-container {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.vm-product-module--showcase .product-list-images {
    position: relative;
    margin-bottom: .62rem !important;
    border-radius: 15px;
    background: #f5f7fb;
    overflow: hidden;
    aspect-ratio: 1 / 1.28;
}

.vm-product-module--showcase .product-list-images a,
.vm-product-module--showcase .product-image-default,
.vm-product-module--showcase .product-image-hover {
    display: block;
    width: 100%;
    height: 100%;
}

.vm-product-module--showcase .product-list-images img,
.vm-product-module--showcase .product-list-images .product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px;
}

.vm-product-module--showcase .product-labels {
    top: .72rem;
    left: .72rem;
    right: .72rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: .38rem;
    align-items: flex-start;
    max-width: calc(100% - 1.44rem);
}

.vm-product-module--showcase .product-label {
    min-width: 0;
    min-height: 0;
    width: auto;
    height: auto;
    aspect-ratio: auto;
    margin: 0;
    padding: .34rem .56rem;
    border-radius: 999px;
    background: #16c75d !important;
    color: #fff !important;
    font-size: .68rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .02em;
    text-transform: uppercase;
    word-break: normal;
    box-shadow: none;
}

.vm-product-module--showcase .product-label-sale {
    background: #ff2f72 !important;
}

.vm-product-module--showcase .product-list-utilities {
    position: absolute;
    top: .62rem;
    right: .62rem;
    z-index: 4;
    display: flex;
    flex-direction: column;
    gap: .42rem;
    opacity: 0;
    transform: translateX(8px);
    transition: opacity .18s ease, transform .18s ease;
}

.vm-product-module--showcase .product-container:hover .product-list-utilities,
.vm-product-module--showcase .product-container:focus-within .product-list-utilities {
    opacity: 1;
    transform: translateX(0);
}

.vm-product-module--showcase .product-list-utility-item {
    margin: 0;
}

.vm-product-module--showcase .product-list-utilities .btn-vme-round > i {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid rgba(225, 232, 243, .95);
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    color: #101828;
    line-height: 1;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .12);
    backdrop-filter: blur(8px);
}

.vm-product-module--showcase .product-list-utilities .btn-vme-round:hover > i,
.vm-product-module--showcase .product-list-utilities .btn-item-added > i {
    border-color: #ff2f72;
    background: #ff2f72 !important;
    color: #fff !important;
}

.vm-product-module--showcase .product-name {
    min-height: 0;
    margin: 0 0 .32rem !important;
    text-align: left !important;
    font-size: .96rem;
    font-weight: 520;
    line-height: 1.22;
    letter-spacing: 0;
}

.vm-product-module--showcase .product-name a {
    color: #1d2939;
    text-decoration: none;
}

.vm-product-module--showcase .product-name a:hover {
    color: #005bff;
}

.vm-product-module--showcase .product-categories,
.vm-product-module--showcase .product-rating {
    text-align: left !important;
}

.vm-product-module--showcase .product-prices {
    margin: 0 !important;
    text-align: left !important;
}

.vm-product-module--showcase .product-prices .product-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .22rem .45rem;
    margin: 0;
}

.vm-product-module--showcase .product-price-current-row,
.vm-product-card-showcase .product-price-current-row {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .35rem;
    min-width: 0;
}

.vm-product-module--showcase .product-price-current-row ~ .product-discount-amount,
.vm-product-card-showcase .product-price-current-row ~ .product-discount-amount {
    display: none !important;
}

.vm-product-module--showcase .product-prices .product-sales-price,
.vm-product-module--showcase .product-prices .PricesalesPrice {
    color: #ff2f72;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.1;
}

.vm-product-module--showcase .product-price-before-discount {
    color: #667085;
    font-size: .88rem;
    font-weight: 650;
    text-decoration: line-through;
}

.vm-product-module--showcase .product-discount-amount,
.vm-product-card-showcase .product-discount-amount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.45rem;
    padding: .22rem .48rem;
    border: 1px solid #bfead3;
    border-radius: 999px;
    background: #eefaf3;
    color: #129052;
    font-size: .76rem;
    font-weight: 760;
    line-height: 1;
    white-space: nowrap;
}

.vm-product-module--showcase .product-bottom-container {
    display: none !important;
}

.vm-product-module--showcase .product-module-cart {
    position: absolute !important;
    left: .72rem;
    right: .72rem;
    bottom: .72rem;
    z-index: 6;
    display: block;
    width: auto;
    margin: 0;
    padding: 0 !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

.vm-product-module--showcase .product-container:hover .product-module-cart,
.vm-product-module--showcase .product-container:focus-within .product-module-cart {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.vm-product-module--showcase .product-short-description {
    display: none !important;
}

.vm-product-module--showcase .product-module-cart .vm-customfields-container,
.vm-product-module--showcase .product-module-cart .product-fields,
.vm-product-module--showcase .product-module-cart .product-field,
.vm-product-module--showcase .product-module-cart .custom-field-C-container {
    display: none !important;
}

.vm-product-module--showcase .addtocart-bar {
    margin: 0;
}

.vm-product-module--showcase .quantity-box,
.vm-product-module--showcase .quantity-controls {
    display: none !important;
}

.vm-product-module--showcase .addtocart-button-container,
.vm-product-module--showcase .addtocart-button {
    display: inline-flex;
    width: 100%;
}

.vm-product-module--showcase .addtocart-button {
    min-height: 2.55rem;
    border: 0 !important;
    border-radius: 12px !important;
    background: #005bff !important;
    color: #fff !important;
    font-size: .86rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-transform: none !important;
    box-shadow: none !important;
    transition: background-color .16s ease, transform .16s ease;
}

.vm-product-module--showcase .addtocart-button:hover,
.vm-product-module--showcase .addtocart-button:focus {
    background: #004ce0 !important;
    transform: translateY(-1px);
}

@media (hover: none) {
    .vm-product-module--showcase .product-list-utilities {
        opacity: 1;
        transform: none;
    }

    .vm-product-module--showcase .product-module-cart {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }
}

@media (max-width: 767.98px) {
    .vm-product-module--showcase .row {
        --gutter-x: .9rem;
        --gutter-y: .95rem;
    }

    .vm-product-module--showcase .product-list-images {
        border-radius: 13px;
    }

    .vm-product-module--showcase .product-list-images img,
    .vm-product-module--showcase .product-list-images .product-image {
        border-radius: 13px;
    }

    .vm-product-module--showcase .product-labels {
        top: .45rem;
        left: .45rem;
        right: .45rem;
        max-width: calc(100% - .9rem);
    }

    .vm-product-module--showcase .product-label {
        padding: .28rem .45rem;
        font-size: .58rem;
    }

    .vm-product-module--showcase .product-list-utilities {
        top: .42rem;
        right: .42rem;
        gap: .28rem;
    }

    .vm-product-module--showcase .product-list-utilities .btn-vme-round > i {
        width: 1.72rem;
        height: 1.72rem;
        font-size: .72rem;
    }

    .vm-product-module--showcase .product-name {
        margin-bottom: .2rem !important;
        font-size: .78rem;
        font-weight: 520;
        line-height: 1.18;
    }

    .vm-product-module--showcase .product-prices .product-sales-price,
    .vm-product-module--showcase .product-prices .PricesalesPrice {
        font-size: 1.08rem;
        font-weight: 700;
    }

    .vm-product-module--showcase .product-discount-amount,
    .vm-product-card-showcase .product-discount-amount {
        min-height: 1.28rem;
        padding: .18rem .38rem;
        font-size: .68rem;
    }

    .vm-product-module--showcase .product-module-cart {
        left: .45rem;
        right: .45rem;
        bottom: .45rem;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .vm-product-module--showcase .addtocart-button {
        min-height: 2.25rem;
        border-radius: 10px !important;
        font-size: .78rem !important;
    }
}

/* Shared showcase cards for category product lists */
.vm-product-card-showcase {
    --gutter-x: 1.6rem;
    --gutter-y: 1.05rem;
}

.vm-product-card-showcase .product.product-grid-view {
    display: flex;
}

.vm-product-card-showcase .product-container {
    position: relative;
    width: 100%;
    min-width: 0;
    padding: 0 0 .82rem;
    border: 0;
    border-bottom: 1px solid #edf1f7;
    border-radius: 18px;
    background: transparent;
    box-shadow: none;
    overflow: visible;
    transition: transform .18s ease;
}

.vm-product-card-showcase .product-container.mb-4 {
    margin-bottom: .1rem !important;
}

.vm-product-card-showcase .product-container:hover {
    transform: translateY(-2px);
}

.vm-product-card-showcase .product-backdrop,
.vm-product-card-showcase .product-bottom-container,
.vm-product-card-showcase .product-short-description {
    display: none !important;
}

.vm-product-card-showcase .product-top-container {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.vm-product-card-showcase .product-list-images {
    position: relative;
    margin-bottom: .62rem !important;
    border-radius: 15px;
    background: #f5f7fb;
    overflow: hidden;
    aspect-ratio: 1 / 1.28;
}

.vm-product-card-showcase .product-list-images a,
.vm-product-card-showcase .product-image-default,
.vm-product-card-showcase .product-image-hover {
    display: block;
    width: 100%;
    height: 100%;
}

.vm-product-card-showcase .product-list-images img,
.vm-product-card-showcase .product-list-images .product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px;
}

.vm-product-card-showcase .product-labels {
    top: .72rem;
    left: .72rem;
    right: .72rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: .38rem;
    align-items: flex-start;
    max-width: calc(100% - 1.44rem);
}

.vm-product-card-showcase .product-label {
    min-width: 0;
    min-height: 0;
    width: auto;
    height: auto;
    aspect-ratio: auto;
    margin: 0;
    padding: .34rem .56rem;
    border-radius: 999px;
    background: #16c75d !important;
    color: #fff !important;
    font-size: .68rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .02em;
    text-transform: uppercase;
    word-break: normal;
    box-shadow: none;
}

.vm-product-card-showcase .product-labels--bento-lead {
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.vm-product-card-showcase .product-label-bento-lead {
    display: inline-flex;
    align-items: center;
    gap: .34rem;
    padding: .4rem .62rem;
    border: 0;
    background: rgb(241 17 126) !important;
    color: #fff !important;
    font-size: .7rem;
    letter-spacing: 0;
    text-transform: none;
    white-space: nowrap;
}

.vm-product-card-showcase .product-label-bento-lead svg {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.vm-product-card-showcase .product-label-sale {
    background: #ff2f72 !important;
}

.vm-product-card-showcase .product-label-discount-percent {
    padding: .38rem .58rem;
    border: 1px solid rgba(22, 199, 93, .24);
    background: rgba(255, 255, 255, .94) !important;
    color: #17a85b !important;
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
    box-shadow: none !important;
    backdrop-filter: blur(8px);
}

.vm-product-card-showcase .product-list-utilities {
    position: absolute;
    top: .62rem;
    right: .62rem;
    z-index: 4;
    display: flex;
    flex-direction: column;
    gap: .42rem;
    opacity: 0;
    transform: translateX(8px);
    transition: opacity .18s ease, transform .18s ease;
}

.vm-product-card-showcase .product-container:hover .product-list-utilities,
.vm-product-card-showcase .product-container:focus-within .product-list-utilities {
    opacity: 1;
    transform: translateX(0);
}

.vm-product-card-showcase .product-list-utility-item {
    margin: 0;
}

.vm-product-card-showcase .product-list-utilities .btn-vme-round > i {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid rgba(225, 232, 243, .95);
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    color: #101828;
    line-height: 1;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .12);
    backdrop-filter: blur(8px);
}

.vm-product-card-showcase .product-list-utilities .btn-vme-round:hover > i,
.vm-product-card-showcase .product-list-utilities .btn-item-added > i {
    border-color: #ff2f72;
    background: #ff2f72 !important;
    color: #fff !important;
}

.vm-product-card-showcase .product-name {
    min-height: 0;
    margin: 0 0 .32rem !important;
    text-align: left !important;
    font-size: .96rem;
    font-weight: 520;
    line-height: 1.22;
    letter-spacing: 0;
}

.vm-product-card-showcase .product-name a {
    color: #1d2939;
    text-decoration: none;
}

.vm-product-card-showcase .product-name a:hover {
    color: #005bff;
}

.vm-product-card-showcase .product-categories,
.vm-product-card-showcase .product-rating,
.vm-product-card-showcase .product-prices {
    text-align: left !important;
}

.vm-product-card-showcase .product-prices {
    margin: 0 !important;
}

.vm-product-card-showcase .product-prices .product-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .22rem .45rem;
    margin: 0;
}

.vm-product-card-showcase .product-prices .product-sales-price,
.vm-product-card-showcase .product-prices .PricesalesPrice {
    color: #ff2f72;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.1;
}

.vm-product-card-showcase .product-price-before-discount {
    color: #667085;
    font-size: .88rem;
    font-weight: 650;
    text-decoration: line-through;
}

.vm-product-card-showcase .product-module-cart {
    position: absolute !important;
    left: .72rem;
    right: .72rem;
    bottom: .72rem;
    z-index: 6;
    display: block;
    width: auto;
    margin: 0;
    padding: 0 !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

.vm-product-card-showcase .product-container:hover .product-module-cart,
.vm-product-card-showcase .product-container:focus-within .product-module-cart {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.vm-product-card-showcase .product-module-cart .vm-customfields-container,
.vm-product-card-showcase .product-module-cart .product-fields,
.vm-product-card-showcase .product-module-cart .product-field,
.vm-product-card-showcase .product-module-cart .custom-field-C-container,
.vm-product-card-showcase .quantity-box,
.vm-product-card-showcase .quantity-controls {
    display: none !important;
}

.vm-product-card-showcase .addtocart-bar {
    margin: 0;
}

.vm-product-card-showcase .addtocart-button-container,
.vm-product-card-showcase .addtocart-button {
    display: inline-flex;
    width: 100%;
}

.vm-product-card-showcase .addtocart-button {
    min-height: 2.55rem;
    border: 0 !important;
    border-radius: 12px !important;
    background: #005bff !important;
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: none !important;
    box-shadow: none !important;
    transition: background-color .16s ease, transform .16s ease;
}

.vm-product-card-showcase .addtocart-button:hover,
.vm-product-card-showcase .addtocart-button:focus {
    background: #004ce0 !important;
    transform: translateY(-1px);
}

@media (hover: none) {
    .vm-product-card-showcase .product-list-utilities,
    .vm-product-card-showcase .product-module-cart {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }
}

@media (max-width: 767.98px) {
    .vm-product-card-showcase {
        --gutter-x: .9rem;
        --gutter-y: .95rem;
    }

    .vm-product-card-showcase .product-container {
        padding-bottom: .7rem;
        border-radius: 14px;
    }

    .vm-product-card-showcase .product-list-images {
        border-radius: 13px;
    }

    .vm-product-card-showcase .product-list-images img,
    .vm-product-card-showcase .product-list-images .product-image {
        border-radius: 13px;
    }

    .vm-product-card-showcase .product-labels {
        top: .45rem;
        left: .45rem;
        right: .45rem;
        max-width: calc(100% - .9rem);
    }

    .vm-product-card-showcase .product-label {
        padding: .28rem .45rem;
        font-size: .58rem;
    }

    .vm-product-card-showcase .product-list-utilities {
        top: .42rem;
        right: .42rem;
        gap: .28rem;
    }

    .vm-product-card-showcase .product-list-utilities .btn-vme-round > i {
        width: 1.72rem;
        height: 1.72rem;
        font-size: .72rem;
    }

    .vm-product-card-showcase .product-name {
        margin-bottom: .2rem !important;
        font-size: .78rem;
        font-weight: 520;
        line-height: 1.18;
    }

    .vm-product-card-showcase .product-prices .product-sales-price,
    .vm-product-card-showcase .product-prices .PricesalesPrice {
        font-size: 1.08rem;
        font-weight: 700;
    }

    .vm-product-card-showcase .product-module-cart {
        left: .45rem;
        right: .45rem;
        bottom: .45rem;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .vm-product-card-showcase .addtocart-button {
        min-height: 2.25rem;
        border-radius: 10px !important;
        font-size: .78rem !important;
    }
}

/* Product card: cart plus a direct Telegram inquiry */
.vm-product-module--showcase .fm-product-card-actions,
.vm-product-card-showcase .fm-product-card-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 42px;
    gap: 0;
    width: calc(100% - 12px);
    max-width: 310px;
    height: 38px;
    margin-inline: auto;
    border-radius: 11px;
    background: #005bff;
    overflow: hidden;
}

.vm-product-module--showcase .fm-product-card-actions .addtocart-area,
.vm-product-module--showcase .fm-product-card-actions .product,
.vm-product-module--showcase .fm-product-card-actions .addtocart-bar,
.vm-product-module--showcase .fm-product-card-actions .addtocart-button-container,
.vm-product-card-showcase .fm-product-card-actions .addtocart-area,
.vm-product-card-showcase .fm-product-card-actions .product,
.vm-product-card-showcase .fm-product-card-actions .addtocart-bar,
.vm-product-card-showcase .fm-product-card-actions .addtocart-button-container {
    width: 100%;
    height: 100%;
    min-width: 0;
    margin: 0;
}

.vm-product-module--showcase .fm-product-card-actions .addtocart-button,
.vm-product-card-showcase .fm-product-card-actions .addtocart-button {
    height: 38px;
    min-height: 38px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-radius: 11px 0 0 11px !important;
    transform: none !important;
}

.vm-product-module--showcase .product-list-images .fm-product-card-telegram,
.vm-product-card-showcase .product-list-images .fm-product-card-telegram {
    display: inline-grid;
    place-items: center;
    width: 100%;
    height: 38px;
    min-width: 0;
    min-height: 38px;
    border: 0;
    border-radius: 0 11px 11px 0;
    background: #229ed9;
    color: #fff;
    text-decoration: none;
    transition: background-color .16s ease;
}

.vm-product-module--showcase .product-list-images .fm-product-card-telegram:hover,
.vm-product-module--showcase .product-list-images .fm-product-card-telegram:focus-visible,
.vm-product-card-showcase .product-list-images .fm-product-card-telegram:hover,
.vm-product-card-showcase .product-list-images .fm-product-card-telegram:focus-visible {
    background: #178bc2;
    color: #fff;
    outline: 0;
}

.vm-product-module--showcase .product-list-images .fm-product-card-telegram svg,
.vm-product-card-showcase .product-list-images .fm-product-card-telegram svg {
    display: block;
    width: 1.22rem;
    height: 1.22rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 767.98px) {
    .vm-product-module--showcase .fm-product-card-actions,
    .vm-product-card-showcase .fm-product-card-actions {
        grid-template-columns: minmax(0, 1fr) 32px;
        width: 100%;
        max-width: none;
        height: 30px;
        border-radius: 9px;
    }

    .vm-product-module--showcase .fm-product-card-actions .addtocart-button,
    .vm-product-card-showcase .fm-product-card-actions .addtocart-button,
    .fm-product-card-telegram {
        height: 30px;
        min-height: 30px;
    }

    .vm-product-module--showcase .fm-product-card-actions .addtocart-button,
    .vm-product-card-showcase .fm-product-card-actions .addtocart-button {
        gap: .3rem;
        padding-right: .35rem !important;
        padding-left: .35rem !important;
        border-radius: 9px 0 0 9px !important;
        font-size: .68rem !important;
    }

    .vm-product-module--showcase .fm-product-card-actions .addtocart-button-icon,
    .vm-product-card-showcase .fm-product-card-actions .addtocart-button-icon {
        width: 13px;
        height: 13px;
    }

    .vm-product-module--showcase .product-list-images .fm-product-card-telegram,
    .vm-product-card-showcase .product-list-images .fm-product-card-telegram {
        height: 30px;
        min-height: 30px;
        border-radius: 0 9px 9px 0;
    }

    .vm-product-module--showcase .product-list-images .fm-product-card-telegram svg,
    .vm-product-card-showcase .product-list-images .fm-product-card-telegram svg {
        width: 14px;
        height: 14px;
    }
}

/* Cart / Joomla system notices */
#system-message-container {
    margin: 0 auto 1.25rem;
}

#system-message-container .alert,
#system-message-container joomla-alert {
    position: relative;
    display: flex !important;
    align-items: center;
    gap: .8rem;
    min-height: 3.6rem;
    margin: 0 0 1rem !important;
    padding: .85rem 3.25rem .85rem 1rem !important;
    border: 1px solid #dbe7f6 !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #f7fbff 0%, #ffffff 100%) !important;
    color: #172033 !important;
    box-shadow: none !important;
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.35;
}

#system-message-container .alert::before,
#system-message-container joomla-alert::before {
    content: "";
    flex: 0 0 2.15rem;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 999px;
    background-color: #005bff;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 6L9 17l-5-5' stroke='white' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    box-shadow: 0 8px 18px rgba(0, 91, 255, .18);
}

#system-message-container joomla-alert .alert-heading {
    display: none !important;
}

#system-message-container .alert .alert-heading,
#system-message-container .alert h4,
#system-message-container .alert .message,
#system-message-container .alert-message,
#system-message-container joomla-alert .alert-wrapper,
#system-message-container joomla-alert .alert-message {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    color: inherit !important;
    background: transparent !important;
    font: inherit !important;
}

#system-message-container joomla-alert .alert-wrapper {
    width: auto !important;
}

#system-message-container .alert > .fa,
#system-message-container .alert > .icon-info,
#system-message-container .alert > .icon-info-circle,
#system-message-container .alert > [class*="icon-"]:first-child {
    display: none !important;
}

#system-message-container .alert-info,
#system-message-container joomla-alert[type="info"],
#system-message-container joomla-alert[type="notice"] {
    border-color: #d8e7ff !important;
    background: linear-gradient(135deg, #f3f8ff 0%, #ffffff 100%) !important;
}

#system-message-container .alert-success,
#system-message-container joomla-alert[type="success"],
#system-message-container joomla-alert[type="message"] {
    border-color: #d7f2e4 !important;
    background: linear-gradient(135deg, #f2fbf7 0%, #ffffff 100%) !important;
}

#system-message-container .alert-warning,
#system-message-container joomla-alert[type="warning"] {
    border-color: #ffe4b8 !important;
    background: linear-gradient(135deg, #fff8ec 0%, #ffffff 100%) !important;
}

#system-message-container .alert-danger,
#system-message-container .alert-error,
#system-message-container joomla-alert[type="danger"],
#system-message-container joomla-alert[type="error"] {
    border-color: #ffd0dc !important;
    background: linear-gradient(135deg, #fff4f8 0%, #ffffff 100%) !important;
}

#system-message-container .alert-warning::before,
#system-message-container joomla-alert[type="warning"]::before {
    background-color: #ffb020;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 8v5' stroke='white' stroke-width='2.8' stroke-linecap='round'/%3E%3Cpath d='M12 17h.01' stroke='white' stroke-width='3.6' stroke-linecap='round'/%3E%3C/svg%3E");
}

#system-message-container .alert-danger::before,
#system-message-container .alert-error::before,
#system-message-container joomla-alert[type="danger"]::before,
#system-message-container joomla-alert[type="error"]::before {
    background-color: #ff2f73;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 6L6 18M6 6l12 12' stroke='white' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E");
}

#system-message-container .alert .close,
#system-message-container .alert .btn-close,
#system-message-container joomla-alert .joomla-alert--close,
#system-message-container joomla-alert .joomla-alert-button--close {
    position: absolute !important;
    top: 50% !important;
    right: .85rem !important;
    inset-inline-end: .85rem !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f1f5fb !important;
    color: #6f7b8c !important;
    opacity: 1 !important;
    transform: translateY(-50%);
    box-shadow: none !important;
    text-shadow: none !important;
    font-size: 0 !important;
    line-height: 1 !important;
}

#system-message-container .alert .close::before,
#system-message-container .alert .btn-close::before,
#system-message-container joomla-alert .joomla-alert--close::before,
#system-message-container joomla-alert .joomla-alert-button--close::before {
    content: "×";
    color: currentColor;
    font-size: 1.45rem;
    font-weight: 500;
    line-height: 1;
}

#system-message-container .alert .close span,
#system-message-container .alert .btn-close span,
#system-message-container joomla-alert .joomla-alert--close span,
#system-message-container joomla-alert .joomla-alert-button--close span {
    display: none !important;
}

#system-message-container .alert .close:hover,
#system-message-container .alert .btn-close:hover,
#system-message-container joomla-alert .joomla-alert--close:hover,
#system-message-container joomla-alert .joomla-alert-button--close:hover {
    background: #e8eef7 !important;
    color: #172033 !important;
}

@media (max-width: 767.98px) {
    #system-message-container {
        margin-bottom: .75rem;
    }

    #system-message-container .alert,
    #system-message-container joomla-alert {
        min-height: 3.25rem;
        padding: .75rem 2.9rem .75rem .8rem !important;
        border-radius: 14px !important;
        font-size: .93rem;
    }

    #system-message-container .alert::before,
    #system-message-container joomla-alert::before {
        flex-basis: 1.9rem;
        width: 1.9rem;
        height: 1.9rem;
        background-size: 1.05rem;
    }
}

/* Floating system toasts */
#system-message-container {
    position: fixed !important;
    top: calc(env(safe-area-inset-top, 0px) + 1rem) !important;
    right: 1rem !important;
    left: auto !important;
    z-index: 12000 !important;
    display: grid !important;
    width: min(38rem, calc(100vw - 2rem)) !important;
    margin: 0 !important;
    gap: .75rem !important;
    pointer-events: none !important;
}

#system-message-container .alert,
#system-message-container joomla-alert {
    min-height: 4rem !important;
    margin: 0 !important;
    padding: .95rem 3.35rem .95rem 1rem !important;
    border-color: rgba(219, 231, 246, .95) !important;
    border-radius: 20px !important;
    background: linear-gradient(135deg, rgba(247, 251, 255, .96), rgba(255, 255, 255, .99)) !important;
    box-shadow: 0 1.35rem 3.2rem rgba(22, 36, 58, .15), 0 .35rem 1rem rgba(22, 36, 58, .08) !important;
    pointer-events: auto !important;
    animation: fm-system-toast-in .24s ease-out both;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

#system-message-container .alert::before,
#system-message-container joomla-alert::before {
    flex-basis: 2.35rem !important;
    width: 2.35rem !important;
    height: 2.35rem !important;
}

#system-message-container .alert-success::before,
#system-message-container joomla-alert[type="success"]::before,
#system-message-container joomla-alert[type="message"]::before {
    background-color: #18c56e !important;
    box-shadow: 0 8px 18px rgba(24, 197, 110, .2) !important;
}

#system-message-container .alert-warning,
#system-message-container joomla-alert[type="warning"],
#system-message-container .fm-coupon-warning {
    border-color: rgba(255, 176, 32, .45) !important;
    background: linear-gradient(135deg, rgba(255, 248, 235, .98), rgba(255, 255, 255, .99)) !important;
    box-shadow: 0 1.45rem 3.4rem rgba(255, 176, 32, .18), 0 .35rem 1rem rgba(22, 36, 58, .08) !important;
}

#system-message-container .alert-warning::before,
#system-message-container joomla-alert[type="warning"]::before,
#system-message-container .fm-coupon-warning::before {
    background-color: #ffb020 !important;
    box-shadow: 0 8px 18px rgba(255, 176, 32, .22) !important;
}

#system-message-container .alert .close::before,
#system-message-container .alert .btn-close::before,
#system-message-container joomla-alert .joomla-alert--close::before,
#system-message-container joomla-alert .joomla-alert-button--close::before {
    content: "" !important;
    width: .8rem;
    height: .8rem;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2l10 10M12 2 2 12' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2l10 10M12 2 2 12' stroke='black' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

@keyframes fm-system-toast-in {
    from {
        opacity: 0;
        transform: translate3d(.85rem, -.35rem, 0) scale(.985);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
    }
}

@media (max-width: 767.98px) {
    #system-message-container {
        top: calc(env(safe-area-inset-top, 0px) + .75rem) !important;
        right: .75rem !important;
        left: .75rem !important;
        width: auto !important;
    }

    #system-message-container .alert,
    #system-message-container joomla-alert {
        min-height: 3.45rem !important;
        padding: .78rem 2.9rem .78rem .82rem !important;
        border-radius: 16px !important;
        font-size: .9rem !important;
    }
}

/* Empty cart */
#cart-view .cart-is-empty-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 46rem;
    margin: clamp(2rem, 6vw, 5rem) auto;
    padding: clamp(1.4rem, 4vw, 2.4rem);
    border: 1px solid #dce7f5;
    border-radius: 26px;
    background:
        linear-gradient(135deg, rgba(0, 91, 255, .055), rgba(255, 47, 115, .045)),
        #fff;
    text-align: center;
    box-shadow: none;
}

#cart-view .empty-cart-visual {
    display: grid;
    place-items: center;
    width: clamp(7.2rem, 16vw, 10.5rem);
    height: clamp(7.2rem, 16vw, 10.5rem);
    margin-bottom: 1rem;
    border-radius: 32px;
    background: #f3f7ff;
    color: #005bff;
}

#cart-view .empty-cart-illustration {
    width: 78%;
    height: 78%;
}

#cart-view .empty-cart-bag {
    fill: #ffffff;
    stroke: #cddcf0;
    stroke-width: 5;
    stroke-linejoin: round;
}

#cart-view .empty-cart-handle,
#cart-view .empty-cart-stem {
    fill: none;
    stroke: #005bff;
    stroke-width: 7;
    stroke-linecap: round;
}

#cart-view .empty-cart-leaf {
    fill: #dff7ea;
    stroke: #18c76a;
    stroke-width: 4;
    stroke-linejoin: round;
}

#cart-view .empty-cart-flower {
    fill: #ff2f73;
}

#cart-view .empty-cart-flower-left,
#cart-view .empty-cart-flower-right {
    fill: #ff7aa8;
}

#cart-view .empty-cart-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    margin: 0 0 .55rem;
    padding: .34rem .78rem;
    border: 1px solid #dbe7f6;
    border-radius: 999px;
    background: #fff;
    color: #667085;
    font-size: .86rem;
    font-weight: 650;
    line-height: 1;
}

#cart-view .empty-cart-heading {
    max-width: 38rem;
    margin: 0;
    color: #111827;
    font-size: clamp(2rem, 4.2vw, 3.35rem);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: 0;
}

#cart-view .empty-cart-subheading {
    max-width: 36rem;
    margin: .8rem 0 0;
    color: #667085;
    font-size: clamp(1rem, 1.55vw, 1.2rem);
    font-weight: 430;
    line-height: 1.45;
}

#cart-view .empty-cart-benefits {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .55rem;
    margin: 1.15rem 0 1.35rem;
}

#cart-view .empty-cart-benefits span {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-height: 2.15rem;
    padding: .44rem .78rem;
    border: 1px solid #e1e9f4;
    border-radius: 999px;
    background: #fff;
    color: #344054;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.15;
}

#cart-view .empty-cart-benefits span::before {
    content: "";
    width: .48rem;
    height: .48rem;
    border-radius: 999px;
    background: #18c76a;
}

#cart-view .empty-cart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-width: min(100%, 17rem);
    min-height: 3.55rem;
    padding: .9rem 1.35rem;
    border: 0;
    border-radius: 18px;
    background: #005bff;
    color: #fff;
    font-size: 1.05rem;
    font-weight: 760;
    line-height: 1;
    text-decoration: none;
    box-shadow: none;
    transition: background-color .16s ease, transform .16s ease;
}

#cart-view .empty-cart-button svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

#cart-view .empty-cart-button:hover,
#cart-view .empty-cart-button:focus-visible {
    background: #004ce0;
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
}

@media (max-width: 767.98px) {
    #cart-view .cart-is-empty-section {
        margin: 1.15rem auto 1.8rem;
        padding: 1rem;
        border-radius: 20px;
    }

    #cart-view .empty-cart-visual {
        width: 6.4rem;
        height: 6.4rem;
        margin-bottom: .85rem;
        border-radius: 24px;
    }

    #cart-view .empty-cart-kicker {
        min-height: 1.8rem;
        margin-bottom: .45rem;
        font-size: .78rem;
    }

    #cart-view .empty-cart-heading {
        font-size: 1.75rem;
        line-height: 1.08;
    }

    #cart-view .empty-cart-subheading {
        margin-top: .55rem;
        font-size: .96rem;
        line-height: 1.35;
    }

    #cart-view .empty-cart-benefits {
        gap: .42rem;
        margin: .9rem 0 1rem;
    }

    #cart-view .empty-cart-benefits span {
        min-height: 1.95rem;
        padding: .38rem .58rem;
        font-size: .78rem;
    }

    #cart-view .empty-cart-button {
        width: 100%;
        min-height: 3.1rem;
        border-radius: 15px;
        font-size: .98rem;
    }
}

#cart-view .checkout-sidebar-coupon:not(.is-open) .checkout-sidebar-coupon__panel {
    display: none !important;
}

#cart-view .checkout-sidebar-coupon.is-open .checkout-sidebar-coupon__panel {
    display: block !important;
}

@media (min-width: 992px) {
    .header-right-lg .jewel-group .vpi-lg {
        font-size: 1rem !important;
    }
}

/* Clean light footer */
.bottom-section,
.footer-area {
    background: #f5f5f5 !important;
    color: #475467 !important;
    border-color: #e3e8ef !important;
}

.bottom-section {
    padding: 3.4rem 0 2.6rem !important;
}

.bottom-section .container-inner,
.footer-area .container-inner {
    border-color: #e3e8ef !important;
}

.footer-area .container-inner {
    padding: 0.7rem 0;
}

.bottom-section .container-inner {
    padding: 1.5rem 0 .5rem;
}

.bottom-section .module-title,
.bottom-section .mod-title,
.bottom-section h1,
.bottom-section h2,
.bottom-section h3,
.bottom-section h4,
.bottom-section h5,
.bottom-section h6 {
    color: #07162f !important;
    font-size: .92rem !important;
    font-weight: 850 !important;
    letter-spacing: .02em !important;
    text-transform: uppercase;
    margin-bottom: 1rem !important;
}

.bottom-section p,
.bottom-section li,
.bottom-section .custom,
.bottom-section .mod-custom,
.bottom-section .menu,
.bottom-section .nav {
    color: #667085 !important;
    font-size: .95rem;
    line-height: 1.55;
}

.bottom-section a,
.footer-area a {
    color: #344054 !important;
    text-decoration: none !important;
}

.bottom-section a:hover,
.bottom-section a:focus-visible,
.footer-area a:hover,
.footer-area a:focus-visible {
    color: #005bff !important;
}

.bottom-section i,
.bottom-section .icon,
.bottom-section .fa,
.bottom-section .fas,
.bottom-section .far,
.bottom-section .fab {
    color: #005bff !important;
}

.bottom-section img {
    opacity: .92;
}

.footer-area {
    background: #ebebeb !important;
    padding: 1.05rem 0 !important;
    border-top: 1px solid #e3e8ef !important;
}

.fm-footer-copyright {
    color: #667085;
    font-size: .8rem;
    font-weight: 500;
    letter-spacing: 0;
}

/* Footer modules: compact marketplace-style layout */
.bottom-horizontal-section > .row {
    display: grid !important;
    grid-template-columns: minmax(300px, 1.45fr) repeat(4, minmax(128px, .64fr));
    gap: clamp(1.25rem, 2.4vw, 2.8rem);
    align-items: start;
    margin: 0 !important;
}

.bottom-horizontal-section > .row::before,
.bottom-horizontal-section > .row::after {
    display: none !important;
    content: none !important;
}

.bottom-horizontal-section > .row > .mod-row {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}

.bottom-horizontal-section > .row > .mod-row:has(.fm-footer-contacts) .mod-header-group {
    display: none !important;
}

.bottom-horizontal-section .mod-header,
.bottom-horizontal-section .mod-block-header,
.bottom-horizontal-section .mod-row-title,
.bottom-horizontal-section .mod-title {
    margin: 0 0 .35rem !important;
    padding: 0 !important;
    color: #071329 !important;
    font-size: .96rem !important;
    font-weight: 780 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.bottom-horizontal-section .mod-row-body,
.bottom-horizontal-section .mod-block-body {
    margin: 0 !important;
}

.bottom-horizontal-section ul,
.bottom-horizontal-section .menu,
.bottom-horizontal-section .nav {
    display: grid;
    gap: .88rem;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.bottom-horizontal-section li {
    margin: 0 !important;
    padding: 0 !important;
}

.bottom-horizontal-section a {
    color: #27364f !important;
    font-size: .98rem !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
}

.bottom-horizontal-section a:hover,
.bottom-horizontal-section a:focus-visible {
    color: #1168ff !important;
}

@media (max-width: 991px) {
    .bottom-section {
        padding: 2.2rem 0 1.8rem !important;
    }

    .bottom-horizontal-section > .row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1.7rem 1.1rem;
    }

    .bottom-horizontal-section > .row > .mod-row:has(.fm-footer-contacts) {
        grid-column: 1 / -1;
    }

    .bottom-horizontal-section ul,
    .bottom-horizontal-section .menu,
    .bottom-horizontal-section .nav {
        gap: .56rem;
    }

    .bottom-horizontal-section a {
        font-size: .94rem !important;
    }
}

@media (max-width: 520px) {
    .bottom-section {
        padding: 1.55rem 0 1.35rem !important;
    }

    .bottom-horizontal-section > .row {
        gap: 1.35rem .9rem;
    }

    .bottom-horizontal-section .mod-header,
    .bottom-horizontal-section .mod-block-header,
    .bottom-horizontal-section .mod-row-title,
    .bottom-horizontal-section .mod-title {
        margin-bottom: .78rem !important;
        font-size: .88rem !important;
    }

    .bottom-horizontal-section a {
        font-size: .88rem !important;
        line-height: 1.25 !important;
    }
}

.mod-vpprime-ajax-search {
    position: relative;
    z-index: 2147483000;
    isolation: auto;
}

.vpprimeajaxsearch-container {
    z-index: 2147483000 !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    max-height: min(34rem, calc(100vh - 9rem)) !important;
    margin: .55rem 0 0 !important;
    padding: .55rem !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 1px solid rgba(0, 102, 255, .16);
    border-radius: 20px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 20px 48px rgba(15, 23, 42, .14);
    color: #101828;
    scrollbar-width: thin;
    scrollbar-color: rgba(17, 104, 255, .38) transparent;
}

.vpprimeajaxsearch-container::-webkit-scrollbar {
    width: .45rem;
}

.vpprimeajaxsearch-container::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(17, 104, 255, .38);
}

.vpprimeajaxsearch-suggestion-body {
    margin: 0 !important;
}

.vpprimeajaxsearch-suggestion-content {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
}

.vpprimeajaxsearch-suggestion-body::before,
.vpprimeajaxsearch-suggestion-body::after,
.vpprimeajaxsearch-suggestion-content::before,
.vpprimeajaxsearch-suggestion-content::after {
    display: none !important;
    content: none !important;
}

.vpprimeajaxsearch-suggestion {
    width: auto !important;
    float: none !important;
    display: block !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
}

.searched-product {
    position: relative;
    display: grid !important;
    grid-template-columns: 5rem minmax(0, 1fr);
    gap: .72rem;
    align-items: center;
    min-height: 6rem;
    padding: .62rem;
    border: 1px solid #e2eaf5;
    border-radius: 16px;
    background: #fff;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.searched-product:hover {
    border-color: rgba(0, 102, 255, .34);
    background: #f8fbff;
    transform: translateY(-1px);
}

.searched-product-image,
.searched-product-info {
    display: block !important;
    width: auto !important;
    float: none !important;
    padding: 0 !important;
}

.searched-product-image a {
    display: block;
    position: relative;
    z-index: 2;
}

.searched-product-image img {
    display: block;
    width: 5rem !important;
    height: 5rem !important;
    max-width: none !important;
    object-fit: cover;
    border-radius: 12px;
    background: #f1f5fb;
}

.searched-product-info {
    min-width: 0;
}

.searched-product-info-inner {
    display: grid;
    gap: .28rem;
    width: 100%;
    min-width: 0;
}

.searched-product-title {
    margin: 0 !important;
    color: #111827;
    font-size: .95rem;
    font-weight: 560 !important;
    line-height: 1.24;
}

.searched-product-title a {
    display: -webkit-box;
    overflow: hidden;
    color: inherit;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.searched-product-category {
    display: -webkit-box;
    overflow: hidden;
    margin: 0 !important;
    color: #7a8798 !important;
    font-size: .76rem;
    font-weight: 520;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.searched-product-price {
    margin: .05rem 0 0 !important;
    color: #ff2f72 !important;
    font-size: 1rem;
    font-weight: 850;
    line-height: 1;
}

.searched-product-price .vm-price-desc {
    display: none;
}

.searched-product-overlay {
    z-index: 1;
    border-radius: inherit;
}

.vpprimeajaxsearch-suggestion-footer {
    margin-top: .55rem;
    padding: .25rem 0 0;
    border-top: 1px solid #edf2f8;
    background: transparent !important;
}

.vpprimeajaxsearch-suggestion-footer .vpprimeajaxsearch-viewall {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    width: 100%;
    min-height: 2.75rem;
    padding: .55rem 1rem !important;
    border: 1px solid rgba(0, 102, 255, .22);
    border-radius: 999px;
    background: #1168ff;
    color: #fff !important;
    font-size: .94rem;
    font-weight: 800;
    line-height: 1;
    text-align: center;
    text-decoration: none !important;
    transition: background-color .16s ease, transform .16s ease;
}

.vpprimeajaxsearch-suggestion-footer .vpprimeajaxsearch-viewall::after {
    content: "→";
    display: inline-grid;
    place-items: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, .16);
    font-size: .95rem;
}

.vpprimeajaxsearch-suggestion-footer .vpprimeajaxsearch-viewall:hover,
.vpprimeajaxsearch-suggestion-footer .vpprimeajaxsearch-viewall:focus-visible {
    background: #005bff;
    transform: translateY(-1px);
}

@media (max-width: 767.98px) {
    .bottom-section {
        padding: 2.2rem 0 1.6rem !important;
    }

    .bottom-section .row {
        row-gap: 1.35rem;
    }

    .bottom-section .module-title,
    .bottom-section .mod-title,
    .bottom-section h1,
    .bottom-section h2,
    .bottom-section h3,
    .bottom-section h4,
    .bottom-section h5,
    .bottom-section h6 {
        margin-bottom: .65rem !important;
    }

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

@media (max-width: 767.98px) {
    .vpprimeajaxsearch-container {
        max-height: min(72vh, 34rem) !important;
        margin-top: .45rem !important;
        padding: .45rem !important;
        border-radius: 16px;
    }

    .vpprimeajaxsearch-suggestion-content {
        grid-template-columns: 1fr;
        gap: .42rem;
    }

    .searched-product {
        grid-template-columns: 4.45rem minmax(0, 1fr);
        min-height: 5.35rem;
        gap: .62rem;
        padding: .52rem;
        border-radius: 14px;
    }

    .searched-product-image img {
        width: 4.45rem !important;
        height: 4.45rem !important;
        border-radius: 11px;
    }

    .searched-product-title {
        font-size: .88rem;
        font-weight: 560 !important;
    }

    .searched-product-category {
        font-size: .7rem;
    }

    .searched-product-price {
        font-size: .94rem;
    }

    .vpprimeajaxsearch-suggestion-footer .vpprimeajaxsearch-viewall {
        min-height: 2.55rem;
        font-size: .9rem;
    }
}

/* VirtueMart pagination */
.vm-pagination {
    gap: .85rem;
    width: 100%;
    padding: 1rem 0 .35rem;
    border-top: 1px solid #edf2f8;
}

.vm-pagination .display-counter {
    color: #7a8798 !important;
    font-size: .88rem;
    font-weight: 600;
    line-height: 1.2;
}

.vm-pagination .pagination {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    padding: .28rem;
    border: 1px solid #dbe7f6;
    border-radius: 999px;
    background: #f8fbff;
}

.vm-pagination .page-item {
    margin: 0 !important;
}

.vm-pagination .page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.45rem;
    height: 2.45rem;
    padding: 0 .72rem;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #172033;
    font-size: .94rem;
    font-weight: 720;
    line-height: 1;
    box-shadow: none !important;
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
}

.vm-pagination .page-link:hover,
.vm-pagination .page-link:focus-visible {
    background: #eaf2ff !important;
    color: #0b63ff;
    transform: translateY(-1px);
}

.vm-pagination .page-item.active .page-link {
    background: #1168ff !important;
    color: #fff !important;
}

.vm-pagination .page-item.disabled .page-link {
    color: #a7b2c2 !important;
    opacity: .72;
    pointer-events: none;
}

.vm-pagination .page-link [class^="icon-"],
.vm-pagination .page-link [class*=" icon-"] {
    font-size: .92rem;
}

.vm-pagination .display-limitbox {
    min-width: 6.1rem;
}

.vm-pagination .display-limitbox > select {
    display: none !important;
}

.vm-pagination .display-limitbox select,
.vm-pagination .display-limitbox .form-select,
.vm-pagination .display-limitbox .inputbox {
    min-width: 5.8rem;
    height: 2.65rem;
    padding: 0 2.15rem 0 1rem;
    border: 1px solid #dbe7f6 !important;
    border-radius: 999px !important;
    background-color: #f8fbff !important;
    color: #172033;
    font-size: .95rem;
    font-weight: 700;
    line-height: 1;
    box-shadow: none !important;
    cursor: pointer;
}

.vm-pagination .display-limitbox select:hover,
.vm-pagination .display-limitbox select:focus,
.vm-pagination .display-limitbox .form-select:hover,
.vm-pagination .display-limitbox .form-select:focus,
.vm-pagination .display-limitbox .inputbox:hover,
.vm-pagination .display-limitbox .inputbox:focus {
    border-color: rgba(17, 104, 255, .42) !important;
    background-color: #fff !important;
    outline: 0;
}

.vm-pagination .display-limitbox .fm-limit-select__native,
.vm-pagination .display-limitbox select.fm-limit-select__native {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 0 !important;
    max-width: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
}

.fm-limit-select {
    position: relative;
    z-index: 5;
}

.fm-limit-select__button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    min-width: 5.8rem;
    height: 2.65rem;
    padding: 0 .95rem 0 1rem;
    border: 1px solid #dbe7f6;
    border-radius: 999px;
    background: #f8fbff;
    color: #172033;
    font-size: .95rem;
    font-weight: 760;
    line-height: 1;
    box-shadow: none;
    cursor: pointer;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}

.fm-limit-select__button::after {
    content: "";
    width: .48rem;
    height: .48rem;
    margin-top: -.18rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform .16s ease;
}

.fm-limit-select.is-open .fm-limit-select__button {
    border-color: rgba(17, 104, 255, .42);
    background: #fff;
    color: #0b63ff;
}

.fm-limit-select.is-open .fm-limit-select__button::after {
    margin-top: .18rem;
    transform: rotate(225deg);
}

.fm-limit-select__menu {
    position: absolute;
    right: 0;
    bottom: calc(100% + .55rem);
    display: grid;
    min-width: 7.2rem;
    padding: .35rem;
    border: 1px solid #dbe7f6;
    border-radius: 18px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 18px 44px rgba(15, 23, 42, .12);
    opacity: 0;
    visibility: hidden;
    transform: translateY(.35rem) scale(.98);
    transform-origin: right bottom;
    transition: opacity .16s ease, visibility .16s ease, transform .16s ease;
}

.fm-limit-select.is-open .fm-limit-select__menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.fm-limit-select__option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 2.25rem;
    padding: 0 .8rem;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: #172033;
    font-size: .95rem;
    font-weight: 650;
    line-height: 1;
    text-align: left;
    cursor: pointer;
    transition: background-color .14s ease, color .14s ease;
}

.fm-limit-select__option:hover,
.fm-limit-select__option:focus-visible {
    background: #eaf2ff;
    color: #0b63ff;
    outline: 0;
}

.fm-limit-select__option.is-selected {
    background: #1168ff;
    color: #fff;
}

@media (max-width: 767.98px) {
    .vm-pagination {
        gap: .7rem;
        align-items: stretch !important;
        padding-top: .8rem;
    }

    .vm-pagination .display-counter {
        width: 100%;
        margin-bottom: 0 !important;
        text-align: center;
    }

    .vm-pagination .pagination {
        width: 100%;
        justify-content: center;
        gap: .25rem;
        border-radius: 18px;
    }

    .vm-pagination .page-link {
        min-width: 2.25rem;
        height: 2.25rem;
        padding: 0 .58rem;
        font-size: .88rem;
    }

    .vm-pagination .display-limitbox {
        width: 100%;
        justify-content: center !important;
    }

    .vm-pagination .display-limitbox select,
    .vm-pagination .display-limitbox .form-select,
    .vm-pagination .display-limitbox .inputbox {
        width: 100%;
        max-width: 12rem;
        text-align: center;
    }

    .fm-limit-select,
    .fm-limit-select__button {
        width: 100%;
        max-width: 12rem;
    }

    .fm-limit-select__menu {
        right: 50%;
        min-width: 100%;
        transform: translate(50%, .35rem) scale(.98);
        transform-origin: center bottom;
    }

    .fm-limit-select.is-open .fm-limit-select__menu {
        transform: translate(50%, 0) scale(1);
    }
}

/* Cookie consent */
.vp-cookie-consent {
    z-index: 900001;
}

.vp-cookie-consent.bottom-right {
    right: 1.4rem;
    bottom: 1.4rem;
}

.vp-cookie-consent.center {
    width: min(92vw, 34rem);
}

.vp-cookie-consent-inner {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .85rem 1rem !important;
    width: min(92vw, 34rem) !important;
    padding: 1rem !important;
    border: 1px solid rgba(214, 226, 242, .96) !important;
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(248, 251, 255, .98) 100%) !important;
    color: #172033 !important;
    box-shadow: 0 22px 70px rgba(15, 23, 42, .16) !important;
    text-align: left !important;
}

.vp-cookie-consent-icon {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 16px;
    background: #eef5ff;
    color: #005bff;
}

.vp-cookie-consent-icon svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.vp-cookie-consent-message {
    display: grid;
    gap: .16rem;
    min-width: 0;
    color: #5f6b7a;
    font-size: .86rem;
    font-weight: 560;
    line-height: 1.36;
}

.vp-cookie-consent-link {
    width: fit-content;
    color: #005bff !important;
    font-size: .86rem;
    font-weight: 750;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(0, 91, 255, .28);
}

.vp-cookie-consent-link:hover,
.vp-cookie-consent-link:focus-visible {
    color: #0046c7 !important;
    border-bottom-color: currentColor;
    outline: 0;
}

.vp-cookie-consent-button {
    grid-column: 1 / -1;
    justify-self: end;
    min-width: 8.5rem;
    min-height: 2.75rem;
    padding: 0 1.25rem !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #005bff !important;
    color: #fff !important;
    font-size: .92rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    box-shadow: 0 14px 30px rgba(0, 91, 255, .22) !important;
}

.vp-cookie-consent-button:hover,
.vp-cookie-consent-button:focus-visible {
    background: #004de0 !important;
    color: #fff !important;
    outline: 0;
    transform: translateY(-1px);
}

@media (min-width: 768px) {
    .vp-cookie-consent.bottom,
    .vp-cookie-consent.top {
        left: 50%;
        right: auto;
        width: min(92vw, 42rem);
        transform: translateX(-50%);
    }

    .vp-cookie-consent.bottom .vp-cookie-consent-inner,
    .vp-cookie-consent.top .vp-cookie-consent-inner {
        width: min(92vw, 42rem) !important;
    }
}

@media (max-width: 767.98px) {
    .vp-cookie-consent,
    .vp-cookie-consent.bottom,
    .vp-cookie-consent.bottom-left,
    .vp-cookie-consent.bottom-right,
    .vp-cookie-consent.center,
    .vp-cookie-consent.top,
    .vp-cookie-consent.top-left,
    .vp-cookie-consent.top-right {
        left: .75rem !important;
        right: .75rem !important;
        bottom: .75rem !important;
        top: auto !important;
        width: auto !important;
        transform: none !important;
    }

    .vp-cookie-consent-inner {
        width: 100% !important;
        grid-template-columns: auto minmax(0, 1fr);
        gap: .7rem .8rem !important;
        padding: .85rem !important;
        border-radius: 18px;
    }

    .vp-cookie-consent-icon {
        width: 2.35rem;
        height: 2.35rem;
        border-radius: 14px;
    }

    .vp-cookie-consent-message {
        font-size: .8rem;
        line-height: 1.32;
    }

    .vp-cookie-consent-link {
        font-size: .8rem;
    }

    .vp-cookie-consent-button {
        width: 100%;
        min-height: 2.6rem;
        justify-self: stretch;
    }
}

/* Unified typography for information articles: 23-38 */
.fm-support-page h1,
.fm-quality-page h1,
.fm-care-page h1,
.fm-order-page h1,
.fm-guarantees-page h1,
.fm-about-page h1,
.fm-cookies-page h1,
.fm-requisites-page h1,
.fm-business-page h1,
.fm-collab-page h1,
.fm-faq-page h1,
.fm-legal-page h1 {
    font-size: clamp(2.35rem, 5vw, 3.8rem) !important;
    font-weight: 820;
    line-height: 1.04;
    letter-spacing: 0;
}

.fm-support-page h2,
.fm-quality-page h2,
.fm-care-page h2,
.fm-order-page h2,
.fm-guarantees-page h2,
.fm-about-page h2,
.fm-cookies-page h2,
.fm-requisites-page h2,
.fm-business-page h2,
.fm-collab-page h2,
.fm-faq-page h2,
.fm-legal-page h2 {
    font-size: clamp(1.65rem, 3vw, 2.55rem) !important;
    font-weight: 760;
    line-height: 1.12;
    letter-spacing: 0;
}

.fm-support-page h3,
.fm-quality-page h3,
.fm-care-page h3,
.fm-order-page h3,
.fm-guarantees-page h3,
.fm-about-page h3,
.fm-cookies-page h3,
.fm-requisites-page h3,
.fm-business-page h3,
.fm-collab-page h3,
.fm-faq-page h3,
.fm-legal-page h3 {
    font-size: clamp(1.08rem, 1.55vw, 1.32rem) !important;
    font-weight: 720;
    line-height: 1.22;
    letter-spacing: 0;
}

.fm-support-page p,
.fm-quality-page p,
.fm-care-page p,
.fm-order-page p,
.fm-guarantees-page p,
.fm-about-page p,
.fm-cookies-page p,
.fm-requisites-page p,
.fm-business-page p,
.fm-collab-page p,
.fm-faq-page p,
.fm-legal-page p {
    font-weight: 400;
}

.fm-support-page strong,
.fm-quality-page strong,
.fm-care-page strong,
.fm-order-page strong,
.fm-guarantees-page strong,
.fm-about-page strong,
.fm-cookies-page strong,
.fm-requisites-page strong,
.fm-business-page strong,
.fm-collab-page strong,
.fm-faq-page strong,
.fm-legal-page strong {
    font-weight: 720;
}

.fm-support-page section,
.fm-quality-page section,
.fm-care-page section,
.fm-order-page section,
.fm-guarantees-page section,
.fm-about-page section,
.fm-cookies-page section,
.fm-requisites-page section,
.fm-business-page section,
.fm-collab-page section,
.fm-faq-page section,
.fm-legal-page section {
    scroll-margin-top: 6rem;
}

/* Keep long-form informational text readable. */
.fm-legal-page {
    --fm-legal-muted: #111722;
}

.fm-faq-page {
    --fm-faq-muted: #111722;
}

.fm-collab-page {
    --fm-collab-muted: #111722;
}

.fm-business-page {
    --fm-biz-muted: #111722;
}

.fm-requisites-page {
    --fm-req-muted: #111722;
}

.fm-cookies-page {
    --fm-cookie-muted: #111722;
}

.fm-guarantees-page {
    --fm-g-muted: #111722;
}

.fm-about-page {
    --fm-about-muted: #111722;
}

.fm-support-page {
    --fm-support-muted: #111722;
}

.fm-care-page {
    --fm-care-muted: #111722;
}

.fm-order-page {
    --fm-order-muted: #111722;
}

.fm-quality-page {
    --fm-quality-muted: #111722;
}

.fm-contacts-page {
    --fm-contact-muted: #111722;
}

.fm-delivery-info {
    --fm-di-muted: #111722;
}

.fm-business-hero__main .fm-business-eyebrow {
    color: rgba(255, 255, 255, .9) !important;
}

.fm-requisites-hero__main .fm-requisites-eyebrow {
    color: rgba(255, 255, 255, .9) !important;
}
/* Touch screens: the first tap on a product image must open the product. */
@media (hover: none), (pointer: coarse), (max-width: 767.98px) {
    .product-container .product-image-hover,
    .item-container .product-image-hover {
        display: none !important;
        pointer-events: none !important;
    }

    .product-container.add-hover-effect:hover,
    .product-container.add-hover-effect.state-hover,
    .item-container.add-hover-effect:hover,
    .item-container.add-hover-effect.state-hover {
        transform: none;
    }

    .product-container .product-list-utilities,
    .item-container .product-list-utilities {
        opacity: 1;
        transform: none;
    }
}

/* Mobile contact consultant */
.fm-support-widget[hidden],
.fm-support-nudge[hidden],
.fm-support-desktop__nudge[hidden] {
    display: none !important;
}

.fm-support-desktop {
    display: none;
}

@media (max-width: 991.98px) {
    .fm-toolbar-support {
        border: 0;
        font: inherit;
        cursor: pointer;
    }

    .fm-support-nudge {
        position: absolute;
        left: 50%;
        bottom: calc(100% + 1.7rem);
        z-index: 8;
        display: grid;
        grid-template-columns: minmax(0, 1fr) 2rem;
        width: min(14.6rem, calc(100vw - 2rem));
        padding: .34rem;
        border: 1px solid #dce6f4;
        border-radius: 1rem;
        background: #fff;
        box-shadow: 0 .7rem 1.8rem rgba(7, 22, 47, .14);
        opacity: 0;
        transform: translate(-65%, .55rem) scale(.97);
        transform-origin: 68% 100%;
        transition: opacity .2s ease, transform .24s cubic-bezier(.2, .8, .2, 1);
        pointer-events: none;
    }

    .fm-support-nudge::after {
        content: "";
        position: absolute;
        right: 27%;
        bottom: -.42rem;
        width: .75rem;
        height: .75rem;
        border-right: 1px solid #dce6f4;
        border-bottom: 1px solid #dce6f4;
        background: #fff;
        transform: rotate(45deg);
    }

    .fm-support-nudge.is-visible {
        opacity: 1;
        transform: translate(-65%, 0) scale(1);
        pointer-events: auto;
    }

    .fm-support-nudge__message,
    .fm-support-nudge__close {
        position: relative;
        z-index: 1;
        border: 0;
        background: transparent;
        color: #07162f;
        font: inherit;
    }

    .fm-support-nudge__message {
        display: grid;
        gap: .16rem;
        padding: .5rem .25rem .5rem .55rem;
        text-align: left;
    }

    .fm-support-nudge__message strong {
        font-size: .84rem;
        font-weight: 750;
        line-height: 1.15;
    }

    .fm-support-nudge__message span {
        color: #516078;
        font-size: .72rem;
        line-height: 1.3;
    }

    .fm-support-nudge__close {
        align-self: start;
        width: 2rem;
        height: 2rem;
        border-radius: .7rem;
    }

    .fm-support-nudge__close::before,
    .fm-support-nudge__close::after,
    .fm-support-widget__close::before,
    .fm-support-widget__close::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: .85rem;
        height: 1.5px;
        border-radius: 1px;
        background: currentColor;
    }

    .fm-support-nudge__close::before,
    .fm-support-widget__close::before {
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .fm-support-nudge__close::after,
    .fm-support-widget__close::after {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .fm-support-widget {
        position: fixed;
        inset: 0;
        z-index: 1095;
        display: flex;
        align-items: flex-end;
        justify-content: center;
    }

    .fm-support-widget__backdrop {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        padding: 0;
        border: 0;
        background: rgba(7, 16, 34, .48);
        opacity: 0;
        transition: opacity .22s ease;
    }

    .fm-support-widget__panel {
        position: relative;
        z-index: 1;
        width: min(100%, 34rem);
        max-height: calc(100vh - 1.25rem);
        max-height: calc(100dvh - 1.25rem);
        padding: .55rem 1rem calc(1rem + env(safe-area-inset-bottom));
        border: 1px solid #dfe7f1;
        border-bottom: 0;
        border-radius: 1.5rem 1.5rem 0 0;
        background: #fff;
        color: #07162f;
        overflow-y: auto;
        overscroll-behavior: contain;
        opacity: 0;
        transform: translateY(100%);
        transition: opacity .22s ease, transform .28s cubic-bezier(.2, .8, .2, 1);
    }

    .fm-support-widget.is-open .fm-support-widget__backdrop,
    .fm-support-widget.is-open .fm-support-widget__panel {
        opacity: 1;
    }

    .fm-support-widget.is-open .fm-support-widget__panel {
        transform: translateY(0);
    }

    .fm-support-widget__handle {
        width: 2.7rem;
        height: .25rem;
        margin: 0 auto .7rem;
        border-radius: 1rem;
        background: #d9e1eb;
    }

    .fm-support-widget__head {
        display: grid;
        grid-template-columns: 3.25rem minmax(0, 1fr) 2.5rem;
        gap: .72rem;
        align-items: center;
    }

    .fm-support-widget__avatar {
        position: relative;
        display: block;
        width: 3.25rem;
        height: 3.25rem;
        border: 2px solid #fff;
        border-radius: 1.08rem;
        background: #eef3f8;
        box-shadow: 0 0 0 1px #dce5ef;
        overflow: hidden;
    }

    .fm-support-widget__avatar img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        transform: scale(2.35);
        transform-origin: 54% 37%;
    }

    .fm-support-widget__heading {
        display: grid;
        gap: .2rem;
        min-width: 0;
    }

    .fm-support-widget__heading strong {
        font-size: 1.08rem;
        font-weight: 750;
        line-height: 1.15;
    }

    .fm-support-widget__name-row {
        display: flex;
        align-items: center;
        gap: .45rem;
        min-width: 0;
    }

    .fm-support-widget__name-row b {
        display: inline-flex;
        align-items: center;
        min-height: 1.2rem;
        padding: .12rem .42rem;
        border-radius: 999px;
        background: #e9f8f0;
        color: #15874d;
        font-size: .62rem;
        font-weight: 800;
        line-height: 1;
        letter-spacing: .02em;
    }

    .fm-support-widget__heading small {
        display: flex;
        align-items: center;
        gap: .35rem;
        color: #536078;
        font-size: .7rem;
        line-height: 1.25;
    }

    .fm-support-widget__heading small i {
        flex: 0 0 .45rem;
        width: .45rem;
        height: .45rem;
        border-radius: 50%;
        background: #1fb76a;
    }

    .fm-support-widget__close {
        position: relative;
        width: 2.5rem;
        height: 2.5rem;
        padding: 0;
        border: 1px solid #e0e7f0;
        border-radius: .85rem;
        background: #f7f9fc;
        color: #344054;
    }

    .fm-support-widget__close:focus,
    .fm-support-widget__close:focus-visible {
        border-color: #005bff;
        outline: 2px solid rgba(0, 91, 255, .28);
        outline-offset: 2px;
        box-shadow: none;
    }

    .fm-support-widget__intro {
        margin: .9rem 0 .8rem;
        color: #45536a;
        font-size: .82rem;
        line-height: 1.45;
    }

    .fm-support-widget__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .55rem;
    }

    .fm-support-widget__action {
        position: relative;
        display: grid;
        grid-template-columns: 2.25rem minmax(0, 1fr);
        gap: .62rem;
        align-items: center;
        min-height: 4.4rem;
        padding: .68rem .58rem;
        border: 1px solid #dde6f0;
        border-radius: 1rem;
        background: #fff;
        color: #101828 !important;
        text-decoration: none !important;
        transition: border-color .18s ease, background .18s ease, transform .18s ease;
    }

    .fm-support-widget__action:active {
        transform: scale(.98);
    }

    .fm-support-widget__action--max {
        border-color: #dcd3ff;
        background: #f7f4ff;
    }

    .fm-support-widget__action--telegram {
        border-color: #cfe1ff;
        background: #f2f7ff;
    }

    .fm-support-widget__action--whatsapp {
        border-color: #ccebd9;
        background: #f2fbf6;
    }

    .fm-support-widget__action--phone {
        background: #f7f9fc;
    }

    .fm-support-widget__action-icon {
        display: grid;
        place-items: center;
        width: 2.25rem;
        height: 2.25rem;
        border-radius: .78rem;
        background: #fff;
        color: #005bff;
    }

    .fm-support-widget__action--whatsapp .fm-support-widget__action-icon {
        color: #149b55;
    }

    .fm-support-widget__action--phone .fm-support-widget__action-icon {
        color: #344054;
    }

    .fm-support-widget__action-icon svg,
    .fm-support-widget__action-icon img {
        width: 1.2rem;
        height: 1.2rem;
        display: block;
    }

    .fm-support-widget__action-icon svg {
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .fm-support-widget__action > span:nth-child(2) {
        display: grid;
        gap: .2rem;
        min-width: 0;
    }

    .fm-support-widget__action strong {
        font-size: .76rem;
        font-weight: 750;
        line-height: 1.2;
    }

    .fm-support-widget__action small {
        color: #657187;
        font-size: .65rem;
        line-height: 1.2;
    }

    .fm-support-widget__action > i {
        display: none;
    }

    .fm-support-widget__note {
        margin: .8rem 0 0;
        padding: .65rem .75rem;
        border-radius: .8rem;
        background: #f5f7fa;
        color: #536078;
        font-size: .7rem;
        line-height: 1.4;
        text-align: center;
    }

    body.fm-support-widget-lock {
        overflow: hidden;
    }
}

@media (max-width: 359.98px) {
    .fm-support-widget__actions {
        grid-template-columns: 1fr;
    }

    .fm-support-widget__action {
        min-height: 3.8rem;
    }
}

/* Compact delivery date and time picker on phones. */
@media (max-width: 767.98px) {
    body > .checkout-delivery-slot-popover {
        align-items: flex-end;
        padding: .5rem 0 0;
        background: rgba(15, 23, 42, .28);
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-panel {
        width: 100%;
        height: min(600px, calc(100dvh - .5rem));
        max-height: calc(100dvh - .5rem);
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto minmax(0, 1fr);
        gap: .7rem;
        padding: 1rem .85rem max(.75rem, env(safe-area-inset-bottom));
        border: 0;
        border-radius: 22px 22px 0 0;
        overflow: hidden;
        box-shadow: 0 -12px 42px rgba(15, 23, 42, .16);
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-panel::before {
        content: "";
        position: absolute;
        top: .42rem;
        left: 50%;
        width: 34px;
        height: 4px;
        border-radius: 999px;
        background: #d6deea;
        transform: translateX(-50%);
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-close {
        top: .62rem;
        right: .7rem;
        z-index: 2;
        width: 32px;
        height: 32px;
        border-radius: 10px;
        background: #f4f7fb;
        font-size: 1.3rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-col {
        min-width: 0;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-col:last-of-type {
        min-height: 0;
        display: grid;
        grid-template-rows: auto auto minmax(0, 1fr) auto;
        gap: .5rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-col h4 {
        margin: 0;
        padding-right: 2.25rem;
        color: #182235;
        font-size: .88rem;
        font-weight: 850;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list {
        max-height: none;
        display: flex;
        gap: .45rem;
        margin: .5rem -.85rem 0;
        padding: 0 .85rem .2rem;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: smooth;
        scroll-padding-inline: .85rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-inline: contain;
        touch-action: pan-x;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list::-webkit-scrollbar,
    body > .checkout-delivery-slot-popover .checkout-delivery-time-list::-webkit-scrollbar {
        display: none;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list button {
        position: relative;
        flex: 0 0 clamp(82px, 23vw, 94px);
        width: auto;
        min-height: 48px;
        justify-content: center;
        padding: .48rem .5rem;
        border: 1px solid #e1e8f2;
        border-radius: 13px;
        background: #fff;
        font-size: .78rem;
        font-weight: 750;
        line-height: 1.12;
        text-align: center;
        white-space: nowrap;
        scroll-snap-align: start;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list button:nth-child(-n + 2) {
        flex-basis: clamp(112px, 31vw, 126px);
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list button::before {
        position: absolute;
        top: .38rem;
        left: .42rem;
        width: 10px;
        height: 6px;
        margin: 0;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-date-list button.is-active {
        border-color: #1465ff;
        background: #edf4ff;
        color: #0b5bea;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-rate-note {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .45rem;
        margin: 0;
        padding: .48rem .55rem;
        border-radius: 12px;
        font-size: .64rem;
        line-height: 1.2;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-rate-note b,
    body > .checkout-delivery-slot-popover .checkout-delivery-rate-note span {
        display: flex;
        align-items: center;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list {
        max-height: none;
        min-height: 0;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-content: start;
        gap: .42rem;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 0 .08rem .12rem 0;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        touch-action: pan-y;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button {
        position: relative;
        width: 100%;
        min-height: 48px;
        align-items: flex-start;
        justify-content: center;
        gap: .12rem;
        padding: .45rem .52rem .42rem;
        border: 1px solid #e1e8f2;
        border-radius: 12px;
        background: #fff;
        font-size: .8rem;
        line-height: 1.08;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button:first-child {
        grid-column: 1 / -1;
        min-height: 50px;
        padding-left: 1.8rem;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button::before {
        position: absolute;
        top: .58rem;
        left: .58rem;
        width: 10px;
        height: 6px;
        margin: 0;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button span {
        flex: 0 0 auto;
        font-weight: 780;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button small {
        display: none;
        font-size: .59rem;
        line-height: 1.12;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button:first-child small,
    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button.is-night-slot small {
        display: block;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-time-list button.is-active {
        border-color: #1465ff;
        background: #edf4ff;
        color: #0b5bea;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-apply {
        position: relative;
        z-index: 2;
        width: 100%;
        min-height: 48px;
        margin: 0;
        border-radius: 14px;
        background: #0b63ff;
        color: #fff;
        font-size: .92rem;
        font-weight: 850;
        box-shadow: none;
    }

    body > .checkout-delivery-slot-popover .checkout-delivery-slot-apply:hover,
    body > .checkout-delivery-slot-popover .checkout-delivery-slot-apply:focus-visible {
        background: #0056e8;
        color: #fff;
    }
}

@media (min-width: 992px) {
    .fm-support-nudge {
        display: none !important;
    }

    .fm-support-desktop {
        position: fixed;
        right: 1.5rem;
        bottom: 1.5rem;
        z-index: 1090;
        display: block;
    }

    .fm-support-desktop__nudge {
        position: absolute;
        right: 0;
        bottom: calc(100% + .8rem);
        display: grid;
        grid-template-columns: minmax(0, 1fr) 2rem;
        width: 17rem;
        padding: .4rem;
        border: 1px solid #dce5ef;
        border-radius: 1rem;
        background: #fff;
        box-shadow: 0 .8rem 2rem rgba(7, 22, 47, .15);
        opacity: 0;
        transform: translateY(.5rem) scale(.97);
        transform-origin: 88% 100%;
        transition: opacity .2s ease, transform .24s cubic-bezier(.2, .8, .2, 1);
        pointer-events: none;
    }

    .fm-support-desktop__nudge::after {
        content: "";
        position: absolute;
        right: 1.35rem;
        bottom: -.42rem;
        width: .75rem;
        height: .75rem;
        border-right: 1px solid #dce5ef;
        border-bottom: 1px solid #dce5ef;
        background: #fff;
        transform: rotate(45deg);
    }

    .fm-support-desktop__nudge.is-visible {
        opacity: 1;
        transform: translateY(0) scale(1);
        pointer-events: auto;
    }

    .fm-support-desktop__nudge-message,
    .fm-support-desktop__nudge-close {
        position: relative;
        z-index: 1;
        border: 0;
        background: transparent;
        color: #07162f;
        font: inherit;
    }

    .fm-support-desktop__nudge-message {
        display: grid;
        gap: .22rem;
        padding: .5rem .25rem .5rem .58rem;
        text-align: left;
        cursor: pointer;
    }

    .fm-support-desktop__nudge-message strong {
        display: flex;
        align-items: center;
        gap: .42rem;
        font-size: .84rem;
        font-weight: 750;
        line-height: 1.2;
    }

    .fm-support-desktop__nudge-message strong i {
        width: .48rem;
        height: .48rem;
        flex: 0 0 .48rem;
        border-radius: 50%;
        background: #1fb76a;
        box-shadow: 0 0 0 .2rem rgba(31, 183, 106, .12);
    }

    .fm-support-desktop__nudge-message span {
        color: #59667b;
        font-size: .7rem;
        line-height: 1.35;
    }

    .fm-support-desktop__nudge-close {
        align-self: start;
        width: 2rem;
        height: 2rem;
        border-radius: .7rem;
        cursor: pointer;
    }

    .fm-support-desktop__nudge-close::before,
    .fm-support-desktop__nudge-close::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: .78rem;
        height: 1.5px;
        border-radius: 1px;
        background: currentColor;
    }

    .fm-support-desktop__nudge-close::before {
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .fm-support-desktop__nudge-close::after {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .fm-support-desktop__launcher {
        display: grid;
        grid-template-columns: 2.75rem minmax(0, 1fr) 2.45rem;
        gap: .7rem;
        align-items: center;
        min-width: 13.5rem;
        padding: .48rem .55rem .48rem .5rem;
        border: 1px solid #dce5ef;
        border-radius: 1.15rem;
        background: #fff;
        color: #07162f;
        box-shadow: 0 .75rem 2rem rgba(7, 22, 47, .14);
        font: inherit;
        text-align: left;
        cursor: pointer;
        transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
    }

    .fm-support-desktop__launcher:hover,
    .fm-support-desktop__launcher:focus-visible {
        border-color: rgba(0, 91, 255, .42);
        box-shadow: 0 .85rem 2.2rem rgba(7, 22, 47, .17);
        outline: 0;
        transform: translateY(-2px);
    }

    .fm-support-desktop__launcher:active {
        transform: translateY(0) scale(.98);
    }

    .fm-support-desktop__avatar {
        position: relative;
        display: block;
        width: 2.75rem;
        height: 2.75rem;
        border: 2px solid #fff;
        border-radius: .9rem;
        background-color: #eef3f8;
        background-image: url('/images/support/natalia-consultant.jpg');
        background-repeat: no-repeat;
        background-position: 54% 37%;
        background-size: 235%;
        box-shadow: 0 0 0 1px #dce5ef;
        overflow: hidden;
    }

    .fm-support-desktop__avatar img {
        display: none;
    }

    .fm-support-desktop__avatar i {
        display: none;
    }

    .fm-support-desktop__copy {
        display: grid;
        gap: .18rem;
        min-width: 0;
    }

    .fm-support-desktop__copy strong {
        font-size: .88rem;
        font-weight: 750;
        line-height: 1.1;
    }

    .fm-support-desktop__copy small {
        color: #647086;
        font-size: .68rem;
        line-height: 1.2;
    }

    .fm-support-desktop__icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.5rem;
        height: 2.5rem;
        flex: 0 0 2.5rem;
        border: 1px solid #dce9ff;
        border-radius: 50%;
        background: #edf4ff;
        color: #005bff;
        line-height: 0;
    }

    .fm-support-desktop__icon svg {
        display: block;
        width: 1.35rem;
        height: 1.35rem;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.85;
        stroke-linecap: round;
        stroke-linejoin: round;
        transform: none;
    }

    .fm-support-widget {
        position: fixed;
        inset: 0;
        z-index: 1095;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        padding: 1.5rem;
    }

    .fm-support-widget__backdrop {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        padding: 0;
        border: 0;
        background: rgba(7, 16, 34, .08);
        opacity: 0;
        transition: opacity .2s ease;
    }

    .fm-support-widget__panel {
        position: relative;
        z-index: 1;
        width: 25rem;
        max-height: calc(100vh - 3rem);
        padding: 1rem;
        border: 1px solid #dce5ef;
        border-radius: 1.35rem;
        background: #fff;
        color: #07162f;
        box-shadow: 0 1.2rem 3.5rem rgba(7, 22, 47, .2);
        overflow-y: auto;
        opacity: 0;
        transform: translateY(1rem) scale(.97);
        transform-origin: 100% 100%;
        transition: opacity .2s ease, transform .24s cubic-bezier(.2, .8, .2, 1);
    }

    .fm-support-widget.is-open .fm-support-widget__backdrop,
    .fm-support-widget.is-open .fm-support-widget__panel {
        opacity: 1;
    }

    .fm-support-widget.is-open .fm-support-widget__panel {
        transform: translateY(0) scale(1);
    }

    .fm-support-widget__handle {
        display: none;
    }

    .fm-support-widget__head {
        display: grid;
        grid-template-columns: 3.25rem minmax(0, 1fr) 2.5rem;
        gap: .72rem;
        align-items: center;
    }

    .fm-support-widget__avatar {
        position: relative;
        display: block;
        width: 3.25rem;
        height: 3.25rem;
        border: 2px solid #fff;
        border-radius: 1.08rem;
        background: #eef3f8;
        box-shadow: 0 0 0 1px #dce5ef;
        overflow: hidden;
    }

    .fm-support-widget__avatar img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
        transform: scale(2.35);
        transform-origin: 54% 37%;
    }

    .fm-support-widget__heading {
        display: grid;
        gap: .2rem;
        min-width: 0;
    }

    .fm-support-widget__name-row {
        display: flex;
        align-items: center;
        gap: .45rem;
    }

    .fm-support-widget__heading strong {
        font-size: 1.08rem;
        font-weight: 750;
        line-height: 1.15;
    }

    .fm-support-widget__name-row b {
        display: inline-flex;
        align-items: center;
        min-height: 1.2rem;
        padding: .12rem .42rem;
        border-radius: 999px;
        background: #e9f8f0;
        color: #15874d;
        font-size: .62rem;
        font-weight: 800;
        line-height: 1;
    }

    .fm-support-widget__heading small {
        display: flex;
        align-items: center;
        gap: .35rem;
        color: #536078;
        font-size: .7rem;
        line-height: 1.25;
    }

    .fm-support-widget__heading small i {
        flex: 0 0 .45rem;
        width: .45rem;
        height: .45rem;
        border-radius: 50%;
        background: #1fb76a;
    }

    .fm-support-widget__close {
        position: relative;
        width: 2.5rem;
        height: 2.5rem;
        padding: 0;
        border: 1px solid #e0e7f0;
        border-radius: .85rem;
        background: #f7f9fc;
        color: #344054;
        cursor: pointer;
    }

    .fm-support-widget__close::before,
    .fm-support-widget__close::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: .85rem;
        height: 1.5px;
        border-radius: 1px;
        background: currentColor;
    }

    .fm-support-widget__close::before {
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .fm-support-widget__close::after {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .fm-support-widget__intro {
        margin: .9rem 0 .8rem;
        color: #45536a;
        font-size: .82rem;
        line-height: 1.45;
    }

    .fm-support-widget__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .55rem;
    }

    .fm-support-widget__action {
        display: grid;
        grid-template-columns: 2.25rem minmax(0, 1fr);
        gap: .62rem;
        align-items: center;
        min-height: 4.35rem;
        padding: .68rem .58rem;
        border: 1px solid #dde6f0;
        border-radius: 1rem;
        background: #fff;
        color: #101828 !important;
        text-decoration: none !important;
        transition: border-color .18s ease, transform .18s ease;
    }

    .fm-support-widget__action:hover,
    .fm-support-widget__action:focus-visible {
        border-color: rgba(0, 91, 255, .38);
        outline: 0;
        transform: translateY(-1px);
    }

    .fm-support-widget__action--max { background: #f7f4ff; }
    .fm-support-widget__action--telegram { background: #f2f7ff; }
    .fm-support-widget__action--whatsapp { background: #f2fbf6; }
    .fm-support-widget__action--phone { background: #f7f9fc; }

    .fm-support-widget__action-icon {
        display: grid;
        place-items: center;
        width: 2.25rem;
        height: 2.25rem;
        border-radius: .78rem;
        background: #fff;
        color: #005bff;
    }

    .fm-support-widget__action--whatsapp .fm-support-widget__action-icon { color: #149b55; }
    .fm-support-widget__action--phone .fm-support-widget__action-icon { color: #344054; }

    .fm-support-widget__action-icon svg,
    .fm-support-widget__action-icon img {
        width: 1.2rem;
        height: 1.2rem;
        display: block;
    }

    .fm-support-widget__action-icon svg {
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .fm-support-widget__action > span:nth-child(2) {
        display: grid;
        gap: .2rem;
        min-width: 0;
    }

    .fm-support-widget__action strong {
        font-size: .76rem;
        font-weight: 750;
        line-height: 1.2;
    }

    .fm-support-widget__action small {
        color: #657187;
        font-size: .65rem;
        line-height: 1.2;
    }

    .fm-support-widget__action > i {
        display: none;
    }

    .fm-support-widget__note {
        margin: .8rem 0 0;
        padding: .65rem .75rem;
        border-radius: .8rem;
        background: #f5f7fa;
        color: #536078;
        font-size: .7rem;
        line-height: 1.4;
        text-align: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .fm-support-widget__backdrop,
    .fm-support-widget__panel,
    .fm-support-nudge,
    .fm-support-desktop__nudge {
        transition: none !important;
    }
}

/* Checkout: compact delivery, pickup and payment selector */
#cart-view .checkout-methods-grid {
    grid-template-columns: minmax(0, 1.22fr) minmax(17rem, .78fr);
    align-items: start;
    gap: .8rem;
}

#cart-view .checkout-shipment-panel,
#cart-view .checkout-payment-panel {
    align-self: start;
    padding: .9rem;
    border: 1px solid #dce5f2;
    border-radius: 1.15rem;
    background: #fbfcff;
}

#cart-view .checkout-shipment-panel::after,
#cart-view .checkout-payment-panel::after {
    display: none;
}

#cart-view .checkout-shipment-panel .checkout-method-head,
#cart-view .checkout-payment-panel .checkout-method-head {
    margin-bottom: 0;
    padding-bottom: .62rem;
}

#cart-view .checkout-shipment-panel .checkout-method-body,
#cart-view .checkout-payment-panel .checkout-method-body {
    padding-top: .62rem;
}

#cart-view .checkout-method-title-line {
    gap: .65rem;
    min-width: 0;
}

#cart-view .cart-shipment-name,
#cart-view .cart-payment-name {
    max-width: min(100%, 21rem);
    padding: .28rem .58rem;
    border: 1px solid #dce5f2;
    border-radius: 999px;
    overflow: hidden;
    background: #f7f9fc;
    color: #58657a;
    font-size: .72rem;
    font-weight: 650;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#cart-view .fm-fulfilment-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    margin: 0 0 .75rem;
    padding: .34rem;
    border: 1px solid #d7e2f0;
    border-radius: 1rem;
    background: #eef3f9;
}

#cart-view .fm-fulfilment-tab {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    align-items: center;
    gap: .62rem;
    min-width: 0;
    min-height: 3.1rem;
    padding: .42rem .58rem;
    border: 1px solid #d7e2f0;
    border-radius: .78rem;
    background: #fff;
    color: #17233a;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}

#cart-view .fm-fulfilment-tab:hover {
    border-color: #a9c2e8;
    background: #f8fbff;
}

#cart-view .fm-fulfilment-tab.is-active {
    border-color: #005bff;
    background: #005bff;
    color: #fff;
}

#cart-view .fm-fulfilment-tab__icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border-radius: .62rem;
    background: #fff;
    color: #005bff;
    font-size: .82rem;
}

#cart-view .fm-fulfilment-tab.is-active .fm-fulfilment-tab__icon {
    background: rgba(255, 255, 255, .16);
    color: #fff;
}

#cart-view .fm-fulfilment-tab.is-active small {
    color: rgba(255, 255, 255, .78);
}

#cart-view .fm-fulfilment-tab > span:last-child {
    display: grid;
    gap: .12rem;
    min-width: 0;
}

#cart-view .fm-fulfilment-tab strong {
    font-size: .82rem;
    font-weight: 750;
    line-height: 1.15;
}

#cart-view .fm-fulfilment-tab small {
    overflow: hidden;
    color: #718096;
    font-size: .64rem;
    font-weight: 500;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#cart-view .checkout-choice-list {
    gap: .55rem;
}

#cart-view .shipment-methods.checkout-choice-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

#cart-view .payment-methods.checkout-choice-list {
    display: grid;
    grid-template-columns: 1fr;
}

#cart-view .shipment-methods.checkout-choice-list[data-active-mode="pickup"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

#cart-view .checkout-choice-card.fm-method-card-ready {
    position: relative;
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr) auto;
    align-items: center;
    gap: .65rem;
    min-width: 0;
    min-height: 3.65rem;
    margin: 0;
    padding: .58rem .68rem;
    border: 1px solid #dce5f2;
    border-radius: 1rem;
    background: #fff;
    box-shadow: none;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease;
}

#cart-view .checkout-choice-card.fm-method-card-ready:hover {
    border-color: #b8c9e2;
    box-shadow: none;
}

#cart-view .checkout-choice-card.fm-method-card-ready.is-selected {
    border-color: #005bff;
    background: #f4f8ff;
    box-shadow: inset 0 0 0 1px #005bff;
}

#cart-view .checkout-choice-card.fm-method-card-ready.is-method-disabled {
    border-color: #e1e7ef;
    background: #f5f7fa;
    cursor: not-allowed;
    opacity: .58;
}

#cart-view .checkout-choice-card.fm-method-card-ready.is-method-disabled:hover {
    border-color: #e1e7ef;
}

#cart-view .checkout-choice-card.fm-method-card-ready.is-method-disabled .fm-method-copy__price {
    background: #e8edf3;
    color: #6f7b8c;
}

#cart-view .checkout-choice-card.fm-method-card-ready.is-method-hidden {
    display: none !important;
}

#cart-view .fm-method-card-ready > input[type="radio"] {
    position: static !important;
    display: grid !important;
    width: 2rem !important;
    height: 2rem !important;
    margin: 0 !important;
    top: auto !important;
    left: auto !important;
    align-self: center;
    place-content: center;
    flex: none;
    border: 2px solid #cbd7e8 !important;
    border-radius: .58rem !important;
    background: #fff !important;
    box-shadow: none !important;
    appearance: none;
    -webkit-appearance: none;
    transform: none !important;
}

#cart-view .fm-method-card-ready > input[type="radio"]::before {
    width: .45rem;
    height: .78rem;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    content: "";
    opacity: 0;
    transform: rotate(45deg) translate(-1px, -1px);
}

#cart-view .fm-method-card-ready > input[type="radio"]:checked {
    border-color: #005bff !important;
    background: #005bff !important;
}

#cart-view .fm-method-card-ready > input[type="radio"]:checked::before {
    opacity: 1;
}

#cart-view .fm-method-native-label {
    display: none !important;
}

/* VirtueMart briefly restores its native labels during AJAX refreshes. */
#cart-view .shipment-methods .checkout-choice-card[data-method-id] label,
#cart-view .payment-methods .checkout-choice-card[data-method-id] label {
    display: none !important;
}

#cart-view .fm-method-copy {
    display: contents !important;
}

#cart-view .fm-method-copy__text {
    display: grid;
    align-content: center;
    gap: .1rem;
    min-width: 0;
}

#cart-view .fm-method-copy__title {
    color: #17233a;
    font-size: .8rem;
    font-weight: 750;
    line-height: 1.2;
}

#cart-view .fm-method-copy__note {
    color: #718096;
    font-size: .63rem;
    font-weight: 500;
    line-height: 1.3;
}

#cart-view .fm-method-copy__price {
    justify-self: end;
    padding: .26rem .48rem;
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
}

#cart-view .fm-method-copy__price--free,
#cart-view .fm-method-copy__price--discount {
    background: #e9f8ef;
    color: #098a4a;
}

#cart-view .fm-method-copy__price--extra {
    background: #fff0f7;
    color: rgb(241 17 126);
}

#cart-view .payment-methods .fm-method-card-ready {
    grid-template-columns: 2rem minmax(0, 1fr);
    min-height: 3.5rem;
}

#cart-view [data-checkout-timing-fields] {
    margin-top: .7rem;
    padding-top: .7rem;
    border-top: 1px solid #e8eef6;
}

#cart-view .checkout-user-section-delivery.is-pickup-mode [data-checkout-timing-fields] {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

#cart-view .checkout-user-section-delivery.is-pickup-mode {
    border-top-color: #005bff;
    background: #f8fbff;
}

@media (max-width: 767.98px) {
    #cart-view .checkout-shipment-panel,
    #cart-view .checkout-payment-panel {
        padding: .75rem;
        border-radius: 1.1rem;
    }

    #cart-view .checkout-methods-grid {
        grid-template-columns: 1fr;
        gap: .72rem;
    }

    #cart-view .cart-shipment-name,
    #cart-view .cart-payment-name {
        max-width: 12rem;
        font-size: .62rem;
    }

    #cart-view .fm-fulfilment-tabs {
        gap: .35rem;
        margin-bottom: .58rem;
        padding: .22rem;
    }

    #cart-view .fm-fulfilment-tab {
        grid-template-columns: 1.7rem minmax(0, 1fr);
        gap: .42rem;
        min-height: 3.05rem;
        padding: .4rem .45rem;
    }

    #cart-view .fm-fulfilment-tab__icon {
        width: 1.7rem;
        height: 1.7rem;
        font-size: .7rem;
    }

    #cart-view .fm-fulfilment-tab strong {
        font-size: .72rem;
    }

    #cart-view .fm-fulfilment-tab small {
        font-size: .56rem;
    }

    #cart-view .shipment-methods.checkout-choice-list,
    #cart-view .payment-methods.checkout-choice-list {
        gap: .42rem;
    }

    #cart-view .shipment-methods.checkout-choice-list[data-active-mode="delivery"] {
        display: flex;
        overflow-x: auto;
        padding: 1px .7rem .18rem 1px;
        scroll-padding-inline: 1px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    #cart-view .shipment-methods.checkout-choice-list[data-active-mode="delivery"]::-webkit-scrollbar {
        display: none;
    }

    #cart-view .shipment-methods[data-active-mode="delivery"] .fm-method-card-ready {
        flex: 0 0 calc((100% - .42rem) / 2.14);
        scroll-snap-align: start;
    }

    #cart-view .shipment-methods.checkout-choice-list[data-active-mode="pickup"] {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
    }

    #cart-view .payment-methods.checkout-choice-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
    }

    #cart-view .payment-methods.checkout-choice-list.has-payment-carousel {
        display: flex !important;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 1px .7rem .18rem 1px;
        scroll-padding-inline: 1px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    #cart-view .payment-methods.checkout-choice-list.has-payment-carousel::-webkit-scrollbar {
        display: none;
    }

    #cart-view .payment-methods.checkout-choice-list.has-payment-carousel .fm-method-card-ready {
        flex: 0 0 calc((100% - .42rem) / 2.08);
        scroll-snap-align: start;
    }

    #cart-view .shipment-methods.checkout-choice-list[data-active-mode="pickup"] .fm-method-card-ready,
    #cart-view .payment-methods.checkout-choice-list .fm-method-card-ready {
        min-width: 0;
    }

    #cart-view .checkout-choice-card.fm-method-card-ready {
        grid-template-columns: 1.7rem minmax(0, 1fr);
        gap: .5rem;
        min-height: 3.35rem;
        padding: .48rem .52rem;
        border-radius: .86rem;
    }

    #cart-view .shipment-methods .checkout-choice-card.fm-method-card-ready {
        grid-template-columns: 1.7rem minmax(0, 1fr);
    }

    #cart-view .shipment-methods[data-active-mode="pickup"] .checkout-choice-card.fm-method-card-ready {
        grid-template-columns: 1.7rem minmax(0, 1fr) auto;
        gap: .38rem;
    }

    #cart-view .fm-method-card-ready > input[type="radio"] {
        width: 1.7rem !important;
        height: 1.7rem !important;
        border-radius: .5rem !important;
    }

    #cart-view .fm-method-copy__title {
        font-size: .7rem;
    }

    #cart-view .fm-method-copy__note {
        font-size: .54rem;
        line-height: 1.22;
    }

    #cart-view .fm-method-copy__price {
        grid-column: 2;
        justify-self: start;
        margin-top: .05rem;
        padding: .2rem .36rem;
        font-size: .56rem;
    }

    #cart-view .shipment-methods[data-active-mode="pickup"] .fm-method-copy__price {
        grid-column: 3;
        justify-self: end;
        margin-top: 0;
        padding-inline: .32rem;
        font-size: .52rem;
    }

    #cart-view .payment-methods .fm-method-card-ready {
        min-height: 3.3rem;
    }
}

@media (max-width: 389.98px) {
    #cart-view .fm-fulfilment-tab small {
        white-space: normal;
    }

    #cart-view .shipment-methods[data-active-mode="delivery"] .fm-method-card-ready {
        flex-basis: calc((100% - .38rem) / 2.08);
    }

    #cart-view .checkout-choice-card.fm-method-card-ready {
        gap: .4rem;
        padding-inline: .48rem;
    }

    #cart-view .fm-method-copy__title {
        font-size: .66rem;
    }

    #cart-view .fm-method-copy__note {
        font-size: .53rem;
    }
}

/* Keep commerce drawers above the floating consultant. */
body > .fm-cart-drawer > .offcanvas-backdrop,
body > .fm-wishlist-drawer > .offcanvas-backdrop,
body > .fm-compare-drawer > .offcanvas-backdrop {
    z-index: 1110 !important;
}

body > .fm-cart-drawer .offcanvas,
body > .fm-wishlist-drawer .offcanvas,
body > .fm-compare-drawer .offcanvas {
    z-index: 1120 !important;
}
