:root {
    --fastora-red: #d71920;
    --fastora-red-dark: #b80f16;
    --fastora-green: #2f8f2f;
    --fastora-ink: #171717;
    --fastora-muted: #737373;
    --fastora-line: #ece7df;
    --fastora-surface: #fffdf9;
    --fastora-soft: #f7f1e8;
    --fastora-shadow: 0 18px 45px rgba(49, 32, 20, .1);
}

html {
    scroll-behavior: smooth;
}

body.fastora-shell {
    background:
        radial-gradient(circle at 8% 5%, rgba(215, 25, 32, .08), transparent 26rem),
        linear-gradient(180deg, #fffaf2 0, #fff 34rem);
    color: var(--fastora-ink);
    font-family: dana, IRANSans, Tahoma, sans-serif;
    min-height: 100vh;
}

.fastora-container {
    width: min(1260px, calc(100% - 32px));
    margin-inline: auto;
}

.fastora-shell a {
    color: inherit;
    text-decoration: none;
}

.fastora-shell a:hover {
    color: var(--fastora-red);
    text-decoration: none;
}

.fastora-header {
    position: sticky;
    top: 0;
    z-index: 50;
    padding: 14px 0 10px;
    background: rgba(255, 253, 249, .86);
    border-bottom: 1px solid rgba(236, 231, 223, .8);
    backdrop-filter: blur(18px);
}

.fastora-header__bar {
    display: grid;
    grid-template-columns: auto minmax(260px, 1fr) auto auto;
    gap: 16px;
    align-items: center;
}

.fastora-logo {
    display: inline-flex;
    align-items: center;
    width: 162px;
    height: 46px;
    overflow: hidden;
    white-space: nowrap;
}

.fastora-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.fastora-logo__mark {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 11px;
    background: var(--fastora-red);
    color: #fff;
    font-family: Georgia, serif;
    font-size: 22px;
    line-height: 1;
    box-shadow: 0 9px 20px rgba(215, 25, 32, .2);
}

.fastora-logo__text {
    font-size: 25px;
    letter-spacing: 0;
}

.fastora-logo--footer {
    width: 176px;
    height: 52px;
}

.fastora-search {
    position: relative;
    display: flex;
    align-items: center;
    height: 46px;
    border: 1px solid var(--fastora-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 26px rgba(43, 32, 20, .05);
    overflow: visible;
}

.fastora-search input {
    flex: 1;
    height: 100%;
    min-width: 0;
    padding: 0 18px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--fastora-ink);
    font-size: 14px;
}

.fastora-search button {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border: 0;
    background: transparent;
    color: var(--fastora-muted);
    cursor: pointer;
    font-size: 15px;
}

.fastora-search__results {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    left: 0;
    z-index: 60;
}

.fastora-nav,
.fastora-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.fastora-nav a {
    font-size: 14px;
    font-weight: 700;
    color: #3c332d;
    white-space: nowrap;
}

.fastora-account,
.fastora-cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 42px;
    border: 1px solid var(--fastora-line);
    border-radius: 14px;
    background: #fff;
    color: var(--fastora-ink);
    font-weight: 800;
    box-shadow: 0 8px 24px rgba(43, 32, 20, .05);
}

.fastora-account i,
.fastora-cart i {
    font-size: 15px;
}

.fastora-account {
    padding: 0 13px;
}

.fastora-cart {
    position: relative;
    width: 46px;
    color: var(--fastora-red);
}

.fastora-cart span {
    position: absolute;
    top: -6px;
    left: -5px;
    display: grid;
    min-width: 20px;
    height: 20px;
    place-items: center;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--fastora-red);
    color: #fff;
    font-size: 11px;
    line-height: 1;
}

.fastora-category-strip {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    overflow-x: auto;
    scrollbar-width: none;
}

.fastora-category-strip::-webkit-scrollbar {
    display: none;
}

.fastora-category-strip a {
    flex: 0 0 auto;
    padding: 8px 14px;
    border: 1px solid var(--fastora-line);
    border-radius: 999px;
    background: #fff;
    color: #4a4039;
    font-size: 13px;
    font-weight: 800;
}

.fastora-mobile-nav {
    display: none;
}

.fastora-home {
    padding: 22px 0 64px;
}

.fastora-hero {
    position: relative;
    display: grid;
    min-height: 330px;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 26px;
    background:
        linear-gradient(90deg, rgba(255, 250, 242, .95) 0, rgba(255, 250, 242, .76) 42%, rgba(255, 250, 242, .4) 100%),
        var(--fastora-hero-image, linear-gradient(135deg, #f7f1e8, #fff));
    background-size: cover;
    background-position: center;
    box-shadow: var(--fastora-shadow);
}

.fastora-hero__visual {
    min-height: 330px;
}

.fastora-hero__content {
    max-width: 510px;
    padding: 42px 46px;
}

.fastora-kicker {
    margin: 0 0 10px;
    color: var(--fastora-green);
    font-size: 13px;
    font-weight: 900;
}

.fastora-hero h1 {
    margin: 0;
    color: var(--fastora-ink);
    font-size: clamp(31px, 4vw, 52px);
    font-weight: 950;
    line-height: 1.35;
    letter-spacing: 0;
}

.fastora-hero p:not(.fastora-kicker) {
    margin: 14px 0 0;
    color: #4f463f;
    font-size: 16px;
    line-height: 2;
}

.fastora-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.fastora-primary-btn,
.fastora-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 128px;
    height: 46px;
    padding: 0 20px;
    border-radius: 13px;
    font-weight: 900;
}

.fastora-primary-btn {
    background: var(--fastora-red);
    color: #fff !important;
    box-shadow: 0 14px 28px rgba(215, 25, 32, .24);
}

.fastora-primary-btn:hover {
    background: var(--fastora-red-dark);
}

.fastora-secondary-btn {
    border: 1px solid var(--fastora-line);
    background: rgba(255, 255, 255, .82);
    color: var(--fastora-ink);
}

.fastora-hero__plate {
    position: absolute;
    right: 28px;
    bottom: 28px;
    display: grid;
    width: 88px;
    height: 88px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 50%;
    background: rgba(255, 255, 255, .78);
    color: var(--fastora-red);
    box-shadow: 0 18px 38px rgba(43, 32, 20, .12);
}

.fastora-hero__plate span {
    margin-top: 9px;
    font-size: 27px;
    font-weight: 950;
    line-height: 1;
}

.fastora-hero__plate small {
    margin-top: -17px;
    color: var(--fastora-muted);
    font-size: 12px;
    font-weight: 800;
}

.fastora-section {
    margin-top: 34px;
}

.fastora-section__header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 15px;
}

.fastora-section__header h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 0;
}

.fastora-section__header a {
    color: var(--fastora-red);
    font-weight: 900;
}

.fastora-category-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(112px, 1fr));
    gap: 12px;
}

.fastora-category-card {
    display: grid;
    min-height: 116px;
    place-items: center;
    gap: 7px;
    padding: 12px;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
    color: var(--fastora-ink);
    font-weight: 900;
    text-align: center;
    box-shadow: 0 10px 25px rgba(43, 32, 20, .05);
}

.fastora-category-card__image {
    display: grid;
    width: 64px;
    height: 58px;
    place-items: center;
    overflow: hidden;
    border-radius: 16px;
    background: var(--fastora-soft);
}

.fastora-category-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fastora-product-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

.fastora-product-grid--compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fastora-product-card {
    display: flex;
    min-width: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(43, 32, 20, .06);
}

.fastora-product-card__media {
    position: relative;
    display: block;
    aspect-ratio: 1.18 / 1;
    overflow: hidden;
    background: var(--fastora-soft);
}

.fastora-product-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .22s ease;
}

.fastora-product-card:hover .fastora-product-card__media img {
    transform: scale(1.035);
}

.fastora-product-card__badge {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 5px 9px;
    border-radius: 999px;
    background: var(--fastora-red);
    color: #fff;
    font-size: 11px;
    font-weight: 900;
}

.fastora-product-card__body {
    display: flex;
    min-height: 156px;
    flex: 1;
    flex-direction: column;
    padding: 12px;
}

.fastora-product-card__title {
    min-height: 42px;
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 950;
    line-height: 1.55;
}

.fastora-product-card__meta {
    display: flex;
    min-height: 24px;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 6px;
    color: var(--fastora-muted);
    font-size: 12px;
    font-weight: 700;
}

.fastora-product-card__meta del {
    color: #aaa;
}

.fastora-product-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 10px;
}

.fastora-product-card__price strong {
    display: block;
    color: var(--fastora-ink);
    font-size: 16px;
    font-weight: 950;
}

.fastora-product-card__price span {
    color: var(--fastora-muted);
    font-size: 11px;
    font-weight: 800;
}

.fastora-add-btn {
    display: grid;
    width: 38px;
    height: 34px;
    place-items: center;
    border: 0;
    border-radius: 11px;
    background: var(--fastora-red);
    color: #fff;
    cursor: pointer;
    font-size: 21px;
    font-weight: 900;
    line-height: 1;
}

.fastora-add-btn:hover {
    background: var(--fastora-red-dark);
}

.fastora-promises {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 28px;
    padding: 16px;
    border: 1px solid var(--fastora-line);
    border-radius: 20px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 10px 25px rgba(43, 32, 20, .05);
}

.fastora-promises div {
    display: grid;
    grid-template-columns: 42px 1fr;
    column-gap: 10px;
    align-items: center;
}

.fastora-promises i {
    grid-row: span 2;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 14px;
    background: #eef8ed;
    color: var(--fastora-green);
    font-size: 22px;
}

.fastora-promises strong {
    font-size: 15px;
    font-weight: 950;
}

.fastora-promises span {
    color: var(--fastora-muted);
    font-size: 12px;
    font-weight: 700;
}

.fastora-footer {
    margin-top: 40px;
    padding: 28px 0 24px;
    border-top: 1px solid var(--fastora-line);
    background: #fff;
}

.fastora-footer__top {
    display: grid;
    grid-template-columns: minmax(240px, 1.1fr) 2fr;
    gap: 32px;
}

.fastora-logo--footer .fastora-logo__mark {
    width: 31px;
    height: 31px;
    font-size: 20px;
}

.fastora-footer__brand p {
    max-width: 400px;
    margin: 13px 0 0;
    color: var(--fastora-muted);
    line-height: 1.9;
}

.fastora-footer__socials {
    display: flex;
    gap: 8px;
    margin-top: 16px;
}

.fastora-footer__socials a {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid var(--fastora-line);
    border-radius: 12px;
    color: var(--fastora-red);
}

.fastora-footer__links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.fastora-footer__links h3 {
    margin: 0 0 12px;
    font-size: 15px;
    font-weight: 950;
}

.fastora-footer__links a {
    display: block;
    margin-bottom: 8px;
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 700;
}

.fastora-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 22px;
    padding-top: 16px;
    border-top: 1px solid var(--fastora-line);
    color: var(--fastora-muted);
    font-size: 12px;
    font-weight: 800;
}

.shopping-cart-modal .modal-content,
.login-form-modal .modal-content {
    border: 0;
    border-radius: 20px;
    box-shadow: var(--fastora-shadow);
}

.shopping-cart-modal .modal-header,
.login-form-modal .modal-header {
    border-bottom-color: var(--fastora-line);
}

.gi-btn-primary,
.btn-add-to-cart,
.submit-basket .gi-btn,
.shopping-cart-modal .gi-btn-primary {
    border-color: var(--fastora-red) !important;
    background: var(--fastora-red) !important;
    color: #fff !important;
    border-radius: 13px !important;
}

.fastora-shell main,
.fastora-account-shell .content-wrapper {
    min-height: 58vh;
}

.fastora-shell .section,
.fastora-shell .page-section,
.fastora-shell .product-details-section,
.fastora-shell .product-description-section,
.fastora-shell .product-slider-section {
    padding-block: 22px;
}

.fastora-shell .container {
    max-width: 1260px;
}

.fastora-shell .breadcrumb-section {
    display: none;
}

.fastora-shell .department-landing__header {
    margin: 24px auto 14px;
    color: var(--fastora-ink);
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 0;
}

.fastora-shell .card-list {
    display: grid;
    width: min(1260px, calc(100% - 32px));
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    margin: 0 auto 22px;
}

.fastora-shell .card-list-item {
    margin: 0;
}

.fastora-shell .department-card {
    display: grid;
    min-height: 128px;
    place-items: center;
    padding: 14px;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .06);
}

.fastora-shell .department-card:hover {
    border-color: rgba(215, 25, 32, .28);
    transform: translateY(-2px);
}

.fastora-shell .department-card__img {
    width: 86px !important;
    height: 70px !important;
    min-width: 0 !important;
    max-height: none !important;
    object-fit: contain;
    margin: 0 !important;
}

.fastora-shell .department-card__name {
    margin: 0 0 8px !important;
    color: var(--fastora-ink);
    font-size: 14px !important;
    font-weight: 900 !important;
}

.fastora-shell .products-list-section {
    padding-top: 8px;
}

.fastora-shell .product-list,
.fastora-shell .shop-card,
.fastora-shell .shop-step,
.fastora-shell .invoice,
.fastora-shell .tab-box,
.fastora-shell .shopping-options,
.fastora-shell .product-info,
.fastora-shell .site-sidebar,
.fastora-account-shell .o-box,
.fastora-account-shell .c-profile-box {
    border: 1px solid var(--fastora-line);
    border-radius: 20px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 16px 42px rgba(49, 32, 20, .07);
}

.fastora-shell .product-list__header {
    padding: 14px 16px;
    border-bottom: 1px solid var(--fastora-line);
    background: transparent;
}

.fastora-shell .product-list__body {
    padding: 14px;
}

.fastora-shell .available,
.fastora-shell .sort-by {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px 14px;
}

.fastora-shell .available__title,
.fastora-shell .sort-by__title {
    position: static;
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 900;
}

.fastora-shell .available__title i,
.fastora-shell .sort-by__icon {
    position: static !important;
    margin-left: 6px;
    color: var(--fastora-red);
}

.fastora-shell .available__list,
.fastora-shell .sort-by__list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
}

.fastora-shell .available__item,
.fastora-shell .sort-by__item {
    margin: 0;
}

.fastora-shell .available__link,
.fastora-shell .sort-by__link {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 13px;
    border: 1px solid var(--fastora-line);
    border-radius: 999px;
    background: #fff;
    color: #4a4039;
    font-size: 12px;
    font-weight: 900;
}

.fastora-shell .available__link_is-active,
.fastora-shell .sort-by__link_is-active {
    border-color: rgba(215, 25, 32, .2);
    background: rgba(215, 25, 32, .08);
    color: var(--fastora-red);
}

