@layer sop.templates {
  .sop-page-hero {
    padding-block: clamp(4.5rem, 8vw, 8rem) var(--sop-space-7);
    background:
      radial-gradient(circle at 80% 0%, rgb(208 171 117 / 11%), transparent 30%),
      linear-gradient(180deg, var(--sop-ink-soft), var(--sop-ink));
  }

  .sop-page-hero__inner {
    display: grid;
    max-width: 54rem;
    gap: var(--sop-space-4);
  }

  .sop-page-hero p { max-width: 44rem; font-size: clamp(1.05rem, 1.7vw, 1.2rem); }

  .sop-entry { padding-block: var(--sop-space-8); }

  .sop-entry--page .entry-content > * + *,
  .sop-article__content > * + * { margin-top: var(--sop-space-4); }

  .sop-entry--page .entry-content h2,
  .sop-article__content h2 { margin-top: var(--sop-space-7); }

  .sop-entry--page .entry-content h3,
  .sop-article__content h3 { margin-top: var(--sop-space-6); }

  .sop-entry--page .entry-content figure,
  .sop-article__content figure { margin-block: var(--sop-space-6); }

  .sop-entry--page .entry-content figcaption,
  .sop-article__content figcaption {
    margin-top: 0.75rem;
    color: var(--sop-copy-subtle);
    font-size: 0.9rem;
  }

  .sop-entry--page .entry-content a,
  .sop-article__content a { color: var(--sop-gold); }

  .sop-blog-hero {
    padding-block: clamp(4.5rem, 8vw, 8rem) var(--sop-space-6);
    background:
      radial-gradient(circle at 88% 10%, rgb(208 171 117 / 11%), transparent 28%),
      linear-gradient(180deg, var(--sop-ink-soft), var(--sop-ink));
  }

  .sop-blog-hero__inner { display: grid; max-width: 52rem; gap: var(--sop-space-4); }
  .sop-blog-hero__inner p { max-width: 44rem; font-size: 1.1rem; }

  .sop-category-nav {
    display: flex;
    flex-wrap: wrap;
    margin-block: var(--sop-space-5) var(--sop-space-6);
    gap: 0.6rem;
  }

  .sop-category-nav a {
    display: inline-flex;
    padding: 0.5rem 0.76rem;
    border: 1px solid var(--sop-line);
    border-radius: 999px;
    color: var(--sop-copy);
    font-size: 0.83rem;
    font-weight: 700;
    text-decoration: none;
  }

  .sop-category-nav a:hover,
  .sop-category-nav .is-active {
    border-color: rgb(208 171 117 / 58%);
    background: rgb(208 171 117 / 8%);
    color: var(--sop-gold);
  }

  .sop-featured-post {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
    overflow: hidden;
    margin-bottom: var(--sop-space-7);
    border: 1px solid var(--sop-line);
    border-radius: var(--sop-radius-lg);
    background: linear-gradient(145deg, var(--sop-surface-raised), var(--sop-surface));
  }

  .sop-featured-post__image {
    min-height: 21rem;
    background: var(--sop-navy-deep);
  }

  .sop-featured-post__image img { width: 100%; height: 100%; object-fit: cover; }

  .sop-featured-post__body {
    display: grid;
    align-content: center;
    gap: var(--sop-space-3);
    padding: clamp(1.75rem, 4vw, 3.25rem);
  }

  .sop-featured-post__title { font-size: clamp(1.8rem, 3.4vw, 2.8rem); }
  .sop-featured-post__title a { color: #fff; text-decoration: none; }
  .sop-featured-post__title a:hover { color: var(--sop-gold); }

  .sop-post-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--sop-space-4);
  }

  .sop-post-card {
    display: grid;
    overflow: hidden;
    border: 1px solid var(--sop-line);
    border-radius: var(--sop-radius);
    background: var(--sop-surface);
    transition: transform var(--sop-transition), border-color var(--sop-transition), box-shadow var(--sop-transition);
  }

  .sop-post-card:hover {
    border-color: rgb(208 171 117 / 34%);
    box-shadow: var(--sop-shadow-sm);
    transform: translateY(-2px);
  }

  .sop-post-card__image {
    display: block;
    min-height: 12.5rem;
    background: var(--sop-navy-deep);
  }

  .sop-post-card__image img { width: 100%; height: 100%; object-fit: cover; }

  .sop-post-card__body {
    display: grid;
    gap: 0.85rem;
    padding: var(--sop-space-4);
  }

  .sop-post-card__title { font-size: clamp(1.28rem, 2vw, 1.6rem); }
  .sop-post-card__title a { color: #fff; text-decoration: none; }
  .sop-post-card__title a:hover { color: var(--sop-gold); }
  .sop-post-card__excerpt { font-size: 0.96rem; }
  .sop-post-card__link { color: var(--sop-gold); font-weight: 700; text-decoration: none; }

  .sop-pagination { margin-top: var(--sop-space-7); }
  .sop-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 0.45rem; }
  .sop-pagination a,
  .sop-pagination .current {
    display: inline-grid;
    min-width: 2.65rem;
    min-height: 2.65rem;
    padding: 0.45rem;
    place-items: center;
    border: 1px solid var(--sop-line);
    border-radius: 999px;
    color: #fff;
    text-decoration: none;
  }
  .sop-pagination .current,
  .sop-pagination a:hover { border-color: var(--sop-gold); background: rgb(208 171 117 / 12%); color: var(--sop-gold); }

  .sop-article-hero {
    padding-block: clamp(4.5rem, 8vw, 7.5rem) var(--sop-space-6);
    background:
      radial-gradient(circle at 74% 0%, rgb(208 171 117 / 12%), transparent 30%),
      linear-gradient(180deg, var(--sop-ink-soft), var(--sop-ink));
  }

  .sop-article-hero__inner { display: grid; width: var(--sop-reading); gap: var(--sop-space-4); }
  .sop-article-hero__title { font-size: clamp(2.45rem, 5vw, 4rem); }
  .sop-article-hero__deck { font-size: clamp(1.08rem, 1.8vw, 1.24rem); }

  .sop-post-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    color: var(--sop-copy-subtle);
  }

  .sop-post-meta a { color: var(--sop-gold); text-decoration: none; }

  .sop-article__featured-image {
    width: var(--sop-content);
    margin: 0 auto var(--sop-space-7);
    overflow: hidden;
    border: 1px solid var(--sop-line);
    border-radius: var(--sop-radius-lg);
    background: var(--sop-surface);
  }

  .sop-article__featured-image img { width: 100%; max-height: 42rem; object-fit: cover; }

  .sop-article__content { width: var(--sop-reading); margin-inline: auto; }
  .sop-article__content > p { font-size: 1.06rem; }

  .sop-related { margin-top: var(--sop-space-8); }
  .sop-related__title { margin-bottom: var(--sop-space-5); }

  .sop-empty-state {
    padding: var(--sop-space-6);
    border: 1px solid var(--sop-line);
    border-radius: var(--sop-radius);
    background: var(--sop-surface);
  }

  .sop-search-form {
    display: flex;
    margin-top: var(--sop-space-5);
    gap: 0.75rem;
  }

  .sop-search-form input { flex: 1; }
  .sop-search-form button { flex: 0 0 auto; }

  @media (max-width: 1024px) {
    .sop-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }

  @media (max-width: 767px) {
    .sop-featured-post { grid-template-columns: 1fr; }
    .sop-featured-post__image { min-height: 14rem; }
    .sop-post-grid { grid-template-columns: 1fr; }
    .sop-search-form { display: grid; }
    .sop-search-form button { width: 100%; }
  }
}


