body.page-id-678 {
    background:#05070a!important;
}

body.page-id-678 .wp-site-blocks {
    padding-top:0!important;
    padding-bottom:0!important;
}

body.page-id-678 main.wp-block-group,
body.page-id-678 .entry-content {
    margin:0!important;
    padding:0!important;
    max-width:none!important;
}

.fh-shop-premium {
    width:100%;
    min-height:100vh;
    color:#fff;
    background:
        radial-gradient(circle at 50% -10%, rgba(0,210,255,.16), transparent 38%),
        radial-gradient(circle at 0% 45%, rgba(0,180,220,.07), transparent 30%),
        #05070a;
    overflow:hidden;
}

.fh-shop-premium * {
    box-sizing:border-box;
}

.fh-shop-hero {
    width:min(1180px,calc(100% - 40px));
    margin:0 auto;
    padding:130px 0 105px;
    text-align:center;
}

.fh-shop-eyebrow,
.fh-shop-section-label {
    color:#00d9ff;
    font-size:12px;
    font-weight:800;
    letter-spacing:2.5px;
    text-transform:uppercase;
}

.fh-shop-hero h1 {
    margin:22px 0 25px;
    font-size:clamp(46px,7vw,86px);
    line-height:.98;
    letter-spacing:-3px;
    font-weight:850;
}

.fh-shop-hero h1 span,
.fh-shop-intro h2 span,
.fh-shop-process h2 span,
.fh-shop-form-intro h2 span,
.fh-shop-final-cta h2 span {
    color:#00d9ff;
}

.fh-shop-lead {
    max-width:720px;
    margin:0 auto 35px;
    color:#b8c1ca;
    font-size:19px;
    line-height:1.7;
}

.fh-shop-hero-button,
.fh-shop-cta-button {
    display:inline-block;
    padding:14px 25px;
    border-radius:9px;
    background:#00d9ff;
    color:#001015!important;
    text-decoration:none!important;
    font-weight:800;
    transition:.2s ease;
}

.fh-shop-hero-button:hover,
.fh-shop-cta-button:hover {
    transform:translateY(-2px);
    filter:brightness(1.08);
}

.fh-shop-intro,
.fh-shop-process,
.fh-shop-form-wrap {
    width:min(1120px,calc(100% - 40px));
    margin:0 auto;
}

.fh-shop-intro {
    padding:70px 0 40px;
}

.fh-shop-intro h2,
.fh-shop-process h2,
.fh-shop-form-intro h2,
.fh-shop-final-cta h2 {
    margin:14px 0 18px;
    color:#fff;
    font-size:clamp(34px,5vw,58px);
    line-height:1.05;
    letter-spacing:-1.8px;
}

.fh-shop-intro > p,
.fh-shop-form-intro > p,
.fh-shop-final-cta > p {
    max-width:720px;
    color:#aeb8c2;
    font-size:17px;
    line-height:1.75;
}

.fh-shop-services {
    width:min(1120px,calc(100% - 40px));
    margin:35px auto 100px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.fh-shop-card {
    min-height:245px;
    padding:28px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
    box-shadow:0 20px 50px rgba(0,0,0,.2);
    transition:.25s ease;
}

.fh-shop-card:hover {
    transform:translateY(-5px);
    border-color:rgba(0,217,255,.35);
}

.fh-shop-number {
    margin-bottom:25px;
    color:#00d9ff;
    font-size:13px;
    font-weight:800;
    letter-spacing:2px;
}

.fh-shop-card h3,
.fh-shop-step h3 {
    margin:0 0 12px;
    color:#fff;
    font-size:21px;
}

.fh-shop-card p,
.fh-shop-step p {
    margin:0;
    color:#aeb8c2;
    line-height:1.7;
}

.fh-shop-process {
    padding:40px 0 105px;
}

.fh-shop-steps {
    margin-top:40px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}

.fh-shop-step {
    display:flex;
    gap:22px;
    padding:26px;
    border-radius:16px;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.08);
}

