/* Bewerbungscoaching design — scoped under .bc-design so it cannot leak into
   the theme header/footer. Auto-generated from the Claude-design body. */
html { scroll-padding-top: 90px; }

.bc-design {
    --teal: #004F5A; --teal-deep: #003740;
    --coral: #D85E43; --coral-dark: #bf4e35; --coral-tint: #fdf0ec;
    --mint: #DCF1F3; --cream: #fdf6ef;
    --ink: #182628; --ink-2: #3a5457; --ink-3: #6e8f92; --hair: #e6eeef;
    --surface: #ffffff; --surface-alt: #f8fafa;
    --shadow-sm: 0 2px 8px rgba(0,79,90,0.07);
    --shadow-md: 0 8px 24px rgba(0,79,90,0.12);
    --shadow-lg: 0 18px 48px rgba(0,79,90,0.18);
    --shadow-cta: 0 8px 20px rgba(216,94,67,0.30);
    --font: 'Plus Jakarta Sans', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    --transition: 250ms cubic-bezier(0.22, 0.61, 0.36, 1);
  }
.bc-design * { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; overflow-x: clip; scroll-padding-top: 84px; }
.bc-design {
    font-family: var(--font); color: var(--ink-2); background: var(--surface);
    line-height: 1.65; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "kern", "ss01";
  }
