/* MG Footer 1.1 — footer llamativo de alto contraste para Medellín Gardens. */
body:has(#mg-footer) footer:not(#mg-footer),
body:has(#mg-footer) #colophon,
body:has(#mg-footer) .site-footer,
body:has(#mg-footer) .footer-area,
body:has(#mg-footer) .elementor-location-footer,
body:has(#mg-footer) [id*="footer"]:not(#mg-footer):not([id*="mgf"]),
body:has(#mg-footer) [class*="footer"]:not(#mg-footer):not([class*="mgf"]),
body:has(#mg-footer) .wp-block-template-part:has(footer:not(#mg-footer)){
 display:none !important;
}

#mg-footer{
 background:var(--mgf-bg);
 color:var(--mgf-text);
 position:relative;
 width:100%;
 max-width:none !important;
 box-sizing:border-box;
 border-top:1px solid rgba(255,247,242,.12);
 font:400 15px/1.65 Arial, Helvetica, sans-serif;
 clear:both;
 box-shadow:0 -18px 40px rgba(17,39,29,.15);
}
#mg-footer *{box-sizing:border-box}
#mg-footer .mgf-inner{max-width:1280px;margin:0 auto;padding:62px 30px 22px}
#mg-footer .mgf-columns{display:grid;grid-template-columns:1.2fr .78fr .86fr 1.25fr;gap:34px;align-items:start}
#mg-footer h2{font:700 21px/1.22 Georgia, serif;color:var(--mgf-title);margin:0 0 16px;padding:0;letter-spacing:.2px}
#mg-footer .mgf-brand-title{font-size:30px;margin:18px 0 14px}
#mg-footer .mgf-brand-card{
 background:var(--mgf-brand-card);
 border:1px solid rgba(255,255,255,.22);
 border-radius:28px;
 padding:24px;
 min-height:210px;
 display:flex;
 align-items:center;
 justify-content:center;
 box-shadow:0 18px 40px rgba(8,20,16,.18);
}
#mg-footer .mgf-logo-link,
#mg-footer .mgf-logo-wp,
#mg-footer .mgf-logo-wp .custom-logo-link{display:flex;align-items:center;justify-content:center;width:100%}
#mg-footer .mgf-logo,
#mg-footer .mgf-logo-wp img.custom-logo{display:block;max-width:100%;width:auto;max-height:170px;height:auto;object-fit:contain;margin:0 auto !important;float:none !important}
#mg-footer .mgf-brandname{font-size:28px;color:var(--mgf-brand-card-text);margin:0;text-align:center}
#mg-footer p{font:400 15px/1.72 Arial, sans-serif;color:var(--mgf-text);margin:0 0 13px}
#mg-footer a{color:var(--mgf-text);text-decoration:none;transition:all .2s ease}
#mg-footer a:hover,#mg-footer a:focus{color:var(--mgf-accent);text-decoration:none}
#mg-footer .mgf-navigation,
#mg-footer .mgf-contact,
#mg-footer .mgf-newsletter{
 background:var(--mgf-surface);
 border:1px solid var(--mgf-surface-border);
 border-radius:24px;
 padding:24px 22px;
 backdrop-filter:blur(8px);
 min-height:100%;
}
#mg-footer .mgf-links{list-style:none !important;margin:0 !important;padding:0 !important;display:flex;flex-direction:column;gap:11px}
#mg-footer .mgf-links li{list-style:none !important;margin:0 !important;padding:0 !important}
#mg-footer .mgf-links a{font:600 15px/1.5 Arial,sans-serif;color:var(--mgf-title)}
#mg-footer .mgf-links a:hover{transform:translateX(2px)}
#mg-footer .mgf-contact p a{color:var(--mgf-title);font-weight:600}
#mg-footer .mgf-social-title{margin-top:24px}
#mg-footer .mgf-social{display:flex;gap:10px;flex-wrap:wrap}
#mg-footer .mgf-social a{
 display:flex;align-items:center;justify-content:center;
 width:42px;height:42px;border:1px solid rgba(255,247,242,.22);border-radius:50%;
 background:rgba(255,255,255,.06);color:var(--mgf-title);font-weight:700;font-size:12px;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
#mg-footer .mgf-social a:hover{background:var(--mgf-accent);color:#173426;transform:translateY(-1px)}
#mg-footer .mgf-newsletter p{color:var(--mgf-text)}
#mg-footer .mgf-newsletter input[type=email]{
 display:block;width:100%;background:#fff;color:#173426;border:1px solid #e8d6cc;
 border-radius:12px;padding:13px 15px;font-size:14px;min-height:48px;outline:none;margin-top:12px;
}
#mg-footer .mgf-newsletter input[type=email]:focus{border-color:var(--mgf-accent);box-shadow:0 0 0 4px rgba(240,168,184,.18)}
#mg-footer .mgf-newsletter button{
 width:100%;border:0;background:var(--mgf-button);border-radius:999px;color:var(--mgf-button-text);
 min-height:46px;font-size:14px;font-weight:700;margin-top:16px;padding:12px 18px;cursor:pointer;
 box-shadow:0 12px 24px rgba(0,0,0,.16);
}
#mg-footer .mgf-newsletter button:hover{filter:brightness(1.03);transform:translateY(-1px)}
#mg-footer .mgf-consent{display:flex;align-items:flex-start;gap:8px;color:var(--mgf-text);font-size:12px;line-height:1.5;margin-top:12px;cursor:pointer}
#mg-footer .mgf-consent input{width:16px;height:16px;flex-shrink:0;accent-color:var(--mgf-accent);margin-top:2px}
#mg-footer .mgf-consent a{color:var(--mgf-accent);text-decoration:underline}
#mg-footer .mgf-bottom{
 border-top:1px solid rgba(255,247,242,.14);
 margin-top:34px;padding-top:16px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
 font-size:12px;color:rgba(255,247,242,.82)
}
#mg-footer .mgf-sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
#mg-footer .mgf-trap{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;opacity:0 !important}
#mg-footer .mgf-feedback{color:#fff2f6;font-weight:700;background:rgba(240,168,184,.15);border:1px solid rgba(240,168,184,.25);padding:10px 12px;border-radius:12px}

@media(max-width:1100px){
 #mg-footer .mgf-columns{grid-template-columns:1fr 1fr;gap:26px}
 #mg-footer .mgf-inner{padding:44px 24px 18px}
}
@media(max-width:680px){
 #mg-footer .mgf-columns{grid-template-columns:1fr;gap:20px}
 #mg-footer .mgf-inner{padding:34px 16px 16px}
 #mg-footer .mgf-brand-card{min-height:180px;padding:18px}
 #mg-footer .mgf-brand-title{font-size:26px}
 #mg-footer .mgf-navigation,
 #mg-footer .mgf-contact,
 #mg-footer .mgf-newsletter{padding:20px 18px;border-radius:20px}
 #mg-footer .mgf-bottom{margin-top:24px;gap:8px;flex-direction:column}
}
