/* Scope ausschließlich für /fractional-cfo-deutschland/. Andere Seiten nicht betroffen. */
.gds-cfo-de { color: var(--gds-navy, #18324a); background: #fff; font-family: var(--gds-font, 'DM Sans', Arial, sans-serif); }
.gds-cfo-de .cfo-section,.gds-cfo-de .cfo-close { scroll-margin-top: 95px; }
.gds-cfo-de .cfo-section:target,.gds-cfo-de .cfo-close:target { outline-offset: -8px; }
.gds-cfo-de * { box-sizing: border-box; }
.gds-cfo-de .cfo-wrap { width: min(1120px, calc(100% - 48px)); margin-inline: auto; }
.gds-cfo-de .cfo-hero { background: #f1f5f5; border-bottom: 1px solid #e0e8e9; padding: clamp(60px,8vw,112px) 0 78px; }
.gds-cfo-de .cfo-hero-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(275px,.78fr); gap: clamp(28px,5vw,75px); align-items: center; }
.gds-cfo-de .cfo-kicker { margin: 0 0 18px; color: #297b83; font-weight: 750; font-size: .8rem; letter-spacing: .095em; text-transform: uppercase; }
.gds-cfo-de h1, .gds-cfo-de h2, .gds-cfo-de h3 { margin-top: 0; color: #18324a; overflow-wrap: break-word; }
.gds-cfo-de h1 { max-width: 17ch; font-size: clamp(2.2rem,4.5vw,4rem); font-weight: 740; line-height: 1.13; letter-spacing: -.035em; margin-bottom: 24px; }
.gds-cfo-de h2 { max-width: 26ch; font-size: clamp(1.85rem,3.1vw,2.8rem); font-weight: 730; line-height: 1.19; letter-spacing: -.025em; margin-bottom: 24px; }
.gds-cfo-de h3 { font-size: 1.15rem; line-height: 1.35; margin-bottom: 12px; }
.gds-cfo-de p, .gds-cfo-de li { line-height: 1.65; }
.gds-cfo-de .cfo-lead { font-size: clamp(1.04rem,1.4vw,1.17rem); max-width: 65ch; color: #435662; margin: 0 0 27px; }
.gds-cfo-de .cfo-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top: 26px; }
.gds-cfo-de .cfo-btn { display:inline-flex; justify-content:center; align-items:center; gap:12px; border-radius:7px; text-align:center; text-decoration:none; font-weight:750; line-height:1.35; min-height:49px; padding: 14px 20px; max-width:100%; transition:transform .18s ease,background .18s ease; }
.gds-cfo-de .cfo-btn:hover { transform: translateY(-2px); }
.gds-cfo-de .cfo-btn-primary { background:#207f82; color:#fff; }
.gds-cfo-de .cfo-btn-primary:hover { background:#17666d; color:#fff; }
.gds-cfo-de .cfo-btn-secondary { border:1px solid #aabfc4; color:#18324a; background:transparent; }
.gds-cfo-de .cfo-btn-secondary:hover { background:#e0eded; }
.gds-cfo-de .cfo-trust { margin-top:22px; font-size:.86rem; color:#5b6d78; }
.gds-cfo-de .cfo-hero-panel { background:#18324a; color:#eef5f5; padding:clamp(24px,3.4vw,40px); border-radius:13px; box-shadow:0 18px 45px rgba(21,50,71,.12); }
.gds-cfo-de .cfo-hero-panel strong { color:#fff; }
.gds-cfo-de .cfo-hero-panel ul { padding-left:21px; margin-bottom:0; }
.gds-cfo-de .cfo-panel-label { color:#91d6d5; text-transform:uppercase; letter-spacing:.09em; font-size:.78rem; font-weight:750; }
.gds-cfo-de .cfo-panel-title { color:#fff; font-size:1.55rem; font-weight:700; line-height:1.32; }
.gds-cfo-de .cfo-section { padding: clamp(66px,7vw,100px) 0; }
.gds-cfo-de .cfo-section-tint { background:#f5f8f8; }
.gds-cfo-de .cfo-section-lead { color:#526773; max-width:72ch; margin-top:-8px; margin-bottom:30px; }
.gds-cfo-de .cfo-grid { display:grid; gap:20px; }
.gds-cfo-de .cfo-grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gds-cfo-de .cfo-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.gds-cfo-de .cfo-card, .gds-cfo-de .cfo-price, .gds-cfo-de .cfo-compare, .gds-cfo-de .cfo-step { min-width:0; background:#fff; border:1px solid #dbe4e6; border-radius:10px; padding:clamp(22px,2.4vw,31px); }
.gds-cfo-de .cfo-card p:last-child, .gds-cfo-de .cfo-step p:last-child { margin-bottom:0; }
.gds-cfo-de .cfo-card-number { color:#2c8386; font-size:.84rem; font-weight:800; letter-spacing:.07em; display:block; margin-bottom:14px; }
.gds-cfo-de .cfo-compare-active { background:#ebf3f2; border-color:#91bcba; }
.gds-cfo-de .cfo-label { color:#267879; font-weight:750; font-size:.82rem; text-transform:uppercase; letter-spacing:.04em; }
.gds-cfo-de .cfo-note, .gds-cfo-de .cfo-legal { margin-top:26px; border-left:3px solid #34878b; background:#eff5f5; padding:16px 20px; color:#475c69; font-size:.91rem; }
.gds-cfo-de .cfo-step > span { display:grid; place-items:center; width:43px; height:43px; border-radius:50%; background:#d7eeee; color:#165963; font-weight:800; margin-bottom:18px; }
.gds-cfo-de .cfo-crossborder { margin-top:28px; padding:28px 32px; border-radius:10px; background:#e3ebed; }
.gds-cfo-de .cfo-crossborder p { margin-bottom:0; }
.gds-cfo-de .cfo-price { border-top:4px solid #277f84; }
.gds-cfo-de .cfo-model { font-weight:800; font-size:1.15rem; color:#18324a; }
.gds-cfo-de .cfo-price-value { font-size:clamp(1.8rem,2.7vw,2.4rem); font-weight:800; letter-spacing:-.03em; color:#166b71; line-height:1.3; margin:18px 0; }
.gds-cfo-de .cfo-price-value span { display:block; color:#536874; font-size:.95rem; font-weight:500; letter-spacing:0; }
.gds-cfo-de .cfo-price-value small { font-size:.85rem; font-weight:500; }
.gds-cfo-de .cfo-price-value { overflow-wrap: anywhere; }
.gds-cfo-de .cfo-price ul { padding-left:20px; margin-bottom:0; }
.gds-cfo-de .cfo-text-link { color:#0a6971; font-weight:700; text-underline-offset:3px; }
.gds-cfo-de .cfo-person-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(200px,.55fr); gap:clamp(30px,5vw,80px); align-items:center; }
.gds-cfo-de .cfo-portrait { max-width:100%; width:100%; height:auto; border-radius:10px; aspect-ratio:460 / 540; object-fit:cover; background:#e5ecee; }
.gds-cfo-de .cfo-narrow { max-width:900px; }
.gds-cfo-de .cfo-faq { border-top:1px solid #ccdadd; }
.gds-cfo-de .cfo-faq details { border-bottom:1px solid #ccdadd; padding:5px 0; }
.gds-cfo-de .cfo-faq summary { cursor:pointer; color:#18324a; font-weight:750; font-size:1.02rem; padding:20px 32px 20px 0; position:relative; }
.gds-cfo-de .cfo-faq summary::marker { color:#287f82; }
.gds-cfo-de .cfo-faq details p { margin:0 0 20px; color:#4a606c; }
.gds-cfo-de .cfo-close { background:#18324a; color:#eef5f5; padding:65px 0; }
.gds-cfo-de .cfo-close-inner { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(250px,.8fr); gap:48px; align-items:center; }
.gds-cfo-de .cfo-close h2 { color:#fff; }
.gds-cfo-de .cfo-close .cfo-kicker { color:#8bd4d1; }
.gds-cfo-de .cfo-close a { color:#fff; }
.gds-cfo-de .cfo-close .cfo-btn-light { background:#f3f7f7; color:#14374b; }
.gds-cfo-de .cfo-close-actions { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.gds-cfo-de .cfo-close-actions p { margin:0; font-size:.86rem; }
.gds-cfo-de .cfo-email { font-weight:650; text-underline-offset:4px; }
.gds-cfo-de a:focus-visible, .gds-cfo-de summary:focus-visible { outline:3px solid #2ab6bf; outline-offset:4px; }
@media (max-width: 940px) { .gds-cfo-de .cfo-hero-grid { grid-template-columns:1fr; } .gds-cfo-de .cfo-grid-3 { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 650px) { .gds-cfo-de .cfo-wrap { width:min(100% - 32px,1120px); } .gds-cfo-de .cfo-hero { padding:44px 0 54px; } .gds-cfo-de .cfo-grid-2,.gds-cfo-de .cfo-grid-3,.gds-cfo-de .cfo-close-inner,.gds-cfo-de .cfo-person-grid { grid-template-columns:1fr; } .gds-cfo-de .cfo-actions { flex-direction:column; align-items:stretch; } .gds-cfo-de .cfo-btn { width:100%; } .gds-cfo-de .cfo-close-actions { align-items:stretch; } .gds-cfo-de .cfo-close-actions p { overflow-wrap:anywhere; } .gds-cfo-de .cfo-crossborder { padding:22px; } .gds-cfo-de h1 { font-size:clamp(2.05rem,9vw,2.7rem); } }
@media (prefers-reduced-motion:reduce) { .gds-cfo-de .cfo-btn { transition:none; } .gds-cfo-de .cfo-btn:hover { transform:none; } }

/* Kontrast auf dunklen CFO-Bereichen gegen globale GDS-Absatzfarben absichern. */
.gds-cfo-de .cfo-hero-panel p:not(.cfo-panel-label):not(.cfo-panel-title),
.gds-cfo-de .cfo-hero-panel li,
.gds-cfo-de .cfo-close p:not(.cfo-kicker),
.gds-cfo-de .cfo-close .cfo-close-actions p { color:#eef5f5; }
