/* CHE website layer. All colors inherit the unchanged AppSuite brand tokens. */
.brand-caption { display:block; margin-top:.4rem; color:var(--text-muted); font-size:.67rem; font-weight:600; letter-spacing:.06em; }
.header-inner { gap:1.4rem; min-height:100px; }
.site-nav { gap:1.3rem; }
.nav-group { position:relative; }
.nav-group summary { cursor:pointer; font-size:.83rem; color:var(--text-muted); font-weight:650; padding:.75rem 0; list-style:none; }
.nav-group summary::-webkit-details-marker { display:none; }
.nav-group[open] summary { color:var(--primary); }
.nav-panel { position:absolute; top:100%; left:-1rem; min-width:270px; padding:.65rem; border:1px solid var(--border); border-radius:.8rem; background:var(--surface); box-shadow:var(--shadow-panel); }
.nav-panel a { display:block; padding:.65rem .75rem; border-radius:.4rem; }
.nav-panel a:hover { background:var(--primary-soft); }
.site-nav .nav-contact { background:var(--primary); color:var(--on-primary); padding:.6rem .9rem; border-radius:.5rem; }
.che-home { padding:5.7rem 0 5rem; }
.che-home h1 { font-size:clamp(2.7rem,4.9vw,4.5rem); max-width:650px; }
.che-home .hero-grid { grid-template-columns:1.1fr 1fr; gap:3rem; }
.home-services { background:var(--surface); }
.service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.service-card { padding:2rem; background:var(--canvas); border:1px solid var(--border); border-radius:1rem; }
.service-number { display:inline-block; color:var(--primary); font-size:.8rem; font-weight:800; margin-bottom:1.5rem; border-bottom:2px solid var(--primary); padding-bottom:.5rem; }
.service-card h2 { font-size:1.55rem; margin-bottom:1.75rem; line-height:1.2; }
.service-card p { font-size:.92rem; line-height:1.8; color:var(--text-muted); }
.service-card strong { color:var(--text); }
.service-card p:has(>strong:only-child) { margin-top:1.5rem; }
.cooperation .content-article { max-width:940px; text-align:center; }
.cooperation .content-article>img { max-height:220px; object-fit:contain; margin:0 auto 2.5rem; }
.cooperation h2 { font-size:clamp(1.8rem,3.7vw,3rem); }
.cooperation h3 { margin-bottom:1rem; }
.cooperation a { display:inline-flex; padding:.75rem 1.3rem; background:var(--primary); color:var(--on-primary); border-radius:.5rem; text-decoration:none; margin-top:1.5rem; }
.path-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.25rem; }
.path-card { padding:1.8rem; border:1px solid var(--border); border-radius:1rem; color:var(--text); text-decoration:none; background:var(--surface); }
.path-card h3 { margin:1.75rem 0; font-size:1.4rem; }
.path-card>span:last-child { color:var(--primary); font-size:.85rem; font-weight:700; }
.path-card:hover { border-color:var(--primary); background:var(--primary-soft); }
.page-hero { background:var(--surface); padding:4.5rem 0 3.5rem; border-bottom:1px solid var(--border); }
.page-hero h1 { max-width:1000px; margin-top:1.25rem; font-size:clamp(2.3rem,4.5vw,4rem); line-height:1.13; }
.article-section { padding-top:3.5rem; }
.article-layout { display:grid; grid-template-columns:minmax(0,830px) minmax(230px,1fr); gap:4.5rem; align-items:start; }
.article-layout.wide-article { display:block; }
.content-article { font-size:1.05rem; line-height:1.9; overflow-wrap:anywhere; min-width:0; }
.content-article p { margin-bottom:1.25rem; }
.content-article h2 { font-size:clamp(1.65rem,2.5vw,2.25rem); line-height:1.25; margin:2.8rem 0 1.2rem; letter-spacing:-.035em; }
.content-article h3,.content-article h4 { font-size:1.3rem; line-height:1.4; margin:2.4rem 0 1rem; }
.content-article>:first-child { margin-top:0; }
.content-article ul,.content-article ol { padding-left:1.5rem; margin:1.25rem 0 2rem; }
.content-article li { padding-left:.3rem; margin:.5rem 0; }
.content-article hr { border:0; border-top:1px solid var(--border); margin:2rem 0; }
.source-image { width:auto; max-width:100%; height:auto; margin:2.5rem 0; border-radius:.75rem; background:#fff; }
.content-article>img { max-height:520px; object-fit:contain; }
.content-article .download-link { display:inline-block; font-weight:650; }
.table-scroll { overflow-x:auto; max-width:100%; margin:2rem 0; }
.content-article table { border-collapse:collapse; min-width:100%; font-size:.9rem; }
.content-article td,.content-article th { border:1px solid var(--border); padding:.6rem .8rem; vertical-align:top; }
.content-article th { background:var(--surface-subtle); text-align:left; }
.article-aside { position:sticky; top:130px; padding:1.5rem; border:1px solid var(--border); border-radius:1rem; background:var(--surface); max-height:calc(100vh - 160px); overflow-y:auto; }
.article-aside nav { display:grid; gap:.85rem; margin-top:1.2rem; }
.article-aside nav a { font-size:.8rem; line-height:1.5; text-decoration:none; }
.article-aside h3 { margin:1.25rem 0 .75rem; }
.article-aside p:not(.eyebrow) { font-size:.88rem; color:var(--text-muted); margin-bottom:1.5rem; }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.blog-card { border:1px solid var(--border); border-radius:1rem; background:var(--surface); padding:1.5rem; font-size:.88rem; line-height:1.7; overflow:hidden; }
.blog-card>a:first-child { display:block; margin:-1.5rem -1.5rem 1.3rem; }
.blog-card>a:first-child img { margin:0; width:100%; height:190px; object-fit:cover; border-radius:0; }
.blog-card h3 { font-size:1.15rem; margin:0 0 1rem; }
.blog-card h3 a { color:var(--text); text-decoration:none; }
.blog-card:hover { border-color:var(--primary); }
.appsuite-illustrations { background:var(--surface); }
.appsuite-illustrations h2 { margin:1.25rem 0; }
.che-footer { background:var(--nav); color:var(--nav-text); padding:4rem 0 1.7rem; }
.footer-grid { display:grid; grid-template-columns:1.6fr repeat(4,1fr); gap:2rem; }
.che-footer a { display:block; color:var(--nav-text); text-decoration:none; font-size:.8rem; margin:.6rem 0; }
.che-footer a:hover { text-decoration:underline; }
.footer-intro img { width:170px; margin-bottom:1.5rem; }
.footer-intro p { font-size:.83rem; }
.che-footer h3 { font-size:.9rem; margin-bottom:1.4rem; color:var(--nav-text); }
.footer-bottom { margin-top:3rem; border-top:1px solid var(--border); padding-top:1.3rem; display:flex; justify-content:space-between; gap:1rem; font-size:.72rem; }
.footer-bottom>div { display:flex; gap:1.5rem; flex-wrap:wrap; }
.footer-bottom a { margin:0; font-size:.72rem; }
.page-index { columns:2; }
.page-index li { break-inside:avoid; }
@media(max-width:1100px) {
 .header-inner { gap:1rem; } .site-nav { gap:.8rem; } .brand { width:160px; } .theme-label { display:none; }
 .service-card { padding:1.5rem; } .article-layout { gap:2.5rem; }
 .footer-grid { grid-template-columns:1.5fr 1fr 1fr; }
}
@media(max-width:900px) {
 .site-nav { display:none; position:absolute; top:100%; left:0; right:0; background:var(--surface); padding:1.2rem 2rem 1.7rem; border-bottom:1px solid var(--border); align-items:stretch; max-height:calc(100dvh - 100px); overflow-y:auto; }
 .site-nav.is-open { display:flex; flex-direction:column; gap:.25rem; }
 .menu-toggle { display:block; } .header-tools { margin-left:auto; }
 .nav-panel { position:static; min-width:0; box-shadow:none; margin:.1rem 0 .75rem; }
 .site-nav>a { padding:.8rem 0; } .site-nav .nav-contact { text-align:center; }
 .che-home .hero-grid { grid-template-columns:1fr; gap:2rem; }
 .che-home h1 { max-width:700px; } .hero .product-stage { max-width:600px; }
 .service-grid { grid-template-columns:1fr; } .service-card h2 { max-width:550px; }
 .service-card { padding:2rem; } .path-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .article-layout { grid-template-columns:1fr; } .article-aside { position:static; max-height:none; }
 .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .appsuite-illustrations .hero-grid { grid-template-columns:1fr; }
}
@media(max-width:600px) {
 .header-inner { min-height:90px; } .brand { width:160px; } .brand-caption { font-size:.6rem; }
 .che-home { padding:3.5rem 0 3rem; } .che-home h1 { font-size:2.8rem; }
 .page-hero { padding:3rem 0 2.5rem; } .page-hero h1 { font-size:2.35rem; }
 .service-card { padding:1.5rem; } .blog-grid,.path-grid { grid-template-columns:1fr; }
 .content-article { font-size:1rem; line-height:1.85; }
 .footer-grid { grid-template-columns:1fr 1fr; gap:2rem 1rem; } .footer-intro { grid-column:1/-1; }
 .footer-bottom { flex-direction:column; } .footer-bottom>div { gap:1rem; }
 .page-index { columns:1; }
}

h1,h2,h3,h4 { overflow-wrap:anywhere; hyphens:auto; }
@media(max-width:900px) { :root:not(.js) .site-nav { position:static; display:flex; flex-direction:column; order:3; } :root:not(.js) .header-inner { flex-wrap:wrap; } }
.appsuite-illustrations { overflow:hidden; }
.article-meta { color:var(--text-muted); font-size:.75rem; margin-bottom:.8rem !important; } .article-excerpt { margin-top:0 !important; }

.brand { text-decoration:none; } .cooperation .source-image { width:260px; background:transparent; }

.content-article > a { display:inline-flex; padding:.6rem 1rem; border:1px solid var(--border); border-radius:.5rem; margin:.5rem .65rem .5rem 0; font-weight:650; text-decoration:none; }
.content-article > a:hover { border-color:var(--primary); }
/* Editorial layouts and interactive demo, on the existing software palette. */
.nav-group summary::after { content:none; }
.nav-group summary::marker { content:''; }
.nav-panel { z-index:20; }
.service-card { border-top:3px solid var(--primary); }
.service-card:nth-child(2) { border-top-color:var(--brand-accent); }
.service-card:nth-child(3) { border-top-color:#49C7CF; }
.service-details { margin-top:1.5rem; padding-top:1rem; border-top:1px solid var(--border); }
.service-details summary { color:var(--primary); font-weight:700; cursor:pointer; font-size:.86rem; }
.service-details[open] summary { margin-bottom:1rem; }
.cooperation { background:var(--primary-soft); }
.cooperation .content-article { display:grid; grid-template-columns:220px 1fr; column-gap:3rem; text-align:left; align-items:center; }
.cooperation .content-article>img { width:100%; grid-row:1/6; margin:0; max-height:none; }
.cooperation h2 { font-size:clamp(1.5rem,2.5vw,2.2rem); }
.cooperation h3 { font-size:1rem; color:var(--primary); }
.cooperation a { justify-self:start; }
.page-hero { position:relative; overflow:hidden; }
.page-hero::after { content:''; position:absolute; right:-70px; top:30px; width:200px; height:200px; border:28px solid var(--primary-soft); border-radius:50%; pointer-events:none; }
.page-hero .container { position:relative; z-index:1; }
.content-article p { max-width:76ch; }
.content-article > a,.article-pager a { align-items:center; justify-content:center; min-height:48px; }
.content-article > a > p,.article-pager a p { margin:0; }
.article-pager { display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; border-top:1px solid var(--border); margin-top:3rem; padding-top:1.5rem; }
.article-pager a { display:inline-flex; padding:.75rem 1.25rem; border:1px solid var(--border); border-radius:.65rem; font-weight:700; text-decoration:none; background:var(--surface); }
.article-pager a:hover { border-color:var(--primary); background:var(--primary-soft); }
.topic-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; list-style:none; padding:0 !important; }
.topic-grid li { padding:1.4rem !important; border:1px solid var(--border); border-radius:.75rem; background:var(--surface); margin:0; }
.topic-grid h4 { margin:0 0 .8rem; font-size:1.1rem; }
.topic-grid p { font-size:.9rem; line-height:1.75; margin:0; }
.method-steps { counter-reset:method; list-style:none; padding:0 !important; }
.method-steps li { padding:1rem 1rem 1rem 3.7rem; position:relative; background:var(--surface); border-bottom:1px solid var(--border); margin:0; font-size:.94rem; }
.method-steps li::before { counter-increment:method; content:counter(method,decimal-leading-zero); position:absolute; left:1rem; top:1rem; font-weight:800; color:var(--primary); }
.blog-card { transition:border-color .15s ease,transform .15s ease; }
.blog-card:hover { transform:translateY(-3px); }
.blog-card:first-child { grid-column:span 2; }
.blog-card:first-child>a:first-child img { height:260px; }
.product-body { grid-template-columns:64px minmax(0,1fr); }
.product-rail { display:flex; padding:1rem .5rem; }
.product-rail button { width:44px; min-height:44px; border:1px solid transparent; border-radius:.5rem; background:transparent; color:var(--nav-text); font:700 .7rem 'Manrope',sans-serif; cursor:pointer; }
.product-rail button:hover { border-color:#49C7CF; }
.product-rail button[aria-selected=true] { background:#49C7CF; color:#071B1D; }
.product-content { min-width:0; }
.product-content h3 { min-height:1.8em; }
.demo-bars,.demo-progress,.demo-matrix,.demo-mapping,.demo-chart { display:flex; height:56px; margin:1.15rem 0 .2rem; gap:.5rem; }
.demo-bars { align-items:end; }
.demo-bars i { flex:1; height:var(--value); background:var(--primary); border-radius:3px 3px 0 0; }
.demo-bars i:nth-child(4) { background:var(--brand-accent); }
.demo-progress { align-items:center; }
.demo-progress i { height:10px; flex:1; background:var(--primary); border-radius:5px; }
.demo-progress .pending { background:var(--border); }
.demo-matrix { align-items:center; }
.demo-matrix i { flex:1; display:grid; place-items:center; height:30px; border-radius:5px; background:var(--primary-soft); color:var(--primary); font-style:normal; }
.demo-mapping { align-items:center; justify-content:space-between; color:var(--primary); }
.demo-mapping span { padding:.4rem .8rem; background:var(--primary-soft); border:1px solid var(--border); border-radius:.4rem; font-size:.75rem; font-weight:700; }
.demo-chart { width:100%; }
.about-hero { padding:5rem 0 3.5rem; overflow:hidden; }
.about-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:4rem; align-items:center; }
.about-hero h1 { font-size:clamp(2.6rem,4.8vw,4.4rem); margin:1.5rem 0; line-height:1.08; }
.about-name { border-left:3px solid var(--brand-accent); padding-left:1rem; margin-top:2.5rem; }
.about-name strong,.about-name span { display:block; }
.about-name span { font-size:.8rem; color:var(--text-muted); margin-top:.3rem; }
.portrait { margin:0; }
.portrait-frame { background:#E1F3F4; border-radius:2rem 2rem 7rem 2rem; overflow:hidden; position:relative; border-bottom:5px solid var(--brand-accent); }
.portrait img { width:100%; height:auto; display:block; mix-blend-mode:multiply; }
.portrait figcaption { font-size:.72rem; color:var(--text-muted); margin:1rem 0 0; text-align:center; }
.about-facts { padding:2rem 0; background:var(--surface); border-block:1px solid var(--border); }
.facts-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.facts-grid>div { display:flex; align-items:center; gap:1.5rem; }
.facts-grid strong { font-size:2.8rem; color:var(--primary); font-weight:800; letter-spacing:-.05em; }
.facts-grid span { max-width:150px; font-size:.85rem; color:var(--text-muted); }
.about-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.about-services article { padding:2rem; border:1px solid var(--border); border-radius:1rem; background:var(--surface); }
.about-services h3 { margin-bottom:1rem; font-size:1.3rem; }
.about-services p { color:var(--text-muted); font-size:.9rem; line-height:1.8; }
.about-services a { display:inline-block; margin-top:1.25rem; font-size:.83rem; font-weight:700; text-decoration:none; }
.experience-section { background:var(--surface); }
.experience-grid { display:grid; grid-template-columns:1fr 1.6fr; gap:5rem; }
.experience-grid h2 { margin:1rem 0; }
.next-step { display:flex; justify-content:space-between; align-items:center; gap:3rem; padding:3rem; border-radius:1.5rem; background:var(--primary-soft); }
.next-step h2 { margin:1rem 0; }
.next-step p { max-width:560px; color:var(--text-muted); }
.next-step .button { flex-shrink:0; }
.contact-hero .hero-lead { max-width:700px; margin-top:1.5rem; }
.contact-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:2rem; }
.contact-primary { padding:3rem; border:1px solid var(--border); border-radius:1.5rem; background:var(--surface); border-top:4px solid var(--brand-accent); }
.contact-primary h2 { margin:1.5rem 0; }
.contact-primary>p { max-width:430px; }
.contact-email { display:block; font-size:clamp(1.3rem,2.6vw,2rem); font-weight:700; margin:2rem 0; text-decoration:none; overflow-wrap:anywhere; }
.contact-primary>.small { margin-top:1rem; }
.contact-details { display:grid; gap:1rem; }
.contact-details article { padding:2rem; border:1px solid var(--border); border-radius:1rem; }
.contact-details h3 { margin:1rem 0; }
.contact-phone { font-size:1.15rem; text-decoration:none; }
.opening-hours { margin-top:1.25rem; font-size:.8rem; color:var(--text-muted); }
.opening-hours div { display:flex; justify-content:space-between; gap:1rem; padding:.3rem 0; }
.opening-hours dd { margin:0; }
.contact-topics { background:var(--primary-soft); padding-top:2.5rem; padding-bottom:2.5rem; }
.topic-pills { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.25rem; }
.topic-pills a { padding:.7rem 1.2rem; border:1px solid var(--border); border-radius:2rem; background:var(--surface); text-decoration:none; font-size:.9rem; font-weight:650; }
@media(max-width:900px) {
 .about-grid,.experience-grid,.contact-grid { grid-template-columns:1fr; gap:2rem; }
 .portrait { max-width:520px; }
 .about-services { grid-template-columns:1fr; }
 .facts-grid { gap:1rem; }
 .facts-grid>div { flex-direction:column; align-items:flex-start; gap:.25rem; }
 .next-step { align-items:flex-start; flex-direction:column; gap:1.5rem; }
}
@media(max-width:600px) {
 .blog-card:first-child { grid-column:auto; }
 .blog-card:first-child>a:first-child img { height:190px; }
 .cooperation .content-article { display:block; text-align:left; }
 .cooperation .content-article>img { width:180px; margin:0 0 2rem; }
 .topic-grid { grid-template-columns:1fr; }
 .product-content { padding:1rem .85rem; }
 .product-content h3 { font-size:1.12rem; }
 .product-row { font-size:.68rem; flex-wrap:wrap; gap:.35rem; padding:.7rem 0; }
 .product-row .badge { font-size:.63rem; }
 .product-summary>div { padding:.6rem; }
 .product-summary span { font-size:.62rem; }
 .about-hero { padding:3rem 0; }
 .about-hero h1 { font-size:2.65rem; }
 .facts-grid strong { font-size:2rem; }
 .facts-grid span { font-size:.7rem; }
 .contact-primary,.next-step { padding:1.5rem; }
 .contact-details article { padding:1.5rem; }
 .contact-primary h2 { font-size:1.8rem; }
 .article-pager { flex-direction:column; }
}
@media(prefers-reduced-motion:reduce) { .blog-card { transition:none; } .blog-card:hover { transform:none; } }

/* Aktuelles: structured updates and event calendar. */
.updates-page { display:grid; gap:4.5rem; }
.updates-heading,.program-heading { display:grid; gap:.8rem; margin-bottom:1.75rem; }
.updates-heading h2,.program-heading h2 { margin:0; }
.updates-heading>p:last-child,.program-heading>p:last-child { margin:0; color:var(--text-muted); max-width:68ch; }
.featured-update { position:relative; overflow:hidden; padding:2rem; border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border)); border-radius:1.25rem; background:linear-gradient(135deg,var(--primary-soft),var(--surface)); box-shadow:var(--shadow-panel); }
.featured-update::after { content:''; position:absolute; right:-4rem; top:-5rem; width:12rem; height:12rem; border:2rem solid color-mix(in srgb,var(--primary) 12%,transparent); border-radius:50%; pointer-events:none; }
.featured-update>* { position:relative; z-index:1; }
.update-meta { display:flex; flex-wrap:wrap; gap:.6rem; margin-bottom:1.25rem; }
.update-meta time,.update-meta span,.event-format { display:inline-flex; align-items:center; min-height:1.75rem; padding:.25rem .7rem; border-radius:999px; background:var(--surface); color:var(--primary); font-size:.72rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.featured-update h3 { max-width:680px; font-size:clamp(1.45rem,2.5vw,2rem); margin-bottom:.9rem; }
.featured-update p { margin:0; max-width:72ch; }
.featured-update p+p { margin-top:.85rem; }
.update-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.update-card { display:flex; flex-direction:column; padding:1.35rem; border:1px solid var(--border); border-radius:1rem; background:var(--surface); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.update-card:hover { transform:translateY(-3px); border-color:var(--primary); box-shadow:0 14px 34px rgb(15 51 74 / 10%); }
.update-card time { color:var(--primary); font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.update-title-line time { white-space:nowrap; }
.update-card h3,.update-title-line { margin:.8rem 0 .65rem; font-size:1.02rem; font-weight:700; line-height:1.55; }
.update-card h3 a,.update-title-line a { color:var(--text); text-decoration:none; }
.update-card h3 a::after,.update-title-line a::after { content:' →'; color:var(--primary); }
.update-card p { margin:0; color:var(--text-muted); font-size:.9rem; line-height:1.65; }
.event-program { border-top:1px solid var(--border); padding-top:3.5rem; }
.event-month+.event-month { margin-top:3rem; }
.event-month-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1rem; padding-bottom:.75rem; border-bottom:1px solid var(--border); }
.event-month-heading h3 { margin:0; font-size:1.45rem; }
.event-month-heading>span { color:var(--text-muted); font-size:.78rem; font-weight:750; text-transform:uppercase; letter-spacing:.08em; }
.event-list { display:grid; gap:.75rem; }
.event-card { display:grid; grid-template-columns:6rem minmax(0,1fr); min-height:7rem; border:1px solid var(--border); border-radius:1rem; overflow:hidden; background:var(--surface); transition:border-color .2s ease,transform .2s ease; }
.event-card:hover { border-color:var(--primary); transform:translateX(3px); }
.event-date { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:.8rem; background:var(--primary-soft); color:var(--primary); font-size:.72rem; font-weight:800; letter-spacing:.08em; line-height:1.35; text-transform:uppercase; }
.event-date .event-day { color:var(--text); font-size:1.9rem; letter-spacing:-.05em; line-height:1; }
.event-details { align-self:center; padding:1.15rem 1.35rem; }
.event-details h4 { margin:.55rem 0 0; font-size:1.02rem; line-height:1.45; }
.event-details h4 a { color:var(--text); text-decoration-thickness:1px; text-decoration-color:color-mix(in srgb,var(--primary) 40%,transparent); }
.event-details h4 a:hover { color:var(--primary); text-decoration-color:currentColor; }
.event-details p { margin:.4rem 0 0; color:var(--text-muted); font-size:.84rem; line-height:1.55; }
.event-format { padding:0; min-height:auto; background:transparent; font-size:.68rem; }
@media(max-width:760px) {
 .updates-page { gap:3.5rem; }
 .featured-update { padding:1.4rem; }
 .update-grid { grid-template-columns:1fr; }
 .event-program { padding-top:2.75rem; }
 .event-card { grid-template-columns:4.8rem minmax(0,1fr); }
 .event-date .event-day { font-size:1.55rem; }
 .event-details { padding:1rem; }
}
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

/* Beratungsthemen: grouped editorial overview instead of card grid. */
.consulting-page { display:grid; gap:4.5rem; }
.consulting-intro { max-width:860px; }
.consulting-intro h2 { margin:.7rem 0 .8rem; max-width:760px; }
.consulting-summary { margin:0!important; max-width:72ch!important; font-size:clamp(1.05rem,1.5vw,1.2rem); line-height:1.75; }
.consulting-context { margin-top:1.4rem; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.consulting-context summary { padding:.9rem 0; color:var(--primary); font-size:.84rem; font-weight:800; cursor:pointer; }
.consulting-context[open] summary { border-bottom:1px solid var(--border); }
.consulting-context p { padding:1.2rem 0 .1rem; max-width:82ch; color:var(--text-muted); font-size:.94rem; line-height:1.75; }
.consulting-principle { display:grid; grid-template-columns:minmax(240px,.75fr) minmax(0,1.45fr); gap:3rem; align-items:center; padding:2.2rem 2.4rem; background:linear-gradient(135deg,var(--primary-soft),var(--surface)); border-left:4px solid var(--brand-accent); }
.consulting-principle h2 { margin:.65rem 0 0; font-size:clamp(1.45rem,2.4vw,2rem); }
.consulting-formula { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:.8rem; align-items:center; text-align:center; }
.consulting-formula span { font-size:.86rem; font-weight:800; line-height:1.4; }
.consulting-formula strong { color:var(--primary); font-size:1.4rem; }
.consulting-overview-copy { margin:-1.75rem 0 0!important; color:var(--text-muted); font-size:.86rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.consulting-section { display:grid; gap:2.5rem; }
.consulting-section-header { display:grid; grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr); gap:3rem; align-items:start; padding-bottom:1.6rem; border-bottom:2px solid var(--text); }
.consulting-section-header h2 { margin:0 0 .8rem; }
.consulting-section-header p { margin:0; color:var(--text-muted); }
.consulting-cluster { display:grid; grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr); gap:3rem; }
.consulting-cluster>h3 { margin:.15rem 0; color:var(--primary); font-size:1rem; letter-spacing:.04em; text-transform:uppercase; }
.consulting-list { border-top:1px solid var(--border); }
.consulting-cluster .consulting-list { border-top:0; }
.consulting-row { display:grid; grid-template-columns:2.5rem minmax(190px,.7fr) minmax(0,1.3fr); gap:1.5rem; align-items:start; padding:1.55rem 0; border-bottom:1px solid var(--border); }
.consulting-row h4 { margin:0; font-size:1.05rem; line-height:1.45; }
.consulting-row p { margin:0; max-width:none; color:var(--text-muted); font-size:.92rem; line-height:1.72; }
.consulting-index { padding-top:.15rem; color:var(--primary); font-size:.74rem; font-weight:800; letter-spacing:.08em; }
.consulting-more { display:inline-block; margin-top:.55rem; font-size:.76rem; font-weight:800; text-decoration:none; }
.consulting-methods .consulting-list { margin-left:calc(180px + 3rem); }
.consulting-cta { display:flex; align-items:center; justify-content:space-between; gap:3rem; padding:2.6rem; background:var(--nav); color:var(--nav-text); }
.consulting-cta h2 { margin:.65rem 0 .8rem; max-width:700px; }
.consulting-cta p { margin:0; max-width:680px; color:var(--nav-text); }
.consulting-cta .button { flex-shrink:0; background:var(--brand-accent); border-color:var(--brand-accent); color:#071B1D; }
@media(max-width:900px) {
 .consulting-principle,.consulting-section-header,.consulting-cluster { grid-template-columns:1fr; gap:1.3rem; }
 .consulting-methods .consulting-list { margin-left:0; }
 .consulting-cta { align-items:flex-start; flex-direction:column; gap:1.5rem; }
}
@media(max-width:680px) {
 .consulting-page { gap:3.5rem; }
 .consulting-principle { padding:1.5rem; }
 .consulting-formula { grid-template-columns:1fr; gap:.4rem; text-align:left; }
 .consulting-formula strong { line-height:1; }
 .consulting-row { grid-template-columns:2rem 1fr; gap:.7rem 1rem; }
 .consulting-row p { grid-column:2; }
 .consulting-cta { padding:1.6rem; }
}
