/* Fullscreen-Erweiterung für sämtliche öffentlichen NovaPress-Unterseiten.
   Bewusst auf den Theme-Body begrenzt: Admin und Kundenportal bleiben unabhängig. */
body.invicta-fullscreen-pages {
    --max: 100%;
    --fs-gutter: 6vw;
    overflow-x: clip;
}
.invicta-fullscreen-pages .header {
    padding-inline: var(--fs-gutter);
    width: 100%;
    max-width: none;
}
.invicta-fullscreen-pages .header-inner {
    width: 100%;
    max-width: none;
    grid-template-columns: 180px minmax(0, 1fr) auto auto;
    gap: 20px;
}
.invicta-fullscreen-pages .header nav {
    gap: clamp(14px, 2vw, 38px);
    padding-right: 0;
    justify-content: center;
}
.invicta-fullscreen-pages .footer-inner {
    width: 100%;
    max-width: none;
    padding-inline: var(--fs-gutter);
}
.invicta-fullscreen-pages main.content {
    width: 100%;
    max-width: none;
    padding-inline: 0;
}
.invicta-fullscreen-pages main.content > article {
    width: 100%;
    max-width: none;
    margin-inline: 0;
}
.invicta-fullscreen-pages main.content > article > h1,
.invicta-fullscreen-pages main.content > article > p {
    margin-left: var(--fs-gutter);
    margin-right: var(--fs-gutter);
}
.invicta-fullscreen-pages
    :is(
        .pb-hosting,
        .pb-hosting2,
        .pb-marketing,
        .pb-seoki,
        .pb-shops,
        .pb-customer,
        .pb-brands,
        .pb-content-creation,
        .pb-about,
        .pb-career,
        .pb-reference-showcase,
        .pb-reference-detail,
        .pb-home-new
    ) {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.invicta-fullscreen-pages
    :is(
        .pb-invicta-hero,
        .pb-invicta-services,
        .pb-invicta-references,
        .pb-invicta-technology,
        .privacy-hero,
        .privacy-final,
        .agb-hero,
        .agb-final,
        .imprint-hero,
        .imprint-final
    ) {
    width: 100%;
    max-width: none;
}
.invicta-fullscreen-pages
    :is(
        .privacy-legal-content,
        .agb-legal-content,
        .imprint-legal-content,
        .contact-hero,
        .contact-shell,
        .hosting-order-head,
        .hosting-order-shell,
        .pb-pricing-grid
    ) {
    width: calc(100% - 2 * var(--fs-gutter));
    max-width: none;
    margin-left: auto;
    margin-right: auto;
    left: auto;
    transform: none;
}
.invicta-fullscreen-pages main.content > article > .container {
    width: 100%;
    max-width: none;
}
.invicta-fullscreen-pages
    :is(
        .pb-brands-final,
        .pb-content-final,
        .pb-about-final,
        .pb-customer-final,
        .pb-shops-final,
        .pb-seoki-final,
        .pb-marketing-final
    ) {
    width: 100% !important;
    max-width: none !important;
    left: auto !important;
    transform: none !important;
}
.invicta-fullscreen-pages :is(.pb-brands-final, .pb-content-final) > div {
    max-width: none;
    width: 100%;
}
.invicta-fullscreen-pages :is(.pb-customer-stats, .pb-shops-stats) {
    left: auto;
    transform: none;
    width: 100%;
    padding-inline: var(--fs-gutter);
}
.invicta-fullscreen-pages
    :is(
        .pb-brands-process,
        .pb-brands-showcase,
        .pb-customer-services,
        .pb-shops-platform,
        .pb-about-story,
        .pb-about-journey,
        .pb-career-culture,
        .pb-career-stats,
        .pb-career-form-section,
        .pb-seoki-services,
        .pb-shops-services,
        .pb-content-services
    ) {
    padding-left: var(--fs-gutter);
    padding-right: var(--fs-gutter);
}
.invicta-fullscreen-pages
    :is(
        .pb-brands-benefits,
        .pb-customer-benefits,
        .pb-shops-benefits,
        .pb-seoki-benefits,
        .pb-about-benefits,
        .pb-content-benefits
    ) {
    padding-left: var(--fs-gutter);
    padding-right: var(--fs-gutter);
}
@media (min-width: 900px) {
    .invicta-fullscreen-pages
        :is(
            .pb-brands-hero,
            .pb-content-hero,
            .pb-about-hero,
            .pb-career-hero,
            .pb-customer-hero,
            .pb-shops-hero,
            .pb-seoki-hero,
            .privacy-hero,
            .agb-hero,
            .imprint-hero
        ) {
        height: max(440px, 43vw);
    }
    .invicta-fullscreen-pages
        :is(.pb-brands-hero, .pb-content-hero, .pb-about-hero, .pb-customer-hero, .pb-shops-hero)
        > div {
        padding-left: var(--fs-gutter);
        padding-top: 5vw;
        width: 46%;
        transform: none !important;
    }
    .invicta-fullscreen-pages
        :is(
            .pb-career-copy,
            .pb-seoki-hero-copy,
            .privacy-hero-copy,
            .agb-hero-copy,
            .imprint-hero-copy
        ) {
        padding-left: var(--fs-gutter);
        padding-top: 5vw;
        width: 46%;
        transform: none !important;
    }
    .invicta-fullscreen-pages
        :is(
            .pb-brands-final,
            .pb-content-final,
            .pb-about-final,
            .pb-customer-final,
            .pb-shops-final,
            .pb-seoki-final,
            .privacy-final,
            .agb-final,
            .imprint-final
        ) {
        height: max(260px, 25vw);
    }
    .invicta-fullscreen-pages
        :is(
            .pb-brands-final,
            .pb-content-final,
            .pb-about-final,
            .pb-customer-final,
            .pb-shops-final,
            .pb-seoki-final,
            .privacy-final,
            .agb-final,
            .imprint-final
        )
        > div {
        padding-left: var(--fs-gutter);
        padding-top: 4vw;
        transform: none !important;
    }
    .invicta-fullscreen-pages
        :is(
            .pb-brands,
            .pb-content-creation,
            .pb-about,
            .pb-career,
            .pb-customer,
            .pb-shops,
            .pb-seoki,
            .pb-marketing,
            .pb-hosting2
        )
        p {
        font-size: clamp(13px, 1vw, 18px);
        line-height: 1.55;
    }
    .invicta-fullscreen-pages
        :is(
            .pb-brands,
            .pb-content-creation,
            .pb-about,
            .pb-career,
            .pb-customer,
            .pb-shops,
            .pb-seoki,
            .pb-marketing
        )
        h2 {
        font-size: clamp(30px, 3vw, 56px);
    }
    .invicta-fullscreen-pages :is(.pb-marketing-hero, .pb-hosting2-hero) {
        min-height: 43vw;
    }
    .invicta-fullscreen-pages .pb-reference-showcase {
        padding-inline: var(--fs-gutter);
    }
    .invicta-fullscreen-pages .pb-pricing-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    /* Hosting: Vollbreiten-Bild, aber alle editierbaren Inhalte exakt auf der
    Innenkante des Headers. Die alten Pagebuilder-Werte waren für 1024 px
    gebaut und klebten im Fullscreen-Theme links am Browserrand. */
    .invicta-fullscreen-pages .pb-hosting2 {
        margin-bottom: clamp(34px, 3vw, 58px) !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-visual img {
        object-fit: cover !important;
        object-position: center top !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-copy {
        padding: clamp(34px, 3.3vw, 64px) var(--fs-gutter) 28px !important;
        transform: none !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-copy > h2 {
        width: 48%;
        font-size: clamp(34px, 3.15vw, 60px);
        line-height: 1.04;
    }
    .invicta-fullscreen-pages .pb-hosting2-intro {
        width: 43%;
        max-width: 680px;
        font-size: clamp(14px, 1.05vw, 19px) !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-features {
        left: var(--fs-gutter);
        bottom: 24px;
        width: 47%;
        gap: 0;
    }
    .invicta-fullscreen-pages .pb-hosting2-features h3 {
        font-size: clamp(12px, 0.9vw, 16px);
    }
    .invicta-fullscreen-pages .pb-hosting2-features p {
        font-size: clamp(10px, 0.72vw, 13px) !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-status {
        top: clamp(22px, 2vw, 38px);
        right: var(--fs-gutter);
        width: clamp(168px, 14vw, 260px);
        gap: clamp(8px, 0.8vw, 14px);
    }
    .invicta-fullscreen-pages .pb-hosting2-status-card {
        min-height: clamp(70px, 6vw, 112px);
        padding: clamp(10px, 1vw, 18px);
        font-size: clamp(8px, 0.65vw, 12px);
    }
    .invicta-fullscreen-pages .pb-hosting2-status-card small {
        font-size: clamp(7px, 0.55vw, 10px);
    }
    .invicta-fullscreen-pages .pb-hosting2-status-card strong {
        font-size: clamp(8px, 0.65vw, 12px);
    }
    .invicta-fullscreen-pages .pb-hosting2-status-card strong em {
        font-size: clamp(17px, 1.45vw, 27px);
    }
    .invicta-fullscreen-pages .pb-hosting2-domains p {
        font-size: clamp(7px, 0.58vw, 11px);
    }
    .invicta-fullscreen-pages .pb-hosting2-cta,
    .invicta-fullscreen-pages .pb-hosting2-benefits {
        width: calc(100% - 2 * var(--fs-gutter));
        margin-left: auto;
        margin-right: auto;
    }
    .invicta-fullscreen-pages .pb-hosting2-cta {
        grid-template-columns: minmax(0, 1.45fr) minmax(250px, 1fr) auto;
        gap: clamp(20px, 2vw, 38px);
        padding-inline: clamp(30px, 2.5vw, 48px);
    }
    .invicta-fullscreen-pages .pb-hosting2-cta > strong {
        font-size: clamp(18px, 1.45vw, 27px);
    }
    .invicta-fullscreen-pages .pb-hosting2-cta > p {
        font-size: clamp(12px, 0.85vw, 16px) !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-benefits {
        margin-top: 18px;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        padding: clamp(22px, 2vw, 34px) clamp(10px, 1vw, 20px);
    }
    .invicta-fullscreen-pages .pb-hosting2-benefits h3 {
        font-size: clamp(11px, 0.82vw, 15px);
    }
    .invicta-fullscreen-pages .pb-hosting2-benefits p {
        font-size: clamp(10px, 0.7vw, 13px) !important;
    }
}
@media (max-width: 899px) {
    body.invicta-fullscreen-pages {
        --fs-gutter: 24px;
    }
    .invicta-fullscreen-pages .header-inner {
        grid-template-columns: 1fr auto auto;
        gap: 12px;
    }
    .invicta-fullscreen-pages .header nav {
        justify-content: flex-start;
    }
    .invicta-fullscreen-pages :is(.pb-pricing-grid) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .invicta-fullscreen-pages .pb-hosting2 {
        width: 100% !important;
        padding-inline: var(--fs-gutter);
    }
    .invicta-fullscreen-pages .pb-hosting2-copy {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .invicta-fullscreen-pages .pb-hosting2-cta,
    .invicta-fullscreen-pages .pb-hosting2-benefits {
        width: 100%;
    }
}
@media (max-width: 620px) {
    body.invicta-fullscreen-pages {
        --fs-gutter: 16px;
    }
    .invicta-fullscreen-pages
        :is(
            .pb-hosting,
            .pb-hosting2,
            .pb-marketing,
            .pb-seoki,
            .pb-shops,
            .pb-customer,
            .pb-brands,
            .pb-content-creation,
            .pb-about,
            .pb-career,
            .pb-reference-showcase,
            .pb-reference-detail,
            .pb-home-new
        ) {
        padding-left: var(--fs-gutter);
        padding-right: var(--fs-gutter);
    }
    .invicta-fullscreen-pages
        :is(
            .pb-brands-process,
            .pb-brands-showcase,
            .pb-customer-services,
            .pb-shops-platform,
            .pb-about-story,
            .pb-about-journey,
            .pb-career-culture,
            .pb-career-stats,
            .pb-career-form-section,
            .pb-seoki-services,
            .pb-shops-services,
            .pb-content-services
        ) {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .invicta-fullscreen-pages .pb-pricing-grid {
        grid-template-columns: 1fr;
    }
    .invicta-fullscreen-pages
        :is(.privacy-hero, .agb-hero, .imprint-hero, .privacy-final, .agb-final, .imprint-final) {
        padding-left: var(--fs-gutter);
        padding-right: var(--fs-gutter);
    }
}


/* Fullscreen-PageBuilder: Unterseiten beginnen wie die Startseite direkt am Header. */
body.invicta-fullscreen-pages main.content:has(:is(.pb-hosting, .pb-marketing, .pb-seoki, .pb-shops, .pb-customer, .pb-home-new)) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
body.invicta-fullscreen-pages main.content:has(:is(.pb-hosting, .pb-marketing, .pb-seoki, .pb-shops, .pb-customer, .pb-home-new)) > article {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
body.invicta-fullscreen-pages main.content:has(:is(.pb-hosting, .pb-marketing, .pb-seoki, .pb-shops, .pb-customer, .pb-home-new))
    :is(.pb-hosting, .pb-marketing, .pb-seoki, .pb-shops, .pb-customer, .pb-home-new) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