/*
 * Traumkunden.ai-Ökosystem-Ebene
 * Gilt ausschließlich für die PHP-Templates des globalen SOP-Themes.
 * Die Elementor-Canvas-Landingpage (Seite 7) bleibt bewusst ausgenommen.
 */
body.sop-site:not(.page-sop) {
  background: #090d17;
}

body.sop-site:not(.page-sop)::before {
  position: fixed;
  z-index: 0;
  inset: 0;
  pointer-events: none;
  content: "";
  background-image:
    radial-gradient(circle at 12% 8%, var(--sop-glow-gold), transparent 23rem),
    radial-gradient(circle at 91% 38%, var(--sop-glow-teal), transparent 29rem),
    linear-gradient(var(--sop-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--sop-grid-line) 1px, transparent 1px);
  background-position: center, center, center, center;
  background-size: auto, auto, 4.5rem 4.5rem, 4.5rem 4.5rem;
  mask-image: linear-gradient(to bottom, #000 0, #000 72%, transparent 100%);
}

body.sop-site:not(.page-sop) .sop-site-header,
body.sop-site:not(.page-sop) .sop-site-main,
body.sop-site:not(.page-sop) .sop-site-footer {
  position: relative;
  z-index: 1;
}

body.sop-site:not(.page-sop) .sop-site-header {
  border-bottom-color: var(--sop-line-soft);
  background: rgb(7 10 17 / 82%);
  box-shadow: 0 1px 0 rgb(255 255 255 / 3%), 0 14px 32px rgb(0 0 0 / 12%);
}

body.sop-site:not(.page-sop) .sop-brand__mark {
  border-color: rgb(208 171 117 / 62%);
  background:
    linear-gradient(145deg, rgb(208 171 117 / 22%), rgb(208 171 117 / 5%)),
    #101827;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 11%), 0 0 22px rgb(208 171 117 / 10%);
}

body.sop-site:not(.page-sop) .sop-nav .menu a {
  position: relative;
  padding-block: 0.38rem;
  letter-spacing: 0.01em;
}

body.sop-site:not(.page-sop) .sop-nav .menu a::after {
  position: absolute;
  right: 0.08rem;
  bottom: -0.03rem;
  left: 0.08rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--sop-gold), transparent);
  content: "";
  opacity: 0;
  transform: scaleX(0.55);
  transition: opacity var(--sop-transition), transform var(--sop-transition);
}

body.sop-site:not(.page-sop) .sop-nav .menu a:hover::after,
body.sop-site:not(.page-sop) .sop-nav .current-menu-item > a::after {
  opacity: 1;
  transform: scaleX(1);
}

body.sop-site:not(.page-sop) .sop-nav-toggle {
  border-color: rgb(208 171 117 / 42%);
  background: linear-gradient(145deg, rgb(23 30 44 / 96%), rgb(10 14 23 / 96%));
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 6%);
}

body.sop-site:not(.page-sop) .sop-button,
body.sop-site:not(.page-sop) .wp-block-button__link,
body.sop-site:not(.page-sop) input[type="submit"],
body.sop-site:not(.page-sop) button[type="submit"] {
  border-color: rgb(244 240 232 / 42%);
  background: linear-gradient(135deg, #e4c98f 0%, var(--sop-gold) 56%, #b58751 100%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 38%), 0 11px 30px rgb(208 171 117 / 18%);
}

body.sop-site:not(.page-sop) .sop-button:hover,
body.sop-site:not(.page-sop) .wp-block-button__link:hover,
body.sop-site:not(.page-sop) input[type="submit"]:hover,
body.sop-site:not(.page-sop) button[type="submit"]:hover {
  background: linear-gradient(135deg, #f0d9a5 0%, var(--sop-gold-hover) 56%, #c99d64 100%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 46%), 0 15px 34px rgb(208 171 117 / 26%);
}

body.sop-site:not(.page-sop) .sop-button--ghost {
  border-color: rgb(208 171 117 / 38%);
  background: rgb(13 20 32 / 58%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 6%);
}

body.sop-site:not(.page-sop) .sop-button--ghost:hover {
  border-color: rgb(208 171 117 / 66%);
  background: rgb(208 171 117 / 10%);
}

body.sop-site:not(.page-sop) .sop-preheadline {
  border-color: rgb(208 171 117 / 48%);
  background: linear-gradient(135deg, rgb(208 171 117 / 16%), rgb(208 171 117 / 5%));
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 7%), 0 0 20px rgb(208 171 117 / 7%);
}

body.sop-site:not(.page-sop) .sop-page-hero,
body.sop-site:not(.page-sop) .sop-blog-hero,
body.sop-site:not(.page-sop) .sop-article-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-bottom: 1px solid var(--sop-line-soft);
  background:
    radial-gradient(circle at 7% 5%, rgb(208 171 117 / 17%), transparent 23rem),
    radial-gradient(circle at 88% 72%, rgb(53 215 223 / 12%), transparent 28rem),
    linear-gradient(135deg, #0a0f19 0%, #0e1627 56%, #0b111e 100%);
}

body.sop-site:not(.page-sop) .sop-page-hero::before,
body.sop-site:not(.page-sop) .sop-blog-hero::before,
body.sop-site:not(.page-sop) .sop-article-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image:
    linear-gradient(var(--sop-grid-line-strong) 1px, transparent 1px),
    linear-gradient(90deg, var(--sop-grid-line-strong) 1px, transparent 1px);
  background-size: 4.5rem 4.5rem;
  content: "";
  mask-image: linear-gradient(105deg, #000 0%, rgb(0 0 0 / 45%) 64%, transparent 100%);
}

body.sop-site:not(.page-sop) .sop-page-hero__inner,
body.sop-site:not(.page-sop) .sop-blog-hero__inner,
body.sop-site:not(.page-sop) .sop-article-hero__inner {
  position: relative;
}

body.sop-site:not(.page-sop) .sop-page-hero h1,
body.sop-site:not(.page-sop) .sop-blog-hero h1,
body.sop-site:not(.page-sop) .sop-article-hero h1 {
  max-width: 18ch;
  text-wrap: balance;
}

body.sop-site:not(.page-sop) .sop-page-hero p,
body.sop-site:not(.page-sop) .sop-blog-hero p,
body.sop-site:not(.page-sop) .sop-article-hero p {
  color: var(--sop-copy);
}

body.sop-site:not(.page-sop) .sop-featured-post,
body.sop-site:not(.page-sop) .sop-post-card,
body.sop-site:not(.page-sop) .sop-card,
body.sop-site:not(.page-sop) .sop-empty-state,
body.sop-site:not(.page-sop) .sop-author-box,
body.sop-site:not(.page-sop) .sop-toc {
  position: relative;
  border-color: rgb(255 255 255 / 11%);
  background: linear-gradient(145deg, rgb(24 32 48 / 96%), rgb(12 18 30 / 97%));
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 5%), var(--sop-shadow-sm);
}

