/* Shared footer for the calculator (index.html) and all content pages. Columns on top, small legal bar below. */
.ft { background: #fff; border-top: 1px solid #e3ebe4; margin-top: 40px; font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 13.5px; line-height: 1.6; color: #55635a; text-align: left }
.ft a { color: #55635a; text-decoration: none }
.ft a:hover { color: #2e7d32 }
.ft-cols { max-width: 1100px; margin: 0 auto; padding: 32px 16px 24px; display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 28px 40px }
.ft-h { margin: 0 0 10px; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8a9e90 }
.ft ul { list-style: none; margin: 0; padding: 0 }
.ft li { margin: 0 0 6px }

/* Brand column */
.ft-logo { display: inline-flex; align-items: center; gap: 10px }
.ft-logo img { width: 40px; height: 40px; flex-shrink: 0 }
.ft-logo strong { color: #2e7d32 }
.ft-privacy { margin: 12px 0 14px; color: #2e7d32; font-weight: 600; font-size: 12.5px }

/* Support: details instead of JS dropdown */
.ft-support { position: relative; display: inline-block }
.ft-support summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; border: 1px solid #2e7d32; color: #2e7d32; padding: 5px 14px; border-radius: 20px; font-size: 12px; font-weight: 600 }
.ft-support summary::-webkit-details-marker { display: none }
.ft-support summary:hover { background: #f4faf4 }
.ft-support .ft-menu { position: absolute; bottom: calc(100% + 8px); left: 0; z-index: 500; min-width: 200px; background: #fff; border: 1px solid #daeadc; border-radius: 12px; box-shadow: 0 12px 40px rgba(0,0,0,.18); padding: 6px }
.ft-support .ft-menu a { display: block; padding: 8px 12px; border-radius: 8px; color: #1f2b21 }
.ft-support .ft-menu a:hover { background: #f4faf4 }

/* More calculators: collapsed */
.ft-more summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; color: #55635a }
.ft-more summary::-webkit-details-marker { display: none }
.ft-more summary::after { content: "+"; display: inline-block; width: 18px; height: 18px; border-radius: 50%; background: #f4faf4; color: #2e7d32; font-weight: 700; font-size: 13px; line-height: 18px; text-align: center }
.ft-more[open] summary::after { content: "−" }
.ft-more summary:hover { color: #2e7d32 }
.ft-more ul { margin-top: 10px }

/* Legal bar */
.ft-bar { border-top: 1px solid #edf2ee }
.ft-bar-inner { max-width: 1100px; margin: 0 auto; padding: 14px 16px 18px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 20px; font-size: 12px; color: #8a9e90 }
.ft-bar a { color: #8a9e90 }
.ft-bar .sep { color: #cfd8dc; margin: 0 7px }

@media (max-width: 760px) {
  .ft-cols { grid-template-columns: 1fr 1fr }
  .ft-brand { grid-column: 1 / -1 }
}
@media (max-width: 560px) {
  .ft-cols { grid-template-columns: 1fr; gap: 22px }
  .ft-bar-inner { flex-direction: column }
}
