/* Responsive and calculator enhancements, shared by both knowledge pages. */
/* Visible return path stays outside the page's topic navigation, also on phones. */
.knowledge-page .topbar { gap:12px; }
.knowledge-page .brand { min-width:0; }
.knowledge-page .top-actions { flex-shrink:0; }
.knowledge-page .home-return { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:44px; padding:9px 14px; border:1px solid #b8c6c7; border-radius:8px; background:#fff; color:#123b49; font-size:.82rem; font-weight:750; white-space:nowrap; text-decoration:none; }
.knowledge-page .home-return svg { width:18px; height:18px; }
.knowledge-page .home-return:hover { background:#e8efeb; border-color:#496f72; }
.knowledge-page .return-overview { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; padding:26px clamp(20px,5vw,70px); background:#e5ede8; border-top:1px solid #c9d5ce; }
.knowledge-page .return-overview a { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:#173d49; font-size:.88rem; font-weight:700; text-underline-offset:5px; }
/* Preserve the full composition. Fixed tall frames cropped people and documents;
   the doctors' absolutely positioned image also gave its parent zero width. */
.knowledge-page .hero { grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:clamp(28px,3.5vw,56px); }
.knowledge-page .hero-copy { width:100%; }
.knowledge-page .hero-visual { width:100%; min-height:0; height:auto; align-self:start; justify-self:stretch; margin:0; overflow:hidden; border-radius:16px; background:#fff; box-shadow:0 18px 45px rgba(7,30,43,.12); }
.knowledge-page .hero-visual::before,.knowledge-page .hero-visual::after { display:none; }
.knowledge-page .hero-visual > img,.knowledge-page .retirement-image > img,.knowledge-page .minimum-story img,.knowledge-page .illness-story img,.knowledge-page .closing-visual > img { position:static; display:block; width:100%; height:auto; min-height:0; aspect-ratio:auto; object-fit:contain; border-radius:0; box-shadow:none; }
.knowledge-page .hero-visual > img { aspect-ratio:auto 3 / 2; }
.knowledge-page .hero-visual > img[width="1672"],.knowledge-page .closing-visual > img { aspect-ratio:auto 1672 / 941; }
.knowledge-page .retirement-image > img { aspect-ratio:auto 4 / 3; }
.knowledge-page .minimum-story img { aspect-ratio:auto 8 / 5; }
.knowledge-page .illness-story img { aspect-ratio:auto 371 / 232; }
.knowledge-page .hero-visual figcaption,.knowledge-page .hero-visual .image-caption { position:static; display:flex; width:100%; max-width:none; margin:0; padding:18px 20px; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; }
.knowledge-page .hero-visual figcaption { background:#0c2b3b; }
.knowledge-page .hero-visual .image-caption { background:#edf2ec; }
.knowledge-page .retirement-story { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(30px,4vw,62px); }
.knowledge-page .retirement-image { width:100%; min-width:0; overflow:hidden; border-radius:16px; background:#fff; box-shadow:0 18px 45px rgba(7,30,43,.1); }
.knowledge-page .retirement-image p { position:static; max-width:none; margin:0; padding:18px 20px; border-radius:0; box-shadow:none; }
.knowledge-page .minimum-story,.knowledge-page .illness-story,.knowledge-page .closing-visual { align-items:center; }
.knowledge-page .minimum-story > *,.knowledge-page .illness-story > *,.knowledge-page .closing-visual > * { min-width:0; }
.knowledge-page .minimum-copy h3,.knowledge-page .illness-copy h3 { overflow-wrap:anywhere; }
.knowledge-page .minimum-copy .fine-print { color:#516a73!important; }
.knowledge-page .minimum-scale { grid-template-columns:repeat(3,minmax(0,1fr)); }
.knowledge-page .minimum-scale > div { min-width:0; overflow-wrap:anywhere; }
.knowledge-page .minimum-story figure,.knowledge-page .illness-story figure { min-height:0; height:auto; }
.knowledge-page .minimum-story figcaption,.knowledge-page .illness-story figcaption { position:static; margin:0; padding:15px 18px; color:#fff; background:#0c2b3b; border:0; border-radius:0; backdrop-filter:none; font-size:.75rem; }
@media(max-width:1350px) { .knowledge-page .hero,.knowledge-page .retirement-story { grid-template-columns:minmax(0,1fr); } .knowledge-page .hero-visual { max-width:900px; margin-inline:auto; } }
@media(max-width:980px) { .knowledge-page .minimum-story,.knowledge-page .illness-story,.knowledge-page .closing-visual { grid-template-columns:minmax(0,1fr); } }
@media(max-width:620px) { .knowledge-page .minimum-scale { grid-template-columns:minmax(0,1fr); } .knowledge-page .minimum-scale small { font-size:.7rem; } }
@media(max-width:760px) { .knowledge-page .top-actions .print-button,.knowledge-page .top-actions .icon-button,.knowledge-page .top-actions .button { display:none; } .knowledge-page .home-return { padding-inline:11px; font-size:.79rem; } .knowledge-page .brand small { display:none; } }
@media(max-width:370px) { .knowledge-page .topbar { padding-inline:12px; gap:8px; } .knowledge-page .brand { gap:8px; } .knowledge-page .brand strong { font-size:.83rem; } .knowledge-page .brand-portrait { width:36px; height:36px; } .knowledge-page .home-return { padding-inline:9px; gap:5px; } }
@media print { .knowledge-page .home-return,.knowledge-page .return-overview { display:none!important; } }
.knowledge-page [hidden] { display:none!important; }
.knowledge-page main > section > * { min-width:0; }
.knowledge-page .hero-copy,.knowledge-page .hero-visual,.knowledge-page .situation-card,.knowledge-page .calculator-shell,.knowledge-page .calculator-inputs,.knowledge-page .calculator-results,.knowledge-page .field-card { min-width:0; }
.knowledge-page .hero-copy { max-width:100%; }
.knowledge-page fieldset { min-inline-size:0; }
.knowledge-page .field-heading { align-items:stretch; flex-direction:column; gap:8px; }
.knowledge-page .field-heading .number-unit { justify-content:flex-start; }
.knowledge-page .field-heading .number-unit input { width:100%; min-width:0; max-width:200px; height:46px; font-size:16px; padding:10px; }
.knowledge-page .statement-date input[type=month] { min-width:0; min-height:46px; font-size:16px; }
.knowledge-page .statement-input-grid legend { max-width:100%; overflow-wrap:anywhere; }
.knowledge-page .statement-help { color:#425b66; font-size:.8rem; line-height:1.55; }
.statement-help a { color:#245c59; }
.knowledge-page .statement-errors { padding:15px; border-left:3px solid #ad5237; color:#762f20; background:#fff0e7; border-radius:5px; font-size:.85rem; }
.knowledge-page input[aria-invalid=true] { border:2px solid #a4462d!important; }
.statement-result-link { display:inline-block; padding:13px 19px; color:#fff; background:#0b2c3a; border-radius:8px; text-decoration:none; font-size:.86rem; font-weight:700; }
.knowledge-page .statement-phases ol { font-size:.86rem; }
.knowledge-page .statement-phases { line-height:1.65; }
.knowledge-page .quote-panel a { white-space:normal; overflow-wrap:anywhere; }
.knowledge-page .gross-warning { font-size:.8rem; }
.knowledge-page .combined-result strong,.knowledge-page .combined-result small,.knowledge-page .combined-result p { color:#0b2c3a; }
.knowledge-page .mobile-jump-nav { flex-wrap:wrap; overflow:visible; }
.knowledge-page .comparison-card { min-width:0; overflow-wrap:anywhere; }
.knowledge-page .comparison-card.accent-card p,.knowledge-page .comparison-card.accent-card li,.knowledge-page .comparison-card.dark-card p,.knowledge-page .comparison-card.dark-card li { color:#d8e3e2; }
.knowledge-page .rule-table-wrap { max-width:100%; }
.table-scroll-hint { max-width:1160px; margin:0 auto 10px; font-size:.8rem; color:#425b66; }
@media(min-width:701px) { .table-scroll-hint { display:none; } }
.knowledge-page .budget-section { background:#f1f0e8; color:#142d38; }
.budget-heading { max-width:1060px; margin:0 auto 30px; }
.budget-heading h2 { max-width:700px; }
.budget-heading > p:last-child { max-width:700px; color:#52666f; font-size:1rem; }
.budget-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.94fr); gap:24px; max-width:1060px; margin:auto; }
.budget-inputs { min-width:0; padding:28px; border:1px solid #d1d9d4; background:#fff; border-radius:15px; }
.budget-context { margin:0 0 22px; color:#52666f; font-size:.85rem; }
.budget-inputs > label { display:flex; justify-content:space-between; font-size:.88rem; font-weight:750; margin:19px 0 8px; }
.budget-inputs > input { width:100%; min-height:50px; padding:12px; border:1px solid #9eadb2; border-radius:7px; font:inherit; font-size:18px; color:#0b2c3a; background:#fbfcfa; }
.budget-inputs > small { display:block; margin-top:7px; font-size:.75rem; color:#52666f; }
.budget-inputs .budget-confirm { display:flex; justify-content:flex-start; align-items:flex-start; gap:12px; padding:17px 0 4px; font-size:.8rem; font-weight:500; line-height:1.6; cursor:pointer; }
.budget-confirm input { width:21px; height:21px; flex:0 0 21px; accent-color:#396f6c; margin:3px 0 0; }
.budget-tools { display:flex; gap:10px; flex-wrap:wrap; margin-top:22px; }
.budget-tools button { padding:12px 14px; border:1px solid #a8b7b4; border-radius:7px; background:#fff; color:#0b2c3a; font-size:.78rem; cursor:pointer; min-height:44px; }
.budget-result { min-width:0; padding:32px; border-radius:15px; background:#0b2c3a; color:#fff; align-self:start; }
.budget-result h3 { margin:0 0 16px; font-size:1.35rem; line-height:1.35; color:#fff; }
.budget-result .budget-amount { display:block; font-size:clamp(2.4rem,4vw,4rem); color:#efd9b0; letter-spacing:-.04em; overflow-wrap:anywhere; line-height:1.15; }
.budget-result p { color:#d8e3e2; font-size:.87rem; }
.budget-result #budget-annual { font-size:.79rem; padding-bottom:15px; border-bottom:1px solid #45636c; }
.budget-result #budget-annual:empty { display:none; }
.budget-result .budget-example-label { border:1px solid #9a865e; border-radius:5px; padding:9px; color:#f4ddb4; font-size:.74rem; margin-top:0; }
.budget-save { display:block; margin-top:25px; padding:13px 16px; border:1px solid #efd9b0; color:#0b2c3a; background:#efd9b0; border-radius:7px; font-weight:700; font-size:.81rem; cursor:pointer; }
.budget-save:disabled { opacity:.6; cursor:not-allowed; }
.budget-next { display:inline-block; color:#fff; font-size:.85rem; margin-top:22px; text-underline-offset:5px; }
.budget-error { font-size:.8rem; color:#8b311e; margin:9px 0; }
.budget-explanation { max-width:1060px; margin:24px auto 0; padding:20px; background:#fff; border:1px solid #d1d9d4; border-radius:10px; font-size:.85rem; }
.budget-explanation summary { cursor:pointer; font-weight:700; padding-block:5px; }
.budget-explanation a { color:#245c59; }
.budget-inline-link { color:#245c59; font-size:.85rem; display:inline-block; padding:12px 0; }
.knowledge-page img[src="/assets/daniel-wuensch-hero-natuerlich-2026.jpg"] { object-fit:cover; object-position:50% 23%; }
.knowledge-page :focus-visible { outline:3px solid #b57927; outline-offset:4px; }
@media(max-width:1120px) { .knowledge-page .hero { grid-template-columns:minmax(0,1fr); } .knowledge-page .retirement-story { grid-template-columns:minmax(0,1fr); } .budget-layout { grid-template-columns:minmax(0,1fr); } }
@media(max-width:700px) {
  .knowledge-page .hero,.knowledge-page .section-heading,.knowledge-page .situation-buttons,.knowledge-page .statement-input-grid { grid-template-columns:minmax(0,1fr); }
  .knowledge-page .section-block { padding-left:20px; padding-right:20px; }
  .knowledge-page .hero-copy h1 { font-size:clamp(2.3rem,10vw,3.7rem); overflow-wrap:anywhere; }
  .knowledge-page .hero-copy .lead { font-size:1rem; }
  .knowledge-page .scale-heading { flex-wrap:wrap; }
  .knowledge-page .scale-heading label { min-width:0; }
  .knowledge-page .calculator-inputs,.knowledge-page .calculator-results { padding:22px; }
  .knowledge-page .result-cards { grid-template-columns:minmax(0,1fr); }
  .knowledge-page .results-heading { flex-wrap:wrap; gap:12px; }
  .knowledge-page .result-cards .pension-result { min-height:0; }
  .knowledge-page .pension-result strong { font-size:2rem; }
  .knowledge-page .field-card { padding:17px; }
  .knowledge-page .number-unit { max-width:100%; }
  .knowledge-page .situation-buttons button { white-space:normal; }
  .knowledge-page .region-result { grid-template-columns:minmax(0,1fr); }
  .knowledge-page .region-result p,.knowledge-page .source-grid a { overflow-wrap:anywhere; }
  .budget-inputs,.budget-result { padding:23px; }
  .budget-heading h2 { font-size:clamp(2rem,8vw,3rem); }
  .budget-confirm span { min-width:0; }
}
@media(prefers-reduced-motion:reduce) { .knowledge-page *, .knowledge-page *::before,.knowledge-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
@media print { .budget-layout { display:block; } .budget-tools,.budget-save,.budget-next { display:none; } .budget-result { background:#fff; color:#000; border:1px solid #444; } .budget-result h3,.budget-result p,.budget-result .budget-amount { color:#000; } }

@media(max-width:700px) { .knowledge-page .image-caption { max-width:calc(100% - 24px); min-width:0; white-space:normal; } }
