
#mali-footer { --mf-charcoal:#222126; --mf-ink:#252129; --mf-white:#fff8f4; --mf-muted:#d8d0d8; --mf-pink:#ff83bf; --mf-peach:#ffbfb5; --mf-lilac:#d894ca; --mf-teal:#90c1c4; --mf-cream:#fff5dd; --mf-lime:#d1eb80; --mf-line:#5e5661; --mf-gradient:linear-gradient(115deg,#ffb4d1 0%,#dec7ec 26%,#fff0cc 48%,#bde7cc 68%,#d7ed85 84%,#ffbead 100%); }
#mali-footer .mf-stage { width:100%; margin:auto; }
#mali-footer { background:var(--mf-charcoal); color:var(--mf-white); font-family:Montserrat,Arial,sans-serif; container-type:inline-size; text-align:left; }
#mali-footer * { box-sizing:border-box; }
#mali-footer .mf-gradient { height:7px; background:var(--mf-gradient); }
#mali-footer .mf-inner { width:95%; margin-inline:auto; padding:clamp(28px,4cqi,58px) 0 24px; }
#mali-footer h2, #mali-footer h3, #mali-footer p { margin:0; }
#mali-footer h2 { font-weight:800; letter-spacing:-.03em; line-height:1.12; text-wrap:balance; }
#mali-footer h3 { font-size:18px; font-weight:700; line-height:1.4; margin-bottom:14px; }
#mali-footer a { color:inherit; text-decoration:none; text-underline-offset:5px; text-decoration-thickness:1px; }
#mali-footer a:hover { text-decoration:underline; }
#mali-footer a:focus-visible, #mali-footer button:focus-visible, #mali-footer input:focus-visible { outline:3px solid var(--mf-cream); outline-offset:5px; border-radius:4px; }
#mali-footer ::selection { background:var(--mf-lilac); color:var(--mf-ink); }
#mali-footer .mf-top { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(250px,1fr); gap:clamp(24px,4cqi,60px); align-items:center; padding-bottom:36px; }
#mali-footer .mf-brand { display:grid; grid-template-columns:clamp(110px,14cqi,185px) minmax(0,1fr); gap:24px; align-items:center; }
#mali-footer .mf-logo { display:flex; align-items:center; min-height:44px; border-radius:8px; }
#mali-footer .mf-logo img { display:block; width:100%; height:auto; }
#mali-footer .mf-intro h2 { font-size:clamp(25px,3.1cqi,38px); margin-bottom:14px; }
#mali-footer .mf-intro p { color:var(--mf-muted); font-size:15px; line-height:1.8; max-width:49ch; }
#mali-footer .mf-hello { padding-left:clamp(0px,1cqi,18px); }
#mali-footer .mf-hello h2 { color:var(--mf-pink); font-size:clamp(34px,4.6cqi,62px); margin-bottom:12px; }
#mali-footer .mf-hello-links { display:flex; flex-wrap:wrap; align-items:center; gap:12px 16px; }
#mali-footer .mf-email { display:inline-flex; min-height:44px; align-items:center; font-size:clamp(15px,1.7cqi,21px); font-weight:500; text-decoration:underline; overflow-wrap:anywhere; max-width:100%; }
#mali-footer .mf-contact { display:inline-flex; min-height:46px; align-items:center; justify-content:center; gap:18px; padding:10px 18px; border-radius:12px; background:var(--mf-pink); color:var(--mf-ink); font-size:14px; font-weight:700; }
#mali-footer .mf-contact:focus-visible, #mali-footer .mf-social a:focus-visible { outline-color:var(--mf-cream); }
#mali-footer .mf-contact svg { width:20px; height:20px; }
#mali-footer .mf-directory { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.8fr) minmax(0,1.2fr); gap:clamp(24px,4cqi,60px); border-top:1px solid var(--mf-line); padding-top:32px; padding-bottom:30px; }
#mali-footer .mf-directory a { color:var(--mf-pink); display:flex; align-items:center; min-height:44px; font-size:15px; font-weight:500; line-height:1.5; width:fit-content; max-width:100%; }
#mali-footer ul { list-style:none; padding:0; margin:0; }
#mali-footer .mf-topics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; }
#mali-footer .mf-details strong { color:var(--mf-muted); font-size:13px; font-weight:600; display:block; margin-bottom:9px; }
#mali-footer address { font-style:normal; font-size:15px; line-height:1.9; }
#mali-footer .mf-details .mf-location { color:var(--mf-teal); display:flex; align-items:center; gap:7px; margin-top:14px; font-size:14px; font-weight:500; }
#mali-footer .mf-details svg { width:18px; height:18px; flex-shrink:0; }
#mali-footer .mf-online { padding:23px 0 26px; border-top:1px solid var(--mf-line); }
#mali-footer .mf-online h3 { margin-bottom:16px; }
#mali-footer .mf-social { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:10px; }
#mali-footer .mf-social a { color:var(--mf-ink); min-height:52px; padding:12px; border-radius:12px; display:flex; gap:8px; align-items:center; justify-content:space-between; font-size:13px; line-height:1.4; font-weight:700; }
#mali-footer .mf-social svg { width:18px; height:18px; flex-shrink:0; }
#mali-footer .mf-bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 22px; padding-top:18px; border-top:1px solid var(--mf-line); font-size:12px; line-height:1.6; color:var(--mf-muted); }
#mali-footer .mf-credit { display:flex; flex-wrap:wrap; align-items:center; gap:0 10px; }
#mali-footer .mf-credit a { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; }
#mali-footer .mf-legal { display:flex; flex-wrap:wrap; gap:6px 20px; }
#mali-footer .mf-legal a { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; }
#mali-footer .mf-motion { display:flex; align-items:center; gap:9px; min-height:44px; width:fit-content; padding-right:8px; color:var(--mf-white); }
#mali-footer .mf-motion input { accent-color:var(--mf-pink); width:18px; height:18px; margin:0; }
#mali-footer .mf-motion small { color:var(--mf-muted); font-size:12px; }
#mali-footer .mf-club .mf-top { display:block; padding-bottom:30px; }
#mali-footer .mf-club .mf-hello { padding:24px 28px; background:var(--mf-gradient); color:var(--mf-ink); border-radius:16px; display:flex; flex-wrap:wrap; align-items:center; gap:12px 28px; justify-content:space-between; }
#mali-footer .mf-club .mf-hello h2 { color:var(--mf-ink); margin:0; font-size:clamp(30px,4cqi,54px); }
#mali-footer .mf-club .mf-hello-links { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; }
#mali-footer .mf-club .mf-contact { margin:0; background:var(--mf-charcoal); color:var(--mf-cream); }
#mali-footer .mf-club .mf-hello a:focus-visible { outline-color:var(--mf-ink); }
#mali-footer .mf-club .mf-contact:focus-visible { outline-color:var(--mf-charcoal); }
#mali-footer .mf-club .mf-body { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.7fr); gap:30px; }
#mali-footer .mf-club .mf-brand { display:block; }
#mali-footer .mf-club .mf-logo { width:150px; margin-bottom:22px; }
#mali-footer .mf-club .mf-intro h2 { font-size:27px; }
#mali-footer .mf-club .mf-directory { grid-template-columns:minmax(0,1fr) minmax(0,1.6fr); border:0; padding:0; gap:25px; }
#mali-footer .mf-club .mf-details { grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:12px 26px; align-items:start; border-top:1px solid var(--mf-line); padding-top:21px; margin-top:5px; }
#mali-footer .mf-club .mf-details h3 { margin:0; }
#mali-footer .mf-club .mf-location { margin:0; }
#mali-footer .mf-club .mf-online { margin-top:30px; }
@container (max-width:1049px) {
 #mali-footer .mf-top { grid-template-columns:minmax(0,1.4fr) minmax(225px,1fr); gap:26px; }
 #mali-footer .mf-brand { display:block; }
 #mali-footer .mf-logo { width:135px; margin-bottom:20px; }
 #mali-footer .mf-social { grid-template-columns:repeat(4,minmax(0,1fr)); }
 #mali-footer .mf-social li:last-child { grid-column:span 2; }
 #mali-footer .mf-directory { grid-template-columns:minmax(0,1fr) minmax(0,1.8fr); gap:24px 30px; }
 #mali-footer .mf-details { grid-column:1 / -1; display:flex; flex-wrap:wrap; align-items:start; gap:12px 28px; padding-top:20px; border-top:1px solid var(--mf-line); }
 #mali-footer .mf-details h3 { margin:0; }
 #mali-footer .mf-details .mf-location { margin:0; }
 #mali-footer .mf-club .mf-body { grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); }
}
@container (max-width:599px) {
 #mali-footer .mf-inner { width:auto; margin-inline:20px; padding-top:30px; }
 #mali-footer .mf-top { display:block; padding-bottom:28px; }
 #mali-footer .mf-brand { display:block; }
 #mali-footer .mf-logo { width:132px; margin-bottom:23px; }
 #mali-footer .mf-intro h2 { font-size:29px; }
 #mali-footer .mf-intro p { font-size:15px; }
 #mali-footer .mf-hello { padding:0; margin-top:27px; }
 #mali-footer .mf-hello h2 { font-size:37px; margin-bottom:7px; }
 #mali-footer .mf-email { font-size:16px; }
 #mali-footer .mf-contact { margin-top:0; }
 #mali-footer .mf-directory { grid-template-columns:1fr; gap:25px; padding-top:27px; padding-bottom:25px; }
 #mali-footer .mf-pages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
 #mali-footer .mf-directory h3 { margin-bottom:9px; }
 #mali-footer .mf-details { display:block; grid-column:auto; padding-top:25px; }
 #mali-footer .mf-details strong { margin-top:14px; }
 #mali-footer .mf-details .mf-location { margin-top:10px; }
 #mali-footer .mf-social { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #mali-footer .mf-social li:last-child { grid-column:1 / -1; }
 #mali-footer .mf-social a { font-size:14px; min-height:52px; }
 #mali-footer .mf-bottom { display:block; padding-top:21px; font-size:13px; }
 #mali-footer .mf-credit { display:block; }
 #mali-footer .mf-credit a { margin:3px 0; }
 #mali-footer .mf-legal { gap:0 20px; margin:3px 0; }
 #mali-footer .mf-motion { margin-top:4px; }
 #mali-footer .mf-club .mf-hello { padding:23px 20px; margin:0; border-radius:14px; gap:8px; }
 #mali-footer .mf-club .mf-hello h2 { font-size:35px; }
 #mali-footer .mf-club .mf-hello-links { gap:8px; }
 #mali-footer .mf-club .mf-body { display:block; }
 #mali-footer .mf-club .mf-brand { margin-bottom:27px; }
 #mali-footer .mf-club .mf-directory { display:grid; grid-template-columns:1fr; gap:25px; }
 #mali-footer .mf-club .mf-details { display:block; grid-column:auto; }
 #mali-footer .mf-club .mf-online { margin-top:26px; }
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) {
 #mali-footer:not([data-motion="off"]) .mf-social a svg, #mali-footer:not([data-motion="off"]) .mf-contact svg { transition:transform .22s cubic-bezier(.16,1,.3,1); }
 #mali-footer:not([data-motion="off"]) .mf-social a:hover svg, #mali-footer:not([data-motion="off"]) .mf-social a:focus-visible svg, #mali-footer:not([data-motion="off"]) .mf-contact:hover svg { transform:translate(2px,-2px); }
}