.bc-design img { display: block; max-width: 100%; }
.bc-design a { color: inherit; text-decoration: none; }
/* In-content contextual (cocon) links — matches the FAQ-answer link look: teal, underlined, coral on hover. */
.bc-design .clink { color: var(--teal); font-weight: 600; text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 3px; transition: color var(--transition); }
.bc-design .clink:hover { color: var(--coral); }
/* NAP / local-trust strip (Impressum address). */
.bc-design .nap { border-top: 1px solid var(--hair); background: var(--surface-alt); padding: 26px 0; }
.bc-design .nap-inner { display: flex; align-items: center; justify-content: center; gap: 12px; text-align: center; color: var(--ink-2); font-size: 15px; line-height: 1.55; }
.bc-design .nap svg { width: 22px; height: 22px; color: var(--teal); flex-shrink: 0; }
.bc-design .nap a { color: var(--teal); font-weight: 700; }
@media (max-width: 620px) { .bc-design .nap-inner { flex-direction: column; gap: 8px; } }
.bc-design button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; }
.bc-design ::selection { background: var(--mint); color: var(--teal); }
.bc-design :focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; border-radius: 6px; }
.bc-design .eyebrow { font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--coral); display: inline-flex; align-items: center; gap: 10px; }
.bc-design .eyebrow::before { content: ''; width: 26px; height: 2px; background: currentColor; border-radius: 2px; }
.bc-design .eyebrow.bare::before { display: none; }
.bc-design h1 { font-size: clamp(38px, 5.4vw, 68px); font-weight: 800; letter-spacing: -0.04em; line-height: 1.0; color: var(--ink); text-wrap: balance; }
.bc-design h1 em { font-style: italic; font-weight: 600; color: var(--coral); }
.bc-design h2 { font-size: clamp(28px, 3.6vw, 46px); font-weight: 800; letter-spacing: -0.035em; line-height: 1.06; color: var(--ink); text-wrap: balance; }
.bc-design h2 em { font-style: italic; font-weight: 600; color: var(--ink-3); }
.bc-design .lead { font-size: clamp(17px, 1.5vw, 21px); line-height: 1.5; color: var(--ink-2); text-wrap: pretty; max-width: 56ch; }
.bc-design .btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 52px; padding: 0 26px; border-radius: 999px; font-size: 16px; font-weight: 700; letter-spacing: -0.01em; transition: transform var(--transition), background var(--transition), box-shadow var(--transition), color var(--transition), border-color var(--transition); white-space: nowrap; }
.bc-design .btn svg { width: 19px; height: 19px; }
.bc-design .btn-coral { background: var(--coral); color: #fff; box-shadow: var(--shadow-cta); }
.bc-design .btn-coral:hover { background: var(--coral-dark); transform: translateY(-2px); }
.bc-design .btn-teal { background: var(--teal); color: #fff; }
.bc-design .btn-teal:hover { background: var(--teal-deep); transform: translateY(-2px); }
.bc-design .btn-white { background: #fff; color: var(--teal); }
.bc-design .btn-white:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.bc-design .btn-outline { border: 1.5px solid var(--hair); color: var(--ink); background: #fff; }
.bc-design .btn-outline:hover { border-color: var(--teal); color: var(--teal); }
.bc-design .btn-ghost-w { color: #fff; border: 1.5px solid rgba(255,255,255,0.45); }
.bc-design .btn-ghost-w:hover { background: rgba(255,255,255,0.12); border-color: #fff; }
.bc-design .btn-block { width: 100%; }
.bc-design .link { display: inline-flex; align-items: center; gap: 7px; font-weight: 700; color: var(--teal); }
.bc-design .link svg { width: 17px; height: 17px; transition: transform var(--transition); }
.bc-design .link:hover { color: var(--coral); }
.bc-design .link:hover svg { transform: translateX(4px); }
.bc-design .shell { max-width: 1180px; margin: 0 auto; padding: 0 clamp(20px, 4vw, 56px); }
.bc-design .topnav { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,0.86); backdrop-filter: saturate(180%) blur(18px); -webkit-backdrop-filter: saturate(180%) blur(18px); border-bottom: 1px solid var(--hair); }
.bc-design .topnav-inner { max-width: 1180px; margin: 0 auto; height: 66px; display: flex; align-items: center; gap: 14px; padding: 0 clamp(18px, 4vw, 56px); }
.bc-design .brand { font-weight: 800; font-size: 21px; letter-spacing: -0.03em; color: var(--teal); }
.bc-design .brand span { color: var(--coral); }
.bc-design .topnav-links { display: flex; gap: 28px; margin-left: 36px; flex: 1; font-size: 15px; color: var(--ink-2); }
.bc-design .topnav-links a { font-weight: 500; transition: color var(--transition); }
.bc-design .topnav-links a:hover { color: var(--teal); }
.bc-design .topnav-right { display: flex; align-items: center; gap: 18px; }
.bc-design .topnav-tel { display: inline-flex; align-items: center; gap: 7px; font-size: 15px; font-weight: 600; color: var(--teal); }
.bc-design .topnav-tel svg { width: 17px; height: 17px; }
.bc-design .topnav .btn { min-height: 42px; padding: 0 20px; font-size: 14.5px; }
.bc-design .skip { position: absolute; left: 12px; top: 8px; transform: translateY(-150%); background: var(--teal); color: #fff; padding: 10px 16px; border-radius: 8px; font-weight: 600; font-size: 14px; z-index: 300; transition: transform 180ms ease; }
.bc-design .skip:focus { transform: translateY(0); }
.bc-design .lede-wrap { background: linear-gradient(180deg, var(--surface-alt) 0%, #fff 520px); }
.bc-design .lede { display: grid; grid-template-columns: minmax(0,1fr) 372px; column-gap: clamp(28px, 4vw, 64px); align-items: start; padding: clamp(40px, 5vw, 72px) 0 clamp(56px, 7vw, 96px); }
.bc-design .hero-head { grid-column: 1; grid-row: 1; min-width: 0; }
.bc-design .lede-body { grid-column: 1; grid-row: 2; min-width: 0; }
.bc-design .hero-head h1 { margin-top: 20px; }
.bc-design .hero-head .lead { margin-top: 22px; }
.bc-design .hero-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
/* Single-column hero (funding pages, no sidebar book card) */
.bc-design .lede-solo { grid-template-columns: minmax(0, 1fr); padding-bottom: clamp(36px, 4vw, 52px); }
.bc-design .lede-solo .hero-head { max-width: 840px; }
.bc-design .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
@media (max-width: 620px) { .bc-design .hero-actions .btn { flex: 1 1 100%; } }
.bc-design .pill { display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px 9px 12px; border-radius: 999px; background: var(--surface); border: 1px solid var(--hair); font-size: 13.5px; font-weight: 600; color: var(--ink); box-shadow: var(--shadow-sm); }
.bc-design .pill svg { width: 16px; height: 16px; color: var(--coral); flex: none; }
.bc-design .divider { height: 1px; background: var(--hair); margin: clamp(40px, 5vw, 64px) 0; }
.bc-design .block-head .eyebrow { margin-bottom: 14px; }
.bc-design .block-head h2 { max-width: 20ch; }
.bc-design .block-head p.lead { margin-top: 16px; }
.bc-design .modules { margin-top: 32px; display: grid; gap: 14px; }
.bc-design .module { border: 1px solid var(--hair); border-radius: 16px; background: var(--surface); padding: clamp(22px, 2.6vw, 30px); display: grid; grid-template-columns: auto 1fr; gap: clamp(18px, 2.4vw, 28px); transition: box-shadow var(--transition), border-color var(--transition), transform var(--transition); }
.bc-design .module:hover { box-shadow: var(--shadow-md); border-color: transparent; transform: translateY(-2px); }
.bc-design .module .idx { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.bc-design .module .idx .no { font-size: 13px; font-weight: 800; letter-spacing: 0.1em; color: var(--coral); }
.bc-design .module .idx .mark { width: 48px; height: 48px; border-radius: 13px; background: var(--mint); color: var(--teal); display: flex; align-items: center; justify-content: center; }
.bc-design .module .idx .mark svg { width: 24px; height: 24px; }
.bc-design .module h3 { font-size: clamp(19px, 2vw, 23px); font-weight: 700; letter-spacing: -0.025em; color: var(--ink); }
.bc-design .module > div > p { font-size: 15.5px; line-height: 1.55; color: var(--ink-2); margin-top: 8px; }
.bc-design .module ul { list-style: none; margin-top: 16px; display: flex; flex-wrap: wrap; gap: 8px 18px; }
.bc-design .module li { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: var(--ink); }
.bc-design .module li svg { width: 17px; height: 17px; color: var(--teal); flex: none; }
.bc-design .audience { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-top: 30px; }
.bc-design .aud { display: flex; gap: 12px; align-items: flex-start; padding: 18px; border-radius: 14px; background: var(--surface-alt); }
.bc-design .aud svg { width: 21px; height: 21px; color: var(--teal); flex: none; margin-top: 2px; }
.bc-design .aud strong { display: block; font-size: 15px; color: var(--ink); letter-spacing: -0.01em; }
.bc-design .aud span { font-size: 13.5px; color: var(--ink-3); }
.bc-design .book { grid-column: 2; grid-row: 1 / span 2; position: sticky; top: 84px; background: var(--teal); color: #fff; border-radius: 22px; padding: clamp(26px, 2.6vw, 34px); box-shadow: var(--shadow-lg); }
.bc-design .book .tag { font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mint); }
.bc-design .book .price { display: flex; align-items: baseline; gap: 10px; margin-top: 12px; }
.bc-design .book .price .big { font-size: 52px; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: #fff; }
.bc-design .book .price .ctx { font-size: 14px; color: rgba(255,255,255,0.78); font-weight: 600; }
.bc-design .book .strike { font-size: 13px; color: rgba(255,255,255,0.6); margin-top: 6px; }
.bc-design .book .strike s { color: rgba(255,255,255,0.45); }
.bc-design .book ul { list-style: none; margin: 22px 0; display: grid; gap: 13px; }
.bc-design .book li { display: flex; gap: 11px; align-items: flex-start; font-size: 14.5px; color: rgba(255,255,255,0.92); }
.bc-design .book li svg { width: 19px; height: 19px; color: var(--mint); flex: none; margin-top: 1px; }
.bc-design .book .actions { display: grid; gap: 10px; }
.bc-design .book .tel { display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 15px; font-weight: 700; color: #fff; min-height: 46px; border-radius: 999px; border: 1.5px solid rgba(255,255,255,0.4); transition: background var(--transition); }
.bc-design .book .tel:hover { background: rgba(255,255,255,0.12); }
.bc-design .book .tel svg { width: 18px; height: 18px; }
.bc-design .book .check-link { margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,0.16); font-size: 13.5px; color: rgba(255,255,255,0.78); }
.bc-design .book .check-link a { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.bc-design .book .check-link a:hover { color: var(--mint); }
.bc-design .band { padding: clamp(56px, 7vw, 96px) 0; }
.bc-design .band.alt { background: var(--surface-alt); }
.bc-design .band.teal { background: var(--teal); color: #fff; }
.bc-design .band.dark { background: var(--ink); color: #fff; }
.bc-design .band.teal h2, .bc-design .band.dark h2 { color: #fff; }
.bc-design .band.teal h2 em, .bc-design .band.dark h2 em { color: var(--mint); }
.bc-design .band.teal .lead, .bc-design .band.dark .lead { color: rgba(255,255,255,0.82); }
.bc-design .creds { background: var(--coral); color: #fff; }
.bc-design .creds-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.bc-design .creds .cell { padding: clamp(26px, 3.4vw, 42px) clamp(18px, 2.4vw, 32px); }
.bc-design .creds .cell + .cell { border-left: 1px solid rgba(255,255,255,0.18); }
.bc-design .creds .num { font-size: clamp(30px, 3.6vw, 46px); font-weight: 800; letter-spacing: -0.04em; line-height: 1; }
.bc-design .creds .lbl { font-size: 13.5px; color: rgba(255,255,255,0.82); margin-top: 12px; line-height: 1.4; }
.bc-design .steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-top: 44px; }
.bc-design .step { position: relative; }
.bc-design .step .ring { width: 54px; height: 54px; border-radius: 50%; border: 2px solid var(--coral); color: var(--coral); background: var(--coral-tint); display: flex; align-items: center; justify-content: center; font-size: 22px; font-weight: 800; margin-bottom: 20px; }
.bc-design .step h4 { font-size: 20px; font-weight: 700; letter-spacing: -0.02em; color: var(--ink); }
.bc-design .step p { font-size: 15.5px; line-height: 1.55; color: var(--ink-2); margin-top: 10px; }
.bc-design .step .conn { position: absolute; top: 27px; left: 64px; right: -8px; height: 2px; background: repeating-linear-gradient(90deg, var(--hair) 0 7px, transparent 7px 14px); }
.bc-design .step:last-child .conn { display: none; }
.bc-design .leitfaden { margin-top: 44px; background: var(--mint); border-radius: 22px; padding: clamp(28px, 3.4vw, 44px); display: grid; grid-template-columns: auto 1fr; gap: clamp(20px, 3vw, 36px); align-items: center; }
.bc-design .leitfaden .ic { width: 56px; height: 56px; border-radius: 16px; background: var(--teal); color: #fff; display: flex; align-items: center; justify-content: center; flex: none; }
.bc-design .leitfaden .ic svg { width: 28px; height: 28px; }
.bc-design .leitfaden .eyebrow { color: var(--teal); }
.bc-design .leitfaden .say { margin-top: 14px; font-size: clamp(17px, 1.8vw, 22px); font-weight: 600; letter-spacing: -0.02em; color: var(--teal); line-height: 1.4; font-style: italic; }
.bc-design .leitfaden .hint { margin-top: 12px; font-size: 14px; color: var(--ink-2); }
.bc-design .check { background: var(--surface); border-radius: 28px; border: 1px solid var(--hair); box-shadow: var(--shadow-md); overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; margin-top: 44px; }
.bc-design .check .ask { padding: clamp(30px, 3.4vw, 48px); }
.bc-design .check .ask h3 { font-size: clamp(22px, 2.4vw, 28px); font-weight: 800; letter-spacing: -0.03em; color: var(--ink); }
.bc-design .check .ask p.sub { font-size: 15.5px; color: var(--ink-2); margin-top: 10px; }
.bc-design .opts { display: grid; gap: 10px; margin-top: 26px; }
.bc-design .opt { display: flex; align-items: center; gap: 13px; width: 100%; text-align: left; padding: 15px 18px; border-radius: 14px; border: 1.5px solid var(--hair); background: var(--surface); font-size: 15.5px; font-weight: 600; color: var(--ink); transition: border-color var(--transition), background var(--transition), transform var(--transition); }
.bc-design .opt .dot { width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--ink-3); flex: none; position: relative; transition: border-color var(--transition); }
.bc-design .opt:hover { border-color: var(--teal); transform: translateX(2px); }
.bc-design .opt[aria-pressed="true"] { border-color: var(--coral); background: var(--coral-tint); color: var(--coral-dark); }
.bc-design .opt[aria-pressed="true"] .dot { border-color: var(--coral); }
.bc-design .opt[aria-pressed="true"] .dot::after { content: ''; position: absolute; inset: 3px; border-radius: 50%; background: var(--coral); }
.bc-design .check .result { background: var(--teal); color: #fff; padding: clamp(30px, 3.4vw, 48px); display: flex; flex-direction: column; justify-content: center; }
.bc-design .check .result .state { display: flex; align-items: center; gap: 11px; font-size: 13px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--mint); }
.bc-design .check .result .state svg { width: 20px; height: 20px; }
.bc-design .res-headline { font-size: clamp(22px, 2.6vw, 30px); font-weight: 800; letter-spacing: -0.03em; line-height: 1.12; margin-top: 16px; color: #fff; text-wrap: balance; }
.bc-design .res-body { font-size: 16px; line-height: 1.55; color: rgba(255,255,255,0.85); margin-top: 14px; }
.bc-design .res-cta { margin-top: 28px; }
.bc-design .res-fine { margin-top: 18px; font-size: 13px; color: rgba(255,255,255,0.62); }
.bc-design .bcq-list { margin-top: 40px; max-width: 880px; }
.bc-design .bcq-row { border-bottom: 1px solid var(--hair); }
.bc-design .bcq-row:first-child { border-top: 1px solid var(--hair); }
.bc-design .bcq-q { display: flex; justify-content: space-between; align-items: center; gap: 22px; width: 100%; text-align: left; padding: 24px 6px; font-size: clamp(17px, 1.8vw, 20px); font-weight: 700; letter-spacing: -0.02em; color: var(--ink); }
.bc-design .bcq-q .bcq-pm { flex: none; width: 34px; height: 34px; border-radius: 50%; border: 1.5px solid var(--hair); position: relative; transition: all var(--transition); }
.bc-design .bcq-q .bcq-pm::before, .bc-design .bcq-q .bcq-pm::after { content: ''; position: absolute; left: 50%; top: 50%; background: var(--ink-3); border-radius: 2px; transition: transform var(--transition); }
.bc-design .bcq-q .bcq-pm::before { width: 13px; height: 2px; transform: translate(-50%, -50%); }
.bc-design .bcq-q .bcq-pm::after { width: 2px; height: 13px; transform: translate(-50%, -50%); }
.bc-design .bcq-row[aria-expanded="true"] .bcq-q { color: var(--teal); }
.bc-design .bcq-row[aria-expanded="true"] .bcq-q .bcq-pm { border-color: var(--teal); background: var(--mint); }
.bc-design .bcq-row[aria-expanded="true"] .bcq-q .bcq-pm::before, .bc-design .bcq-row[aria-expanded="true"] .bcq-q .bcq-pm::after { background: var(--teal); }
.bc-design .bcq-row[aria-expanded="true"] .bcq-q .bcq-pm::after { transform: translate(-50%, -50%) scaleY(0); }
.bc-design .bcq-a { max-height: 0; overflow: hidden; transition: max-height 400ms ease; }
.bc-design .bcq-a-inner { padding: 0 60px 26px 6px; font-size: 16px; line-height: 1.65; color: var(--ink-2); }
.bc-design .bcq-a-inner a { color: var(--teal); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.bc-design .bcq-a-inner a:hover { color: var(--coral); }
.bc-design .final { text-align: center; }
.bc-design .final h2 { max-width: 16ch; margin: 0 auto; }
.bc-design .final .lead { margin: 22px auto 0; }
.bc-design .final-actions { display: flex; gap: 18px; justify-content: center; flex-wrap: wrap; margin-top: 38px; }
.bc-design .final .tel-line { margin-top: 24px; font-size: 15px; color: rgba(255,255,255,0.7); }
.bc-design .final .tel-line a { color: #fff; font-weight: 700; }
.bc-design footer { background: var(--teal-deep); color: rgba(255,255,255,0.6); }
.bc-design .foot-inner { max-width: 1180px; margin: 0 auto; padding: 56px clamp(20px, 4vw, 56px) 36px; }
.bc-design .foot-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 28px; align-items: flex-start; }
.bc-design .foot-top .brand { color: #fff; font-size: 22px; }
.bc-design .foot-contact { font-size: 14.5px; line-height: 1.7; }
.bc-design .foot-contact a { color: rgba(255,255,255,0.82); }
.bc-design .foot-contact a:hover { color: #fff; }
.bc-design .foot-bottom { margin-top: 40px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,0.14); display: flex; justify-content: space-between; flex-wrap: wrap; gap: 14px; font-size: 12.5px; }
.bc-design .foot-bottom nav { display: flex; gap: 20px; flex-wrap: wrap; }
.bc-design .foot-bottom a:hover { color: #fff; }
.bc-design .mobile-cta { position: fixed; left: 0; right: 0; bottom: 0; z-index: 120; display: none; gap: 10px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,0.94); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-top: 1px solid var(--hair); transform: translateY(130%); transition: transform 320ms cubic-bezier(0.22,0.61,0.36,1); }
.bc-design .mobile-cta.show { transform: none; }
.bc-design .mobile-cta .btn { flex: 1; min-height: 50px; font-size: 15px; }
.bc-design .mobile-cta .tel { flex: none; width: 52px; padding: 0; }
.bc-design .mobile-cta .tel svg { width: 21px; height: 21px; }
.bc-design .reveal { animation: bcReveal 0.6s cubic-bezier(0.22,0.61,0.36,1) both; }
@keyframes bcReveal { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
 @media (max-width: 980px) {
.bc-design .lede { grid-template-columns: minmax(0, 1fr); row-gap: 8px; }
.bc-design .shell, .bc-design .lede { padding-left: 24px; padding-right: 24px; }
.bc-design .hero-head, .bc-design .book, .bc-design .lede-body { grid-column: 1; grid-row: auto; }
.bc-design .hero-head { order: 1; }
.bc-design .book { position: static; order: 2; margin-top: 8px; }
.bc-design .lede-body { order: 3; }
.bc-design .lede-body .divider:first-child { display: none; }
.bc-design .band { padding: clamp(44px, 9vw, 72px) 0; }
.bc-design .audience { grid-template-columns: 1fr 1fr; }
.bc-design .steps, .bc-design .check { grid-template-columns: 1fr; }
.bc-design .steps { margin-top: 32px; }
.bc-design .check { margin-top: 32px; }
.bc-design .step .conn { display: none; }
.bc-design .step .ring { margin-bottom: 12px; }
.bc-design .leitfaden { grid-template-columns: 1fr; }
/* Compact 2x2 credentials strip (was one tall coral column) */
.bc-design .creds-grid { grid-template-columns: 1fr 1fr; }
.bc-design .creds .cell { padding: 20px clamp(16px, 4vw, 26px); }
.bc-design .creds .cell + .cell { border-left: none; }
.bc-design .creds .cell:nth-child(odd) { border-right: 1px solid rgba(255,255,255,0.2); }
.bc-design .creds .cell:nth-child(1), .bc-design .creds .cell:nth-child(2) { border-bottom: 1px solid rgba(255,255,255,0.2); }
.bc-design .creds .num { font-size: clamp(28px, 7vw, 40px); }
.bc-design .creds .lbl { margin-top: 6px; }
}
@media (max-width: 620px) {
.bc-design .audience { grid-template-columns: 1fr; }
.bc-design .module { grid-template-columns: 1fr; }
.bc-design .module .idx { flex-direction: row; align-items: center; gap: 12px; }
.bc-design .final-actions .btn { width: 100%; }
.bc-design .btn { white-space: normal; }
.bc-design .block-head h2, .bc-design .band h2 { font-size: clamp(27px, 8.5vw, 36px); }
.bc-design .bcq-a-inner { padding-right: 24px; }
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
.bc-design .reveal { animation: none; }
.bc-design * { transition-duration: 0.01ms !important; }
  
}


/* === Collision guards: custom.css defines GLOBAL .step and .tag with the same
   names; re-assert the design's intent so they can't bleed into unset props. === */
.bc-design .step { display: block; }
.bc-design .book .tag { background: none; padding: 0; border-radius: 0; }
/* Theme sets a GLOBAL `nav, .pp-nav { position: fixed }` for the site header.
   Any <nav> inside content would inherit it (→ full-width pinned bar). Neutralise. */
.bc-design nav { position: static; }

/* ============================================================
   Funding / long-form topic components (Bildungsgutschein, AVGS, QCG…).
   2-col doc layout (main + sticky TOC) — deliberately distinct from the
   coaching page's hero+bands, per the "vary per page type" rule.
   ============================================================ */
/* "auf einen Blick" scan grid (used inside the hero .book card) */
.bc-design .scan { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--hair); border: 1px solid var(--hair); border-radius: 14px; overflow: hidden; margin: 4px 0 18px; }
.bc-design .scan-cell { background: var(--surface); padding: 13px 15px; }
.bc-design .scan-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); margin-bottom: 3px; }
.bc-design .scan-value { font-weight: 600; color: var(--ink); font-size: 14px; line-height: 1.35; }

/* 2-column doc layout */
.bc-design .doc-wrap { padding: clamp(32px, 4vw, 56px) 0 clamp(44px, 6vw, 84px); }
.bc-design .doc { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: clamp(32px, 5vw, 68px); align-items: start; }
.bc-design .doc-aside { position: sticky; top: 24px; display: grid; gap: 18px; }
.bc-design .doc-main > .sec { margin-bottom: clamp(34px, 5vw, 52px); scroll-margin-top: 24px; }
.bc-design .doc-main > .sec:last-child { margin-bottom: 0; }
.bc-design .doc-main h2 { font-size: clamp(23px, 3vw, 31px); line-height: 1.15; letter-spacing: -0.01em; margin: 0 0 14px; color: var(--ink); }
.bc-design .doc-main h3 { font-size: 18px; margin: 22px 0 8px; color: var(--ink); }
.bc-design .doc-main p { margin: 0 0 14px; }
.bc-design .doc-main a:not(.btn):not(.clink) { color: var(--teal); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.bc-design .doc-main a:not(.btn):not(.clink):hover { color: var(--coral); }

/* check-list */
.bc-design .ck { list-style: none; padding: 0; margin: 0 0 16px; display: grid; gap: 10px; }
.bc-design .ck li { position: relative; padding-left: 30px; }
.bc-design .ck li::before { content: ''; position: absolute; left: 0; top: 2px; width: 19px; height: 19px; border-radius: 50%; background: var(--mint); }
.bc-design .ck li::after { content: ''; position: absolute; left: 6px; top: 7px; width: 7px; height: 4px; border-left: 2px solid var(--teal); border-bottom: 2px solid var(--teal); transform: rotate(-45deg); }

/* funding / cost table */
.bc-design .ftable-wrap { overflow-x: auto; border: 1px solid var(--hair); border-radius: 14px; margin: 0 0 16px; }
.bc-design .ftable { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 440px; }
.bc-design .ftable th, .bc-design .ftable td { text-align: left; padding: 12px 16px; border-bottom: 1px solid var(--hair); vertical-align: top; }
.bc-design .ftable thead th { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); background: var(--surface-alt); font-weight: 700; }
.bc-design .ftable tbody tr:last-child td { border-bottom: 0; }
.bc-design .ftable .yes { color: var(--teal); font-weight: 700; white-space: nowrap; }

/* § / info callout */
.bc-design .callout { display: grid; grid-template-columns: 26px 1fr; gap: 15px; align-items: start; background: var(--coral-tint); border: 1px solid #f3d6cc; border-radius: 14px; padding: 20px 22px; margin: 0 0 16px; }
.bc-design .callout > svg { width: 26px; height: 26px; color: var(--coral); }
.bc-design .callout h3 { margin: 0 0 6px; font-size: 17px; }
.bc-design .callout p { margin: 0; }
.bc-design .callout p + p { margin-top: 10px; }

/* Rechenbeispiel box */
.bc-design .calc { background: var(--teal); color: #fff; border-radius: 16px; padding: clamp(22px, 3vw, 30px); margin: 0 0 16px; }
.bc-design .calc h3 { color: #fff; margin: 0 0 14px; font-size: 19px; }
.bc-design .calc-row { display: flex; justify-content: space-between; gap: 16px; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,0.18); }
.bc-design .calc-row.total { font-weight: 800; font-size: 18px; border-top: 2px solid rgba(255,255,255,0.4); border-bottom: 0; margin-top: 6px; padding-top: 14px; }
.bc-design .calc-row:has(+ .calc-row.total) { border-bottom: 0; } /* no thin line right above the total's thicker rule */
.bc-design .calc-row .v { color: var(--mint); font-weight: 700; white-space: nowrap; }
.bc-design .calc small { display: block; margin-top: 12px; color: rgba(255,255,255,0.72); font-size: 13px; }

/* Vertical step cards ("Schritt für Schritt" on funding pages) — numbered circle, card, chip, connector line */
.bc-design .vsteps { display: flex; flex-direction: column; gap: 16px; margin: 4px 0 0; position: relative; }
.bc-design .vsteps::before { content: ''; position: absolute; left: 51px; top: 52px; bottom: 52px; width: 2px; background: linear-gradient(180deg, var(--teal), var(--coral)); opacity: 0.18; z-index: 0; }
.bc-design .vstep { display: grid; grid-template-columns: 56px 1fr; gap: 20px; align-items: start; padding: 22px 24px; background: var(--surface); border: 1px solid var(--hair); border-radius: 14px; position: relative; z-index: 1; transition: border-color var(--transition), box-shadow var(--transition); }
.bc-design .vstep:hover { border-color: var(--teal); box-shadow: 0 8px 24px -8px rgba(0,79,90,0.16); }
.bc-design .vstep-num { width: 56px; height: 56px; background: var(--surface); color: var(--teal); border: 2px solid var(--teal); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 21px; flex-shrink: 0; transition: background var(--transition), color var(--transition); }
.bc-design .vstep:hover .vstep-num { background: var(--teal); color: #fff; }
.bc-design .vstep-body h4 { font-size: 17px; margin: 3px 0 6px; color: var(--ink); }
.bc-design .vstep-body p { margin: 0 0 12px; font-size: 15px; }
.bc-design .vstep-hint { display: inline-flex; align-items: center; gap: 7px; background: var(--surface-alt); color: var(--ink-2); padding: 6px 14px; border-radius: 999px; font-size: 13px; font-weight: 600; border: 1px solid var(--hair); }
.bc-design .vstep-hint svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 620px) {
  .bc-design .vstep { grid-template-columns: 44px 1fr; gap: 14px; padding: 18px; }
  .bc-design .vstep-num { width: 44px; height: 44px; font-size: 17px; }
  .bc-design .vsteps::before { left: 40px; top: 44px; bottom: 44px; }
}

/* sticky sidebar: TOC + mini CTA */
.bc-design .toc { background: var(--surface-alt); border: 1px solid var(--hair); border-radius: 16px; padding: 20px 22px; }
.bc-design .toc-title { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-3); margin-bottom: 10px; }
.bc-design .toc a { display: block; padding: 7px 0; color: var(--ink-2); font-size: 14px; font-weight: 500; border-bottom: 1px solid var(--hair); text-decoration: none; transition: color var(--transition); }
.bc-design .toc a:last-child { border-bottom: 0; }
.bc-design .toc a:hover, .bc-design .toc a.is-active { color: var(--teal); }
.bc-design .aside-cta { background: var(--teal); color: #fff; border-radius: 16px; padding: 22px 24px; }
.bc-design .aside-cta h3 { color: #fff; margin: 0 0 8px; font-size: 18px; }
.bc-design .aside-cta p { margin: 0 0 14px; color: rgba(255,255,255,0.82); font-size: 14px; }
.bc-design .aside-cta .btn { width: 100%; }
.bc-design .aside-cta .phone { display: block; margin-top: 10px; text-align: center; font-size: 13.5px; color: rgba(255,255,255,0.8); }
.bc-design .aside-cta .phone strong { color: #fff; }

@media (max-width: 980px) {
  .bc-design .doc { grid-template-columns: minmax(0, 1fr); }
  .bc-design .doc-aside { position: static; }
  .bc-design .toc { display: none; } /* TOC redundant on mobile */
}
@media (max-width: 620px) {
  .bc-design .scan { grid-template-columns: 1fr; }
}
