/*
Theme Name: Magic Bloom DIY visual system
Location: Appearance > Customize > Additional CSS
Source: supplied desktop and mobile design references
*/
:root{
 --tlcl-navy:#0F2C42;--tlcl-navy-deep:#142739;--tlcl-coral:#F06E58;--tlcl-coral-soft:#F7775E;
 --tlcl-green:#74D18C;--tlcl-green-btn:#6EC983;--tlcl-mint:#D0F1DA;--tlcl-mint-soft:#EAF5EC;
 --tlcl-yellow:#FFD46A;--tlcl-gold:#C79A4B;--tlcl-text:#3A3A3A;--tlcl-muted:#6B6B6B;
 --tlcl-fog:#F2F2F2;--tlcl-border:#E7E7E7;--tlcl-white:#FFFFFF;
 --tlcl-shadow:0 2px 10px rgba(15,44,66,.10);--tlcl-shadow-hover:0 8px 20px rgba(15,44,66,.15);
}
html{scroll-behavior:smooth}
body{font-family:Poppins,Arial,sans-serif;color:var(--tlcl-text);background:#fff;overflow-x:hidden}
h1,h2,h3,.tlcl-display{font-family:Oswald,Arial Narrow,sans-serif;color:var(--tlcl-navy);line-height:1.08}
a{transition:color .2s ease,box-shadow .2s ease}
.top-bar{height:5px!important;min-height:5px!important;padding:0!important;background:var(--tlcl-mint)!important;overflow:hidden}
.top-bar .inside-top-bar{display:none!important}
.site-header{background:#fff;border-bottom:1px solid var(--tlcl-border)}
.site-header .inside-header{max-width:1200px;min-height:76px;padding:10px 24px;display:flex;align-items:center}
.site-branding{margin-right:auto}
.main-title{font-size:25px!important;line-height:1!important;letter-spacing:-.04em;text-transform:uppercase}
.main-title a{color:var(--tlcl-navy)!important}
#site-navigation{background:#fff}
#site-navigation .inside-navigation{min-height:54px}
#site-navigation .main-nav>ul{align-items:center;gap:3px}
#site-navigation .main-nav>ul>li>a{min-height:44px;display:flex;align-items:center;padding:0 13px;font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--tlcl-navy)}
#site-navigation .menu-item.tlcl-menu-pill>a{border:2px solid var(--tlcl-navy);border-radius:999px;padding:0 18px;height:34px;min-height:34px}
#site-navigation .menu-item.tlcl-menu-trending>a{position:relative;padding-left:28px;line-height:1.15}
#site-navigation .menu-item.tlcl-menu-trending>a:before{content:"TRENDING:";font-size:7px;letter-spacing:.08em;position:absolute;left:0;top:8px;color:var(--tlcl-navy)}
#secondary-navigation{border-top:1px solid var(--tlcl-border);border-bottom:1px solid var(--tlcl-border);background:#fff}
#secondary-navigation .inside-navigation{max-width:1200px;margin:auto;min-height:44px}
#secondary-navigation .main-nav>ul>li:not(:last-child)>a:after{content:"•";margin-left:16px;color:var(--tlcl-navy)}
#secondary-navigation .main-nav>ul>li>a{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--tlcl-navy);padding:0 8px}
.menu-bar-item.search-item>a{color:var(--tlcl-navy)!important}
.site-content{padding:0!important}
.home #primary,.page #primary{width:100%!important}
.home .site-main,.page .site-main{margin:0!important}
.home .inside-article,.page .inside-article{padding:0!important}
.home .entry-header,.page .entry-header{display:none}
.home .entry-content,.page .entry-content{margin:0!important;max-width:none!important}
.page #right-sidebar,.home #right-sidebar{display:none!important}
.tlcl-home,.tlcl-home *{box-sizing:border-box}
.tlcl-home>.wp-block-group__inner-container,
.tlcl-home .wp-block-group[class*="tlcl-"]>.wp-block-group__inner-container{padding:0!important;max-width:none!important}
.tlcl-section{padding:34px 24px;margin:0}
.tlcl-section>.wp-block-group__inner-container{max-width:1120px!important;margin:0 auto!important}
.tlcl-hero-section{padding-top:20px;padding-bottom:22px}
.tlcl-hero-grid{max-width:1120px;margin:0 auto}
.tlcl-hero-grid>.wp-block-group__inner-container{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:198px 112px;gap:10px}
.tlcl-hero-item{margin:0!important;min-width:0;overflow:hidden}
.tlcl-hero-breakfast,.tlcl-hero-dinner,.tlcl-hero-dessert{grid-row:1/3}
.tlcl-hero-index{grid-column:4;grid-row:1;background:var(--tlcl-navy);display:flex;align-items:center;justify-content:center;text-align:center;padding:12px}
.tlcl-hero-index>.wp-block-group__inner-container{display:grid!important;place-items:center}
.tlcl-index-mark{margin:0!important;width:66px}
.tlcl-index-mark img{width:66px!important;height:66px!important;object-fit:contain}
.tlcl-index-title{color:#fff!important;font-size:20px;margin:2px 0!important}
.tlcl-index-link{margin:0!important;font-size:0}
.tlcl-index-link a{position:absolute;inset:0}
.tlcl-meet-card{grid-column:4;grid-row:2;background:var(--tlcl-mint-soft);position:relative}
.tlcl-meet-card>.wp-block-group__inner-container{height:100%;display:grid!important;grid-template-columns:43% 57%;align-items:center}
.tlcl-meet-image{height:100%;margin:0!important}
.tlcl-meet-image img{width:100%!important;height:100%!important;object-fit:cover}
.tlcl-meet-copy{padding:8px}
.tlcl-meet-title,.tlcl-meet-text{display:none}
.tlcl-hero-cover{height:100%;min-height:310px!important}
.tlcl-hero-cover img{object-fit:cover}
.tlcl-hero-cover .wp-block-cover__inner-container{align-self:flex-end!important;padding-bottom:18px}
.tlcl-hero-label{display:inline-block!important;margin:0!important}
.tlcl-hero-label a{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:7px 24px;border-radius:999px;background:#fff;color:var(--tlcl-navy)!important;font-size:13px;font-weight:700;text-decoration:none;box-shadow:var(--tlcl-shadow)}
.tlcl-category-icons{max-width:1120px;margin:20px auto 0}
.tlcl-category-icons>.wp-block-group__inner-container{display:grid!important;grid-template-columns:repeat(9,minmax(0,1fr));gap:0}
.tlcl-cat-icon{position:relative;height:104px;border-right:1px solid var(--tlcl-border);background-image:url('https://sparkmagicdiy.com/wp-content/uploads/2026/08/magic-bloom-assets/category-icons-strip.png');background-repeat:no-repeat;background-size:900% auto}
.tlcl-cat-icon:first-child{border-left:1px solid var(--tlcl-border)}
.tlcl-cat-icon-1{background-position:0 0}.tlcl-cat-icon-2{background-position:12.5% 0}.tlcl-cat-icon-3{background-position:25% 0}
.tlcl-cat-icon-4{background-position:37.5% 0}.tlcl-cat-icon-5{background-position:50% 0}.tlcl-cat-icon-6{background-position:62.5% 0}
.tlcl-cat-icon-7{background-position:75% 0}.tlcl-cat-icon-8{background-position:87.5% 0}.tlcl-cat-icon-9{background-position:100% 0}
.tlcl-cat-label{position:absolute!important;inset:0;margin:0!important}
.tlcl-cat-label a{display:block;width:100%;height:100%;font-size:0}
.tlcl-meal-plan{margin:0!important;background:var(--tlcl-navy);color:#fff;padding:34px max(24px,calc((100vw - 1010px)/2))}
.tlcl-meal-plan>.wp-block-group__inner-container{display:grid!important;grid-template-columns:190px 1fr 1.1fr;gap:34px;align-items:center}
.tlcl-meal-image{margin:0!important}
.tlcl-meal-image img{width:100%!important;aspect-ratio:1.35/1;object-fit:cover}
.tlcl-meal-heading{margin:0 0 8px!important;color:#fff!important;font-size:34px;line-height:.92}
.tlcl-coral{color:var(--tlcl-coral)}
.tlcl-meal-text{max-width:390px;margin:0 auto!important;color:#fff;font-size:12px;line-height:1.35}
.tlcl-form-fields{display:grid;grid-template-columns:1fr 1fr 84px;gap:8px;align-items:center}
.tlcl-form-fields input{min-width:0!important;height:38px!important;margin:0!important;border:0!important;border-radius:999px!important;padding:0 16px!important;background:#6B6B6B!important;color:#fff!important;font:500 11px Poppins,Arial,sans-serif!important}
.tlcl-form-fields input::placeholder{color:#fff;opacity:.85}
.tlcl-form-fields input[type=submit]{width:76px!important;height:76px!important;border-radius:50%!important;background:var(--tlcl-green)!important;color:var(--tlcl-navy)!important;padding:0 8px!important;white-space:normal;font-weight:800!important}
.mc4wp-response{color:#fff;font-size:12px}
.tlcl-duo-section{padding-top:38px;padding-bottom:40px}
.tlcl-duo-grid{gap:54px!important}
.tlcl-playful-title{font-family:Poppins,Arial,sans-serif!important;font-size:24px!important;text-transform:lowercase;margin:0 0 5px!important}
.tlcl-section-copy{font-size:11px;line-height:1.45;margin:0 auto 14px!important;color:var(--tlcl-text)}
.tlcl-recipe-query .wp-block-post-template{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.tlcl-six-grid .wp-block-post-template{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.tlcl-recipe-query .wp-block-post{background:#fff;border-radius:0 0 8px 8px;overflow:hidden;box-shadow:var(--tlcl-shadow);transition:box-shadow .2s ease}
.tlcl-recipe-query .wp-block-post:hover{box-shadow:var(--tlcl-shadow-hover)}
.tlcl-card-image{margin:0!important}
.tlcl-card-image img{display:block;width:100%!important;aspect-ratio:1/1;object-fit:cover}
.tlcl-card-title{font-family:Poppins,Arial,sans-serif!important;font-size:12px!important;line-height:1.15!important;text-align:center;margin:0!important;padding:10px 8px 12px;min-height:50px}
.tlcl-card-title a{color:var(--tlcl-navy)!important;text-decoration:none}
.tlcl-query-empty{padding:24px;border:1px dashed var(--tlcl-border)}
.tlcl-pill{margin:16px 0 0!important}
.tlcl-pill .wp-block-button__link{min-height:38px;display:inline-flex;align-items:center;border-radius:999px!important;padding:8px 20px!important;font:700 11px Poppins,Arial,sans-serif!important;text-decoration:none}
.tlcl-pill-navy .wp-block-button__link{background:var(--tlcl-navy)!important;color:#fff!important}
.tlcl-pill-light .wp-block-button__link{background:#fff!important;color:var(--tlcl-navy)!important}
.tlcl-pill-coral .wp-block-button__link{background:#fff!important;color:var(--tlcl-navy)!important;border:2px solid var(--tlcl-coral)}
.tlcl-about-section{background:var(--tlcl-fog);padding-top:54px;padding-bottom:54px}
.tlcl-about-grid{max-width:920px;margin:auto;gap:70px!important;align-items:center!important}
.tlcl-about-photo{position:relative}
.tlcl-about-photo:before{content:"";position:absolute;inset:-20px 16px 12px -20px;border:2px solid var(--tlcl-navy);opacity:.25}
.tlcl-about-image{position:relative;margin:0!important}
.tlcl-about-image img{width:100%!important;aspect-ratio:1.45/1;object-fit:cover}
.tlcl-eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;margin:0 0 5px!important;color:var(--tlcl-navy)}
.tlcl-about-heading{font-size:34px;margin:0 0 8px!important}
.tlcl-about-text{font-size:13px;line-height:1.55;max-width:480px;margin:0 auto!important}
.tlcl-instagram-bar{background:var(--tlcl-navy);padding:20px 24px;margin:0!important}
.tlcl-instagram-text{color:#fff;font-size:13px;font-weight:700;margin:0!important}
.tlcl-instagram-text a{color:var(--tlcl-coral)!important}
.tlcl-latest-section{padding-top:44px;padding-bottom:44px}
.tlcl-musttry-section{background:var(--tlcl-mint-soft);padding-top:34px;padding-bottom:42px}
.tlcl-section-head{margin-bottom:16px}
.tlcl-section-head>.wp-block-group__inner-container{display:flex!important;justify-content:space-between;align-items:center}
.tlcl-must-title{font-family:Poppins,Arial,sans-serif!important;font-size:25px;margin:0!important}
.tlcl-head-link{font-size:10px;font-weight:700;margin:0!important}
.tlcl-head-link a{color:var(--tlcl-navy)!important;text-decoration:none}
.tlcl-mobile-only{display:none}
.tlcl-favorites-section{padding-top:44px;padding-bottom:38px}
.tlcl-lined-title{display:flex!important;align-items:center;gap:18px;font-size:29px;margin:0!important}
.tlcl-lined-title:before,.tlcl-lined-title:after{content:"";height:3px;background:var(--tlcl-mint);flex:1}
.tlcl-favorites-grid{margin:24px 0 34px}
.tlcl-favorites-grid>.wp-block-group__inner-container{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}
.tlcl-favorite-icon{border-right:1px solid var(--tlcl-border);padding:10px 8px}
.tlcl-favorite-icon:first-child{border-left:1px solid var(--tlcl-border)}
.tlcl-favorite-symbol{width:86px;height:86px;margin:0 auto 9px!important;border-radius:50%;display:grid;place-items:center;color:#fff;font:700 11px Oswald,Arial Narrow,sans-serif}
.tlcl-favorite-1 .tlcl-favorite-symbol,.tlcl-favorite-4 .tlcl-favorite-symbol{background:var(--tlcl-yellow);color:var(--tlcl-navy)}
.tlcl-favorite-2 .tlcl-favorite-symbol,.tlcl-favorite-5 .tlcl-favorite-symbol{background:var(--tlcl-coral)}
.tlcl-favorite-3 .tlcl-favorite-symbol,.tlcl-favorite-6 .tlcl-favorite-symbol{background:var(--tlcl-green);color:var(--tlcl-navy)}
.tlcl-favorite-label{font-size:15px;margin:0!important}
.tlcl-feature-splits{gap:18px!important;margin-bottom:0!important}
.tlcl-feature-panel{padding-bottom:24px;border-radius:0 0 8px 8px;overflow:hidden;box-shadow:var(--tlcl-shadow)}
.tlcl-feature-image{margin:0!important}
.tlcl-feature-image img{width:100%!important;aspect-ratio:1.55/1;object-fit:cover}
.tlcl-feature-heading{font-size:29px;margin:18px 12px 5px!important}
.tlcl-feature-copy{font-size:11px;line-height:1.45;margin:0 auto!important;max-width:440px;padding:0 16px}
.site-footer{background:var(--tlcl-navy)!important}
.site-info{background:var(--tlcl-navy)!important;color:#fff!important}
.site-info a{color:var(--tlcl-green)!important}
/* WPRM card stays native and fully functional */
.single-post .wprm-recipe-container{max-width:100%;margin:36px 0!important}
.wprm-recipe-container .wprm-recipe{border:3px solid var(--tlcl-navy)!important;padding:28px!important;background:#fff!important}
.wprm-recipe-container .wprm-recipe-name{font-family:Oswald,Arial Narrow,sans-serif!important;color:var(--tlcl-navy)!important;text-align:center;font-size:34px!important;line-height:1.05!important}
.wprm-recipe-container .wprm-recipe-times-container{background:var(--tlcl-coral)!important;color:var(--tlcl-navy)!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;padding:16px!important;margin:22px -28px 0!important}
.wprm-recipe-container .wprm-recipe-times-container>div{text-align:center;border-right:1px solid rgba(15,44,66,.35)}
.wprm-recipe-container .wprm-recipe-times-container>div:last-child{border-right:0}
.wprm-recipe-container .wprm-recipe-servings-container{background:var(--tlcl-navy-deep)!important;color:#fff!important;margin:0 -28px!important;padding:16px 28px!important}
.wprm-recipe-container .wprm-recipe-header{font-family:Oswald,Arial Narrow,sans-serif!important;color:var(--tlcl-navy)!important;text-transform:uppercase}
.wprm-recipe-container .wprm-recipe-instruction{margin-bottom:16px!important}
.wprm-recipe-container .wprm-recipe-instruction-number{background:var(--tlcl-yellow)!important;color:var(--tlcl-navy)!important;width:34px!important;height:34px!important;border-radius:50%!important;display:inline-grid!important;place-items:center;font-weight:800!important}
.wprm-recipe-container .wprm-recipe-print,.wprm-recipe-container .wprm-recipe-pin{background:var(--tlcl-green-btn)!important;color:var(--tlcl-navy)!important;border-radius:8px!important;padding:9px 14px!important}
@media(max-width:768px){
 .top-bar{height:3px!important;min-height:3px!important}
 .site-header .inside-header{min-height:50px;padding:5px 12px;justify-content:center;position:relative}
 .site-branding{margin:0!important;text-align:center}
 .main-title{font-size:17px!important}
 #site-navigation{position:absolute;right:8px;top:2px}
 #site-navigation .menu-toggle{font-size:0;width:44px;height:44px;padding:0!important}
 #site-navigation .menu-toggle:before{font-size:20px}
 #secondary-navigation{display:none!important}
 .navigation-search{position:fixed!important;top:53px!important}
 .tlcl-section{padding:22px 10px}
 .tlcl-hero-section{padding-top:8px}
 .tlcl-hero-grid>.wp-block-group__inner-container{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:170px 170px 118px;gap:6px}
 .tlcl-hero-breakfast{grid-column:1;grid-row:1}.tlcl-hero-dinner{grid-column:2;grid-row:1}.tlcl-hero-dessert{grid-column:1;grid-row:2}
 .tlcl-hero-index{grid-column:2;grid-row:2;padding:8px}
 .tlcl-meet-card{grid-column:1/3;grid-row:3}
 .tlcl-meet-card>.wp-block-group__inner-container{grid-template-columns:34% 66%}
 .tlcl-meet-title,.tlcl-meet-text{display:block}
 .tlcl-meet-title{font-family:Poppins,Arial,sans-serif!important;font-size:16px;margin:0 0 3px!important}
 .tlcl-meet-text{font-size:9px;line-height:1.3;margin:0 0 4px!important}
 .tlcl-meet-card .tlcl-hero-label{display:none!important}
 .tlcl-hero-cover{min-height:170px!important}
 .tlcl-hero-cover .wp-block-cover__inner-container{padding-bottom:9px}
 .tlcl-hero-label a{min-height:28px;padding:5px 15px;font-size:10px}
 .tlcl-index-mark,.tlcl-index-mark img{width:62px!important}
 .tlcl-index-title{font-size:16px}
 .tlcl-category-icons{margin-top:8px}
 .tlcl-category-icons>.wp-block-group__inner-container{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .tlcl-cat-icon{height:94px;border:0!important;border-radius:6px;background-color:#fff;box-shadow:var(--tlcl-shadow)}
 .tlcl-meal-plan{padding:22px 18px}
 .tlcl-meal-plan>.wp-block-group__inner-container{grid-template-columns:1fr;gap:12px;text-align:center}
 .tlcl-meal-image{max-width:180px;margin:auto!important}
 .tlcl-meal-heading{font-size:29px}
 .tlcl-meal-text{font-size:10px}
 .tlcl-form-fields{grid-template-columns:1fr;gap:7px}
 .tlcl-form-fields input{width:100%!important;height:36px!important}
 .tlcl-form-fields input[type=submit]{width:100%!important;height:38px!important;border-radius:999px!important}
 .tlcl-duo-grid{display:block!important}
 .tlcl-duo-column+.tlcl-duo-column{margin-top:30px}
 .tlcl-playful-title{font-size:21px!important}
 .tlcl-recipe-query .wp-block-post-template,.tlcl-six-grid .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 .tlcl-card-title{font-size:9px!important;min-height:42px;padding:7px 5px 9px}
 .tlcl-about-section{padding:28px 16px}
 .tlcl-about-grid{display:block!important}
 .tlcl-about-photo{margin:12px 18px 28px}
 .tlcl-about-heading{font-size:27px}
 .tlcl-about-text{font-size:10px}
 .tlcl-instagram-bar{padding:17px 22px}
 .tlcl-instagram-text{font-size:11px;line-height:1.35}
 .tlcl-latest-section{padding-top:24px;padding-bottom:26px}
 .tlcl-musttry-section{padding-top:20px;padding-bottom:24px}
 .tlcl-section-head>.wp-block-group__inner-container{display:block!important}
 .tlcl-must-title{font-size:21px}
 .tlcl-head-link{display:none}
 .tlcl-mobile-only{display:flex}
 .tlcl-lined-title{font-size:22px;gap:8px}
 .tlcl-favorites-grid>.wp-block-group__inner-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .tlcl-favorite-icon{border:0!important;box-shadow:var(--tlcl-shadow);border-radius:6px;padding:12px 8px}
 .tlcl-favorite-symbol{width:76px;height:76px}
 .tlcl-feature-splits{display:block!important}
 .tlcl-feature-panel+.tlcl-feature-panel{margin-top:18px}
 .tlcl-feature-heading{font-size:25px}
 .wprm-recipe-container .wprm-recipe{padding:18px!important}
 .wprm-recipe-container .wprm-recipe-name{font-size:27px!important}
 .wprm-recipe-container .wprm-recipe-times-container{margin-left:-18px!important;margin-right:-18px!important;padding:12px 6px!important}
 .wprm-recipe-container .wprm-recipe-servings-container{margin-left:-18px!important;margin-right:-18px!important;padding:14px 18px!important}
}

/* Full-width blocks are already inside a full-width page container. */
.tlcl-home.alignfull,
.tlcl-home .alignfull{
 width:100%!important;
 max-width:100%!important;
 margin-left:0!important;
 margin-right:0!important;
}
/* Editable GeneratePress Block Elements: subscribe bar and footer */
.tlcl-interior-subscribe{margin:0!important;background:var(--tlcl-navy);color:#fff;padding:14px 24px}
.tlcl-interior-subscribe>.wp-block-group__inner-container{display:flex!important;align-items:center;justify-content:center;gap:20px;padding:0!important}
.tlcl-subscribe-text{margin:0!important;color:#fff;font-size:17px;font-weight:800}
.tlcl-subscribe-button{margin:0!important}
.tlcl-subscribe-button .wp-block-button__link{background:var(--tlcl-green)!important;color:var(--tlcl-navy)!important;border-radius:999px!important;padding:9px 20px!important;font-size:11px;font-weight:800}
.tlcl-global-footer,.tlcl-global-footer *{box-sizing:border-box}
.tlcl-global-footer>.wp-block-group__inner-container,
.tlcl-global-footer .wp-block-group__inner-container{max-width:none!important;padding:0!important}
.tlcl-footer-photo-strip{margin:0!important}
.tlcl-footer-strip-query .wp-block-post-template{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:0!important}
.tlcl-footer-strip-query .wp-block-post{margin:0!important}
.tlcl-footer-thumb{margin:0!important}
.tlcl-footer-thumb img{display:block;width:100%!important;aspect-ratio:1/1;object-fit:cover}
.tlcl-footer-main{margin:0!important;background:var(--tlcl-navy);color:#fff;padding:28px 24px 12px}
.tlcl-footer-main>.wp-block-group__inner-container{max-width:1120px!important;margin:auto!important}
.tlcl-footer-social-row>.wp-block-group__inner-container{display:grid!important;grid-template-columns:1.2fr repeat(4,1fr);gap:22px;align-items:center}
.tlcl-footer-stay{margin:0!important;color:#fff!important;font-size:30px;line-height:.8}
.tlcl-footer-social{margin:0!important}
.tlcl-footer-social a{display:flex;align-items:center;gap:10px;color:#fff!important;font-weight:700;text-decoration:none}
.tlcl-footer-social a:before{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:800}
.tlcl-social-instagram a:before{content:"◎";background:var(--tlcl-green)}
.tlcl-social-facebook a:before{content:"f";background:#0F2C42}
.tlcl-social-pinterest a:before{content:"p";background:var(--tlcl-coral)}
.tlcl-social-email a:before{content:"✉";background:var(--tlcl-yellow);color:var(--tlcl-navy)}
.tlcl-footer-legal{border-top:1px solid rgba(255,255,255,.28);margin-top:24px;padding-top:12px}
.tlcl-footer-legal>.wp-block-group__inner-container{display:flex!important;justify-content:space-between;gap:20px}
.tlcl-footer-links,.tlcl-footer-copy{margin:0!important;font-size:8px;font-weight:700;text-transform:uppercase;color:#fff}
.tlcl-footer-links a{color:#fff!important;text-decoration:none}
.site-info{display:none!important}
@media(max-width:768px){
 .tlcl-interior-subscribe{background:var(--tlcl-coral);padding:8px 12px}
 .tlcl-interior-subscribe>.wp-block-group__inner-container{gap:10px}
 .tlcl-subscribe-text{font-size:12px;color:var(--tlcl-navy)}
 .tlcl-subscribe-button .wp-block-button__link{background:var(--tlcl-navy)!important;color:#fff!important;padding:7px 15px!important}
 .tlcl-footer-strip-query .wp-block-post-template{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .tlcl-footer-strip-query .wp-block-post:nth-child(n+7){display:none}
 .tlcl-footer-main{padding:18px 12px 10px}
 .tlcl-footer-social-row>.wp-block-group__inner-container{grid-template-columns:1fr 1fr;gap:12px}
 .tlcl-footer-stay{grid-column:1/3;text-align:left;font-size:28px}
 .tlcl-footer-social a{font-size:12px}
 .tlcl-footer-legal>.wp-block-group__inner-container{display:block!important}
 .tlcl-footer-links{line-height:1.8}
 .tlcl-footer-copy{margin-top:8px!important}
}
/* Native editable interior pages */
.tlcl-page,.tlcl-page *{box-sizing:border-box}
.tlcl-page>.wp-block-group__inner-container,.tlcl-page .wp-block-group[class*="tlcl-"]>.wp-block-group__inner-container{padding:0!important;max-width:none!important}
.tlcl-page .alignfull{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
.tlcl-page-hero,.tlcl-index-intro{background:var(--tlcl-mint-soft);padding:54px max(24px,calc((100vw - 1120px)/2));margin:0!important}
.tlcl-page-title{font-size:50px;margin:0 0 12px!important}
.tlcl-page-intro{max-width:760px;font-size:16px;line-height:1.65;margin:0 0 18px!important}
.tlcl-pill-outline .wp-block-button__link{background:transparent!important;color:var(--tlcl-navy)!important;border:2px solid var(--tlcl-navy);border-radius:999px!important}
.tlcl-page-section{padding:52px 24px;margin:0!important}
.tlcl-page-section>.wp-block-group__inner-container{max-width:1120px!important;margin:auto!important}
.tlcl-page-mint{background:var(--tlcl-mint-soft)}
.tlcl-page-section-title{font-size:34px;margin:0 0 8px!important}
.tlcl-page-section-copy{font-size:14px;line-height:1.6;margin:0 0 20px!important}
.tlcl-page-query .wp-block-post-template{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
.tlcl-page-query .wp-block-post{box-shadow:var(--tlcl-shadow);border-radius:0 0 8px 8px;overflow:hidden}
.tlcl-page-query .wp-block-query-pagination{margin-top:30px}
.tlcl-page-query .page-numbers{display:inline-grid;place-items:center;min-width:36px;height:36px;border-radius:50%;background:var(--tlcl-navy);color:#fff}
.tlcl-index-columns{max-width:1120px;margin:42px auto!important;gap:16px!important}
.tlcl-index-card{border:2px solid var(--tlcl-mint);height:100%}
.tlcl-index-card>.wp-block-group__inner-container{padding:0!important}
.tlcl-index-card-title{margin:0!important;padding:17px;font-size:27px}
.tlcl-index-card.is-green .tlcl-index-card-title{background:var(--tlcl-green)}
.tlcl-index-card.is-yellow .tlcl-index-card-title{background:var(--tlcl-yellow)}
.tlcl-index-card.is-coral .tlcl-index-card-title{background:var(--tlcl-coral)}
.tlcl-index-card.is-mint .tlcl-index-card-title{background:var(--tlcl-mint)}
.tlcl-index-links{list-style:none;margin:0!important;padding:18px 22px!important}
.tlcl-index-links li{margin:0 0 8px}
.tlcl-index-links a{color:var(--tlcl-navy)!important;text-decoration:none}
.tlcl-ebook-promo{max-width:900px;margin:20px auto 60px!important;background:var(--tlcl-fog);padding:30px;align-items:center!important}
.tlcl-ebook-promo-image img{max-width:190px!important}
.tlcl-stars{color:var(--tlcl-yellow);letter-spacing:.12em}
.tlcl-about-page-hero{background:var(--tlcl-mint-soft);padding:48px max(24px,calc((100vw - 1040px)/2));align-items:center!important;margin:0!important}
.tlcl-about-welcome{font:700 52px Oswald,Arial Narrow,sans-serif;color:var(--tlcl-navy);margin:0!important}
.tlcl-about-page-photo img{width:100%!important;aspect-ratio:1.35/1;object-fit:cover}
.tlcl-story{max-width:760px;margin:auto!important}
.tlcl-long-copy{font-size:16px;line-height:1.8;max-width:760px}
.tlcl-reader-favorites{background:var(--tlcl-navy);color:#fff}
.tlcl-reader-favorites h2{color:#fff!important}
.tlcl-simple-page{max-width:820px;margin:auto!important;padding:70px 24px}
.tlcl-breadcrumb{font-size:10px;font-weight:700;letter-spacing:.08em}
.tlcl-ebook-hero{background:var(--tlcl-navy);color:#fff;padding:42px max(24px,calc((100vw - 1000px)/2));align-items:center!important;margin:0!important}
.tlcl-ebook-hero-title{color:#fff!important;font-size:40px}
.tlcl-ebook-hero-copy{color:#fff;line-height:1.7}
.tlcl-ebook-hero-image img{width:100%!important;aspect-ratio:1.3/1;object-fit:cover}
.tlcl-product-row{max-width:1000px;margin:0 auto!important;padding:60px 24px;gap:64px!important;align-items:center!important}
.tlcl-product-row.is-reverse{flex-direction:row-reverse}
.tlcl-product-image img{width:100%!important;aspect-ratio:1/1;object-fit:cover;box-shadow:var(--tlcl-shadow)}
.tlcl-pill-mint .wp-block-button__link{background:var(--tlcl-green)!important;color:var(--tlcl-navy)!important}
@media(max-width:768px){
 .tlcl-page-title{font-size:34px}
 .tlcl-page-hero,.tlcl-index-intro{padding:32px 18px}
 .tlcl-page-section{padding:32px 10px}
 .tlcl-page-query .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
 .tlcl-index-columns{display:block!important;margin:20px 12px!important}
 .tlcl-index-columns>.wp-block-column{margin-bottom:14px}
 .tlcl-ebook-promo{display:block!important;margin:16px 12px 32px!important;text-align:center}
 .tlcl-about-page-hero{display:block!important;padding:28px 18px}
 .tlcl-about-welcome{font-size:38px}
 .tlcl-about-page-photo{margin-top:22px}
 .tlcl-simple-page{padding:42px 18px}
 .tlcl-ebook-hero{display:block!important;padding:26px 18px}
 .tlcl-ebook-hero-title{font-size:31px;margin-top:18px!important}
 .tlcl-product-row,.tlcl-product-row.is-reverse{display:block!important;padding:34px 18px}
 .tlcl-product-copy{margin-top:22px}
}
.tlcl-page.alignfull{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;}


/* === Magic Bloom Home: exact HTML reference rebuild (2026-08-04) === */
.home .site-content{display:block!important;padding:0!important}
.home .content-area{width:100%!important}
.home .site-main{margin:0!important}
.home article.page,.home article.page>.inside-article{margin:0!important;padding:0!important}
.home .entry-content{margin:0!important}
.home .entry-content>.mb-html-home{max-width:none!important}
.mb-html-home{--mb-navy:#0f2c42;--mb-coral:#f7775e;--mb-green:#74d18c;--mb-mint:#d0f1da;--mb-mint-soft:#f5fcf7;--mb-fog:#f2f2f2;--mb-yellow:#ffd46a;--mb-white:#fff;--mb-black:#000;width:100vw;max-width:none!important;margin:0 0 0 calc(50% - 50vw)!important;color:#343434;background:#fff;font-family:Poppins,Montserrat,Arial,sans-serif;font-size:16px;line-height:1.4;overflow:hidden}
.mb-html-home,.mb-html-home *{box-sizing:border-box}
.mb-html-home a{color:inherit;text-decoration:none}
.mb-html-home figure,.mb-html-home p,.mb-html-home h2,.mb-html-home h3{margin:0}
.mb-html-home img{display:block;width:100%;height:auto}
.mb-home-wrap{position:relative;width:min(1100px,calc(100% - 40px));margin-inline:auto}
.mb-home-section{position:relative}
.mb-html-home .wp-block-buttons{margin:0}
.mb-html-home a,.mb-html-home img,.mb-html-home .wp-block-button__link{transition:transform .4s ease,background-color .4s ease,color .4s ease,opacity .4s ease}
.mb-html-home a:focus-visible{outline:3px solid var(--mb-yellow);outline-offset:3px}

/* 01 Hero */
.mb-home-hero{padding-top:20px}
.mb-hero-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:140px 156px;gap:8px}
.mb-hero-card{position:relative;overflow:hidden;background:var(--mb-white)}
.mb-hero-breakfast{grid-column:1;grid-row:1/3}
.mb-hero-dinner{grid-column:2;grid-row:1/3}
.mb-hero-desserts{grid-column:3;grid-row:1/3}
.mb-hero-index{grid-column:4;grid-row:1;background:var(--mb-navy)}
.mb-hero-meet{grid-column:4;grid-row:2}
.mb-hero-image,.mb-hero-image>a,.mb-hero-image img{width:100%;height:100%}
.mb-hero-image img{object-fit:cover}
.mb-hero-label{position:absolute;left:50%;top:50%;min-width:64%;padding:8px 12px;transform:translate(-50%,-50%);background:#fff;text-align:center;font-size:20px;font-weight:700;line-height:1;text-transform:lowercase;white-space:nowrap;color:var(--mb-navy);z-index:2}
.mb-index-image,.mb-index-image>a{width:100%;height:100%}
.mb-index-image img{width:100%;height:100%;object-fit:contain;padding:7px 45px 36px}
.mb-index-label{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);color:#fff;font:500 24px/1 Oswald,Arial Narrow,sans-serif;text-transform:uppercase;white-space:nowrap}
.mb-meet-image,.mb-meet-image>a,.mb-meet-image img{width:100%;height:100%}
.mb-meet-image img{object-fit:cover;object-position:center 35%}
.mb-meet-copy{position:absolute;left:50%;bottom:0;transform:translateX(-50%);min-width:64%;padding:7px 10px;background:#fff;text-align:center;white-space:nowrap}
.mb-meet-title{font-size:20px;line-height:1;text-transform:lowercase;color:var(--mb-navy)}
.mb-meet-excerpt{display:none}
.mb-hero-card:hover .mb-hero-label,.mb-hero-meet:hover .mb-meet-copy{background:var(--mb-navy);color:#fff}
.mb-hero-card:hover .mb-hero-image img,.mb-hero-meet:hover .mb-meet-image img{transform:scale(1.025)}
.mb-hero-index:hover{background:#133955}

/* 02 Quick links */
.mb-home-quick-links{padding:20px 0 32px}
.mb-quick-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;align-items:start}
.mb-quick-item{text-align:center}
.mb-quick-icon{width:62px;height:62px;margin:0 auto 7px!important}
.mb-quick-icon img{width:100%;height:100%;object-fit:contain}
.mb-quick-label{color:var(--mb-navy);font-size:12px;font-weight:700;line-height:1.1}
.mb-quick-item:hover .mb-quick-icon img{transform:rotate(5deg) scale(1.03)}

/* 03 Newsletter */
.mb-home-newsletter{padding:0;background:var(--mb-navy);color:#fff}
.mb-newsletter-grid{display:grid;grid-template-columns:188px 276px minmax(0,1fr);gap:28px;align-items:center;min-height:240px;padding:34px 52px}
.mb-newsletter-image,.mb-newsletter-image img{width:188px;height:126px;object-fit:cover}
.mb-newsletter-copy{text-align:center}
.mb-newsletter-title{color:#fff;font:500 32px/.95 Oswald,Arial Narrow,sans-serif;text-transform:uppercase;letter-spacing:.02em}
.mb-newsletter-title span{color:var(--mb-coral)}
.mb-newsletter-text{margin-top:10px!important;font-size:14px;line-height:1.28}
.mb-newsletter-form .mc4wp-form-fields{display:flex;align-items:center;gap:10px}
.mb-newsletter-form .mc4wp-form-fields input{box-sizing:border-box;height:46px;margin:5px 0;border:0!important;box-shadow:none!important}
.mb-newsletter-form .mc4wp-form-fields input[type=text],
.mb-newsletter-form .mc4wp-form-fields input[type=email]{width:calc((100% - 116px)/2);padding:0 22px;border-radius:25px!important;color:#fff!important;background:rgba(255,255,255,.23)!important;font:400 14px/46px Poppins,Arial,sans-serif}
.mb-newsletter-form .mc4wp-form-fields input::placeholder{color:#fff;opacity:.78}
.mb-newsletter-form .mc4wp-form-fields input[type=submit]{width:96px;height:96px;padding:0!important;border-radius:50%!important;background:var(--mb-green)!important;color:var(--mb-navy)!important;font:700 17px/1 Poppins,Arial,sans-serif;text-transform:lowercase;white-space:normal}
.mb-newsletter-form .mc4wp-form-fields input[type=submit]:hover{transform:rotate(5deg) scale(.96);background:#57b18d!important}
.mb-newsletter-form .mc4wp-response{font-size:13px}

/* 04 Recipe columns */
.mb-home-duo{padding:40px 0 48px}
.mb-duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:58px}
.mb-duo-column{text-align:center}
.mb-playful-title{color:var(--mb-navy);font:700 28px/1.2 Poppins,Montserrat,sans-serif;text-transform:lowercase;letter-spacing:.02em}
.mb-section-copy{min-height:46px;margin:5px 0 16px!important;font-size:14px;line-height:1.35}
.mb-six-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}
.mb-recipe-card{overflow:hidden;background:#fff;border-radius:0 0 10px 10px;box-shadow:0 3px 6px rgba(0,0,0,.16);text-align:center}
.mb-card-image,.mb-card-image>a{display:block;width:100%;aspect-ratio:1/1;overflow:hidden}
.mb-card-image img{width:100%;height:100%;object-fit:cover}
.mb-card-title{display:flex;align-items:center;justify-content:center;min-height:52px;padding:8px 7px;color:#000;font:700 14px/1.15 Poppins,Montserrat,sans-serif}
.mb-card-title a{display:block}
.mb-recipe-card:hover .mb-card-image img{transform:scale(1.035);opacity:.88}
.mb-recipe-card:hover .mb-card-title a{text-decoration:underline}
.mb-button-row{margin-top:22px!important}
.mb-html-home .mb-pill .wp-block-button__link{padding:13px 23px;border:0!important;border-radius:99px!important;background:var(--mb-navy)!important;color:#fff!important;font:700 15px/1 Poppins,Montserrat,sans-serif;text-transform:lowercase;box-shadow:none}
.mb-html-home .mb-button-coral .wp-block-button__link{background:var(--mb-navy)!important}
.mb-html-home .mb-pill .wp-block-button__link:hover{transform:scale(.96);background:#324e6f!important}

/* 05 About */
.mb-home-about{padding:68px 0;background:var(--mb-fog)}
.mb-about-grid{display:grid;grid-template-columns:440px minmax(0,1fr);gap:54px;align-items:center;max-width:1020px}
.mb-about-photo{position:relative;padding:0 0 0 32px}
.mb-about-photo:before{content:"";position:absolute;inset:-32px 32px -32px 0;background:url("https://sparkmagicdiy.com/wp-content/uploads/2026/08/crosshatch-bg.png") left center/cover no-repeat}
.mb-about-image{position:relative;border:12px solid #fff}
.mb-about-image img{aspect-ratio:400/267;object-fit:cover}
.mb-about-copy{text-align:center;color:var(--mb-navy)}
.mb-eyebrow{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.mb-about-title{margin-top:6px!important;color:var(--mb-navy);font:500 44px/1 Oswald,Arial Narrow,sans-serif;text-transform:uppercase}
.mb-about-text{max-width:520px;margin:14px auto 0!important;font-size:18px;line-height:1.5}
.mb-html-home .mb-button-light .wp-block-button__link{background:#fff!important;color:var(--mb-navy)!important}
.mb-html-home .mb-button-light .wp-block-button__link:hover{background:var(--mb-coral)!important;color:#fff!important}

/* 06 Instagram */
.mb-instagram-bar{background:var(--mb-navy);color:#fff}
.mb-instagram-inner{min-height:68px;display:flex;align-items:center;justify-content:center}
.mb-instagram-text{font-size:17px;font-weight:700;text-align:center}
.mb-instagram-text strong{color:var(--mb-coral)}
.mb-instagram-text a:hover{color:var(--mb-coral)}

/* 07 Latest */
.mb-home-latest{padding:80px 0 32px}
.mb-latest-wrap:before{content:"";position:absolute;z-index:2;top:-65px;left:-18px;width:205px;height:105px;background:url("https://sparkmagicdiy.com/wp-content/uploads/2026/08/magic-bloom-home/the-latest-text.svg") center/contain no-repeat}
.mb-four-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.mb-four-grid .mb-card-title{min-height:65px;font-size:17px;color:var(--mb-navy)}
.mb-latest-wrap>.mb-button-row{position:absolute;top:-54px;right:0;margin:0!important}
.mb-html-home .mb-button-link .wp-block-button__link{padding:10px 0!important;background:transparent!important;color:var(--mb-navy)!important}
.mb-html-home .mb-button-link .wp-block-button__link:hover{transform:none;text-decoration:underline}

/* 08 Must try */
.mb-home-musttry{padding:38px 0 48px;background:var(--mb-mint-soft)}
.mb-must-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.mb-must-title{display:flex;align-items:center;color:var(--mb-navy);font:700 28px/1 Poppins,Montserrat,sans-serif;text-transform:capitalize}
.mb-must-title:before{content:"";width:46px;height:46px;margin-right:8px;background:url("https://sparkmagicdiy.com/wp-content/uploads/2026/08/magic-bloom-home/favorites-icon.svg") center/contain no-repeat}
.mb-must-link{font-size:14px;font-weight:700;color:var(--mb-navy)}
.mb-must-link a:hover{text-decoration:underline}
.mb-must-mobile-button{display:none!important}

@media (max-width:767px){
 .mb-html-home{font-size:14px}
 .mb-home-wrap{width:calc(100% - 20px)}
 .mb-home-hero{padding-top:8px}
 .mb-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:6px}
 .mb-hero-breakfast{grid-column:1;grid-row:1}
 .mb-hero-dinner{grid-column:2;grid-row:1}
 .mb-hero-desserts{grid-column:1;grid-row:2}
 .mb-hero-index{grid-column:2;grid-row:2}
 .mb-hero-meet{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:38% 62%;min-height:148px;background:var(--mb-mint)}
 .mb-hero-image,.mb-hero-image>a{aspect-ratio:1.08/1;height:auto}
 .mb-hero-label{min-width:72%;padding:7px 8px;font-size:15px}
 .mb-index-image,.mb-index-image>a{height:auto;aspect-ratio:1.08/1}
 .mb-index-image img{padding:12px 28px 40px}
 .mb-index-label{bottom:13px;font-size:18px}
 .mb-meet-image,.mb-meet-image>a,.mb-meet-image img{height:148px}
 .mb-meet-copy{position:static;transform:none;min-width:0;padding:18px 12px;background:transparent;white-space:normal;display:flex;flex-direction:column;justify-content:center}
 .mb-meet-title{font-size:20px}
 .mb-meet-excerpt{display:block;margin-top:9px!important;font-size:11px;line-height:1.35;color:var(--mb-navy)}
 .mb-hero-meet:hover .mb-meet-copy{background:transparent;color:var(--mb-navy)}
 .mb-home-quick-links{padding:10px 0 18px}
 .mb-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .mb-quick-item{padding:9px 4px;border-radius:8px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.14)}
 .mb-quick-icon{width:54px;height:54px;margin-bottom:6px!important}
 .mb-quick-label{font-size:10px}
 .mb-newsletter-grid{display:block;min-height:0;padding:18px 16px 22px;text-align:center}
 .mb-newsletter-image{margin:0 auto 12px!important}
 .mb-newsletter-image,.mb-newsletter-image img{width:170px;height:113px}
 .mb-newsletter-title{font-size:30px}
 .mb-newsletter-text{max-width:320px;margin:9px auto 10px!important;font-size:12px}
 .mb-newsletter-form .mc4wp-form-fields{display:block}
 .mb-newsletter-form .mc4wp-form-fields input[type=text],
 .mb-newsletter-form .mc4wp-form-fields input[type=email],
 .mb-newsletter-form .mc4wp-form-fields input[type=submit]{width:100%;height:42px;margin:5px 0}
 .mb-newsletter-form .mc4wp-form-fields input[type=submit]{border-radius:24px!important;font-size:15px}
 .mb-home-duo{padding:20px 0 28px}
 .mb-duo-grid{grid-template-columns:1fr;gap:22px}
 .mb-playful-title{font-size:22px}
 .mb-section-copy{min-height:0;margin:4px auto 10px!important;max-width:340px;font-size:11px}
 .mb-six-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
 .mb-card-title{min-height:47px;padding:7px 5px;font-size:11px}
 .mb-button-row{margin-top:14px!important}
 .mb-html-home .mb-pill .wp-block-button__link{padding:11px 17px;font-size:12px}
 .mb-html-home .mb-button-coral .wp-block-button__link{background:var(--mb-coral)!important;color:var(--mb-navy)!important}
 .mb-home-about{padding:36px 0 30px}
 .mb-about-grid{grid-template-columns:1fr;gap:34px}
 .mb-about-photo{max-width:340px;margin:auto;padding-left:20px}
 .mb-about-photo:before{inset:-18px 22px -18px 0}
 .mb-about-image{border-width:9px}
 .mb-eyebrow{font-size:10px}
 .mb-about-title{font-size:34px}
 .mb-about-text{max-width:350px;font-size:13px;line-height:1.45}
 .mb-instagram-inner{min-height:80px;padding:12px 24px}
 .mb-instagram-text{max-width:300px;font-size:13px;line-height:1.25}
 .mb-home-latest{padding:64px 0 26px}
 .mb-latest-wrap:before{top:-54px;left:0;width:150px;height:75px}
 .mb-four-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
 .mb-four-grid .mb-card-title{min-height:54px;font-size:11px}
 .mb-latest-wrap>.mb-button-row{position:static;margin-top:14px!important}
 .mb-html-home .mb-button-link .wp-block-button__link{padding:11px 17px!important;background:var(--mb-navy)!important;color:#fff!important}
 .mb-home-musttry{padding:22px 0 30px}
 .mb-must-head{justify-content:center;margin-bottom:10px}
 .mb-must-title{font-size:22px}
 .mb-must-title:before{width:32px;height:32px}
 .mb-must-link{display:none}
 .mb-must-mobile-button{display:flex!important}
}
@media (prefers-reduced-motion:reduce){
 .mb-html-home a,.mb-html-home img,.mb-html-home .wp-block-button__link{transition:none!important}
}


/* Public native Mailchimp form */
.mb-newsletter-form>p[style]{display:none!important}
.mb-newsletter-form .tlcl-form-fields{display:flex;align-items:center;gap:10px}
.mb-newsletter-form .mc4wp-form-fields{display:block}
.mb-newsletter-form .mc4wp-form-fields input[type=text],
.mb-newsletter-form .mc4wp-form-fields input[type=email]{width:calc((100% - 116px)/2)}
.mb-newsletter-form .mc4wp-form-fields input[type=submit]{flex:0 0 96px}

/* 09 Low carb favorites */
.mb-home-favorites{padding:42px 0 34px;background:#fff}
.mb-lined-title{display:flex;align-items:center;gap:16px;color:var(--mb-navy);font:500 32px/1 Oswald,Arial Narrow,sans-serif;text-transform:uppercase;white-space:nowrap}
.mb-lined-title:before,.mb-lined-title:after{content:"";height:3px;background:var(--mb-mint);flex:1}
.mb-favorites-copy{margin:9px 0 26px!important;text-align:center;font-size:13px}
.mb-favorites-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.mb-favorite-item{padding:18px 8px 16px;background:#fff;border-left:1px solid #e9eeeb;border-right:1px solid #e9eeeb;box-shadow:0 3px 7px rgba(15,44,66,.08);text-align:center}
.mb-favorite-icon{width:120px;height:120px;margin:0 auto 12px!important}
.mb-favorite-icon img{width:100%;height:100%;object-fit:contain}
.mb-favorite-label{color:var(--mb-navy);font:500 21px/1 Oswald,Arial Narrow,sans-serif;text-transform:uppercase}
.mb-favorite-item:hover .mb-favorite-icon img{transform:rotate(4deg) scale(1.03)}
.mb-favorite-item:hover .mb-favorite-label{color:#4d5f75}

/* 10 Footer feature collections */
.mb-home-footer-features{padding:0 0 34px}
.mb-footer-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.mb-footer-feature-card{overflow:hidden;padding-bottom:24px;background:#fff;box-shadow:0 3px 7px rgba(15,44,66,.13);text-align:center}
.mb-footer-feature-image,.mb-footer-feature-image>a{display:block;width:100%;aspect-ratio:1.5/1;overflow:hidden}
.mb-footer-feature-image img{width:100%;height:100%;object-fit:cover}
.mb-footer-feature-title{margin-top:18px!important;color:var(--mb-navy);font:500 30px/1 Oswald,Arial Narrow,sans-serif;text-transform:uppercase}
.mb-footer-feature-copy{min-height:42px;margin:8px auto 0!important;max-width:470px;padding:0 18px;font-size:13px;line-height:1.35}
.mb-footer-feature-card>.mb-button-row{margin-top:14px!important}
.mb-html-home .mb-button-outline .wp-block-button__link{padding:10px 22px!important;color:var(--mb-navy)!important;background:#fff!important;border:2px solid var(--mb-coral)!important}
.mb-html-home .mb-button-outline .wp-block-button__link:hover{color:#fff!important;background:var(--mb-navy)!important;border-color:var(--mb-navy)!important}
@media (max-width:767px){
 .mb-newsletter-form .tlcl-form-fields{display:block}
 .mb-newsletter-form .mc4wp-form-fields input[type=text],
 .mb-newsletter-form .mc4wp-form-fields input[type=email],
 .mb-newsletter-form .mc4wp-form-fields input[type=submit]{width:100%;flex:none}
 .mb-home-favorites{padding:26px 0}
 .mb-lined-title{gap:8px;font-size:24px;white-space:normal;text-align:center}
 .mb-lined-title:before,.mb-lined-title:after{display:none}
 .mb-favorites-copy{max-width:330px;margin:8px auto 18px!important;font-size:11px}
 .mb-favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .mb-favorite-item{padding:14px 6px}
 .mb-favorite-icon{width:92px;height:92px}
 .mb-favorite-label{font-size:18px}
 .mb-home-footer-features{padding-bottom:22px}
 .mb-footer-feature-grid{grid-template-columns:1fr;gap:14px}
 .mb-footer-feature-title{font-size:25px}
 .mb-footer-feature-copy{min-height:0;font-size:12px}
}

/* === End Magic Bloom Home HTML reference === */


/* === Magic Bloom child theme: exact reference header and local meal-plan form === */
:root{
	--mb-header-navy:#0F2C42;
	--mb-header-coral:#F7775E;
	--mb-header-mint:#D0F1DA;
	--mb-header-green:#74D18C;
	--mb-header-yellow:#FFD46A;
	--mb-header-border:rgba(15,44,66,.16);
}
.mb-site-header,.mb-site-header *{box-sizing:border-box}
.mb-site-header{
	position:relative;
	z-index:9990;
	width:100%;
	border-top:7px solid var(--mb-header-mint);
	background:#fff;
	color:var(--mb-header-navy);
}
.mb-site-header ul{margin:0;padding:0;list-style:none}
.mb-site-header a{color:inherit;text-decoration:none}
.mb-header-main{
	display:grid;
	grid-template-columns:minmax(240px,321px) minmax(300px,1fr) auto;
	align-items:center;
	width:min(1180px,calc(100% - 40px));
	min-height:91px;
	margin:0 auto;
}
.mb-brand{
	display:flex;
	align-items:center;
	width:max-content;
	max-width:100%;
	color:var(--mb-header-navy)!important;
}
.mb-brand-image{
	display:block;
	width:auto;
	max-width:250px;
	height:auto;
	max-height:57px;
	object-fit:contain;
}
.mb-brand-text{
	font:500 clamp(24px,2.25vw,35px)/1 Oswald,Arial Narrow,sans-serif;
	letter-spacing:.02em;
	text-transform:uppercase;
}
.mb-primary-nav{justify-self:start}
.mb-primary-menu{
	display:flex;
	align-items:center;
	gap:5px;
}
.mb-primary-menu>li>a{
	position:relative;
	display:block;
	padding:7px 11px;
	color:var(--mb-header-navy);
	font:700 16px/1.2 Poppins,Arial,sans-serif;
}
.mb-primary-menu>li:first-child>a,
.mb-primary-menu>li.tlcl-menu-pill>a{
	padding:6px 14px;
	border:2px solid var(--mb-header-mint);
	border-radius:24px;
}
.mb-primary-menu>li:first-child>a:hover,
.mb-primary-menu>li:first-child>a:focus-visible,
.mb-primary-menu>li.tlcl-menu-pill>a:hover,
.mb-primary-menu>li.tlcl-menu-pill>a:focus-visible{
	border-color:var(--mb-header-navy);
	background:var(--mb-header-navy);
	color:#fff;
}
.mb-primary-menu>li:not(:first-child)>a:after{
	position:absolute;
	right:11px;
	bottom:2px;
	left:11px;
	height:2px;
	content:"";
	background:var(--mb-header-navy);
	transform:scaleX(0);
	transform-origin:left;
	transition:transform .2s ease;
}
.mb-primary-menu>li:not(:first-child)>a:hover:after,
.mb-primary-menu>li:not(:first-child)>a:focus-visible:after{transform:scaleX(1)}
.mb-header-tools{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:24px;
}
.mb-social-fallback,.mb-social-menu{
	display:flex;
	align-items:center;
	gap:7px;
}
.mb-social-menu li a,.mb-social-icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:28px;
	height:28px;
	border:2px solid var(--mb-header-navy);
	border-radius:50%;
	background:var(--mb-header-navy);
	color:#fff!important;
	font:700 16px/1 Poppins,Arial,sans-serif;
	transition:transform .2s ease;
}
.mb-social-menu li:nth-child(2) a,.mb-social-instagram{
	border-color:var(--mb-header-yellow);
	background:var(--mb-header-yellow);
	color:var(--mb-header-navy)!important;
}
.mb-social-menu li:nth-child(3) a,.mb-social-pinterest{
	border-color:var(--mb-header-green);
	background:var(--mb-header-green);
	color:var(--mb-header-navy)!important;
}
.mb-social-menu li a:hover,.mb-social-icon:hover{transform:scale(1.15)}
.mb-social-instagram>span[aria-hidden]{font-size:22px;line-height:.7;transform:translateY(-1px)}
.mb-trending{
	display:flex;
	flex-direction:column;
	align-items:center;
	width:84px;
	color:var(--mb-header-navy)!important;
	font:700 10px/1.25 Poppins,Arial,sans-serif;
	text-align:center;
	text-transform:uppercase;
	transition:transform .2s ease;
}
.mb-trending strong{
	font:500 16px/1.1 Oswald,Arial Narrow,sans-serif;
	letter-spacing:.06em;
}
.mb-trending svg{width:34px;height:15px;margin-top:2px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mb-trending:hover{transform:rotate(5deg)}
.mb-desktop-subbar{
	height:49px;
	border-top:1px solid var(--mb-header-border);
	border-bottom:1px solid var(--mb-header-border);
}
.mb-header-sub-inner{
	display:grid;
	grid-template-columns:minmax(0,1fr) 250px;
	align-items:stretch;
	width:min(1180px,calc(100% - 40px));
	height:48px;
	margin:0 auto;
}
.mb-secondary-nav{min-width:0}
.mb-secondary-menu{
	display:flex;
	align-items:center;
	height:100%;
}
.mb-secondary-menu>li{position:relative;white-space:nowrap}
.mb-secondary-menu>li+li:before{
	position:absolute;
	top:50%;
	left:-3px;
	width:7px;
	height:7px;
	border-radius:50%;
	background:var(--mb-header-navy);
	content:"";
	transform:translateY(-50%);
}
.mb-secondary-menu>li>a{
	position:relative;
	display:block;
	padding:15px 18px;
	color:var(--mb-header-navy);
	font:500 16px/18px Oswald,Arial Narrow,sans-serif;
	letter-spacing:.05em;
	text-transform:uppercase;
}
.mb-secondary-menu>li:first-child>a{padding-left:0}
.mb-secondary-menu>li>a:after{
	position:absolute;
	right:18px;
	bottom:9px;
	left:18px;
	height:2px;
	content:"";
	background:var(--mb-header-navy);
	opacity:0;
	transition:opacity .2s ease;
}
.mb-secondary-menu>li:first-child>a:after{left:0}
.mb-secondary-menu>li>a:hover:after,.mb-secondary-menu>li>a:focus-visible:after{opacity:1}
.mb-header-search{
	position:relative;
	display:flex;
	align-items:center;
	height:48px;
	border-left:1px solid var(--mb-header-border);
}
.mb-header-search input{
	box-sizing:border-box;
	width:100%;
	height:47px;
	margin:0;
	padding:0 48px 0 18px;
	border:0!important;
	border-radius:0!important;
	outline:0;
	background:#fff;
	color:var(--mb-header-navy);
	font:400 14px/47px Poppins,Arial,sans-serif;
}
.mb-header-search input::placeholder{color:#6B7883;opacity:1}
.mb-header-search button{
	position:absolute;
	top:0;
	right:0;
	display:flex;
	align-items:center;
	justify-content:center;
	width:44px;
	height:47px;
	padding:0;
	border:0;
	background:transparent;
	color:var(--mb-header-navy);
}
.mb-header-search svg,.mb-mobile-action svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.mb-mobile-header{display:none}
.mb-child-active .main-navigation,
.mb-child-active #mobile-header{display:none!important}

/* Meal-plan collector matches the reference: stacked 272px fields + 92px circle. */
.mb-newsletter-grid{
	grid-template-columns:188px 276px minmax(376px,1fr)!important;
	gap:28px!important;
	min-height:198px!important;
	padding:36px 52px!important;
}
.mb-newsletter-form{min-width:0}
.mb-email-honeypot{
	position:absolute!important;
	left:-10000px!important;
	width:1px!important;
	height:1px!important;
	overflow:hidden!important;
}
.mb-email-form-fields{
	display:grid;
	grid-template-columns:minmax(0,272px) 92px;
	grid-template-rows:46px 46px;
	gap:8px 12px;
	align-items:center;
	width:376px;
	max-width:100%;
}
.mb-email-field{display:block;margin:0}
.mb-email-first{grid-column:1;grid-row:1}
.mb-email-address{grid-column:1;grid-row:2}
.mb-email-field input{
	box-sizing:border-box;
	width:272px!important;
	max-width:100%;
	height:46px!important;
	margin:0!important;
	padding:0 24px!important;
	border:0!important;
	border-radius:28px!important;
	outline:0;
	background:rgba(255,255,255,.2)!important;
	box-shadow:none!important;
	color:#fff!important;
	font:400 16px/46px Poppins,Arial,sans-serif!important;
	text-transform:none!important;
}
.mb-email-field input::placeholder{color:#fff!important;opacity:1;text-transform:none}
.mb-email-field input:focus{box-shadow:0 0 0 3px rgba(255,212,106,.75)!important}
.mb-email-submit{
	display:flex;
	grid-column:2;
	grid-row:1/3;
	align-items:center;
	justify-content:center;
	width:92px!important;
	height:92px!important;
	margin:0!important;
	padding:8px!important;
	border:0!important;
	border-radius:50%!important;
	background:var(--mb-header-green)!important;
	color:var(--mb-header-navy)!important;
	font:700 20px/1 Poppins,Arial,sans-serif!important;
	text-align:center;
	text-transform:none;
	transition:transform .2s ease,background .2s ease;
}
.mb-email-submit:hover,.mb-email-submit:focus-visible{
	background:#57B18D!important;
	transform:rotate(5deg) scale(.97);
}
.mb-form-message{
	margin:8px 0 0!important;
	color:#fff;
	font:600 14px/1.4 Poppins,Arial,sans-serif;
}
.mb-form-success{
	display:flex;
	align-items:center;
	min-height:92px;
	color:#fff;
	font-size:17px;
}
.mb-form-error{color:var(--mb-header-yellow)}

@media (max-width:1050px) and (min-width:768px){
	.mb-header-main,.mb-header-sub-inner{width:calc(100% - 24px)}
	.mb-header-main{grid-template-columns:minmax(190px,240px) minmax(280px,1fr) auto}
	.mb-brand-image{max-width:205px}
	.mb-primary-menu>li>a{padding-right:8px;padding-left:8px;font-size:14px}
	.mb-header-tools{gap:10px}
	.mb-secondary-menu>li>a{padding-right:11px;padding-left:11px;font-size:14px}
	.mb-secondary-menu>li+li:before{left:-2px;width:5px;height:5px}
	.mb-newsletter-grid{grid-template-columns:170px 240px minmax(376px,1fr)!important;padding-right:24px!important;padding-left:24px!important}
	.mb-newsletter-image,.mb-newsletter-image img{width:170px!important}
}

@media (max-width:767px){
	.mb-site-header{
		position:sticky;
		top:0;
		border-top:0;
		z-index:99990;
	}
	.admin-bar .mb-site-header{top:46px}
	.mb-desktop-header{display:none}
	.mb-mobile-header{display:block}
	.mb-mobile-row{
		display:grid;
		grid-template-columns:48px 1fr 48px;
		align-items:center;
		height:48px;
		background:#fff;
	}
	.mb-mobile-row .mb-brand{justify-self:center;max-width:169px}
	.mb-mobile-row .mb-brand-image{max-width:169px;max-height:42px}
	.mb-mobile-row .mb-brand-text{font-size:24px;white-space:nowrap}
	.mb-mobile-action{
		display:flex;
		align-items:center;
		justify-content:center;
		width:48px;
		height:48px;
		margin:0;
		padding:0;
		border:0;
		background:#fff;
		color:var(--mb-header-navy);
	}
	.mb-menu-toggle{flex-direction:column;gap:4px}
	.mb-menu-toggle span{
		display:block;
		width:19px;
		height:2px;
		background:currentColor;
		transition:transform .2s ease,opacity .2s ease;
	}
	.mb-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
	.mb-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
	.mb-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
	.mb-mobile-cta{
		display:flex;
		align-items:center;
		justify-content:center;
		height:40px;
		background:var(--mb-header-coral);
		color:var(--mb-header-navy)!important;
	}
	.mb-mobile-cta>span{
		font:700 16px/1 Poppins,Arial,sans-serif;
		text-transform:capitalize;
	}
	.mb-mobile-cta>strong{
		margin-left:6px;
		padding:8px 16px;
		border-radius:20px;
		background:var(--mb-header-navy);
		color:#fff;
		font:700 10px/1 Poppins,Arial,sans-serif;
		text-transform:lowercase;
	}
	.mb-mobile-panel{
		position:fixed;
		z-index:99980;
		top:88px;
		right:0;
		bottom:0;
		left:0;
		overflow-y:auto;
		background:rgba(15,44,66,.97);
		color:#fff;
	}
	.admin-bar .mb-mobile-panel{top:134px}
	.mb-mobile-panel[hidden]{display:none!important}
	.mb-mobile-panel-inner{padding:16px 0 28px}
	.mb-mobile-search{
		width:calc(100% - 32px);
		height:48px;
		margin:0 auto 12px;
		border:0;
		border-radius:24px;
		overflow:hidden;
	}
	.mb-mobile-search input{height:48px;border-radius:24px!important}
	.mb-mobile-primary-menu>li,.mb-mobile-secondary-menu>li{border-bottom:1px solid rgba(255,255,255,.12)}
	.mb-mobile-primary-menu a,.mb-mobile-secondary-menu a{
		display:block;
		padding:14px 24px;
		color:#fff;
		font:700 20px/1.2 Poppins,Arial,sans-serif;
	}
	.mb-mobile-primary-menu>li:first-child>a{
		display:inline-block;
		margin:9px 24px;
		padding:8px 16px;
		border:2px solid var(--mb-header-mint);
		border-radius:24px;
	}
	.mb-mobile-secondary-menu a{
		padding-top:11px;
		padding-bottom:11px;
		font:500 16px/1.2 Oswald,Arial Narrow,sans-serif;
		letter-spacing:.05em;
		text-transform:uppercase;
	}
	.mb-mobile-panel .mb-social-fallback,.mb-mobile-panel .mb-social-menu{justify-content:center;margin-top:22px}
	body.mb-nav-open{overflow:hidden}

	.mb-newsletter-grid{
		display:block!important;
		min-height:0!important;
		padding:18px 16px 22px!important;
		text-align:center;
	}
	.mb-newsletter-form{max-width:380px;margin:0 auto}
	.mb-email-form-fields{display:block;width:100%}
	.mb-email-field{display:block}
	.mb-email-field input{
		width:100%!important;
		height:46px!important;
		margin:6px 0!important;
		line-height:46px!important;
	}
	.mb-email-submit{
		display:block;
		width:100%!important;
		height:48px!important;
		margin:6px 0 4px!important;
		padding:0 20px!important;
		border-radius:100px!important;
		font-size:18px!important;
		line-height:48px!important;
	}
	.mb-email-submit:hover,.mb-email-submit:focus-visible{transform:scale(.97)}
	.mb-form-success{justify-content:center;min-height:64px}
}
@media (max-width:374px){
	.mb-mobile-cta>span{font-size:12px}
	.mb-mobile-cta>strong{padding-right:13px;padding-left:13px}
}
@media screen and (min-width:783px){
	.admin-bar .mb-site-header{top:32px}
}
@media (prefers-reduced-motion:reduce){
	.mb-site-header *,.mb-email-submit{transition:none!important}
}
/* === End exact header and local meal-plan form === */
/* Header QA corrections */
.mb-primary-menu>.tlcl-menu-trending,
.mb-mobile-primary-menu>.tlcl-menu-trending{display:none!important}
html{overflow-x:clip}
@media (min-width:768px){
	.admin-bar .mb-site-header{top:auto}
}

/* ========================================================================== 
   MB v1.4.0 header + back-to-top repair
   Desktop uses a JS-assisted fixed state so it is not defeated by ancestor
   overflow/transform rules. Initial page layout remains unchanged.
   ========================================================================== */
.mb-site-header-placeholder {
	display: none;
	width: 100%;
	height: 0;
	margin: 0;
	padding: 0;
}
@media (min-width: 768px) {
	.mb-site-header.mb-is-stuck {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: 0 !important;
		z-index: 99990 !important;
		width: 100% !important;
		box-shadow: 0 8px 26px rgba(15,44,66,.10) !important;
		animation: mbHeaderIn .18s ease-out both;
	}
	.admin-bar .mb-site-header.mb-is-stuck {
		top: 32px !important;
	}
	.mb-site-header-placeholder.is-active {
		display: block;
	}
}
@keyframes mbHeaderIn {
	from { opacity: .98; transform: translateY(-5px); }
	to { opacity: 1; transform: translateY(0); }
}

.mb-back-to-top {
	position: fixed !important;
	right: 24px !important;
	bottom: 24px !important;
	z-index: 99980 !important;
	display: grid !important;
	place-items: center !important;
	width: 48px !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--mb-header-navy,#0F2C42) !important;
	color: #fff !important;
	box-shadow: 0 10px 28px rgba(15,44,66,.24) !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: translateY(12px) scale(.9) !important;
	transition: opacity .24s ease, visibility .24s ease, transform .24s cubic-bezier(.2,.8,.2,1), box-shadow .24s ease !important;
	cursor: pointer !important;
}
.mb-back-to-top::after {
	position: absolute;
	inset: -3px;
	content: "";
	border: 2px solid var(--mb-header-coral,#F7775E);
	border-radius: 50%;
	opacity: .8;
	transform: scale(.88);
	transition: transform .24s ease, opacity .24s ease;
}
.mb-back-to-top.is-visible {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) scale(1) !important;
}
.mb-back-to-top:hover,
.mb-back-to-top:focus-visible {
	outline: none !important;
	box-shadow: 0 14px 34px rgba(15,44,66,.32) !important;
	transform: translateY(-3px) scale(1.04) !important;
}
.mb-back-to-top:hover::after,
.mb-back-to-top:focus-visible::after {
	opacity: 1;
	transform: scale(1);
}
.mb-back-to-top svg {
	position: relative;
	z-index: 2;
	width: 23px !important;
	height: 23px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 2.2 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
	transition: transform .24s ease !important;
}
.mb-back-to-top:hover svg,
.mb-back-to-top:focus-visible svg {
	transform: translateY(-2px) !important;
}
.mb-back-to-top-ring { display: none !important; }
@media (max-width: 767px) {
	.mb-back-to-top {
		right: 16px !important;
		bottom: 18px !important;
		width: 44px !important;
		height: 44px !important;
	}
}
@media (prefers-reduced-motion: reduce) {
	.mb-site-header.mb-is-stuck { animation: none !important; }
	.mb-back-to-top,
	.mb-back-to-top::after,
	.mb-back-to-top svg { transition: none !important; }
}

@media (min-width:768px) and (max-width:782px) {
	.admin-bar .mb-site-header.mb-is-stuck { top: 46px !important; }
}

/* ========================================================================== 
   MB v1.6.0 compact sticky navigation repair
   The full header is intentionally NOT sticky. Desktop sticks only the
   category/search subbar; mobile sticks only the logo/search/menu row.
   ========================================================================== */
.mb-site-header,
.admin-bar .mb-site-header,
.mb-site-header.mb-is-stuck,
.admin-bar .mb-site-header.mb-is-stuck {
	position: relative !important;
	top: auto !important;
	right: auto !important;
	left: auto !important;
	box-shadow: none !important;
	animation: none !important;
	transform: none !important;
}
.mb-site-header-placeholder { display: none !important; height: 0 !important; }
.mb-desktop-subbar-placeholder,
.mb-mobile-row-placeholder {
	display: none;
	width: 100%;
	height: 0;
	margin: 0;
	padding: 0;
}
.mb-desktop-subbar-placeholder.is-active,
.mb-mobile-row-placeholder.is-active { display: block; }

@media (min-width: 768px) {
	.mb-desktop-subbar.mb-nav-stuck {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: 0 !important;
		z-index: 99990 !important;
		width: 100% !important;
		background: rgba(255,255,255,.96) !important;
		box-shadow: 0 8px 24px rgba(15,44,66,.12) !important;
		backdrop-filter: blur(12px) saturate(1.1);
		-webkit-backdrop-filter: blur(12px) saturate(1.1);
		animation: mbCompactNavIn .2s ease-out both;
	}
	.admin-bar .mb-desktop-subbar.mb-nav-stuck { top: 32px !important; }
	.mb-desktop-subbar.mb-nav-stuck .mb-header-sub-inner {
		width: min(1180px,calc(100% - 40px));
	}
}

@media (max-width: 767px) {
	/* Important: relative at rest prevents the old admin-bar double offset. */
	.mb-site-header { position: relative !important; top: auto !important; }
	.admin-bar .mb-site-header { top: auto !important; }
	.mb-mobile-row.mb-nav-stuck {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: 0 !important;
		z-index: 99992 !important;
		width: 100% !important;
		box-shadow: 0 8px 22px rgba(15,44,66,.13) !important;
		background: rgba(255,255,255,.96) !important;
		backdrop-filter: blur(12px) saturate(1.08);
		-webkit-backdrop-filter: blur(12px) saturate(1.08);
		animation: mbCompactNavIn .18s ease-out both;
	}
	.admin-bar .mb-mobile-row.mb-nav-stuck { top: 46px !important; }
	.mb-mobile-row.mb-nav-stuck .mb-brand-text { font-size: 22px; }
	.mb-mobile-row.mb-nav-stuck .mb-mobile-action { background: transparent; }

	/* Panel sits below the full mobile header at page top, then below only the
	   compact sticky row after the coral CTA has scrolled away. */
	.mb-mobile-panel { top: 88px !important; }
	.admin-bar .mb-mobile-panel { top: 134px !important; }
	.mb-site-header.mb-mobile-nav-stuck .mb-mobile-panel { top: 48px !important; }
	.admin-bar .mb-site-header.mb-mobile-nav-stuck .mb-mobile-panel { top: 94px !important; }
}

@keyframes mbCompactNavIn {
	from { opacity: .96; transform: translateY(-7px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Mobile back-to-top: smaller and never covers newsletter/comment controls. */
@media (max-width: 767px) {
	.mb-back-to-top {
		right: max(8px, env(safe-area-inset-right)) !important;
		bottom: max(12px, env(safe-area-inset-bottom)) !important;
		width: 40px !important;
		height: 40px !important;
	}
	.mb-back-to-top.is-context-hidden {
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		transform: translateY(10px) scale(.88) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mb-desktop-subbar.mb-nav-stuck,
	.mb-mobile-row.mb-nav-stuck { animation: none !important; }
}

/* ========================================================================== 
   MB 2.0 — one global mobile header/CTA + one global responsive footer
   ========================================================================== */

/* Replace legacy GeneratePress/Block-Element footer fragments everywhere. */

.mb-global-footer,
.mb-global-footer * { box-sizing: border-box; }
.mb-global-footer {
	display: block;
	clear: both;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	background: #0f2c42;
	color: #fff;
	font-family: Poppins, Arial, sans-serif;
}
.mb-footer-recipes {
	display: grid;
	grid-template-columns: repeat(7, minmax(0,1fr));
	gap: 0;
	width: 100%;
	margin: 0;
	padding: 0;
	background: #fff;
}
.mb-footer-recipe {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	margin: 0;
	padding: 0;
	overflow: hidden;
	background: #e8e8e8;
	text-decoration: none !important;
}
.mb-footer-recipe-image,
.mb-footer-recipe-placeholder {
	display: block;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover;
	transition: transform .28s ease, opacity .28s ease;
}
.mb-footer-recipe:hover .mb-footer-recipe-image,
.mb-footer-recipe:focus-visible .mb-footer-recipe-image { transform: scale(1.035); }

.mb-footer-main {
	width: 100%;
	margin: 0;
	padding: 28px 24px 26px;
	background: #0f2c42;
}
.mb-footer-inner {
	display: grid;
	grid-template-columns: 180px minmax(0,1fr);
	align-items: center;
	gap: 28px;
	width: min(1100px,100%);
	margin: 0 auto;
}
.mb-footer-heading {
	margin: 0 !important;
	color: #fff !important;
	font: 700 31px/.92 Oswald, "Arial Narrow", sans-serif !important;
	letter-spacing: .035em;
	text-transform: uppercase;
}
.mb-footer-heading span { color: #f7775e; }
.mb-footer-social-grid {
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	gap: 12px;
	width: 100%;
}
.mb-footer-social {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 10px 14px;
	border: 0;
	border-radius: 6px;
	box-shadow: none;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none !important;
	transition: transform .2s ease, filter .2s ease;
}
.mb-footer-social:hover,
.mb-footer-social:focus-visible { transform: translateY(-2px); filter: brightness(1.04); }
.mb-footer-social-icon { display: grid; place-items: center; width: 22px; height: 22px; flex: 0 0 22px; }
.mb-footer-social-icon svg { display: block; width: 19px; height: 19px; fill: currentColor; }
.mb-footer-social-instagram { background: #74d18c; color: #0f2c42 !important; }
.mb-footer-social-facebook { background: #3465a0; color: #fff !important; }
.mb-footer-social-pinterest { background: #f7775e; color: #0f2c42 !important; }
.mb-footer-social-email { background: #ffd46a; color: #0f2c42 !important; }

.mb-footer-legal {
	width: 100%;
	margin: 0;
	padding: 20px 24px 16px;
	border-top: 1px solid rgba(255,255,255,.2);
	background: #0b2437;
}
.mb-footer-legal-inner { width: min(1100px,100%); margin: 0 auto; }
.mb-footer-legal-columns {
	display: grid;
	grid-template-columns: repeat(2,minmax(0,1fr));
	gap: 36px;
	max-width: 520px;
}
.mb-footer-link-column { display: grid; gap: 10px; align-content: start; }
.mb-footer-link-column a,
.mb-footer-copyright,
.mb-footer-copyright a {
	color: rgba(255,255,255,.72) !important;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none !important;
}
.mb-footer-link-column a:hover,
.mb-footer-link-column a:focus-visible,
.mb-footer-copyright a:hover,
.mb-footer-copyright a:focus-visible { color: #fff !important; text-decoration: underline !important; }
.mb-footer-copyright { margin: 14px 0 0 !important; color: #fff !important; }


/* ==========================================================================
   MB 2.1 — one desktop/tablet footer matching the homepage footer
   ========================================================================== */

/* Every template now uses the same child-theme footer. This eliminates
   category/single/page-specific GeneratePress Block Element footer drift. */
.mb-child-active .site-footer,
.mb-child-active .tlcl-global-footer,
.mb-child-active .footer-posts,
.mb-child-active .quick-links.footer-quick-links {
	display: none !important;
}

@media (min-width: 768px) {
	/* Homepage-style 7-tile image strip. */
	.mb-global-footer {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #0f2c42 !important;
	}
	.mb-footer-recipes {
		display: grid !important;
		grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
		gap: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fff !important;
	}
	.mb-footer-recipe {
		display: block !important;
		width: 100% !important;
		aspect-ratio: 1 / 1 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		background: #e8e8e8 !important;
	}
	.mb-footer-recipe-image,
	.mb-footer-recipe-placeholder {
		display: block !important;
		width: 100% !important;
		height: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		object-fit: cover !important;
	}

	/* Homepage-style navy social strip: heading on left, social links inline. */
	.mb-footer-main {
		width: 100% !important;
		margin: 0 !important;
		padding: 36px 24px 34px !important;
		background: #0f2c42 !important;
	}
	.mb-footer-inner {
		display: grid !important;
		grid-template-columns: 145px minmax(0, 1fr) !important;
		align-items: center !important;
		gap: 34px !important;
		width: min(1120px, calc(100% - 40px)) !important;
		margin: 0 auto !important;
	}
	.mb-footer-heading {
		margin: 0 !important;
		color: #fff !important;
		font-family: Oswald, "Arial Narrow", sans-serif !important;
		font-size: 30px !important;
		font-weight: 700 !important;
		line-height: .82 !important;
		letter-spacing: .035em !important;
		text-align: left !important;
		text-transform: uppercase !important;
	}
	.mb-footer-heading span {
		display: block !important;
		color: #f7775e !important;
		font-size: 38px !important;
		line-height: .86 !important;
	}

	.mb-footer-social-grid {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		align-items: center !important;
		gap: 28px !important;
		width: 100% !important;
	}
	.mb-footer-social {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 11px !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		color: #fff !important;
		font-size: clamp(15px, 1.45vw, 22px) !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		white-space: nowrap !important;
	}
	.mb-footer-social:hover,
	.mb-footer-social:focus-visible {
		color: #fff !important;
		filter: none !important;
		transform: translateY(-2px) !important;
	}
	.mb-footer-social-icon {
		display: grid !important;
		place-items: center !important;
		width: 38px !important;
		height: 38px !important;
		flex: 0 0 38px !important;
		border-radius: 50% !important;
		color: #fff !important;
	}
	.mb-footer-social-icon svg {
		width: 19px !important;
		height: 19px !important;
		fill: currentColor !important;
	}
	.mb-footer-social-instagram .mb-footer-social-icon { background: #74d18c !important; }
	.mb-footer-social-facebook .mb-footer-social-icon { background: #3465a0 !important; }
	.mb-footer-social-pinterest .mb-footer-social-icon { background: #e60023 !important; }
	.mb-footer-social-email .mb-footer-social-icon { background: #ffd46a !important; color: #0f2c42 !important; }

	/* Same compact legal/copyright bar everywhere. */
	.mb-footer-legal {
		width: 100% !important;
		margin: 0 !important;
		padding: 13px 24px 12px !important;
		border-top: 1px solid rgba(255,255,255,.22) !important;
		background: #0b2437 !important;
	}
	.mb-footer-legal-inner {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		gap: 30px !important;
		width: min(1120px, calc(100% - 40px)) !important;
		margin: 0 auto !important;
	}
	.mb-footer-legal-columns {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		gap: 5px 12px !important;
		width: auto !important;
		max-width: none !important;
	}
	.mb-footer-link-column {
		display: contents !important;
	}
	.mb-footer-link-column a,
	.mb-footer-copyright,
	.mb-footer-copyright a {
		margin: 0 !important;
		color: rgba(255,255,255,.72) !important;
		font-size: 10px !important;
		font-weight: 800 !important;
		line-height: 1.2 !important;
		text-transform: uppercase !important;
		white-space: nowrap !important;
		text-decoration: none !important;
	}
	.mb-footer-copyright {
		justify-self: end !important;
		color: #fff !important;
	}
}

/* Tablet keeps exactly the same footer structure, with tighter spacing. */
@media (min-width: 768px) and (max-width: 1023px) {
	.mb-footer-main { padding: 28px 18px 26px !important; }
	.mb-footer-inner {
		grid-template-columns: 120px minmax(0, 1fr) !important;
		gap: 18px !important;
		width: calc(100% - 30px) !important;
	}
	.mb-footer-heading { font-size: 24px !important; }
	.mb-footer-heading span { font-size: 31px !important; }
	.mb-footer-social-grid { gap: 12px !important; }
	.mb-footer-social {
		gap: 7px !important;
		font-size: 13px !important;
	}
	.mb-footer-social-icon {
		width: 32px !important;
		height: 32px !important;
		flex-basis: 32px !important;
	}
	.mb-footer-social-icon svg {
		width: 16px !important;
		height: 16px !important;
	}
	.mb-footer-legal-inner {
		width: calc(100% - 30px) !important;
		gap: 16px !important;
	}
	.mb-footer-link-column a,
	.mb-footer-copyright,
	.mb-footer-copyright a {
		font-size: 9px !important;
	}
}

@media (max-width: 767px) {
	/* Mobile keeps the compact v14 footer design. */
	.mb-global-footer {
		display: block !important;
	}
	/* The imported source theme reserved 48px for its old fixed mobile header.
	   Reset that globally, not only on recipe pages. */
	body.mb-child-active {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
	.mb-child-active .site-inner {
		margin-top: 0 !important;
	}

	/* The child header owns the ONLY mobile subscribe bar. */
	.mb-child-active .cta-mobile-header,
	.mb-child-active .tlcl-interior-subscribe {
		display: none !important;
	}
	.mb-child-active .mb-mobile-header { display: block !important; }
	.mb-child-active .mb-mobile-cta {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	/* Reference footer: exactly three edge-to-edge recipe photos on phones. */
	.mb-footer-recipes {
		grid-template-columns: repeat(3,minmax(0,1fr));
	}
	.mb-footer-recipe:nth-child(n+4) { display: none !important; }

	.mb-footer-main { padding: 20px 16px 26px; }
	.mb-footer-inner {
		display: block;
		width: 100%;
	}
	.mb-footer-heading {
		margin: 0 0 14px !important;
		font-size: 27px !important;
		line-height: 1 !important;
		text-align: center;
	}
	.mb-footer-social-grid {
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 10px;
	}
	.mb-footer-social {
		justify-content: flex-start;
		min-height: 44px;
		padding: 9px 18px;
		border-radius: 6px;
		font-size: 14px;
	}
	.mb-footer-social-icon { width: 20px; height: 20px; flex-basis: 20px; }
	.mb-footer-social-icon svg { width: 17px; height: 17px; }

	.mb-footer-legal { padding: 20px 18px 15px; }
	.mb-footer-legal-columns {
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 30px;
		max-width: none;
	}
	.mb-footer-link-column { gap: 11px; }
	.mb-footer-link-column a,
	.mb-footer-copyright,
	.mb-footer-copyright a { font-size: 11px; }
	.mb-footer-copyright { margin-top: 13px !important; }
}

@media (max-width: 359px) {
	.mb-footer-social { padding-left: 12px; padding-right: 12px; font-size: 12px; }
	.mb-footer-legal-columns { gap: 18px; }
}

@media (prefers-reduced-motion: reduce) {
	.mb-footer-recipe-image,
	.mb-footer-social { transition: none !important; }
}


/* MB 2.1.1 — global footer structural safety.
   Footer is emitted from wp_footer, outside GeneratePress page wrappers. */
.mb-global-footer {
	clear: both !important;
	float: none !important;
	position: relative !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	flex: none !important;
	grid-column: 1 / -1 !important;
}


/* ==========================================================================
   MB 2.1.2 — standard page container matches the custom header width
   Base: v16. No v17 page-centering overrides are included.
   ========================================================================== */

/*
 * The custom desktop header uses:
 *   width: min(1180px, calc(100% - 40px));
 *
 * GeneratePress' Default content container can be a little wider, so normal
 * WordPress Pages looked slightly wider than the header. Use the exact same
 * outer width/gutter for standard pages only.
 *
 * Homepage, categories/archives and single posts keep their existing custom
 * layout systems.
 */
@media (min-width: 768px) {
	body.page:not(.home) #page.grid-container,
	body.page:not(.home) .site.grid-container {
		box-sizing: border-box !important;
		width: min(1180px, calc(100% - 40px)) !important;
		max-width: 1180px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body.page:not(.home) #page.grid-container .site-content {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}


/* Dynamic recipe grids use the exact homepage card classes. */
.mb-dynamic-recipe-grid .mb-dynamic-recipe-placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: #eef2f2;
}
.mb-dynamic-recipe-grid .mb-dynamic-recipe-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mb-dynamic-recipe-empty {
	grid-column: 1 / -1;
	margin: 10px 0;
	text-align: center;
}


/* ==========================================================================
   MB 2.4 — Dynamic recipe carousel + homepage interaction fixes
   ========================================================================== */

/* Optional dynamic recipe carousel. All cards stay in server-rendered HTML. */
.mb-recipe-carousel-shell {
	position: relative;
	width: 100%;
	min-width: 0;
}
.mb-recipe-carousel-track {
	display: flex !important;
	grid-template-columns: none !important;
	gap: 14px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 0 5px !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.mb-recipe-carousel-track::-webkit-scrollbar {
	display: none;
}
.mb-recipe-carousel-track > .mb-dynamic-recipe-card {
	flex: 0 0 calc((100% - (var(--mb-carousel-desktop, 4) - 1) * 14px) / var(--mb-carousel-desktop, 4)) !important;
	width: auto !important;
	min-width: 0 !important;
	scroll-snap-align: start;
}
.mb-carousel-controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	margin: 0 0 12px;
}
.mb-carousel-arrow {
	display: inline-grid;
	place-items: center;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--mb-navy);
	color: #fff;
	box-shadow: 0 4px 12px rgba(15,44,66,.22);
	cursor: pointer;
	transition: transform .2s ease, background-color .2s ease, opacity .2s ease, box-shadow .2s ease;
}
.mb-carousel-arrow svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.mb-carousel-arrow:hover,
.mb-carousel-arrow:focus-visible {
	background: #173e5a;
	transform: scale(1.08);
	box-shadow: 0 6px 16px rgba(15,44,66,.3);
}
.mb-carousel-arrow:focus-visible {
	outline: 3px solid var(--mb-yellow);
	outline-offset: 3px;
}
.mb-carousel-arrow:disabled {
	opacity: .32;
	cursor: default;
	transform: none;
	box-shadow: none;
}
.mb-carousel-no-overflow .mb-carousel-controls {
	visibility: hidden;
	pointer-events: none;
}

/* Latest section: arrows sit immediately before the Browse All Latest link,
   Netflix-style above the cards. */
@media (min-width: 768px) {
	.mb-latest-wrap .mb-recipe-carousel-shell > .mb-carousel-controls {
		position: absolute;
		z-index: 4;
		top: -58px;
		right: 150px;
		margin: 0;
	}

	/* Browse All Latest is a text link: never grow a colored hover pill. */
	.mb-html-home .mb-latest-wrap > .mb-button-row.mb-button-link .wp-block-button__link:hover,
	.mb-html-home .mb-latest-wrap > .mb-button-row.mb-button-link .wp-block-button__link:focus-visible {
		background: transparent !important;
		color: var(--mb-navy) !important;
		transform: none !important;
	}
}

/* Meet Karly: reveal the existing excerpt on desktop hover instead of hiding it. */
@media (min-width: 768px) {
	.mb-hero-meet .mb-meet-copy {
		overflow: hidden;
		transition: min-width .3s ease, padding .3s ease, background-color .3s ease, color .3s ease;
	}
	.mb-hero-meet .mb-meet-title,
	.mb-hero-meet .mb-meet-title a {
		transition: color .3s ease;
	}
	.mb-hero-meet .mb-meet-excerpt {
		display: block;
		max-height: 0;
		margin-top: 0 !important;
		overflow: hidden;
		opacity: 0;
		white-space: normal;
		color: #fff;
		font-size: 11px;
		line-height: 1.3;
		transition: max-height .32s ease, opacity .25s ease, margin-top .32s ease;
	}
	.mb-hero-meet:hover .mb-meet-copy,
	.mb-hero-meet:focus-within .mb-meet-copy {
		min-width: 86%;
		padding: 10px 13px;
		background: var(--mb-navy);
		color: #fff;
	}
	.mb-hero-meet:hover .mb-meet-title,
	.mb-hero-meet:hover .mb-meet-title a,
	.mb-hero-meet:focus-within .mb-meet-title,
	.mb-hero-meet:focus-within .mb-meet-title a {
		color: #fff;
	}
	.mb-hero-meet:hover .mb-meet-excerpt,
	.mb-hero-meet:focus-within .mb-meet-excerpt {
		max-height: 58px;
		margin-top: 6px !important;
		opacity: 1;
	}
}

/* Tablet carousel shows three cards; mobile shows two, regardless of the
   desktop cards-per-view setting. */
@media (min-width: 768px) and (max-width: 1023px) {
	.mb-recipe-carousel-track > .mb-dynamic-recipe-card {
		flex-basis: calc((100% - 28px) / 3) !important;
	}
	.mb-latest-wrap .mb-recipe-carousel-shell > .mb-carousel-controls {
		right: 142px;
	}
}
@media (max-width: 767px) {
	.mb-recipe-carousel-track {
		gap: 8px !important;
	}
	.mb-recipe-carousel-track > .mb-dynamic-recipe-card {
		flex-basis: calc((100% - 8px) / 2) !important;
	}
	.mb-carousel-controls {
		margin-bottom: 9px;
	}
	.mb-carousel-arrow {
		width: 36px;
		height: 36px;
	}
	.mb-carousel-arrow svg {
		width: 18px;
		height: 18px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mb-carousel-arrow,
	.mb-recipe-carousel-track,
	.mb-hero-meet .mb-meet-copy,
	.mb-hero-meet .mb-meet-excerpt {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}


/* ==========================================================================
   MB 2.5 — Modern newsletter popup
   ========================================================================== */
body.mb-newsletter-popup-open{overflow:hidden}
.mb-newsletter-popup{position:fixed;inset:0;display:grid;place-items:center;padding:24px;z-index:100000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility .28s ease}
.mb-newsletter-popup.is-open{opacity:1;visibility:visible;pointer-events:auto}
.mb-newsletter-popup__overlay{position:absolute;inset:0;background:rgba(15,44,66,.68);backdrop-filter:blur(4px)}
.mb-newsletter-popup__dialog{position:relative;display:grid;grid-template-columns:minmax(260px, 39%) minmax(340px, 1fr);align-items:stretch;width:min(960px,calc(100% - 32px));max-height:min(88vh,820px);overflow:auto;border-radius:28px;background:#fff;box-shadow:0 26px 70px rgba(15,44,66,.28)}
.mb-newsletter-popup__close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--mb-navy);font-size:29px;line-height:1;box-shadow:0 8px 20px rgba(15,44,66,.18);z-index:4;transition:transform .2s ease,background-color .2s ease}
.mb-newsletter-popup__close:hover,.mb-newsletter-popup__close:focus-visible{background:#fff;transform:scale(1.07)}
.mb-newsletter-popup__media-wrap{position:relative;background:linear-gradient(165deg,#183b55 0%,#0f2c42 60%,#183b55 100%)}
.mb-newsletter-popup__media{position:sticky;top:0;display:flex;align-items:flex-end;justify-content:flex-start;min-height:100%;padding:24px 24px 32px;background:radial-gradient(circle at 18% 16%,rgba(255,255,255,.20),transparent 34%),linear-gradient(160deg,rgba(255,255,255,.10),transparent 60%)}
.mb-newsletter-popup__image{display:block;width:100%;height:100%;min-height:100%;object-fit:cover;border-radius:0}
.mb-newsletter-popup__media .mb-newsletter-popup__image{position:absolute;inset:0;z-index:1}
.mb-newsletter-popup__media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,44,66,.10),rgba(15,44,66,.66));z-index:1}
.mb-newsletter-popup__badge{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 18px;border-radius:999px;background:var(--mb-coral);color:#fff;font:700 12px/1 Poppins,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 10px 22px rgba(15,44,66,.22)}
.mb-newsletter-popup__placeholder{position:relative;z-index:2;display:grid;place-items:center;align-content:center;width:100%;min-height:100%;color:#fff;text-align:center}
.mb-newsletter-popup__placeholder span{display:block;color:var(--mb-coral);font:700 18px/1 Poppins,Arial,sans-serif;letter-spacing:.10em;text-transform:uppercase}
.mb-newsletter-popup__placeholder strong{display:block;margin-top:8px;font:700 48px/.9 Oswald,Arial Narrow,sans-serif;letter-spacing:.03em;text-transform:uppercase}
.mb-newsletter-popup__content{padding:38px 38px 34px;color:var(--mb-navy)}
.mb-newsletter-popup__eyebrow{margin:0 0 10px!important;color:var(--mb-coral);font:700 12px/1.35 Poppins,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.mb-newsletter-popup__title{margin:0!important;font:700 clamp(34px,4vw,50px)/.94 Oswald,Arial Narrow,sans-serif;letter-spacing:.01em;text-transform:uppercase;color:var(--mb-navy)}
.mb-newsletter-popup__text{max-width:520px;margin:14px 0 0!important;color:#415464;font-size:15px;line-height:1.62}
.mb-newsletter-popup__list{display:grid;gap:8px;margin:18px 0 20px;padding:0;list-style:none}
.mb-newsletter-popup__list li{position:relative;padding-left:28px;color:#22394b;font-size:14px;line-height:1.45}
.mb-newsletter-popup__list li:before{content:'✓';position:absolute;left:0;top:1px;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:rgba(116,209,140,.24);color:var(--mb-navy);font:700 12px/18px Poppins,Arial,sans-serif}
.mb-newsletter-popup__form-wrap{margin-top:8px;padding:18px 18px 16px;border:1px solid rgba(15,44,66,.08);border-radius:22px;background:#f9fbfc;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.mb-newsletter-popup__form-wrap .mb-email-form-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center}
.mb-newsletter-popup__form-wrap .mb-email-field input{width:100%;height:52px;padding:0 18px;border:1px solid rgba(15,44,66,.10);border-radius:16px;background:#fff;color:var(--mb-navy);font-size:14px;box-shadow:none!important}
.mb-newsletter-popup__form-wrap .mb-email-field input:focus{border-color:rgba(15,44,66,.32);outline:none;box-shadow:0 0 0 4px rgba(116,209,140,.22)}
.mb-newsletter-popup__form-wrap .mb-email-submit{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 22px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--mb-green),#6dc688);color:var(--mb-navy);font:700 15px/1 Poppins,Arial,sans-serif;text-transform:uppercase;letter-spacing:.03em;box-shadow:0 12px 24px rgba(116,209,140,.22);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.mb-newsletter-popup__form-wrap .mb-email-submit:hover,.mb-newsletter-popup__form-wrap .mb-email-submit:focus-visible{transform:translateY(-1px);box-shadow:0 16px 26px rgba(116,209,140,.28);filter:saturate(1.02)}
.mb-newsletter-popup__form-wrap .mb-form-message{margin:0!important;border-radius:14px;padding:12px 14px;font-size:13px}
.mb-newsletter-popup__form-wrap .mb-form-success{background:#eaf7ee;color:#1f5a3b}
.mb-newsletter-popup__form-wrap .mb-form-error{background:#fff2f0;color:#9a3d2f}
.mb-newsletter-popup__microcopy{margin:12px 0 0!important;color:#75828f;font-size:11px;line-height:1.45}
.mb-newsletter-popup.has-success .mb-newsletter-popup__text,.mb-newsletter-popup.has-success .mb-newsletter-popup__list,.mb-newsletter-popup.has-success .mb-newsletter-popup__microcopy{display:none}
.mb-newsletter-popup.has-success .mb-newsletter-popup__form-wrap{background:#fff;border-color:rgba(116,209,140,.38)}

@media (max-width: 1023px){
 .mb-newsletter-popup__dialog{grid-template-columns:1fr;max-width:680px}
 .mb-newsletter-popup__media{min-height:280px}
 .mb-newsletter-popup__content{padding:28px 24px 24px}
 .mb-newsletter-popup__title{font-size:40px}
}
@media (max-width: 767px){
 .mb-newsletter-popup{padding:12px}
 .mb-newsletter-popup__dialog{width:100%;max-height:min(90vh,760px);border-radius:22px}
 .mb-newsletter-popup__close{top:12px;right:12px;width:38px;height:38px;font-size:26px}
 .mb-newsletter-popup__media{min-height:210px;padding:16px}
 .mb-newsletter-popup__badge{min-height:32px;padding:6px 14px;font-size:11px}
 .mb-newsletter-popup__content{padding:22px 18px 20px}
 .mb-newsletter-popup__title{font-size:31px}
 .mb-newsletter-popup__text{font-size:14px;line-height:1.52}
 .mb-newsletter-popup__list{gap:7px;margin:14px 0 16px}
 .mb-newsletter-popup__list li{font-size:13px;padding-left:24px}
 .mb-newsletter-popup__form-wrap{padding:14px;border-radius:18px}
 .mb-newsletter-popup__form-wrap .mb-email-form-fields{grid-template-columns:1fr;gap:8px}
 .mb-newsletter-popup__form-wrap .mb-email-field input,
 .mb-newsletter-popup__form-wrap .mb-email-submit{width:100%;height:46px;border-radius:14px}
 .mb-newsletter-popup__form-wrap .mb-email-submit{padding:0 16px;font-size:14px}
}
@media (prefers-reduced-motion: reduce){
 .mb-newsletter-popup,.mb-newsletter-popup__close,.mb-newsletter-popup__form-wrap .mb-email-submit{transition:none!important}
}


/* ==========================================================================\n   MB 2.5.1 — Newsletter popup isolation hotfix\n   Fix inherited homepage email-form !important rules and close alignment.\n   ========================================================================== */
.mb-newsletter-popup .mb-newsletter-popup__close{
 box-sizing:border-box!important;
 position:absolute!important;
 top:16px!important;
 right:16px!important;
 left:auto!important;
 bottom:auto!important;
 display:grid!important;
 place-items:center!important;
 width:42px!important;
 min-width:42px!important;
 max-width:42px!important;
 height:42px!important;
 min-height:42px!important;
 max-height:42px!important;
 margin:0!important;
 padding:0!important;
 border:0!important;
 border-radius:50%!important;
 background:#fff!important;
 color:var(--mb-coral)!important;
 font:700 28px/1 Arial,sans-serif!important;
 text-align:center!important;
 box-shadow:0 8px 22px rgba(15,44,66,.18)!important;
 transform:none!important;
 z-index:20!important;
}
.mb-newsletter-popup .mb-newsletter-popup__close span{
 display:block!important;
 width:auto!important;
 height:auto!important;
 margin:0!important;
 padding:0!important;
 line-height:1!important;
 transform:translateY(-1px)!important;
}
.mb-newsletter-popup .mb-newsletter-popup__close:hover,
.mb-newsletter-popup .mb-newsletter-popup__close:focus-visible{
 background:#fff!important;
 color:#e95f72!important;
 transform:scale(1.06)!important;
}

/* Reset the shared homepage/newsletter collector layout inside the popup. */
.mb-newsletter-popup .mb-email-collector,
.mb-newsletter-popup .mb-email-form,
.mb-newsletter-popup .mb-email-form-fields{
 box-sizing:border-box!important;
 width:100%!important;
 max-width:none!important;
 margin:0!important;
 padding:0!important;
}
.mb-newsletter-popup .mb-email-form-fields{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) minmax(0,1fr) 112px!important;
 grid-template-rows:52px!important;
 gap:10px!important;
 align-items:center!important;
}
.mb-newsletter-popup .mb-email-field,
.mb-newsletter-popup .mb-email-first,
.mb-newsletter-popup .mb-email-address{
 display:block!important;
 width:100%!important;
 max-width:none!important;
 height:52px!important;
 margin:0!important;
 padding:0!important;
}
.mb-newsletter-popup .mb-email-first{
 grid-column:1!important;
 grid-row:1!important;
}
.mb-newsletter-popup .mb-email-address{
 grid-column:2!important;
 grid-row:1!important;
}
.mb-newsletter-popup .mb-email-field input,
.mb-newsletter-popup .mb-email-first input,
.mb-newsletter-popup .mb-email-address input{
 box-sizing:border-box!important;
 display:block!important;
 width:100%!important;
 max-width:none!important;
 height:52px!important;
 min-height:52px!important;
 margin:0!important;
 padding:0 16px!important;
 border:1.5px solid #d9e2e8!important;
 border-radius:14px!important;
 outline:0!important;
 background:#fff!important;
 color:#163449!important;
 font:500 14px/52px Poppins,Arial,sans-serif!important;
 text-align:left!important;
 text-transform:none!important;
 opacity:1!important;
 box-shadow:0 2px 7px rgba(15,44,66,.04)!important;
 -webkit-text-fill-color:#163449!important;
}
.mb-newsletter-popup .mb-email-field input::placeholder,
.mb-newsletter-popup .mb-email-first input::placeholder,
.mb-newsletter-popup .mb-email-address input::placeholder{
 color:#7b8994!important;
 opacity:1!important;
 -webkit-text-fill-color:#7b8994!important;
 text-transform:none!important;
}
.mb-newsletter-popup .mb-email-field input:focus,
.mb-newsletter-popup .mb-email-first input:focus,
.mb-newsletter-popup .mb-email-address input:focus{
 border-color:#74d18c!important;
 background:#fff!important;
 color:#163449!important;
 box-shadow:0 0 0 4px rgba(116,209,140,.18)!important;
}
.mb-newsletter-popup .mb-email-submit{
 box-sizing:border-box!important;
 display:flex!important;
 grid-column:3!important;
 grid-row:1!important;
 align-items:center!important;
 justify-content:center!important;
 width:112px!important;
 min-width:112px!important;
 max-width:112px!important;
 height:52px!important;
 min-height:52px!important;
 max-height:52px!important;
 margin:0!important;
 padding:0 14px!important;
 border:0!important;
 border-radius:14px!important;
 background:linear-gradient(135deg,#74d18c,#63c983)!important;
 color:#0f2c42!important;
 font:800 14px/1 Poppins,Arial,sans-serif!important;
 letter-spacing:.02em!important;
 text-transform:uppercase!important;
 white-space:nowrap!important;
 box-shadow:0 9px 20px rgba(116,209,140,.25)!important;
 transform:none!important;
}
.mb-newsletter-popup .mb-email-submit:hover,
.mb-newsletter-popup .mb-email-submit:focus-visible{
 background:linear-gradient(135deg,#7cda96,#66cb86)!important;
 transform:translateY(-1px)!important;
 box-shadow:0 12px 24px rgba(116,209,140,.32)!important;
}

@media (max-width:767px){
 .mb-newsletter-popup .mb-newsletter-popup__close{
  top:10px!important;
  right:10px!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  font-size:25px!important;
 }
 .mb-newsletter-popup .mb-email-form-fields{
  grid-template-columns:1fr!important;
  grid-template-rows:auto!important;
  gap:9px!important;
 }
 .mb-newsletter-popup .mb-email-field,
 .mb-newsletter-popup .mb-email-first,
 .mb-newsletter-popup .mb-email-address{
  width:100%!important;
  height:46px!important;
  margin:0!important;
 }
 .mb-newsletter-popup .mb-email-first{
  grid-column:1!important;
  grid-row:auto!important;
 }
 .mb-newsletter-popup .mb-email-address{
  grid-column:1!important;
  grid-row:auto!important;
 }
 .mb-newsletter-popup .mb-email-field input,
 .mb-newsletter-popup .mb-email-first input,
 .mb-newsletter-popup .mb-email-address input{
  width:100%!important;
  height:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0 15px!important;
  border-radius:13px!important;
  font-size:14px!important;
  line-height:46px!important;
 }
 .mb-newsletter-popup .mb-email-submit{
  grid-column:1!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  margin:0!important;
  border-radius:13px!important;
  font-size:14px!important;
 }
}


/* Secure contact form base styles. Page-specific CSS may refine these. */
.mb-contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mb-contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mb-contact-field{display:grid;gap:7px}
.mb-contact-field-wide{grid-column:1/-1}
.mb-contact-field>span{font-size:12px;font-weight:700}
.mb-contact-field input,.mb-contact-field select,.mb-contact-field textarea{box-sizing:border-box;width:100%;border:1px solid rgba(15,44,66,.18);border-radius:12px;background:#fff;color:#0f2c42}
.mb-contact-field input,.mb-contact-field select{height:48px;padding:0 14px}
.mb-contact-field textarea{padding:14px;resize:vertical}
.mb-contact-submit{margin-top:14px;min-height:48px;padding:0 22px;border:0;border-radius:999px;background:#0f2c42;color:#fff;font-weight:800}
.mb-contact-notice{padding:14px;border-radius:12px}
.mb-contact-success{background:#e9f7ed;color:#225b38}
.mb-contact-error{background:#fff0ed;color:#8d362d}
@media(max-width:767px){.mb-contact-form-grid{grid-template-columns:1fr}}
