/* Vertiefende Planungsseiten; gemeinsame Gestaltung mit der Produktseite. */
.planning-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.planning-card { min-width: 0; padding: 30px; border: 1px solid var(--line); border-radius: 10px; background: var(--soft); }
.planning-card h3 { font-size: 1.35rem; line-height: 1.4; margin-bottom: 14px; }
.planning-card p { margin-bottom: 12px; }
.planning-card .text-link { line-height: 1.5; }
.planning-breadcrumb { display: block; padding-top: 26px; font-size: .875rem; color: var(--muted); }
.planning-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.planning-breadcrumb li + li::before { content: '/'; margin-right: 8px; color: var(--muted); }
.planning-breadcrumb a { text-decoration: underline; text-underline-offset: 3px; }
.planning-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; padding-block: 48px 64px; }
.planning-hero > *, .planning-layout > * { min-width: 0; }
.planning-hero h1 { font-size: clamp(2rem, 3.4vw, 3.2rem); line-height: 1.16; letter-spacing: -.045em; overflow-wrap: break-word; hyphens: manual; }
.planning-hero .hero-description { margin-top: 24px; }
.planning-hero figure { margin: 0; }
.planning-hero img { width: 100%; height: auto; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 16px 40px #102e3812; }
.planning-hero figcaption { font-size: .8125rem; line-height: 1.6; color: var(--muted); margin-top: 12px; }
.planning-topics { padding: 22px 0; border-block: 1px solid var(--line); }
.planning-topics ul { display: flex; flex-wrap: wrap; gap: 8px 26px; padding: 0; margin: 0; list-style: none; }
.planning-topics a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9375rem; text-decoration: underline; text-underline-offset: 4px; }
.planning-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr); gap: 70px; padding-block: 60px 70px; align-items: start; }
.planning-content section + section { margin-top: 48px; padding-top: 36px; border-top: 1px solid var(--line); }
.planning-content h2 { font-size: 1.9rem; line-height: 1.3; margin-bottom: 22px; }
.planning-content h3 { font-size: 1.2rem; line-height: 1.5; margin: 26px 0 12px; }
.planning-content p + p { margin-top: 16px; }
.planning-content ul, .planning-content ol { padding-left: 24px; color: var(--muted); }
.planning-content li { margin-bottom: 14px; padding-left: 5px; line-height: 1.8; }
.planning-content li strong { color: var(--ink); }
.planning-content a, .planning-aside a { color: var(--green); text-decoration: underline; text-underline-offset: 3px; }
.planning-content details > div { padding: 0 0 22px; }
.planning-aside { padding: 28px; border-radius: 10px; background: var(--soft); }
.planning-aside h2 { font-size: 1.25rem; line-height: 1.4; margin-bottom: 18px; }
.planning-aside p + p { margin-top: 18px; }
.planning-aside p { font-size: .9375rem; }
.planning-aside .button { display: flex; margin-top: 22px; color: white; text-decoration: none; }
.planning-note { padding: 20px 24px; background: #fff7e8; border-left: 3px solid var(--gold); margin-top: 24px; }
.planning-related { padding-block: 60px; border-top: 1px solid var(--line); }
.planning-related h2 { margin-bottom: 30px; font-size: 2rem; }
.planning-footer-links { padding-block: 22px; border-top: 1px solid var(--line); }
.planning-footer-links nav { flex-wrap: wrap; gap: 10px 26px; }
.planning-footer-links a { display: inline-flex; align-items: center; min-height: 44px; line-height: 1.5; }
.planning-home-intro { max-width: 72ch; }
.planning-home-intro h2 { margin-bottom: 20px; }
.planning-home-intro p { margin-bottom: 32px; }
.planning-inline-shot { margin: 26px 0; }
.planning-inline-shot img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 10px; }
.planning-inline-shot figcaption { margin-top: 12px; font-size: .875rem; line-height: 1.6; color: var(--muted); }
.planning-content summary { overflow-wrap: anywhere; }
@media (max-width: 980px) {
  .planning-hero { grid-template-columns: 1fr; gap: 32px; }
  .planning-hero figure { max-width: 720px; }
  .planning-layout { grid-template-columns: 1fr; gap: 32px; }
  .planning-aside { max-width: 720px; }
}
@media (max-width: 700px) {
  .planning-hero h1 { hyphens: auto; }
  .planning-grid { grid-template-columns: 1fr; gap: 18px; }
  .planning-card { padding: 24px; }
  .planning-hero { padding-block: 32px 40px; }
  .planning-layout { padding-block: 40px; }
  .planning-content h2 { font-size: 1.6rem; }
  .planning-content h2, .planning-card h3, .planning-related h2 { overflow-wrap: break-word; hyphens: auto; }
  .planning-related { padding-block: 40px; }
}
@media (max-width: 380px) {
  .faq-layout { grid-template-columns: minmax(0, 1fr); }
  .faq-layout > div { min-width: 0; }
  .faq-layout h2, .faq-layout summary { overflow-wrap: break-word; hyphens: auto; }
}
@media print {
  .planning-hero, .planning-layout { display: block; }
  .planning-hero figure { max-width: 60%; margin-top: 24px; }
  .planning-aside, .planning-topics, .planning-related, .planning-footer-links { display: none; }
}

.planning-related .planning-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }

/* Current feature captures retain the original application aspect ratio. */
.feature-capture{margin:1.5rem 0}.feature-capture img{display:block;width:100%;height:auto;border:1px solid var(--line,#d5e3de);border-radius:10px}.feature-capture figcaption{font-size:.82rem;line-height:1.5;color:#536c72;margin-top:.65rem}.planning-aside .button{white-space:normal}.software-card-copy{padding:1.3rem}.software-card-copy h3{margin-top:0}

.yield-workflow { list-style: none; padding: 0 !important; margin: 26px 0; }
.yield-workflow > li { padding: 22px 24px; border: 1px solid var(--line); border-radius: 10px; background: var(--soft); }
.yield-workflow h3 { margin-top: 0; }
.yield-workflow p { color: var(--muted); }
.yield-workflow a, .availability-note a { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 700px) {
  .yield-workflow > li { padding: 18px; }
  .yield-workflow h3 { overflow-wrap: break-word; hyphens: auto; }
}

/* SonnenBilanz browser offer; desktop licensing remains a separate choice. */
.browser-hero-link{display:inline-flex;margin-top:14px}
.browser-offer{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding-block:82px}
.browser-offer-copy>p:not(.eyebrow){max-width:58ch;line-height:1.75;color:var(--muted);margin-block:22px}
.browser-offer .browser-offer-note{font-size:.9rem;line-height:1.65;max-width:54ch}
.browser-benefits{padding:12px 30px;background:var(--soft);border:1px solid var(--line);border-radius:12px}
.browser-benefits article{display:flex;gap:22px;padding:28px 0;align-items:flex-start}
.browser-benefits article+article{border-top:1px solid var(--line)}
.browser-benefits article>span{color:var(--green);font-size:.85rem;font-weight:700;letter-spacing:.08em;padding-top:5px}
.browser-benefits h3{font-size:1.2rem;margin:0 0 10px}
.browser-benefits p{color:var(--muted);font-size:.95rem;line-height:1.7;margin:0}
@media(max-width:900px){.browser-offer{grid-template-columns:1fr;gap:26px;padding-block:58px}.browser-benefits{padding:4px 24px}}
@media print{.browser-offer{break-inside:avoid}.browser-offer .button{display:none}}
