/* Blocksy owns rows, surfaces and typography. Only its missing two-level,
 * seven-column footer-menu layout needs this component adapter. */
.ct-footer [data-column] { min-width: 0; }
.ct-footer [data-row] > .ct-container-fluid { width: 100%; }
.ct-footer [data-id="logo"] .site-logo-container { max-width: 100%; }
.ct-footer [data-id="logo"] img { max-width: 100%; }
.ct-footer #footer-menu { width: 100%; }
.ct-footer .ct-footer-copyright { width: 100%; text-align: var(--horizontal-alignment); }
.ct-footer .marginum-native-footer-nav {
    display: grid;
    grid-template-columns: minmax(max-content,.65fr) minmax(max-content,1fr) minmax(max-content,1.25fr) minmax(max-content,1.25fr) minmax(max-content,.8fr) minmax(max-content,1.3fr) minmax(max-content,.8fr);
    align-items: start;
    gap: 28px;
    width: 100%;
}
.ct-footer .marginum-native-footer-nav li.menu-item { display: block; min-width: 0; }
.ct-footer .marginum-native-footer-nav a.ct-menu-link { display: inline-flex; align-items: center; justify-content: var(--menu-item-alignment); padding: 0; white-space: nowrap; }
/* Blocksy's ancestor-li hover is useful in dropdowns, not this always-open list. */
.ct-footer .marginum-native-footer-nav li:hover > a.ct-menu-link:not(:hover):not(:focus-visible) { color: var(--theme-link-initial-color); }
.ct-footer :is(.marginum-native-footer-nav,.ct-header-text) a:focus-visible { color: var(--theme-link-hover-color); }
.ct-footer .ct-social-box a:focus-visible { --theme-icon-color: var(--theme-icon-hover-color); }
.ct-footer .marginum-native-footer-nav .sub-menu {
    display: block;
    position: static;
    width: auto;
    min-width: 0;
    margin: 20px 0 0;
    padding: 0;
    visibility: visible;
    opacity: 1;
    transform: none;
    box-shadow: none;
    background: transparent;
    text-align: inherit;
}
.ct-footer .marginum-native-footer-nav .sub-menu li + li { margin-top: 16px; }
.ct-footer .marginum-native-footer-nav .ct-toggle-dropdown-desktop { display: none; }
.ct-footer .marginum-native-footer-nav a:not([href="#"])::after {
    content: "";
    display: inline-block;
    flex-shrink: 0;
    margin-left: 9px;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid var(--theme-palette-color-2);
}
@media (min-width: 1000px) and (max-width: 1365px) {
    .ct-footer .marginum-native-footer-nav { grid-template-columns: repeat(4,minmax(max-content,1fr)); gap: 24px; }
}
@media (max-width: 999px) {
    .ct-footer .marginum-native-footer-nav { grid-template-columns: 1fr; gap: 16px; text-align: center; }
    .ct-footer .marginum-native-footer-nav .sub-menu { margin-top: 16px; }
}
