.calc-hero { padding:50px 0 35px; text-align:center; }
.calc-hero .section-subtitle { max-width:800px; }
.financing-layout { max-width:1200px; margin:0 auto; padding:24px 24px 70px; }
.financing-layout h2, .financing-layout h3 { color:var(--color-text-bright); line-height:1.3; margin-bottom:16px; }
.financing-layout h2 { font-size:clamp(1.6rem,3vw,2.2rem); }
.financing-layout a { text-decoration:underline; text-underline-offset:3px; }
.fin-notice { padding:22px; border-left:4px solid var(--color-accent); background:var(--surface-2); border-radius:var(--border-radius-sm); margin-bottom:28px; }
.fin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-bottom:24px; align-items:start; }
.fin-card { min-width:0; padding:26px; margin:0; background:var(--surface-1); border:1px solid var(--color-border-light); border-radius:var(--border-radius-md); }
.fin-card legend { padding:0 8px; font-weight:600; color:var(--color-text-bright); }
.fin-card p { margin-bottom:16px; }
.fin-input-group { margin-bottom:22px; }
.fin-input-group label { display:block; margin-bottom:8px; color:var(--color-text-bright); font-size:.94rem; }
.fin-input-group input { width:100%; min-height:46px; padding:10px 12px; color:var(--color-text-bright); background:var(--color-dark); border:1px solid var(--color-border-light); border-radius:var(--border-radius-sm); font:inherit; }
.fin-input-group input:disabled { opacity:.55; }
.fin-input-group small { display:block; font-size:.82rem; line-height:1.6; margin-top:8px; color:var(--color-text-secondary); }
.financing-layout :is(input,button,summary,a):focus-visible { outline:3px solid var(--color-accent); outline-offset:4px; }
.financing-layout [hidden] { display:none!important; }
#fin-results { margin-top:36px; }
.fin-result-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:24px 0; }
.fin-result-card { min-width:0; padding:24px; border:1px solid var(--color-border-light); border-radius:var(--border-radius-md); background:var(--surface-1); }
.fin-result-card h3 { font-size:1rem; }
.fin-value { font-size:clamp(1.65rem,3vw,2.25rem); font-weight:700; color:var(--color-accent); margin-bottom:10px; }
.fin-result-card p:not(.fin-value) { font-size:.86rem; }
.fin-conclusion { font-size:1.2rem; color:var(--color-text-bright); font-weight:600; }
.fin-error { padding:20px; margin:24px 0; border:2px solid var(--color-accent); color:var(--color-text-bright); }
.fin-table-wrap { overflow-x:auto; margin:20px 0; }
.financing-layout table { border-collapse:collapse; width:100%; font-variant-numeric:tabular-nums; }
.financing-layout caption { text-align:left; font-size:.9rem; margin-bottom:16px; }
.financing-layout th, .financing-layout td { padding:14px 12px; text-align:left; border-bottom:1px solid var(--color-border-light); }
.financing-layout thead { color:var(--color-text-bright); background:var(--surface-2); }
.financing-layout details { margin:24px 0; }
.financing-layout summary { cursor:pointer; font-weight:600; color:var(--color-text-bright); }
.financing-layout details[open] summary { margin-bottom:20px; }
@media(max-width:760px) { .fin-grid, .fin-result-grid { grid-template-columns:1fr; } }
@media(max-width:540px) { .financing-layout { padding:24px 16px 60px; } .fin-card { padding:20px; } .financing-layout th, .financing-layout td { padding:12px 8px; font-size:.85rem; } }
#fin-results { scroll-margin-top:110px; }