.fastora-shell .product-item {
    position: relative;
    display: flex;
    height: 100%;
    min-height: 332px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: none;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.fastora-shell .product-item:hover {
    border-color: rgba(215, 25, 32, .22);
    box-shadow: 0 18px 34px rgba(49, 32, 20, .09);
    transform: translateY(-2px);
}

.fastora-shell .product-item__header {
    position: relative;
    height: 172px;
    padding: 12px;
    background: linear-gradient(180deg, #fffaf4, #fff);
}

.fastora-shell .product-item__image {
    width: 100%;
    height: 148px;
    object-fit: contain;
}

.fastora-shell .product-item__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 12px 14px 14px;
}

.fastora-shell .product-item__title {
    min-height: 44px;
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 900;
    line-height: 1.75;
}

.fastora-shell .product-item__price {
    margin-top: auto;
}

.fastora-shell .product-item__old-price {
    color: #a39b92;
    font-size: 12px;
}

.fastora-shell .product-item__new-price {
    margin: 4px 0 0;
    color: var(--fastora-ink);
    font-size: 17px;
    font-weight: 950;
}

.fastora-shell .product-item__discount-percentage,
.fastora-shell .product-item__status {
    position: absolute;
    top: 12px;
    border-radius: 999px;
    background: rgba(215, 25, 32, .08);
    color: var(--fastora-red);
    font-weight: 900;
    font-size: 11px;
    padding: 3px 8px;
    line-height: 1.4;
    z-index: 2;
}

.fastora-shell .product-item__discount-percentage {
    right: 12px;
}

.fastora-shell .product-item__status {
    left: 12px;
}

.fastora-shell .product-item__status_out-of-stock {
    background: rgba(49, 32, 20, .08);
    color: var(--fastora-muted);
}

.fastora-list-add {
    margin-top: 12px;
}

.fastora-list-add__button {
    display: inline-flex;
    width: 100%;
    height: 38px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 0;
    border-radius: 12px;
    background: var(--fastora-red);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(215, 25, 32, .2);
}

.fastora-list-add__button:hover {
    background: var(--fastora-red-dark);
}

.fastora-list-qty {
    margin-top: 12px;
}

.fastora-product-qty-spinner {
    display: inline-flex;
    width: 100%;
    height: 38px;
    align-items: center;
    justify-content: space-between;
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 4px 10px rgba(43, 32, 20, .03);
}

.fastora-product-qty-spinner button {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 0;
    background: transparent;
    color: #756b63;
    cursor: pointer;
    font-size: 11px;
    transition: background-color .15s ease;
}

.fastora-product-qty-spinner button:hover {
    background-color: rgba(236, 231, 223, .3);
}

.fastora-product-qty-spinner input {
    flex: 1;
    width: 100%;
    height: 36px;
    border: 0;
    border-inline: 1px solid rgba(236, 231, 223, .95);
    color: var(--fastora-ink);
    font-size: 13px;
    font-weight: 900;
    text-align: center;
}

.fastora-shell .product-details-section .row[style*="position:relative"] {
    align-items: flex-start;
}

.fastora-shell [product-gallery] {
    position: sticky;
    top: 112px;
}

.fastora-shell .product-info {
    padding: 24px;
}

.fastora-shell .product-info__title,
.fastora-shell .product-info__title__margin,
.fastora-shell .product-info__sub__title {
    color: var(--fastora-ink);
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 950;
    letter-spacing: 0;
    line-height: 1.5;
}

.fastora-shell .product-status {
    display: inline-flex;
    margin-right: 10px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(47, 143, 47, .1);
    color: var(--fastora-green);
    font-size: 12px;
    font-weight: 900;
}

.fastora-shell .product-status_out-of-stock {
    background: rgba(215, 25, 32, .09);
    color: var(--fastora-red);
}

.fastora-shell .shopping-options {
    padding: 16px;
}

.fastora-shell .c-product__seller-row {
    border: 0;
    border-radius: 18px;
    background: #fffaf4;
}

.fastora-shell .c-product__seller-price-label {
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 900;
}

.fastora-shell .c-product__seller-price-real,
.fastora-shell .c-product__seller-price-pure {
    color: var(--fastora-red);
    font-weight: 950;
}

.fastora-shell .btn-add-to-cart,
.fastora-shell .btn-add-to-cart--full-width {
    min-height: 48px;
    box-shadow: 0 14px 26px rgba(215, 25, 32, .22);
}

.fastora-shell .option-item {
    border: 1px solid var(--fastora-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: none;
}

.fastora-shell .tab-box__header,
.fastora-shell .shop-card__header,
.fastora-shell .shop-step__header {
    border-bottom: 1px solid var(--fastora-line);
    background: transparent;
}

.fastora-shell .tab-box__link,
.fastora-shell .shop-card__title,
.fastora-shell .shop-step__title {
    color: var(--fastora-ink);
    font-weight: 950;
}

.fastora-shell .tab-box__link.active,
.fastora-shell .tab-box__link:hover {
    color: var(--fastora-red);
}

.fastora-shell .cart-sidebar {
    position: sticky;
    top: 112px;
    align-self: flex-start;
}

.fastora-shell .basket-summary,
.fastora-shell .coupon,
.fastora-shell .submit-basket {
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(49, 32, 20, .07);
}

.fastora-shell .basket-summary {
    padding: 14px;
}

.fastora-shell .basket-summary__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--fastora-line);
}

.fastora-shell .basket-summary__item:last-child {
    margin-top: 4px;
    border-bottom: 0;
    color: var(--fastora-red);
    font-size: 18px;
    font-weight: 950;
}

.fastora-shell .basket-summary__text {
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 800;
}

.fastora-shell .basket-summary__value {
    color: var(--fastora-ink);
    font-weight: 950;
}

.fastora-shell .basket-summary__value_is-important {
    color: var(--fastora-green);
}

.fastora-shell .submit-basket {
    margin-top: 14px;
    padding: 12px;
}

.fastora-shell .submit-basket__button,
.fastora-shell .gi-btn-next,
.fastora-shell .gi-btn-submit,
.fastora-shell .gi-price-filter-btn,
.fastora-shell .gi-add-address-btn,
.fastora-account-shell .btn-primary {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0 !important;
    border-radius: 13px !important;
    background: var(--fastora-red) !important;
    color: #fff !important;
    font-weight: 900 !important;
}

.fastora-shell .gi-btn-prev {
    border: 1px solid var(--fastora-line) !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: var(--fastora-ink) !important;
    font-weight: 900 !important;
}

.fastora-shell .product-card,
.fastora-shell .address-item,
.fastora-shell .ua-item {
    overflow: hidden;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .06) !important;
}

.fastora-shell .address-item_is-active,
.fastora-shell .ua-item.active {
    border-color: rgba(47, 143, 47, .32) !important;
    background: rgba(47, 143, 47, .04) !important;
}

.fastora-shell .product-card__image {
    height: 138px;
    object-fit: contain;
}

.fastora-shell .product-card__title {
    color: var(--fastora-ink);
    font-weight: 900;
}

.fastora-shell .product-card__remove-button {
    border: 0;
    border-radius: 12px;
    background: rgba(215, 25, 32, .08);
    color: var(--fastora-red);
}

.fastora-shell .product-card-count {
    border: 1px solid var(--fastora-line);
    border-radius: 999px;
    background: #fff;
}

.fastora-shell .product-card-count__button {
    color: var(--fastora-red);
}

.fastora-shell .table {
    overflow: hidden;
    border-color: var(--fastora-line) !important;
    border-radius: 16px;
}

.fastora-shell .table th,
.fastora-shell .table td {
    border-color: var(--fastora-line) !important;
    vertical-align: middle;
}

.fastora-shell .table thead th,
.fastora-shell .table thead td {
    background: #fff7ec;
    color: var(--fastora-ink);
    font-weight: 900;
}

.fastora-shell .form-control,
.fastora-shell input[type="text"],
.fastora-shell input[type="password"],
.fastora-shell input[type="email"],
.fastora-shell textarea,
.fastora-shell select,
.fastora-shell .nice-select,
.fastora-shell .select2-selection {
    min-height: 44px;
    border-color: var(--fastora-line) !important;
    border-radius: 13px !important;
    background-color: #fff !important;
    color: var(--fastora-ink);
    box-shadow: none !important;
}

.fastora-shell textarea.form-control,
.fastora-shell textarea {
    min-height: 112px;
}

.fastora-shell .form-control:focus,
.fastora-shell input:focus,
.fastora-shell textarea:focus,
.fastora-shell .select2-selection:focus {
    border-color: rgba(215, 25, 32, .45) !important;
    box-shadow: 0 0 0 3px rgba(215, 25, 32, .08) !important;
}

.fastora-account-shell .container-scroller,
.fastora-account-shell .page-body-wrapper,
.fastora-account-shell .main-panel,
.fastora-account-shell .content-wrapper {
    background: transparent !important;
}

.fastora-account-shell .content-wrapper {
    width: min(1260px, calc(100% - 32px));
    margin: 22px auto 0;
    padding: 0;
}

.fastora-account-shell .row-account {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 18px;
}

.fastora-account-shell .col-3-account,
.fastora-account-shell .col-9-account {
    width: auto;
    max-width: none;
    padding: 0;
}

.fastora-account-shell .c-profile-box,
.fastora-account-shell .o-box {
    overflow: hidden;
}

.fastora-account-shell .c-profile-box__header {
    background: linear-gradient(135deg, rgba(215, 25, 32, .08), rgba(47, 143, 47, .08));
}

.fastora-account-shell .c-profile-box__avatar {
    background-image: url('/images/fastora/fastora-app-icon.png') !important;
    background-size: cover;
    border-radius: 18px;
}

.fastora-account-shell .c-profile-menu__item,
.fastora-account-shell .c-profile-box__row {
    color: var(--fastora-ink);
    font-weight: 850;
}

.fastora-account-shell .c-profile-menu__item.is-active,
.fastora-account-shell .c-profile-menu__item:hover {
    background: rgba(215, 25, 32, .06);
    color: var(--fastora-red);
}

.fastora-account-shell .o-box__header {
    border-bottom: 1px solid var(--fastora-line);
    background: transparent;
}

.fastora-account-shell .o-box__title {
    color: var(--fastora-ink);
    font-weight: 950;
}

.fastora-shell .pagination .page-link,
.fastora-shell .pagination a,
.fastora-shell .pagination span {
    border-color: var(--fastora-line);
    border-radius: 11px !important;
    color: var(--fastora-ink);
}

.fastora-shell .pagination .active .page-link,
.fastora-shell .pagination .active a,
.fastora-shell .pagination .active span {
    background: var(--fastora-red);
    color: #fff;
}

.fastora-shell .modal-backdrop.show {
    opacity: .48;
}

.fastora-shell .modal {
    padding-right: 0 !important;
}

.shopping-cart-modal .modal-dialog {
    width: min(960px, calc(100% - 28px));
    max-width: 960px;
    margin: 44px auto;
}

.login-form-modal .modal-dialog {
    width: min(440px, calc(100% - 28px));
    max-width: 440px;
    margin: 56px auto;
}

.shopping-cart-modal .modal-content,
.login-form-modal .modal-content {
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .95);
    background: #fffdf9;
}

.shopping-cart-modal .modal-header,
.login-form-modal .modal-header {
    display: flex;
    min-height: 58px;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    background: #fffdf9;
}

.shopping-cart-modal .modal-header .heading,
.login-form-modal .modal-title {
    margin: 0;
    color: var(--fastora-ink);
    font-size: 18px;
    font-weight: 950;
}

.shopping-cart-modal .modal-header i,
.login-form-modal .modal-title::before {
    margin-left: 8px;
    color: var(--fastora-red);
}

.login-form-modal .modal-title::before {
    content: "\f2f6";
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free";
    font-weight: 900;
}

.shopping-cart-modal .close,
.login-form-modal .close {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    background: #fff;
    color: var(--fastora-muted);
    font-size: 24px;
    opacity: 1;
    box-shadow: 0 8px 22px rgba(49, 32, 20, .08);
}

.shopping-cart-modal .modal-body,
.login-form-modal .modal-body {
    padding: 18px;
}

.shopping-cart-modal .modal-basket.scrolled {
    max-height: calc(100vh - 250px);
    overflow: auto;
    padding: 2px;
}

.shopping-cart-modal .shopping-cart-content {
    color: var(--fastora-ink);
}

.shopping-cart-modal .gi-shop-cart-table {
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
}

.shopping-cart-modal .gi-responsive-table tbody tr > th {
    display: none !important;
}

.shopping-cart-modal .gi-shop-cart-table thead th {
    padding: 14px 12px;
    border: 0 !important;
    border-bottom: 1px solid var(--fastora-line) !important;
    background: #fff7ec;
    text-align: center;
    font-size: 13px;
    font-weight: 950;
}

.shopping-cart-modal .gi-shop-cart-table td {
    padding: 14px 12px !important;
    border-top: 0 !important;
    border-right: 1px solid var(--fastora-line) !important;
    text-align: center;
}

.shopping-cart-modal .gi-shop-cart-table td:first-of-type {
    border-right: 0 !important;
}

.shopping-cart-modal .product-name {
    min-width: 190px;
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 900;
    line-height: 1.8;
}

.shopping-cart-modal .gi-shop-cart-table__product-link {
    position: relative;
    display: inline-flex;
    width: 78px;
    height: 78px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fffaf4;
}

.shopping-cart-modal .gi-shop-cart-table__product-link img {
    width: 64px;
    height: 64px;
    object-fit: contain;
}

.shopping-cart-modal .gi-shop-cart-table__product-count {
    position: absolute;
    top: -7px;
    left: -7px;
    display: inline-flex;
    min-width: 24px;
    height: 24px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(215, 25, 32, .2);
    border-radius: 999px;
    background: #fff;
    color: var(--fastora-red);
    font-size: 12px;
    font-weight: 950;
}

.shopping-cart-modal .gi-number-spinner {
    display: inline-flex;
    height: 36px;
    align-items: center;
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 999px;
    background: #fff;
}

.shopping-cart-modal .gi-number-spinner .btn {
    width: 38px;
    height: 34px;
    border: 0;
    background: transparent;
    color: var(--fastora-red);
    font-weight: 950;
}

.shopping-cart-modal .gi-number-spinner .count-input {
    width: 42px;
    height: 34px;
    border: 0;
    font-weight: 900;
}

.shopping-cart-modal .cart-price {
    margin: 0;
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 900;
}

.shopping-cart-modal del.cart-price {
    color: #a99e93;
    font-size: 12px;
}

.shopping-cart-modal .gi-shop-cart-table__remove-button {
    display: inline-grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 0 !important;
    border-radius: 12px !important;
    background: rgba(215, 25, 32, .08) !important;
    color: var(--fastora-red) !important;
}

.shopping-cart-modal .cart-amount-wrapper {
    margin-top: 18px;
}

.shopping-cart-modal .modal-footer,
.login-form-modal .modal-footer {
    border-top: 1px solid var(--fastora-line);
    background: #fff;
}

.shopping-cart-modal .modal-footer .gi-btn-primary {
    min-width: 220px;
    min-height: 48px;
    box-shadow: 0 14px 28px rgba(215, 25, 32, .22);
}

.login-form-modal .form__label,
.login-register-wrapper .form__label {
    margin-bottom: 8px;
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 900;
}

.login-form-modal .gi-btn-login,
.login-register-wrapper .gi-btn-login,
.fastora-shell .gi-btn-login {
    display: inline-flex;
    width: 100%;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    border-radius: 13px !important;
    background: var(--fastora-red) !important;
    color: #fff !important;
    font-weight: 950 !important;
    box-shadow: 0 14px 28px rgba(215, 25, 32, .2);
}

.login-form-modal .forgot-password,
.login-register-wrapper .forgot-password {
    color: var(--fastora-red);
    font-size: 12px;
    font-weight: 800;
}

.login-form-modal .remember-me,
.login-register-wrapper .remember-me {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 800;
}

.login-form-modal .remember-me__checkmark,
.login-register-wrapper .remember-me__checkmark {
    border: 1px solid var(--fastora-line);
    border-radius: 8px;
    background: #fff;
}

.login-form-modal .modal-footer {
    justify-content: center;
    gap: 8px;
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 800;
}

.fastora-shell .action-link {
    color: var(--fastora-red) !important;
    font-weight: 950;
}

.fastora-shell .login-register-wrapper {
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 22px;
    background: #fffdf9;
    box-shadow: var(--fastora-shadow);
}