.fh-shop-step > strong {
    flex:0 0 45px;
    color:#00d9ff;
    font-size:14px;
}

.fh-shop-form-wrap {
    padding:80px 0 100px;
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:55px;
    align-items:start;
}

.fh-shop-form-card {
    padding:35px;
    border-radius:20px;
    background:#fff;
    color:#111;
    box-shadow:0 30px 80px rgba(0,0,0,.3);
}

.fh-shop-form-title {
    margin-bottom:25px;
    color:#111;
    font-size:24px;
    font-weight:800;
}

.fh-shop-form-card label {
    color:#222;
    font-weight:600;
}

.fh-shop-form-card input,
.fh-shop-form-card textarea,
.fh-shop-form-card select {
    width:100%;
    margin-top:7px;
    padding:12px 14px;
    border:1px solid #d8dde2;
    border-radius:8px;
    background:#fff;
    color:#111;
}

.fh-shop-form-card textarea {
    min-height:130px;
}

.fh-shop-form-card input[type="submit"],
.fh-shop-form-card button[type="submit"] {
    width:auto;
    padding:13px 24px;
    border:0;
    border-radius:8px;
    background:#00bcd4;
    color:#001015;
    font-weight:800;
    cursor:pointer;
}

.fh-shop-final-cta {
    margin-top:20px;
    padding:100px 20px 120px;
    text-align:center;
    background:
        linear-gradient(rgba(0,217,255,.04),rgba(0,217,255,.01)),
        #080c10;
    border-top:1px solid rgba(255,255,255,.07);
}

.fh-shop-final-cta > p {
    margin:0 auto 30px;
}

@media(max-width:850px) {
    .fh-shop-hero {
        padding:95px 0 75px;
    }

    .fh-shop-services {
        grid-template-columns:repeat(2,1fr);
    }

    .fh-shop-form-wrap {
        grid-template-columns:1fr;
        gap:35px;
    }
}

@media(max-width:600px) {
    .fh-shop-hero,
    .fh-shop-intro,
    .fh-shop-process,
    .fh-shop-form-wrap {
        width:min(100% - 28px,1120px);
    }

    .fh-shop-hero {
        padding:80px 0 65px;
    }

    .fh-shop-hero h1 {
        font-size:46px;
        letter-spacing:-2px;
    }

    .fh-shop-lead {
        font-size:16px;
    }

    .fh-shop-services,
    .fh-shop-steps {
        width:calc(100% - 28px);
        grid-template-columns:1fr;
        margin-left:auto;
        margin-right:auto;
    }

    .fh-shop-card {
        min-height:0;
    }

    .fh-shop-form-card {
        padding:22px;
    }

    .fh-shop-intro h2,
    .fh-shop-process h2,
    .fh-shop-form-intro h2,
    .fh-shop-final-cta h2 {
        font-size:36px;
    }
}

/* =========================================================
   ONLINE-SHOP – FULL WIDTH FIX
   ========================================================= */

body.page-id-678 .fh-shop-premium {
    width:100vw!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
}

/* WordPress-Constrained-Container aufbrechen */
body.page-id-678 .wp-block-post-content > .fh-shop-premium,
body.page-id-678 .entry-content > .fh-shop-premium,
body.page-id-678 .is-layout-constrained > .fh-shop-premium {
    width:100vw!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
}

/* Hero wirklich über die komplette Breite */
body.page-id-678 .fh-shop-hero {
    width:min(1180px,calc(100% - 40px))!important;
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

/* Alle Hauptbereiche sauber zentrieren */
body.page-id-678 .fh-shop-intro,
body.page-id-678 .fh-shop-services,
body.page-id-678 .fh-shop-process,
body.page-id-678 .fh-shop-form-wrap {
    margin-left:auto!important;
    margin-right:auto!important;
}

/* Footer CTA über gesamte Breite */
body.page-id-678 .fh-shop-final-cta {
    width:100%!important;
}

