/* Only the Gewerbestrom guide. Existing company landing pages remain separate. */
.gw-page { --gw-ink:#183b40; --gw-green:#315f4e; --gw-line:#c7d6c9; --gw-wash:#f0f4ed; }
.gw-page .gw-service-route { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-top:24px; padding-bottom:22px; border-bottom:1px solid var(--gw-line); }
.gw-page .gw-service-route a { text-decoration:none; color:var(--gw-green); }
.gw-page .gw-service-route a:first-child { display:grid; gap:6px; }
.gw-page .gw-service-route span { font:10px/1.4 ui-monospace,monospace; letter-spacing:.1em; }
.gw-page .gw-service-route strong { font:500 16px/1.5 "Helvetica Neue",Arial,sans-serif; }
.gw-page .gw-service-route .gw-contact-link { font-size:14px; padding:12px 0; text-decoration:underline; text-underline-offset:5px; }
.gw-page .story-hero { display:grid; grid-template-columns:1.02fr .98fr!important; align-items:center; gap:50px; padding:48px 0 42px; }
.gw-page .story-title { min-width:0; }
.gw-page .story-title h1 { font:400 clamp(45px,4.65vw,69px)/1.08 Georgia,serif; letter-spacing:-.045em; margin:22px 0 26px; }
.gw-page .story-title>p { max-width:40ch; font-size:18px; line-height:1.75; }
.gw-page .story-actions { display:flex; flex-wrap:wrap; gap:18px 24px; }
.gw-page .gw-hero-photo { min-width:0; margin:0; padding:0; }
.gw-page .gw-hero-photo img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; border-radius:2px; }
.gw-page .gw-hero-photo figcaption { display:flex; justify-content:space-between; gap:15px; font:10px/1.6 "Helvetica Neue",Arial,sans-serif; color:#51665d; padding-top:13px; }
.gw-page .gw-hero-photo figcaption span:first-child { letter-spacing:.08em; }
.gw-page .story-byline { margin-bottom:0; }
.gw-page .gw-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:30px 0 56px; }
.gw-page .gw-overview>a { position:relative; display:block; padding:27px 26px 47px; border:1px solid var(--gw-line); margin-right:-1px; color:var(--gw-ink); background:var(--gw-wash); text-decoration:none; min-width:0; transition:background-color .18s ease; }
.gw-page .gw-overview>a:nth-child(2) { background:#e8efe5; }
.gw-page .gw-overview>a>span { font:10px/1.5 ui-monospace,monospace; letter-spacing:.08em; color:#49694e; }
.gw-page .gw-overview strong { display:block; margin:17px 0 11px; font:400 28px/1.12 Georgia,serif; letter-spacing:-.03em; }
.gw-page .gw-overview p { margin:0; font:15px/1.65 "Helvetica Neue",Arial,sans-serif; color:#405c50; max-width:27ch; }
.gw-page .gw-overview b { position:absolute; right:23px; bottom:17px; font:22px/1 Arial,sans-serif; font-weight:400; }
.gw-page .gw-overview>a:hover { background:#dce8d7; }
.gw-page .editorial-rich { grid-template-columns:205px minmax(0,1fr)!important; gap:54px!important; align-items:start; }
.gw-page .reading-nav { top:110px; max-height:calc(100vh - 130px); overflow:auto; padding-right:8px; }
.gw-page .gw-reading-shortcuts { display:grid; border-bottom:1px solid var(--gw-line); padding-bottom:20px; margin-bottom:14px; }
.gw-page .gw-reading-shortcuts>span { display:block; font:10px/1.6 ui-monospace,monospace; letter-spacing:.1em; color:#5a725c; margin:0 0 12px; }
.gw-page .gw-reading-shortcuts a { display:block; min-height:44px; padding:9px 0; color:#254d3e; text-decoration:none; font:14px/1.6 "Helvetica Neue",Arial,sans-serif; }
.gw-page .reading-nav>details>summary { font-size:12px; line-height:1.6; min-height:44px; }
.gw-page .reading-nav li a { font-size:12px; }
.gw-page .gw-section-label { border-top:2px solid #476e52; margin:0 0 31px; padding-top:18px; }
.gw-page .gw-section-label>span { font:10px/1.5 ui-monospace,monospace; letter-spacing:.13em; color:#42674d; }
.gw-page .gw-section-label>p { color:var(--gw-ink); font:400 31px/1.18 Georgia,serif; letter-spacing:-.025em; max-width:26ch; margin:14px 0 0; }
.gw-page .article-composed { max-width:none; min-width:0; }
.gw-page .article-chapter .chapter-heading { font-size:29px; max-width:34ch; margin-bottom:23px; line-height:1.23; }
.gw-page .article-chapter p { font-size:17px; line-height:1.8; }
.gw-page .article-chapter .chapter-kicker { font-size:10px; letter-spacing:.08em; }
.gw-page .article-chapter.gw-disclosure-chapter { padding:0; margin:0 0 20px; background:#f8faf6; border:1px solid #d0ddcf; }
.gw-page .gw-topic { padding:0; border:0; }
.gw-page .gw-topic>summary { display:block; position:relative; list-style:none; padding:24px 26px; cursor:pointer; }
.gw-page .gw-topic>summary::-webkit-details-marker { display:none; }
.gw-page .gw-topic>summary:after { display:none; }
.gw-page .gw-topic .chapter-heading { font:400 25px/1.23 Georgia,serif; color:var(--gw-ink); margin:0 0 11px; max-width:35ch; }
.gw-page .gw-topic .chapter-kicker { margin:0 0 11px; }
.gw-page .gw-topic-hint { display:block; font:15px/1.65 "Helvetica Neue",Arial,sans-serif; color:#4b6355; max-width:60ch; }
.gw-page .gw-topic-action { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:20px; font:600 12px/1.5 "Helvetica Neue",Arial,sans-serif; color:#345e47; }
.gw-page .gw-topic-action b { font:25px/1 Arial,sans-serif; }
.gw-page .gw-close-label { display:none; }
.gw-page .gw-topic[open] .gw-open-label { display:none; }
.gw-page .gw-topic[open] .gw-close-label { display:inline; }
.gw-page .gw-topic[open] .gw-topic-action b { transform:rotate(45deg); }
.gw-page .gw-topic[open]>summary { background:#edf3e9; }
.gw-page .gw-detail-body { padding:24px 26px 9px; border-top:1px solid #d0ddcf; }
.gw-page .gw-detail-body p { max-width:66ch; }
.gw-page .gw-topic>summary:hover { background:#edf3e9; }
.gw-page .gw-topic>summary:focus-visible { outline:3px solid #315d47; outline-offset:4px; }
.gw-page .gw-scene { display:grid; grid-template-columns:1.2fr .8fr; align-items:stretch; margin:26px 0 36px; background:#eaf0e5; border:1px solid #d0dccd; }
.gw-page .gw-scene img { display:block; width:100%; height:auto; min-height:0; object-fit:contain; margin:0; background:#e1e8dd; }
.gw-page .gw-scene figcaption { display:flex; flex-direction:column; justify-content:center; align-items:start; padding:26px; color:var(--gw-ink); }
.gw-page .gw-scene figcaption strong { font:400 25px/1.2 Georgia,serif; color:var(--gw-ink); letter-spacing:-.02em; }
.gw-page .gw-scene figcaption>span { display:block; margin:16px 0; font:15px/1.7 "Helvetica Neue",Arial,sans-serif; color:#3d5c4e; }
.gw-page .gw-scene figcaption small { font:9px/1.5 ui-monospace,monospace; letter-spacing:.09em; color:#526b59; }
.gw-page .gw-price-map { padding:22px; background:#eef3e9; border:1px solid #cbd8c5; margin-top:28px; }
.gw-page .gw-price-diagram { margin:0!important; width:100%; max-width:none!important; }
.gw-page .gw-price-diagram>img { object-fit:contain; width:100%; height:auto; }
.gw-page .gw-price-diagram figcaption { display:flex; gap:12px; flex-wrap:wrap; font-size:10px; padding-top:14px; color:#516b58; }
.gw-page .gw-selfcheck { background:#eef4e9; border:1px solid #cbdac5; padding:28px!important; }
.gw-page .gw-selfcheck>ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; padding:0; margin:0 0 20px; list-style:none; max-width:none; }
.gw-page .gw-selfcheck>ul>li { padding:0; border-top:1px solid #cad8c5; font:15px/1.7 "Helvetica Neue",Arial,sans-serif; }
.gw-page .gw-selfcheck>ul>li:before { display:none; }
.gw-page .gw-selfcheck label { display:flex; align-items:flex-start; gap:12px; min-height:54px; padding:17px 0; cursor:pointer; }
.gw-page .gw-selfcheck input { flex:0 0 19px; width:19px; height:19px; margin:4px 0 0; accent-color:#315f4e; }
.gw-page .gw-selfcheck input:checked+span { color:#315f4e; }
.gw-page .gw-selfcheck input:focus-visible { outline:3px solid #315d47; outline-offset:3px; }
.gw-page .gw-next-steps>ol { counter-reset:gw-step; list-style:none; padding:0; max-width:none; margin:26px 0; }
.gw-page .gw-next-steps>ol>li { counter-increment:gw-step; position:relative; padding:20px 0 20px 54px; border-top:1px solid #cbd9c7; font:16px/1.8 "Helvetica Neue",Arial,sans-serif; }
.gw-page .gw-next-steps>ol>li:before { content:counter(gw-step,decimal-leading-zero); position:absolute; left:0; top:20px; font:21px/1.5 Georgia,serif; color:#507d5a; }
.gw-page .gw-models { margin-top:26px; scroll-margin-top:100px; }
.gw-page .gw-models .model-panel[hidden] { display:none!important; }
.gw-page [id^="text-abschnitt-"],.gw-page #ratgeber { scroll-margin-top:112px; }
@media(max-width:1100px) {
 .gw-page .story-hero { gap:32px; }
 .gw-page .editorial-rich { grid-template-columns:180px minmax(0,1fr)!important; gap:32px!important; }
 .gw-page .gw-scene { grid-template-columns:1fr; }
 .gw-page .gw-scene img { max-height:none; }
 .gw-page .gw-scene figcaption { padding:25px; }
}
@media(max-width:850px) {
 .gw-page .story-hero { grid-template-columns:1fr!important; gap:27px; }
 .gw-page .story-title h1 { max-width:18ch; font-size:55px; }
 .gw-page .story-title>p { max-width:52ch; }
 .gw-page .gw-hero-photo img { max-height:none; }
 .gw-page .editorial-rich { display:block!important; }
 .gw-page .reading-nav { position:static; max-height:none; padding:0; margin-bottom:37px; overflow:visible; }
 .gw-page .gw-reading-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
 .gw-page .gw-reading-shortcuts>span { grid-column:1/-1; }
 .gw-page .gw-overview { padding-bottom:38px; }
 .gw-page .gw-overview>a { padding:23px 20px 46px; }
 .gw-page .gw-overview strong { font-size:25px; }
 .gw-page .gw-overview p { font-size:14px; }
 .gw-page .gw-scene { grid-template-columns:1.2fr .8fr; }
}
@media(max-width:600px) {
 .gw-page .gw-service-route { display:block; padding-top:20px; padding-bottom:17px; }
 .gw-page .gw-service-route strong { font-size:15px; }
 .gw-page .gw-service-route .gw-contact-link { display:inline-block; margin-top:6px; font-size:13px; }
 .gw-page .story-hero { padding:30px 0 25px; gap:27px; }
 .gw-page .story-title h1 { font-size:clamp(37px,8.7vw,51px); margin:19px 0 24px; }
 .gw-page .story-title>p { font-size:17px; line-height:1.75; }
 .gw-page .gw-hero-photo figcaption { display:block; font-size:10px; }
 .gw-page .gw-hero-photo figcaption>span { display:block; margin-bottom:4px; }
 .gw-page .gw-overview { grid-template-columns:1fr; padding-top:25px; }
 .gw-page .gw-overview>a { margin:0 0 -1px; padding:22px 22px 24px; }
 .gw-page .gw-overview strong { margin:11px 0 8px; font-size:27px; }
 .gw-page .gw-overview p { max-width:32ch; padding-right:26px; font-size:15px; }
 .gw-page .gw-overview b { bottom:23px; }
 .gw-page .gw-reading-shortcuts { gap:0 16px; }
 .gw-page .gw-reading-shortcuts a { font-size:13px; }
 .gw-page .gw-section-label { margin-bottom:25px; padding-top:17px; }
 .gw-page .gw-section-label>p { font-size:28px; }
 .gw-page .article-chapter .chapter-heading { font-size:27px; }
 .gw-page .gw-topic>summary { padding:21px 20px; }
 .gw-page .gw-topic .chapter-heading { font-size:24px; }
 .gw-page .gw-topic-hint { font-size:15px; }
 .gw-page .gw-detail-body { padding:21px 20px 4px; }
 .gw-page .gw-scene { grid-template-columns:1fr; margin:22px 0 32px; }
 .gw-page .gw-scene figcaption { padding:24px 21px; }
 .gw-page .gw-scene figcaption strong { font-size:26px; }
 .gw-page .gw-price-map { padding:15px; }
 .gw-page .gw-selfcheck { padding:24px 20px!important; }
 .gw-page .gw-selfcheck>ul { grid-template-columns:1fr; }
 .gw-page .gw-next-steps>ol>li { padding-left:42px; font-size:16px; }
 .gw-page .gw-models .model-tabs { flex-wrap:wrap; column-gap:20px; row-gap:15px; }
}
@media(prefers-reduced-motion:reduce) { .gw-page .gw-overview>a { transition:none; } }
@media print {
 .gw-page .gw-service-route,.gw-page .gw-overview,.gw-page .reading-nav { display:none!important; }
 .gw-page .story-hero { display:block!important; }
 .gw-page .gw-hero-photo { max-width:110mm; margin-top:15px; }
 .gw-page .gw-topic>.gw-detail-body { display:block!important; content-visibility:visible!important; }
 .gw-page .gw-topic::details-content { content-visibility:visible!important; }
 .gw-page .gw-topic-action { display:none; }
 .gw-page .gw-scene { break-inside:avoid; max-width:150mm; }
}