.fastora-shell .login-register-wrapper .nav-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-bottom: 1px solid var(--fastora-line);
    background: #fff;
}

.fastora-shell .login-register-wrapper .nav-tabs .nav-link {
    min-height: 52px;
    border: 0;
    border-radius: 0;
    color: var(--fastora-muted);
    font-weight: 950;
    text-align: center;
}

.fastora-shell .login-register-wrapper .nav-tabs .nav-link.active {
    background: rgba(215, 25, 32, .07);
    color: var(--fastora-red);
}

.fastora-shell .login-register-wrapper .card {
    border: 0;
    background: transparent;
}

.fastora-shell .login-register-wrapper .card-body {
    padding: 22px;
}

.fastora-image-fallback {
    padding: 18px !important;
    object-fit: contain !important;
    background: linear-gradient(180deg, #fffaf4, #fff) !important;
}

.fastora-shell .ui.header {
    margin: 8px 0 18px;
    color: var(--fastora-ink);
    font-family: inherit;
    font-size: 24px;
    font-weight: 950;
    line-height: 1.55;
}

.fastora-shell .ui.label.small {
    display: inline-flex;
    margin-right: 10px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(47, 143, 47, .1);
    color: var(--fastora-green);
    font-size: 12px;
    font-weight: 900;
}

.fastora-shell .ui.stackable.secondary.pointing.menu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    padding: 12px;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
}

.fastora-shell .ui.stackable.secondary.pointing.menu .header.item {
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 950;
}

.fastora-shell .ui.stackable.secondary.pointing.menu .item {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding: 0 13px;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #4a4039 !important;
    font-size: 12px;
    font-weight: 900;
}

.fastora-shell .ui.stackable.secondary.pointing.menu .item.active {
    border-color: rgba(215, 25, 32, .24) !important;
    background: rgba(215, 25, 32, .08) !important;
    color: var(--fastora-red) !important;
}

.fastora-shell .product-list-content > .ui.centered.grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
}

.fastora-shell .product-list-content > .ui.centered.grid + .ui.centered.grid {
    display: flex;
    justify-content: center;
    margin-top: 18px;
}

.fastora-shell .pd-gallery {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 16px;
    border: 1px solid var(--fastora-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(49, 32, 20, .07);
}

.fastora-shell .pd-gallery__item {
    display: grid;
    min-height: 340px;
    place-items: center;
    border-radius: 18px;
    background: linear-gradient(180deg, #fffaf4, #fff);
}

.fastora-shell .pd-gallery__image {
    width: 100%;
    max-width: 360px;
    height: 330px;
    object-fit: contain;
}

.fastora-shell .add-to-whishlist-btn {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid var(--fastora-line);
    border-radius: 14px;
    background: #fff;
    color: var(--fastora-red);
    box-shadow: 0 10px 24px rgba(49, 32, 20, .08);
}

.fastora-shell .option-item {
    display: flex;
    min-height: 58px;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
}

.fastora-shell .option-item__image {
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.fastora-shell .option-item__text {
    flex: 1;
    margin: 0;
    color: var(--fastora-ink);
    font-weight: 900;
}

.fastora-shell .tab-box__header {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px;
}

.fastora-shell .tab-box__link {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--fastora-line);
    border-radius: 999px;
    background: #fff;
    color: var(--fastora-muted);
    font-size: 13px;
}

.fastora-shell .tab-box__link.active {
    border-color: rgba(215, 25, 32, .24);
    background: rgba(215, 25, 32, .08);
    color: var(--fastora-red);
}

.fastora-shell .tab-box__content {
    min-height: 160px;
    padding: 18px;
    color: #342b25;
    font-size: 14px;
    line-height: 2;
}

.fastora-shell .slider__header {
    margin-bottom: 14px;
}

.fastora-shell .slider__title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--fastora-ink);
    font-size: 22px;
    font-weight: 950;
}

.fastora-shell .slider__title::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--fastora-red);
}

.fastora-shell .slider__wrapper {
    overflow: hidden;
    padding: 8px 0 22px;
}

.fastora-shell .slider__arrow {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid var(--fastora-line);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 8px 22px rgba(49, 32, 20, .08);
}

.fastora-shell .department-landing__header.top {
    display: flex;
    width: min(1260px, calc(100% - 32px));
    align-items: center;
    justify-content: space-between;
    margin: 26px auto 14px;
}

.fastora-shell .department-landing__header.top::after {
    content: "";
    display: block;
    width: 40px;
    height: 4px;
    border-radius: 999px;
    background: var(--fastora-red);
}

.fastora-shell .shop-landing__rail-nav-container {
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(49, 32, 20, .07);
}

.fastora-shell .shop-landing__rail-nav-list {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 12px;
}

.fastora-shell .shop-landing__rail-nav-list a {
    display: flex;
    min-height: 38px;
    align-items: center;
    padding: 0 12px;
    border-radius: 12px;
    color: var(--fastora-ink);
    font-size: 13px;
    font-weight: 900;
}

.fastora-shell .shop-landing__rail-nav-list a:hover {
    background: rgba(215, 25, 32, .07);
    color: var(--fastora-red);
}

.fastora-shell .hz-scrollbar__track-container {
    display: none;
}

.fastora-shell .intro-slider {
    overflow: hidden;
    min-height: 190px;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 22px !important;
    background: #fffaf4;
    box-shadow: 0 16px 42px rgba(49, 32, 20, .07) !important;
}

.fastora-shell .intro-slider__image {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.fastora-shell .product-info__header {
    position: relative;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--fastora-line);
}

.fastora-shell .product-info__item {
    position: static !important;
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px !important;
}

.fastora-shell .product-info__item > span,
.fastora-shell .product-info__item h5 > div {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    border: 1px solid var(--fastora-line);
    border-radius: 999px;
    background: #fff !important;
    color: var(--fastora-muted) !important;
    font-size: 12px !important;
    font-family: inherit !important;
    font-weight: 900;
}

.fastora-shell .product-info__item h5 {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

.fastora-shell .product-info__item a {
    color: var(--fastora-red) !important;
    border-bottom: 0 !important;
}

.fastora-shell .product-info__body {
    padding-top: 18px;
}

.fastora-shell .property-area {
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
}

.fastora-shell .c-ui-table {
    width: 100%;
    margin: 0;
}

.fastora-shell .c-ui-table__cell {
    padding: 12px !important;
    border-color: var(--fastora-line) !important;
    color: var(--fastora-ink);
    font-size: 13px;
    font-weight: 900;
}

.fastora-shell .c-ui-table__cell--smaller {
    background: #fff7ec;
    color: var(--fastora-muted);
}

.fastora-shell .option-item__icon {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: 12px;
    background: rgba(47, 143, 47, .1);
    color: var(--fastora-green);
    font-size: 16px;
}

.fastora-shell .option-item__help-icon {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border: 1px solid var(--fastora-line);
    border-radius: 50%;
    color: var(--fastora-muted);
}

.fastora-shell .similar-matching-holder {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
}

.fastora-shell .similar-matching-holder-right,
.fastora-shell .similar-matching-holder-left {
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .06);
}

.fastora-shell .similar-matching-holder-lable {
    display: block;
    margin: 0;
    padding: 12px 14px;
    border-bottom: 1px solid var(--fastora-line);
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 950;
}

.fastora-shell .similar-matching-holder-child {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 12px;
}

.fastora-shell .slider-item {
    overflow: hidden;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: #fff;
}

