/* Beratung & Dienstleistung: SWS white/graphite, with restrained brand accents. */
.sws-consulting { color:#24292c; background:#fafaf9; }
.consult-banner { margin:0; height:clamp(140px,14vw,225px); overflow:hidden; }
.consult-banner img { width:100%; height:100%; object-fit:cover; object-position:center 55%; display:block; }
.consult-wrap { width:min(1200px,calc(100% - 96px)); margin:auto; }
.consult-section { padding:76px 0; border-bottom:1px solid #e7e7e4; scroll-margin-top:100px; }
.consult-hero { background:linear-gradient(130deg,#fff,#f1f1ef); }
.consult-alt { background:#f0f0ee; }
.consult-kicker { display:block; font-size:10px; font-weight:800; line-height:1.6; letter-spacing:.14em; color:#01665e; margin-bottom:20px; }
.consult-kicker::before { content:''; display:inline-block; width:28px; height:2px; background:#18a3a4; margin-right:12px; vertical-align:middle; }
.sws-consulting h1,.sws-consulting h2,.sws-consulting h3 { color:#24292c; letter-spacing:-.035em; margin:0; font-weight:650; }
.sws-consulting h1 { font-size:clamp(36px,3.5vw,52px); line-height:1.13; }
.sws-consulting h1 span { color:#01665e; }
.sws-consulting h2 { font-size:clamp(29px,3vw,42px); line-height:1.17; }
.sws-consulting h3 { font-size:23px; line-height:1.28; }
.sws-consulting p { font-size:15px; line-height:1.8; color:#697074; margin:18px 0 0; }
.sws-consulting .consult-lead { font-size:17px; max-width:650px; margin-top:26px; }
.consult-split { display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:center; }
.consult-actions { display:flex; align-items:center; gap:22px; flex-wrap:wrap; margin-top:30px; }
.consult-actions a:not(.sws-btn) { color:#01665e; font-size:13px; font-weight:700; text-decoration:none; }
.consult-overview { border:1px solid #dedfdd; border-radius:26px; padding:34px; background:linear-gradient(145deg,#fff,#f8f8f6); box-shadow:0 24px 50px rgba(16,20,22,.08),inset 0 1px 0 #fff; }
.consult-overview h2 { font-size:29px; }
.consult-overview ol { list-style:none; margin:26px 0 0; padding:0; }
.consult-overview li { display:flex; gap:20px; padding:17px 0; border-top:1px solid #e7e7e4; }
.consult-overview li b { font-size:12px; color:#01665e; padding-top:4px; }
.consult-overview strong { font-size:17px; }
.consult-overview li p { font-size:13px; margin:5px 0 0; }
.consult-note { font-size:10px; line-height:1.8; color:#7a8083; margin-top:14px; }
.consult-section-head { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; margin-bottom:32px; }
.consult-section-head p { margin:0; }
.consult-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:32px; }
.consult-card { min-width:0; display:flex; flex-direction:column; border:1px solid #dedfdd; border-radius:23px; padding:28px; background:linear-gradient(145deg,#fff,#f9f9f7); box-shadow:0 16px 36px rgba(16,20,22,.045),inset 0 1px 0 #fff; }
.consult-index,.consult-label { color:#01665e; font-size:10px; font-weight:800; letter-spacing:.08em; display:block; margin-bottom:22px; }
.consult-card p { font-size:14px; }
.consult-card > a { margin-top:auto; padding-top:24px; color:#01665e; font-size:12px; font-weight:750; text-underline-offset:4px; }
.consult-result { border-top:1px solid #e3e4e1; margin-top:25px; padding-top:18px; font-size:10px; font-weight:600; color:#7a8083; }
.consult-result strong { display:block; font-size:14px; color:#24292c; margin-top:8px; line-height:1.55; }
.consult-signature { margin-top:30px; position:relative; border:1px solid #dedfdd; border-radius:21px; background:#fff; padding:26px 32px; overflow:hidden; }
.consult-signature::before { content:''; position:absolute; left:0; top:25px; bottom:25px; width:3px; background:#18a3a4; }
.consult-signature > span { font-size:9px; font-weight:800; letter-spacing:.12em; color:#01665e; }
.consult-signature p { font-size:25px; line-height:1.4; letter-spacing:-.025em; color:#24292c; margin-top:12px; }
.consult-signature strong { font-weight:650; }
.consult-programs { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.consult-programs .consult-card { padding:32px; }
.consult-programs ul { padding-left:18px; font-size:13px; color:#626a6e; line-height:1.8; margin:20px 0 8px; }
.consult-programs li { padding-bottom:6px; }
.consult-funding-note { border-left:3px solid #01665e; padding:8px 0 8px 23px; margin-top:30px; }
.consult-funding-note strong { font-size:16px; }
.consult-funding-note p { margin:9px 0; font-size:13px; }
.consult-funding-note small { font-size:11px; line-height:1.7; color:#777e82; display:block; }
.consult-services { margin-top:34px; }
.consult-services article { display:grid; grid-template-columns:70px 1fr; gap:25px; padding:29px 0; border-top:1px solid #dedfdd; }
.consult-services article > span { width:48px; height:48px; display:grid; place-items:center; font-weight:750; font-size:12px; background:#fff; border:1px solid #dedfdd; border-radius:14px; color:#01665e; }
.consult-services h3 { font-size:24px; }
.consult-services p { max-width:900px; margin-top:11px; }
.sws-consulting .consult-scope { border-top:1px solid #dedfdd; padding-top:22px; font-size:12px; }
.consult-example { display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:center; background:#fff; padding:36px; margin-top:30px; border:1px solid #dedfdd; border-radius:24px; }
.consult-example h3 { font-size:28px; }
.consult-flow { display:grid; text-align:center; gap:7px; }
.consult-flow span { background:#f6f6f4; border:1px solid #dedfdd; padding:13px; border-radius:10px; font-size:12px; font-weight:650; }
.consult-flow b { color:#18a3a4; font-weight:500; }
.consult-faq { margin-top:32px; display:grid; gap:10px; }
.consult-faq details { background:#fff; border:1px solid #dedfdd; border-radius:14px; padding:0 24px; }
.consult-faq summary { cursor:pointer; padding:21px 0; font-size:15px; font-weight:650; }
.consult-faq details p { margin:0 0 24px; font-size:14px; max-width:950px; }
.consult-cta { padding:44px; border:1px solid #3b4246; border-radius:26px; background:radial-gradient(circle at 100% 0%,#3d4549,transparent 60%),#101416; box-shadow:0 24px 50px rgba(16,20,22,.12); }
.sws-consulting .consult-cta h2 { color:#fff; }
.consult-cta .consult-kicker { color:#b6d7d3; }
.sws-consulting .consult-cta p { color:#c3c9cd; max-width:750px; }
.consult-cta .consult-actions a:not(.sws-btn) { color:#fff; }
.consult-cta-foot { font-size:11px; color:#a5afb5; border-top:1px solid #454c50; margin-top:30px; padding-top:20px; }
.sws-consulting a:focus-visible,.sws-consulting summary:focus-visible { outline:2px solid #01665e; outline-offset:5px; }
@media(max-width:1000px) { .consult-split { gap:28px; } .consult-grid { grid-template-columns:1fr; } .consult-section-head { gap:30px; } }
@media(max-width:760px) { .consult-wrap { width:calc(100% - 40px); } .consult-section { padding:48px 0; } .consult-split,.consult-section-head,.consult-programs,.consult-example { grid-template-columns:1fr; gap:26px; } .consult-overview,.consult-card,.consult-programs .consult-card,.consult-example { padding:24px; border-radius:20px; } .sws-consulting h1 { font-size:35px; } .sws-consulting h2 { font-size:30px; } .consult-services article { grid-template-columns:40px 1fr; gap:18px; } .consult-services article > span { width:38px; height:38px; border-radius:11px; } .consult-services h3 { font-size:21px; } .consult-signature { padding:24px; } .consult-signature p { font-size:22px; } .consult-cta { padding:28px 24px; } .consult-actions { gap:18px; } .consult-banner { height:145px; } }

/* Continuous panoramic bands before the section content. */
.consult-section[data-image-band] { padding-top:0; }
.consult-editorial { position:relative; width:100%; margin:0 0 76px; padding:0; border:0; border-radius:0; overflow:hidden; background:#edeeeb; box-shadow:none; }
.consult-editorial img { display:block; width:100%; height:clamp(140px,14vw,225px); object-fit:cover; object-position:center 20%; }
.consult-editorial figcaption { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:760px) { .consult-editorial { margin-bottom:48px; } .consult-editorial img { height:145px; object-position:center 20%; } }

/* Shared SWS motifs: editorial grid, orbit lines and the signature conclusion. */
.consult-section { position:relative; isolation:isolate; }
.consult-section::before { content:''; position:absolute; inset:0; pointer-events:none; z-index:-1; background-image:linear-gradient(rgba(32,38,42,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(32,38,42,.025) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(120deg,transparent 15%,#000 100%); }
.consult-section[data-image-band]::before { top:clamp(140px,14vw,225px); }
.consult-overview,.consult-card,.consult-example,.consult-funding-note { position:relative; overflow:hidden; }
.consult-overview::after,.consult-example::after,.consult-cta::after { content:''; position:absolute; right:-90px; top:-135px; width:300px; height:300px; border-radius:50%; border:1px solid rgba(32,38,42,.06); box-shadow:0 0 0 42px rgba(32,38,42,.025),0 0 0 84px rgba(32,38,42,.015); pointer-events:none; z-index:0; }
.consult-overview > *,.consult-card > *,.consult-example > *,.consult-cta > * { position:relative; z-index:1; }
.consult-overview::before { content:''; position:absolute; top:32px; bottom:32px; left:0; width:3px; border-radius:0 3px 3px 0; background:linear-gradient(#01665e,#18a3a4); }
.consult-overview li b { display:grid; place-items:center; flex:0 0 34px; height:34px; padding:0; border-radius:10px; background:#f0f1ee; border:1px solid #dedfdd; margin-top:3px; }
.consult-card { background:radial-gradient(circle at 100% 0%,rgba(32,38,42,.035),transparent 42%),linear-gradient(145deg,#fff,#f9f9f7); transition:border-color .2s,box-shadow .2s; }
.consult-card:hover { border-color:#b8c1bd; box-shadow:0 20px 44px rgba(16,20,22,.07); }
.consult-card::before { content:''; position:absolute; top:29px; left:0; width:3px; height:45px; background:linear-gradient(#01665e,#18a3a4); border-radius:0 3px 3px 0; }
.consult-card-icon { display:grid; place-items:center; width:44px; height:44px; margin-bottom:22px; border-radius:13px; background:linear-gradient(145deg,#fff,#f0f1ee); color:#01665e; border:1px solid #dedfdd; box-shadow:0 6px 16px rgba(16,20,22,.04),inset 0 1px 0 #fff; }
.consult-card-icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.consult-result { background:#f0f1ee; border:1px solid #e3e4e1; border-radius:12px; padding:16px; margin-top:auto; }
.consult-grid .consult-card p { margin-bottom:24px; }
.consult-label { align-self:flex-start; background:#f0f1ee; padding:7px 10px; border:1px solid #dedfdd; border-radius:99px; font-size:9px; }
.consult-programs .consult-card > a { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #e3e4e1; padding-top:18px; margin-top:18px; }
.consult-funding-note { border:1px solid #dedfdd; border-radius:20px; padding:26px 30px; background:linear-gradient(135deg,#fff,#f8f8f6); box-shadow:0 12px 30px rgba(16,20,22,.04); }
.consult-funding-note::before { content:''; position:absolute; left:0; top:26px; bottom:26px; width:3px; background:linear-gradient(#01665e,#18a3a4); }
.consult-services { position:relative; }
.consult-services::before { content:''; position:absolute; top:30px; bottom:30px; left:24px; width:1px; background:linear-gradient(#01665e,#cdd2ce 75%,transparent); }
.consult-services article { position:relative; margin-bottom:14px; padding:27px 30px; border:1px solid #dedfdd; border-radius:20px; background:rgba(255,255,255,.94); box-shadow:0 10px 28px rgba(16,20,22,.035); }
.consult-services article > span { position:relative; background:linear-gradient(145deg,#30383b,#101416); color:#fff; border-color:#3a4246; box-shadow:0 7px 16px rgba(16,20,22,.1); }
.sws-consulting .consult-conclusion .sws-conclusion-statement { margin:0; color:#24292c; font-size:clamp(23px,2.15vw,30px); line-height:1.35; font-weight:650; }
.consult-example { box-shadow:0 18px 42px rgba(16,20,22,.05),inset 0 1px 0 #fff; }
.consult-flow span:last-child { background:#252d30; border-color:#3a4246; color:#fff; }
.consult-faq summary { display:flex; align-items:center; justify-content:space-between; gap:22px; list-style:none; }
.consult-faq summary::-webkit-details-marker { display:none; }
.consult-faq summary::after { content:'+'; color:#01665e; font-size:24px; font-weight:400; }
.consult-faq details[open] summary::after { content:'−'; }
.consult-faq details[open] { box-shadow:0 12px 30px rgba(16,20,22,.04); border-color:#b8c1bd; }
.consult-cta { position:relative; overflow:hidden; }
.consult-cta::after { border-color:rgba(255,255,255,.15); box-shadow:0 0 0 42px rgba(255,255,255,.035),0 0 0 84px rgba(255,255,255,.02); }
@media(max-width:760px) { .consult-section[data-image-band]::before { top:145px; } .consult-services article { padding:22px 18px; gap:14px; } .consult-funding-note { padding:24px; } .consult-card-icon { width:39px; height:39px; border-radius:11px; } .consult-result { padding:14px; } }
@media(prefers-reduced-motion:reduce) { .consult-card { transition:none; } }

/* Productwelten panel hierarchy: one editorial shell with compact inner cards. */
.consult-section { padding-block:48px; background:transparent; border-bottom:0; }
.consult-hero { padding-block:64px; background:linear-gradient(130deg,#fff,#f3f3f1); }
.consult-section::before { opacity:.45; }
.consult-section[data-image-band] { padding-top:0; }
.consult-editorial { margin-bottom:48px; }
.consult-panel {
 position:relative; isolation:isolate; overflow:hidden; padding:38px 40px;
 border:1px solid rgba(75,80,83,.12); border-radius:24px;
 background:radial-gradient(circle at 96% 0%,rgba(132,134,135,.055),transparent 38%),linear-gradient(145deg,rgba(255,255,255,.97),rgba(249,249,248,.94));
 box-shadow:0 24px 60px rgba(41,46,49,.075),0 7px 20px rgba(75,80,83,.035),inset 0 1px 0 rgba(255,255,255,.95);
}
.consult-panel::after { content:''; position:absolute; pointer-events:none; z-index:-1; right:-140px; top:-180px; width:360px; height:360px; border:1px solid rgba(32,38,42,.055); border-radius:50%; box-shadow:0 0 0 46px rgba(32,38,42,.016),0 0 0 92px rgba(32,38,42,.01); }
.consult-panel > * { position:relative; z-index:1; }
.consult-panel .consult-kicker { margin-bottom:22px; font-size:10px; }
.sws-consulting .consult-panel h2 { max-width:900px; font-size:32px; font-weight:650; line-height:1.25; letter-spacing:-.03em; }
.sws-consulting .consult-panel h2 span { color:#01665e; }
.consult-section-head { display:block; margin-bottom:28px; }
.consult-section-head p { margin-top:23px; max-width:940px; font-size:16px; line-height:1.75; }
.consult-panel .consult-grid { gap:14px; margin-top:28px; }
.consult-panel .consult-card { padding:24px 25px 24px 28px; border-radius:17px; border-color:rgba(75,80,83,.13); background:rgba(255,255,255,.8); box-shadow:0 10px 28px rgba(41,46,49,.045),inset 0 1px 0 #fff; }
.consult-panel .consult-card::before { top:24px; height:44px; }
.consult-panel .consult-card:hover { border-color:#c7ceca; box-shadow:0 12px 30px rgba(41,46,49,.06); }
.consult-panel .consult-index { font-size:9px; margin-bottom:16px; }
.sws-consulting .consult-panel .consult-card h3 { font-size:19px; line-height:1.35; letter-spacing:-.025em; }
.consult-panel .consult-card p { font-size:14px; line-height:1.7; margin-top:11px; }
.consult-panel .consult-grid .consult-card p { margin-bottom:18px; }
.consult-panel .consult-result { background:transparent; border:0; border-top:1px solid #e5e6e3; border-radius:0; padding:14px 0 0; font-size:9px; }
.consult-panel .consult-result strong { margin-top:6px; font-size:13px; font-weight:600; }
.consult-panel .consult-programs { gap:16px; }
.consult-panel .consult-programs .consult-card { padding:26px 28px; }
.sws-consulting .consult-panel .consult-programs h3 { font-size:22px; }
.consult-panel .consult-label { background:transparent; border:0; border-radius:0; padding:0; margin-bottom:17px; }
.consult-panel .consult-funding-note { background:linear-gradient(135deg,#f2f2f1,#f6f6f5); border-color:rgba(75,80,83,.08); border-radius:17px; box-shadow:inset 0 1px 0 #fff; margin-top:22px; padding:24px 26px; }
.consult-panel .consult-funding-note::before { display:none; }
.consult-services { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:28px; }
.consult-services::before { display:none; }
.consult-services article { grid-template-columns:36px minmax(0,1fr); align-items:start; gap:16px; margin:0; padding:25px; border-radius:17px; box-shadow:0 10px 28px rgba(41,46,49,.045),inset 0 1px 0 #fff; }
.consult-services article > span { width:34px; height:34px; border-radius:10px; background:#f2f2f0; border-color:#dedfdd; color:#01665e; font-size:10px; box-shadow:inset 0 1px 0 #fff; }
.sws-consulting .consult-services h3 { font-size:19px; line-height:1.35; letter-spacing:-.025em; }
.consult-services p { font-size:14px; line-height:1.7; margin-top:11px; }
.sws-consulting .consult-scope { border:0; padding-top:0; margin-top:22px; }
.consult-panel .consult-conclusion { margin-top:28px; background:rgba(255,255,255,.7); box-shadow:none; padding:26px 28px; border-radius:18px; }
.sws-consulting .consult-conclusion .sws-conclusion-statement { font-size:25px; line-height:1.35; }
.consult-panel .consult-faq { margin-top:26px; }
.consult-panel .consult-faq details { border-radius:12px; }
@media(max-width:1000px) { .consult-panel .consult-grid { grid-template-columns:1fr; } .consult-services { grid-template-columns:1fr; } }
@media(max-width:760px) {
 .consult-section { padding-block:30px; } .consult-hero { padding-block:40px; }
 .consult-section[data-image-band] { padding-top:0; } .consult-editorial { margin-bottom:30px; }
 .consult-panel { padding:25px 20px; border-radius:20px; }
 .sws-consulting .consult-panel h2 { font-size:26px; line-height:1.25; }
 .consult-section-head p { font-size:15px; margin-top:18px; }
 .consult-panel .consult-card,.consult-panel .consult-programs .consult-card { padding:23px; }
 .consult-panel .consult-programs { gap:14px; }
 .consult-panel .consult-conclusion { padding:22px; }
 .sws-consulting .consult-conclusion .sws-conclusion-statement { font-size:22px; }
 .consult-services article { padding:21px 18px; gap:13px; }
 .consult-panel .consult-funding-note { padding:22px; }
}

/* Funding orientation stays within the established editorial panel. */
.consult-programs-extra { margin-top:16px; }
.consult-fit { margin-top:30px; padding-top:28px; border-top:1px solid #dedfdd; }
.sws-consulting .consult-fit > h3 { font-size:24px; line-height:1.3; }
.consult-fit > p { font-size:14px; margin-top:12px; }
.consult-fit .consult-faq { margin-top:20px; }
