/* ── Homepage decorative background (public shop home only) ── */

:root {
    --home-page-background: #f1f4f7;
}

body.shop-home-body {
    background-color: var(--home-page-background);
}

body.shop-home-body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background-image: var(--home-page-background-image);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    opacity: 0.12;
}

body.shop-home-body .shop-site-shell--header,
body.shop-home-body .shop-site-main,
body.shop-home-body .shop-site-shell--footer,
body.shop-home-body #shop-modal {
    position: relative;
    z-index: 1;
}

.shop-home-page {
    position: relative;
    isolation: isolate;
    min-height: 100%;
}

.shop-home-page__content {
    position: relative;
    z-index: 1;
}

/* Colored inner surfaces (container width only) */
.shop-section-surface {
    background: rgba(235, 243, 251, 0.9);
    border: 1px solid #dce5ef;
    border-radius: 16px;
    padding: 24px;
    box-sizing: border-box;
}

@media (min-width: 1024px) {
    .shop-section-surface {
        padding: 28px;
    }
}

.shop-home-page .shop-events-panel,
.shop-home-page .shop-stats-panel,
.shop-home-page .shop-customers--light {
    background: rgba(235, 243, 251, 0.9);
    border: 1px solid #dce5ef;
}

.shop-home-page .shop-news-panel,
.shop-home-page .shop-card-process {
    background: #fff;
    border: 1px solid #dce5ef;
    box-shadow: 0 8px 24px rgba(11, 44, 110, 0.05);
}

.shop-home-page .shop-club-card,
.shop-home-page .shop-acceptor-card {
    border: 1px solid #dce5ef;
    box-shadow: 0 8px 24px rgba(11, 44, 110, 0.05);
}

@media (max-width: 1440px) {
    body.shop-home-body::before {
        opacity: 0.09;
    }
}

@media (max-width: 1024px) {
    body.shop-home-body::before {
        background-size: 140% auto;
        opacity: 0.05;
    }
}

@media (max-width: 767px) {
    body.shop-home-body::before {
        display: none;
    }
}