/* Native Elementor wrappers: content remains editable in Theme Builder. */
#mali-footer .e-con { min-width:0; }
#mali-footer .elementor-widget { min-width:0; margin-bottom:0; }
#mali-footer .elementor-widget-container { margin:0; }
#mali-footer .mf-inner { max-width:none; }
#mali-footer .mf-inner { padding-bottom:96px; }
#mali-footer .mf-top, #mali-footer .mf-brand, #mali-footer .mf-directory, #mali-footer .mf-social { display:grid; }
#mali-footer .mf-gradient { min-height:7px; padding:0; }
#mali-footer .mf-logo a { display:block; min-height:44px; }
#mali-footer .mf-logo img { height:auto; }
#mali-footer .mf-hello-links > .elementor-widget, #mali-footer .mf-credit > .elementor-widget, #mali-footer .mf-legal > .elementor-widget, #mali-footer .mf-motion-widget { width:auto; max-width:100%; }
#mali-footer .mf-hello-links { flex-direction:row; }
#mali-footer .mf-hello-links { gap:15px; align-items:center; }
#mali-footer .mf-email .elementor-button { padding:0; border-radius:4px; text-decoration:underline; font-size:clamp(15px,1.7cqi,21px); font-weight:500; background:transparent; }
#mali-footer .mf-email .elementor-button-text { overflow-wrap:anywhere; }
#mali-footer .mf-email .elementor-button-content-wrapper { min-width:0; }
#mali-footer .mf-email .elementor-button { display:flex; align-items:center; min-height:44px; }
#mali-footer .mf-contact { display:block; padding:0; background:none; }
#mali-footer .mf-contact .elementor-button { min-height:46px; padding:10px 18px; }
#mali-footer .mf-contact .elementor-button { display:inline-flex; align-items:center; justify-content:center; }
#mali-footer .mf-address-part { white-space:nowrap; }
@container (min-width:1050px) {
 #mali-footer .mf-address-part { display:block; }
 #mali-footer .mf-address-separator { display:none; }
}
#mali-footer .mf-contact .elementor-button-content-wrapper { align-items:center; gap:18px; }
#mali-footer .elementor-icon-list-items { list-style:none; padding:0; margin:0; }
#mali-footer .mf-topics { display:block; }
#mali-footer .mf-topics .elementor-icon-list-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; }
#mali-footer .elementor-icon-list-item { min-width:0; }
#mali-footer .elementor-icon-list-text { color:#FF83BF; white-space:normal; }
#mali-footer .mf-social-link { width:100%; }
#mali-footer .mf-social-link .elementor-button { display:flex; padding:12px; min-height:52px; width:100%; }
#mali-footer .mf-social-link .elementor-button-content-wrapper { align-items:center; justify-content:space-between; gap:8px; width:100%; }
#mali-footer .mf-social-link .elementor-button-text { flex-grow:0; text-align:left; }
#mali-footer :is(.mf-social-link,.mf-contact) .elementor-button-icon { flex:none; margin:0; }
#mali-footer :is(.mf-social-link,.mf-contact) .elementor-button-icon svg { transform:rotate(-45deg); }
#mali-footer .mf-online .elementor-heading-title { margin-bottom:16px; }
#mali-footer .mf-bottom { flex-direction:row; }
#mali-footer .mf-credit { flex-direction:row; width:auto; }
#mali-footer .mf-credit a, #mali-footer .mf-legal a { font-size:12px; padding:0; min-height:44px; border-radius:4px; text-decoration:underline; background:none; }
#mali-footer .mf-copyright p { font-size:12px; color:#D8D0D8; line-height:1.6; }
#mali-footer .mf-legal { width:auto; flex-direction:row; }
#mali-footer .mf-motion { margin:0; font-size:12px; cursor:pointer; }
#mali-footer .mf-motion input { border:2px solid #FFF8F4; }
#mali-footer[data-motion="off"] *, #mali-footer[data-motion="off"] *::before, #mali-footer[data-motion="off"] *::after { animation:none !important; transition:none !important; }
@container (max-width:1049px) {
 #mali-footer .mf-brand .mf-logo { margin-bottom:20px; }
 #mali-footer .mf-social > .elementor-widget:last-child { grid-column:span 2; }
 #mali-footer .mf-details { flex-direction:row; }
 #mali-footer .mf-details > .elementor-widget { width:auto; max-width:100%; }
}
@container (max-width:599px) {
 #mali-footer .mf-brand .mf-logo { margin-bottom:23px; }
 #mali-footer .mf-top { display:block; }
 #mali-footer .mf-brand { display:block; }
 #mali-footer .mf-pages .elementor-icon-list-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
 #mali-footer .mf-social > .elementor-widget:last-child { grid-column:1 / -1; }
 #mali-footer .mf-details { width:100%; }
 #mali-footer .mf-details > .elementor-widget { width:100%; }
 #mali-footer .mf-bottom { display:block; }
 #mali-footer .mf-credit { display:block; }
 #mali-footer .mf-credit a, #mali-footer .mf-legal a, #mali-footer .mf-copyright p, #mali-footer .mf-motion { font-size:13px; }
 #mali-footer .mf-inner { width:calc(100% - 40px); }
 #mali-footer .mf-social-link .elementor-button { font-size:14px; }
}
@media (prefers-reduced-motion:no-preference) and (hover:hover) {
 #mali-footer:not([data-motion="off"]) :is(.mf-social-link,.mf-contact) .elementor-button-icon svg { transition:transform .22s cubic-bezier(.16,1,.3,1); }
 #mali-footer:not([data-motion="off"]) :is(.mf-social-link,.mf-contact) a:is(:hover,:focus-visible) .elementor-button-icon svg { transform:translate(2px,-2px) rotate(-45deg); }
}
@media (prefers-reduced-motion:reduce) {
 #mali-footer *, #mali-footer *::before, #mali-footer *::after { animation:none !important; transition:none !important; }
}
#mali-gradient-callout { padding:0; color:#252129; font-family:Montserrat,Arial,sans-serif; }
#mali-gradient-callout .mf-hello { padding:24px 28px; background:linear-gradient(115deg,#FFB4D1 0%,#DEC7EC 26%,#FFF0CC 48%,#BDE7CC 68%,#D7ED85 84%,#FFBEAD 100%); border-radius:16px; display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; gap:12px 28px; justify-content:space-between; }
#mali-gradient-callout .elementor-widget { width:auto; max-width:100%; margin-bottom:0; }
#mali-gradient-callout h2 { margin:0; font-size:clamp(30px,4vw,54px); font-weight:800; color:#252129; line-height:1.12; }
#mali-gradient-callout .mf-hello-links { display:flex; flex-direction:row; flex-wrap:wrap; gap:10px 20px; width:auto; }
#mali-gradient-callout .mf-email .elementor-button { padding:0; min-height:44px; color:#252129; text-decoration:underline; background:none; overflow-wrap:anywhere; }
#mali-gradient-callout .mf-contact .elementor-button { padding:10px 18px; min-height:46px; background:#222126; color:#FFF5DD; }
#mali-gradient-callout a:focus-visible { outline:3px solid #252129; outline-offset:5px; }
#mali-gradient-callout .elementor-button-icon svg { width:18px; height:18px; transform:rotate(-45deg); }
@media(max-width:599px) { #mali-gradient-callout .mf-hello { padding:23px 20px; } #mali-gradient-callout h2 { font-size:35px; } }
