/* Community-branded Contact, Shipping, Imprint and Privacy pages. */
body.sk-service-page .site-header,
body.sk-service-page .site-footer,
body.sk-service-page footer.site-footer,
body.sk-service-page .ast-footer-overlay,
body.sk-service-page .site-below-footer-wrap,
body.sk-service-page .entry-header {
    display:none!important;
}

body.sk-service-page .site-content,
body.sk-service-page .site-content > .ast-container,
body.sk-service-page .content-area,
body.sk-service-page #primary,
body.sk-service-page .site-main {
    float:none!important;
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
}

body.sk-service-page .site-content > .ast-container {
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
}

.sk-service-shell {
    display:block;
    width:100%;
    min-width:0;
    min-height:100vh;
    background:#f6f8fb;
    color:#17263d;
}

.sk-service-container {
    width:calc(100% - 72px);
    max-width:1220px;
    margin:0 auto;
}

.sk-service-header {
    background:#fff;
    border-top:5px solid var(--secondary);
    border-bottom:1px solid #e4e9ef;
}

.sk-service-header__inner {
    min-height:86px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.sk-service-brand {
    display:flex;
    align-items:center;
    gap:14px;
    color:#17263d;
    text-decoration:none;
}

.sk-service-brand:hover { color:#17263d; }

.sk-service-brand__logo {
    width:48px;
    height:48px;
    object-fit:contain;
}

.sk-service-brand span { display:flex; flex-direction:column; }
.sk-service-brand strong { font-size:20px; font-weight:900; letter-spacing:-.025em; }
.sk-service-brand small { margin-top:2px; color:#697789; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }

.sk-service-back {
    color:#455468;
    font-size:14px;
    font-weight:800;
    text-decoration:none;
}

.sk-service-back:hover { color:var(--primary); }

.sk-service-hero {
    position:relative;
    overflow:hidden;
    padding:78px 0 72px;
    color:var(--on-primary);
    background:var(--primary);
}

.sk-service-hero::after {
    content:"";
    position:absolute;
    right:-80px;
    bottom:-150px;
    width:390px;
    height:390px;
    border:70px solid var(--secondary);
    border-radius:50%;
    opacity:.24;
}

.sk-service-kicker {
    display:inline-flex;
    margin-bottom:16px;
    padding:7px 12px;
    border-radius:999px;
    color:var(--on-secondary);
    background:var(--secondary);
    font-size:12px;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.sk-service-hero h1 {
    position:relative;
    z-index:1;
    max-width:820px;
    margin:0;
    color:var(--on-primary);
    font-size:clamp(42px, 6vw, 72px);
    line-height:1;
    letter-spacing:-.055em;
}

.sk-service-content { padding:64px 0 84px; }

.sk-service-intro {
    max-width:860px;
    margin-bottom:38px;
    font-size:21px;
    line-height:1.65;
}

.sk-service-intro p { margin:0; }

.sk-service-grid {
    display:grid;
    gap:22px;
}

.sk-service-grid--two { grid-template-columns:repeat(2, minmax(0, 1fr)); }
.sk-service-grid--legal { grid-template-columns:repeat(2, minmax(0, 1fr)); }

.sk-service-card,
.sk-service-legal-copy section,
.sk-service-editor-content {
    border:1px solid #e3e8ee;
    border-radius:22px;
    background:#fff;
    box-shadow:0 12px 34px rgba(23,38,61,.06);
}

.sk-service-card { padding:30px; }
.sk-service-card--wide { grid-column:1 / -1; }
.sk-service-card--accent { border-top:5px solid var(--secondary); }
.sk-service-card__eyebrow { color:var(--primary); font-size:11px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }

.sk-service-card h2,
.sk-service-legal-copy h2,
.sk-service-editor-content h2 {
    margin:10px 0 12px;
    color:#17263d;
    font-size:24px;
    line-height:1.2;
    letter-spacing:-.025em;
}

.sk-service-card p,
.sk-service-legal-copy p,
.sk-service-editor-content p,
.sk-service-card address {
    margin:0 0 12px;
    color:#506074;
    font-style:normal;
    line-height:1.7;
}

.sk-service-card p:last-child,
.sk-service-legal-copy p:last-child,
.sk-service-editor-content p:last-child { margin-bottom:0; }

.sk-service-main a { color:var(--primary); }
.sk-service-contact-link { font-size:clamp(18px, 2.1vw, 25px); font-weight:900; overflow-wrap:anywhere; }

.sk-service-steps {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
    margin-bottom:24px;
}

.sk-service-steps article {
    display:flex;
    gap:16px;
    padding:26px;
    border-radius:20px;
    background:var(--primary);
    color:var(--on-primary);
}

.sk-service-steps b {
    display:grid;
    place-items:center;
    flex:0 0 38px;
    height:38px;
    border-radius:50%;
    color:var(--on-secondary);
    background:var(--secondary);
}

.sk-service-steps h2 { margin:2px 0 8px; color:var(--on-primary); font-size:20px; }
.sk-service-steps p { margin:0; opacity:.8; line-height:1.55; }

.sk-service-legal-copy {
    display:grid;
    gap:18px;
}

.sk-service-legal-copy section,
.sk-service-editor-content { padding:30px; }
.sk-service-legal-copy h2 { margin-top:0; }
.sk-service-editor-content { margin-top:24px; }

.sk-service-admin-note {
    margin-bottom:24px;
    padding:18px 20px;
    border-left:5px solid #d63638;
    border-radius:8px;
    background:#fff;
    box-shadow:0 8px 24px rgba(23,38,61,.06);
}

.sk-service-platform-footer {
    padding:34px 0;
    color:var(--on-primary);
    background:var(--primary);
}

.sk-service-platform-footer .sk-service-container {
    display:flex;
    justify-content:space-between;
    gap:28px;
}

.sk-service-platform-footer nav { display:flex; flex-wrap:wrap; gap:20px; }
.sk-service-platform-footer a { color:var(--on-primary); text-decoration:none; }

@media(max-width:900px) {
    .sk-service-container { width:calc(100% - 48px); }
    .sk-service-grid--two,
    .sk-service-grid--legal,
    .sk-service-steps { grid-template-columns:1fr; }
    .sk-service-card--wide { grid-column:auto; }
}

@media(max-width:600px) {
    .sk-service-container { width:calc(100% - 32px); }
    .sk-service-header__inner { min-height:72px; }
    .sk-service-brand strong { font-size:17px; }
    .sk-service-brand__logo { width:40px; height:40px; }
    .sk-service-back { font-size:0; }
    .sk-service-back::after { content:"← Zurück"; font-size:13px; }
    .sk-service-hero { padding:54px 0 52px; }
    .sk-service-content { padding:42px 0 60px; }
    .sk-service-intro { font-size:18px; }
    .sk-service-card,
    .sk-service-legal-copy section,
    .sk-service-editor-content { padding:24px; }
    .sk-service-platform-footer .sk-service-container { flex-direction:column; }
}
