/* Deliberately independent of tagDiv footer widget/Cloud layouts. */
body.ikcava-modern .ik-footer {
    margin-top: 40px;
    padding: 54px 0 0;
    border-top: 4px solid #247b31;
    background: #123e2e;
    color: #f4f8f1;
    font: 16px/1.7 system-ui, -apple-system, "Segoe UI", sans-serif;
}
.ik-footer, .ik-footer * { box-sizing: border-box; }
.ik-footer-inner { width: min(1220px, calc(100% - 48px)); margin: 0 auto; }
.ik-footer-grid { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 48px; padding-bottom: 36px; }
.ik-footer-grid > * { min-width: 0; }
.ik-footer p { margin: 0 0 10px; font: inherit; }
.ik-footer address { font-style: normal; }
.ik-footer h2 { margin: 0 0 22px; color: #fff; font: 700 21px/1.35 system-ui, sans-serif; }
.ik-footer h2::after { content: ""; display: block; width: 36px; height: 3px; background: #9bcc87; margin-top: 12px; }
.ik-footer a { color: #f4f8f1; text-decoration: none; text-underline-offset: 4px; }
.ik-footer a:hover { color: #c5e9b4; text-decoration: underline; }
.ik-footer a:focus-visible { outline: 3px solid #a6d5f0; outline-offset: 4px; border-radius: 3px; }
.ik-footer .ik-footer-name { display: inline-block; font-size: 40px; font-weight: 750; letter-spacing: .04em; line-height: 1.3; margin-bottom: 18px; }
.ik-footer-name span { color: #9bcc87; }
.ik-footer .ik-footer-muted, .ik-footer dt { color: #c1d4c6; }
.ik-footer dl { margin: 14px 0 0; }
.ik-footer dt { font-size: 13px; margin-top: 12px; }
.ik-footer dd { margin: 0; }
.ik-footer-account { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.ik-footer-nav { border-top: 1px solid #416453; padding: 20px 0; }
.ik-footer .ik-footer-links { display: flex; flex-wrap: wrap; gap: 6px 28px; margin: 0; padding: 0; list-style: none; }
.ik-footer .ik-footer-links li { margin: 0; padding: 0; list-style: none; font: inherit; }
.ik-footer-links a { display: inline-flex; align-items: center; min-height: 44px; }
.ik-footer-bottom { border-top: 1px solid #416453; padding: 20px 0 24px; color: #c1d4c6; font-size: 13px; }
@media (max-width: 900px) {
    .ik-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
    .ik-footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
    body.ikcava-modern .ik-footer { margin-top: 24px; padding-top: 36px; }
    .ik-footer-inner { width: calc(100% - 36px); }
    .ik-footer-grid { grid-template-columns: 1fr; gap: 28px; }
    .ik-footer .ik-footer-name { font-size: 34px; }
}
