/* The approved phone banner and footer. Desktop markup and presentation stay intact. */
#map-mobile-banner,#map-mobile-footer{display:none!important}
.home-banner-paint{display:none}
@media(max-width:999px){
 body .site-header,body .quote-header,body .map-footer,body .quote-footer{display:none!important}
 #map-mobile-banner,#map-mobile-footer{box-sizing:border-box!important;font-family:Arial,sans-serif!important;letter-spacing:normal!important;text-transform:none!important}
 #map-mobile-banner *,#map-mobile-footer *{box-sizing:border-box}
 #map-mobile-banner{display:block!important;position:relative!important;isolation:isolate;width:100%!important;max-width:none!important;margin:0!important;padding:12px 8px 10px 16px!important;background:#fff!important;border:0!important;color:#172a32!important;z-index:80}
 .home-banner-paint{display:block}
 #map-live-home>#map-ink-canvas{display:none!important}
 #map-white-route-proof .restored-banner{position:relative;isolation:isolate}
 #map-mobile-banner .mmb-paint,.home-banner-paint{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
 #map-mobile-ink{display:block;position:absolute;top:0;left:0;width:100%;height:auto}
 #map-mobile-banner .mmb-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 4px;max-width:620px;margin:auto;padding:0}
 #map-mobile-banner a{text-decoration:none!important;box-shadow:none!important;transform:none!important}
 #map-mobile-banner .mmb-brand{grid-column:1;grid-row:1;display:block;width:clamp(120px,42vw,180px);max-width:100%;margin:0;padding:0;border:0;background:transparent}
 #map-mobile-banner .mmb-brand img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain;margin:0;padding:0;border:0;border-radius:0;background:transparent}
 #map-mobile-banner .mmb-actions{grid-column:2;grid-row:1;display:flex;align-items:center;gap:4px;justify-self:end}
 #map-mobile-banner .mmb-quote{display:flex!important;align-items:center;justify-content:center;width:152px;min-width:152px;min-height:44px;margin:0;padding:8px;border:1px solid #172a32!important;border-radius:5px;background:transparent!important;color:#172a32!important;-webkit-text-fill-color:#172a32!important;font:700 15.5px/1.15 Arial,sans-serif!important;white-space:nowrap;text-align:center}
 #map-mobile-banner[lang=es] .mmb-quote{width:160px;min-width:160px;font-size:14.5px!important}
 #map-mobile-banner .mmb-menu{position:static;margin:0;padding:0;border:0;background:transparent}
 #map-mobile-banner .mmb-menu summary{display:flex!important;align-items:center;justify-content:center;list-style:none;width:44px;height:46px;min-width:44px;min-height:44px;margin:0;padding:0;border:0!important;border-radius:0;background:transparent!important;color:#172a32;box-shadow:none!important;cursor:pointer}
 #map-mobile-banner .mmb-menu summary::-webkit-details-marker{display:none}
 #map-mobile-banner .mmb-menu summary::marker{content:''}
 #map-mobile-banner .mmb-menu summary::before,#map-mobile-banner .mmb-menu summary::after{content:none!important}
 #map-mobile-banner .mmb-bars{display:block;width:22px;height:2px;background:currentColor;box-shadow:0 -7px 0 currentColor,0 7px 0 currentColor}
 #map-mobile-banner .mmb-nav{position:absolute;top:calc(100% + 12px);right:0;left:auto;display:flex;flex-direction:column;align-items:stretch;gap:0;width:min(330px,calc(100vw - 32px));max-height:65vh;max-height:65dvh;overflow:auto;padding:12px;margin:0;background:#fff;border:1px solid #e0e6e8;box-shadow:0 10px 24px #172a3220;z-index:90}
 #map-mobile-banner .mmb-menu:not([open]) .mmb-nav{display:none!important}
 #map-mobile-banner .mmb-nav a{display:block;padding:12px 10px;margin:0;border:0;border-radius:0;font:600 15px/1.3 Arial,sans-serif!important;color:#172a32!important;background:transparent!important;white-space:normal;text-align:left}
 #map-mobile-banner .mmb-nav a:hover,#map-mobile-banner .mmb-nav a:focus-visible{background:#f2f5f5!important}
 #map-mobile-banner .mmb-nav .mmb-language{border-top:1px solid #dce3e5;margin-top:8px;padding-top:16px}
 #map-mobile-banner .mmb-listening{grid-column:1/-1;grid-row:2;justify-self:center;width:max-content;max-width:100%;margin:0;padding:0;text-align:left}
 #map-mobile-banner .mmb-music{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;min-height:44px;margin:0;padding:0;border:0!important;border-radius:0;background:transparent!important;color:#111!important;-webkit-text-fill-color:#111!important;font:600 14px/1.25 Arial,sans-serif!important;letter-spacing:normal;text-transform:none;box-shadow:none!important;cursor:pointer}
 #map-mobile-banner .mmb-music svg{display:block;flex:0 0 28px;width:28px;height:24px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linejoin:round}
 #map-mobile-banner .mmb-music[aria-pressed=true] svg{color:#007da5}
 #map-mobile-banner .mmb-status{display:block;max-width:260px;margin:3px 0 0;font:400 10px/1.3 Arial,sans-serif;color:#52616a}
 #map-mobile-banner .mmb-status:empty{display:none}
 #map-mobile-banner :is(a,button,summary):focus-visible{outline:2px solid #567c80!important;outline-offset:3px}
 #map-mobile-footer{display:block!important;position:relative;width:100%!important;max-width:none!important;margin:0!important;padding:19px 20px 23px!important;border:0!important;background:#102630!important;color:#b9cccd!important;text-align:center;isolation:isolate;clear:both}
 #map-mobile-footer .mmf-inner{width:100%;max-width:620px;margin:0 auto;padding:0}
 #map-mobile-footer .mmf-social{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%;max-width:460px;margin:0 auto 15px;padding:0;border:0}
 #map-mobile-footer .mmf-social a{display:flex!important;align-items:center;justify-content:center;width:100%;height:48px;min-height:44px;padding:9px!important;margin:0;border:1px solid #0089b5!important;border-radius:9px;background:transparent!important;box-shadow:none!important;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}
 #map-mobile-footer .mmf-social a:is(:hover,:active,:focus-visible,.mmf-engaged){background:radial-gradient(ellipse,#07506a99,transparent)!important;box-shadow:inset 0 0 14px #0089b566!important}
 #map-mobile-footer .mmf-social a:nth-child(even):is(:hover,:active,:focus-visible,.mmf-engaged){background:radial-gradient(ellipse,#64103f99,transparent)!important;box-shadow:inset 0 0 14px #a5006066!important}
 #map-mobile-footer .mmf-social a:nth-child(even){border-color:#a50060!important}
 #map-mobile-footer .mmf-social img{display:block;max-width:100%;width:28px;height:28px;object-fit:contain;background:transparent;border:0;border-radius:0;filter:brightness(0) saturate(100%) invert(84%) sepia(56%) saturate(1014%) hue-rotate(329deg) brightness(102%) contrast(101%)}
 #map-mobile-footer .mmf-social img{transition:filter .16s ease}
 #map-mobile-footer .mmf-social a:is(:hover,:active,:focus-visible,.mmf-engaged) img{filter:brightness(0) saturate(100%) invert(84%) sepia(35%) saturate(1650%) hue-rotate(153deg) brightness(104%) contrast(102%)!important}
 #map-mobile-footer .mmf-social a:nth-child(even):is(:hover,:active,:focus-visible,.mmf-engaged) img{filter:brightness(0) saturate(100%) invert(77%) sepia(30%) saturate(1535%) hue-rotate(285deg) brightness(101%) contrast(96%)!important}
 #map-mobile-footer .mmf-marks{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:20px;max-width:460px;margin:0 auto 8px}
 #map-mobile-footer .mmf-brand{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:70px;padding:12px!important;margin:0;border:0;border-radius:4px;background:#fff!important;box-shadow:none!important}
 #map-mobile-footer .mmf-brand img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain;border:0;border-radius:0;filter:none!important}
 #map-mobile-footer .mmf-signature{position:relative;display:block;min-width:0;width:100%;max-width:160px;justify-self:center}
 #map-mobile-footer .mmf-signature img{display:block;width:100%;max-width:160px;height:auto;max-height:85px;object-fit:contain;filter:brightness(0) saturate(100%) invert(84%) sepia(56%) saturate(1014%) hue-rotate(329deg) brightness(102%) contrast(101%)}
 #map-mobile-footer .mmf-signature span{display:block;margin:-2px 0 0;font:500 10px/1.2 Arial,sans-serif;color:#d8e6e7;text-align:center}
 #map-mobile-footer .mmf-bottom{display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 0 0;margin:0;border-top:1px solid #37525c}
 #map-mobile-footer .mmf-bottom p{margin:0;padding:0;font:400 13px/1.6 Arial,sans-serif;color:#b9cccd}
 #map-mobile-footer .mmf-bottom p span{display:inline-block;white-space:nowrap;font-size:11px}
 #map-mobile-footer .mmf-bottom a{display:inline-block;margin:0;padding:8px 4px;color:#e3d095!important;font:400 13px/1.5 Arial,sans-serif;text-decoration:underline;background:transparent;box-shadow:none}
 #map-mobile-footer address{margin:0;padding:0;color:#b9cccd;font:400 12px/1.5 Arial,sans-serif}
 #map-mobile-footer .mmf-countdown{margin:0 0 12px;font:400 12px/1.4 Arial,sans-serif;letter-spacing:.12em;color:#b9cccd}
 #map-mobile-footer .mmf-countdown:empty{display:none}
 #map-mobile-footer :is(a,button):focus-visible{outline:2px solid #e3d095;outline-offset:3px}
 body.map-listening-shell>#map-mobile-banner,body.map-listening-shell>#map-mobile-footer{display:none!important}
}
@media(max-width:359px){
 #map-mobile-banner{padding-inline:12px!important}
 #map-mobile-banner .mmb-quote{width:128px;min-width:128px;font-size:13px!important}
 #map-mobile-banner[lang=es] .mmb-quote{width:128px;min-width:128px;font-size:13px!important;white-space:normal}
 #map-mobile-banner .mmb-menu summary{width:40px;min-width:40px;height:44px}
 #map-mobile-banner .mmb-music{font-size:12px!important;gap:6px}
 #map-mobile-footer{padding-inline:16px!important}
 #map-mobile-footer .mmf-marks{gap:14px}
}

/* A zoomed desktop can use this banner; do not constrain its actions to 620px. */
@media(min-width:600px) and (max-width:999px){
 #map-mobile-banner .mmb-row{width:100%;max-width:none}
 #map-mobile-banner .mmb-music::before{content:"";display:block;flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:url('/assets/music/linda-mujercita.webp') center/cover;box-shadow:0 2px 7px #142b3426;animation:map-desktop-record-turn 8s linear infinite;animation-play-state:paused}
 #map-mobile-banner .mmb-music[aria-pressed=true]::before{animation-play-state:running}
}
@media(prefers-reduced-motion:reduce){#map-mobile-banner .mmb-music::before{animation:none!important}}

/* One public phone number in every existing desktop and mobile footer. */
footer .map-footer-phone{margin:12px 0 16px!important;text-align:center}
footer .map-footer-phone>a{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:8px 4px!important;font:700 20px/1.15 Arial,sans-serif!important;letter-spacing:.02em;color:#edfcff!important;text-shadow:0 0 7px #20c6f89c,0 0 16px #0089b55c;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
footer.map-footer .map-footer-bottom{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:8px!important}
footer .map-footer-phone>a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