body.sop-site:not(.page-sop) .sop-featured-post::before,
body.sop-site:not(.page-sop) .sop-post-card::before,
body.sop-site:not(.page-sop) .sop-empty-state::before,
body.sop-site:not(.page-sop) .sop-author-box::before,
body.sop-site:not(.page-sop) .sop-toc::before {
  position: absolute;
  top: 0;
  right: 1.35rem;
  left: 1.35rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgb(208 171 117 / 48%), transparent);
  content: "";
  opacity: 0.8;
}

body.sop-site:not(.page-sop) .sop-post-card {
  transition: transform var(--sop-transition), border-color var(--sop-transition), box-shadow var(--sop-transition), background var(--sop-transition);
}

body.sop-site:not(.page-sop) .sop-post-card:hover {
  border-color: rgb(53 215 223 / 34%);
  background: linear-gradient(145deg, rgb(25 37 56 / 98%), rgb(12 22 35 / 98%));
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 8%), var(--sop-shadow-lift), 0 0 0 1px rgb(53 215 223 / 5%);
  transform: translateY(-4px);
}

body.sop-site:not(.page-sop) .sop-featured-post {
  border-color: rgb(208 171 117 / 28%);
  background:
    radial-gradient(circle at 92% 8%, rgb(53 215 223 / 11%), transparent 18rem),
    linear-gradient(145deg, rgb(27 34 50 / 98%), rgb(11 17 29 / 98%));
}

