.mcm-footer-preview { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 12px 20px; margin-top: 0; margin-bottom: 24px; padding-top: 14px; padding-bottom: 14px; border-top: 1px solid var(--mcm-border); }
.mcm-footer-preview[hidden] { display: none; }
.mcm-footer-preview > span { color: var(--mcm-text-muted); font-size: 11px; }
.mcm-footer-preview > div { display: flex; justify-content: center; flex-wrap: wrap; gap: 5px; }
.mcm-footer-preview button { padding: 8px 12px; border: 1px solid transparent; border-radius: 5px; background: transparent; color: var(--mcm-text-muted); font: inherit; font-size: 11px; cursor: pointer; }
.mcm-footer-preview button[aria-pressed="true"] { border-color: var(--mcm-accent); background: var(--mcm-bg-soft); color: var(--mcm-text); }
#footer.mcm-footer { --footer-bg: var(--mcm-bg-soft); --footer-text: var(--mcm-text); --footer-muted: var(--mcm-text-muted); --footer-border: var(--mcm-border); border-top: 1px solid var(--footer-border); background: var(--footer-bg); color: var(--footer-text); font-family: var(--mcm-font-body); }
#footer.mcm-footer a { color: inherit; text-decoration: none; }
#footer.mcm-footer a:hover { color: var(--mcm-accent-hover); }
#footer.mcm-footer a:focus-visible, #footer.mcm-footer input:focus-visible, #footer.mcm-footer button:focus-visible, .mcm-footer-preview button:focus-visible { outline: 2px solid var(--mcm-accent); outline-offset: 4px; }
.mcm-footer-main { display: grid; grid-template-columns: 1fr 1.15fr; align-items: center; gap: 30px 60px; padding: 34px 0 30px; }
.mcm-footer-kicker { display: block; margin-bottom: 10px; color: var(--mcm-accent-active); font-size: 9px; letter-spacing: .13em; text-transform: uppercase; font-weight: 600; }
#footer .mcm-footer-brand { display: inline-block; font-family: var(--mcm-font-heading); font-size: 26px; line-height: 1.2; }
#footer .mcm-footer-contact p { margin: 8px 0 14px; color: var(--footer-muted); font-size: 11px; }
#footer .mcm-footer-email { display: inline-flex; align-items: center; gap: 18px; font-size: 13px; }
#footer .mcm-footer-email span { color: var(--mcm-accent); font-size: 20px; }
#footer .mcm-footer-newsletter h2 { margin: 0 0 8px; color: var(--footer-text); font-family: var(--mcm-font-heading); font-size: 25px; font-weight: 400; line-height: 1.3; }
#footer .mcm-footer-newsletter > p { margin: 0 0 16px; color: var(--footer-muted); font-size: 11px; line-height: 1.7; }
.mcm-footer-form { margin: 0; }
.mcm-footer-input-row { display: flex; gap: 8px; }
#footer .mcm-footer-input-row input { min-width: 0; flex: 1; width: 100%; padding: 11px 14px; border: 1px solid var(--footer-border); border-radius: 5px; background: #fff; color: var(--mcm-text); font: inherit; font-size: 12px; }
#footer .mcm-footer-input-row button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; padding: 11px 18px; border: 0; border-radius: 5px; background: var(--mcm-accent); color: #fff; font: inherit; font-size: 11px; font-weight: 600; cursor: pointer; }
#footer .mcm-footer-input-row button:hover { background: var(--mcm-accent-hover); }
#footer .mcm-footer-form-note { display: block; margin-top: 9px; color: var(--footer-muted); font-size: 9px; line-height: 1.7; }
#footer .mcm-footer-form-note a { text-decoration: underline; text-underline-offset: 2px; }
#footer .mcm-footer-form-result { margin: 10px 0 0; color: var(--footer-text); font-size: 11px; line-height: 1.6; }
.mcm-footer-bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px 24px; border-top: 1px solid var(--footer-border); padding: 16px 0; color: var(--footer-muted); font-size: 9px; }
.mcm-footer-bottom > div { display: flex; flex-wrap: wrap; gap: 18px; }
#footer.mcm-footer[data-footer-layout="dark"], #footer.mcm-footer[data-footer-layout="panel"] { --footer-bg: var(--mcm-text); --footer-text: #fffaf4; --footer-muted: #d6cec5; --footer-border: #ffffff26; }
#footer[data-footer-layout="dark"] .mcm-footer-kicker, #footer[data-footer-layout="panel"] .mcm-footer-kicker { color: var(--mcm-accent-light); }
#footer.mcm-footer[data-footer-layout="copper"] { --footer-bg: color-mix(in srgb,var(--mcm-accent) 17%,white); --footer-border: color-mix(in srgb,var(--mcm-accent) 45%,white); border-top: 3px solid var(--mcm-accent); }
#footer[data-footer-layout="copper"] .mcm-footer-main { grid-template-columns: 1fr 1.3fr; padding: 26px 0 24px; }
#footer[data-footer-layout="copper"] .mcm-footer-newsletter { padding-left: 28px; border-left: 1px solid var(--footer-border); }
#footer.mcm-footer[data-footer-layout="center"] { --footer-bg: #fff; }
#footer[data-footer-layout="center"] .mcm-footer-main { grid-template-columns: minmax(0,1fr); gap: 20px; padding: 28px 0 24px; text-align: center; }
#footer[data-footer-layout="center"] .mcm-footer-contact { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px 24px; order: 2; }
#footer[data-footer-layout="center"] .mcm-footer-kicker, #footer[data-footer-layout="center"] .mcm-footer-contact p { display: none; }
#footer[data-footer-layout="center"] .mcm-footer-brand { font-size: 19px; }
#footer[data-footer-layout="center"] .mcm-footer-newsletter { max-width: 560px; margin: 0 auto; width: 100%; }
#footer.mcm-footer[data-footer-layout="panel"] { margin: 0 24px 20px; border: 0; border-top: 3px solid var(--mcm-accent); border-radius: 14px; }
#footer[data-footer-layout="panel"] .mcm-footer-main { padding: 26px 0; }
#footer[data-footer-layout="panel"] .mcm-footer-brand { font-size: 23px; }
@media (max-width: 767.98px) {
    .mcm-footer-main, #footer[data-footer-layout="copper"] .mcm-footer-main { grid-template-columns: minmax(0,1fr); gap: 26px; padding: 28px 0; }
    #footer[data-footer-layout="copper"] .mcm-footer-newsletter { padding-left: 0; border-left: 0; }
    .mcm-footer-bottom { align-items: start; flex-direction: column; gap: 12px; }
    #footer.mcm-footer[data-footer-layout="panel"] { margin-left: 12px; margin-right: 12px; }
    #footer .mcm-footer-newsletter h2 { font-size: 23px; }
}
@media (max-width: 399.98px) { .mcm-footer-input-row { flex-direction: column; } }
