/* FlexiPets — einheitliche Seiten- und Boxbreite */

:root {
    --fp-page-max-width: 1320px;
    --fp-page-gutter: clamp(16px, 4vw, 28px);
    --fp-page-width: min(var(--fp-page-max-width), calc(100vw - 2 * var(--fp-page-gutter)));
}

.fp-page-shell,
.fp-container,
.fp-main-content,
body.fp-checkout-page .fp-page-wrap,
body.fp-single-product-page .fp-main-content,
body.fp-checkout-page .fp-main-content,
body.fp-shop-page .fp-main-content.fp-shop-main-wrap,
body.fp-shop-page .fp-page-wrap.fp-shop-page-wrap,
body.fp-account-page .fp-main-content,
body.page-account .fp-main-content,
body.um-page-account .fp-main-content,
body.fp-order-received-page .fp-page-wrap > .fp-main-content,
body.fp-order-received-page > main.fp-main-content,
body.fp-order-received-page .fp-footer .fp-container,
.fp-album-page,
.fp-album-container,
.flexipets-order-wrapper,
.fp-generator-grid,
.fp-layout-front-bar,
.fp-layout-inspector-wrap,
.fp-marketplace-page,
.fp-v3-wrap,
.fp-home-container,
.fp-user-admin-wrap,
.fp-design-studio,
.fp-coin-shop {
    width: var(--fp-page-width) !important;
    max-width: var(--fp-page-max-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
}

body:has(.fp-album-shop) .fp-album-shop,
body:has(.fp-album-page-wrap) .fp-album-page-wrap {
    width: var(--fp-page-width) !important;
    max-width: var(--fp-page-max-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
}

body.page-template-page-mein-album .fp-main-content,
body:has(.fp-album-page-wrap) .fp-main-content,
body:has(.fp-album-shop) .fp-main-content {
    width: 100% !important;
    max-width: none !important;
    padding-left: var(--fp-page-gutter) !important;
    padding-right: var(--fp-page-gutter) !important;
    box-sizing: border-box !important;
}

.fp-generator-page {
    padding-left: max(16px, var(--fp-page-gutter));
    padding-right: max(16px, var(--fp-page-gutter));
}

@media (max-width: 640px) {
    :root {
        --fp-page-gutter: 14px;
    }
}

/* Startseite: dekorative Überstände nicht abschneiden */
.home .fp-main-content,
.fp-v3-page,
.fp-v3-wrap,
.fp-v3-hero,
.fp-v3-album-stage,
.fp-panel.fp-config {
    overflow: visible !important;
}