body.sop-site:not(.page-sop) .sop-cta-panel {
  position: relative;
  overflow: hidden;
  border-color: rgb(208 171 117 / 38%);
  background:
    radial-gradient(circle at 84% 18%, rgb(53 215 223 / 16%), transparent 19rem),
    radial-gradient(circle at 6% 0%, rgb(208 171 117 / 17%), transparent 20rem),
    linear-gradient(135deg, #172238, #0b111d 58%, #101b2e);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 7%), var(--sop-shadow-lg);
}

body.sop-site:not(.page-sop) .sop-cta-panel::after {
  position: absolute;
  inset: 0;
  border: 1px solid rgb(255 255 255 / 4%);
  border-radius: inherit;
  content: "";
  pointer-events: none;
}

body.sop-site:not(.page-sop) .sop-site-footer {
  border-top-color: var(--sop-line-strong);
  background:
    linear-gradient(var(--sop-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--sop-grid-line) 1px, transparent 1px),
    linear-gradient(180deg, #080c14, #05070c);
  background-size: 4.5rem 4.5rem, 4.5rem 4.5rem, auto;
}

@media (max-width: 767px) {
  body.sop-site:not(.page-sop)::before {
    background-size: auto, auto, 3.2rem 3.2rem, 3.2rem 3.2rem;
  }

  body.sop-site:not(.page-sop) .sop-page-hero::before,
  body.sop-site:not(.page-sop) .sop-blog-hero::before,
  body.sop-site:not(.page-sop) .sop-article-hero::before {
    background-size: 3.2rem 3.2rem;
  }

  body.sop-site:not(.page-sop) .sop-site-header.is-open .sop-nav {
    border-bottom-color: rgb(208 171 117 / 28%);
    background: linear-gradient(180deg, #0c1423, #090d17);
    box-shadow: 0 16px 28px rgb(0 0 0 / 26%);
  }

  body.sop-site:not(.page-sop) .sop-post-card:hover {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.sop-site:not(.page-sop) .sop-nav .menu a::after,
  body.sop-site:not(.page-sop) .sop-post-card {
    transition: none;
  }
}


/* Elementor-Farbbrücke für globale Theme-Komponenten */
body.sop-site:not(.page-sop) .sop-button,
body.sop-site:not(.page-sop) .wp-block-button__link,
body.sop-site:not(.page-sop) input[type="submit"],
body.sop-site:not(.page-sop) button[type="submit"] {
  color: var(--sop-ink) !important;
}

body.sop-site:not(.page-sop) .sop-button--ghost {
  color: var(--sop-cream) !important;
}

body.sop-site:not(.page-sop) .sop-site-footer a,
body.sop-site:not(.page-sop) .sop-toc a {
  color: var(--sop-copy) !important;
}

body.sop-site:not(.page-sop) .sop-site-footer a:hover,
body.sop-site:not(.page-sop) .sop-toc a:hover {
  color: var(--sop-gold) !important;
}


body.sop-site:not(.page-sop) .sop-category-nav a {
  color: var(--sop-copy) !important;
}

body.sop-site:not(.page-sop) .sop-category-nav a:hover,
body.sop-site:not(.page-sop) .sop-category-nav .is-active {
  color: var(--sop-gold) !important;
}


/* WordPress-Menü- und Seiten-Fallback konsistent ausrichten */
body.sop-site:not(.page-sop) .sop-nav > .menu,
body.sop-site:not(.page-sop) .sop-nav > .menu > ul {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  gap: clamp(0.9rem, 2vw, 1.6rem);
  list-style: none;
}

body.sop-site:not(.page-sop) .sop-nav > .menu > ul {
  flex-wrap: wrap;
}

body.sop-site:not(.page-sop) .sop-nav .menu li,
body.sop-site:not(.page-sop) .sop-nav .menu > ul li {
  margin: 0;
  padding: 0;
}

@media (max-width: 767px) {
  body.sop-site:not(.page-sop) .sop-site-header.is-open .sop-nav > .menu,
  body.sop-site:not(.page-sop) .sop-site-header.is-open .sop-nav > .menu > ul {
    display: grid;
    gap: 1rem;
  }
}


/* Elementor-first global chrome: stable IDs are assigned in the EMCP Themer templates. */
body.sop-site:not(.page-sop) #sop-elementor-header{position:sticky;z-index:var(--sop-z-header);top:0;width:100%;border-bottom:1px solid var(--sop-line-soft);background:rgb(7 10 17 / 88%);box-shadow:0 1px 0 rgb(255 255 255 / 3%),0 14px 32px rgb(0 0 0 / 14%);backdrop-filter:blur(18px)}
body.sop-site:not(.page-sop) #sop-elementor-header-inner{width:min(var(--sop-content),calc(100% - 2rem));min-height:var(--sop-header-height);margin-inline:auto}
body.sop-site:not(.page-sop) #sop-elementor-header .elementor-widget-shortcode,body.sop-site:not(.page-sop) #sop-elementor-header .elementor-widget-button,body.sop-site:not(.page-sop) #sop-elementor-footer .elementor-widget-shortcode,body.sop-site:not(.page-sop) #sop-elementor-footer .elementor-widget-button,body.sop-site:not(.page-sop) #sop-elementor-footer .elementor-widget-text-editor,body.sop-site:not(.page-sop) #sop-elementor-footer .elementor-widget-heading{margin:0}
body.sop-site:not(.page-sop) .sop-elementor-site-identity,body.sop-site:not(.page-sop) .sop-elementor-brand,body.sop-site:not(.page-sop) .sop-elementor-brand .custom-logo-link{display:inline-flex;align-items:center}
body.sop-site:not(.page-sop) .sop-elementor-brand{gap:.65rem;color:var(--sop-cream);font-family:var(--sop-font);font-size:.98rem;font-weight:700;letter-spacing:-.02em;text-decoration:none}
body.sop-site:not(.page-sop) .sop-elementor-brand__mark{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid rgb(208 171 117 / 62%);border-radius:.55rem;background:linear-gradient(145deg,rgb(208 171 117 / 22%),rgb(208 171 117 / 5%)),#101827;box-shadow:inset 0 1px 0 rgb(255 255 255 / 11%),0 0 22px rgb(208 171 117 / 10%);color:var(--sop-gold);font-size:.78rem;letter-spacing:.04em}
body.sop-site:not(.page-sop) .sop-elementor-brand--logo .custom-logo{width:auto;max-height:2.25rem}
body.sop-site:not(.page-sop) #sop-elementor-primary-navigation .sop-elementor-menu{display:flex;margin:0;padding:0;gap:clamp(.9rem,2vw,1.6rem);list-style:none}
body.sop-site:not(.page-sop) #sop-elementor-primary-navigation a{position:relative;display:inline-block;padding-block:.38rem;color:var(--sop-copy);font-family:var(--sop-font);font-size:.94rem;font-weight:600;letter-spacing:.01em;text-decoration:none}
body.sop-site:not(.page-sop) #sop-elementor-primary-navigation a::after{position:absolute;right:.08rem;bottom:-.03rem;left:.08rem;height:1px;background:linear-gradient(90deg,transparent,var(--sop-gold),transparent);content:"";opacity:0;transform:scaleX(.55);transition:opacity var(--sop-transition),transform var(--sop-transition)}
body.sop-site:not(.page-sop) #sop-elementor-primary-navigation a:hover,body.sop-site:not(.page-sop) #sop-elementor-primary-navigation .current-menu-item>a{color:var(--sop-cream)}
body.sop-site:not(.page-sop) #sop-elementor-primary-navigation a:hover::after,body.sop-site:not(.page-sop) #sop-elementor-primary-navigation .current-menu-item>a::after{opacity:1;transform:scaleX(1)}
body.sop-site:not(.page-sop) #sop-elementor-header .elementor-button,body.sop-site:not(.page-sop) #sop-elementor-footer .elementor-button{border:1px solid rgb(244 240 232 / 42%);border-radius:var(--sop-radius-sm);background:linear-gradient(135deg,#e4c98f 0%,var(--sop-gold) 56%,#b58751 100%);box-shadow:inset 0 1px 0 rgb(255 255 255 / 38%),0 11px 30px rgb(208 171 117 / 18%);color:var(--sop-ink)!important;font-family:var(--sop-font);font-weight:700}
body.sop-site:not(.page-sop) #sop-elementor-nav-toggle{display:none;width:2.75rem;min-width:2.75rem;height:2.75rem;place-items:center;border:1px solid rgb(208 171 117 / 42%);border-radius:var(--sop-radius-sm);background:linear-gradient(145deg,rgb(23 30 44 / 96%),rgb(10 14 23 / 96%));box-shadow:inset 0 1px 0 rgb(255 255 255 / 6%);color:var(--sop-cream);font-size:1rem}
body.sop-site:not(.page-sop) #sop-elementor-footer{position:relative;z-index:1;padding-block:var(--sop-space-7) var(--sop-space-5);border-top:1px solid var(--sop-line);background:#06080c}
body.sop-site:not(.page-sop) #sop-elementor-footer-grid,body.sop-site:not(.page-sop) #sop-elementor-footer-bottom{width:min(var(--sop-content),calc(100% - 2rem));margin-inline:auto}
body.sop-site:not(.page-sop) #sop-elementor-footer-grid{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,.75fr));gap:var(--sop-space-6)}
body.sop-site:not(.page-sop) #sop-elementor-footer h3{margin:0;color:var(--sop-cream);font-family:var(--sop-font);font-size:.9rem;font-weight:700}
body.sop-site:not(.page-sop) #sop-elementor-footer p,body.sop-site:not(.page-sop) #sop-elementor-footer li,body.sop-site:not(.page-sop) #sop-elementor-footer .sop-elementor-copyright{color:var(--sop-copy);font-family:var(--sop-font)}
body.sop-site:not(.page-sop) #sop-elementor-footer p{margin:0}
body.sop-site:not(.page-sop) #sop-elementor-footer .sop-elementor-link-list,body.sop-site:not(.page-sop) #sop-elementor-footer .sop-elementor-menu{display:grid;margin:0;padding:0;gap:.55rem;list-style:none}
body.sop-site:not(.page-sop) #sop-elementor-footer a{color:var(--sop-copy);text-decoration:none}body.sop-site:not(.page-sop) #sop-elementor-footer a:hover{color:var(--sop-gold)}
body.sop-site:not(.page-sop) #sop-elementor-footer-bottom{display:flex;margin-top:var(--sop-space-6);padding-top:var(--sop-space-4);border-top:1px solid var(--sop-line-soft);justify-content:space-between;gap:var(--sop-space-3);color:var(--sop-copy-subtle);font-size:.85rem}
@media(max-width:767px){body.sop-site:not(.page-sop) #sop-elementor-header-inner{width:min(var(--sop-content),calc(100% - 1.5rem));min-height:4.35rem}body.sop-site:not(.page-sop) #sop-elementor-header .elementor-widget-button{display:none}body.sop-site:not(.page-sop) #sop-elementor-nav-toggle{display:inline-grid}body.sop-site:not(.page-sop) #sop-elementor-primary-navigation{position:absolute;top:100%;right:0;left:0;display:none;padding:var(--sop-space-4) max(.75rem,calc((100% - var(--sop-content)) / 2));border-bottom:1px solid var(--sop-line);background:#090b10;box-shadow:0 18px 36px rgb(0 0 0 / 22%)}body.sop-site.sop-elementor-nav-open:not(.page-sop) #sop-elementor-primary-navigation{display:block}body.sop-site:not(.page-sop) #sop-elementor-primary-navigation .sop-elementor-menu{display:grid;gap:1rem}body.sop-site:not(.page-sop) #sop-elementor-footer-grid{grid-template-columns:1fr;gap:var(--sop-space-5)}body.sop-site:not(.page-sop) #sop-elementor-footer-bottom{display:grid}}


/* Stable semantic shells rendered by the global Elementor Themer shortcodes. */
body.sop-site:not(.page-sop) #sop-elementor-header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sop-space-4)}
body.sop-site:not(.page-sop) #sop-elementor-primary-navigation{display:flex;flex:1;justify-content:center}
body.sop-site:not(.page-sop) .sop-elementor-header-cta,body.sop-site:not(.page-sop) .sop-elementor-footer-cta{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:2.75rem;padding:.68rem 1rem;border:1px solid rgb(244 240 232 / 42%);border-radius:var(--sop-radius-sm);background:linear-gradient(135deg,#e4c98f 0%,var(--sop-gold) 56%,#b58751 100%);box-shadow:inset 0 1px 0 rgb(255 255 255 / 38%),0 11px 30px rgb(208 171 117 / 18%);color:var(--sop-ink)!important;font-family:var(--sop-font);font-size:.88rem;font-weight:700;line-height:1;text-decoration:none}
body.sop-site:not(.page-sop) .sop-elementor-header-cta:hover,body.sop-site:not(.page-sop) .sop-elementor-footer-cta:hover{background:linear-gradient(135deg,#f0d9a8 0%,#d8b97f 56%,#c28d55 100%);color:var(--sop-ink)!important;transform:translateY(-1px)}
body.sop-site:not(.page-sop) #sop-elementor-footer-brand{display:grid;align-content:start;gap:var(--sop-space-3)}
@media(max-width:767px){body.sop-site:not(.page-sop) #sop-elementor-header-inner{gap:.75rem}body.sop-site:not(.page-sop) #sop-elementor-primary-navigation{display:none}body.sop-site.sop-elementor-nav-open:not(.page-sop) #sop-elementor-primary-navigation{display:block}body.sop-site:not(.page-sop) .sop-elementor-header-cta{display:none}}


/*
 * SOP Editorial Blog System
 * Neurakey-inspirierte Informationsarchitektur, visuell eigenständig im
 * bestehenden Traumkunden.ai-/SOP-System. Ausschließlich Blog, Archive,
 * Suche und Einzelbeiträge außerhalb der geschützten Canvas-Landingpage.
 */
body.sop-site:not(.page-sop).blog,
body.sop-site:not(.page-sop).archive,
body.sop-site:not(.page-sop).search,
body.sop-site:not(.page-sop).single-post {
  background: linear-gradient(180deg, #090b10 0%, #0b101a 48%, #090b10 100%);
}

body.sop-site:not(.page-sop) .sop-blog-hero,
body.sop-site:not(.page-sop) .sop-article-hero {
  padding-block: clamp(4.75rem, 8vw, 8.5rem) clamp(3.25rem, 5vw, 5rem);
}

body.sop-site:not(.page-sop) .sop-blog-hero__inner,
body.sop-site:not(.page-sop) .sop-article-hero__inner {
  position: relative;
  gap: 1.45rem;
}

body.sop-site:not(.page-sop) .sop-blog-hero__inner::after,
body.sop-site:not(.page-sop) .sop-article-hero__inner::after {
  width: min(7rem, 22%);
  height: 1px;
  margin-top: 0.35rem;
  background: linear-gradient(90deg, var(--sop-gold), transparent);
  content: "";
}

body.sop-site:not(.page-sop) .sop-blog-hero h1,
body.sop-site:not(.page-sop) .sop-article-hero h1 {
  max-width: 16ch;
  letter-spacing: -0.045em;
}

body.sop-site:not(.page-sop) .sop-blog-hero p,
body.sop-site:not(.page-sop) .sop-article-hero__deck {
  max-width: 42rem;
  color: rgb(239 241 245 / 82%);
  font-size: clamp(1.05rem, 1.7vw, 1.22rem);
  line-height: 1.65;
}

body.sop-site:not(.page-sop) .sop-blog-hero .sop-preheadline,
body.sop-site:not(.page-sop) .sop-article-hero .sop-preheadline {
  width: fit-content;
  color: var(--sop-gold);
  letter-spacing: 0.13em;
}

body.sop-site:not(.page-sop) .sop-blog-overview {
  position: relative;
  padding-block: clamp(3.5rem, 7vw, 6.5rem);
}

body.sop-site:not(.page-sop) .sop-blog-overview::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgb(208 171 117 / 36%), transparent);
  content: "";
}

body.sop-site:not(.page-sop) .sop-blog-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.25rem 2rem;
  margin-bottom: clamp(1.7rem, 4vw, 3rem);
}

body.sop-site:not(.page-sop) .sop-blog-intro__title {
  max-width: 16ch;
  margin: 0;
  font-size: clamp(1.65rem, 3vw, 2.45rem);
  letter-spacing: -0.035em;
}

body.sop-site:not(.page-sop) .sop-blog-intro__copy {
  max-width: 36rem;
  margin: 0;
  color: var(--sop-copy-subtle);
}

body.sop-site:not(.page-sop) .sop-category-nav {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.55rem;
  margin: 0 0 clamp(2.25rem, 5vw, 4rem);
  padding: 0.2rem 0 0.95rem;
  overflow-x: auto;
  scrollbar-width: thin;
}

body.sop-site:not(.page-sop) .sop-category-nav::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: var(--sop-line-soft);
  content: "";
}

body.sop-site:not(.page-sop) .sop-category-nav a {
  flex: 0 0 auto;
  padding: 0.58rem 0.85rem;
  border-color: rgb(255 255 255 / 11%);
  background: rgb(255 255 255 / 2%);
  color: rgb(239 241 245 / 76%);
  font-size: 0.76rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.sop-site:not(.page-sop) .sop-category-nav a:hover,
body.sop-site:not(.page-sop) .sop-category-nav .is-active {
  border-color: rgb(208 171 117 / 62%);
  background: rgb(208 171 117 / 12%);
  color: var(--sop-gold);
}

body.sop-site:not(.page-sop) .sop-featured-post {
  grid-template-columns: minmax(0, 1.16fr) minmax(23rem, 0.84fr);
  margin-bottom: clamp(2.75rem, 6vw, 5.5rem);
  border-color: rgb(255 255 255 / 12%);
  border-radius: 1.5rem;
  background: linear-gradient(140deg, rgb(24 32 48 / 97%), rgb(11 17 29 / 99%));
  box-shadow: none;
}

body.sop-site:not(.page-sop) .sop-featured-post__image {
  position: relative;
  min-height: clamp(19rem, 32vw, 30rem);
  background: radial-gradient(circle at 12% 15%, rgb(53 215 223 / 20%), transparent 33%), linear-gradient(145deg, #111c32, #0b101a);
}

body.sop-site:not(.page-sop) .sop-featured-post__image::after,
body.sop-site:not(.page-sop) .sop-post-card__image::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(9 11 16 / 6%), rgb(9 11 16 / 38%));
  content: "";
  pointer-events: none;
}

body.sop-site:not(.page-sop) .sop-featured-post__image img,
body.sop-site:not(.page-sop) .sop-post-card__image img { display: block; }

body.sop-site:not(.page-sop) .sop-featured-post__body {
  align-content: center;
  gap: 1.25rem;
  padding: clamp(2rem, 5vw, 4rem);
}

body.sop-site:not(.page-sop) .sop-featured-post__title {
  max-width: 14ch;
  margin: 0;
  font-size: clamp(1.95rem, 4vw, 3.45rem);
  letter-spacing: -0.045em;
}

body.sop-site:not(.page-sop) .sop-featured-post__body > p:not(:last-child) {
  max-width: 35rem;
  margin: 0;
  color: var(--sop-copy-subtle);
}

body.sop-site:not(.page-sop) .sop-post-card__meta,
body.sop-site:not(.page-sop) .sop-post-meta,
body.sop-site:not(.page-sop) .sop-post-meta time {
  color: rgb(239 241 245 / 62%);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1.4;
  text-transform: uppercase;
}

body.sop-site:not(.page-sop) .sop-post-grid { gap: clamp(1rem, 2.4vw, 1.6rem); }

body.sop-site:not(.page-sop) .sop-post-card {
  min-height: 100%;
  border-color: rgb(255 255 255 / 11%);
  border-radius: 1.05rem;
  background: linear-gradient(150deg, rgb(19 27 42 / 95%), rgb(11 17 29 / 98%));
  box-shadow: none;
}

body.sop-site:not(.page-sop) .sop-post-card:hover {
  border-color: rgb(208 171 117 / 52%);
  background: linear-gradient(150deg, rgb(24 35 53 / 98%), rgb(12 19 32 / 99%));
  box-shadow: none;
  transform: translateY(-3px);
}

body.sop-site:not(.page-sop) .sop-post-card__image {
  position: relative;
  min-height: 0;
  aspect-ratio: 16 / 10;
  background: radial-gradient(circle at 78% 24%, rgb(208 171 117 / 19%), transparent 35%), linear-gradient(145deg, #101b30, #0b111e);
}

body.sop-site:not(.page-sop) .sop-post-card__body {
  align-content: start;
  gap: 0.9rem;
  padding: clamp(1.3rem, 2.2vw, 1.75rem);
}

body.sop-site:not(.page-sop) .sop-post-card__title {
  max-width: 20ch;
  margin: 0;
  font-size: clamp(1.22rem, 1.75vw, 1.5rem);
  letter-spacing: -0.025em;
  line-height: 1.18;
}

body.sop-site:not(.page-sop) .sop-post-card__excerpt {
  margin: 0;
  color: var(--sop-copy-subtle);
  line-height: 1.6;
}

body.sop-site:not(.page-sop) .sop-post-card__link {
  display: inline-flex;
  width: fit-content;
  margin-top: 0.15rem;
  color: var(--sop-gold);
  font-size: 0.86rem;
  letter-spacing: 0.025em;
}

body.sop-site:not(.page-sop) .sop-post-card__link::after { margin-left: 0.4rem; content: "→"; }

body.sop-site:not(.page-sop) .sop-empty-state {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(12rem, 0.4fr);
  align-items: end;
  min-height: 17rem;
  padding: clamp(1.75rem, 5vw, 4rem);
  border-color: rgb(255 255 255 / 11%);
  border-radius: 1.2rem;
  background: linear-gradient(90deg, rgb(16 24 39 / 98%), rgb(10 16 27 / 96%)), var(--sop-surface);
  box-shadow: none;
}

body.sop-site:not(.page-sop) .sop-empty-state h2 {
  max-width: 16ch;
  margin: 0 0 0.65rem;
  font-size: clamp(1.55rem, 3vw, 2.25rem);
  letter-spacing: -0.035em;
}

body.sop-site:not(.page-sop) .sop-empty-state p {
  max-width: 34rem;
  margin: 0;
  color: var(--sop-copy-subtle);
}

body.sop-site:not(.page-sop) .sop-empty-state__indicator {
  justify-self: end;
  color: var(--sop-gold);
  font-size: clamp(3rem, 9vw, 7.25rem);
  font-weight: 700;
  letter-spacing: -0.1em;
  line-height: 0.8;
}

body.sop-site:not(.page-sop) .sop-article-hero__inner { width: min(100% - 2rem, 76rem); }

body.sop-site:not(.page-sop) .sop-article-hero__title {
  max-width: 15ch;
  margin: 0;
  font-size: clamp(2.35rem, 5.2vw, 4.6rem);
}

body.sop-site:not(.page-sop) .sop-post-meta { gap: 0.45rem 0.85rem; }

body.sop-site:not(.page-sop) .sop-post-meta > * {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

body.sop-site:not(.page-sop) .sop-post-meta > * + *::before {
  width: 0.22rem;
  height: 0.22rem;
  border-radius: 50%;
  background: rgb(208 171 117 / 78%);
  content: "";
}

body.sop-site:not(.page-sop) .sop-article__featured-image {
  width: min(100% - 2rem, 76rem);
  margin-bottom: clamp(2.5rem, 6vw, 5.75rem);
  border-color: rgb(255 255 255 / 12%);
  border-radius: 1.25rem;
  background: #10182a;
}

body.sop-site:not(.page-sop) .sop-article__featured-image img {
  aspect-ratio: 16 / 8;
  max-height: none;
  object-fit: cover;
}

body.sop-site:not(.page-sop) .sop-entry.sop-article { padding-top: 0; }

body.sop-site:not(.page-sop) .sop-article__layout {
  display: grid;
  grid-template-columns: minmax(12rem, 15.5rem) minmax(0, 44rem);
  justify-content: center;
  gap: clamp(2rem, 6vw, 6rem);
  width: min(100% - 2rem, 76rem);
  margin-inline: auto;
}

body.sop-site:not(.page-sop) .sop-article__rail { align-self: start; }

body.sop-site:not(.page-sop) .sop-toc {
  position: sticky;
  top: 7.2rem;
  margin: 0;
  padding: 1.1rem 0 0;
  border: 0;
  border-top: 1px solid rgb(208 171 117 / 54%);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.sop-site:not(.page-sop) .sop-toc::before { display: none; }

body.sop-site:not(.page-sop) .sop-toc__title {
  margin-bottom: 0.75rem;
  color: var(--sop-gold);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.sop-site:not(.page-sop) .sop-toc ol {
  display: grid;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.sop-site:not(.page-sop) .sop-toc a {
  color: rgb(239 241 245 / 68%);
  font-size: 0.88rem;
  line-height: 1.45;
  text-decoration: none;
}

body.sop-site:not(.page-sop) .sop-toc a:hover,
body.sop-site:not(.page-sop) .sop-toc a:focus-visible { color: var(--sop-gold); }

body.sop-site:not(.page-sop) .sop-toc__level-3 { padding-left: 0.75rem; }

body.sop-site:not(.page-sop) .sop-article__content {
  width: auto;
  margin: 0;
}

body.sop-site:not(.page-sop) .sop-article__content > p,
body.sop-site:not(.page-sop) .sop-article__content > ul,
body.sop-site:not(.page-sop) .sop-article__content > ol {
  max-width: 40rem;
  color: rgb(239 241 245 / 88%);
  font-size: clamp(1.02rem, 1.3vw, 1.13rem);
  line-height: 1.82;
}

body.sop-site:not(.page-sop) .sop-article__content > h2,
body.sop-site:not(.page-sop) .sop-article__content > h3 {
  max-width: 36rem;
  scroll-margin-top: 8rem;
}

body.sop-site:not(.page-sop) .sop-article__content > h2 {
  margin-top: clamp(3rem, 7vw, 5.5rem);
  font-size: clamp(1.62rem, 3vw, 2.35rem);
  letter-spacing: -0.04em;
}

body.sop-site:not(.page-sop) .sop-article__content > h3 {
  font-size: clamp(1.22rem, 2.2vw, 1.55rem);
  letter-spacing: -0.025em;
}

body.sop-site:not(.page-sop) .sop-article__content blockquote {
  margin: clamp(2rem, 5vw, 3.5rem) 0;
  padding: 0.25rem 0 0.25rem 1.25rem;
  border: 0;
  border-left: 2px solid var(--sop-gold);
  color: rgb(255 255 255 / 94%);
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.5;
}

body.sop-site:not(.page-sop) .sop-article__content table {
  display: block;
  width: 100%;
  margin-block: clamp(2rem, 5vw, 3rem);
  overflow-x: auto;
  border: 1px solid rgb(255 255 255 / 11%);
  border-collapse: separate;
  border-radius: 0.8rem;
  border-spacing: 0;
}

body.sop-site:not(.page-sop) .sop-article__content th,
body.sop-site:not(.page-sop) .sop-article__content td {
  min-width: 10rem;
  padding: 0.9rem 1rem;
  border-right: 1px solid rgb(255 255 255 / 8%);
  border-bottom: 1px solid rgb(255 255 255 / 8%);
  text-align: left;
}

body.sop-site:not(.page-sop) .sop-article__content th {
  color: var(--sop-gold);
  font-size: 0.78rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

body.sop-site:not(.page-sop) .sop-article__meta-stack {
  display: grid;
  gap: clamp(1.5rem, 4vw, 2.4rem);
  width: min(100% - 2rem, 44rem);
  margin: clamp(3rem, 7vw, 6rem) auto 0;
}

body.sop-site:not(.page-sop) .sop-author-box,
body.sop-site:not(.page-sop) .sop-cta-panel {
  border-color: rgb(255 255 255 / 12%);
  border-radius: 1rem;
  box-shadow: none;
}

body.sop-site:not(.page-sop) .sop-author-box { background: rgb(255 255 255 / 3%); }

body.sop-site:not(.page-sop) .sop-cta-panel {
  background: radial-gradient(circle at 90% 10%, rgb(53 215 223 / 13%), transparent 28%), linear-gradient(135deg, rgb(24 32 48 / 99%), rgb(11 18 30 / 99%));
}

body.sop-site:not(.page-sop) .sop-related {
  position: relative;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  padding-top: clamp(3.5rem, 7vw, 6rem);
  background: transparent;
}

body.sop-site:not(.page-sop) .sop-related::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgb(208 171 117 / 45%), transparent);
  content: "";
}

body.sop-site:not(.page-sop) .sop-related__title {
  max-width: 15ch;
  font-size: clamp(1.65rem, 3vw, 2.35rem);
  letter-spacing: -0.04em;
}

@media (max-width: 1024px) {
  body.sop-site:not(.page-sop) .sop-article__layout {
    grid-template-columns: minmax(0, 42rem);
    width: min(100% - 2rem, 42rem);
  }
  body.sop-site:not(.page-sop) .sop-article__rail { order: -1; }
  body.sop-site:not(.page-sop) .sop-toc {
    position: static;
    margin-bottom: 0.5rem;
    padding: 1.1rem 1.15rem;
    border: 1px solid rgb(255 255 255 / 11%);
    border-radius: 0.9rem;
    background: rgb(255 255 255 / 3%);
  }
  body.sop-site:not(.page-sop) .sop-toc ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 1.25rem;
  }
}

@media (max-width: 767px) {
  body.sop-site:not(.page-sop) .sop-blog-hero,
  body.sop-site:not(.page-sop) .sop-article-hero { padding-block: 4.25rem 2.8rem; }
  body.sop-site:not(.page-sop) .sop-blog-hero h1,
  body.sop-site:not(.page-sop) .sop-article-hero h1,
  body.sop-site:not(.page-sop) .sop-article-hero__title { max-width: 12ch; }
  body.sop-site:not(.page-sop) .sop-blog-intro {
    display: grid;
    align-items: start;
    margin-bottom: 1.65rem;
  }
  body.sop-site:not(.page-sop) .sop-featured-post {
    grid-template-columns: 1fr;
    margin-bottom: 2.75rem;
  }
  body.sop-site:not(.page-sop) .sop-featured-post__image {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }
  body.sop-site:not(.page-sop) .sop-featured-post__title { max-width: 15ch; }
  body.sop-site:not(.page-sop) .sop-empty-state {
    grid-template-columns: 1fr;
    min-height: 15rem;
  }
  body.sop-site:not(.page-sop) .sop-empty-state__indicator {
    justify-self: start;
    margin-top: 1.75rem;
  }
  body.sop-site:not(.page-sop) .sop-article__featured-image {
    width: min(100% - 1.25rem, 76rem);
    margin-bottom: 2.6rem;
    border-radius: 0.8rem;
  }
  body.sop-site:not(.page-sop) .sop-article__layout {
    width: min(100% - 1.25rem, 42rem);
    gap: 2rem;
  }
  body.sop-site:not(.page-sop) .sop-toc ol { grid-template-columns: 1fr; }
  body.sop-site:not(.page-sop) .sop-article__meta-stack {
    width: min(100% - 1.25rem, 44rem);
    margin-top: 3.4rem;
  }
  body.sop-site:not(.page-sop) .sop-post-meta { gap: 0.4rem 0.7rem; }
}

@media (prefers-reduced-motion: reduce) {
  body.sop-site:not(.page-sop) .sop-post-card,
  body.sop-site:not(.page-sop) .sop-post-card:hover {
    transform: none;
    transition: none;
  }
}

/* SOP Blog: Kontrastkorrektur für die Editorial-Zwischenüberschrift. */
body.sop-site:not(.page-sop) .sop-blog-intro__title { color: #f7f3eb; }

/* SOP Blog: Artikelhero-Breite und skalierte Titelzeilen. */
body.sop-site:not(.page-sop) .sop-article-hero__inner { margin-inline: auto; }
body.sop-site:not(.page-sop) .sop-article-hero__title { max-width: 17ch; font-size: clamp(2.25rem, 4.4vw, 4rem); }


/* SOP Blog: Inhalts-CTA und zentrierter Abschluss-CTA. */
body.sop-site:not(.page-sop) .sop-toc-cta {
  display: grid;
  gap: 0.72rem;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgb(255 255 255 / 11%);
}

body.sop-site:not(.page-sop) .sop-toc-cta > span {
  color: var(--sop-gold);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.sop-site:not(.page-sop) .sop-toc-cta p {
  margin: 0;
  color: rgb(239 241 245 / 82%);
  font-size: 0.92rem;
  line-height: 1.5;
}

body.sop-site:not(.page-sop) .sop-toc-cta a {
  width: fit-content;
  color: var(--sop-gold);
  font-size: 0.86rem;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}

body.sop-site:not(.page-sop) .sop-toc-cta a::after {
  margin-left: 0.35rem;
  content: "→";
}

body.sop-site:not(.page-sop) .sop-cta-panel--article {
  justify-items: center;
  text-align: center;
}

body.sop-site:not(.page-sop) .sop-cta-panel--article .sop-preheadline {
  width: fit-content;
}

body.sop-site:not(.page-sop) .sop-cta-panel--article h2,
body.sop-site:not(.page-sop) .sop-cta-panel--article p {
  max-width: 42rem;
}

@media (max-width: 1024px) {
  body.sop-site:not(.page-sop) .sop-toc-cta {
    margin-top: 1rem;
    padding-top: 1rem;
  }
}

/* SOP Blog: Visuelle CTA-Box innerhalb der sticky Artikelrail. */
body.sop-site:not(.page-sop) .sop-toc-cta { padding: 1.15rem; border: 1px solid rgb(255 255 255 / 11%); border-radius: 0.8rem; background: linear-gradient(145deg, rgb(24 32 48 / 94%), rgb(12 18 30 / 97%)); }


/* SOP Blog: Kollisionsfreie Sticky-Rail für Inhaltsverzeichnis und CTA. */
@media (min-width: 1025px) {
  body.sop-site:not(.page-sop) .sop-article__rail {
    position: sticky;
    top: 7.25rem;
    align-self: start;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 1rem;
    max-height: calc(100dvh - 8.5rem);
    overflow: hidden;
  }

  body.sop-site:not(.page-sop) .sop-article__rail .sop-toc {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 0.4rem;
  }

  body.sop-site:not(.page-sop) .sop-toc-cta {
    margin-top: 0;
    flex: none;
  }
}

@media (max-width: 1024px) {
  body.sop-site:not(.page-sop) .sop-article__rail {
    position: static;
    display: block;
    max-height: none;
    overflow: visible;
  }

  body.sop-site:not(.page-sop) .sop-article__rail .sop-toc {
    overflow: visible;
  }
}

body.sop-site:not(.page-sop) .sop-button--rail {
  width: 100%;
  justify-content: center;
  text-align: center;
}


/* SOP Blog: Entkoppelte Inhaltskarte und alleinige Sticky-CTA. */
@media (min-width: 1025px) {
  body.sop-site:not(.page-sop) .sop-article__rail {
    position: static;
    display: block;
    max-height: none;
    overflow: visible;
  }

  body.sop-site:not(.page-sop) .sop-article__rail .sop-toc {
    display: block;
    overflow: visible;
    padding: 1.35rem;
    border: 1px solid rgb(255 255 255 / 11%);
    border-radius: 0.8rem;
    background: linear-gradient(145deg, rgb(17 24 37 / 92%), rgb(10 15 25 / 96%));
  }

  body.sop-site:not(.page-sop) .sop-toc-cta {
    position: sticky;
    top: 7.25rem;
    margin-top: 1.25rem;
  }
}

/* SOP Blog: Inhaltskarte bleibt explizit statisch. */
body.sop-site:not(.page-sop) .sop-article__rail .sop-toc { position: static !important; top: auto !important; }


/* SOP Blog: Zuverlässiges Sticky-Verhalten für die Erstkontakt-CTA. */
@media (min-width: 1025px) {
  body.sop-site:not(.page-sop) .sop-article__rail {
    align-self: stretch;
    min-height: 100%;
  }

  body.sop-site:not(.page-sop) .sop-toc-cta {
    align-self: start;
  }
}

body.sop-site:not(.page-sop) .sop-toc-cta__title {
  margin: 0 !important;
  color: #f7f3eb !important;
  font-size: 1.08rem !important;
  font-weight: 700;
  line-height: 1.32 !important;
}


/* SOP Blog: Ruhige, markenkonforme Artikeltitel in Übersicht und Karten. */
body.sop-site:not(.page-sop) .sop-featured-post__title,
body.sop-site:not(.page-sop) .sop-post-card__title {
  margin: 0;
  font-size: clamp(1.5rem, 2.15vw, 2.25rem) !important;
  line-height: 1.13 !important;
}

body.sop-site:not(.page-sop) .sop-featured-post__title a,
body.sop-site:not(.page-sop) .sop-post-card__title a {
  color: #f7f3eb !important;
  text-decoration: none;
}

body.sop-site:not(.page-sop) .sop-featured-post__title a:hover,
body.sop-site:not(.page-sop) .sop-featured-post__title a:focus-visible,
body.sop-site:not(.page-sop) .sop-post-card__title a:hover,
body.sop-site:not(.page-sop) .sop-post-card__title a:focus-visible {
  color: #d0ab75 !important;
}
