/*
Theme Name: Hello Elementor BMP
Template: hello-elementor
Description: Child theme with hand-coded header/footer (replaces Elementor Pro Theme Builder) for Balanced Meal Plans.
Version: 1.0.0
Text Domain: hello-elementor-bmp
*/
:root{--bmp-text:#666;--bmp-dark:#333;--bmp-line:#e6e6e6;--bmp-head-font:'Quicksand',sans-serif;--bmp-body-font:'Montserrat',sans-serif}
body{font-family:var(--bmp-body-font);color:var(--bmp-text)}
/* header */
.bmp-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);border-bottom:1px solid var(--bmp-line);-webkit-backdrop-filter:saturate(1.2) blur(6px);backdrop-filter:saturate(1.2) blur(6px)}
.bmp-header__in{max-width:1140px;margin:0 auto;padding:0 20px;min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.bmp-logo{flex:0 0 auto;display:block;line-height:0}
.bmp-logo img{width:60px;height:60px;object-fit:contain}
.bmp-nav{flex:1 1 auto}
.bmp-nav ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:0;flex-wrap:wrap}
.bmp-nav li{position:relative}
.bmp-nav a{display:block;padding:13px 20px;font:500 16px/20px var(--bmp-head-font);text-transform:uppercase;color:var(--bmp-text);text-decoration:none}
.bmp-nav a:hover,.bmp-nav .current-menu-item>a{color:var(--bmp-dark)}
.bmp-nav .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:220px;background:rgba(255,255,255,.95);border:1px solid #444;padding:0;margin:0;list-style:none;flex-direction:column}
.bmp-nav li:hover>.sub-menu,.bmp-nav li:focus-within>.sub-menu{display:flex}
.bmp-nav .sub-menu a{padding:16px 20px;color:var(--bmp-text)}
.bmp-nav .sub-menu a:hover{background:#444;color:#fff}
.bmp-nav .menu-item-has-children>a:after{content:"";display:inline-block;margin-left:8px;border:4px solid transparent;border-top-color:currentColor;vertical-align:-2px}
.bmp-city{flex:0 0 auto;display:flex;gap:6px;align-items:center}
.bmp-city a{padding:6px 14px;border:1px solid #2d2d2d;border-radius:20px;font:500 13px/1.2 var(--bmp-head-font);letter-spacing:.04em;text-decoration:none;color:#2d2d2d;white-space:nowrap}
.bmp-city a.is-current{background:#2d2d2d;color:#fff}
.bmp-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--bmp-text)}
.bmp-toggle span,.bmp-toggle span:before,.bmp-toggle span:after{display:block;width:22px;height:2px;background:currentColor;content:"";position:relative}
.bmp-toggle span:before{position:absolute;top:-7px}.bmp-toggle span:after{position:absolute;top:7px}
@media(max-width:1024px){
 .bmp-header__in{flex-wrap:wrap}
 .bmp-city{order:1}.bmp-logo{order:2;margin:0 auto}.bmp-toggle{display:block;order:3}
 .bmp-nav{order:4;flex:0 0 100%;display:none}
 .bmp-header.is-open .bmp-nav{display:block}
 .bmp-nav ul{flex-direction:column;align-items:stretch}
 .bmp-nav .sub-menu{display:flex;position:static;border:0;background:transparent;padding-left:16px}
 .bmp-nav a{padding:14px 4px}
}
/* footer */
.bmp-footer{border-top:1px solid var(--bmp-line);background:#fff var(--bmp-footer-bg) center/cover no-repeat;padding:50px 0 0;font-family:var(--bmp-body-font);color:var(--bmp-text)}
.bmp-footer__in{max-width:1140px;margin:0 auto;padding:0 20px;display:grid;gap:32px;grid-template-columns:1fr 1fr 2fr}
.bmp-footer--2col .bmp-footer__in{grid-template-columns:1fr 1fr}
.bmp-footer h4{margin:0 0 16px;font:500 16px/1.3 var(--bmp-head-font);color:var(--bmp-dark);text-transform:none}
.bmp-footer ul{list-style:none;margin:0;padding:0}
.bmp-footer li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6;margin-bottom:10px}
.bmp-footer li svg{flex:0 0 16px;width:16px;height:16px;margin-top:4px;fill:var(--bmp-dark)}
.bmp-footer a{color:var(--bmp-text);text-decoration:none}.bmp-footer a:hover{color:var(--bmp-dark)}
.bmp-footer iframe{width:100%;height:300px;border:0}
.bmp-copy{max-width:1140px;margin:24px auto 0;padding:12px 20px 20px;text-align:center;font-size:14px;color:#999}
@media(max-width:767px){.bmp-footer__in,.bmp-footer--2col .bmp-footer__in{grid-template-columns:1fr}}