.fastora-shell .slider-item__header {
    display: grid;
    height: 154px;
    place-items: center;
    padding: 12px;
    background: linear-gradient(180deg, #fffaf4, #fff);
}

.fastora-shell .slider-item__image {
    width: 100%;
    height: 126px;
    object-fit: contain;
}

.fastora-shell .slider-item__content {
    padding: 12px;
}

.fastora-shell .slider-item__title {
    color: var(--fastora-ink);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.8;
}

.fastora-shell .product-list__body .row {
    row-gap: 14px;
}

.fastora-shell .product-list__body .mobile-item {
    padding: 7px !important;
}

@media (max-width: 991px) {
    .fastora-shell .product-list-content > .ui.centered.grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .fastora-shell [product-gallery] {
        position: static;
    }

    .fastora-shell .similar-matching-holder {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .shopping-cart-modal .modal-dialog,
    .login-form-modal .modal-dialog {
        width: calc(100% - 20px);
        margin: 22px auto;
    }

    .shopping-cart-modal .modal-body,
    .login-form-modal .modal-body {
        padding: 12px;
    }

    .shopping-cart-modal .gi-shop-cart-table thead {
        display: none;
    }

    .shopping-cart-modal .gi-shop-cart-table,
    .shopping-cart-modal .gi-shop-cart-table tbody,
    .shopping-cart-modal .gi-shop-cart-table tr,
    .shopping-cart-modal .gi-shop-cart-table td {
        display: block;
        width: 100%;
    }

    .shopping-cart-modal .gi-shop-cart-table tr {
        padding: 12px;
        border-bottom: 1px solid var(--fastora-line);
    }

    .shopping-cart-modal .gi-shop-cart-table td {
        border-right: 0 !important;
        text-align: right;
    }

    .fastora-shell .product-list-content > .ui.centered.grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fastora-shell .pd-gallery__item {
        min-height: 260px;
    }

    .fastora-shell .pd-gallery__image {
        height: 250px;
    }
}

@media (max-width: 1180px) {
    .fastora-header__bar {
        grid-template-columns: auto minmax(210px, 1fr) auto;
    }

    .fastora-nav {
        display: none;
    }

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

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

    .fastora-shell .card-list {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .fastora-container {
        width: min(100% - 24px, 560px);
    }

    .fastora-header {
        padding-top: 10px;
    }

    .fastora-header__bar {
        grid-template-columns: 1fr auto;
        gap: 10px;
    }

    .fastora-logo {
        width: 132px;
        height: 40px;
    }

    .fastora-search {
        grid-column: 1 / -1;
        grid-row: 2;
        height: 44px;
    }

    .fastora-account {
        display: none;
    }

    .fastora-cart {
        width: 42px;
        height: 40px;
    }

    .fastora-category-strip {
        margin-top: 10px;
    }

    .fastora-mobile-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 90;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        padding: 8px 12px max(8px, env(safe-area-inset-bottom));
        border-top: 1px solid var(--fastora-line);
        background: rgba(255, 255, 255, .94);
        box-shadow: 0 -10px 30px rgba(43, 32, 20, .08);
        backdrop-filter: blur(16px);
    }

    .fastora-mobile-nav a {
        display: grid;
        place-items: center;
        gap: 3px;
        color: var(--fastora-muted);
        font-size: 11px;
        font-weight: 800;
    }

    .fastora-mobile-nav a.is-active,
    .fastora-mobile-nav a:hover {
        color: var(--fastora-red);
    }

    .fastora-mobile-nav i {
        font-size: 20px;
    }

    .fastora-home {
        padding-top: 14px;
        padding-bottom: 92px;
    }

    .fastora-hero {
        min-height: auto;
        grid-template-columns: 1fr;
        border-radius: 22px;
        background:
            linear-gradient(180deg, rgba(255, 250, 242, .93) 0, rgba(255, 250, 242, .76) 100%),
            var(--fastora-hero-image, linear-gradient(135deg, #f7f1e8, #fff));
        background-size: cover;
        background-position: center;
    }

    .fastora-hero__visual {
        min-height: 128px;
        order: 1;
    }

    .fastora-hero__content {
        order: 2;
        padding: 0 22px 24px;
    }

    .fastora-hero h1 {
        font-size: 29px;
    }

    .fastora-hero p:not(.fastora-kicker) {
        font-size: 14px;
        line-height: 1.9;
    }

    .fastora-hero__plate {
        top: 24px;
        right: 22px;
        bottom: auto;
        width: 72px;
        height: 72px;
    }

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

    .fastora-section__header h2 {
        font-size: 20px;
    }

    .fastora-category-grid {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }

    .fastora-category-grid::-webkit-scrollbar {
        display: none;
    }

    .fastora-category-card {
        min-width: 104px;
        min-height: 100px;
    }

    .fastora-product-grid,
    .fastora-product-grid--compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .fastora-product-card {
        border-radius: 16px;
    }

    .fastora-product-card__body {
        min-height: 148px;
        padding: 10px;
    }

    .fastora-product-card__title {
        font-size: 13px;
    }

    .fastora-product-card__price strong {
        font-size: 14px;
    }

    .fastora-promises {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 12px;
    }

    .fastora-promises div {
        grid-template-columns: 36px 1fr;
    }

    .fastora-promises i {
        width: 36px;
        height: 36px;
        border-radius: 12px;
        font-size: 18px;
    }

    .fastora-promises strong {
        font-size: 13px;
    }

    .fastora-promises span {
        font-size: 11px;
    }

    .fastora-footer {
        padding-bottom: 92px;
    }

    .fastora-footer__top,
    .fastora-footer__links {
        grid-template-columns: 1fr;
    }

    .fastora-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
    }

    .fastora-shell .section,
    .fastora-shell .page-section,
    .fastora-shell .product-details-section,
    .fastora-shell .product-description-section,
    .fastora-shell .product-slider-section {
        padding-block: 14px;
    }

    .fastora-shell .card-list {
        display: flex;
        width: min(100% - 24px, 560px);
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }

    .fastora-shell .card-list::-webkit-scrollbar {
        display: none;
    }

    .fastora-shell .card-list-item {
        flex: 0 0 120px;
    }

    .fastora-shell .product-list__header {
        padding: 12px;
    }

    .fastora-shell .product-list__body {
        padding: 10px;
    }

    .fastora-shell .mobile-item {
        padding: 5px !important;
    }

    .fastora-shell .product-item {
        min-height: 292px;
        border-radius: 16px;
    }

    .fastora-shell .product-item__header {
        height: 132px;
    }

    .fastora-shell .product-item__image {
        height: 108px;
    }

    .fastora-shell .product-item__content {
        padding: 10px;
    }

    .fastora-shell .product-item__title {
        font-size: 12px;
    }

    .fastora-shell .product-item__new-price {
        font-size: 14px;
    }

    .fastora-shell [product-gallery],
    .fastora-shell .cart-sidebar {
        position: static;
    }

    .fastora-shell .product-info,
    .fastora-shell .shopping-options {
        padding: 14px;
        border-radius: 18px;
    }

    .fastora-account-shell .content-wrapper {
        width: min(100% - 24px, 560px);
        margin-top: 14px;
        padding-bottom: 92px;
    }

    .fastora-account-shell .row-account {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 380px) {
    .fastora-product-grid,
    .fastora-product-grid--compact {
        grid-template-columns: 1fr;
    }
}

.fastora-shop-page {
    display: grid;
    width: min(1260px, calc(100% - 32px));
    grid-template-columns: minmax(0, 1fr) 286px;
    gap: 18px;
    margin: 18px auto 44px;
    align-items: start;
    direction: ltr;
}

.fastora-shop-main {
    min-width: 0;
    direction: rtl;
}

.fastora-shop-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 4px 0 14px;
}

.fastora-shop-heading h1 {
    margin: 0;
    color: var(--fastora-ink);
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 0;
}

.fastora-shop-heading span {
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 850;
}

.fastora-category-hero {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 14px;
    margin-bottom: 14px;
}

.fastora-category-nav,
.fastora-category-ad {
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .9);
    border-radius: 18px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 14px 36px rgba(49, 32, 20, .07);
}

.fastora-category-nav {
    display: grid;
    gap: 4px;
    padding: 10px;
}

.fastora-category-nav a {
    display: flex;
    min-height: 34px;
    align-items: center;
    padding: 0 12px;
    border-radius: 11px;
    color: #332b25;
    font-size: 13px;
    font-weight: 900;
}

.fastora-category-nav a:hover {
    background: rgba(215, 25, 32, .07);
    color: var(--fastora-red);
}

.fastora-shop-page .fastora-category-ad {
    min-height: 188px;
}

.fastora-shop-page .fastora-category-ad .intro-slider__image {
    height: 206px;
    object-fit: cover;
}

.fastora-category-row {
    display: flex;
    gap: 10px;
    margin: 0 0 16px;
    padding: 2px 1px 6px;
    overflow-x: auto;
    scrollbar-width: none;
}

.fastora-category-row::-webkit-scrollbar {
    display: none;
}

.fastora-category-row li {
    flex: 0 0 auto;
}

.fastora-category-pill {
    display: grid;
    width: 144px;
    min-height: 86px;
    grid-template-columns: 58px 1fr;
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 14px;
    background: #fff;
    color: var(--fastora-ink);
    box-shadow: 0 9px 24px rgba(49, 32, 20, .06);
}

.fastora-category-pill img {
    width: 58px;
    height: 58px;
    object-fit: contain;
    border-radius: 12px;
    background: #fff8ef;
}

.fastora-category-pill span {
    display: -webkit-box;
    min-width: 0;
    color: #2d2620;
    font-size: 12px;
    font-weight: 950;
    line-height: 1.55;
    overflow: hidden;
    text-wrap: balance;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.fastora-shop-page .products-list-section {
    padding-block: 0;
}

.fastora-product-list-panel,
.fastora-product-list-panel .product-list {
    min-width: 0;
}

.fastora-shop-page .product-list {
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 20px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 42px rgba(49, 32, 20, .08);
}

.fastora-shop-page .product-list__header {
    padding: 14px 16px;
    border-bottom: 1px solid rgba(236, 231, 223, .9);
}

.fastora-list-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    align-items: center;
    justify-content: flex-end;
}

.fastora-list-toolbar .available,
.fastora-list-toolbar .sort-by {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.fastora-list-toolbar .available__title,
.fastora-list-toolbar .sort-by__title {
    position: static;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #665c54;
    font-size: 13px;
    font-weight: 950;
}

.fastora-list-toolbar .available__title i,
.fastora-list-toolbar .sort-by__icon {
    position: static !important;
    margin: 0;
    color: var(--fastora-red);
}

.fastora-shop-page .product-list__body {
    padding: 14px;
}

.fastora-shop-page .available__link_is-active,
.fastora-shop-page .sort-by__link_is-active,
.fastora-shell .c-ui-paginator__control-digit--current {
    border-color: rgba(215, 25, 32, .22) !important;
    background: var(--fastora-red) !important;
    color: #fff !important;
}

.fastora-shop-page .available__link,
.fastora-shop-page .sort-by__link,
.fastora-shell .c-ui-paginator__control-digit,
.fastora-shell .c-ui-paginator__control-prev,
.fastora-shell .c-ui-paginator__control-next,
.fastora-shell .c-ui-paginator__control-first,
.fastora-shell .c-ui-paginator__control-last {
    border-color: rgba(236, 231, 223, .95) !important;
    color: #332b25;
}

.fastora-product-list-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.fastora-product-list-empty {
    grid-column: 1 / -1;
}

.fastora-product-list-cell {
    min-width: 0;
}

.fastora-shop-page .product-item {
    position: relative;
    min-height: 296px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(49, 32, 20, .04);
}

.fastora-shop-page .product-item__header {
    position: relative;
    display: grid;
    height: 136px;
    place-items: center;
    padding: 10px;
    background: linear-gradient(180deg, #fffaf3 0, #fff 100%);
}

.fastora-shop-page .product-item__header a {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
}

.fastora-shop-page .product-item__image {
    width: 100%;
    height: 116px;
    object-fit: contain;
}

.fastora-shop-page .product-item__content {
    padding: 11px 12px 12px;
}

.fastora-shop-page .product-item__title {
    display: -webkit-box;
    min-height: 39px;
    overflow: hidden;
    color: #151515;
    font-size: 13px;
    font-weight: 950;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.fastora-shop-page .product-item__unit {
    display: block;
    min-height: 21px;
    margin-top: 4px;
    color: #8b8179;
    font-size: 11px;
    font-weight: 800;
}

.fastora-shop-page .product-price {
    display: flex;
    min-height: 42px;
    flex-direction: column;
    justify-content: end;
    margin: 0;
}

.fastora-shop-page .product-item__old-price {
    color: #aaa29a;
    font-size: 11px;
    font-weight: 800;
    text-decoration: line-through;
}

.fastora-shop-page .product-item__old-price::before,
.fastora-product-page .product-item__old-price::before {
    content: none !important;
}

.fastora-shop-page .product-item__new-price {
    display: block;
    margin: 4px 0 0;
    color: #171717;
    font-size: 14px;
    font-weight: 950;
    letter-spacing: 0;
}

.fastora-shop-page .price-unit {
    margin-right: 3px;
    font-size: 10px;
    font-weight: 850;
}

.fastora-shop-page .product-item__discount-percentage {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 4px 8px;
    background: rgba(215, 25, 32, .09);
    color: var(--fastora-red);
    font-size: 11px;
}

.fastora-shop-page .fastora-list-add {
    margin-top: 9px;
}

.fastora-shop-page .fastora-list-add__button {
    height: 36px;
    border-radius: 10px;
    font-size: 12px;
}

.fastora-shop-page .fastora-list-qty {
    margin-top: 9px;
}

.fastora-shop-page .fastora-product-qty-spinner {
    height: 36px;
    border-radius: 10px;
}

.fastora-shop-page .fastora-product-qty-spinner button {
    width: 36px;
    height: 36px;
    font-size: 10px;
}

.fastora-shop-page .fastora-product-qty-spinner input {
    height: 34px;
    font-size: 12px;
}

.fastora-shop-cart {
    position: sticky;
    top: 104px;
    direction: rtl;
}

.fastora-side-basket {
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 20px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 18px 42px rgba(49, 32, 20, .08);
}

.fastora-side-basket__header {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    padding: 0 15px;
    border-bottom: 1px solid rgba(236, 231, 223, .9);
    color: var(--fastora-ink);
    font-size: 15px;
    font-weight: 950;
}

.fastora-side-basket__header strong {
    display: grid;
    min-width: 24px;
    height: 24px;
    place-items: center;
    padding: 0 7px;
    border-radius: 999px;
    background: var(--fastora-red);
    color: #fff;
    font-size: 12px;
}

.fastora-side-basket__empty {
    display: grid;
    min-height: 180px;
    place-items: center;
    padding: 22px;
    color: var(--fastora-muted);
    text-align: center;
}

.fastora-side-basket__empty i {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 18px;
    background: #fff4f3;
    color: var(--fastora-red);
    font-size: 22px;
}

.fastora-side-basket__empty p {
    margin: 10px 0 0;
    font-size: 13px;
    font-weight: 850;
}

.fastora-side-basket__items {
    display: grid;
    gap: 4px;
    padding: 10px;
}

.fastora-side-basket__item {
    position: relative;
    display: grid;
    min-height: 82px;
    grid-template-columns: 58px 1fr 28px;
    gap: 9px;
    align-items: center;
    padding: 8px;
    border-radius: 16px;
    background: #fff;
}

.fastora-side-basket__item + .fastora-side-basket__item {
    border-top: 1px solid rgba(236, 231, 223, .85);
}

.fastora-side-basket__image {
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    overflow: hidden;
    border-radius: 14px;
    background: #fff8ef;
}

.fastora-side-basket__image img {
    width: 52px;
    height: 52px;
    object-fit: contain;
}

.fastora-side-basket__meta {
    min-width: 0;
}

.fastora-side-basket__meta > a {
    display: block;
    overflow: hidden;
    color: var(--fastora-ink);
    font-size: 12px;
    font-weight: 950;
    line-height: 1.6;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fastora-side-basket__meta > span {
    display: block;
    margin-top: 2px;
    color: #413830;
    font-size: 11px;
    font-weight: 900;
}

.fastora-side-basket__qty {
    display: inline-flex;
    height: 27px;
    align-items: center;
    margin-top: 6px;
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 999px;
    background: #fff;
}

.fastora-side-basket__qty button {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border: 0;
    background: transparent;
    color: #756b63;
    cursor: pointer;
    font-size: 10px;
}

.fastora-side-basket__qty input {
    width: 28px;
    height: 26px;
    border: 0;
    border-inline: 1px solid rgba(236, 231, 223, .95);
    color: var(--fastora-ink);
    font-size: 12px;
    font-weight: 900;
    text-align: center;
}

.fastora-side-basket__remove {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #9c928a;
    cursor: pointer;
}

.fastora-side-basket__remove:hover {
    background: #fff0ef;
    color: var(--fastora-red);
}

.fastora-side-basket__coupon {
    display: flex;
    height: 43px;
    align-items: center;
    gap: 9px;
    margin: 5px 12px 0;
    padding: 0 12px;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 13px;
    color: #8b8179;
    font-size: 12px;
    font-weight: 850;
}

.fastora-side-basket__summary {
    display: grid;
    gap: 8px;
    padding: 13px 14px;
}

.fastora-side-basket__summary div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #6f665d;
    font-size: 12px;
    font-weight: 800;
}

.fastora-side-basket__summary strong {
    color: var(--fastora-ink);
    font-size: 12px;
    font-weight: 950;
}

.fastora-side-basket__summary .fastora-side-basket__discount strong {
    color: var(--fastora-green);
}

.fastora-side-basket__summary .fastora-side-basket__total {
    margin-top: 5px;
    padding-top: 10px;
    border-top: 1px solid rgba(236, 231, 223, .95);
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 950;
}

.fastora-side-basket__summary .fastora-side-basket__total strong {
    color: var(--fastora-red);
    font-size: 15px;
}

.fastora-side-basket__checkout {
    display: flex;
    height: 48px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0 12px 14px;
    border-radius: 13px;
    background: var(--fastora-red);
    color: #fff !important;
    font-size: 13px;
    font-weight: 950;
    box-shadow: 0 12px 26px rgba(215, 25, 32, .22);
}

.fastora-category-page {
    width: min(1260px, calc(100% - 32px));
    margin: 22px auto 46px;
}

.fastora-category-page__header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.fastora-category-page__header h1 {
    margin: 0;
    color: var(--fastora-ink);
    font-size: 28px;
    font-weight: 950;
    letter-spacing: 0;
}

.fastora-category-page__header p {
    margin: 7px 0 0;
    color: var(--fastora-muted);
    font-size: 13px;
    font-weight: 800;
}

.fastora-category-page__header a {
    color: var(--fastora-red);
    font-size: 13px;
    font-weight: 950;
}

.fastora-category-page__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.fastora-category-group {
    overflow: hidden;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(49, 32, 20, .06);
}

.fastora-category-group__cover {
    display: grid;
    min-height: 158px;
    place-items: center;
    gap: 11px;
    padding: 16px;
    border-bottom: 1px solid rgba(236, 231, 223, .9);
    background: linear-gradient(180deg, #fffaf3, #fff);
    text-align: center;
}

.fastora-category-group__cover img {
    width: 100px;
    height: 88px;
    object-fit: contain;
}

.fastora-category-group__cover strong {
    display: -webkit-box;
    min-height: 42px;
    overflow: hidden;
    color: var(--fastora-ink);
    font-size: 15px;
    font-weight: 950;
    line-height: 1.55;
    text-wrap: balance;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.fastora-category-group__links {
    display: grid;
    gap: 5px;
    padding: 10px;
}

.fastora-category-group__links a {
    display: flex;
    min-height: 36px;
    align-items: center;
    padding: 4px 10px;
    border-radius: 10px;
    color: #5c524b;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.55;
}

.fastora-category-group__links a:hover {
    background: rgba(215, 25, 32, .07);
    color: var(--fastora-red);
}

.fastora-category-page__sliders {
    margin-top: 24px;
}

@media (max-width: 1180px) {
    .fastora-shop-page {
        grid-template-columns: minmax(0, 1fr);
        direction: rtl;
    }

    .fastora-shop-cart {
        display: none;
    }

    .fastora-product-list-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

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

@media (max-width: 860px) {
    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    html,
    body.fastora-shell,
    .fastora-shell main {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .fastora-container,
    .fastora-shop-page,
    .fastora-category-page {
        width: calc(100vw - 24px) !important;
        max-width: 640px;
        margin-right: auto;
        margin-left: auto;
    }

    .fastora-shop-page,
    .fastora-category-page {
        margin-top: 14px;
    }

    .fastora-shop-page {
        display: block !important;
        padding: 0 !important;
        direction: rtl;
    }

    .fastora-shop-main,
    .fastora-product-list-panel,
    .fastora-shop-page .product-list,
    .fastora-shop-page .products-list-section {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .fastora-category-hero {
        grid-template-columns: 1fr;
    }

    .fastora-category-nav {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .fastora-category-nav::-webkit-scrollbar {
        display: none;
    }

    .fastora-category-nav a {
        flex: 0 0 auto;
        border: 1px solid rgba(236, 231, 223, .95);
        background: #fff;
    }

    .fastora-product-list-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100%;
        min-width: 0;
    }

    .fastora-shop-page .product-list,
    .fastora-product-list-panel,
    .fastora-category-row,
    .fastora-list-toolbar {
        width: 100%;
        max-width: 100%;
    }

    .fastora-list-toolbar .available,
    .fastora-list-toolbar .sort-by {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }

    .fastora-list-toolbar .available::-webkit-scrollbar,
    .fastora-list-toolbar .sort-by::-webkit-scrollbar {
        display: none;
    }

    .fastora-list-toolbar .available__title,
    .fastora-list-toolbar .sort-by__title {
        flex: 0 0 auto;
    }

    .fastora-category-page__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .fastora-shop-heading h1,
    .fastora-category-page__header h1 {
        font-size: 21px;
    }
}

@media (max-width: 460px) {
    .fastora-header {
        padding-top: 8px;
    }

    .fastora-header__bar {
        grid-template-columns: auto auto;
        justify-content: space-between;
    }

    .fastora-logo {
        width: 122px;
        height: 38px;
        justify-self: end;
    }

    .fastora-actions {
        justify-self: start;
    }

    .fastora-search {
        width: 100%;
        min-width: 0;
    }

    .fastora-category-strip {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px);
        overflow-x: auto;
    }

    .fastora-category-strip a {
        flex: 0 0 auto;
    }

    .fastora-product-list-grid {
        grid-template-columns: repeat(2, minmax(0, calc((100vw - 58px) / 2)));
        justify-content: center;
    }

    .fastora-shop-page .product-item {
        min-height: 262px;
    }

    .fastora-shop-page .product-item__header {
        height: 106px;
    }

    .fastora-shop-page .product-item__image {
        height: 86px;
    }

    .fastora-shop-page .product-item__title {
        font-size: 12px;
    }

    .fastora-category-pill {
        width: 132px;
        min-height: 78px;
        grid-template-columns: 52px 1fr;
    }

    .fastora-category-pill img {
        width: 52px;
        height: 52px;
    }

    .fastora-category-page__grid {
        grid-template-columns: 1fr;
    }
}

.fastora-product-page {
    display: grid;
    width: min(1260px, calc(100% - 32px));
    grid-template-columns: minmax(0, 1fr) 286px;
    gap: 18px;
    align-items: start;
    margin: 18px auto 44px;
    direction: ltr;
}

.fastora-product-main {
    display: grid;
    min-width: 0;
    gap: 16px;
    direction: rtl;
}

.fastora-product-overview {
    display: grid;
    grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 0 !important;
}

.fastora-product-gallery {
    position: sticky;
    top: 104px;
    min-width: 0;
}

.fastora-product-gallery .add-to-whishlist-area {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    margin: 0;
}

.fastora-product-gallery .add-to-whishlist-btn {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    box-shadow: 0 8px 22px rgba(49, 32, 20, .08);
}

.fastora-product-gallery .add-to-whishlist-btn.active {
    border-color: rgba(215, 25, 32, .18);
    background: rgba(215, 25, 32, .08);
}

.fastora-product-gallery .pd-gallery {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    padding: 10px;
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(49, 32, 20, .07);
}

.fastora-product-gallery .pd-gallery__item {
    min-height: 72px;
    border: 1px solid rgba(236, 231, 223, .9);
    border-radius: 13px;
    background: #fffaf4;
}

.fastora-product-gallery .pd-gallery__item:first-child {
    grid-column: 1 / -1;
    min-height: 310px;
    border-radius: 16px;
}

.fastora-product-gallery .pd-gallery__image {
    height: 62px;
    max-width: 74px;
}

.fastora-product-gallery .pd-gallery__item:first-child .pd-gallery__image {
    height: 292px;
    max-width: 310px;
}

.fastora-product-gallery__caption {
    margin: 10px 0 0 !important;
    padding: 12px 14px;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 14px;
    background: rgba(255, 255, 255, .92);
    color: #62584f;
    font-size: 13px;
    line-height: 1.9;
}

.fastora-product-data,
.fastora-product-info-card {
    min-width: 0;
}

.fastora-product-info-card.product-info {
    padding: 18px;
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(49, 32, 20, .07);
}

.fastora-product-info-card .product-info__header {
    padding-bottom: 14px;
}

.fastora-product-info-card .product-info__title,
.fastora-product-info-card .product-info__title__margin,
.fastora-product-info-card .product-info__sub__title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0;
    font-size: clamp(21px, 2.4vw, 30px);
    line-height: 1.55;
}

.fastora-product-info-card .product-status {
    margin-right: 0;
    vertical-align: middle;
}

.fastora-product-meta {
    display: inline-flex !important;
    width: fit-content;
    align-items: center;
    gap: 6px;
    margin-top: 12px !important;
    padding: 5px 9px;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 999px;
    background: #fff;
}

.fastora-product-brand-label {
    color: var(--fastora-muted);
    font-size: 12px;
    font-weight: 850;
}

.fastora-product-brand {
    color: var(--fastora-red) !important;
    font-size: 12px;
    font-weight: 950;
}

.fastora-product-info-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 310px);
    gap: 14px;
    align-items: start;
}

.fastora-product-specs,
.fastora-product-buy {
    min-width: 0;
}

.fastora-product-spec-card {
    border-radius: 16px;
    box-shadow: none;
}

.fastora-product-spec-title {
    padding: 12px 14px;
    border-bottom: 1px solid var(--fastora-line);
    color: var(--fastora-ink);
    font-size: 14px;
    font-weight: 950;
}

.fastora-product-spec-card .c-ui-table,
.fastora-product-spec-card .c-ui-table tbody,
.fastora-product-spec-card .c-ui-table__row {
    display: block;
}

.fastora-product-spec-card .c-ui-table__row {
    display: grid;
    grid-template-columns: minmax(88px, .45fr) minmax(0, 1fr);
}

.fastora-product-spec-card .c-ui-table__cell {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
}

.fastora-product-spec-card .c-ui-table__cell--item-title {
    justify-content: flex-start;
    text-align: right !important;
}

.fastora-product-buy .shopping-options {
    display: grid;
    gap: 10px;
    padding: 12px;
    border-radius: 16px;
    box-shadow: none;
}

.fastora-product-buy .c-product__seller-row {
    margin: 0;
    padding: 12px;
    border: 1px solid rgba(236, 231, 223, .9);
    border-radius: 14px;
    background: #fff;
}

.fastora-product-buy .c-product__seller-row--price {
    display: grid;
    gap: 8px;
}

.fastora-product-buy .c-product__seller-price-real {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    color: var(--fastora-ink);
    font-size: 12px;
}

.fastora-product-buy .c-product__seller-price-pure {
    color: var(--fastora-red);
    font-size: 24px;
    line-height: 1;
}

.fastora-product-buy .c-product__seller-price-prev {
    color: #9c928a;
    font-size: 12px;
    text-decoration: line-through;
}

.fastora-product-buy .c-product__seller-price-off {
    display: inline-flex;
    min-height: 24px;
    align-items: center;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(215, 25, 32, .08);
    color: var(--fastora-red);
    font-size: 12px;
    font-weight: 950;
}

.fastora-product-buy .c-product__seller-row--add-to-cart {
    padding: 0;
    border: 0;
    background: transparent;
}

.fastora-product-buy .btn-add-to-cart,
.fastora-product-buy .btn-add-to-cart--full-width {
    min-height: 46px;
    border-radius: 13px !important;
    font-size: 13px;
}

.fastora-product-promo {
    display: flex;
    min-height: 42px;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    border: 1px solid rgba(215, 25, 32, .16);
    border-radius: 13px;
    background: rgba(215, 25, 32, .06);
    color: var(--fastora-red);
    font-weight: 950;
}

.fastora-product-promo p {
    margin: 0 6px 0 0;
    color: #5d534b;
    font-size: 13px;
    font-weight: 900;
}

.fastora-product-buy .option-item {
    min-height: 48px;
    padding: 8px 10px;
    border-radius: 13px;
}

.fastora-product-buy .option-item__icon {
    width: 32px;
    height: 32px;
    flex-basis: 32px;
}

.fastora-product-buy .option-item__text {
    font-size: 12px !important;
}

.fastora-product-cart {
    position: sticky;
    top: 104px;
    direction: rtl;
}

.fastora-product-page .product-description-section,
.fastora-product-page .product-slider-section {
    padding-block: 0 4px;
}

.fastora-product-page .product-description-section .container,
.fastora-product-page .product-slider-section .container {
    width: 100%;
    max-width: none;
    padding: 0;
}

.fastora-product-page .tab-box,
.fastora-product-page .slider__wrapper {
    box-shadow: 0 14px 34px rgba(49, 32, 20, .06);
}

.fastora-shell .product-slider-section {
    background-color: transparent;
}

.fastora-product-page .slider__wrapper {
    margin: 0;
    border: 1px solid var(--fastora-line);
    border-radius: 18px;
    background: rgba(255, 255, 255, .96);
}

.fastora-product-page .slider__header {
    align-items: center;
    margin: 6px 0 10px;
}

.fastora-product-page .slider__title {
    font-size: 18px;
}

.fastora-product-page .fastora-product-card {
    min-height: 300px;
    border-radius: 16px;
    box-shadow: none;
}

.fastora-product-page .fastora-product-card__media {
    aspect-ratio: 1.25 / 1;
}

.fastora-product-page .fastora-product-card__media img {
    object-fit: contain;
    padding: 14px;
}

.fastora-product-page .fastora-product-card__title {
    display: -webkit-box;
    min-height: 40px;
    overflow: hidden;
    font-size: 13px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.fastora-product-page .fastora-product-card__body {
    min-height: 140px;
}

@media (max-width: 1180px) {
    .fastora-product-page {
        grid-template-columns: minmax(0, 1fr);
        direction: rtl;
    }

    .fastora-product-cart {
        display: none;
    }

    .fastora-product-overview {
        grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    }

    .fastora-product-info-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    .fastora-product-page {
        width: calc(100vw - 24px);
        max-width: 640px;
        margin-top: 14px;
    }

    .fastora-product-main {
        gap: 12px;
    }

    .fastora-product-overview {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .fastora-product-gallery {
        position: static;
    }

    .fastora-product-gallery .pd-gallery__item:first-child {
        min-height: 248px;
    }

    .fastora-product-gallery .pd-gallery__item:first-child .pd-gallery__image {
        height: 230px;
        max-width: 260px;
    }

    .fastora-product-info-card.product-info {
        padding: 14px;
    }

    .fastora-product-info-card .product-info__title,
    .fastora-product-info-card .product-info__title__margin,
    .fastora-product-info-card .product-info__sub__title {
        font-size: 21px;
    }

    .fastora-product-spec-card .c-ui-table__row {
        grid-template-columns: 1fr;
    }

    .fastora-product-spec-card .c-ui-table__cell {
        justify-content: flex-start;
        text-align: right !important;
    }
}

@media (max-width: 460px) {
    .fastora-product-gallery .pd-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .fastora-product-buy .c-product__seller-price-pure {
        font-size: 21px;
    }
}

.fastora-home-layout {
    display: grid;
    width: min(1260px, calc(100% - 32px));
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 18px;
    align-items: start;
    margin-inline: auto;
    direction: ltr;
}

.fastora-home-main {
    min-width: 0;
    direction: rtl;
}

.fastora-home-layout .fastora-container {
    width: 100%;
    max-width: none;
}

.fastora-home-cart {
    position: sticky;
    top: 104px;
    direction: rtl;
}

.fastora-cart-drawer {
    position: fixed;
    top: 92px;
    right: max(16px, calc((100vw - 1260px) / 2));
    bottom: 20px;
    z-index: 1060;
    width: 310px;
    max-width: calc(100vw - 24px);
    direction: rtl;
    opacity: 0;
    pointer-events: none;
    transform: translateX(24px);
    transition: opacity .18s ease, transform .18s ease;
}

.fastora-cart-drawer .fastora-side-basket {
    max-height: 100%;
    overflow: auto;
}

.fastora-cart-drawer__close {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 12px;
    background: #fff;
    color: #6f665d;
    cursor: pointer;
}

.fastora-cart-scrim {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: none;
    border: 0;
    background: rgba(24, 20, 17, .28);
}

body.fastora-cart-open {
    overflow: hidden;
}

body.fastora-cart-open .fastora-cart-drawer {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

body.fastora-cart-open .fastora-cart-scrim {
    display: block;
}

@media (min-width: 1180px) {
    .fastora-product-page {
        grid-template-columns: minmax(0, 1fr) 300px;
    }

    .fastora-product-overview {
        grid-template-columns: minmax(320px, 390px) minmax(0, 1fr);
        gap: 16px;
    }
}

.fastora-product-info-card.product-info {
    min-height: auto !important;
    padding: 22px;
}

.fastora-product-info-card .product-info__header {
    display: flex;
    min-height: 0 !important;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(236, 231, 223, .95);
}

.fastora-search {
    overflow: hidden;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.fastora-search:focus-within {
    border-color: rgba(215, 25, 32, .28);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(215, 25, 32, .08), 0 8px 26px rgba(43, 32, 20, .05);
}

.fastora-search input,
.fastora-search input:focus,
.fastora-search input:focus-visible {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

.fastora-search button {
    flex: 0 0 46px;
    height: 100%;
    border-radius: 0;
}

.fastora-product-title-row {
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.fastora-product-name-block {
    min-width: 0;
}

.fastora-product-meta-row {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 0;
}

.fastora-product-meta-row .fastora-product-meta {
    min-height: 30px;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.fastora-product-info-card .product-status {
    min-height: 30px;
    align-items: center;
    margin: 0;
}

.fastora-product-info-card .product-info__title,
.fastora-product-info-card .product-info__title__margin,
.fastora-product-info-card .product-info__sub__title {
    max-width: 100%;
    flex: 1 1 auto;
}

.fastora-product-info-card .product-info__sub__title {
    margin-top: 4px;
    color: #5d534b;
    font-size: 15px;
}

.fastora-product-info-card .product-info__header > .product-info__item {
    flex: 0 0 auto;
    margin-top: 4px !important;
}

.fastora-product-info-card .product-info__body {
    padding: 0;
}

.fastora-product-buy-card.shopping-options {
    margin: 0 !important;
    padding: 16px 0 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.fastora-product-buy .c-product__seller-row {
    padding: 14px;
}

.fastora-product-buy .c-product__seller-row--price {
    gap: 10px;
    background: #fffaf4;
}

.fastora-product-buy .c-product__seller-price-real strong {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    color: var(--fastora-red);
    font-size: 12px;
    font-weight: 950;
}

.fastora-product-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.fastora-product-trust span {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 8px;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 13px;
    background: #fff;
    color: #4b4139;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.fastora-product-trust i {
    color: var(--fastora-green);
}

.fastora-product-page .product-slider-section {
    margin: 0;
}

.fastora-product-page .product-slider-section.fastora-product-slider-empty {
    display: none !important;
}

.fastora-product-page .slider__wrapper {
    padding: 12px;
}

.fastora-product-page .slider__header {
    margin: 0;
    padding: 0 4px 10px;
}

.fastora-product-page .slider__title {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 18px;
    font-weight: 950;
}

.fastora-product-page .slider__title::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--fastora-red);
}

.fastora-side-basket__item--legacy {
    grid-template-columns: 58px 1fr;
}

.fastora-side-basket__legacy-qty {
    display: inline-flex;
    margin-top: 6px;
    color: #6f665d;
    font-size: 11px;
    font-weight: 850;
}

.fastora-side-basket--pulse {
    animation: fastoraBasketPulse 1s ease;
}

@keyframes fastoraBasketPulse {
    0% {
        box-shadow: 0 18px 42px rgba(49, 32, 20, .08), 0 0 0 0 rgba(215, 25, 32, .28);
    }

    55% {
        box-shadow: 0 18px 42px rgba(49, 32, 20, .08), 0 0 0 8px rgba(215, 25, 32, .08);
    }

    100% {
        box-shadow: 0 18px 42px rgba(49, 32, 20, .08), 0 0 0 0 rgba(215, 25, 32, 0);
    }
}

.fastora-product-gallery .pd-gallery--single,
.fastora-product-gallery .pd-gallery.fastora-gallery--single {
    grid-template-columns: 1fr;
}

.fastora-product-gallery .pd-gallery--single .pd-gallery__item:first-child,
.fastora-product-gallery .pd-gallery.fastora-gallery--single .pd-gallery__item:first-child {
    grid-column: 1 / -1;
    min-height: 336px;
}

.fastora-product-gallery .pd-gallery--single .pd-gallery__item:not(:first-child),
.fastora-product-gallery .pd-gallery.fastora-gallery--single .pd-gallery__item:not(:first-child),
.fastora-product-gallery .pd-gallery__item.fastora-gallery-thumb-hidden {
    display: none !important;
}

.fastora-product-gallery__empty {
    display: grid;
    min-height: 336px;
    place-items: center;
    border: 1px solid rgba(236, 231, 223, .95);
    border-radius: 18px;
    background: #fffaf4;
    color: rgba(215, 25, 32, .42);
    font-size: 42px;
    box-shadow: 0 14px 34px rgba(49, 32, 20, .07);
}

@media (max-width: 1180px) {
    .fastora-home-layout {
        grid-template-columns: 1fr;
        direction: rtl;
    }

    .fastora-home-cart {
        display: none;
    }

    .fastora-product-overview {
        grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
    }
}

@media (max-width: 860px) {
    .fastora-cart-drawer {
        top: 76px;
        right: 12px;
        bottom: 82px;
        width: calc(100vw - 24px);
    }

    .fastora-product-overview {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .fastora-product-trust {
        grid-template-columns: 1fr;
    }

    .fastora-product-title-row {
        display: grid;
        gap: 10px;
    }

    .fastora-product-meta-row {
        justify-content: flex-start;
    }
}

.fastora-header__bar {
    grid-template-columns: auto minmax(280px, 560px) auto auto;
}

.fastora-search {
    width: 100%;
    max-width: 560px;
    justify-self: stretch;
}

.fastora-product-info-card.product-info {
    border: 1px solid var(--fastora-line) !important;
}

.fastora-product-info-card .fastora-product-meta {
    min-height: 30px;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.fastora-product-info-card .fastora-product-brand-label {
    display: inline;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.fastora-product-gallery .add-to-whishlist-btn,
.fastora-product-gallery .add-to-whishlist-btn.active {
    border: 0 !important;
    box-shadow: 0 8px 22px rgba(49, 32, 20, .08);
}

.fastora-side-basket__coupon input {
    min-width: 0;
    flex: 1;
    height: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--fastora-ink);
    font-size: 12px;
    font-weight: 900;
    direction: ltr;
    text-align: right;
}

.fastora-side-basket__coupon input::placeholder {
    color: #9b9289;
    direction: rtl;
}

.fastora-side-basket__coupon button {
    display: grid;
    width: 29px;
    height: 29px;
    flex: 0 0 29px;
    place-items: center;
    border: 0;
    border-radius: 10px;
    background: rgba(215, 25, 32, .08);
    color: var(--fastora-red);
    cursor: pointer;
}

.fastora-side-basket__coupon--applied {
    border-color: rgba(47, 143, 47, .18);
    background: rgba(47, 143, 47, .05);
    color: var(--fastora-green);
}

.fastora-side-basket__coupon--applied span {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    color: var(--fastora-green);
    direction: ltr;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 760px) {
    .fastora-header__bar {
        grid-template-columns: auto 1fr auto;
    }

    .fastora-search {
        max-width: none;
    }
}

.fastora-product-page,
.fastora-product-main,
.fastora-product-page .product-slider-section,
.fastora-product-page .product-slider-section .slider,
.fastora-product-page .slider__wrapper,
.fastora-product-page .swiper-wrapper {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.fastora-product-page .product-slider-section {
    overflow: hidden;
}

.fastora-product-page .product-slider-section .slider {
    overflow: hidden;
}

.fastora-product-page .slider__header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    min-height: 34px;
    margin: 0;
    padding: 0 4px 10px;
    background: transparent;
}

.fastora-product-page .slider__wrapper {
    display: block !important;
    overflow: hidden;
    width: 100%;
    margin: 0;
    padding: 12px;
}

.fastora-product-page .swiper-wrapper {
    display: flex !important;
    width: 100% !important;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0 0 4px;
    transform: none !important;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
}

.fastora-product-page .swiper-wrapper > .fastora-product-card,
.fastora-product-page .swiper-wrapper > .swiper-slide {
    flex: 0 0 148px;
    width: 148px !important;
    max-width: 148px;
    scroll-snap-align: start;
}

.fastora-product-page .swiper-wrapper > .swiper-slide .fastora-product-card {
    height: 100%;
}

.fastora-product-page .fastora-product-card {
    min-height: 250px;
}

.fastora-product-page .fastora-product-card__media {
    aspect-ratio: 1.08 / 1;
}

.fastora-product-page .fastora-product-card__body {
    min-height: 118px;
    padding: 10px;
}

.fastora-product-page .fastora-product-card__title {
    min-height: 38px;
    font-size: 12px;
    line-height: 1.6;
}

.fastora-product-page .fastora-product-card__meta {
    min-height: 22px;
    font-size: 11px;
}

.fastora-product-page .fastora-product-card__price strong {
    font-size: 14px;
}

.fastora-product-page .fastora-add-btn {
    width: 34px;
    height: 34px;
    border-radius: 11px;
}

.fastora-product-gallery .add-to-whishlist-btn,
.fastora-product-gallery .add-to-whishlist-btn.active {
    box-shadow: none !important;
}

/* Fastora storefront alignment overrides */
body.fastora-shell {
    background:
        radial-gradient(circle at 18% -10%, rgba(47, 143, 47, .07), transparent 30rem),
        linear-gradient(180deg, #fbf7ef 0, #fffdf9 30rem, #fff 100%);
}

.fastora-mobile-menu-button {
    display: none;
}

@media (min-width: 861px) {
    .fastora-header {
        top: 12px;
        width: min(1260px, calc(100% - 32px));
        margin: 18px auto 0;
        border: 1px solid rgba(236, 231, 223, .9);
        border-radius: 24px;
        background: rgba(255, 255, 255, .94);
        box-shadow: 0 20px 55px rgba(49, 32, 20, .09);
    }

    .fastora-header .fastora-container {
        width: calc(100% - 40px);
    }
}

.fastora-header__bar {
    gap: 18px;
}

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

.fastora-nav a {
    font-weight: 900;
}

.fastora-home-layout,
.fastora-shop-page,
.fastora-product-page {
    gap: 20px;
}

.fastora-hero {
    min-height: 300px;
    grid-template-columns: minmax(0, 1.12fr) minmax(330px, .88fr);
    direction: ltr;
    border-radius: 20px;
    background:
        linear-gradient(90deg, rgba(255, 250, 242, .08) 0, rgba(255, 250, 242, .22) 42%, rgba(255, 250, 242, .95) 70%, #fffaf2 100%),
        var(--fastora-hero-image, linear-gradient(135deg, #f7f1e8, #fff));
    background-position: center;
}

.fastora-hero__visual {
    min-height: 300px;
}

.fastora-hero__content {
    width: 100%;
    max-width: 520px;
    justify-self: end;
    padding: 38px 42px;
    direction: rtl;
    text-align: right;
}

.fastora-hero h1 {
    font-size: clamp(32px, 3.2vw, 46px);
}

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

.fastora-primary-btn::before {
    content: "\f104";
    margin-left: 10px;
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free";
    font-weight: 900;
}

.fastora-secondary-btn {
    display: none;
}

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

.fastora-category-card {
    min-height: 74px;
    grid-template-columns: minmax(0, 1fr) 64px;
    justify-content: space-between;
    text-align: right;
}

.fastora-category-card__image {
    grid-column: 2;
    grid-row: 1;
}

.fastora-category-card > span:last-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fastora-product-card {
    border-radius: 14px;
}

.fastora-product-card__media {
    aspect-ratio: 1.18 / .82;
    background: linear-gradient(180deg, #fff7ed 0, #fff 100%);
}

.fastora-product-card__media img {
    object-fit: contain;
    padding: 10px;
}

.fastora-product-card__body {
    min-height: 150px;
}

.fastora-product-card__title {
    display: -webkit-box;
    min-height: 42px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.fastora-product-card__meta {
    justify-content: flex-start;
}

.fastora-product-card__footer {
    display: grid;
    gap: 9px;
}

.fastora-card-add {
    display: inline-flex;
    width: 100%;
    height: 34px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 0;
    border-radius: 10px;
    background: var(--fastora-red);
    color: #fff;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(215, 25, 32, .18);
}

.fastora-card-add:hover {
    background: var(--fastora-red-dark);
}

.fastora-side-basket {
    border-radius: 18px;
}

.fastora-side-basket__items {
    max-height: 360px;
    overflow: auto;
}

.fastora-side-basket__checkout {
    background: linear-gradient(180deg, #de1d24 0, #c9141b 100%);
}

.fastora-promises {
    border-radius: 16px;
}

.fastora-shop-page .product-list {
    border-radius: 18px;
}

.fastora-product-list-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fastora-shop-page .product-item {
    min-height: 286px;
}

.fastora-shop-page .product-item__header {
    height: 128px;
}

.fastora-shop-page .product-item__image {
    height: 108px;
}

.fastora-category-page__grid {
    align-items: start;
}

.fastora-category-group__cover {
    min-height: 138px;
}

@media (max-width: 1180px) and (min-width: 861px) {
    .fastora-header__bar {
        grid-template-columns: auto minmax(260px, 1fr) auto;
    }

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

@media (max-width: 860px) {
    body.fastora-shell {
        padding-bottom: 78px;
        background: #fffdf9;
    }

    .fastora-header {
        position: sticky;
        top: 0;
        padding: 10px 0 8px;
        border-bottom: 1px solid rgba(236, 231, 223, .9);
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 10px 28px rgba(49, 32, 20, .06);
    }

    .fastora-header__bar {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        gap: 10px;
        align-items: center;
    }

    .fastora-logo {
        grid-column: 2;
        grid-row: 1;
        justify-self: center;
        width: 118px;
        height: 36px;
    }

    .fastora-mobile-menu-button {
        grid-column: 3;
        grid-row: 1;
        display: grid;
        width: 40px;
        height: 40px;
        place-items: center;
        justify-self: end;
        border: 0;
        border-radius: 12px;
        background: transparent;
        color: var(--fastora-ink);
        font-size: 19px;
        cursor: pointer;
    }

    .fastora-actions {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    .fastora-cart {
        width: 40px;
        height: 40px;
        border: 0;
        box-shadow: none;
        color: var(--fastora-ink);
    }

    .fastora-cart i {
        font-size: 20px;
    }

    .fastora-search {
        grid-column: 1 / -1;
        grid-row: 2;
        height: 42px;
        border-radius: 15px;
        background: #f7f4ef;
        box-shadow: none;
    }

    .fastora-search input {
        font-size: 12px;
        text-align: center;
    }

    .fastora-nav {
        position: fixed;
        top: 64px;
        right: 12px;
        z-index: 1100;
        display: grid;
        width: min(240px, calc(100vw - 24px));
        gap: 4px;
        padding: 10px;
        border: 1px solid rgba(236, 231, 223, .95);
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 22px 54px rgba(49, 32, 20, .18);
        opacity: 0;
        pointer-events: none;
        transform: translateY(-8px);
        transition: opacity .16s ease, transform .16s ease;
    }

    body.fastora-menu-open .fastora-nav {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }

    .fastora-nav a {
        display: flex;
        min-height: 38px;
        align-items: center;
        padding: 0 12px;
        border-radius: 11px;
    }

    .fastora-category-strip {
        display: none;
    }

    .fastora-home {
        padding-top: 12px;
    }

    .fastora-home-layout {
        width: calc(100vw - 24px);
        max-width: 640px;
    }

    .fastora-hero {
        display: none;
    }

    .fastora-section {
        margin-top: 14px;
    }

    .fastora-categories .fastora-section__header {
        display: none;
    }

    .fastora-category-grid {
        display: flex;
        gap: 12px;
        margin-inline: -2px;
        overflow-x: auto;
        padding: 2px 2px 8px;
        scrollbar-width: none;
    }

    .fastora-category-card {
        flex: 0 0 70px;
        min-height: 86px;
        grid-template-columns: 1fr;
        gap: 5px;
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
        text-align: center;
    }

    .fastora-category-card__image {
        grid-column: 1;
        width: 58px;
        height: 58px;
        margin-inline: auto;
        border-radius: 16px;
        background: #fff4e6;
        box-shadow: 0 8px 18px rgba(49, 32, 20, .06);
    }

    .fastora-category-card > span:last-child {
        color: #322a24;
        font-size: 10px;
        font-weight: 900;
        white-space: normal;
    }

    .fastora-product-grid,
    .fastora-product-grid--compact {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .fastora-product-card__media {
        aspect-ratio: 1.08 / .82;
    }

    .fastora-product-card__body {
        min-height: 132px;
        padding: 9px;
    }

    .fastora-product-card__title {
        min-height: 36px;
        font-size: 12px;
        line-height: 1.55;
    }

    .fastora-product-card__meta {
        min-height: 19px;
        margin-top: 3px;
        font-size: 10px;
    }

    .fastora-product-card__price strong {
        font-size: 13px;
    }

    .fastora-card-add {
        height: 32px;
        border-radius: 9px;
        font-size: 11px;
    }

    .fastora-promises {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-top: 14px;
    }

    .fastora-shop-page,
    .fastora-product-page,
    .fastora-category-page {
        width: calc(100vw - 24px) !important;
        max-width: 640px;
        margin-top: 12px;
        margin-bottom: 24px;
        padding-bottom: 12px;
    }

    .fastora-shop-heading {
        margin-bottom: 10px;
    }

    .fastora-category-row {
        gap: 9px;
        margin-bottom: 12px;
    }

    .fastora-category-pill {
        width: 108px;
        min-height: 96px;
        grid-template-columns: 1fr;
        place-items: center;
        text-align: center;
    }

    .fastora-category-pill img {
        width: 56px;
        height: 56px;
    }

    .fastora-list-toolbar {
        display: grid;
        gap: 8px;
        justify-content: stretch;
    }

    .fastora-list-toolbar .available,
    .fastora-list-toolbar .sort-by {
        min-width: 0;
        gap: 8px;
    }

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

    .fastora-shop-page .product-list__body {
        padding: 10px;
    }

    .fastora-shop-page .product-item {
        min-height: 258px;
        border-radius: 13px;
    }

    .fastora-shop-page .product-item__header {
        height: 104px;
        padding: 8px;
    }

    .fastora-shop-page .product-item__image {
        height: 86px;
    }

    .fastora-shop-page .product-item__content {
        padding: 9px;
    }

    .fastora-shop-page .product-item__title {
        min-height: 36px;
        font-size: 11px;
        line-height: 1.6;
    }

    .fastora-shop-page .product-price {
        min-height: 34px;
    }

    .fastora-shop-page .fastora-list-add__button {
        height: 32px;
        font-size: 11px;
    }

    .fastora-shop-page .fastora-product-qty-spinner {
        height: 32px;
        border-radius: 9px;
    }

    .fastora-shop-page .fastora-product-qty-spinner button {
        width: 32px;
        height: 32px;
        font-size: 9px;
    }

    .fastora-shop-page .fastora-product-qty-spinner input {
        height: 30px;
        font-size: 11px;
    }

    .fastora-category-page__header {
        align-items: center;
    }

    .fastora-category-page__header p {
        display: none;
    }

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

    .fastora-category-group__cover {
        min-height: 118px;
        padding: 12px;
    }

    .fastora-category-group__cover img {
        width: 76px;
        height: 68px;
    }

    .fastora-product-overview {
        grid-template-columns: 1fr;
    }

    .fastora-product-info-card .product-info__title,
    .fastora-product-info-card .product-info__title__margin,
    .fastora-product-info-card .product-info__sub__title {
        font-size: 19px;
    }

    .fastora-product-gallery .pd-gallery__item:first-child,
    .fastora-product-gallery .pd-gallery.fastora-gallery--single .pd-gallery__item:first-child {
        min-height: 230px;
    }

    .fastora-product-gallery .pd-gallery__item:first-child .pd-gallery__image {
        height: 212px;
        max-width: 240px;
    }
}

@media (max-width: 420px) {
    .fastora-product-grid,
    .fastora-product-grid--compact,
    .fastora-product-list-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .fastora-product-card__body,
    .fastora-shop-page .product-item__content {
        padding: 8px;
    }

    .fastora-product-card__price strong,
    .fastora-shop-page .product-item__new-price {
        font-size: 12px;
    }

    .fastora-promises {
        grid-template-columns: 1fr;
    }

    .fastora-category-page__grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   FASTORA REDESIGNED BASKET & ACCOUNT FLOW
   ========================================================================== */

/* Cart horizontal item layout */
.shop-card .product-card {
    margin-bottom: 14px;
    padding: 16px !important;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 24px rgba(49, 32, 20, .04) !important;
    background: #fff !important;
}

.shop-card .product-card .row,
.shop-card .product-card .col-12 {
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 16px;
}

.shop-card .product-card__header {
    flex: 0 0 100px;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--fastora-soft);
    border-radius: 14px;
    overflow: hidden;
}

.shop-card .product-card__header img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.shop-card .product-card__body {
    flex: 1;
    display: grid !important;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto auto;
    grid-template-areas:
        "title delete"
        "meta delete"
        "price spinner";
    align-items: center;
    gap: 8px 16px;
    padding: 0 !important;
    background: transparent !important;
}

.shop-card .product-card__title {
    grid-area: title;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: var(--fastora-ink) !important;
    margin: 0 !important;
    line-height: 1.5 !important;
    min-height: auto !important;
}

.shop-card .product-card__brand {
    display: inline-block;
    font-size: 12px !important;
    color: var(--fastora-muted) !important;
    margin: 0 0 0 12px !important;
    font-weight: 700;
}

.shop-card .product-card__code {
    display: inline-block;
    font-size: 12px !important;
    color: var(--fastora-muted) !important;
    margin: 0 !important;
    font-weight: 700;
}

.shop-card .product-card__body .product-vat__included {
    display: block;
    font-size: 11px;
    color: #e67e22;
    margin-top: 4px;
    font-weight: 700;
}

.shop-card .product-card__body form[action*="/Delete/"],
.shop-card .product-card__body form[action*="/Delete"] {
    grid-area: delete;
    justify-self: end;
    align-self: start;
    margin: 0 !important;
}

.shop-card .product-card__remove-button {
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: rgba(215, 25, 32, .08) !important;
    color: var(--fastora-red) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    position: static !important;
}

.shop-card .product-card__remove-button:hover {
    background: var(--fastora-red) !important;
    color: #fff !important;
}

.shop-card .product-card-count {
    grid-area: spinner;
    justify-self: end;
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
}

.shop-card .product-card-count form {
    display: flex !important;
    align-items: center !important;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 999px !important;
    background: #fff !important;
    padding: 2px 4px !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .02) !important;
}

.shop-card .product-card-count button {
    display: grid !important;
    place-items: center !important;
    width: 28px !important;
    height: 28px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: var(--fastora-ink) !important;
    cursor: pointer !important;
    font-size: 13px !important;
    padding: 0 !important;
    transition: background 0.2s !important;
}

.shop-card .product-card-count button:hover {
    background: var(--fastora-soft) !important;
    color: var(--fastora-red) !important;
}

.shop-card .product-card-count__input {
    width: 32px !important;
    height: 28px !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    padding: 0 !important;
    margin: 0 !important;
    color: var(--fastora-ink) !important;
}

.shop-card .product-card__price {
    grid-area: price;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

.shop-card .product-card__new-price {
    font-size: 16px !important;
    font-weight: 950 !important;
    color: var(--fastora-ink) !important;
}

.shop-card .product-card__old-price {
    font-size: 12px !important;
    color: #aaa !important;
    text-decoration: line-through !important;
    margin-bottom: 2px !important;
}

.shop-card .product-card-summary {
    display: none !important;
}

/* Address selection cards styling */
.fastora-shell .address-item {
    position: relative !important;
    padding: 16px !important;
    margin-bottom: 16px !important;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 8px 24px rgba(49, 32, 20, .04) !important;
    transition: all 0.25s ease !important;
    cursor: pointer !important;
}

.fastora-shell .address-item:hover {
    border-color: rgba(215, 25, 32, .2) !important;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .08) !important;
}

.fastora-shell .address-item_is-active {
    background: #fffaf4 !important;
    border-color: #ffdca9 !important;
    padding-right: 48px !important;
}

.fastora-shell .address-item_is-active::before {
    content: "\f3c5" !important;
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", sans-serif !important;
    font-weight: 900 !important;
    position: absolute !important;
    right: 16px !important;
    top: 20px !important;
    font-size: 20px !important;
    color: #e67e22 !important;
}

.fastora-shell .address-item .custom-control-input {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
}

.fastora-shell .address-item .custom-control-label {
    padding-right: 0 !important;
    cursor: pointer !important;
    display: block !important;
    width: 100% !important;
}

.fastora-shell .address-item .custom-control-label::before,
.fastora-shell .address-item .custom-control-label::after {
    display: none !important;
}

.fastora-shell .address-item__owner-name {
    float: left !important;
    background: rgba(230, 126, 34, 0.08) !important;
    color: #e67e22 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
}

.fastora-shell .address-details {
    border-top: 1px dashed rgba(230, 126, 34, 0.15) !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
}

.fastora-shell .address-details__item {
    margin-bottom: 6px !important;
    font-size: 13px !important;
}

.fastora-shell .address-details__title {
    color: var(--fastora-muted) !important;
    font-weight: 700 !important;
}

.fastora-shell .address-details__value {
    color: var(--fastora-ink) !important;
    font-weight: 800 !important;
}

.fastora-shell .address-item_is-new {
    border: 1px dashed var(--fastora-line) !important;
    background: rgba(255, 255, 255, 0.5) !important;
}

/* Payment gateway selections card */
.fastora-shell .select-payment .address-item {
    display: flex !important;
    align-items: center !important;
    padding: 14px 16px !important;
    margin-bottom: 10px !important;
}

.fastora-shell .select-payment .address-item_is-active::before {
    content: "\f09d" !important;
    color: var(--fastora-green) !important;
}

/* Review page elements */
.fastora-shell .invoice-table__product-name {
    font-weight: 850 !important;
    color: var(--fastora-ink) !important;
}

.fastora-shell .invoice-table__product-sku {
    color: var(--fastora-muted) !important;
    font-size: 11px !important;
    margin-right: 6px !important;
}

/* Forest Green submit order payment button */
.fastora-shell .cart-sidebar button.submit-basket__button {
    background: var(--fastora-green) !important;
    color: #fff !important;
    box-shadow: 0 10px 25px rgba(47, 143, 47, 0.22) !important;
    width: 100% !important;
    height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 14px !important;
    font-size: 16px !important;
    font-weight: 950 !important;
    transition: all 0.2s ease !important;
}

.fastora-shell .cart-sidebar button.submit-basket__button:hover {
    background: #257025 !important;
    box-shadow: 0 12px 30px rgba(47, 143, 47, 0.32) !important;
}

/* Coupon entry style */
.fastora-shell .basket-coupon {
    padding: 16px !important;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .05) !important;
    margin-bottom: 16px !important;
}

.fastora-shell .basket-coupon__title {
    font-size: 14px !important;
    font-weight: 900 !important;
    margin-bottom: 12px !important;
    color: var(--fastora-ink) !important;
}

.fastora-shell .basket-coupon__button {
    background: var(--fastora-red) !important;
    color: #fff !important;
    border-radius: 0 13px 13px 0 !important;
}

.fastora-shell .basket-coupon__button_is-remove {
    background: var(--fastora-red) !important;
    color: #fff !important;
}

/* User Dashboard Redesign */
.fastora-account-shell .c-profile-box {
    border: 1px solid var(--fastora-line) !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .05) !important;
    padding: 0 !important;
}

.fastora-account-shell .c-profile-box__section {
    border-bottom: 1px solid var(--fastora-line) !important;
    padding: 16px !important;
}

.fastora-account-shell .c-profile-box__section:last-child {
    border-bottom: 0 !important;
}

.fastora-account-shell .c-profile-box__header {
    background: linear-gradient(135deg, rgba(215, 25, 32, .04), rgba(47, 143, 47, .04)) !important;
    border-radius: 16px !important;
    padding: 16px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.fastora-account-shell .c-profile-box__avatar {
    width: 54px !important;
    height: 54px !important;
    border-radius: 14px !important;
    background-image: url('/images/fastora/fastora-app-icon.png') !important;
    background-size: cover !important;
    flex-shrink: 0 !important;
}

.fastora-account-shell .c-profile-box__username {
    font-size: 15px !important;
    font-weight: 950 !important;
    color: var(--fastora-ink) !important;
}

.fastora-account-shell .c-profile-box__phone {
    font-size: 12px !important;
    color: var(--fastora-muted) !important;
    margin-top: 4px !important;
}

.fastora-account-shell .c-profile-box__row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 10px 0 !important;
    font-size: 14px !important;
    color: var(--fastora-ink) !important;
    border-bottom: 1px solid rgba(236, 231, 223, 0.5) !important;
}

.fastora-account-shell .c-profile-box__row:last-of-type {
    border-bottom: 0 !important;
}

.fastora-account-shell .c-profile-box__title {
    color: var(--fastora-muted) !important;
    font-weight: 750 !important;
    margin-right: 35px;
}

.fastora-account-shell .c-profile-box__amount {
    font-weight: 900 !important;
    color: var(--fastora-ink) !important;
}

.fastora-account-shell .c-profile-menu {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.fastora-account-shell .c-profile-menu li {
    margin-bottom: 6px !important;
}

.fastora-account-shell .c-profile-menu li:last-child {
    margin-bottom: 0 !important;
}

.fastora-account-shell .c-profile-menu__item {
    display: flex !important;
    align-items: center !important;
    padding: 10px 14px !important;
    border-radius: 11px !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    color: var(--fastora-ink) !important;
    transition: all 0.2s ease !important;
}

.fastora-account-shell .c-profile-menu__item:hover,
.fastora-account-shell .c-profile-menu__item.is-active {
    background: rgba(215, 25, 32, .05) !important;
    color: var(--fastora-red) !important;
}

/* Main dashboard Box */
.fastora-account-shell .o-box {
    border: 1px solid var(--fastora-line) !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(49, 32, 20, .05) !important;
    padding: 24px !important;
}

.fastora-account-shell .o-box__header {
    border-bottom: 1px solid var(--fastora-line) !important;
    padding-bottom: 14px !important;
    margin-bottom: 20px !important;
}

.fastora-account-shell .o-box__title {
    font-size: 18px !important;
    font-weight: 950 !important;
    color: var(--fastora-ink) !important;
}

/* User Addresses component in Dashboard */
.fastora-account-shell .ua-item {
    border: 1px solid var(--fastora-line) !important;
    border-radius: 16px !important;
    padding: 16px !important;
    background: #fff !important;
    box-shadow: 0 8px 24px rgba(49, 32, 20, 0.03) !important;
}

.fastora-account-shell .ua-title-title {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: var(--fastora-ink) !important;
}

.fastora-account-shell .btn-edit {
    background: rgba(47, 143, 47, 0.08) !important;
    color: var(--fastora-green) !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
    border: 0 !important;
}

@media (max-width: 768px) {
    .shop-card .product-card .row,
    .shop-card .product-card .col-12 {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .shop-card .product-card__header {
        align-self: center;
        margin-bottom: 12px;
    }

    .shop-card .product-card__body {
        grid-template-columns: 1fr;
        grid-template-areas:
            "title"
            "meta"
            "price"
            "spinner"
            "delete";
        gap: 12px;
    }

    .shop-card .product-card__body form[action*="/Delete/"],
    .shop-card .product-card__body form[action*="/Delete"] {
        justify-self: center;
        align-self: center;
    }

    .shop-card .product-card-count {
        justify-self: center;
    }

    .shop-card .product-card__price {
        align-items: center !important;
    }
}

/* Fastora homepage polish pass */
.fastora-section__header a {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    padding: 0 13px;
    border: 1px solid rgba(215, 25, 32, .16);
    border-radius: 999px;
    background: rgba(255, 255, 255, .78);
    color: var(--fastora-red);
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.fastora-section__header a:hover {
    border-color: rgba(215, 25, 32, .28);
    background: rgba(215, 25, 32, .07);
}

.fastora-card-add span {
    margin-inline: 3px;
}

@media (min-width: 861px) {
    .fastora-hero {
        min-height: 326px;
        grid-template-columns: minmax(300px, .95fr) minmax(360px, 1.05fr);
    }

    .fastora-hero__visual {
        position: relative;
        min-height: 326px;
    }

    .fastora-hero--fallback .fastora-hero__visual::before {
        content: "";
        position: absolute;
        inset: 44px 58px 72px;
        border-radius: 22px;
        background: url("/images/fastora/fastora-logo-horizontal.png") center / contain no-repeat;
        opacity: .11;
    }

    .fastora-hero__content {
        padding: 40px 44px 42px;
    }

    .fastora-hero__actions {
        margin-top: 22px;
    }

    .fastora-hero__plate {
        right: auto;
        left: 34px;
        bottom: 30px;
    }

    .fastora-category-grid {
        grid-template-columns: repeat(auto-fit, minmax(196px, 1fr));
        gap: 14px;
    }

    .fastora-category-card {
        min-height: 96px;
        grid-template-columns: 58px minmax(0, 1fr);
        place-items: initial;
        align-items: center;
        gap: 12px;
        padding: 14px 16px;
        direction: rtl;
    }

    .fastora-category-card__image {
        grid-column: auto;
        grid-row: auto;
        width: 58px;
        height: 58px;
        border-radius: 15px;
    }

    .fastora-category-card > span:last-child {
        display: block;
        min-width: 0;
        overflow: visible;
        color: #211b17;
        font-size: 13px;
        font-weight: 950;
        line-height: 1.55;
        text-align: right;
        text-overflow: clip;
        white-space: normal;
        overflow-wrap: anywhere;
        -webkit-line-clamp: unset;
    }

    .fastora-shell .fastora-product-grid,
    .fastora-shell .fastora-product-grid--compact {
        grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
        align-items: stretch;
        gap: 18px;
    }

    .fastora-shell .fastora-product-card {
        min-width: 168px;
        min-height: 298px;
    }

    .fastora-shell .fastora-product-card__body {
        min-height: 166px;
        padding: 13px 14px 14px;
    }

    .fastora-shell .fastora-product-card__meta {
        flex-wrap: wrap;
        align-items: flex-start;
        line-height: 1.65;
    }

    .fastora-shell .fastora-product-card__footer {
        display: grid;
        align-items: stretch;
        gap: 10px;
        padding-top: 12px;
    }

    .fastora-shell .fastora-product-card__price {
        min-height: 42px;
        text-align: right;
    }

    .fastora-shell .fastora-product-card__footer form {
        width: auto;
        margin: 0;
        justify-self: end;
    }

    .fastora-shell .fastora-card-add {
        width: auto;
        min-width: 78px;
        height: 38px;
        padding: 0 12px;
        border-radius: 11px;
        white-space: nowrap;
    }

    .fastora-shell .product-slider-section .swiper-wrapper,
    .fastora-product-page .swiper-wrapper {
        display: flex !important;
        gap: 18px;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 0 4px 8px;
        transform: none !important;
    }

    .fastora-shell [carousel-slider] {
        display: flex;
        gap: 18px;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 0 4px 8px;
    }

    .fastora-shell .product-slider-section .swiper-wrapper > .fastora-product-card,
    .fastora-shell .product-slider-section .swiper-wrapper > .swiper-slide,
    .fastora-product-page .swiper-wrapper > .fastora-product-card,
    .fastora-product-page .swiper-wrapper > .swiper-slide,
    .fastora-shell [carousel-slider] > .fastora-product-card,
    .fastora-shell [carousel-slider] > .swiper-slide {
        flex: 0 0 176px;
        width: 176px !important;
        max-width: 176px;
    }

    .fastora-shell .product-slider-section .swiper-wrapper > .swiper-slide .fastora-product-card,
    .fastora-shell .product-slider-section .swiper-wrapper > .fastora-product-card,
    .fastora-product-page .swiper-wrapper > .swiper-slide .fastora-product-card,
    .fastora-product-page .swiper-wrapper > .fastora-product-card,
    .fastora-shell [carousel-slider] > .swiper-slide .fastora-product-card,
    .fastora-shell [carousel-slider] > .fastora-product-card {
        min-width: 176px;
        min-height: 298px;
    }

    .fastora-shell .product-slider-section .fastora-product-card__body,
    .fastora-product-page .product-slider-section .fastora-product-card__body {
        min-height: 166px;
        padding: 13px 14px 14px;
    }

    .fastora-shell .product-slider-section .fastora-product-card__footer,
    .fastora-product-page .product-slider-section .fastora-product-card__footer {
        display: grid;
        align-items: stretch;
        gap: 10px;
        padding-top: 12px;
    }

    .fastora-shell .product-slider-section .fastora-product-card__footer form,
    .fastora-product-page .product-slider-section .fastora-product-card__footer form {
        width: auto;
        margin: 0;
        justify-self: end;
    }

    .fastora-shell .product-slider-section .fastora-card-add,
    .fastora-product-page .product-slider-section .fastora-card-add {
        width: auto;
        min-width: 78px;
        height: 38px;
        padding: 0 12px;
        border-radius: 11px;
        white-space: nowrap;
    }

    .fastora-home-cart,
    .fastora-shop-cart,
    .fastora-product-cart {
        top: 156px;
    }

    .fastora-home-cart .fastora-side-basket,
    .fastora-shop-cart .fastora-side-basket,
    .fastora-product-cart .fastora-side-basket {
        max-height: calc(100vh - 176px);
        overflow: auto;
    }

    .fastora-cart-drawer {
        top: 150px;
    }
}

/* Fastora account layout polish pass */
.fastora-account-shell .content-wrapper {
    box-sizing: border-box;
}

.fastora-account-shell .row-account,
.fastora-account-shell .col-3-account,
.fastora-account-shell .col-9-account,
.fastora-account-shell .o-box,
.fastora-account-shell .c-profile-box,
.fastora-account-shell .c-profile-personal__grid {
    min-width: 0;
}

.fastora-account-shell .row-account {
    display: grid;
    align-items: start;
    direction: ltr;
}

.fastora-account-shell .col-3-account,
.fastora-account-shell .col-9-account {
    direction: rtl;
}

.fastora-account-shell .c-profile-box,
.fastora-account-shell .o-box,
.fastora-account-shell .card.px-2 {
    border: 1px solid rgba(226, 218, 207, .95) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 14px 34px rgba(49, 32, 20, .06) !important;
}

.fastora-account-shell .o-box {
    overflow: hidden;
}

.fastora-account-shell .o-box__header {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 14px !important;
    margin-bottom: 18px !important;
    border-bottom: 1px solid var(--fastora-line) !important;
    text-align: right;
}

.fastora-account-shell .o-box__header::after {
    width: 42px;
    margin-top: 8px;
    background: var(--fastora-red);
}

.fastora-account-shell .o-box__header > .row {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0;
}

.fastora-account-shell .o-box__header .o-box__title {
    width: auto;
    flex: 1 1 auto;
    padding: 0;
    color: var(--fastora-ink);
    font-size: 17px !important;
    font-weight: 950 !important;
    line-height: 1.5 !important;
    text-align: right;
}

.fastora-account-shell .o-box__header .btn {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto;
    margin: 0 !important;
    white-space: nowrap;
}

.fastora-account-shell .c-profile-box {
    overflow: hidden;
    padding: 0 !important;
}

.fastora-account-shell .c-profile-box__section {
    padding: 14px 16px !important;
    border-bottom: 1px solid var(--fastora-line) !important;
}

.fastora-account-shell .c-profile-box__section:last-child {
    border-bottom: 0 !important;
}

.fastora-account-shell .c-profile-box__header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 72px;
    padding: 12px !important;
    border-radius: 14px !important;
    background:
        linear-gradient(135deg, rgba(215, 25, 32, .05), rgba(47, 143, 47, .035)) !important;
}

.fastora-account-shell .c-profile-box__avatar {
    width: 52px !important;
    height: 52px !important;
    flex: 0 0 52px !important;
    border-radius: 15px !important;
    background-image: url('/images/fastora/fastora-app-icon.png') !important;
    background-size: cover !important;
    box-shadow: 0 8px 20px rgba(49, 32, 20, .08) !important;
}

.fastora-account-shell .c-profile-box__username {
    color: var(--fastora-ink) !important;
    font-size: 14px !important;
    font-weight: 950 !important;
    line-height: 1.7;
}

.fastora-account-shell .c-profile-box__phone {
    margin-top: 2px !important;
    color: var(--fastora-muted) !important;
    font-size: 12px !important;
    font-weight: 750;
}

.fastora-account-shell .c-profile-box__row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px;
    padding: 8px 0 !important;
    border-bottom: 1px solid rgba(236, 231, 223, .7) !important;
    color: var(--fastora-ink) !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}

.fastora-account-shell .c-profile-box__row:last-of-type {
    border-bottom: 0 !important;
}

.fastora-account-shell .c-profile-box__title {
    color: var(--fastora-muted) !important;
    font-weight: 800 !important;
}

.fastora-account-shell .c-profile-box__amount {
    color: var(--fastora-ink) !important;
    font-weight: 950 !important;
}

.fastora-account-shell .c-profile-menu {
    display: grid !important;
    gap: 5px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.fastora-account-shell .c-profile-menu li {
    margin: 0 !important;
}

.fastora-account-shell .c-profile-menu__item {
    position: relative;
    display: flex !important;
    min-height: 42px;
    align-items: center !important;
    gap: 10px;
    padding: 0 12px !important;
    border-radius: 10px !important;
    color: var(--fastora-ink) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1.45 !important;
    transition: background-color .18s ease, color .18s ease;
}

.fastora-account-shell .c-profile-menu__item::before {
    content: "" !important;
    width: 7px !important;
    height: 7px !important;
    flex: 0 0 7px !important;
    margin-left: 0 !important;
    border-radius: 999px;
    background: rgba(215, 25, 32, .22);
    font-size: 0 !important;
    line-height: 0 !important;
}

.fastora-account-shell .c-profile-menu__item:hover,
.fastora-account-shell .c-profile-menu__item.is-active {
    background: rgba(215, 25, 32, .055) !important;
    color: var(--fastora-red) !important;
}

.fastora-account-shell .c-profile-menu__item:hover::before,
.fastora-account-shell .c-profile-menu__item.is-active::before {
    background: var(--fastora-red);
}

.fastora-account-shell .c-profile-menu__item--sign-out {
    color: #8c2b24 !important;
}

.fastora-account-shell .c-profile-menu__item--sign-out::before {
    background: rgba(140, 43, 36, .28);
}

.fastora-account-shell .c-profile-personal__grid {
    display: block;
}

.fastora-account-shell .forms-sample {
    display: grid;
    gap: 14px;
}

.fastora-account-shell .forms-sample .row {
    margin-right: -8px;
    margin-left: -8px;
    row-gap: 14px;
}

.fastora-account-shell .forms-sample [class*="col-"],
.fastora-account-shell .user-address [class*="col-"] {
    padding-right: 8px;
    padding-left: 8px;
}

.fastora-account-shell .forms-sample .form-group {
    margin-bottom: 0;
}

.fastora-account-shell .col-form-label {
    display: block;
    margin-bottom: 7px;
    padding: 0;
    color: #68635e;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.5;
    text-align: right;
}

.fastora-account-shell .nice-select,
.fastora-account-shell .select2-container,
.fastora-account-shell .select2-selection,
.fastora-account-shell select.form-control,
.fastora-account-shell input.form-control,
.fastora-account-shell textarea.form-control {
    width: 100% !important;
}

.fastora-account-shell .form-control,
.fastora-account-shell input.form-control,
.fastora-account-shell select.form-control,
.fastora-account-shell .nice-select,
.fastora-account-shell .select2-selection {
    min-height: 42px !important;
    border-color: #e6ded4 !important;
    border-radius: 12px !important;
    background-color: #fff !important;
    color: var(--fastora-ink) !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    box-shadow: none !important;
}

.fastora-account-shell input.form-control,
.fastora-account-shell select.form-control {
    padding-right: 12px !important;
    padding-left: 12px !important;
}

.fastora-account-shell .nice-select {
    padding-right: 12px;
    padding-left: 32px;
    line-height: 40px;
}

.fastora-account-shell .nice-select .list {
    right: 0;
    left: auto;
    width: 100%;
}

.fastora-account-shell .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-right: 12px;
    padding-left: 30px;
    color: var(--fastora-ink);
    line-height: 40px;
    text-align: right;
}

.fastora-account-shell .select2-container--default .select2-selection--single .select2-selection__arrow {
    right: auto;
    left: 8px;
    height: 40px;
}

.fastora-account-shell .btn {
    display: inline-flex !important;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 10px !important;
    font-size: 13px;
    font-weight: 900;
    line-height: 1.2;
}

.fastora-account-shell form > .btn,
.fastora-account-shell form .btn[type="submit"] {
    min-width: 132px;
    margin-top: 4px !important;
    justify-self: start;
}

.fastora-account-shell .g-responsive-table {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.fastora-account-shell .g-responsive-table table,
.fastora-account-shell .invoice-table table {
    width: 100%;
    min-width: 760px;
    margin-bottom: 0;
}

.fastora-account-shell .table td,
.fastora-account-shell .table th {
    vertical-align: middle;
    white-space: normal;
}

.fastora-account-shell .table thead td {
    color: var(--fastora-muted);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.fastora-account-shell .table tbody td,
.fastora-account-shell .table tbody th {
    color: var(--fastora-ink);
    font-size: 13px;
    line-height: 1.75;
}

.fastora-account-shell .object-of-table .btn,
.fastora-account-shell .invoice .btn {
    margin: 3px;
}

.fastora-account-shell .user-address {
    row-gap: 16px;
}

.fastora-account-shell .ua-item {
    display: flex;
    min-height: 188px;
    flex-direction: column;
    gap: 10px;
    border: 1px solid var(--fastora-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
}

.fastora-account-shell .ua-body {
    min-width: 0;
    flex: 1 1 auto;
}

.fastora-account-shell .ua-title-title {
    line-height: 1.7;
}

.fastora-account-shell .ua-item small {
    line-height: 1.85;
}

.fastora-account-shell .ua-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: auto !important;
}

.fastora-account-shell .ua-footer .btn {
    margin: 0 !important;
}

.fastora-account-shell .invoice {
    padding: 22px !important;
}

.fastora-account-shell .invoice .container-fluid {
    padding-right: 0;
    padding-left: 0;
}

.fastora-account-shell .invoice .container-fluid.d-flex {
    flex-wrap: wrap;
    gap: 18px;
}

.fastora-account-shell .invoice .container-fluid.d-flex > [class*="col-"] {
    flex: 1 1 260px;
    max-width: none;
    padding: 0 !important;
}

.fastora-account-shell .cart-amount-wrapper {
    margin-top: 22px;
}

.fastora-account-shell .cart-amount-wrapper .row {
    justify-content: center;
    margin-right: 0;
    margin-left: 0;
}

.fastora-account-shell .cart-amount-wrapper [class*="col-"] {
    max-width: 520px;
    flex: 1 1 360px;
    margin-right: 0;
    margin-left: 0;
    padding: 0;
}

@media (min-width: 861px) {
    .fastora-account-shell .content-wrapper {
        width: min(1230px, calc(100% - 48px));
        margin-top: 22px;
        padding-bottom: 44px;
    }

    .fastora-account-shell .row-account {
        grid-template-columns: minmax(0, 1fr) 300px;
        gap: 20px;
    }

    .fastora-account-shell .col-9-account {
        grid-column: 1;
        grid-row: 1;
    }

    .fastora-account-shell .col-3-account {
        grid-column: 2;
        grid-row: 1;
    }

    .fastora-account-shell .c-profile-box {
        position: sticky;
        top: 156px;
    }

    .fastora-account-shell .o-box {
        padding: 22px 26px 24px !important;
    }
}

@media (max-width: 860px) {
    .fastora-account-shell .content-wrapper {
        width: min(100% - 24px, 640px);
        margin-top: 14px;
        padding-bottom: 92px;
    }

    .fastora-account-shell .row-account {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .fastora-account-shell .col-3-account,
    .fastora-account-shell .col-9-account {
        grid-column: auto;
    }

    .fastora-account-shell .o-box {
        padding: 18px !important;
        border-radius: 15px !important;
    }

    .fastora-account-shell .o-box__header .btn {
        width: 100% !important;
    }

    .fastora-account-shell form > .btn,
    .fastora-account-shell form .btn[type="submit"] {
        width: 100%;
    }

    .fastora-account-shell .forms-sample .row.col-md-4 {
        width: auto;
        max-width: none;
        flex: 0 0 100%;
        margin-right: 0;
        margin-left: 0;
        padding-right: 0;
        padding-left: 0;
    }

    .fastora-account-shell .forms-sample .row.offset-md-4 {
        margin-right: 0;
        margin-left: 0;
    }

    .fastora-account-shell .g-responsive-table table,
    .fastora-account-shell .invoice-table table {
        min-width: 680px;
    }

    .fastora-account-shell .ua-item {
        min-height: 0;
    }

    .fastora-account-shell .invoice {
        padding: 18px !important;
    }
}

/* Fastora service-area notice */
.fastora-region-notice {
    direction: rtl;
}

.fastora-region-notice__inner {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 10px;
    overflow: hidden;
    padding: 6px 12px;
    border: 1px solid rgba(47, 143, 47, .16);
    border-radius: 14px;
    background:
        linear-gradient(90deg, rgba(47, 143, 47, .08), rgba(215, 25, 32, .045)),
        rgba(255, 255, 255, .82);
    color: var(--fastora-ink);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
    white-space: nowrap;
}

.fastora-region-notice__label {
    display: inline-flex;
    height: 22px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding: 0 9px;
    border-radius: 999px;
    background: rgba(47, 143, 47, .12);
    color: var(--fastora-green);
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
}

.fastora-region-notice__viewport {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    white-space: nowrap;
}

.fastora-region-notice__text {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    color: #302922;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.7;
    text-overflow: ellipsis;
    vertical-align: middle;
    white-space: nowrap;
}

.fastora-region-notice__text strong {
    color: var(--fastora-red);
    font-weight: 950;
}

.fastora-header .fastora-region-notice {
    margin-bottom: 10px;
}

.fastora-region-notice--direct {
    padding: 8px 0;
    background: rgba(255, 253, 249, .94);
    border-bottom: 1px solid rgba(236, 231, 223, .85);
}

@keyframes fastoraNoticeMarquee {
    0%,
    24% {
        transform: translateX(0);
    }

    72%,
    88% {
        transform: translateX(calc(100% - 100vw + 126px));
    }

    100% {
        transform: translateX(0);
    }
}

@media (min-width: 861px) {
    .fastora-header .fastora-region-notice {
        margin-top: 0;
    }
}

@media (max-width: 860px) {
    .fastora-header .fastora-region-notice {
        margin-bottom: 8px;
    }

    .fastora-region-notice__inner {
        min-height: 32px;
        gap: 8px;
        padding: 5px 9px;
        border-radius: 12px;
    }

    .fastora-region-notice__label {
        height: 21px;
        padding: 0 8px;
        font-size: 10px;
    }

    .fastora-region-notice__viewport {
        direction: rtl;
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
    }

    .fastora-region-notice__text {
        max-width: none;
        min-width: max-content;
        overflow: visible;
        direction: rtl;
        font-size: 11px;
        text-overflow: clip;
        animation: fastoraNoticeMarquee 11s ease-in-out infinite;
    }
}

@media (prefers-reduced-motion: reduce) {
    .fastora-region-notice__text {
        animation: none !important;
    }
}
