/*
Theme Name: Made By Man Construction V64 Right Slide Menu
Theme URI: https://madebymanconstruction.com
Author: Made By Man Construction LLC
Description: Editable WordPress theme for Made By Man Construction LLC with clean white header, large hero, trust strip, service cards, and categorized project galleries.
Version: 233.0.0
Requires at least: 6.0
Tested up to: 6.5
License: GPLv2 or later
Text Domain: mbm-v16
*/
:root{--black:#030303;--ink:#111;--gold:#c38300;--gold2:#e0a20b;--white:#fff;--muted:#666;--line:#e6e6e6;--max:1340px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%;height:auto}.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}.site-header{position:relative;z-index:999;background:#fff;box-shadow:none;clip-path:polygon(0 0,100% 0,100% 82%,0 100%);margin-bottom:-35px}.header-inner{height:185px;width:min(1430px,calc(100% - 96px));margin:auto;display:grid;grid-template-columns:240px minmax(0,1fr) 280px;gap:48px;align-items:start;padding-top:28px}.site-logo{display:flex;align-items:flex-start;justify-content:flex-start}.site-logo img{width:178px!important;height:auto!important;max-height:150px!important;object-fit:contain!important;background:transparent!important}.primary-nav{justify-self:center;align-self:start;min-width:0;padding-top:38px}.menu{display:flex;align-items:center;justify-content:center;gap:clamp(44px,4.1vw,70px);margin:0;padding:0;list-style:none;text-transform:uppercase;font-weight:900;font-size:20px;letter-spacing:.02em;white-space:nowrap}.menu a{display:block;padding:0 0 18px;border-bottom:4px solid transparent}.menu a:hover,.menu .current-menu-item>a,.menu .current_page_item>a,.menu a[aria-current="page"],.menu .active{border-bottom-color:var(--gold);color:#000}.quote-btn{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#d99a06,#bd7d00);color:#fff!important;text-transform:uppercase;font-weight:1000;letter-spacing:.025em;border:0;border-radius:0;box-shadow:0 18px 38px rgba(166,106,0,.28);text-align:center}.header-quote{height:78px;width:250px;padding:0 30px;font-size:21px;justify-self:end;align-self:start;line-height:1.18;margin-top:23px}.hamb{display:none;background:transparent;border:0;font-size:32px;cursor:pointer}.hero{position:relative;min-height:670px;background-size:100% auto;background-repeat:no-repeat;background-position:center top;display:flex;align-items:flex-start;color:#fff;padding-top:115px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.80) 28%,rgba(0,0,0,.28) 56%,rgba(0,0,0,.00) 100%)}.hero-content{position:relative;z-index:2;padding:72px 0 64px;max-width:1340px}.hero h1{margin:0;text-transform:uppercase;font-weight:1000;letter-spacing:.075em;line-height:.96;font-size:clamp(60px,5vw,78px);text-shadow:0 4px 5px rgba(0,0,0,.35);max-width:760px}.gold-rule{display:block;width:150px;height:5px;background:var(--gold2);margin:35px 0 27px}.gold-rule.small{width:70px;height:4px;margin:16px 0 24px}.lead{font-size:28px;line-height:1.45;max-width:620px;margin:0 0 42px;color:#fff}.hero-quote{height:72px;min-width:295px;font-size:24px}.trust-strip{background:#030303;color:#fff;border-top:0;border-bottom:1px solid #050505}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-left:1px solid rgba(224,162,11,.82);gap:10px}.trust-item:first-child{border-left:0}.trust-icon{color:var(--gold2);font-size:50px;line-height:1}.trust-item strong{text-transform:uppercase;font-size:22px;letter-spacing:.02em}.trust-item span{font-size:17px;color:#e8e8e8}.section{padding:72px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.intro-image img{width:100%;height:360px;object-fit:cover}.intro-copy h2,.section-title{margin:0;text-transform:uppercase;font-size:36px;line-height:1.08;font-weight:1000;letter-spacing:.01em}.intro-copy p{font-size:18px;line-height:1.65;color:#333;margin:0 0 28px}.small-btn{height:52px;padding:0 26px;font-size:15px}.service-strip{background:#f7f7f7}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:32px}.service-card{background:#0b0b0b;color:#fff;min-height:180px;padding:28px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.service-ico{font-size:38px;color:var(--gold2);line-height:1}.service-card b{text-transform:uppercase;font-size:18px;line-height:1.15}.service-card span{font-size:14px;color:#e0e0e0;line-height:1.35}.title-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.outline-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gold);height:46px;padding:0 22px;text-transform:uppercase;font-weight:900;color:#111;background:#fff}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.project-card{position:relative;min-height:220px;overflow:hidden;background:#111}.project-card img{width:100%;height:220px;object-fit:cover;transition:transform .25s ease}.project-card:hover img{transform:scale(1.04)}.project-card span{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.92));color:#fff;text-align:center;text-transform:uppercase;font-weight:900;font-size:18px;line-height:1.1;padding:48px 12px 16px}.gallery-section{background:#f5f5f5}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.tab{border:1px solid #111;background:#111;color:#fff;text-transform:uppercase;font-weight:900;padding:13px 18px;cursor:pointer}.tab.active,.tab:hover{background:var(--gold);border-color:var(--gold);color:#fff}.gallery-panel{display:none;scroll-margin-top:24px}.gallery-panel.active{display:block}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-grid a{display:block;background:#111;overflow:hidden}.gallery-grid img{width:100%;height:210px;object-fit:cover;transition:transform .25s ease}.gallery-grid a:hover img{transform:scale(1.04)}.cta{background:linear-gradient(90deg,#080808,#171717);color:#fff;padding:34px 0;border-top:5px solid var(--gold)}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}.cta strong{text-transform:uppercase;font-size:34px;font-weight:1000}.cta .btn{height:54px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:#fff;text-transform:uppercase;font-weight:900}.cta .outline{background:transparent;border:1px solid var(--gold)}.footer{background:#030303;color:#ddd;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr 1.2fr;gap:38px}.footer img{width:170px;background:#fff;padding:8px;margin-bottom:18px}.footer h4{color:#fff;text-transform:uppercase;margin:0 0 15px}.footer p,.footer a{font-size:14px;line-height:1.7;color:#ddd}.footer-menu{margin:0;padding:0;list-style:none}.footer-menu li{margin-bottom:7px}.copyright{border-top:1px solid #222;margin-top:32px;padding-top:18px;text-align:center;color:#aaa;font-size:13px}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:99999;padding:28px}.lightbox.open{display:flex}.lightbox img{max-width:96vw;max-height:90vh;object-fit:contain}.lightbox button{position:absolute;right:24px;top:18px;background:transparent;color:#fff;border:0;font-size:48px;cursor:pointer}
@media(max-width:1024px){.header-inner{grid-template-columns:180px minmax(0,1fr) 210px;gap:22px;width:calc(100% - 56px)}.site-logo img{width:145px!important;max-height:112px!important}.menu{gap:clamp(18px,2.5vw,34px);font-size:16px}.header-quote{width:190px;height:58px;font-size:15px}.hero{min-height:690px;background-size:cover;background-position:center top;padding-top:154px}.hero h1{font-size:clamp(56px,6.8vw,76px)}.service-grid{grid-template-columns:repeat(3,1fr)}.project-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.wrap{width:calc(100% - 32px)}.site-header{clip-path:none;margin-bottom:0}.header-inner{height:104px;width:calc(100% - 28px);grid-template-columns:122px 1fr auto;gap:10px;padding-top:12px;align-items:center}.site-logo img{width:112px!important;max-height:82px!important}.primary-nav{order:4;grid-column:1/-1;width:100%;padding-top:0}.menu{display:none;position:absolute;left:0;right:0;top:104px;background:#fff;padding:12px 24px;box-shadow:0 12px 24px rgba(0,0,0,.16);flex-direction:column;align-items:flex-start;gap:0;font-size:16px;z-index:999}.menu.open{display:flex}.menu a{padding:12px 0;width:100%}.hamb{display:block;justify-self:end}.header-quote{height:48px;width:auto;min-width:150px;padding:0 14px;font-size:13px;margin-top:0}.hero{min-height:540px;background-size:cover;background-position:center top;padding-top:0;align-items:center}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.72),rgba(0,0,0,.24))}.hero-content{padding:48px 0}.hero h1{font-size:46px;letter-spacing:.04em}.lead{font-size:20px;max-width:420px}.hero-quote{height:58px;min-width:210px;font-size:17px}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item{min-height:130px}.trust-item:nth-child(odd){border-left:0}.trust-icon{font-size:38px}.trust-item strong{font-size:17px}.trust-item span{font-size:14px}.intro-grid{grid-template-columns:1fr;gap:28px}.intro-image img{height:260px}.section{padding:48px 0}.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid,.gallery-grid{grid-template-columns:1fr}.title-row{align-items:flex-start;flex-direction:column}.cta .wrap{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.cta strong{font-size:26px}}
@media(max-width:430px){.header-inner{height:86px;grid-template-columns:100px 1fr auto}.site-logo img{width:96px!important;max-height:70px!important}.menu{top:86px}.header-quote{min-width:128px;font-size:12px}.hero{min-height:500px}.hero h1{font-size:39px}.lead{font-size:18px}.trust-grid{grid-template-columns:1fr}.trust-item{border-left:0;border-top:1px solid rgba(217,154,11,.55)}.trust-item:first-child{border-top:0}.service-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.section-title,.intro-copy h2{font-size:30px}}


/* V19 exact mockup correction: wider zoom-out hero, deeper angled header, clean left text */
@media (min-width:981px){
  :root{--max:1430px;}
  .site-header{
    height:176px;
    clip-path:polygon(0 0,100% 0,100% 74%,0 100%)!important;
    margin-bottom:-54px!important;
    background:#fff!important;
    overflow:visible;
  }
  .header-inner{
    height:176px!important;
    width:min(1430px,calc(100% - 108px))!important;
    grid-template-columns:230px 1fr 260px!important;
    gap:54px!important;
    align-items:start!important;
    padding-top:22px!important;
  }
  .site-logo img{
    width:165px!important;
    max-height:145px!important;
  }
  .primary-nav{padding-top:39px!important;}
  .menu{gap:54px!important;font-size:18px!important;letter-spacing:.03em!important;}
  .menu a{padding-bottom:19px!important;border-bottom-width:4px!important;}
  .header-quote{
    width:245px!important;
    height:75px!important;
    margin-top:18px!important;
    font-size:20px!important;
    line-height:1.15!important;
    padding:0 28px!important;
  }
  .hero{
    min-height:720px!important;
    padding-top:0!important;
    align-items:flex-start!important;
    background-color:#020202!important;
    background-size:auto 100%!important;
    background-position:right center!important;
    background-repeat:no-repeat!important;
  }
  .hero-overlay{
    background:
      linear-gradient(90deg,rgba(0,0,0,.99) 0%,rgba(0,0,0,.93) 21%,rgba(0,0,0,.74) 39%,rgba(0,0,0,.30) 63%,rgba(0,0,0,.02) 100%)!important;
  }
  .hero-content{
    padding-top:200px!important;
    padding-bottom:70px!important;
    max-width:1430px!important;
  }
  .hero h1{
    font-size:74px!important;
    line-height:.98!important;
    letter-spacing:.075em!important;
    max-width:650px!important;
    text-shadow:0 5px 6px rgba(0,0,0,.38)!important;
  }
  .gold-rule{width:145px!important;height:5px!important;margin:36px 0 28px!important;}
  .lead{font-size:27px!important;line-height:1.42!important;max-width:560px!important;margin-bottom:42px!important;}
  .hero-quote{height:70px!important;min-width:292px!important;font-size:23px!important;}
  .trust-item{min-height:175px!important;}
}

@media (min-width:1200px){
  .hero{min-height:735px!important;}
  .hero-content{padding-top:212px!important;}
}

@media (max-width:980px){
  .site-header{clip-path:polygon(0 0,100% 0,100% 88%,0 100%)!important;margin-bottom:-18px!important;}
  .hero{background-size:auto 100%!important;background-position:right center!important;background-color:#020202!important;}
  .hero-content{padding-top:90px!important;}
}


/* V20: match approved mockup proportions exactly on desktop */
@media (min-width:981px){
  :root{--max:1396px;}
  .site-header{
    height:185px!important;
    margin-bottom:0!important;
    clip-path:polygon(0 0,100% 0,100% 73%,0 100%)!important;
    background:#fff!important;
    z-index:20!important;
  }
  .header-inner{
    height:185px!important;
    width:min(1400px,calc(100% - 124px))!important;
    grid-template-columns:205px 1fr 252px!important;
    gap:56px!important;
    padding-top:22px!important;
    align-items:start!important;
  }
  .site-logo img{
    width:165px!important;
    max-height:145px!important;
  }
  .primary-nav{
    padding-top:47px!important;
  }
  .menu{
    gap:56px!important;
    font-size:20px!important;
    letter-spacing:.02em!important;
    font-weight:1000!important;
  }
  .menu a{
    padding-bottom:18px!important;
    border-bottom-width:4px!important;
  }
  .header-quote{
    width:248px!important;
    height:61px!important;
    margin-top:29px!important;
    padding:0 25px!important;
    font-size:20px!important;
    line-height:1.14!important;
    box-shadow:none!important;
  }
  .hero{
    min-height:620px!important;
    padding-top:0!important;
    align-items:flex-start!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    background-color:#040404!important;
  }
  .hero-overlay{
    background:linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.90) 22%,rgba(0,0,0,.55) 42%,rgba(0,0,0,.10) 68%,rgba(0,0,0,.00) 100%)!important;
  }
  .hero-content{
    width:min(1396px,calc(100% - 140px))!important;
    max-width:1396px!important;
    padding-top:148px!important;
    padding-bottom:0!important;
  }
  .hero h1{
    font-size:72px!important;
    line-height:1.04!important;
    letter-spacing:.065em!important;
    max-width:660px!important;
    font-weight:1000!important;
    text-shadow:0 4px 5px rgba(0,0,0,.42)!important;
  }
  .gold-rule{
    width:139px!important;
    height:5px!important;
    margin:30px 0 24px!important;
  }
  .lead{
    max-width:610px!important;
    font-size:26px!important;
    line-height:1.45!important;
    margin:0 0 35px!important;
  }
  .hero-quote{
    height:62px!important;
    min-width:265px!important;
    padding:0 31px!important;
    font-size:22px!important;
    box-shadow:none!important;
  }
  .trust-strip{margin-top:0!important;}
  .trust-grid{width:min(1396px,calc(100% - 0px))!important;}
  .trust-item{min-height:171px!important;gap:11px!important;}
  .trust-icon{font-size:50px!important;}
  .trust-item strong{font-size:22px!important;}
  .trust-item span{font-size:20px!important;}
}

@media (min-width:1400px){
  .hero{min-height:620px!important;}
  .hero-content{padding-top:150px!important;}
}

/* prevent older V19 desktop rule from changing V20 sizing */
@media (min-width:1200px){
  .hero{min-height:620px!important;}
  .hero-content{padding-top:150px!important;}
}


/* V21 rebuild: pixel-focused header + hero + trust bar matching approved mockup */
@media (min-width:981px){
  :root{--gold:#c98a00;--gold2:#d89a00;--max:1536px;}
  body{background:#fff!important;}
  .site-header{
    height:154px!important;
    margin-bottom:-42px!important;
    clip-path:polygon(0 0,100% 0,100% 78%,0 100%)!important;
    background:#fff!important;
    position:relative!important;
    z-index:50!important;
    overflow:visible!important;
    box-shadow:none!important;
  }
  .header-inner{
    height:154px!important;
    width:100%!important;
    max-width:none!important;
    padding:18px 70px 0 68px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:178px minmax(0,1fr) 250px!important;
    gap:42px!important;
    align-items:start!important;
  }
  .site-logo{
    width:178px!important;
    height:130px!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow:visible!important;
  }
  .site-logo img{
    width:165px!important;
    max-width:165px!important;
    max-height:132px!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .primary-nav{
    justify-self:center!important;
    align-self:start!important;
    padding-top:50px!important;
    overflow:visible!important;
    max-width:100%!important;
  }
  .menu{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:clamp(34px,4.35vw,72px)!important;
    font-size:18px!important;
    line-height:1!important;
    letter-spacing:.015em!important;
    font-weight:1000!important;
    white-space:nowrap!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .menu a{
    padding:0 0 18px!important;
    border-bottom:4px solid transparent!important;
    color:#050505!important;
  }
  .menu a:hover,.menu .current-menu-item>a,.menu .current_page_item>a,.menu a[aria-current="page"],.menu .active{border-bottom-color:var(--gold)!important;}
  .header-quote{
    justify-self:end!important;
    align-self:start!important;
    margin-top:24px!important;
    width:248px!important;
    height:61px!important;
    padding:0 28px!important;
    font-size:19px!important;
    line-height:1.12!important;
    box-shadow:none!important;
    background:linear-gradient(180deg,#d99a00,#bd7c00)!important;
  }
  .hero{
    margin-top:0!important;
    min-height:690px!important;
    height:690px!important;
    padding:0!important;
    display:block!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    background-color:#020202!important;
    overflow:hidden!important;
    position:relative!important;
  }
  .hero-overlay{
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.88) 25%,rgba(0,0,0,.54) 43%,rgba(0,0,0,.14) 64%,rgba(0,0,0,0) 100%)!important;
  }
  .hero-content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:196px 0 0 70px!important;
    position:relative!important;
    z-index:2!important;
  }
  .hero h1{
    max-width:620px!important;
    margin:0!important;
    font-size:clamp(56px,4.7vw,70px)!important;
    line-height:1.03!important;
    letter-spacing:.055em!important;
    font-weight:1000!important;
    text-transform:uppercase!important;
    text-shadow:0 4px 5px rgba(0,0,0,.45)!important;
    white-space:normal!important;
  }
  .gold-rule{
    width:140px!important;
    height:5px!important;
    margin:31px 0 25px!important;
    background:var(--gold2)!important;
  }
  .lead{
    max-width:540px!important;
    margin:0 0 36px!important;
    font-size:25px!important;
    line-height:1.45!important;
    font-weight:400!important;
    color:#fff!important;
  }
  .hero-quote{
    height:61px!important;
    min-width:266px!important;
    padding:0 32px!important;
    font-size:21px!important;
    line-height:1!important;
    box-shadow:none!important;
  }
  .trust-strip{
    margin-top:0!important;
    background:#020202!important;
    border:0!important;
  }
  .trust-grid{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    grid-template-columns:repeat(4,1fr)!important;
  }
  .trust-item{
    min-height:178px!important;
    padding:24px 20px!important;
    border-left:1px solid rgba(216,154,0,.84)!important;
    gap:12px!important;
  }
  .trust-item:first-child{border-left:0!important;}
  .trust-icon{font-size:52px!important;color:var(--gold2)!important;line-height:1!important;}
  .trust-item strong{font-size:22px!important;line-height:1.05!important;letter-spacing:.01em!important;}
  .trust-item span{font-size:18px!important;line-height:1.25!important;color:#fff!important;}
}

@media (min-width:1300px){
  .hero{height:700px!important;min-height:700px!important;}
  .hero-content{padding-top:206px!important;}
  .hero h1{font-size:72px!important;max-width:650px!important;}
  .lead{font-size:26px!important;max-width:560px!important;}
}

@media (min-width:1500px){
  .site-header{height:164px!important;margin-bottom:-44px!important;}
  .header-inner{height:164px!important;padding-left:70px!important;padding-right:115px!important;grid-template-columns:190px 1fr 250px!important;}
  .site-logo img{width:175px!important;max-width:175px!important;max-height:140px!important;}
  .menu{font-size:20px!important;gap:64px!important;}
  .header-quote{width:250px!important;height:62px!important;font-size:20px!important;}
  .hero{height:710px!important;min-height:710px!important;}
  .hero-content{padding-top:215px!important;padding-left:70px!important;}
  .hero h1{font-size:72px!important;max-width:660px!important;}
}

@media (min-width:981px) and (max-width:1220px){
  .header-inner{padding-left:56px!important;padding-right:62px!important;grid-template-columns:170px minmax(0,1fr) 220px!important;gap:28px!important;}
  .site-logo img{width:154px!important;max-width:154px!important;}
  .menu{font-size:16px!important;gap:clamp(24px,3vw,42px)!important;}
  .header-quote{width:210px!important;height:58px!important;font-size:17px!important;margin-top:26px!important;}
  .hero{height:620px!important;min-height:620px!important;background-position:center center!important;}
  .hero-content{padding-top:170px!important;padding-left:68px!important;}
  .hero h1{font-size:54px!important;max-width:560px!important;letter-spacing:.055em!important;line-height:1.05!important;}
  .lead{font-size:22px!important;max-width:520px!important;margin-bottom:32px!important;}
  .hero-quote{height:58px!important;min-width:240px!important;font-size:19px!important;}
  .trust-item{min-height:160px!important;}
  .trust-icon{font-size:46px!important;}
  .trust-item strong{font-size:19px!important;}
  .trust-item span{font-size:16px!important;}
}

@media (max-width:980px){
  .site-header{height:104px!important;margin-bottom:-16px!important;clip-path:polygon(0 0,100% 0,100% 88%,0 100%)!important;background:#fff!important;}
  .header-inner{height:104px!important;}
  .hero{min-height:560px!important;background-position:center center!important;background-size:cover!important;}
  .hero-content{padding:90px 24px 40px!important;}
  .hero h1{font-size:44px!important;line-height:1.05!important;letter-spacing:.045em!important;max-width:420px!important;}
}


/* V22 REFERENCE MATCH OVERRIDE: rebuild only the top section to match the supplied mockup */
@media (min-width:981px){
  :root{--gold:#c98a00;--gold2:#d79a00;--black:#000;}
  body{margin:0!important;background:#fff!important;}

  .site-header{
    height:190px!important;
    margin-bottom:-48px!important;
    background:#fff!important;
    clip-path:polygon(0 0,100% 0,100% 74%,0 100%)!important;
    position:relative!important;
    z-index:100!important;
    overflow:visible!important;
    box-shadow:none!important;
  }
  .header-inner{
    width:100%!important;
    max-width:none!important;
    height:190px!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    position:relative!important;
  }
  .site-logo{
    position:absolute!important;
    left:68px!important;
    top:24px!important;
    width:168px!important;
    height:145px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    z-index:4!important;
  }
  .site-logo img{
    width:160px!important;
    max-width:160px!important;
    max-height:138px!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .primary-nav{
    position:absolute!important;
    left:50%!important;
    top:72px!important;
    transform:translateX(-50%)!important;
    width:auto!important;
    max-width:620px!important;
    padding:0!important;
    margin:0!important;
    z-index:3!important;
    overflow:visible!important;
  }
  .menu{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:58px!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:20px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:.015em!important;
    white-space:nowrap!important;
    text-transform:uppercase!important;
  }
  .menu a{
    display:block!important;
    padding:0 0 22px!important;
    border-bottom:4px solid transparent!important;
    color:#050505!important;
  }
  .menu a:hover,.menu .current-menu-item>a,.menu .current_page_item>a,.menu a[aria-current="page"],.menu .active{border-bottom-color:var(--gold)!important;}
  .header-quote{
    position:absolute!important;
    right:68px!important;
    top:51px!important;
    width:248px!important;
    height:62px!important;
    margin:0!important;
    padding:0 22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(180deg,#d99a04,#bd7c00)!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:20px!important;
    line-height:1.12!important;
    font-weight:1000!important;
    letter-spacing:.015em!important;
    text-align:center!important;
    text-transform:uppercase!important;
    box-shadow:none!important;
    z-index:4!important;
  }

  .hero{
    height:690px!important;
    min-height:690px!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    position:relative!important;
    overflow:hidden!important;
    background-color:#000!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    color:#fff!important;
  }
  .hero-overlay{
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.86) 27%,rgba(0,0,0,.42) 52%,rgba(0,0,0,.04) 78%,rgba(0,0,0,0) 100%)!important;
    z-index:1!important;
  }
  .hero-content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:210px 0 0 70px!important;
    position:relative!important;
    z-index:2!important;
  }
  .hero h1{
    margin:0!important;
    padding:0!important;
    max-width:650px!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:72px!important;
    line-height:1.04!important;
    font-weight:1000!important;
    letter-spacing:.052em!important;
    text-transform:uppercase!important;
    text-shadow:0 4px 5px rgba(0,0,0,.42)!important;
  }
  .gold-rule{
    display:block!important;
    width:140px!important;
    height:5px!important;
    margin:30px 0 24px!important;
    background:var(--gold2)!important;
  }
  .lead{
    max-width:585px!important;
    margin:0 0 35px!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:26px!important;
    line-height:1.44!important;
    font-weight:400!important;
  }
  .hero-quote{
    width:266px!important;
    min-width:266px!important;
    height:62px!important;
    padding:0!important;
    font-size:22px!important;
    line-height:1!important;
    box-shadow:none!important;
  }
  .trust-strip{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#000!important;
    border:0!important;
  }
  .trust-grid{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
  }
  .trust-item{
    min-height:180px!important;
    padding:26px 18px 24px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:12px!important;
    border-left:1px solid rgba(215,154,0,.95)!important;
    background:#000!important;
  }
  .trust-item:first-child{border-left:0!important;}
  .trust-icon{font-size:54px!important;line-height:1!important;color:var(--gold2)!important;}
  .trust-item strong{font-size:22px!important;line-height:1.05!important;font-weight:1000!important;letter-spacing:.01em!important;color:#fff!important;text-transform:uppercase!important;}
  .trust-item span{font-size:18px!important;line-height:1.25!important;color:#fff!important;}
}

@media (min-width:981px) and (max-width:1220px){
  .site-header{height:178px!important;margin-bottom:-44px!important;clip-path:polygon(0 0,100% 0,100% 75%,0 100%)!important;}
  .header-inner{height:178px!important;}
  .site-logo{left:58px!important;top:19px!important;width:158px!important;height:135px!important;}
  .site-logo img{width:150px!important;max-width:150px!important;max-height:128px!important;}
  .primary-nav{top:70px!important;left:52%!important;max-width:560px!important;}
  .menu{gap:42px!important;font-size:18px!important;}
  .menu a{padding-bottom:20px!important;}
  .header-quote{right:62px!important;top:44px!important;width:220px!important;height:58px!important;font-size:18px!important;}
  .hero{height:610px!important;min-height:610px!important;background-size:cover!important;background-position:center center!important;}
  .hero-content{padding-top:170px!important;padding-left:70px!important;}
  .hero h1{font-size:62px!important;max-width:650px!important;line-height:1.05!important;letter-spacing:.052em!important;}
  .lead{font-size:22px!important;max-width:585px!important;line-height:1.45!important;margin-bottom:34px!important;}
  .hero-quote{width:276px!important;height:58px!important;font-size:20px!important;}
  .trust-item{min-height:160px!important;}
  .trust-icon{font-size:46px!important;}
  .trust-item strong{font-size:19px!important;}
  .trust-item span{font-size:16px!important;}
}

@media (min-width:1500px){
  .site-header{height:190px!important;margin-bottom:-48px!important;}
  .site-logo{left:68px!important;top:24px!important;}
  .primary-nav{top:72px!important;}
  .header-quote{right:68px!important;top:51px!important;}
  .hero{height:690px!important;min-height:690px!important;}
  .hero-content{padding-top:210px!important;padding-left:70px!important;}
}

@media (max-width:980px){
  .site-header{clip-path:none!important;margin-bottom:0!important;}
}



/* V25 FINAL HEADER + HERO RECODE
   This block overrides all earlier V16-V24 rules. It keeps the WordPress theme editable,
   but forces the top header, slanted hero edge, left text placement, and trust bar to match
   the supplied reference more closely. */
@media (min-width:981px){
  :root{--mbm-gold:#d29400;--mbm-gold-2:#e2a20b;--mbm-black:#000;}

  .site-header.mbm-clean-header-v18,
  .site-header{
    position:relative!important;
    z-index:1000!important;
    height:168px!important;
    margin:0 0 -48px 0!important;
    padding:0!important;
    background:#fff!important;
    overflow:visible!important;
    box-shadow:none!important;
    clip-path:polygon(0 0,100% 0,100% 72%,0 100%)!important;
  }

  .header-inner{
    position:relative!important;
    display:grid!important;
    grid-template-columns:220px minmax(540px,1fr) 285px!important;
    align-items:start!important;
    gap:30px!important;
    width:100%!important;
    max-width:none!important;
    height:168px!important;
    margin:0!important;
    padding:22px 72px 0 66px!important;
  }

  .site-logo{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:178px!important;
    height:132px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    z-index:5!important;
  }
  .site-logo img{
    width:166px!important;
    max-width:166px!important;
    max-height:132px!important;
    height:auto!important;
    object-fit:contain!important;
  }

  .primary-nav{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
    justify-self:center!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:53px 0 0 0!important;
    overflow:visible!important;
    z-index:4!important;
  }
  .menu{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:58px!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
    white-space:nowrap!important;
    text-transform:uppercase!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:19px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:.012em!important;
  }
  .menu a{
    color:#050505!important;
    display:block!important;
    padding:0 0 20px 0!important;
    border-bottom:4px solid transparent!important;
  }
  .menu a:hover,
  .menu .current-menu-item>a,
  .menu .current_page_item>a,
  .menu a[aria-current="page"],
  .menu .active{border-bottom-color:var(--mbm-gold)!important;}

  .header-quote{
    position:relative!important;
    right:auto!important;
    top:auto!important;
    justify-self:end!important;
    align-self:start!important;
    width:270px!important;
    height:64px!important;
    margin:25px 0 0 0!important;
    padding:0 28px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(180deg,#d99b05 0%,#c28200 100%)!important;
    color:#fff!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    text-transform:uppercase!important;
    text-align:center!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:20px!important;
    line-height:1.12!important;
    font-weight:1000!important;
    letter-spacing:.014em!important;
    z-index:5!important;
  }

  .hero{
    position:relative!important;
    z-index:1!important;
    display:block!important;
    height:690px!important;
    min-height:690px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    color:#fff!important;
    background-color:#000!important;
    background-repeat:no-repeat!important;
    background-size:cover!important;
    background-position:60% center!important;
    clip-path:none!important;
  }
  .hero-overlay{
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    background:linear-gradient(90deg,
      rgba(0,0,0,1) 0%,
      rgba(0,0,0,.96) 18%,
      rgba(0,0,0,.78) 34%,
      rgba(0,0,0,.42) 52%,
      rgba(0,0,0,.08) 75%,
      rgba(0,0,0,0) 100%)!important;
  }
  .hero-content{
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:205px 0 0 80px!important;
  }
  .hero h1{
    margin:0!important;
    padding:0!important;
    max-width:610px!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:70px!important;
    line-height:1.05!important;
    font-weight:1000!important;
    letter-spacing:.045em!important;
    text-transform:uppercase!important;
    text-shadow:0 4px 5px rgba(0,0,0,.42)!important;
  }
  .gold-rule{
    display:block!important;
    width:143px!important;
    height:5px!important;
    margin:30px 0 26px!important;
    background:var(--mbm-gold-2)!important;
  }
  .lead{
    max-width:560px!important;
    margin:0 0 36px!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:25px!important;
    line-height:1.45!important;
    font-weight:400!important;
  }
  .hero-quote{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:290px!important;
    min-width:290px!important;
    height:70px!important;
    padding:0 28px!important;
    background:linear-gradient(180deg,#e0a20b 0%,#c68400 100%)!important;
    color:#fff!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:22px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:.02em!important;
    box-shadow:none!important;
  }

  .trust-strip{
    background:#000!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  .trust-grid{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    background:#000!important;
  }
  .trust-item{
    min-height:184px!important;
    padding:26px 20px 24px!important;
    background:#000!important;
    border-left:1px solid rgba(226,162,11,.85)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    text-align:center!important;
    gap:12px!important;
  }
  .trust-item:first-child{border-left:0!important;}
  .trust-icon{font-size:56px!important;line-height:1!important;color:var(--mbm-gold-2)!important;}
  .trust-item strong{display:block!important;color:#fff!important;text-transform:uppercase!important;font-size:23px!important;line-height:1.06!important;font-weight:1000!important;letter-spacing:.01em!important;}
  .trust-item span{display:block!important;color:#fff!important;font-size:20px!important;line-height:1.22!important;font-weight:400!important;}
}

@media (min-width:981px) and (max-width:1240px){
  .site-header{height:148px!important;margin-bottom:-40px!important;clip-path:polygon(0 0,100% 0,100% 73%,0 100%)!important;}
  .header-inner{height:148px!important;grid-template-columns:185px minmax(430px,1fr) 210px!important;gap:22px!important;padding:18px 58px 0 58px!important;}
  .site-logo{width:150px!important;height:116px!important;}
  .site-logo img{width:145px!important;max-width:145px!important;max-height:116px!important;}
  .primary-nav{padding-top:45px!important;}
  .menu{gap:32px!important;font-size:17px!important;}
  .menu a{padding-bottom:17px!important;}
  .header-quote{width:200px!important;height:58px!important;margin-top:20px!important;font-size:17px!important;padding:0 18px!important;}

  .hero{height:610px!important;min-height:610px!important;background-position:62% center!important;}
  .hero-content{padding:155px 0 0 64px!important;}
  .hero h1{font-size:60px!important;line-height:1.06!important;max-width:640px!important;letter-spacing:.045em!important;}
  .gold-rule{width:150px!important;height:5px!important;margin:28px 0 24px!important;}
  .lead{font-size:22px!important;line-height:1.44!important;max-width:565px!important;margin-bottom:34px!important;}
  .hero-quote{width:245px!important;min-width:245px!important;height:58px!important;font-size:19px!important;}
  .trust-item{min-height:165px!important;padding:24px 12px 22px!important;}
  .trust-icon{font-size:48px!important;}
  .trust-item strong{font-size:19px!important;}
  .trust-item span{font-size:16px!important;}
}

@media (min-width:1500px){
  .site-header{height:178px!important;margin-bottom:-48px!important;}
  .header-inner{height:178px!important;padding-left:68px!important;padding-right:68px!important;grid-template-columns:245px minmax(650px,1fr) 285px!important;}
  .site-logo img{width:178px!important;max-width:178px!important;}
  .primary-nav{padding-top:55px!important;}
  .menu{gap:66px!important;font-size:20px!important;}
  .hero{height:704px!important;min-height:704px!important;background-position:58% center!important;}
  .hero-content{padding-top:220px!important;padding-left:80px!important;}
  .hero h1{font-size:75px!important;max-width:660px!important;}
  .lead{font-size:26px!important;max-width:585px!important;}
  .trust-item{min-height:188px!important;}
}

@media (max-width:980px){
  .site-header{clip-path:none!important;margin-bottom:0!important;}
  .hero{clip-path:none!important;}
}


/* MBM hero alignment fix */
@media (min-width:981px){
.hero{
background-position: 72% center !important;
background-size: cover !important;
}
.hero-content{
max-width: 620px !important;
margin-left: 0 !important;
padding-left: 70px !important;
padding-top: 165px !important;
}
.hero h1{
max-width: 560px !important;
}
.lead{
max-width: 520px !important;
}
}

/* MOCKUP HERO REBUILD */
.hero{
min-height:760px!important;
background-position:78% center!important;
background-size:cover!important;
padding-top:0!important;
align-items:flex-start!important;
}
.hero-overlay{
background:linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.92) 26%,rgba(0,0,0,.45) 50%,rgba(0,0,0,0) 72%)!important;
}
.hero-content{
max-width:none!important;
width:100%!important;
padding-top:140px!important;
padding-left:70px!important;
margin:0!important;
}
.hero-content h1{
max-width:520px!important;
font-size:92px!important;
line-height:.92!important;
text-align:left!important;
}
.hero-content .lead{
max-width:500px!important;
font-size:22px!important;
line-height:1.6!important;
}
.hero-quote{
margin-top:20px!important;
}


/* EXACT MOCKUP HERO OVERRIDE */
.hero{
min-height:760px !important;
background-size:cover !important;
background-position:82% center !important;
padding-top:95px !important;
}

.hero-content.wrap{
width:100% !important;
max-width:none !important;
margin:0 !important;
padding:110px 0 70px 70px !important;
}

.hero h1{
max-width:540px !important;
font-size:84px !important;
line-height:.92 !important;
letter-spacing:.02em !important;
}

.lead{
max-width:470px !important;
font-size:22px !important;
line-height:1.55 !important;
}

.hero-overlay{
background:linear-gradient(90deg,
rgba(0,0,0,.98) 0%,
rgba(0,0,0,.95) 32%,
rgba(0,0,0,.55) 52%,
rgba(0,0,0,0) 72%) !important;
}

.site-header{
clip-path:polygon(0 0,100% 0,100% 82%,0 100%) !important;
margin-bottom:-48px !important;
}

.hero-quote{
min-width:300px !important;
height:74px !important;
}



/* =========================================================
   V29 HEADER + HERO REBUILD
   Desktop and mobile are intentionally separate.
   This fixes the phone layout: smaller headline, left text,
   hidden desktop quote button, corrected image crop.
   ========================================================= */

/* DESKTOP / TABLET LANDSCAPE */
@media (min-width: 981px){

  body{
    overflow-x:hidden !important;
  }

  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    position:relative !important;
    z-index:1000 !important;
    height:156px !important;
    min-height:156px !important;
    background:#fff !important;
    margin:0 0 -46px 0 !important;
    padding:0 !important;
    clip-path:polygon(0 0,100% 0,100% 74%,0 100%) !important;
    overflow:visible !important;
  }

  .header-inner{
    width:100% !important;
    max-width:none !important;
    height:156px !important;
    margin:0 !important;
    padding:18px 64px 0 64px !important;
    display:grid !important;
    grid-template-columns:165px minmax(0,1fr) 250px !important;
    align-items:start !important;
    gap:34px !important;
  }

  .site-logo{
    display:block !important;
    width:165px !important;
  }

  .site-logo img{
    width:155px !important;
    max-width:155px !important;
    max-height:130px !important;
    height:auto !important;
  }

  .primary-nav{
    justify-self:center !important;
    align-self:start !important;
    padding-top:44px !important;
    min-width:0 !important;
    overflow:visible !important;
  }

  .menu{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:clamp(28px,3.4vw,58px) !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    white-space:nowrap !important;
    font-size:18px !important;
    font-weight:900 !important;
    letter-spacing:.01em !important;
    line-height:1 !important;
  }

  .menu a{
    display:block !important;
    padding:0 0 16px !important;
    border-bottom:4px solid transparent !important;
  }

  .menu a:hover,
  .menu .current-menu-item>a,
  .menu .current_page_item>a,
  .menu a[aria-current="page"],
  .menu .active{
    border-bottom-color:#c98b00 !important;
  }

  .header-quote{
    display:flex !important;
    justify-self:end !important;
    align-self:start !important;
    margin-top:20px !important;
    width:250px !important;
    height:72px !important;
    padding:0 26px !important;
    font-size:21px !important;
    line-height:1.12 !important;
    letter-spacing:.02em !important;
  }

  .hamb{
    display:none !important;
  }

  .hero,
  .mbm-hero-v29{
    position:relative !important;
    display:block !important;
    height:700px !important;
    min-height:700px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    overflow:hidden !important;
    background-color:#000 !important;
    background-repeat:no-repeat !important;
    background-size:auto 100% !important;
    background-position:100% center !important;
  }

  .hero-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    pointer-events:none !important;
    background:
      linear-gradient(90deg,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,.99) 28%,
        rgba(0,0,0,.86) 43%,
        rgba(0,0,0,.46) 58%,
        rgba(0,0,0,.08) 74%,
        rgba(0,0,0,0) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    position:absolute !important;
    z-index:2 !important;
    left:70px !important;
    top:170px !important;
    width:560px !important;
    max-width:560px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    text-align:left !important;
  }

  .hero h1,
  .hero-content h1{
    width:560px !important;
    max-width:560px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:70px !important;
    line-height:.96 !important;
    letter-spacing:.045em !important;
    font-weight:1000 !important;
    text-align:left !important;
    text-transform:uppercase !important;
    white-space:normal !important;
    text-shadow:0 4px 5px rgba(0,0,0,.45) !important;
  }

  .hero .gold-rule{
    display:block !important;
    width:145px !important;
    height:5px !important;
    margin:30px 0 24px !important;
    background:#d99a00 !important;
  }

  .hero .lead{
    width:495px !important;
    max-width:495px !important;
    margin:0 0 34px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:24px !important;
    line-height:1.55 !important;
    font-weight:400 !important;
    text-align:left !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:295px !important;
    min-width:295px !important;
    height:72px !important;
    padding:0 26px !important;
    font-size:21px !important;
    line-height:1.1 !important;
    box-shadow:none !important;
  }

  .trust-strip{
    background:#000 !important;
    color:#fff !important;
    margin:0 !important;
  }

  .trust-grid{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
  }

  .trust-item{
    min-height:178px !important;
    padding:18px 20px !important;
    border-left:1px solid rgba(217,154,0,.86) !important;
  }

  .trust-item:first-child{
    border-left:0 !important;
  }

  .trust-icon{
    font-size:48px !important;
    color:#d99a00 !important;
  }

  .trust-item strong{
    font-size:22px !important;
    line-height:1.1 !important;
    letter-spacing:.01em !important;
  }

  .trust-item span{
    font-size:18px !important;
  }
}

/* WORDPRESS CUSTOMIZER / SMALLER DESKTOP */
@media (min-width:981px) and (max-width:1180px){

  .header-inner{
    grid-template-columns:165px minmax(0,1fr) 200px !important;
    padding-left:56px !important;
    padding-right:58px !important;
    gap:24px !important;
  }

  .menu{
    gap:30px !important;
    font-size:18px !important;
  }

  .header-quote{
    width:200px !important;
    height:64px !important;
    font-size:18px !important;
  }

  .hero,
  .mbm-hero-v29{
    height:610px !important;
    min-height:610px !important;
    background-size:auto 100% !important;
    background-position:100% center !important;
  }

  .hero-content,
  section.hero .hero-content{
    left:68px !important;
    top:160px !important;
    width:535px !important;
    max-width:535px !important;
  }

  .hero h1,
  .hero-content h1{
    width:535px !important;
    max-width:535px !important;
    font-size:60px !important;
    line-height:.98 !important;
  }

  .hero .lead{
    width:510px !important;
    max-width:510px !important;
    font-size:21px !important;
    line-height:1.45 !important;
  }

  .hero-quote{
    width:245px !important;
    min-width:245px !important;
    height:58px !important;
    font-size:18px !important;
  }
}

/* MOBILE */
@media (max-width:980px){

  body{
    overflow-x:hidden !important;
  }

  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    position:relative !important;
    z-index:1000 !important;
    height:116px !important;
    min-height:116px !important;
    background:#fff !important;
    margin:0 0 -28px 0 !important;
    padding:0 !important;
    clip-path:polygon(0 0,100% 0,100% 78%,0 100%) !important;
    overflow:visible !important;
  }

  .header-inner{
    width:100% !important;
    height:116px !important;
    max-width:none !important;
    margin:0 !important;
    padding:10px 22px 0 28px !important;
    display:grid !important;
    grid-template-columns:128px minmax(0,1fr) 48px !important;
    align-items:start !important;
    gap:14px !important;
  }

  .site-logo{
    display:block !important;
    width:128px !important;
    z-index:3 !important;
  }

  .site-logo img{
    width:120px !important;
    max-width:120px !important;
    max-height:96px !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .primary-nav{
    display:none !important;
  }

  .header-quote{
    display:none !important;
  }

  .hamb{
    display:block !important;
    justify-self:end !important;
    align-self:start !important;
    margin-top:26px !important;
    width:44px !important;
    height:44px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#000 !important;
    font-size:38px !important;
    line-height:1 !important;
    z-index:4 !important;
  }

  .hero,
  .mbm-hero-v29{
    position:relative !important;
    display:block !important;
    height:620px !important;
    min-height:620px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#fff !important;
    background-color:#000 !important;
    background-repeat:no-repeat !important;
    background-size:auto 100% !important;
    background-position:82% center !important;
  }

  .hero-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:
      linear-gradient(90deg,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,.96) 46%,
        rgba(0,0,0,.62) 68%,
        rgba(0,0,0,.12) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    position:absolute !important;
    z-index:2 !important;
    left:24px !important;
    top:155px !important;
    width:calc(100vw - 48px) !important;
    max-width:380px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    text-align:left !important;
  }

  .hero h1,
  .hero-content h1{
    display:block !important;
    width:100% !important;
    max-width:380px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:46px !important;
    line-height:.96 !important;
    letter-spacing:.045em !important;
    font-weight:1000 !important;
    text-align:left !important;
    text-transform:uppercase !important;
    white-space:normal !important;
    color:#fff !important;
    text-shadow:0 3px 5px rgba(0,0,0,.45) !important;
  }

  .hero .gold-rule{
    width:116px !important;
    height:4px !important;
    margin:22px 0 19px !important;
    background:#d99a00 !important;
  }

  .hero .lead{
    width:100% !important;
    max-width:340px !important;
    margin:0 0 24px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:19px !important;
    line-height:1.42 !important;
    font-weight:400 !important;
    text-align:left !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:235px !important;
    min-width:235px !important;
    height:58px !important;
    padding:0 20px !important;
    font-size:17px !important;
    line-height:1.1 !important;
    letter-spacing:.03em !important;
    box-shadow:none !important;
  }

  .trust-strip{
    margin:0 !important;
    background:#000 !important;
  }

  .trust-grid{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,1fr) !important;
  }

  .trust-item{
    min-height:128px !important;
    padding:18px 10px !important;
    border-left:1px solid rgba(217,154,0,.75) !important;
    border-top:1px solid rgba(217,154,0,.28) !important;
    gap:6px !important;
  }

  .trust-item:nth-child(odd){
    border-left:0 !important;
  }

  .trust-icon{
    font-size:32px !important;
    color:#d99a00 !important;
  }

  .trust-item strong{
    font-size:16px !important;
    line-height:1.12 !important;
    letter-spacing:.01em !important;
  }

  .trust-item span{
    font-size:13px !important;
    line-height:1.25 !important;
  }
}

/* VERY SMALL PHONES */
@media (max-width:420px){

  .hero,
  .mbm-hero-v29{
    height:600px !important;
    min-height:600px !important;
    background-position:84% center !important;
  }

  .hero-content,
  section.hero .hero-content{
    left:22px !important;
    top:150px !important;
    max-width:330px !important;
  }

  .hero h1,
  .hero-content h1{
    max-width:330px !important;
    font-size:38px !important;
    line-height:.98 !important;
  }

  .hero .lead{
    max-width:310px !important;
    font-size:18px !important;
  }
}


/* V30 Hero Image Rebuild */
@media (min-width:981px){
.hero,.mbm-hero-v29{
 background-size:105% auto !important;
 background-position:55% center !important;
 min-height:780px !important;
 height:780px !important;
}
.hero-content{
 left:80px !important;
 top:210px !important;
 max-width:520px !important;
 width:520px !important;
}
.hero h1,.hero-content h1{
 font-size:88px !important;
 line-height:.92 !important;
 max-width:520px !important;
}
.hero .lead{
 max-width:500px !important;
}
}

@media (max-width:980px){
.hero,.mbm-hero-v29{
 background-position:68% center !important;
 background-size:cover !important;
}
.hero-content{
 left:20px !important;
 max-width:320px !important;
}
.hero h1,.hero-content h1{
 font-size:40px !important;
 max-width:320px !important;
}
}


/* =========================================================
   V31 MOBILE HERO FIX
   Fixes phone screenshot:
   - hides broken desktop nav/CTA on mobile
   - aligns hamburger with logo
   - reduces headline size
   - corrects CTA width
   - zooms hero image out and prevents overflow
   ========================================================= */
@media (max-width: 980px){

  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:112px !important;
    min-height:112px !important;
    margin-bottom:-24px !important;
    clip-path:polygon(0 0,100% 0,100% 80%,0 100%) !important;
    overflow:visible !important;
    background:#fff !important;
    z-index:9999 !important;
  }

  .header-inner{
    height:112px !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:10px 22px 0 34px !important;
    grid-template-columns:140px 1fr 48px !important;
    display:grid !important;
    align-items:start !important;
  }

  .site-logo img{
    width:132px !important;
    max-width:132px !important;
    max-height:98px !important;
  }

  .primary-nav,
  .menu,
  .header-quote{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .hamb{
    display:block !important;
    grid-column:3 !important;
    justify-self:end !important;
    margin-top:24px !important;
    width:42px !important;
    height:42px !important;
    font-size:38px !important;
    line-height:1 !important;
    background:transparent !important;
    color:#000 !important;
    border:0 !important;
  }

  .hero,
  .mbm-hero-v29{
    height:610px !important;
    min-height:610px !important;
    padding:0 !important;
    margin:0 !important;
    background-size:auto 100% !important;
    background-position:72% center !important;
    background-repeat:no-repeat !important;
    background-color:#000 !important;
    overflow:hidden !important;
  }

  .hero-overlay{
    inset:0 !important;
    background:
      linear-gradient(90deg,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,.95) 45%,
        rgba(0,0,0,.55) 70%,
        rgba(0,0,0,.18) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    position:absolute !important;
    left:28px !important;
    top:135px !important;
    width:calc(100vw - 56px) !important;
    max-width:340px !important;
    padding:0 !important;
    margin:0 !important;
    transform:none !important;
    z-index:5 !important;
  }

  .hero h1,
  .hero-content h1{
    width:100% !important;
    max-width:340px !important;
    font-size:40px !important;
    line-height:.98 !important;
    letter-spacing:.045em !important;
    white-space:normal !important;
    margin:0 !important;
    text-align:left !important;
  }

  .hero .gold-rule{
    width:126px !important;
    height:4px !important;
    margin:22px 0 20px !important;
  }

  .hero .lead{
    width:100% !important;
    max-width:325px !important;
    font-size:18px !important;
    line-height:1.42 !important;
    margin:0 0 24px !important;
    text-align:left !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:245px !important;
    min-width:245px !important;
    max-width:245px !important;
    height:58px !important;
    padding:0 18px !important;
    font-size:17px !important;
    line-height:1.1 !important;
  }

  .trust-strip{
    margin-top:0 !important;
  }

  .trust-grid{
    grid-template-columns:repeat(2,1fr) !important;
  }

  .trust-item{
    min-height:122px !important;
    padding:15px 8px !important;
  }

  .trust-icon{
    font-size:30px !important;
  }

  .trust-item strong{
    font-size:15px !important;
  }

  .trust-item span{
    font-size:13px !important;
  }
}

@media (max-width:420px){
  .hero,
  .mbm-hero-v29{
    height:590px !important;
    min-height:590px !important;
    background-position:74% center !important;
  }

  .hero-content,
  section.hero .hero-content{
    top:130px !important;
    left:24px !important;
    max-width:315px !important;
    width:calc(100vw - 48px) !important;
  }

  .hero h1,
  .hero-content h1{
    font-size:36px !important;
    max-width:315px !important;
  }

  .hero .lead{
    font-size:17px !important;
    max-width:300px !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:225px !important;
    min-width:225px !important;
    max-width:225px !important;
    height:54px !important;
    font-size:16px !important;
  }
}


/* =========================================================
   V32 MOBILE MATCH TO IMAGE 1
   Phone-specific rebuild:
   - hero image less zoomed-in
   - full gate composition visible
   - text block left, clean, contained
   - headline no overflow
   - header + hamburger clean
   ========================================================= */
@media (max-width: 980px){

  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:108px !important;
    min-height:108px !important;
    margin-bottom:-24px !important;
    clip-path:polygon(0 0,100% 0,100% 80%,0 100%) !important;
    background:#fff !important;
    overflow:visible !important;
    z-index:9999 !important;
  }

  .header-inner{
    width:100% !important;
    max-width:none !important;
    height:108px !important;
    margin:0 !important;
    padding:10px 24px 0 30px !important;
    display:grid !important;
    grid-template-columns:128px 1fr 44px !important;
    gap:12px !important;
    align-items:start !important;
  }

  .site-logo img{
    width:122px !important;
    max-width:122px !important;
    max-height:92px !important;
    height:auto !important;
  }

  .primary-nav,
  .menu,
  .header-quote{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .hamb{
    display:block !important;
    grid-column:3 !important;
    justify-self:end !important;
    align-self:start !important;
    margin-top:25px !important;
    width:42px !important;
    height:42px !important;
    font-size:38px !important;
    line-height:1 !important;
    background:transparent !important;
    color:#000 !important;
    border:0 !important;
  }

  .hero,
  .mbm-hero-v29{
    position:relative !important;
    display:block !important;
    height:720px !important;
    min-height:720px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background-color:#000 !important;
    background-repeat:no-repeat !important;
    background-size:178% auto !important;
    background-position:61% 0 !important;
    color:#fff !important;
  }

  .hero-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:
      linear-gradient(90deg,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,.96) 37%,
        rgba(0,0,0,.62) 62%,
        rgba(0,0,0,.18) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    position:absolute !important;
    z-index:5 !important;
    left:28px !important;
    top:150px !important;
    width:calc(100vw - 56px) !important;
    max-width:340px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    text-align:left !important;
  }

  .hero h1,
  .hero-content h1{
    width:100% !important;
    max-width:340px !important;
    margin:0 !important;
    padding:0 !important;
    font-size:44px !important;
    line-height:.96 !important;
    letter-spacing:.045em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    white-space:normal !important;
    color:#fff !important;
    text-align:left !important;
    text-shadow:0 3px 5px rgba(0,0,0,.45) !important;
  }

  .hero .gold-rule{
    display:block !important;
    width:128px !important;
    height:4px !important;
    margin:24px 0 20px !important;
    background:#d99a00 !important;
  }

  .hero .lead{
    width:100% !important;
    max-width:318px !important;
    margin:0 0 24px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:18px !important;
    line-height:1.48 !important;
    text-align:left !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:245px !important;
    min-width:245px !important;
    max-width:245px !important;
    height:58px !important;
    padding:0 18px !important;
    font-size:17px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
    box-shadow:none !important;
  }

  .trust-strip{
    margin-top:0 !important;
    background:#000 !important;
  }

  .trust-grid{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    overflow:hidden !important;
  }

  .trust-item{
    min-height:92px !important;
    padding:10px 4px !important;
    gap:4px !important;
    border-left:1px solid rgba(217,154,0,.65) !important;
  }

  .trust-item:first-child{
    border-left:0 !important;
  }

  .trust-icon{
    font-size:25px !important;
    color:#d99a00 !important;
  }

  .trust-item strong{
    font-size:11px !important;
    line-height:1.05 !important;
    letter-spacing:0 !important;
  }

  .trust-item span{
    font-size:9px !important;
    line-height:1.15 !important;
  }
}

@media (max-width:420px){

  .hero,
  .mbm-hero-v29{
    height:700px !important;
    min-height:700px !important;
    background-size:190% auto !important;
    background-position:62% 0 !important;
  }

  .hero-content,
  section.hero .hero-content{
    left:24px !important;
    top:148px !important;
    max-width:315px !important;
    width:calc(100vw - 48px) !important;
  }

  .hero h1,
  .hero-content h1{
    max-width:315px !important;
    font-size:40px !important;
    line-height:.98 !important;
  }

  .hero .lead{
    max-width:300px !important;
    font-size:17px !important;
    line-height:1.45 !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:225px !important;
    min-width:225px !important;
    max-width:225px !important;
    height:54px !important;
    font-size:16px !important;
  }
}


/* =========================================================
   V33 WIDE GATE HERO IMAGE
   Uses uploaded wide gate image as hero.
   Desktop: zoomed out, gate visible on right.
   Mobile: much less zoomed-in than previous, text left.
   ========================================================= */

/* Desktop */
@media (min-width:981px){
  .hero,
  .mbm-hero-v29{
    background-image:url('assets/images/hero-wide-gate-v33.png') !important;
    background-size:cover !important;
    background-position:center center !important;
    min-height:760px !important;
    height:760px !important;
  }

  .hero-overlay{
    background:
      linear-gradient(90deg,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,.92) 30%,
        rgba(0,0,0,.58) 48%,
        rgba(0,0,0,.16) 68%,
        rgba(0,0,0,0) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    left:70px !important;
    top:190px !important;
    width:560px !important;
    max-width:560px !important;
  }
}

/* Mobile */
@media (max-width:980px){
  .hero,
  .mbm-hero-v29{
    background-image:url('assets/images/hero-wide-gate-v33.png') !important;
    height:680px !important;
    min-height:680px !important;
    background-size:235% auto !important;
    background-position:58% 0 !important;
    background-repeat:no-repeat !important;
    background-color:#000 !important;
  }

  .hero-overlay{
    background:
      linear-gradient(90deg,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,.93) 42%,
        rgba(0,0,0,.58) 68%,
        rgba(0,0,0,.10) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    left:24px !important;
    top:142px !important;
    max-width:325px !important;
    width:calc(100vw - 48px) !important;
  }

  .hero h1,
  .hero-content h1{
    font-size:38px !important;
    line-height:.98 !important;
    max-width:325px !important;
  }

  .hero .lead{
    font-size:17px !important;
    line-height:1.45 !important;
    max-width:305px !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:225px !important;
    min-width:225px !important;
    max-width:225px !important;
    height:54px !important;
    font-size:16px !important;
  }
}

@media (max-width:420px){
  .hero,
  .mbm-hero-v29{
    height:660px !important;
    min-height:660px !important;
    background-size:255% auto !important;
    background-position:59% 0 !important;
  }

  .hero-content,
  section.hero .hero-content{
    top:138px !important;
  }

  .hero h1,
  .hero-content h1{
    font-size:36px !important;
  }
}


/* V34 - Use original uploaded hero image exactly */
.hero,
.mbm-hero-v29{
    background-image:url('assets/images/hero-original-upload.png') !important;
}


/* V38 HERO BRIGHTNESS BOOST */
.hero-overlay,
.hero::before,
.mbm-hero-overlay{
    opacity:0.35 !important;
}

.hero h1,
.hero-content h1{
    color:#ffffff !important;
    text-shadow:
      0 2px 4px rgba(0,0,0,.45),
      0 0 12px rgba(255,255,255,.35) !important;
}

.hero p,
.hero-content p{
    color:#ffffff !important;
    font-weight:600 !important;
    text-shadow:0 2px 4px rgba(0,0,0,.45) !important;
}

.hero{
    filter:brightness(1.15) contrast(1.05) !important;
}


/* =========================================================
   V39 HERO LIKE USER REFERENCE IMAGE
   Goal: mobile hero like supplied reference:
   - white slanted header
   - small logo left, hamburger right
   - bright visible hero image
   - large but controlled left headline
   - gold underline and button
   - black trust bar with four columns
   ========================================================= */

/* Desktop remains clean and bright */
@media (min-width:981px){
  .hero,
  .mbm-hero-v29{
    min-height:760px !important;
    height:760px !important;
    background-size:cover !important;
    background-position:center center !important;
    filter:none !important;
  }

  .hero-overlay{
    opacity:1 !important;
    background:
      linear-gradient(90deg,
        rgba(0,0,0,.72) 0%,
        rgba(0,0,0,.60) 30%,
        rgba(0,0,0,.28) 52%,
        rgba(0,0,0,.04) 78%,
        rgba(0,0,0,0) 100%) !important;
  }

  .hero-content,
  section.hero .hero-content{
    left:70px !important;
    top:205px !important;
    width:560px !important;
    max-width:560px !important;
  }

  .hero h1,
  .hero-content h1{
    font-size:76px !important;
    line-height:.95 !important;
    max-width:560px !important;
    color:#fff !important;
    text-shadow:0 2px 5px rgba(0,0,0,.42) !important;
  }

  .hero .lead{
    font-size:24px !important;
    line-height:1.45 !important;
    max-width:480px !important;
    color:#fff !important;
    text-shadow:0 2px 4px rgba(0,0,0,.45) !important;
    font-weight:500 !important;
  }
}

/* Mobile reference-match */
@media (max-width:980px){

  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:128px !important;
    min-height:128px !important;
    background:#fff !important;
    margin:0 0 -34px 0 !important;
    padding:0 !important;
    clip-path:polygon(0 0,100% 0,100% 77%,0 100%) !important;
    z-index:9999 !important;
    overflow:visible !important;
  }

  .header-inner{
    width:100% !important;
    max-width:none !important;
    height:128px !important;
    margin:0 !important;
    padding:12px 26px 0 26px !important;
    display:grid !important;
    grid-template-columns:128px 1fr 48px !important;
    align-items:start !important;
    gap:12px !important;
  }

  .site-logo{
    width:128px !important;
  }

  .site-logo img{
    width:122px !important;
    max-width:122px !important;
    max-height:105px !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .primary-nav,
  .menu,
  .header-quote{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .hamb{
    display:block !important;
    grid-column:3 !important;
    justify-self:end !important;
    align-self:start !important;
    margin-top:30px !important;
    width:42px !important;
    height:42px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#000 !important;
    font-size:38px !important;
    line-height:1 !important;
    z-index:20 !important;
  }

  .hero,
  .mbm-hero-v29{
    position:relative !important;
    display:block !important;
    height:820px !important;
    min-height:820px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#fff !important;
    background-color:#000 !important;
    background-repeat:no-repeat !important;
    background-size:cover !important;
    background-position:center top !important;
    filter:none !important;
  }

  .hero-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    opacity:1 !important;
    background:
      linear-gradient(90deg,
        rgba(0,0,0,.76) 0%,
        rgba(0,0,0,.58) 34%,
        rgba(0,0,0,.22) 62%,
        rgba(0,0,0,.02) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    position:absolute !important;
    z-index:5 !important;
    left:26px !important;
    top:178px !important;
    width:calc(100vw - 52px) !important;
    max-width:340px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    text-align:left !important;
  }

  .hero h1,
  .hero-content h1{
    width:100% !important;
    max-width:320px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:52px !important;
    line-height:.94 !important;
    letter-spacing:.035em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    text-align:left !important;
    white-space:normal !important;
    text-shadow:0 2px 5px rgba(0,0,0,.42) !important;
  }

  .hero .gold-rule{
    display:block !important;
    width:132px !important;
    height:5px !important;
    margin:26px 0 24px !important;
    background:#d99a00 !important;
  }

  .hero .lead{
    width:100% !important;
    max-width:310px !important;
    margin:0 0 30px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:19px !important;
    line-height:1.42 !important;
    font-weight:600 !important;
    text-align:left !important;
    text-shadow:0 2px 5px rgba(0,0,0,.48) !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:300px !important;
    min-width:300px !important;
    max-width:300px !important;
    height:70px !important;
    padding:0 20px !important;
    font-size:21px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
    box-shadow:none !important;
  }

  .trust-strip{
    margin-top:0 !important;
    background:#000 !important;
  }

  .trust-grid{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    overflow:hidden !important;
  }

  .trust-item{
    min-height:126px !important;
    padding:14px 4px !important;
    gap:5px !important;
    border-left:1px solid rgba(217,154,0,.76) !important;
    border-top:0 !important;
  }

  .trust-item:first-child{
    border-left:0 !important;
  }

  .trust-icon{
    font-size:29px !important;
    color:#d99a00 !important;
  }

  .trust-item strong{
    color:#fff !important;
    font-size:13px !important;
    line-height:1.1 !important;
    letter-spacing:.01em !important;
  }

  .trust-item span{
    color:#fff !important;
    font-size:11px !important;
    line-height:1.18 !important;
  }
}

/* Smaller phones */
@media (max-width:420px){
  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:120px !important;
    min-height:120px !important;
    margin-bottom:-30px !important;
  }

  .header-inner{
    height:120px !important;
    grid-template-columns:120px 1fr 44px !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }

  .site-logo img{
    width:112px !important;
    max-width:112px !important;
  }

  .hamb{
    margin-top:28px !important;
    font-size:36px !important;
  }

  .hero,
  .mbm-hero-v29{
    height:790px !important;
    min-height:790px !important;
    background-size:cover !important;
    background-position:center top !important;
  }

  .hero-content,
  section.hero .hero-content{
    left:22px !important;
    top:166px !important;
    max-width:315px !important;
    width:calc(100vw - 44px) !important;
  }

  .hero h1,
  .hero-content h1{
    max-width:300px !important;
    font-size:48px !important;
    line-height:.94 !important;
  }

  .hero .lead{
    max-width:290px !important;
    font-size:18px !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:285px !important;
    min-width:285px !important;
    max-width:285px !important;
    height:66px !important;
    font-size:20px !important;
  }

  .trust-item{
    min-height:112px !important;
  }

  .trust-icon{
    font-size:25px !important;
  }

  .trust-item strong{
    font-size:11px !important;
  }

  .trust-item span{
    font-size:9px !important;
  }
}


/* =========================================================
   V40 MOBILE HERO REFERENCE MATCH
   Matches the provided phone reference more closely:
   - slanted white header
   - original gate image visible, not stretched
   - bright image with light overlay
   - large but contained left headline
   - gold CTA
   - 4-column trust bar
   ========================================================= */

@media (min-width:981px){
  .hero,
  .mbm-hero-v29{
    background-image:url('assets/images/hero-original-upload.png') !important;
    background-size:cover !important;
    background-position:center center !important;
    height:760px !important;
    min-height:760px !important;
    filter:none !important;
  }

  .hero-overlay{
    opacity:1 !important;
    background:linear-gradient(90deg,
      rgba(0,0,0,.58) 0%,
      rgba(0,0,0,.42) 34%,
      rgba(0,0,0,.18) 58%,
      rgba(0,0,0,0) 100%) !important;
  }
}

@media (max-width:980px){

  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:150px !important;
    min-height:150px !important;
    background:#fff !important;
    margin:0 0 -36px 0 !important;
    padding:0 !important;
    clip-path:polygon(0 0,100% 0,100% 78%,0 100%) !important;
    z-index:9999 !important;
    overflow:visible !important;
  }

  .header-inner{
    width:100% !important;
    max-width:none !important;
    height:150px !important;
    margin:0 !important;
    padding:14px 30px 0 28px !important;
    display:grid !important;
    grid-template-columns:140px 1fr 48px !important;
    align-items:start !important;
    gap:12px !important;
  }

  .site-logo,
  .site-logo img{
    display:block !important;
  }

  .site-logo img{
    width:138px !important;
    max-width:138px !important;
    max-height:122px !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .primary-nav,
  .menu,
  .header-quote{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  .hamb{
    display:block !important;
    grid-column:3 !important;
    justify-self:end !important;
    align-self:start !important;
    margin-top:34px !important;
    width:44px !important;
    height:44px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#000 !important;
    font-size:38px !important;
    line-height:1 !important;
    z-index:20 !important;
  }

  .hero,
  .mbm-hero-v29{
    position:relative !important;
    display:block !important;
    height:820px !important;
    min-height:820px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    color:#fff !important;
    background-image:url('assets/images/hero-original-upload.png') !important;
    background-color:#000 !important;
    background-repeat:no-repeat !important;
    background-size:cover !important;
    background-position:center top !important;
    filter:none !important;
  }

  .hero-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    opacity:1 !important;
    background:linear-gradient(90deg,
      rgba(0,0,0,.48) 0%,
      rgba(0,0,0,.34) 34%,
      rgba(0,0,0,.12) 65%,
      rgba(0,0,0,0) 100%) !important;
  }

  .hero-content,
  .hero-content.wrap,
  section.hero .hero-content,
  section.hero .wrap.hero-content{
    position:absolute !important;
    z-index:5 !important;
    left:28px !important;
    top:170px !important;
    width:calc(100vw - 56px) !important;
    max-width:340px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    text-align:left !important;
  }

  .hero h1,
  .hero-content h1{
    width:100% !important;
    max-width:330px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:52px !important;
    line-height:.94 !important;
    letter-spacing:.035em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    text-align:left !important;
    white-space:normal !important;
    text-shadow:0 2px 4px rgba(0,0,0,.30) !important;
  }

  .hero .gold-rule{
    display:block !important;
    width:132px !important;
    height:5px !important;
    margin:24px 0 24px !important;
    background:#d99a00 !important;
  }

  .hero .lead{
    width:100% !important;
    max-width:310px !important;
    margin:0 0 28px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:19px !important;
    line-height:1.42 !important;
    font-weight:600 !important;
    text-align:left !important;
    text-shadow:0 2px 4px rgba(0,0,0,.32) !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:300px !important;
    min-width:300px !important;
    max-width:300px !important;
    height:70px !important;
    padding:0 20px !important;
    font-size:21px !important;
    line-height:1.1 !important;
    letter-spacing:.02em !important;
    box-shadow:none !important;
  }

  .trust-strip{
    margin-top:0 !important;
    background:#000 !important;
  }

  .trust-grid{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    overflow:hidden !important;
  }

  .trust-item{
    min-height:126px !important;
    padding:14px 4px !important;
    gap:5px !important;
    border-left:1px solid rgba(217,154,0,.76) !important;
    border-top:0 !important;
  }

  .trust-item:first-child{
    border-left:0 !important;
  }

  .trust-icon{
    font-size:29px !important;
    color:#d99a00 !important;
  }

  .trust-item strong{
    color:#fff !important;
    font-size:13px !important;
    line-height:1.1 !important;
  }

  .trust-item span{
    color:#fff !important;
    font-size:11px !important;
    line-height:1.18 !important;
  }
}

@media (max-width:420px){
  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:132px !important;
    min-height:132px !important;
    margin-bottom:-32px !important;
  }

  .header-inner{
    height:132px !important;
    grid-template-columns:124px 1fr 44px !important;
    padding:12px 22px 0 22px !important;
  }

  .site-logo img{
    width:120px !important;
    max-width:120px !important;
  }

  .hamb{
    margin-top:31px !important;
    font-size:36px !important;
  }

  .hero,
  .mbm-hero-v29{
    height:760px !important;
    min-height:760px !important;
    background-size:cover !important;
    background-position:center top !important;
  }

  .hero-content,
  section.hero .hero-content{
    left:22px !important;
    top:154px !important;
    max-width:315px !important;
    width:calc(100vw - 44px) !important;
  }

  .hero h1,
  .hero-content h1{
    max-width:300px !important;
    font-size:48px !important;
    line-height:.94 !important;
  }

  .hero .lead{
    max-width:290px !important;
    font-size:18px !important;
  }

  .hero-quote,
  .hero .quote-btn{
    width:285px !important;
    min-width:285px !important;
    max-width:285px !important;
    height:66px !important;
    font-size:20px !important;
  }

  .trust-item{
    min-height:112px !important;
  }

  .trust-icon{
    font-size:25px !important;
  }

  .trust-item strong{
    font-size:11px !important;
  }

  .trust-item span{
    font-size:9px !important;
  }
}


/* V41 - shorter mobile hero */
@media (max-width:980px){
  .hero,
  .mbm-hero-v29{
    height:680px !important;
    min-height:680px !important;
  }

  .hero-content{
    top:140px !important;
  }
}

@media (max-width:420px){
  .hero,
  .mbm-hero-v29{
    height:620px !important;
    min-height:620px !important;
  }

  .hero-content{
    top:135px !important;
  }

  .hero h1,
  .hero-content h1{
    font-size:44px !important;
  }
}


/* =========================================================
   V51 FORCE MOBILE HERO 50% CONTRACTED
   This is intentionally aggressive and placed last.
   ========================================================= */
@media screen and (max-width: 768px){

  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;
    margin-bottom:-18px !important;
    clip-path:polygon(0 0,100% 0,100% 82%,0 100%) !important;
  }

  html body .header-inner{
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;
    padding:8px 18px 0 20px !important;
    grid-template-columns:96px 1fr 36px !important;
  }

  html body .site-logo img{
    width:90px !important;
    max-width:90px !important;
    max-height:72px !important;
  }

  html body .hamb{
    margin-top:18px !important;
    width:34px !important;
    height:34px !important;
    font-size:30px !important;
    line-height:1 !important;
  }

  html body .primary-nav,
  html body .menu,
  html body .header-quote{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  html body section.hero,
  html body .hero,
  html body .mbm-hero-v29{
    height:320px !important;
    min-height:320px !important;
    max-height:320px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    background-size:cover !important;
    background-position:78% center !important;
    background-repeat:no-repeat !important;
  }

  html body .hero-overlay{
    background:linear-gradient(90deg,
      rgba(0,0,0,.58) 0%,
      rgba(0,0,0,.42) 42%,
      rgba(0,0,0,.12) 72%,
      rgba(0,0,0,0) 100%) !important;
    opacity:1 !important;
  }

  html body .hero-content,
  html body .hero-content.wrap,
  html body section.hero .hero-content,
  html body section.hero .wrap.hero-content{
    position:absolute !important;
    left:18px !important;
    top:72px !important;
    width:190px !important;
    max-width:190px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  html body .hero h1,
  html body .hero-content h1{
    width:190px !important;
    max-width:190px !important;
    font-size:27px !important;
    line-height:.92 !important;
    letter-spacing:.035em !important;
    margin:0 !important;
    padding:0 !important;
    text-shadow:0 2px 3px rgba(0,0,0,.45) !important;
  }

  html body .hero .gold-rule{
    width:78px !important;
    height:3px !important;
    margin:12px 0 10px !important;
  }

  html body .hero .lead,
  html body .hero-content .lead{
    width:185px !important;
    max-width:185px !important;
    font-size:11.5px !important;
    line-height:1.22 !important;
    margin:0 0 10px !important;
    font-weight:600 !important;
  }

  html body .hero-quote,
  html body .hero .quote-btn{
    width:155px !important;
    min-width:155px !important;
    max-width:155px !important;
    height:36px !important;
    padding:0 10px !important;
    font-size:11.5px !important;
    line-height:1.05 !important;
  }
}

@media screen and (max-width: 420px){
  html body section.hero,
  html body .hero,
  html body .mbm-hero-v29{
    height:300px !important;
    min-height:300px !important;
    max-height:300px !important;
    background-position:78% center !important;
  }

  html body .hero-content,
  html body section.hero .hero-content{
    top:66px !important;
    left:17px !important;
  }

  html body .hero h1,
  html body .hero-content h1{
    font-size:26px !important;
  }
}


/* V52 trust strip flush under hero */
.hero,.mbm-hero-v29{
 margin-bottom:0!important;
 padding-bottom:0!important;
}
.trust-strip{
 margin-top:0!important;
 padding-top:0!important;
 position:relative!important;
 top:-2px!important;
}
@media(max-width:768px){
 .trust-strip{
   margin-top:0!important;
   top:-2px!important;
 }
}


/* V53 - Remove Our Services card section */
.service-strip,
section.service-strip,
#services.service-strip{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
}


/* V54 - Remove Featured Projects section */
.projects-featured,
section.projects-featured,
.project-grid,
.title-row{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
}


/* V56 Accordion project folders + folder-only lightbox slider */
.gallery-section{
  background:#fff !important;
  padding:56px 0 !important;
}
.folder-accordion{
  margin-top:24px;
  border-top:1px solid #d8d8d8;
}
.folder-item{
  border-bottom:1px solid #d8d8d8;
}
.folder-toggle{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  background:#fff;
  border:0;
  cursor:pointer;
  text-align:left;
  color:#050505;
  text-transform:uppercase;
  font-weight:1000;
  font-size:20px;
  letter-spacing:.03em;
}
.folder-toggle:hover{
  background:#f5f5f5;
}
.folder-chevron{
  font-size:28px;
  line-height:1;
  transition:transform .2s ease;
}
.folder-item.open .folder-chevron{
  transform:rotate(180deg);
}
.folder-panel{
  padding:18px 0 26px;
}
.folder-gallery{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.folder-thumb{
  border:0;
  padding:0;
  margin:0;
  background:#111;
  cursor:pointer;
  overflow:hidden;
}
.folder-thumb img{
  width:100%;
  height:210px;
  object-fit:cover;
  transition:transform .25s ease;
}
.folder-thumb:hover img{
  transform:scale(1.04);
}

body.mbm-lightbox-open{
  overflow:hidden;
}
.mbm-lightbox{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.94);
  padding:34px 86px;
}
.mbm-lightbox.open{
  display:flex;
}
.mbm-lightbox figure{
  margin:0;
  max-width:100%;
  max-height:100%;
  text-align:center;
}
.mbm-lightbox img{
  max-width:calc(100vw - 190px);
  max-height:calc(100vh - 115px);
  object-fit:contain;
  margin:auto;
}
.mbm-lightbox figcaption{
  color:#fff;
  margin-top:12px;
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.mbm-lb-close,
.mbm-lb-prev,
.mbm-lb-next{
  position:absolute;
  border:0;
  background:rgba(0,0,0,.35);
  color:#fff;
  cursor:pointer;
  z-index:2;
}
.mbm-lb-close{
  top:16px;
  right:24px;
  font-size:48px;
  width:52px;
  height:52px;
  line-height:48px;
}
.mbm-lb-prev,
.mbm-lb-next{
  top:50%;
  transform:translateY(-50%);
  width:62px;
  height:90px;
  font-size:76px;
  line-height:80px;
}
.mbm-lb-prev{left:18px;}
.mbm-lb-next{right:18px;}
.mbm-lb-close:hover,
.mbm-lb-prev:hover,
.mbm-lb-next:hover{
  background:var(--gold);
  color:#fff;
}

/* Hide old tab/gallery system if any remains */
.tabs,
.gallery-panel:not(.folder-panel){
  display:none !important;
}

@media(max-width:900px){
  .folder-gallery{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:560px){
  .gallery-section{
    padding:38px 0 !important;
  }
  .folder-toggle{
    padding:16px 14px;
    font-size:16px;
  }
  .folder-panel{
    padding:12px 0 20px;
  }
  .folder-gallery{
    grid-template-columns:repeat(2,1fr);
    gap:8px;
  }
  .folder-thumb img{
    height:135px;
  }
  .mbm-lightbox{
    padding:28px 48px;
  }
  .mbm-lightbox img{
    max-width:calc(100vw - 96px);
    max-height:calc(100vh - 105px);
  }
  .mbm-lb-close{
    top:8px;
    right:10px;
    font-size:38px;
    width:42px;
    height:42px;
  }
  .mbm-lb-prev,
  .mbm-lb-next{
    width:42px;
    height:70px;
    font-size:54px;
    line-height:64px;
  }
  .mbm-lb-prev{left:4px;}
  .mbm-lb-next{right:4px;}
}


/* V57 - Make project folders look like compact button tabs */
.folder-accordion{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:28px 0 0 !important;
  border-top:0 !important;
}

.folder-item{
  border:0 !important;
  display:contents !important;
}

.folder-toggle{
  width:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:15px 22px !important;
  min-height:48px !important;
  background:#111 !important;
  color:#fff !important;
  border:0 !important;
  text-transform:uppercase !important;
  font-size:16px !important;
  font-weight:1000 !important;
  letter-spacing:.02em !important;
  line-height:1 !important;
}

.folder-item.open .folder-toggle,
.folder-toggle:hover{
  background:var(--gold) !important;
  color:#fff !important;
}

.folder-chevron{
  display:none !important;
}

.folder-panel{
  order:99 !important;
  flex:0 0 100% !important;
  width:100% !important;
  padding:22px 0 0 !important;
}

@media(max-width:560px){
  .folder-accordion{
    gap:8px !important;
  }

  .folder-toggle{
    padding:13px 14px !important;
    min-height:42px !important;
    font-size:13px !important;
  }
}


/* V58 - Mobile hamburger menu fix */
@media (max-width:1024px){

  .site-header,
  header.site-header{
    overflow:visible !important;
  }

  .hamb{
    display:block !important;
    position:relative !important;
    z-index:100002 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
  }

  .primary-nav{
    display:block !important;
    position:static !important;
    padding:0 !important;
  }

  .primary-nav .menu{
    display:none !important;
  }

  .primary-nav .menu.open,
  body.mbm-menu-open .primary-nav .menu{
    display:flex !important;
    position:absolute !important;
    top:92px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    padding:18px 24px !important;
    margin:0 !important;
    background:#fff !important;
    color:#000 !important;
    z-index:100001 !important;
    box-shadow:0 18px 34px rgba(0,0,0,.18) !important;
    border-top:1px solid #eee !important;
  }

  .primary-nav .menu.open a,
  body.mbm-menu-open .primary-nav .menu a{
    display:block !important;
    width:100% !important;
    padding:14px 0 !important;
    color:#000 !important;
    border-bottom:1px solid #eee !important;
    font-size:18px !important;
    line-height:1.1 !important;
  }
}


/* V59 - force hamburger menu active/visible over old mobile overrides */
@media (max-width:1024px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    overflow:visible !important;
    z-index:999999 !important;
  }

  html body .hamb{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    cursor:pointer !important;
    position:relative !important;
    z-index:1000002 !important;
    background:transparent !important;
    border:0 !important;
  }

  html body .primary-nav{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    position:static !important;
    padding:0 !important;
    margin:0 !important;
  }

  html body .primary-nav .menu{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  html body.mbm-menu-open .primary-nav .menu,
  html body .primary-nav .menu.open{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    position:absolute !important;
    top:92px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:none !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    padding:18px 24px !important;
    margin:0 !important;
    background:#fff !important;
    color:#000 !important;
    z-index:1000001 !important;
    box-shadow:0 18px 34px rgba(0,0,0,.22) !important;
    border-top:1px solid #eee !important;
    text-align:left !important;
  }

  html body.mbm-menu-open .primary-nav .menu li,
  html body.mbm-menu-open .primary-nav .menu a,
  html body .primary-nav .menu.open li,
  html body .primary-nav .menu.open a{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    color:#000 !important;
    pointer-events:auto !important;
  }

  html body.mbm-menu-open .primary-nav .menu a,
  html body .primary-nav .menu.open a{
    padding:14px 0 !important;
    border-bottom:1px solid #eee !important;
    font-size:18px !important;
    line-height:1.1 !important;
  }
}



/* V60 - CSS-only mobile menu. No JavaScript required. */
.mbm-menu-toggle{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
}

.mbm-mobile-menu-panel{
  display:none;
}

@media (max-width:1024px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    overflow:visible !important;
    z-index:999999 !important;
  }

  html body .hamb{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    cursor:pointer !important;
    position:relative !important;
    z-index:1000002 !important;
    color:#000 !important;
    background:transparent !important;
    border:0 !important;
    user-select:none !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  html body .primary-nav{
    display:none !important;
  }

  html body .mbm-mobile-menu-panel{
    display:none !important;
    position:absolute !important;
    top:92px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    background:#fff !important;
    color:#000 !important;
    z-index:1000001 !important;
    box-shadow:0 18px 34px rgba(0,0,0,.22) !important;
    border-top:1px solid #eee !important;
    padding:14px 24px !important;
  }

  html body .mbm-menu-toggle:checked ~ .mbm-mobile-menu-panel{
    display:block !important;
  }

  html body .mobile-menu{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  html body .mobile-menu li{
    width:100% !important;
    display:block !important;
  }

  html body .mobile-menu a{
    display:block !important;
    width:100% !important;
    padding:15px 0 !important;
    color:#000 !important;
    border-bottom:1px solid #eee !important;
    font-size:18px !important;
    line-height:1.1 !important;
    text-transform:uppercase !important;
    font-weight:900 !important;
  }
}


/* V61 guaranteed mobile hamburger */
@media (max-width:1024px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    position:relative !important;
    overflow:visible !important;
    z-index:999999 !important;
  }

  html body .mbm-menu-toggle{
    display:block !important;
    position:absolute !important;
    top:20px !important;
    right:18px !important;
    width:54px !important;
    height:54px !important;
    z-index:1000005 !important;
    opacity:0 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    -webkit-appearance:none !important;
    appearance:none !important;
    margin:0 !important;
  }

  html body .hamb{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    position:absolute !important;
    top:20px !important;
    right:18px !important;
    width:54px !important;
    height:54px !important;
    z-index:1000004 !important;
    cursor:pointer !important;
    pointer-events:none !important;
    background:transparent !important;
    border:0 !important;
  }

  html body .hamb span{
    display:block !important;
    width:32px !important;
    height:4px !important;
    background:#000 !important;
    border-radius:0 !important;
  }

  html body .primary-nav{
    display:none !important;
  }

  html body .mbm-mobile-menu-panel{
    display:none !important;
    position:absolute !important;
    top:92px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    background:#fff !important;
    color:#000 !important;
    z-index:1000003 !important;
    box-shadow:0 18px 34px rgba(0,0,0,.24) !important;
    border-top:1px solid #eee !important;
    padding:14px 24px !important;
  }

  html body .mbm-menu-toggle:checked ~ .mbm-mobile-menu-panel{
    display:block !important;
  }

  html body .mobile-menu,
  html body .mobile-menu ul{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  html body .mobile-menu li{
    display:block !important;
    width:100% !important;
  }

  html body .mobile-menu a{
    display:block !important;
    width:100% !important;
    padding:16px 0 !important;
    border-bottom:1px solid #eee !important;
    color:#000 !important;
    font-size:18px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
  }
}


/* V62 - fixed-position hamburger and independent dropdown */
@media (max-width:1024px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    position:relative !important;
    overflow:visible !important;
    z-index:99999 !important;
  }

  html body .header-inner{
    position:relative !important;
  }

  html body .hamb{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    position:absolute !important;
    top:16px !important;
    right:28px !important;
    width:44px !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    z-index:100001 !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  html body .hamb span{
    display:block !important;
    width:31px !important;
    height:4px !important;
    background:#000 !important;
    border-radius:0 !important;
    pointer-events:none !important;
  }

  html body .primary-nav{
    display:none !important;
  }

  html body .mbm-mobile-menu-panel{
    display:none !important;
    position:fixed !important;
    top:86px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    background:#fff !important;
    color:#000 !important;
    z-index:1000000 !important;
    padding:16px 24px !important;
    box-shadow:0 18px 34px rgba(0,0,0,.24) !important;
    border-top:1px solid #eee !important;
  }

  html body.mbm-menu-open .mbm-mobile-menu-panel{
    display:block !important;
  }

  html body .mobile-menu,
  html body .mobile-menu ul{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }

  html body .mobile-menu li{
    display:block !important;
    width:100% !important;
  }

  html body .mobile-menu a{
    display:block !important;
    width:100% !important;
    padding:16px 0 !important;
    border-bottom:1px solid #eee !important;
    color:#000 !important;
    font-size:18px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
  }
}


/* V63 - final mobile hamburger menu rebuild
   Investigation fix:
   - Old versions hid .primary-nav/.menu with !important.
   - Header clipping/clip-path could hide dropdowns inside the header.
   - This version uses a separate fixed panel outside the header.
*/
@media (max-width:1024px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    position:relative !important;
    overflow:visible !important;
    z-index:99990 !important;
  }

  html body .header-inner{
    position:relative !important;
  }

  html body .primary-nav{
    display:none !important;
  }

  html body .hamb{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    position:absolute !important;
    top:16px !important;
    right:28px !important;
    width:44px !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    z-index:100000 !important;
    -webkit-tap-highlight-color:transparent !important;
  }

  html body .hamb span{
    display:block !important;
    width:31px !important;
    height:4px !important;
    background:#000 !important;
    border-radius:0 !important;
    pointer-events:none !important;
  }

  html body.mbm-menu-open .hamb span:nth-child(1){
    transform:translateY(9px) rotate(45deg) !important;
  }
  html body.mbm-menu-open .hamb span:nth-child(2){
    opacity:0 !important;
  }
  html body.mbm-menu-open .hamb span:nth-child(3){
    transform:translateY(-9px) rotate(-45deg) !important;
  }

  html body .mbm-mobile-menu-panel{
    display:flex !important;
    flex-direction:column !important;
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:min(82vw,340px) !important;
    transform:translateX(105%) !important;
    transition:transform .22s ease !important;
    background:#fff !important;
    color:#000 !important;
    z-index:100002 !important;
    padding:82px 28px 28px !important;
    box-shadow:-18px 0 40px rgba(0,0,0,.28) !important;
    border-left:1px solid #eee !important;
  }

  html body.mbm-menu-open .mbm-mobile-menu-panel{
    transform:translateX(0) !important;
  }

  html body .mbm-mobile-menu-panel a{
    display:block !important;
    width:100% !important;
    padding:18px 0 !important;
    border-bottom:1px solid #eee !important;
    color:#000 !important;
    font-size:22px !important;
    line-height:1.1 !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    letter-spacing:.02em !important;
  }

  html body .mbm-mobile-menu-close{
    position:absolute !important;
    top:18px !important;
    right:22px !important;
    width:44px !important;
    height:44px !important;
    border:0 !important;
    background:transparent !important;
    color:#000 !important;
    font-size:38px !important;
    line-height:1 !important;
    cursor:pointer !important;
  }

  html body .mbm-menu-backdrop{
    display:none !important;
    position:fixed !important;
    inset:0 !important;
    background:rgba(0,0,0,.38) !important;
    z-index:100001 !important;
  }

  html body.mbm-menu-open .mbm-menu-backdrop{
    display:block !important;
  }
}

@media (min-width:1025px){
  .mbm-mobile-menu-panel,
  .mbm-menu-backdrop{
    display:none !important;
  }
}


/* V64 - restore normal mobile scroll + right-side hamburger drawer */
html,
body{
  overflow-x:hidden !important;
}

@media (max-width:1024px){

  html body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    overflow:visible !important;
    z-index:99990 !important;
  }

  html body .hamb{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    position:absolute !important;
    top:16px !important;
    right:28px !important;
    width:44px !important;
    height:44px !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    z-index:100004 !important;
  }

  html body .hamb span{
    display:block !important;
    width:31px !important;
    height:4px !important;
    background:#000 !important;
  }

  html body .primary-nav{
    display:none !important;
  }

  html body .mbm-mobile-menu-panel{
    display:flex !important;
    flex-direction:column !important;
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:auto !important;
    width:min(82vw,320px) !important;
    max-width:320px !important;
    height:100vh !important;
    background:#fff !important;
    color:#000 !important;
    z-index:100003 !important;
    padding:82px 28px 28px !important;
    box-shadow:-18px 0 40px rgba(0,0,0,.28) !important;
    border-left:1px solid #eee !important;
    transform:translate3d(110%,0,0) !important;
    transition:transform .25s ease !important;
    visibility:hidden !important;
    pointer-events:none !important;
    overflow-y:auto !important;
  }

  html body.mbm-menu-open .mbm-mobile-menu-panel{
    transform:translate3d(0,0,0) !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  html body .mbm-menu-backdrop{
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    background:rgba(0,0,0,.36) !important;
    z-index:100002 !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:opacity .2s ease !important;
  }

  html body.mbm-menu-open .mbm-menu-backdrop{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  html body .mbm-mobile-menu-panel a{
    display:block !important;
    width:100% !important;
    padding:18px 0 !important;
    border-bottom:1px solid #eee !important;
    color:#000 !important;
    font-size:22px !important;
    line-height:1.1 !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    letter-spacing:.02em !important;
  }

  html body .mbm-mobile-menu-close{
    position:absolute !important;
    top:18px !important;
    right:22px !important;
    width:44px !important;
    height:44px !important;
    border:0 !important;
    background:transparent !important;
    color:#000 !important;
    font-size:38px !important;
    line-height:1 !important;
    cursor:pointer !important;
  }

  /* keep the page/trust strip from creating a side-scroll area */
  html body .trust-strip,
  html body .trust-grid{
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  html body .trust-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }

  html body .trust-item{
    min-width:0 !important;
    overflow:hidden !important;
  }
}


/* V65 - hamburger drawer click fix */
@media (max-width:1024px){
  html body .hamb,
  html body .hamb *{
    pointer-events:auto !important;
  }
  html body .hamb span{
    pointer-events:none !important;
  }
  html body.mbm-menu-open{
    overflow:hidden !important;
  }
}

/* V67 - definitive mobile hamburger activation fix
   Root cause: older menu CSS/JS blocks in this theme competed with the current drawer. This final block makes the button tap target fixed, above all page layers, and uses body.mbm-menu-open as the only open state. */
@media (max-width:1024px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    overflow:visible !important;
    z-index:99990 !important;
  }

  html body .primary-nav,
  html body .primary-nav .menu,
  html body .menu.open{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  html body .hamb{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    position:fixed !important;
    top:18px !important;
    right:22px !important;
    width:52px !important;
    height:52px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:rgba(255,255,255,.01) !important;
    color:#000 !important;
    cursor:pointer !important;
    pointer-events:auto !important;
    touch-action:manipulation !important;
    -webkit-tap-highlight-color:transparent !important;
    z-index:2147483647 !important;
  }

  html body .hamb span{
    display:block !important;
    width:31px !important;
    height:4px !important;
    background:#000 !important;
    border-radius:0 !important;
    pointer-events:none !important;
  }

  html body.mbm-menu-open .hamb span:nth-child(1){
    transform:translateY(9px) rotate(45deg) !important;
  }
  html body.mbm-menu-open .hamb span:nth-child(2){
    opacity:0 !important;
  }
  html body.mbm-menu-open .hamb span:nth-child(3){
    transform:translateY(-9px) rotate(-45deg) !important;
  }

  html body .mbm-mobile-menu-panel{
    display:flex !important;
    flex-direction:column !important;
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:auto !important;
    width:min(82vw,330px) !important;
    max-width:330px !important;
    height:100dvh !important;
    min-height:100vh !important;
    padding:88px 28px 28px !important;
    background:#fff !important;
    color:#000 !important;
    box-shadow:-18px 0 40px rgba(0,0,0,.28) !important;
    border-left:1px solid #eee !important;
    transform:translate3d(112%,0,0) !important;
    transition:transform .25s ease !important;
    visibility:hidden !important;
    opacity:1 !important;
    pointer-events:none !important;
    overflow-y:auto !important;
    z-index:2147483645 !important;
  }

  html body.mbm-menu-open .mbm-mobile-menu-panel{
    transform:translate3d(0,0,0) !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  html body .mbm-menu-backdrop{
    display:block !important;
    position:fixed !important;
    inset:0 !important;
    background:rgba(0,0,0,.36) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:opacity .2s ease !important;
    z-index:2147483644 !important;
  }

  html body.mbm-menu-open .mbm-menu-backdrop{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  html body.mbm-menu-open{
    overflow:hidden !important;
  }
}

/* V69 - real smartphone tap reliability fix */
@media (max-width:1024px){
  html body .site-header{
    clip-path:none !important;
    -webkit-clip-path:none !important;
    transform:none !important;
    -webkit-transform:none !important;
    contain:none !important;
  }

  html body .hamb{
    position:fixed !important;
    top:calc(14px + env(safe-area-inset-top, 0px)) !important;
    right:calc(16px + env(safe-area-inset-right, 0px)) !important;
    width:64px !important;
    height:64px !important;
    min-width:64px !important;
    min-height:64px !important;
    display:flex !important;
    -webkit-appearance:none !important;
    appearance:none !important;
    background:rgba(255,255,255,.001) !important;
    border:0 !important;
    border-radius:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    touch-action:manipulation !important;
    -ms-touch-action:manipulation !important;
    -webkit-user-select:none !important;
    user-select:none !important;
    transform:translateZ(0) !important;
    -webkit-transform:translateZ(0) !important;
    z-index:2147483647 !important;
  }

  html body .hamb::before{
    content:"" !important;
    position:absolute !important;
    inset:-10px !important;
    display:block !important;
    pointer-events:auto !important;
  }

  html body .hamb span{
    position:relative !important;
    z-index:1 !important;
    pointer-events:none !important;
  }

  html body .mbm-mobile-menu-panel{
    top:0 !important;
    height:100vh !important;
    height:100dvh !important;
    padding-top:calc(92px + env(safe-area-inset-top, 0px)) !important;
    transform:translateX(115%) translateZ(0) !important;
    -webkit-transform:translateX(115%) translateZ(0) !important;
    will-change:transform !important;
  }

  html body.mbm-menu-open .mbm-mobile-menu-panel{
    transform:translateX(0) translateZ(0) !important;
    -webkit-transform:translateX(0) translateZ(0) !important;
  }
}



/* V70 - single-tap real-device hamburger hardening */
@media (max-width:1024px){
  html body .hamb{
    -webkit-touch-callout:none !important;
    touch-action:none !important;
  }
  html body .hamb::before{
    pointer-events:none !important;
  }
}

/* V74 - revised desktop primary navigation labels and spacing */
@media (min-width:1025px){
  html body .primary-nav .menu{
    gap:clamp(18px,2.1vw,34px) !important;
    font-size:18px !important;
  }
  html body .primary-nav .menu li{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
  }
  html body .primary-nav .menu a.active{
    border-bottom-color:var(--gold) !important;
    color:#000 !important;
  }
}


/* V82: Removed black trust-cards strip below hero. */
body .trust-strip{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;}

/* V83 - Project galleries converted to service folder grid */
.service-gallery-section{
  background:#fff !important;
  padding:68px 0 76px !important;
}
.service-gallery-section .section-title{
  font-size:clamp(42px,5vw,72px) !important;
  line-height:.95 !important;
  letter-spacing:.01em !important;
  margin:0 !important;
}
.service-eyebrow{
  margin:0 0 10px !important;
  color:var(--gold2) !important;
  text-transform:uppercase !important;
  font-weight:1000 !important;
  letter-spacing:.16em !important;
  font-size:14px !important;
}
.service-grid-intro{
  margin:18px 0 0 !important;
  max-width:680px !important;
  color:#333 !important;
  font-size:20px !important;
  line-height:1.45 !important;
}
.service-folder-grid.folder-accordion{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:18px !important;
  margin:34px 0 0 !important;
  border:0 !important;
}
.service-folder-card.folder-item{
  display:block !important;
  border:0 !important;
  background:#111 !important;
  min-width:0 !important;
}
.service-card-toggle.folder-toggle{
  width:100% !important;
  min-height:168px !important;
  padding:24px 18px !important;
  background:#111 !important;
  color:#fff !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:10px !important;
  border:2px solid #111 !important;
  cursor:pointer !important;
}
.service-card-toggle.folder-toggle::before{
  content:"" !important;
  width:34px !important;
  height:34px !important;
  border:4px solid var(--gold2) !important;
  transform:rotate(45deg) !important;
  margin-bottom:6px !important;
  display:block !important;
}
.service-card-title{
  display:block !important;
  text-transform:uppercase !important;
  font-weight:1000 !important;
  font-size:clamp(18px,1.55vw,24px) !important;
  line-height:1.05 !important;
  letter-spacing:.02em !important;
}
.service-card-subtitle{
  display:block !important;
  color:#dcdcdc !important;
  font-size:13px !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-weight:900 !important;
}
.service-folder-card.open .service-card-toggle,
.service-card-toggle:hover,
.service-card-toggle:focus-visible{
  background:#000 !important;
  border-color:var(--gold2) !important;
  color:#fff !important;
}
.service-card-toggle .folder-chevron{
  display:block !important;
  color:var(--gold2) !important;
  font-size:24px !important;
  line-height:1 !important;
  margin-top:2px !important;
}
.service-folder-card .folder-panel{
  grid-column:auto !important;
  width:100% !important;
  padding:14px !important;
  background:#f6f6f6 !important;
  border:1px solid #e0e0e0 !important;
  border-top:0 !important;
}
.service-folder-card .folder-gallery{
  grid-template-columns:repeat(2,1fr) !important;
  gap:8px !important;
}
.service-folder-card .folder-thumb img{
  height:120px !important;
}
@media(max-width:1100px){
  .service-folder-grid.folder-accordion{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:700px){
  .service-gallery-section{
    padding:46px 0 54px !important;
  }
  .service-folder-grid.folder-accordion{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }
  .service-card-toggle.folder-toggle{
    min-height:128px !important;
    padding:18px 10px !important;
  }
  .service-card-toggle.folder-toggle::before{
    width:24px !important;
    height:24px !important;
    border-width:3px !important;
  }
  .service-card-title{
    font-size:16px !important;
  }
  .service-card-subtitle{
    font-size:11px !important;
  }
  .service-folder-card .folder-gallery{
    grid-template-columns:1fr !important;
  }
  .service-folder-card .folder-thumb img{
    height:145px !important;
  }
}

/* Miscellaneous service card cover */
.service-folder-link[data-folder="misc"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/custom-fabrication.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Structural service card cover */
.service-folder-link[data-folder="structural"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/structural-steel.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Fence service card cover */
.service-folder-link[data-folder="fence"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/metal-fencing.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* Gates service card cover */
.service-folder-link[data-folder="gates"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/metal-gates.png') !important;
  background-size: cover !important;
  background-position: center !important;
}


/* ADA service card cover */
.service-folder-link[data-folder="ada-handrails"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/ada-handrails.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}


/* MBM v102 hero headline width/wrap fix */
@media (min-width:981px){
  section.hero .hero-content,
  section.hero .hero-content.wrap,
  .hero .hero-content,
  .mbm-hero-v29 .hero-content{
    width:min(1220px, calc(100vw - 140px)) !important;
    max-width:min(1220px, calc(100vw - 140px)) !important;
    left:70px !important;
  }
  section.hero .hero-title,
  section.hero .hero h1,
  section.hero h1,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    width:100% !important;
    max-width:1220px !important;
    font-size:clamp(52px, 4.25vw, 76px) !important;
    line-height:.98 !important;
    letter-spacing:.035em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
  .hero-title-line{
    display:inline-block !important;
    white-space:nowrap !important;
  }
}

@media (max-width:980px){
  section.hero .hero-content,
  section.hero .hero-content.wrap,
  .hero .hero-content,
  .mbm-hero-v29 .hero-content{
    max-width:calc(100vw - 40px) !important;
    width:calc(100vw - 40px) !important;
  }
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    max-width:calc(100vw - 40px) !important;
    width:calc(100vw - 40px) !important;
    font-size:clamp(30px, 8vw, 42px) !important;
    letter-spacing:.025em !important;
    line-height:1.02 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
  .hero-title-line{
    display:inline-block !important;
    white-space:nowrap !important;
  }
}


@media (max-width:768px){
.hero{background-size:cover;background-position:center center;}
.hero-content{padding:40px 24px 48px;max-width:100%;}
.hero h1,.hero-title{
font-size:clamp(44px,10vw,64px)!important;
line-height:0.95!important;
letter-spacing:0!important;
max-width:100%!important;
word-break:normal!important;
overflow-wrap:normal!important;
white-space:normal!important;
}
.hero-title-line{display:block;}
}


/* MBM v106 forced hero content layout */
.hero-title .hero-title-line{
  display:block !important;
  white-space:normal !important;
}
.hero-title .hero-title-amp{
  line-height:.9 !important;
}
@media (min-width:981px){
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    max-width:900px !important;
    width:900px !important;
    font-size:clamp(54px,4.5vw,78px) !important;
    line-height:.98 !important;
  }
  section.hero .lead,
  .hero .lead{
    max-width:760px !important;
  }
}
@media (max-width:980px){
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    max-width:calc(100vw - 40px) !important;
    width:calc(100vw - 40px) !important;
    font-size:clamp(34px,9vw,52px) !important;
    line-height:1.0 !important;
  }
  section.hero .lead,
  .hero .lead{
    max-width:calc(100vw - 40px) !important;
    font-size:clamp(16px,4.2vw,20px) !important;
    line-height:1.45 !important;
  }
}

/* MBM v107 hero headline layout refinement */
.hero-title .hero-title-line{
  display:block !important;
  white-space:nowrap !important;
}
.hero-title .hero-title-second{
  white-space:nowrap !important;
}
@media (min-width:981px){
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    max-width:980px !important;
    width:980px !important;
    font-size:clamp(48px,3.9vw,68px) !important;
    line-height:.98 !important;
    letter-spacing:.04em !important;
  }
  section.hero .lead,
  .hero .lead{
    max-width:660px !important;
    font-size:20px !important;
    line-height:1.45 !important;
  }
}
@media (max-width:980px){
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    max-width:calc(100vw - 40px) !important;
    width:calc(100vw - 40px) !important;
    font-size:clamp(31px,7.3vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:.015em !important;
    white-space:normal !important;
  }
  .hero-title .hero-title-line,
  .hero-title .hero-title-second{
    white-space:normal !important;
  }
  section.hero .lead,
  .hero .lead{
    max-width:calc(100vw - 48px) !important;
    font-size:clamp(16px,4vw,19px) !important;
    line-height:1.35 !important;
  }
}

@media (max-width:768px){ .hero-title,h1.hero-title,.hero h1{font-size:42px!important;line-height:1.0!important;} }


/* MBM v110 mobile hero headline fix: prevent broken words on phone screens */
.hero-title .hero-title-line{
  display:block !important;
}
@media (min-width:981px){
  .hero-title .hero-title-steel,
  .hero-title .hero-title-fabrication{
    display:inline !important;
  }
  .hero-title .hero-title-steel::after{
    content:" ";
  }
}
@media (max-width:980px){
  section.hero .hero-content,
  section.hero .hero-content.wrap,
  .hero .hero-content,
  .mbm-hero-v29 .hero-content{
    width:calc(100vw - 32px) !important;
    max-width:calc(100vw - 32px) !important;
    padding-left:20px !important;
    padding-right:12px !important;
  }
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    width:min(100%, 360px) !important;
    max-width:min(100%, 360px) !important;
    font-size:clamp(36px, 10.4vw, 46px) !important;
    line-height:1.02 !important;
    letter-spacing:.01em !important;
    word-break:keep-all !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
    white-space:normal !important;
  }
  .hero-title .hero-title-line{
    display:block !important;
    white-space:nowrap !important;
  }
}
@media (max-width:430px){
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    width:calc(100vw - 40px) !important;
    max-width:calc(100vw - 40px) !important;
    font-size:clamp(34px, 10.1vw, 40px) !important;
    line-height:1.04 !important;
    letter-spacing:0 !important;
  }
  .hero-title .hero-title-line{
    white-space:nowrap !important;
  }
  section.hero .lead,
  .hero .lead{
    max-width:calc(100vw - 48px) !important;
    font-size:16px !important;
    line-height:1.35 !important;
  }
}
@media (max-width:375px){
  section.hero .hero-title,
  .hero .hero-title,
  .hero h1,
  .hero-content h1{
    font-size:36px !important;
  }
}

/* =========================================================
   V111 MOBILE HERO PROFESSIONAL FIX
   Final override for phone viewport:
   - clean deliberate headline breaks
   - visible Request a Quote button above the next section
   - tighter lead copy spacing
   - balanced image crop and dark readability panel
   ========================================================= */
@media screen and (max-width: 768px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    height:104px !important;
    min-height:104px !important;
    max-height:104px !important;
    margin-bottom:-22px !important;
    clip-path:polygon(0 0,100% 0,100% 80%,0 100%) !important;
  }

  html body .header-inner{
    height:104px !important;
    min-height:104px !important;
    max-height:104px !important;
    padding:10px 24px 0 26px !important;
    grid-template-columns:118px 1fr 44px !important;
    align-items:start !important;
  }

  html body .site-logo img{
    width:112px !important;
    max-width:112px !important;
    max-height:86px !important;
  }

  html body .hamb{
    margin-top:24px !important;
    width:42px !important;
    height:42px !important;
    font-size:36px !important;
  }

  html body section.hero,
  html body .hero,
  html body .mbm-hero-v29{
    height:650px !important;
    min-height:650px !important;
    max-height:none !important;
    overflow:hidden !important;
    background-image:url('assets/images/hero-original-upload.png') !important;
    background-size:cover !important;
    background-position:65% top !important;
    background-repeat:no-repeat !important;
    background-color:#050505 !important;
    filter:none !important;
  }

  html body .hero-overlay{
    opacity:1 !important;
    background:linear-gradient(90deg,
      rgba(0,0,0,.78) 0%,
      rgba(0,0,0,.64) 42%,
      rgba(0,0,0,.28) 68%,
      rgba(0,0,0,.04) 100%) !important;
  }

  html body .hero-content,
  html body .hero-content.wrap,
  html body section.hero .hero-content,
  html body section.hero .wrap.hero-content{
    position:absolute !important;
    z-index:5 !important;
    left:24px !important;
    top:132px !important;
    width:calc(100vw - 48px) !important;
    max-width:360px !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    text-align:left !important;
  }

  html body .hero-title-line{
    display:block !important;
  }

  html body .hero h1,
  html body .hero-content h1,
  html body .hero-title{
    width:100% !important;
    max-width:360px !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    font-size:38px !important;
    line-height:.96 !important;
    letter-spacing:.02em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
    text-shadow:0 3px 6px rgba(0,0,0,.50) !important;
  }

  html body .hero .gold-rule{
    display:block !important;
    width:118px !important;
    height:4px !important;
    margin:22px 0 16px !important;
    background:#d99a00 !important;
  }

  html body .hero .lead,
  html body .hero-content .lead{
    display:block !important;
    width:100% !important;
    max-width:330px !important;
    margin:0 0 20px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:16px !important;
    line-height:1.34 !important;
    font-weight:700 !important;
    text-shadow:0 2px 4px rgba(0,0,0,.55) !important;
  }

  html body .hero-quote,
  html body .hero .quote-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    width:230px !important;
    min-width:230px !important;
    max-width:230px !important;
    height:56px !important;
    padding:0 18px !important;
    font-size:16px !important;
    line-height:1.1 !important;
    letter-spacing:.03em !important;
    box-shadow:0 10px 24px rgba(0,0,0,.24) !important;
  }
}

@media screen and (max-width: 420px){
  html body section.hero,
  html body .hero,
  html body .mbm-hero-v29{
    height:640px !important;
    min-height:640px !important;
    background-position:66% top !important;
  }

  html body .hero-content,
  html body section.hero .hero-content{
    top:128px !important;
    left:22px !important;
    width:calc(100vw - 44px) !important;
    max-width:342px !important;
  }

  html body .hero h1,
  html body .hero-content h1,
  html body .hero-title{
    max-width:342px !important;
    font-size:40px !important;
    line-height:.96 !important;
  }

  html body .hero .lead,
  html body .hero-content .lead{
    max-width:315px !important;
    font-size:15.5px !important;
    line-height:1.33 !important;
    margin-bottom:18px !important;
  }

  html body .hero-quote,
  html body .hero .quote-btn{
    width:220px !important;
    min-width:220px !important;
    max-width:220px !important;
    height:54px !important;
    font-size:15.5px !important;
  }
}


/* =========================================================
   V112 HERO LIGHTING UPDATE
   Adds a brighter hero source image and reduces the final
   dark overlay while preserving text readability.
   ========================================================= */
section.hero,
.hero,
.mbm-hero-v29{
  background-image:url('assets/images/hero-original-upload-light-v112.png') !important;
}

.hero-overlay{
  background:
    radial-gradient(circle at 72% 28%, rgba(255,255,255,.20) 0%, rgba(255,255,255,.10) 22%, rgba(255,255,255,0) 48%),
    linear-gradient(90deg,
      rgba(0,0,0,.82) 0%,
      rgba(0,0,0,.62) 32%,
      rgba(0,0,0,.22) 60%,
      rgba(0,0,0,0) 100%) !important;
}

@media (min-width:981px){
  section.hero,
  .hero,
  .mbm-hero-v29{
    background-image:url('assets/images/hero-original-upload-light-v112.png') !important;
  }

  .hero-overlay{
    background:
      radial-gradient(circle at 72% 26%, rgba(255,255,255,.22) 0%, rgba(255,255,255,.11) 24%, rgba(255,255,255,0) 52%),
      linear-gradient(90deg,
        rgba(0,0,0,.84) 0%,
        rgba(0,0,0,.64) 34%,
        rgba(0,0,0,.20) 62%,
        rgba(0,0,0,0) 100%) !important;
  }
}

@media screen and (max-width:768px){
  html body section.hero,
  html body .hero,
  html body .mbm-hero-v29{
    background-image:url('assets/images/hero-original-upload-light-v112.png') !important;
  }

  html body .hero-overlay{
    background:
      radial-gradient(circle at 70% 18%, rgba(255,255,255,.20) 0%, rgba(255,255,255,.10) 26%, rgba(255,255,255,0) 54%),
      linear-gradient(90deg,
        rgba(0,0,0,.66) 0%,
        rgba(0,0,0,.50) 42%,
        rgba(0,0,0,.18) 68%,
        rgba(0,0,0,0) 100%) !important;
  }
}

/* =========================================================
   V113 HEADER HEIGHT TUNING
   Reduces the white header/navigation height so the hero starts
   higher in the viewport while preserving the approved hero height.
   ========================================================= */
@media (min-width:981px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    height:132px !important;
    min-height:132px !important;
    max-height:132px !important;
    margin-bottom:-30px !important;
    clip-path:polygon(0 0,100% 0,100% 84%,0 100%) !important;
  }

  html body .header-inner{
    height:132px !important;
    min-height:132px !important;
    max-height:132px !important;
    padding-top:14px !important;
    align-items:start !important;
  }

  html body .site-logo img{
    width:145px !important;
    max-width:145px !important;
    max-height:116px !important;
  }

  html body .primary-nav{
    padding-top:38px !important;
  }

  html body .menu{
    font-size:18px !important;
  }

  html body .menu a{
    padding-bottom:14px !important;
  }

  html body .header-quote{
    height:54px !important;
    width:225px !important;
    padding:0 24px !important;
    font-size:18px !important;
    margin-top:18px !important;
    line-height:1.12 !important;
  }
}

@media (max-width:980px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;
    margin-bottom:-16px !important;
  }

  html body .header-inner{
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;
    padding-top:8px !important;
  }

  html body .site-logo img{
    width:104px !important;
    max-width:104px !important;
    max-height:78px !important;
  }

  html body .menu{
    top:92px !important;
  }

  html body .hamb{
    margin-top:18px !important;
  }

  html body .header-quote{
    height:44px !important;
    min-width:142px !important;
    font-size:12.5px !important;
  }
}

@media (max-width:430px){
  html body .site-header,
  html body header.site-header,
  html body .mbm-clean-header-v18{
    height:82px !important;
    min-height:82px !important;
    max-height:82px !important;
    margin-bottom:-14px !important;
  }

  html body .header-inner{
    height:82px !important;
    min-height:82px !important;
    max-height:82px !important;
    padding-top:7px !important;
    grid-template-columns:92px 1fr auto !important;
  }

  html body .site-logo img{
    width:92px !important;
    max-width:92px !important;
    max-height:68px !important;
  }

  html body .menu{
    top:82px !important;
  }

  html body .hamb{
    margin-top:16px !important;
  }

  html body .header-quote{
    height:42px !important;
    min-width:126px !important;
    padding:0 12px !important;
    font-size:12px !important;
  }
}


/* V114 MOBILE HEADER REDUCTION */
@media (max-width: 980px){
  .site-header,
  header.site-header,
  .mbm-clean-header-v18{
    height:125px !important;
    min-height:125px !important;
  }

  .header-inner{
    height:125px !important;
    min-height:125px !important;
    padding-top:10px !important;
  }

  .site-logo img{
    width:140px !important;
    max-height:100px !important;
  }

  .mobile-menu-toggle,
  .hamburger-wrap{
    transform:scale(.9);
  }
}


/* V115 - Raise mobile hero content */
@media (max-width: 980px){
  .hero-content,
  .hero-text,
  .hero-overlay-content,
  .banner-content,
  .home-hero-content{
    transform: translateY(-60px) !important;
  }

  .hero-content-wrapper,
  .hero-inner,
  .hero-container{
    padding-top: 20px !important;
  }
}


/* V117 - Actual secondary hero CTA */
.hero-cta-stack{
  display:flex;
  align-items:flex-start;
  gap:16px;
  flex-wrap:wrap;
}
.hero-secondary-cta,
.mbm-view-work-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:265px;
  height:62px;
  padding:0 31px;
  border:2px solid #fff;
  background:rgba(0,0,0,.12);
  color:#fff!important;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.025em;
  font-size:22px;
  text-align:center;
  box-shadow:none;
}
.hero-secondary-cta:hover,
.mbm-view-work-btn:hover{
  background:#fff;
  color:#000!important;
}
@media (max-width:980px){
  .hero-cta-stack{
    flex-direction:column;
    gap:12px;
    width:100%;
    max-width:420px;
  }
  .hero-cta-stack .hero-quote,
  .hero-secondary-cta,
  .mbm-view-work-btn{
    width:100%!important;
    max-width:420px!important;
    min-width:0!important;
    height:56px!important;
    font-size:17px!important;
  }
}
@media (max-width:430px){
  .hero-cta-stack{max-width:100%;}
  .hero-cta-stack .hero-quote,
  .hero-secondary-cta,
  .mbm-view-work-btn{
    height:54px!important;
    font-size:16px!important;
  }
}

/* V122 - Recommended desktop hero copy/layout */
.hero-title-line{display:block;}
@media (min-width:981px){
  .hero-content{
    max-width:620px !important;
  }
  .hero h1,
  .hero .hero-title{
    max-width:620px !important;
    font-size:clamp(64px,5.2vw,86px) !important;
    line-height:.96 !important;
    letter-spacing:.065em !important;
  }
  .hero .lead{
    max-width:590px !important;
    font-size:26px !important;
    line-height:1.42 !important;
  }
}


/* CTA alignment fix */
.hero .cta-group,
.hero-buttons{
display:flex;
align-items:center;
gap:24px;
flex-wrap:wrap;
}
.hero .cta-group .quote-btn,
.hero-buttons .quote-btn,
.hero .cta-group .outline-btn,
.hero-buttons .outline-btn{
height:72px;
min-width:295px;
display:inline-flex;
align-items:center;
justify-content:center;
margin:0;
}

/* V124 - Hero CTA desktop alignment: equal height, single row */
@media (min-width:981px){
  .hero .hero-cta-stack{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:24px !important;
    flex-wrap:nowrap !important;
    margin-top:0 !important;
    width:auto !important;
    max-width:none !important;
  }
  .hero .hero-cta-stack .hero-quote,
  .hero .hero-cta-stack .quote-btn,
  .hero .hero-cta-stack .hero-secondary-cta,
  .hero .hero-cta-stack .mbm-view-work-btn{
    height:72px !important;
    min-height:72px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    line-height:1 !important;
    box-sizing:border-box !important;
  }
  .hero .hero-cta-stack .hero-quote,
  .hero .hero-cta-stack .quote-btn{
    min-width:295px !important;
    padding:0 40px !important;
  }
  .hero .hero-cta-stack .hero-secondary-cta,
  .hero .hero-cta-stack .mbm-view-work-btn{
    min-width:295px !important;
    padding:0 40px !important;
    border-width:2px !important;
  }
}


/* v125 CTA nowrap fix */
.hero-buttons,.hero-cta,.cta-group{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.hero-buttons a,.hero-cta a,.cta-group a{min-height:72px;display:inline-flex;align-items:center;justify-content:center;}
.hero-buttons .btn-primary,.hero-cta .btn-primary,.cta-group .btn-primary{min-width:320px;white-space:nowrap;}


/* v129 SEO service area strip under hero */
.mbm-service-area-strip{
  background:#0c1116;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#fff;
  width:100%;
}
.mbm-service-area-inner{
  max-width:1320px;
  margin:0 auto;
  padding:11px 34px 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  flex-wrap:wrap;
  text-align:center;
  font-family:inherit;
  text-transform:uppercase;
}
.mbm-service-area-primary{
  font-size:13px;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}
.mbm-pin{
  color:#d49a16;
  margin-right:6px;
}
.mbm-service-area-cities{
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  flex-wrap:wrap;
}
.mbm-service-area-cities span{
  color:#d49a16;
}
@media (max-width: 760px){
  .mbm-service-area-inner{
    padding:10px 18px;
    gap:7px;
    flex-direction:column;
  }
  .mbm-service-area-primary{
    font-size:11px;
    white-space:normal;
    line-height:1.35;
  }
  .mbm-service-area-cities{
    font-size:10px;
    gap:8px;
    line-height:1.35;
  }
}

/* V133 - Actual mobile hero headline fix
   Desktop keeps "METAL FABRICATION" on one line.
   Mobile forces clean stacked headline so no text is cut off. */
.hero-mobile-title{display:none !important;}
.hero-desktop-title{display:inline !important;}

@media (max-width: 980px){
  .hero-desktop-title{display:none !important;}
  .hero-mobile-title{display:block !important;}
  .hero-mobile-title span{display:block !important;}

  html body .hero,
  html body .mbm-hero-v29,
  html body section.hero{
    height:760px !important;
    min-height:760px !important;
    max-height:none !important;
  }

  html body .hero-content,
  html body section.hero .hero-content,
  html body .hero-content.wrap,
  html body section.hero .wrap.hero-content{
    left:24px !important;
    top:150px !important;
    width:calc(100vw - 48px) !important;
    max-width:360px !important;
  }

  html body .hero h1,
  html body .hero-content h1,
  html body .hero .hero-title{
    width:100% !important;
    max-width:360px !important;
    font-size:43px !important;
    line-height:.94 !important;
    letter-spacing:.035em !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  html body .hero-title-line{
    display:block !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  html body .hero .gold-rule{
    margin:22px 0 20px !important;
  }

  html body .hero .lead,
  html body .hero-content .lead{
    max-width:330px !important;
    width:100% !important;
    font-size:18px !important;
    line-height:1.42 !important;
  }

  html body .hero-cta-stack{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }

  html body .hero-cta-stack .hero-quote,
  html body .hero-cta-stack .quote-btn,
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:62px !important;
    font-size:18px !important;
    white-space:nowrap !important;
  }
}

@media (max-width: 420px){
  html body .hero,
  html body .mbm-hero-v29,
  html body section.hero{
    height:735px !important;
    min-height:735px !important;
  }

  html body .hero-content,
  html body section.hero .hero-content{
    top:145px !important;
    left:22px !important;
    width:calc(100vw - 44px) !important;
    max-width:340px !important;
  }

  html body .hero h1,
  html body .hero-content h1,
  html body .hero .hero-title{
    max-width:340px !important;
    font-size:40px !important;
  }

  html body .hero .lead,
  html body .hero-content .lead{
    max-width:320px !important;
    font-size:17px !important;
  }
}


@media (max-width: 767px){
.hero-title,.hero-heading,h1.hero-title,h1.hero-heading{
font-size:44px !important;
line-height:0.95 !important;
letter-spacing:0 !important;
margin-bottom:24px !important;
}
.hero-content,.hero-text{
padding-left:28px !important;
padding-right:28px !important;
}
.hero-content p,.hero-text p,.hero-subtitle{
font-size:16px !important;
line-height:1.45 !important;
font-weight:500 !important;
max-width:320px !important;
}
.hero-overlay:before,.hero::before{
background: linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.55) 45%, rgba(0,0,0,.15) 100%) !important;
}
.hero-buttons a,.hero-cta,.btn{
min-height:60px !important;
}
}

/* v135 mobile hero tuning */
@media (max-width: 767px){
.hero-title,.hero__title,.hero h1{
font-size:44px !important;
line-height:0.95 !important;
}
.hero p,.hero-description,.hero__description{
font-size:18px !important;
line-height:1.4 !important;
font-weight:500 !important;
}
}

/* V141 force gate hero */
.hero,.mbm-hero-v29{background-image:url('assets/images/hero-gate-softened-light-v127.png')!important;background-position:center center!important;}


/* V143 mobile hero compression + shorter description */
@media (max-width: 980px){
  html body .hero,
  html body .mbm-hero-v29,
  html body section.hero{
    height:660px !important;
    min-height:660px !important;
  }
  html body .hero-cta-stack .hero-quote,
  html body .hero-cta-stack .quote-btn,
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    height:56px !important;
    min-height:56px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }
}

@media (max-width: 420px){
  html body .hero,
  html body .mbm-hero-v29,
  html body section.hero{
    height:635px !important;
    min-height:635px !important;
  }
  html body .hero-content,
  html body section.hero .hero-content{
    top:120px !important;
  }
  html body .hero .lead,
  html body .hero-content .lead{
    margin-bottom:28px !important;
  }
  html body .hero-cta-stack{
    gap:14px !important;
  }
  html body .hero-cta-stack .hero-quote,
  html body .hero-cta-stack .quote-btn,
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    height:56px !important;
    min-height:56px !important;
    font-size:17px !important;
  }
}


/* V144 - Final mobile structure refinements */
@media (max-width: 980px){
  html body .hero,
  html body .mbm-hero-v29,
  html body section.hero{
    height:580px !important;
    min-height:580px !important;
  }
  html body .hero-content,
  html body section.hero .hero-content{
    top:98px !important;
  }
  html body .hero-cta-stack .hero-quote,
  html body .hero-cta-stack .quote-btn,
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    height:50px !important;
    min-height:50px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    background:transparent !important;
    border:2px solid #fff !important;
    color:#fff !important;
    box-shadow:none !important;
  }
}
@media (max-width: 420px){
  html body .hero,
  html body .mbm-hero-v29,
  html body section.hero{
    height:555px !important;
    min-height:555px !important;
  }
  html body .hero-content,
  html body section.hero .hero-content{
    top:88px !important;
  }
  html body .hero .lead,
  html body .hero-content .lead{
    margin-bottom:22px !important;
  }
  html body .hero-cta-stack{
    gap:12px !important;
  }
  html body .hero-cta-stack .hero-quote,
  html body .hero-cta-stack .quote-btn,
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    height:50px !important;
    min-height:50px !important;
    font-size:16px !important;
  }
  html body .hero-cta-stack .hero-secondary-cta,
  html body .hero-cta-stack .mbm-view-work-btn{
    background:transparent !important;
    border:2px solid #fff !important;
    color:#fff !important;
  }
  html body .mbm-service-area-primary{
    font-size:11px !important;
    line-height:1.28 !important;
  }
}


/* V145 - Final mobile hero copy and placement lock */
@media (max-width: 420px){
  html body .hero .lead,
  html body .hero-content .lead{
    max-width: 330px !important;
  }
}


/* V146 - Final mobile refinement: CTA label, copy polish, tighter service strip */
@media (max-width: 760px){
  html body .mbm-service-area-inner{
    padding:8px 16px 9px !important;
    gap:5px !important;
  }
  html body .mbm-service-area-primary{
    font-size:10.5px !important;
    line-height:1.25 !important;
    letter-spacing:.01em !important;
  }
  html body .mbm-service-area-cities{
    font-size:9.5px !important;
    line-height:1.25 !important;
    gap:7px !important;
    letter-spacing:.035em !important;
  }
}

/* V147 - Final mobile headline reduction */
@media (max-width: 760px){
  html body .hero h1,
  html body .hero-content h1,
  html body .hero .hero-title,
  html body .hero-title,
  html body .hero-heading,
  html body h1.hero-title,
  html body h1.hero-heading{
    font-size:41px !important;
    line-height:0.95 !important;
    letter-spacing:-0.01em !important;
  }
}
@media (max-width: 380px){
  html body .hero h1,
  html body .hero-content h1,
  html body .hero .hero-title,
  html body .hero-title,
  html body .hero-heading,
  html body h1.hero-title,
  html body h1.hero-heading{
    font-size:39px !important;
  }
}


/* V148 - Services grid SEO/category refinement */
.service-gallery-section .service-eyebrow{
  text-transform:uppercase !important;
  color:var(--gold2) !important;
  font-weight:1000 !important;
  letter-spacing:.18em !important;
}
.service-folder-link[data-folder="metal-fabrication"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/custom-fabrication.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
@media(max-width:700px){
  .service-folder-grid.folder-accordion,
  .folder-accordion.service-folder-grid.service-page-link-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .service-card-toggle.folder-toggle{
    min-height:190px !important;
    padding:26px 18px !important;
  }
  .service-card-title{
    font-size:22px !important;
  }
  .service-card-subtitle{
    font-size:12px !important;
  }
}


/* V151 - Railings service card cover */
.service-folder-link[data-folder="railings"] .service-card-toggle{
  background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.55)), url('assets/home-cards/metal-railings.png') !important;
  background-size: cover !important;
  background-position: center !important;
}

/* MBM-V151: Added Railings service folder/card with interior railing project cover. */


/* V152 - About/quality section SEO copy refinement */
.intro-eyebrow{
  margin:0 0 12px !important;
  color:var(--gold2) !important;
  text-transform:uppercase !important;
  font-weight:1000 !important;
  letter-spacing:.16em !important;
  font-size:14px !important;
  line-height:1.25 !important;
}
@media(max-width:700px){
  .intro-eyebrow{font-size:13px !important; letter-spacing:.14em !important;}
}


/* V153 - About section mobile polish */
@media(max-width:700px){
  html body .intro-image img{
    height:200px !important;
    object-fit:cover !important;
  }
  html body .intro-copy h2{
    font-size:28px !important;
    line-height:1.08 !important;
    letter-spacing:-0.015em !important;
    max-width:100% !important;
  }
  html body .intro-copy p{
    font-size:18px !important;
    line-height:1.55 !important;
  }
}
@media(max-width:380px){
  html body .intro-copy h2{font-size:26px !important;}
  html body .intro-image img{height:190px !important;}
}


/* V154 - Footer polish: service list fix, SEO blurb, tighter mobile spacing */
.footer-services{
  margin:0;
  padding:0;
  list-style:none;
}
.footer-services li{
  font-size:14px;
  line-height:1.7;
  color:#ddd;
  margin:0 0 4px;
}
@media(max-width:980px){
  .footer{
    padding:42px 0 20px;
  }
  .footer-grid{
    gap:24px 28px;
  }
  .footer img{
    width:136px;
    margin-bottom:14px;
  }
  .footer h4{
    margin-bottom:10px;
  }
  .footer p,
  .footer a,
  .footer-services li{
    line-height:1.55;
  }
  .copyright{
    margin-top:22px;
  }
}
@media(max-width:430px){
  .footer{
    padding:36px 0 18px;
  }
  .footer-grid{
    gap:28px;
  }
  .footer img{
    width:128px;
    padding:6px;
  }
  .footer p{
    margin:0;
  }
}

/* V157 - Railings service page SEO/content expansion */
.service-page-intro{
  background:#fff;
  padding:78px 0 54px;
}
.railings-service-wrap{
  max-width:980px;
}
.railings-service-hero .section-title,
.railings-trust .section-title,
.railings-faq .section-title{
  margin-bottom:22px;
}
.railings-intro-text{
  font-size:20px;
  line-height:1.65;
  color:#333;
  max-width:900px;
  margin:0 0 18px;
}
.railings-intro-secondary{
  margin-bottom:30px;
}
.railings-quote-btn{
  height:58px;
  padding:0 30px;
  font-size:16px;
}
.compact-section{
  padding:54px 0;
}
.railings-services-list{
  background:#0a0a0a;
  color:#fff;
}
.railings-services-list .service-eyebrow,
.railings-trust .service-eyebrow,
.railings-faq .service-eyebrow{
  color:var(--gold2) !important;
}
.railings-service-list-grid,
.railings-trust-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  margin-top:24px;
}
.railings-service-list-grid span,
.railings-trust-grid span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:70px;
  padding:14px 16px;
  background:#fff;
  color:#111;
  border-left:4px solid var(--gold2);
  text-align:center;
  text-transform:uppercase;
  font-weight:900;
  font-size:14px;
  line-height:1.25;
}
.railings-gallery-page{
  padding-top:58px;
}
.railings-trust{
  background:#fff;
}
.railings-trust-grid{
  grid-template-columns:repeat(3,1fr);
}
.railings-trust-grid span{
  background:#f5f5f5;
}
.railings-faq{
  background:#f5f5f5;
}
.railings-faq-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:28px;
}
.railings-faq-grid article{
  background:#fff;
  padding:24px;
  border-top:4px solid var(--gold2);
}
.railings-faq-grid h3{
  margin:0 0 10px;
  font-size:18px;
  line-height:1.25;
  text-transform:uppercase;
  font-weight:1000;
}
.railings-faq-grid p{
  margin:0;
  font-size:16px;
  line-height:1.55;
  color:#333;
}
.railings-service-area{
  background:#050505;
  color:#fff;
  border-top:4px solid var(--gold2);
}
.railings-service-area-inner{
  padding:24px 0;
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:7px;
  text-transform:uppercase;
}
.railings-service-area-inner strong{
  font-size:22px;
  letter-spacing:.04em;
}
.railings-service-area-inner span{
  color:#ddd;
  font-size:15px;
  letter-spacing:.06em;
  line-height:1.45;
}
.railings-final-cta{
  background:linear-gradient(90deg,#101010,#050505);
  color:#fff;
  text-align:center;
  padding:62px 0;
}
.railings-final-cta h2{
  margin:0 0 28px;
  text-transform:uppercase;
  font-size:34px;
  line-height:1.12;
  font-weight:1000;
}
.railings-final-cta .quote-btn{
  height:60px;
  padding:0 34px;
  font-size:17px;
}
@media(max-width:900px){
  .railings-service-list-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .railings-trust-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:700px){
  .service-page-intro{
    padding:54px 0 38px;
  }
  .compact-section{
    padding:42px 0;
  }
  .railings-service-hero .section-title,
  .railings-trust .section-title,
  .railings-faq .section-title{
    font-size:30px !important;
    line-height:1.08 !important;
  }
  .railings-intro-text{
    font-size:17px;
    line-height:1.55;
  }
  .railings-service-list-grid,
  .railings-trust-grid,
  .railings-faq-grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  .railings-service-list-grid span,
  .railings-trust-grid span{
    min-height:54px;
    font-size:13px;
    justify-content:flex-start;
    text-align:left;
  }
  .railings-gallery-page{
    padding-top:44px;
  }
  .railings-faq-grid article{
    padding:20px;
  }
  .railings-service-area-inner{
    padding:18px 0;
  }
  .railings-service-area-inner strong{
    font-size:15px;
    line-height:1.35;
  }
  .railings-service-area-inner span{
    font-size:11px;
    line-height:1.45;
  }
  .railings-final-cta{
    padding:44px 0;
  }
  .railings-final-cta h2{
    font-size:26px;
  }
  .railings-final-cta .quote-btn,
  .railings-quote-btn{
    width:100%;
    height:56px;
  }
}

/* V158 - Railings service page split hero and conversion polish */
.railings-hero-split{
  max-width:1200px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 470px;
  gap:48px;
  align-items:center;
}
.railings-hero-copy{
  min-width:0;
}
.railings-hero-image{
  margin:0;
  border:6px solid #f2f2f2;
  box-shadow:0 20px 46px rgba(0,0,0,.14);
  background:#111;
  overflow:hidden;
}
.railings-hero-image img{
  width:100%;
  height:360px;
  object-fit:cover;
  object-position:center center;
}
.railings-service-hero .section-title{
  max-width:820px;
}
.railings-intro-text{
  max-width:760px;
}
.railings-trust{
  background:#f7f7f7;
  border-top:1px solid #eee;
  border-bottom:1px solid #e7e7e7;
}
.railings-trust .section-title{
  max-width:860px;
}
.railings-trust-grid span::before{
  content:'✓';
  color:var(--gold2);
  font-weight:1000;
  margin-right:8px;
}
.railings-gallery-page .service-grid-intro{
  max-width:850px;
}
@media(max-width:980px){
  .railings-hero-split{
    grid-template-columns:1fr;
    gap:28px;
  }
  .railings-hero-image{
    order:-1;
  }
  .railings-hero-image img{
    height:310px;
  }
}
@media(max-width:700px){
  .railings-hero-split{
    gap:24px;
  }
  .railings-hero-image{
    border-width:4px;
  }
  .railings-hero-image img{
    height:230px;
  }
  .railings-trust-grid span::before{
    margin-right:10px;
  }
}


@media (max-width:768px){
.railings-service-list-grid{
display:grid!important;
grid-template-columns:1fr 1fr;
gap:12px;
}
.railings-service-list-grid span{
min-height:auto!important;
padding:18px 12px!important;
font-size:16px!important;
}
}

/* V161 - Railings mobile length reduction: swipe gallery, no duplicate sections */
@media (max-width: 768px){
  .railings-gallery-page{
    padding-top: 32px !important;
    padding-bottom: 34px !important;
  }
  .railings-gallery-page .section-title{
    font-size: clamp(2.35rem, 12vw, 3.4rem) !important;
    line-height: .98 !important;
    margin-bottom: 18px !important;
  }
  .railings-gallery-page .service-grid-intro{
    font-size: 18px !important;
    line-height: 1.45 !important;
    margin-bottom: 22px !important;
  }
  .railings-gallery-page .folder-panel{
    overflow: visible !important;
  }
  .railings-gallery-page .folder-gallery{
    display: flex !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 0 0 14px !important;
    margin-left: -2px;
    margin-right: -2px;
  }
  .railings-gallery-page .folder-gallery::-webkit-scrollbar{
    height: 5px;
  }
  .railings-gallery-page .folder-thumb{
    flex: 0 0 84vw !important;
    width: 84vw !important;
    max-width: 640px;
    height: 270px !important;
    scroll-snap-align: start;
    border: 1px solid #e6e6e6 !important;
    background: #fff;
  }
  .railings-gallery-page .folder-thumb img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
  }
  .railings-services-list{
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }
  .railings-service-list-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .railings-service-list-grid span{
    min-height: 74px !important;
    padding: 16px 12px !important;
    font-size: 14px !important;
    line-height: 1.18 !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }
  .railings-service-area-inner{
    padding: 18px 0 !important;
  }
}

/* V162 - Railings mobile cleanup: remove service cards and add swipe cue */
.gallery-swipe-hint{
  display:none;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  margin:0 0 16px;
  padding:9px 14px;
  border:1px solid rgba(210,150,0,.35);
  background:#fff7e3;
  color:#111;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  font-weight:900;
}
.gallery-swipe-hint span{
  display:inline-block;
  color:var(--gold2);
  font-size:18px;
  line-height:1;
  animation:mbmSwipeArrow 1.15s ease-in-out infinite;
}
@keyframes mbmSwipeArrow{
  0%,100%{transform:translateX(0); opacity:.65;}
  50%{transform:translateX(8px); opacity:1;}
}
@media (max-width:768px){
  .railings-gallery-page .section-title{
    font-size: clamp(2.05rem, 10vw, 2.85rem) !important;
    line-height: .96 !important;
    margin-bottom: 14px !important;
  }
  .railings-gallery-page .service-grid-intro{
    margin-bottom: 12px !important;
  }
  .gallery-swipe-hint{
    display:flex;
  }
  .railings-gallery-page .folder-thumb{
    flex-basis: 86vw !important;
    width: 86vw !important;
    height: 255px !important;
  }
  .railings-gallery-page{
    padding-bottom: 28px !important;
  }
}
@media (min-width:769px){
  .gallery-swipe-hint{
    display:none !important;
  }
}

/* V164 - Railings final mobile hierarchy polish */
@media (max-width: 768px){
  .railings-service-hero.service-page-intro{
    padding-top: 32px !important;
    padding-bottom: 30px !important;
  }
  .railings-hero-split{
    gap: 18px !important;
  }
  .railings-hero-image img{
    height: 150px !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
  .railings-service-hero .section-title{
    font-size: clamp(2.45rem, 11vw, 3rem) !important;
    line-height: .95 !important;
    margin-bottom: 18px !important;
  }
  .railings-service-hero .service-eyebrow{
    display: none !important;
  }
  .railings-intro-text{
    font-size: 16px !important;
    line-height: 1.48 !important;
    margin-bottom: 14px !important;
  }
  .railings-quote-btn{
    margin-top: 10px !important;
  }
  .railings-gallery-page{
    padding-top: 26px !important;
  }
  .railings-gallery-page .service-eyebrow{
    display: none !important;
  }
  .railings-gallery-page .section-title{
    font-size: clamp(2.0rem, 9vw, 2.65rem) !important;
    line-height: .98 !important;
    margin-bottom: 12px !important;
  }
  .railings-gallery-page .service-grid-intro{
    font-size: 16px !important;
    line-height: 1.4 !important;
    margin-bottom: 12px !important;
  }
  .gallery-swipe-hint{
    padding: 9px 12px !important;
    font-size: 11px !important;
    letter-spacing: .06em !important;
  }
  .gallery-swipe-hint span:first-child{
    animation: mbmSwipeArrowLeft 1.15s ease-in-out infinite;
  }
  .gallery-swipe-hint span:last-child{
    animation: mbmSwipeArrow 1.15s ease-in-out infinite;
  }
  .railings-gallery-page .folder-thumb{
    height: 230px !important;
  }
}
@keyframes mbmSwipeArrowLeft{
  0%,100%{transform:translateX(0); opacity:.65;}
  50%{transform:translateX(-8px); opacity:1;}
}


/* V165 - Railings final conversion cleanup: remove top CTA, tighter mobile hero/gallery/CTA */
@media (max-width: 768px){
  .railings-service-hero.service-page-intro{
    padding-top: 26px !important;
    padding-bottom: 18px !important;
  }
  .railings-hero-split{
    gap: 14px !important;
  }
  .railings-hero-image{
    margin-bottom: 4px !important;
  }
  .railings-hero-image img{
    height: 125px !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
  .railings-service-hero .section-title{
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    font-size: clamp(2.25rem, 10vw, 2.85rem) !important;
    line-height: .95 !important;
  }
  .railings-intro-text{
    font-size: 16px !important;
    line-height: 1.45 !important;
    margin-bottom: 12px !important;
  }
  .railings-gallery-page{
    padding-top: 18px !important;
    padding-bottom: 26px !important;
  }
  .railings-gallery-page .section-title{
    font-size: clamp(2rem, 9vw, 2.6rem) !important;
    line-height: .98 !important;
    margin-bottom: 12px !important;
  }
  .railings-gallery-page .service-grid-intro{
    font-size: 16px !important;
    line-height: 1.4 !important;
    margin-bottom: 14px !important;
  }
  .gallery-swipe-hint{
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    padding: 8px 12px !important;
    font-size: 10px !important;
    letter-spacing: .055em !important;
    margin-bottom: 18px !important;
  }
  .railings-gallery-page .folder-thumb{
    height: 220px !important;
  }
  .railings-final-cta{
    padding-top: 34px !important;
    padding-bottom: 36px !important;
  }
  .railings-final-cta h2{
    font-size: clamp(2rem, 9vw, 2.6rem) !important;
    line-height: 1 !important;
    margin-bottom: 22px !important;
  }
}


/* v166 railings mobile polish */
.service-gallery-section .service-grid-intro{display:none;}
.gallery-swipe-hint{margin-bottom:20px;}
.cta-banner,.cta-section{padding-top:64px!important;padding-bottom:64px!important;}


/* V167 - Railings final mobile conversion tightening */
@media (max-width: 768px){
  /* tighter transition from intro to gallery */
  .railings-service-hero.service-page-intro{
    padding-bottom: 10px !important;
  }
  .railings-gallery-page{
    padding-top: 10px !important;
    padding-bottom: 18px !important;
  }
  .railings-gallery-page .section-title{
    margin-bottom: 14px !important;
  }
  .gallery-swipe-hint{
    margin-bottom: 16px !important;
  }
  /* compact final CTA */
  .cta{
    padding-top: 28px !important;
    padding-bottom: 30px !important;
  }
  .cta strong{
    font-size: clamp(2rem, 8.5vw, 2.55rem) !important;
    line-height: 1 !important;
  }
  .cta .btn{
    min-height: 58px !important;
  }
  /* hide footer services list on mobile to reduce duplicate scrolling */
  .footer-grid > div:nth-child(3){
    display:none !important;
  }
  .footer{
    padding-top: 34px !important;
  }
}
@media (max-width: 430px){
  .footer-grid{
    gap: 22px !important;
  }
  .footer img{
    width: 118px !important;
  }
}

/* V168 - final Railings mobile cleanup */
@media (max-width: 768px){
  /* stronger swipe instruction */
  .gallery-swipe-hint{
    max-width: 340px !important;
    padding: 10px 12px !important;
    margin-bottom: 12px !important;
    font-size: 11px !important;
    letter-spacing: .055em !important;
  }

  /* reduce the gallery-to-CTA dead space */
  .railings-gallery-page{
    padding-bottom: 6px !important;
  }
  .railings-gallery-page .folder-gallery{
    padding-bottom: 6px !important;
  }
  .railings-gallery-page .folder-thumb{
    margin-bottom: 0 !important;
  }

  /* compact final CTA section */
  .cta{
    padding-top: 22px !important;
    padding-bottom: 24px !important;
  }
  .cta .wrap{
    gap: 14px !important;
  }
  .cta strong{
    font-size: clamp(1.9rem, 8vw, 2.35rem) !important;
    margin-bottom: 2px !important;
  }
  .cta .btn{
    min-height: 52px !important;
    height: 52px !important;
  }

  /* remove duplicate footer blurb spacing and compress footer */
  .footer{
    padding-top: 28px !important;
    padding-bottom: 18px !important;
  }
  .footer-grid{
    gap: 18px !important;
  }
  .footer-grid > div:first-child p{
    display: none !important;
  }
  .copyright{
    margin-top: 20px !important;
    padding-top: 14px !important;
  }
}

@media (max-width: 430px){
  .footer img{
    width: 112px !important;
    margin-bottom: 6px !important;
  }
  .cta .btn{
    width: min(100%, 310px) !important;
  }
}


/* V169 - Railings final footer/CTA tightening */
@media (max-width: 768px){
  /* final CTA: shorter copy + less vertical weight */
  .cta{
    padding-top: 18px !important;
    padding-bottom: 20px !important;
  }
  .cta .wrap{
    gap: 12px !important;
  }
  .cta strong{
    font-size: clamp(1.8rem, 7.4vw, 2.2rem) !important;
    line-height: 1 !important;
  }
  .cta .btn{
    min-height: 50px !important;
    height: 50px !important;
  }

  /* mobile footer: contact-only, remove duplicate logo/quick links/services */
  .footer-grid > div:first-child,
  .footer-grid > div:nth-child(2),
  .footer-grid > div:nth-child(3){
    display: none !important;
  }
  .footer-grid{
    display:block !important;
  }
  .footer{
    padding-top: 24px !important;
    padding-bottom: 16px !important;
  }
  .footer h4{
    margin-bottom: 10px !important;
  }
  .footer p{
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .copyright{
    margin-top: 16px !important;
    padding-top: 12px !important;
  }
}

/* V170 - final mobile polish: tighter CTA/footer/contact and slimmer gallery frame */
.footer-contact-list{font-size:14px;line-height:1.7;color:#ddd;}
.footer-contact-row{display:flex;align-items:flex-start;gap:8px;margin:0 0 4px;}
.footer-contact-icon,.footer-contact-label{flex:0 0 auto;}
.footer-contact-ccb{display:block;}

@media (max-width: 768px){
  /* slimmer project photo frame */
  .railings-gallery-page .service-folder-card .folder-panel{
    padding:8px !important;
    border:1px solid #e7e7e7 !important;
    background:#f8f8f8 !important;
  }
  .railings-gallery-page .folder-gallery{
    gap:10px !important;
    padding-bottom:2px !important;
  }
  .railings-gallery-page .folder-thumb{
    border:0 !important;
    box-shadow:none !important;
  }

  /* tighten gallery into final CTA */
  .railings-gallery-page{
    padding-bottom:0 !important;
  }
  .railings-gallery-page .wrap{
    margin-bottom:0 !important;
  }

  /* tighter quote CTA */
  .cta{
    padding-top:14px !important;
    padding-bottom:16px !important;
  }
  .cta .wrap{
    gap:10px !important;
  }
  .cta strong{
    font-size:clamp(1.65rem, 6.8vw, 2rem) !important;
    line-height:1 !important;
  }
  .cta .btn{
    min-height:46px !important;
    height:46px !important;
  }

  /* remove leftover vertical gap above contact */
  .footer{
    padding-top:12px !important;
    padding-bottom:14px !important;
  }
  .footer-grid{
    margin-top:0 !important;
    padding-top:0 !important;
  }
  .footer h4{
    margin:0 0 8px !important;
  }
  .footer-contact-list{
    font-size:16px !important;
    line-height:1.45 !important;
  }
  .footer-contact-row{
    gap:8px !important;
    margin-bottom:6px !important;
  }
  .footer-contact-icon{
    width:24px !important;
    text-align:center !important;
  }
  .footer-contact-quotes{
    display:block !important;
  }
  .footer-contact-quotes .footer-contact-label{
    margin-right:4px !important;
  }
  .copyright{
    margin-top:12px !important;
    padding-top:10px !important;
  }
}

@media (max-width: 430px){
  .cta .btn{
    width:100% !important;
  }
  .footer-contact-list{
    font-size:15px !important;
  }
}


/* V171 - final railings page polish: remove hero duplicate from gallery, tighten CTA/contact hierarchy */
@media (max-width: 768px){
  /* reduce extra space above final CTA */
  .railings-gallery-page{
    padding-bottom:0 !important;
    margin-bottom:0 !important;
  }
  .railings-gallery-page .service-folder-card{
    margin-bottom:0 !important;
  }
  .cta{
    padding-top:10px !important;
    padding-bottom:14px !important;
  }
  .cta .wrap{
    gap:8px !important;
  }
  .cta strong{
    margin:0 0 6px !important;
  }
  .cta .btn + .btn{
    margin-top:4px !important;
  }

  /* keep contact subordinate to CTA */
  .footer h4{
    font-size:22px !important;
    line-height:1.05 !important;
    margin-bottom:10px !important;
  }
  .footer-contact-list{
    font-size:15px !important;
    line-height:1.4 !important;
  }
  .footer-contact-row{
    margin-bottom:5px !important;
  }
}

/* V172 - Railings final CTA-to-contact spacing lock */
@media (max-width: 768px){
  /* keep the quote section compact and visually connected to contact */
  .cta{
    padding-top:8px !important;
    padding-bottom:8px !important;
  }
  .cta .wrap{
    gap:6px !important;
  }
  .cta strong{
    margin:0 0 4px !important;
    line-height:.98 !important;
  }
  .cta .btn{
    min-height:44px !important;
    height:44px !important;
  }
  .cta .btn + .btn{
    margin-top:2px !important;
  }

  /* remove remaining dead space before contact */
  .footer{
    padding-top:8px !important;
    padding-bottom:12px !important;
  }
  .footer h4{
    margin:0 0 8px !important;
  }
  .footer-contact-list{
    margin:0 !important;
  }
  .footer-contact-row{
    margin-bottom:4px !important;
  }
  .copyright{
    margin-top:10px !important;
    padding-top:9px !important;
  }
}

/* V173 - Railings CTA balance: remove gold divider, reduce CTA visual weight */
@media (max-width: 768px){
  .cta{
    border-top:0 !important;
    padding-top:6px !important;
    padding-bottom:6px !important;
  }
  .cta .wrap{
    gap:5px !important;
  }
  .cta strong{
    font-size:clamp(1.45rem, 5.9vw, 1.8rem) !important;
    line-height:.98 !important;
    margin:0 0 2px !important;
  }
  .cta .btn{
    min-height:40px !important;
    height:40px !important;
    font-size:15px !important;
  }
  .cta .btn + .btn{
    margin-top:0 !important;
  }
  .footer{
    padding-top:7px !important;
  }
}

/* V174 - dedicated Contact Us quote request page */
.mbm-contact-page{
  background:#0d0d0d;
  color:#f5f5f5;
}
.mbm-contact-section{
  padding:56px 0 72px;
  background:#111;
}
.mbm-contact-card{
  max-width:960px;
  margin:0 auto;
  padding:44px;
  background:linear-gradient(180deg,#151515,#101010);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 20px 50px rgba(0,0,0,.28);
}
.mbm-contact-card h1{
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(2.25rem,5vw,4.2rem);
  line-height:.95;
  text-transform:uppercase;
  letter-spacing:-.03em;
}
.mbm-contact-intro{
  max-width:720px;
  margin:0 0 30px;
  color:#d9d9d9;
  font-size:18px;
  line-height:1.55;
}
.required-note{
  margin:0 0 14px;
  color:#cfcfcf;
}
.required-note span,.mbm-contact-form label span{color:#e2a400;}
.mbm-contact-form label{
  display:block;
  margin:18px 0 8px;
  color:#f2f2f2;
  font-weight:900;
  font-size:17px;
}
.mbm-contact-form input[type="text"],
.mbm-contact-form input[type="tel"],
.mbm-contact-form input[type="email"],
.mbm-contact-form textarea{
  width:100%;
  min-height:52px;
  padding:12px 14px;
  background:#fff;
  color:#111;
  border:1px solid #d8d8d8;
  border-radius:0;
  font:inherit;
}
.mbm-contact-form textarea{
  min-height:260px;
  resize:vertical;
}
.mbm-contact-form input[type="file"]{
  display:block;
  width:100%;
  padding:13px;
  background:#fff;
  color:#111;
  border:1px solid #d8d8d8;
}
.mbm-submit-btn{
  margin-top:26px;
  border:0;
  cursor:pointer;
}
.mbm-form-notice{
  margin:18px 0 24px;
  padding:14px 16px;
  font-weight:800;
  border-left:5px solid #d69a00;
  background:#fff7e6;
  color:#111;
}
.mbm-form-notice.error{
  border-left-color:#c92a2a;
}

@media (max-width:768px){
  .mbm-contact-section{
    padding:28px 0 42px;
  }
  .mbm-contact-card{
    padding:26px 20px;
  }
  .mbm-contact-card h1{
    font-size:clamp(2.1rem,11vw,3.1rem);
  }
  .mbm-contact-intro{
    font-size:16px;
    line-height:1.5;
    margin-bottom:22px;
  }
  .mbm-contact-form label{
    font-size:16px;
    margin-top:16px;
  }
  .mbm-contact-form input[type="text"],
  .mbm-contact-form input[type="tel"],
  .mbm-contact-form input[type="email"]{
    min-height:48px;
  }
  .mbm-contact-form textarea{
    min-height:190px;
  }
}

/* v178: Railings hero image links to gallery */
.railings-hero-gallery-link{
  display:block;
  width:100%;
  height:100%;
  text-decoration:none;
  cursor:pointer;
}
.railings-hero-gallery-link img{
  display:block;
  transition: transform .22s ease, filter .22s ease;
}
.railings-hero-gallery-link:hover img,
.railings-hero-gallery-link:focus-visible img{
  transform: scale(1.015);
  filter: brightness(1.04);
}
.railings-hero-gallery-link:focus-visible{
  outline:3px solid var(--gold, #d8a21b);
  outline-offset:4px;
}


/* V180 gallery tap-to-open control */
.gallery-swipe-hint .gallery-tap-open{
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  border:0;
  padding:0;
  margin:0;
  color:var(--gold2);
  font:inherit;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.02em;
  cursor:pointer;
}
.gallery-swipe-hint .gallery-tap-open:focus-visible{
  outline:2px solid var(--gold2);
  outline-offset:4px;
}
.gallery-swipe-hint .gallery-tap-open:hover{
  color:var(--gold);
}
@media(max-width:700px){
  .gallery-swipe-hint .gallery-tap-open{
    line-height:1.05;
  }
}

/* V182 - Make the full railings gallery instruction banner tappable */
.gallery-swipe-hint.gallery-open-trigger{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(210,150,0,.35);
  cursor:pointer;
  text-align:left;
  font-family:inherit;
}
.gallery-swipe-hint.gallery-open-trigger:focus-visible{
  outline:3px solid var(--gold2, #d8a21b);
  outline-offset:4px;
}
.gallery-swipe-hint.gallery-open-trigger:hover,
.gallery-swipe-hint.gallery-open-trigger:active{
  background:#fff2cc;
}
.gallery-swipe-hint .gallery-tap-open{
  color:var(--gold2);
  font-weight:1000;
  letter-spacing:.02em;
  line-height:1.05;
}

/* V185 - Consistent service-page CTA button sizing and spacing */
.cta{
  margin-top:28px;
}
.cta .wrap{
  gap:18px;
}
.cta .btn{
  min-width:260px;
  height:58px;
  min-height:58px;
  padding:0 28px;
  text-align:center;
  line-height:1.1;
}
.cta .btn + .btn{
  margin-left:0;
}

@media (max-width:768px){
  .cta{
    margin-top:24px !important;
    padding-top:18px !important;
    padding-bottom:18px !important;
  }
  .cta .wrap{
    gap:14px !important;
    align-items:stretch !important;
  }
  .cta strong{
    margin-bottom:2px !important;
  }
  .cta .btn{
    width:100% !important;
    min-width:0 !important;
    height:56px !important;
    min-height:56px !important;
    padding:0 18px !important;
    font-size:16px !important;
  }
  .cta .btn + .btn{
    margin-top:0 !important;
  }
}

/* V189: make homepage structural fabrication image behave like a gallery entry */
.intro-gallery-link{
  display:block;
  cursor:pointer;
  text-decoration:none;
}
.intro-gallery-link img{
  display:block;
  width:100%;
}
.intro-gallery-link:focus-visible{
  outline:3px solid #d99a00;
  outline-offset:4px;
}


/* V190 - About section updated copy and tagline */
.intro-tagline{
  margin:0 0 26px !important;
  color:#111 !important;
  font-weight:1000 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  line-height:1.25 !important;
}
@media(max-width:700px){
  html body .intro-tagline{
    font-size:16px !important;
    letter-spacing:.055em !important;
    margin-bottom:22px !important;
  }
}

/* MBM-V191 - tighten mobile spacing between service cards and About section */
@media (max-width: 700px){
  html body .service-gallery-section{
    padding-bottom: 24px !important;
  }
  html body #about.intro.section{
    padding-top: 28px !important;
  }
  html body #about .intro-grid{
    gap: 22px !important;
  }
}

@media (min-width: 701px){
  html body .service-gallery-section{
    padding-bottom: 48px !important;
  }
  html body #about.intro.section{
    padding-top: 48px !important;
  }
}

/* MBM-V192 - About image cue and gallery CTA refinements */
.intro-gallery-link{
  position:relative;
  overflow:hidden;
}
.intro-image-cue{
  position:absolute;
  right:14px;
  bottom:14px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:rgba(0,0,0,.72);
  color:#fff;
  padding:9px 12px;
  font-size:13px;
  line-height:1;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  pointer-events:none;
}
.intro-work-btn{
  width:100%;
  min-height:58px;
  height:58px;
  padding:0 22px !important;
  font-size:18px !important;
}
@media(max-width:700px){
  html body .intro-image-cue{
    right:10px;
    bottom:10px;
    padding:8px 10px;
    font-size:11px;
    max-width:calc(100% - 20px);
  }
  html body .intro-work-btn{
    width:100% !important;
    min-height:58px !important;
    height:58px !important;
    font-size:16px !important;
  }
  html body #about.intro.section{
    padding-bottom:22px !important;
  }
  html body #about + .cta,
  html body .intro.section + .cta{
    margin-top:0 !important;
  }
}

/* MBM-V193 - remove redundant About image on mobile/desktop and streamline section */
.about-no-image .intro-no-image{
  display:block !important;
  max-width:980px;
}
.about-no-image .intro-copy{
  max-width:980px;
}
.about-section-title{
  margin:0 0 18px;
  text-transform:uppercase;
  font-size:clamp(30px,3.8vw,46px);
  line-height:1;
  font-weight:1000;
  letter-spacing:.015em;
  color:#111;
}
.about-no-image .intro-work-btn{
  width:100%;
  max-width:none;
}
@media(max-width:700px){
  html body #about.about-no-image.intro.section{
    padding-top:28px !important;
    padding-bottom:28px !important;
  }
  html body .about-section-title{
    font-size:38px !important;
    margin-bottom:18px !important;
  }
  html body .about-no-image .intro-eyebrow{
    margin-bottom:16px !important;
  }
  html body .about-no-image .intro-work-btn{
    width:100% !important;
    min-height:58px !important;
    height:58px !important;
  }
}

/* MBM-V196 - replace About Us work CTA with clean services anchor */
.about-services-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:58px;
  height:58px;
  margin:36px 0 0;
  padding:0 22px;
  background:linear-gradient(180deg,#d99a06,#bd7d00);
  color:#fff !important;
  text-align:center;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.025em;
  font-size:18px;
  box-shadow:0 18px 38px rgba(166,106,0,.22);
  position:relative;
  z-index:25;
  pointer-events:auto !important;
}
.about-services-btn:hover,
.about-services-btn:focus{
  color:#fff !important;
  filter:brightness(1.03);
}
@media(max-width:700px){
  html body .about-services-btn{
    width:100% !important;
    min-height:58px !important;
    height:58px !important;
    font-size:16px !important;
    margin-top:32px !important;
  }
}

.menu-heading{font-weight:700;padding:20px 0 8px;letter-spacing:.08em;color:#b8860b;list-style:none}.mobile-menu .quote-btn{display:block;margin:20px;text-align:center}
/* v204: quote anchor fix for mobile hamburger CTA */
.mbm-anchor-contact{
  display:block;
  position:relative;
  top:0;
  height:0;
  width:0;
  overflow:hidden;
}

/* MBM-V205 - refined mobile menu folder layout */
@media (max-width:1024px){
  html body .mbm-mobile-menu-panel a,
  html body .mbm-mobile-services > summary{
    font-size:20px !important;
    padding:17px 0 !important;
  }
  html body .mbm-mobile-services > summary{
    border-bottom:1px solid #eee !important;
  }
  html body .mbm-mobile-submenu{
    padding:6px 0 8px 0 !important;
    border-bottom:1px solid #eee !important;
  }
  html body .mbm-mobile-submenu a{
    font-size:16px !important;
    padding:11px 0 11px 18px !important;
    font-weight:850 !important;
    border-bottom:0 !important;
    text-transform:uppercase !important;
  }
  html body .mbm-mobile-menu-panel a.mbm-mobile-menu-quote{
    height:58px !important;
    min-height:58px !important;
    margin:24px 0 0 !important;
    padding:0 18px !important;
    font-size:19px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
}


/* V210 - visible clickable lightbox arrows over gallery image */
.mbm-lightbox{
  padding:24px !important;
}
.mbm-lightbox figure{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  height:100% !important;
}
.mbm-lightbox img{
  max-width:min(96vw, 1320px) !important;
  max-height:calc(100vh - 110px) !important;
  object-fit:contain !important;
  box-shadow:0 20px 70px rgba(0,0,0,.55) !important;
}
.mbm-lb-prev,
.mbm-lb-next{
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px !important;
  height:58px !important;
  border-radius:999px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  background:rgba(0,0,0,.62) !important;
  border:2px solid rgba(255,255,255,.78) !important;
  color:#fff !important;
  font-size:54px !important;
  line-height:1 !important;
  font-weight:700 !important;
  z-index:10 !important;
  box-shadow:0 8px 26px rgba(0,0,0,.35) !important;
  transition:background .18s ease, border-color .18s ease, transform .18s ease !important;
}
.mbm-lb-prev{left:calc(50% - min(48vw, 660px) + 18px) !important;}
.mbm-lb-next{right:calc(50% - min(48vw, 660px) + 18px) !important;}
.mbm-lb-prev:hover,
.mbm-lb-next:hover,
.mbm-lb-prev:focus,
.mbm-lb-next:focus{
  background:var(--gold) !important;
  border-color:var(--gold) !important;
  outline:0 !important;
}
.mbm-lb-prev:active,
.mbm-lb-next:active{
  transform:translateY(-50%) scale(.96) !important;
}
.mbm-lb-count{
  position:absolute;
  top:10px;
  left:50%;
  transform:translateX(-50%);
  z-index:11;
  min-width:64px;
  padding:7px 12px;
  background:rgba(0,0,0,.68);
  color:#fff;
  border:1px solid rgba(255,255,255,.3);
  border-radius:999px;
  font-size:14px;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
  text-align:center;
}
.mbm-lb-close{
  background:rgba(0,0,0,.62) !important;
  border-radius:999px !important;
  border:2px solid rgba(255,255,255,.75) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  z-index:12 !important;
}
@media(max-width:560px){
  .mbm-lightbox{
    padding:16px 10px !important;
  }
  .mbm-lightbox img{
    max-width:100vw !important;
    max-height:calc(100vh - 98px) !important;
  }
  .mbm-lb-prev,
  .mbm-lb-next{
    width:48px !important;
    height:48px !important;
    font-size:46px !important;
    border-width:1px !important;
  }
  .mbm-lb-prev{left:12px !important;}
  .mbm-lb-next{right:12px !important;}
  .mbm-lb-count{
    top:12px;
    font-size:12px;
    padding:6px 10px;
  }
  .mbm-lightbox figcaption{
    max-width:92vw !important;
    font-size:12px !important;
    line-height:1.35 !important;
  }
}


/* V211 - inline service gallery navigation arrows */
.service-folder-card .folder-panel{
  position:relative !important;
}
.inline-gallery-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:25;
  width:46px;
  height:46px;
  border-radius:999px;
  border:2px solid rgba(255,255,255,.85);
  background:rgba(0,0,0,.58);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:42px;
  line-height:1;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.32);
  transition:background .18s ease, border-color .18s ease, transform .18s ease;
}
.inline-gallery-prev{left:16px;}
.inline-gallery-next{right:16px;}
.inline-gallery-arrow:hover,
.inline-gallery-arrow:focus{
  background:var(--gold);
  border-color:var(--gold);
  outline:0;
}
.inline-gallery-arrow:active{
  transform:translateY(-50%) scale(.96);
}
@media(max-width:768px){
  .inline-gallery-arrow{
    width:44px;
    height:44px;
    font-size:40px;
    border-width:1px;
  }
  .inline-gallery-prev{left:14px;}
  .inline-gallery-next{right:14px;}
}
@media(min-width:769px){
  .service-folder-card .folder-gallery:not(:hover) + .inline-gallery-next,
  .service-folder-card .folder-panel:not(:hover) .inline-gallery-arrow{
    opacity:.92;
  }
}


/* MBM V212 - Our Work portfolio hub */
.our-work-hero{
  position:relative !important;
  min-height:520px !important;
  display:flex !important;
  align-items:center !important;
  background-size:cover !important;
  background-position:center !important;
  color:#fff !important;
  overflow:hidden !important;
}
.our-work-hero-overlay{
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.42)) !important;
}
.our-work-hero-content{
  position:relative !important;
  z-index:2 !important;
  padding:82px 0 !important;
}
.our-work-hero h1{
  margin:0 !important;
  color:#fff !important;
  text-transform:uppercase !important;
  font-weight:1000 !important;
  letter-spacing:.01em !important;
  font-size:clamp(64px,10vw,128px) !important;
  line-height:.88 !important;
}
.our-work-hero p{
  max-width:760px !important;
  margin:26px 0 32px !important;
  color:#fff !important;
  font-size:clamp(22px,2.2vw,34px) !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}
.our-work-hero .intro-eyebrow{
  color:#e0a300 !important;
  margin-bottom:22px !important;
}
.our-work-hero-quote{
  display:inline-flex !important;
  min-width:300px !important;
  justify-content:center !important;
}
.our-work-services{
  background:#fff !important;
}
.our-work-service-grid.service-folder-grid.folder-accordion{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.our-work-service-grid .service-card-toggle.folder-toggle{
  min-height:245px !important;
}
@media(max-width:900px){
  .our-work-service-grid.service-folder-grid.folder-accordion{
    grid-template-columns:1fr !important;
  }
  .our-work-hero{
    min-height:470px !important;
  }
  .our-work-hero-content{
    padding:68px 0 !important;
  }
  .our-work-hero h1{
    font-size:64px !important;
  }
  .our-work-hero p{
    font-size:24px !important;
  }
  .our-work-hero-quote{
    width:100% !important;
  }
}

/* MBM-V214 - Services overview page route + polished image service cards */
.services-overview-hero .our-work-hero-content p{
  max-width:760px !important;
}
.services-overview-section{
  background:#fff !important;
}
.services-overview-grid.service-folder-grid.folder-accordion{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}
.services-overview-card.service-folder-card.folder-item{
  background:#fff !important;
  border:1px solid #e5e5e5 !important;
  box-shadow:0 18px 40px rgba(0,0,0,.08) !important;
  overflow:hidden !important;
  text-decoration:none !important;
  color:#111 !important;
}
.services-overview-card .service-card-toggle.folder-toggle{
  min-height:230px !important;
  border:0 !important;
}
.services-card-copy{
  display:block !important;
  padding:22px 22px 24px !important;
  background:#fff !important;
}
.services-card-copy strong{
  display:block !important;
  color:#111 !important;
  text-transform:uppercase !important;
  font-size:21px !important;
  line-height:1.1 !important;
  font-weight:1000 !important;
  letter-spacing:.02em !important;
  margin:0 0 10px !important;
}
.services-card-copy span{
  display:block !important;
  color:#333 !important;
  font-size:16px !important;
  line-height:1.5 !important;
  font-weight:500 !important;
  margin:0 0 16px !important;
}
.services-card-copy em{
  display:block !important;
  color:var(--gold2) !important;
  text-transform:uppercase !important;
  font-style:normal !important;
  font-weight:1000 !important;
  letter-spacing:.08em !important;
  font-size:13px !important;
}
.services-overview-card:hover .service-card-toggle,
.services-overview-card:focus-visible .service-card-toggle{
  filter:brightness(1.06) !important;
}
.services-overview-card:hover .services-card-copy em,
.services-overview-card:focus-visible .services-card-copy em{
  color:#111 !important;
}
@media(max-width:980px){
  .services-overview-grid.service-folder-grid.folder-accordion{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:700px){
  .services-overview-grid.service-folder-grid.folder-accordion{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .services-overview-card .service-card-toggle.folder-toggle{
    min-height:210px !important;
  }
  .services-card-copy{
    padding:20px 20px 22px !important;
  }
}

/* MBM-V217 - Services page image rows */
.services-overview-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:20px !important;
  margin-top:34px !important;
}
.services-overview-row{
  display:grid !important;
  grid-template-columns:minmax(280px,46%) 1fr !important;
  align-items:stretch !important;
  background:#fff !important;
  border:1px solid #e5e5e5 !important;
  box-shadow:0 18px 40px rgba(0,0,0,.075) !important;
  overflow:hidden !important;
  color:#111 !important;
  text-decoration:none !important;
}
.services-overview-row-image{
  display:block !important;
  min-height:245px !important;
  background:#111 !important;
  overflow:hidden !important;
}
.services-overview-row-image img{
  width:100% !important;
  height:100% !important;
  min-height:245px !important;
  object-fit:cover !important;
  transition:transform .28s ease, filter .28s ease !important;
}
.services-overview-row-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:38px 42px !important;
  background:#fff !important;
}
.services-overview-row-copy strong{
  display:block !important;
  color:#111 !important;
  text-transform:uppercase !important;
  font-size:28px !important;
  line-height:1.08 !important;
  font-weight:1000 !important;
  letter-spacing:.02em !important;
  margin:0 0 16px !important;
}
.services-overview-row-copy span{
  display:block !important;
  color:#333 !important;
  font-size:20px !important;
  line-height:1.52 !important;
  font-weight:500 !important;
  margin:0 0 22px !important;
}
.services-overview-row-copy em{
  display:block !important;
  color:var(--gold2) !important;
  text-transform:uppercase !important;
  font-style:normal !important;
  font-weight:1000 !important;
  letter-spacing:.08em !important;
  font-size:15px !important;
}
.services-overview-row:hover .services-overview-row-image img,
.services-overview-row:focus-visible .services-overview-row-image img{
  transform:scale(1.035) !important;
  filter:brightness(1.04) !important;
}
.services-overview-row:hover .services-overview-row-copy em,
.services-overview-row:focus-visible .services-overview-row-copy em{
  color:#111 !important;
}
@media(max-width:900px){
  .services-overview-row{
    grid-template-columns:1fr !important;
  }
  .services-overview-row-image,
  .services-overview-row-image img{
    min-height:255px !important;
  }
  .services-overview-row-copy{
    padding:32px 34px 36px !important;
  }
  .services-overview-row-copy strong{
    font-size:30px !important;
  }
  .services-overview-row-copy span{
    font-size:22px !important;
    line-height:1.5 !important;
  }
}
@media(max-width:520px){
  .services-overview-list{
    gap:24px !important;
  }
  .services-overview-row-image,
  .services-overview-row-image img{
    min-height:215px !important;
  }
  .services-overview-row-copy{
    padding:26px 26px 30px !important;
  }
  .services-overview-row-copy strong{
    font-size:26px !important;
  }
  .services-overview-row-copy span{
    font-size:20px !important;
  }
}

/* MBM-V218 - Ensure service overview cards show correlated hero images */
.services-overview-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:28px !important;
  margin-top:34px !important;
}
.services-overview-row{
  display:grid !important;
  grid-template-columns:minmax(320px,44%) minmax(0,1fr) !important;
  align-items:stretch !important;
  background:#fff !important;
  border:1px solid #e5e5e5 !important;
  box-shadow:0 18px 40px rgba(0,0,0,.075) !important;
  overflow:hidden !important;
  color:#111 !important;
  text-decoration:none !important;
}
.services-overview-row-image{
  display:block !important;
  width:100% !important;
  min-height:260px !important;
  background:#111 !important;
  overflow:hidden !important;
}
.services-overview-row-image img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:260px !important;
  object-fit:cover !important;
  transition:transform .28s ease, filter .28s ease !important;
}
.services-overview-row-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:38px 42px !important;
  background:#fff !important;
}
.services-overview-row-copy strong{
  display:block !important;
  color:#111 !important;
  text-transform:uppercase !important;
  font-size:28px !important;
  line-height:1.08 !important;
  font-weight:1000 !important;
  letter-spacing:.02em !important;
  margin:0 0 16px !important;
}
.services-overview-row-copy span{
  display:block !important;
  color:#333 !important;
  font-size:20px !important;
  line-height:1.52 !important;
  font-weight:500 !important;
  margin:0 0 22px !important;
}
.services-overview-row-copy em{
  display:block !important;
  color:var(--gold2) !important;
  text-transform:uppercase !important;
  font-style:normal !important;
  font-weight:1000 !important;
  letter-spacing:.08em !important;
  font-size:15px !important;
}
.services-overview-row:hover .services-overview-row-image img,
.services-overview-row:focus-visible .services-overview-row-image img{
  transform:scale(1.035) !important;
  filter:brightness(1.04) !important;
}
.services-overview-row:hover .services-overview-row-copy em,
.services-overview-row:focus-visible .services-overview-row-copy em{
  color:#111 !important;
}
@media(max-width:900px){
  .services-overview-row{
    grid-template-columns:1fr !important;
  }
  .services-overview-row-image,
  .services-overview-row-image img{
    min-height:255px !important;
  }
  .services-overview-row-copy{
    padding:32px 34px 36px !important;
  }
  .services-overview-row-copy strong{
    font-size:30px !important;
  }
  .services-overview-row-copy span{
    font-size:22px !important;
    line-height:1.5 !important;
  }
}
@media(max-width:520px){
  .services-overview-list{
    gap:24px !important;
  }
  .services-overview-row-image,
  .services-overview-row-image img{
    min-height:215px !important;
  }
  .services-overview-row-copy{
    padding:26px 26px 30px !important;
  }
  .services-overview-row-copy strong{
    font-size:26px !important;
  }
  .services-overview-row-copy span{
    font-size:20px !important;
  }
}

/* V219 - Desktop-only homepage enhancements. Mobile view intentionally unchanged. */
.desktop-only-section{display:none;}
.desktop-service-desc{display:none;}
@media (min-width:981px){
  body.home .service-gallery-section{padding:86px 0 96px !important;}
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:30px !important;
    margin-top:42px !important;
  }
  body.home .service-folder-card.folder-item{background:#fff !important; box-shadow:0 16px 38px rgba(0,0,0,.10) !important;}
  body.home .service-card-toggle.folder-toggle{
    min-height:360px !important;
    align-items:flex-start !important;
    justify-content:flex-end !important;
    text-align:left !important;
    padding:0 !important;
    overflow:hidden !important;
    position:relative !important;
    border:0 !important;
    box-shadow:inset 0 -190px 120px rgba(0,0,0,.72) !important;
  }
  body.home .service-card-toggle.folder-toggle::before{display:none !important;}
  body.home .service-card-title{
    width:100% !important;
    padding:0 26px !important;
    font-size:30px !important;
    line-height:1.05 !important;
    text-shadow:0 2px 10px rgba(0,0,0,.65) !important;
  }
  body.home .service-card-subtitle{
    order:5 !important;
    display:inline-flex !important;
    margin:18px 26px 28px !important;
    padding:13px 18px !important;
    background:var(--gold2) !important;
    color:#fff !important;
    font-size:13px !important;
    letter-spacing:.08em !important;
    line-height:1 !important;
  }
  body.home .service-card-subtitle::after{content:" →";}
  body.home .desktop-service-desc{
    display:block !important;
    padding:12px 26px 0 !important;
    color:#efefef !important;
    font-size:16px !important;
    line-height:1.45 !important;
    max-width:92% !important;
    text-shadow:0 2px 8px rgba(0,0,0,.75) !important;
  }
  body.home .service-card-toggle .folder-chevron{display:none !important;}
  body.home .desktop-only-section{display:block;}
  body.home .desktop-section-title{
    margin:0 0 34px !important;
    text-transform:uppercase !important;
    font-size:46px !important;
    line-height:1 !important;
    font-weight:1000 !important;
    letter-spacing:.01em !important;
    text-align:center !important;
  }
  body.home .desktop-why-choose{background:#fff; padding:74px 0 44px;}
  body.home .desktop-trust-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  body.home .desktop-trust-card{border:1px solid #e3e3e3; background:#fafafa; padding:26px 24px; min-height:150px;}
  body.home .desktop-trust-card strong{display:block; text-transform:uppercase; font-weight:1000; font-size:18px; margin-bottom:12px; color:#111;}
  body.home .desktop-trust-card strong::before{content:"✓"; color:var(--gold2); margin-right:10px;}
  body.home .desktop-trust-card span{display:block; color:#444; font-size:15px; line-height:1.55;}
  body.home .desktop-testimonials{background:#f6f6f6; padding:68px 0;}
  body.home .desktop-testimonial-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  body.home .desktop-testimonial-grid blockquote{margin:0; background:#fff; padding:30px 28px; border-left:5px solid var(--gold2); min-height:190px; box-shadow:0 12px 28px rgba(0,0,0,.07);}
  body.home .desktop-testimonial-grid span{display:block; color:var(--gold2); font-weight:1000; letter-spacing:.08em; margin-bottom:14px;}
  body.home .desktop-testimonial-grid p{margin:0; color:#333; font-size:17px; line-height:1.65;}
  body.home .desktop-home-faq{background:#fff; padding:74px 0 84px;}
  body.home .desktop-faq-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:22px 28px; max-width:1100px; margin:0 auto;}
  body.home .desktop-faq-grid div{border-top:3px solid var(--gold2); background:#f8f8f8; padding:24px 26px;}
  body.home .desktop-faq-grid h3{margin:0 0 10px; text-transform:uppercase; font-size:18px; line-height:1.2;}
  body.home .desktop-faq-grid p{margin:0; color:#444; font-size:16px; line-height:1.6;}
}
@media (max-width:980px){
  .desktop-only-section{display:none !important;}
  .desktop-service-desc{display:none !important;}
}

/* MBM-V220 - Competitor-informed conversion, trust, and local SEO upgrades */
@media (min-width:981px){
  body.home .mbm-credibility-strip{display:block;background:#080808;color:#fff;border-top:5px solid var(--gold2);border-bottom:1px solid #1a1a1a;}
  body.home .mbm-credibility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;}
  body.home .mbm-credibility-grid div{min-height:118px;padding:24px 26px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(224,162,11,.34);}
  body.home .mbm-credibility-grid div:first-child{border-left:0;}
  body.home .mbm-credibility-grid strong{display:block;text-transform:uppercase;font-size:18px;line-height:1.15;font-weight:1000;letter-spacing:.025em;color:#fff;margin-bottom:8px;}
  body.home .mbm-credibility-grid span{display:block;color:#d8d8d8;font-size:15px;line-height:1.45;}
  body.home .mbm-home-process{background:#101010;color:#fff;padding:80px 0 86px;}
  body.home .mbm-process-heading{max-width:820px;margin:0 auto 42px;text-align:center;}
  body.home .mbm-process-heading span,
  body.home .mbm-intent-kicker{display:block;color:var(--gold2);font-weight:1000;text-transform:uppercase;letter-spacing:.12em;font-size:14px;margin-bottom:13px;}
  body.home .mbm-process-heading h2{margin:0;text-transform:uppercase;font-weight:1000;font-size:48px;line-height:1;letter-spacing:.01em;}
  body.home .mbm-process-heading p{margin:18px auto 0;color:#d6d6d6;font-size:18px;line-height:1.6;max-width:720px;}
  body.home .mbm-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
  body.home .mbm-process-grid div{background:#fff;color:#111;padding:28px 24px 30px;min-height:235px;border-bottom:5px solid var(--gold2);}
  body.home .mbm-process-grid b{display:block;color:var(--gold2);font-size:34px;line-height:1;font-weight:1000;margin-bottom:18px;}
  body.home .mbm-process-grid strong{display:block;text-transform:uppercase;font-size:19px;line-height:1.16;font-weight:1000;margin-bottom:12px;}
  body.home .mbm-process-grid span{display:block;color:#444;font-size:15px;line-height:1.58;}
  body.home .mbm-home-service-intent{background:#f4f4f4;padding:76px 0;}
  body.home .mbm-intent-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;}
  body.home .mbm-intent-grid>div{background:#fff;padding:42px 42px 44px;border:1px solid #e3e3e3;box-shadow:0 16px 38px rgba(0,0,0,.07);}
  body.home .mbm-intent-grid h2{margin:0 0 18px;text-transform:uppercase;font-size:32px;line-height:1.1;font-weight:1000;color:#111;}
  body.home .mbm-intent-grid p{margin:0;color:#3c3c3c;font-size:17px;line-height:1.62;}
  body.home .mbm-home-local-seo{background:#fff;padding:74px 0 82px;text-align:center;}
  body.home .mbm-home-local-seo p{max-width:980px;margin:-16px auto 30px;color:#333;font-size:18px;line-height:1.65;}
  body.home .mbm-local-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:980px;margin:0 auto;}
  body.home .mbm-local-link-grid a{display:flex;align-items:center;justify-content:center;min-height:58px;padding:14px 18px;background:#111;color:#fff;text-transform:uppercase;font-weight:1000;font-size:15px;letter-spacing:.035em;border:1px solid #111;}
  body.home .mbm-local-link-grid a:hover{background:var(--gold2);border-color:var(--gold2);}
  body.home .desktop-why-choose{padding-top:78px!important;}
}
@media (max-width:980px){
  .mbm-credibility-strip{display:none!important;}
}


/* MBM-V221 - Mobile conversion + PHP schema fix companion styles */
.mbm-social-proof{background:#f5f5f5;border-top:1px solid #e7e7e7;border-bottom:1px solid #e1e1e1;}
.mbm-social-proof-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
.mbm-social-proof-inner>div{padding:26px 28px;border-left:1px solid #ddd;}
.mbm-social-proof-inner>div:first-child{border-left:0;}
.mbm-social-proof strong{display:block;text-transform:uppercase;font-size:22px;font-weight:1000;line-height:1.08;color:#111;margin-bottom:8px;}
.mbm-social-proof span{display:block;font-size:15px;line-height:1.48;color:#444;}
.mbm-section-kicker{display:block;color:var(--gold2);font-size:14px;font-weight:1000;text-transform:uppercase;letter-spacing:.13em;margin-bottom:14px;}
.mbm-why-choose-v221{background:#fff;padding-top:58px!important;}
.mbm-why-grid-v221{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px;}
.mbm-why-grid-v221>div{background:#101010;color:#fff;padding:26px 24px 28px;border-bottom:5px solid var(--gold2);min-height:190px;}
.mbm-why-grid-v221 strong{display:block;text-transform:uppercase;font-size:18px;line-height:1.15;font-weight:1000;margin-bottom:12px;}
.mbm-why-grid-v221 span{display:block;color:#ddd;font-size:15px;line-height:1.55;}
.mbm-cta-v221 .wrap{align-items:center!important;}
.mbm-cta-copy{display:flex;flex-direction:column;gap:8px;}
.mbm-cta-copy strong{display:block!important;}
.mbm-cta-copy span{display:block;color:#ddd;font-size:17px;line-height:1.4;max-width:620px;}
.mbm-cta-actions{display:flex;gap:14px;align-items:center;}

@media (min-width:981px){
  body.home .hero-title-v221{max-width:1040px!important;}
  body.home .hero-title-v221 .hero-title-line{display:block!important;}
  body.home .hero-title-v221 .hero-title-line:nth-child(3){font-size:.72em!important;line-height:1.02!important;}
}

@media (max-width:980px){
  body.home .hero{min-height:70vh!important;max-height:760px!important;background-position:center center!important;align-items:flex-end!important;}
  body.home .hero-content{padding:70px 32px 34px!important;width:100%!important;}
  body.home .hero-title{font-size:42px!important;line-height:.98!important;letter-spacing:.015em!important;margin:0 0 18px!important;}
  body.home .hero-title-v221 .hero-title-line{display:block!important;}
  body.home .hero-title-v221 .hero-title-line:nth-child(3){font-size:30px!important;line-height:1.04!important;max-width:680px!important;}
  body.home .lead{font-size:20px!important;line-height:1.38!important;max-width:620px!important;margin-bottom:26px!important;}
  body.home .hero-cta-stack{gap:14px!important;}
  body.home .hero-quote,.hero-secondary-cta{height:58px!important;font-size:16px!important;}
  body.home .mbm-credibility-strip{display:block!important;background:#080808;color:#fff;border-top:4px solid var(--gold2);}
  body.home .mbm-credibility-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;width:100%!important;}
  body.home .mbm-credibility-grid div{padding:18px 16px!important;min-height:108px!important;border-left:1px solid rgba(224,162,11,.32)!important;border-top:1px solid rgba(224,162,11,.22)!important;}
  body.home .mbm-credibility-grid div:nth-child(odd){border-left:0!important;}
  body.home .mbm-credibility-grid strong{font-size:14px!important;line-height:1.2!important;margin-bottom:7px!important;color:#fff!important;text-transform:uppercase!important;}
  body.home .mbm-credibility-grid span{font-size:13px!important;line-height:1.35!important;color:#e4e4e4!important;}
  .mbm-social-proof-inner{grid-template-columns:1fr!important;width:100%!important;}
  .mbm-social-proof-inner>div{padding:20px 22px!important;border-left:0!important;border-top:1px solid #dedede!important;}
  .mbm-social-proof-inner>div:first-child{border-top:0!important;}
  body.home .service-gallery-section{padding:42px 0 34px!important;}
  body.home .service-grid-intro{font-size:17px!important;line-height:1.45!important;margin-bottom:20px!important;}
  body.home .folder-accordion.service-folder-grid{gap:18px!important;}
  body.home .service-folder-card .folder-toggle{min-height:230px!important;}
  body.home .service-card-title{font-size:34px!important;line-height:1.02!important;}
  body.home .service-card-subtitle{font-size:17px!important;}
  body.home .mbm-why-choose-v221{padding:46px 0 48px!important;}
  body.home .mbm-why-choose-v221 .section-title{font-size:38px!important;line-height:1.02!important;margin-bottom:0!important;}
  body.home .mbm-why-grid-v221{grid-template-columns:1fr!important;gap:14px!important;margin-top:26px!important;}
  body.home .mbm-why-grid-v221>div{min-height:auto!important;padding:22px 22px 24px!important;}
  body.home .intro.section{padding-top:42px!important;}
  body.home .intro-copy h2{font-size:38px!important;line-height:1.04!important;}
  body.home .intro-copy p{font-size:22px!important;line-height:1.52!important;}
  body.home .about-services-btn{height:62px!important;font-size:17px!important;}
  .mbm-cta-v221{padding:36px 0 34px!important;}
  .mbm-cta-v221 .wrap{display:block!important;}
  .mbm-cta-copy strong{font-size:38px!important;line-height:1!important;}
  .mbm-cta-copy span{font-size:17px!important;margin-top:10px!important;}
  .mbm-cta-actions{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;margin-top:24px!important;}
  .mbm-cta-v221 .btn{height:62px!important;width:100%!important;font-size:18px!important;}
  body.home:after{content:"";display:block;height:0;}
  body.home .mbm-sticky-call-v221{display:none!important;}
}

@media (max-width:430px){
  body.home .hero{min-height:650px!important;}
  body.home .hero-content{padding:64px 24px 30px!important;}
  body.home .hero-title{font-size:39px!important;}
  body.home .hero-title-v221 .hero-title-line:nth-child(3){font-size:28px!important;}
  body.home .lead{font-size:19px!important;}
  body.home .service-folder-card .folder-toggle{min-height:210px!important;}
  body.home .service-card-title{font-size:30px!important;}
}

.mbm-sticky-call-v221{display:none;position:fixed;left:0;right:0;bottom:0;z-index:99998;background:#060606;border-top:3px solid var(--gold2);padding:10px 12px;gap:10px;box-shadow:0 -10px 28px rgba(0,0,0,.3);}
.mbm-sticky-call-v221 a{flex:1;display:flex;align-items:center;justify-content:center;height:52px;text-transform:uppercase;font-weight:1000;font-size:14px;letter-spacing:.04em;color:#fff!important;}
.mbm-sticky-call-v221 a:first-child{background:linear-gradient(180deg,#d99a06,#bd7d00);}
.mbm-sticky-call-v221 a:last-child{border:1px solid var(--gold2);background:#111;}


/* MBM-V222 - mobile refinement: tighter hero, clean trust cards, non-blocking floating call */
.mbm-sticky-call-v221{display:none!important;}
.mbm-sticky-call-v222{display:none;}

body.home .mbm-credibility-grid strong,
body.home .mbm-credibility-grid span{display:block!important;clear:both!important;}
body.home .mbm-credibility-grid strong{margin-bottom:10px!important;}
body.home .mbm-credibility-grid div{gap:8px!important;overflow-wrap:normal!important;word-break:normal!important;}

.mbm-proof-stats-v222 strong{letter-spacing:.02em;}

@media (max-width:760px){
  body.home .hero{min-height:62vh!important;max-height:640px!important;background-position:center center!important;}
  body.home .hero-content{padding:54px 24px 28px!important;}
  body.home .hero-title{font-size:38px!important;line-height:1!important;margin-bottom:16px!important;}
  body.home .hero-title-v221 .hero-title-line:nth-child(3){font-size:27px!important;line-height:1.06!important;}
  body.home .lead{font-size:18px!important;line-height:1.42!important;margin-bottom:24px!important;}
  body.home .hero-quote,.hero-secondary-cta{height:56px!important;font-size:15px!important;}

  body.home .mbm-credibility-grid{grid-template-columns:1fr 1fr!important;}
  body.home .mbm-credibility-grid div{padding:20px 18px!important;min-height:118px!important;align-items:flex-start!important;justify-content:flex-start!important;}
  body.home .mbm-credibility-grid strong{font-size:15px!important;line-height:1.22!important;margin-bottom:10px!important;letter-spacing:.02em!important;}
  body.home .mbm-credibility-grid span{font-size:14px!important;line-height:1.42!important;color:#e6e6e6!important;max-width:100%!important;}

  .mbm-social-proof-inner>div{padding:22px 24px!important;}
  .mbm-social-proof strong{font-size:21px!important;line-height:1.12!important;margin-bottom:8px!important;}
  .mbm-social-proof span{font-size:17px!important;line-height:1.45!important;}

  body.home .service-folder-card .folder-toggle{min-height:184px!important;}
  body.home .service-card-title{font-size:28px!important;line-height:1.03!important;}
  body.home .service-card-subtitle{font-size:15px!important;}
  body.home .folder-accordion{gap:18px!important;}

  body.home .mbm-why-choose-v221 .section-title{font-size:36px!important;line-height:1.02!important;}
  body.home .mbm-why-grid-v221>div{padding:22px!important;}

  body.home .mbm-sticky-call-v222{position:fixed;right:16px;bottom:16px;z-index:99998;display:none;}
  body.home.mbm-sticky-ready .mbm-sticky-call-v222{display:block;}
  body.home .mbm-sticky-call-v222 a{display:flex;align-items:center;justify-content:center;width:74px;height:74px;border-radius:999px;background:linear-gradient(180deg,#d99a06,#bd7d00);color:#fff!important;text-transform:uppercase;text-decoration:none;font-weight:1000;font-size:14px;letter-spacing:.04em;box-shadow:0 10px 26px rgba(0,0,0,.36);border:2px solid rgba(255,255,255,.9);}
}

@media (max-width:430px){
  body.home .hero{min-height:590px!important;}
  body.home .hero-title{font-size:37px!important;}
  body.home .hero-title-v221 .hero-title-line:nth-child(3){font-size:26px!important;}
}

/* MBM-V224 - desktop inspection fixes: compact nav, dropdown services, tighter desktop rhythm */
@media (min-width:981px){
  html body .site-header,
  html body header.site-header.mbm-clean-header-v18{
    height:116px !important;
    min-height:116px !important;
    margin-bottom:-14px !important;
    clip-path:none !important;
    overflow:visible !important;
    position:relative !important;
    z-index:10000 !important;
    border-bottom:1px solid rgba(0,0,0,.06) !important;
  }
  html body .header-inner{
    width:min(1540px,calc(100% - 64px)) !important;
    height:116px !important;
    min-height:116px !important;
    display:grid !important;
    grid-template-columns:176px minmax(0,1fr) 214px !important;
    gap:28px !important;
    align-items:center !important;
    padding-top:0 !important;
  }
  html body .site-logo{align-items:center !important; height:116px !important;}
  html body .site-logo img{
    width:132px !important;
    max-height:98px !important;
    object-fit:contain !important;
  }
  html body .primary-nav{
    width:100% !important;
    justify-self:center !important;
    align-self:center !important;
    padding-top:0 !important;
    min-width:0 !important;
    overflow:visible !important;
  }
  html body .menu.mbm-desktop-menu-v224{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:clamp(22px,2.25vw,42px) !important;
    font-size:15px !important;
    letter-spacing:.055em !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  html body .menu.mbm-desktop-menu-v224 > li{position:relative !important; display:flex !important; align-items:center !important;}
  html body .menu.mbm-desktop-menu-v224 > li > a{
    padding:18px 0 !important;
    border-bottom:3px solid transparent !important;
  }
  html body .menu.mbm-desktop-menu-v224 > li > a:hover,
  html body .menu.mbm-desktop-menu-v224 > li:hover > a,
  html body .menu.mbm-desktop-menu-v224 > li > a.active{
    border-bottom-color:var(--gold2) !important;
  }
  html body .mbm-menu-has-dropdown > a::after{
    content:"";
    display:inline-block;
    margin-left:8px;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
    border-top:5px solid #111;
    transform:translateY(-2px);
  }
  html body .mbm-services-dropdown{
    position:absolute !important;
    top:100% !important;
    left:50% !important;
    transform:translateX(-50%) translateY(10px) !important;
    width:270px !important;
    margin:0 !important;
    padding:10px 0 !important;
    list-style:none !important;
    background:#fff !important;
    border-top:4px solid var(--gold2) !important;
    box-shadow:0 22px 45px rgba(0,0,0,.18) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:opacity .18s ease, transform .18s ease, visibility .18s ease !important;
    z-index:10020 !important;
  }
  html body .mbm-menu-has-dropdown:hover .mbm-services-dropdown,
  html body .mbm-menu-has-dropdown:focus-within .mbm-services-dropdown{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }
  html body .mbm-services-dropdown li{display:block !important; width:100% !important;}
  html body .mbm-services-dropdown a{
    display:block !important;
    padding:13px 18px !important;
    border:0 !important;
    color:#111 !important;
    font-size:13px !important;
    line-height:1.12 !important;
    letter-spacing:.04em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }
  html body .mbm-services-dropdown a:hover{background:#111 !important;color:#fff !important;}
  html body .header-quote{
    width:206px !important;
    height:56px !important;
    margin-top:0 !important;
    padding:0 18px !important;
    font-size:15px !important;
    line-height:1.1 !important;
    box-shadow:0 12px 26px rgba(166,106,0,.20) !important;
  }
  html body .hamb{display:none !important;}

  body.home .hero{
    height:640px !important;
    min-height:640px !important;
    padding-top:0 !important;
    background-size:cover !important;
    background-position:center center !important;
  }
  body.home .hero-content{
    padding-top:124px !important;
    padding-left:64px !important;
  }
  body.home .hero h1,
  body.home .hero-title-v221{
    font-size:54px !important;
    max-width:740px !important;
    line-height:.98 !important;
    letter-spacing:.055em !important;
  }
  body.home .hero-title-v221 .hero-title-line:nth-child(3){font-size:.72em !important;}
  body.home .lead{font-size:19px !important;line-height:1.42 !important;max-width:570px !important;margin-bottom:28px !important;}
  body.home .gold-rule{width:136px !important;margin:26px 0 24px !important;}
  body.home .hero-cta-stack{display:flex !important;gap:22px !important;align-items:center !important;}
  body.home .hero-quote,
  body.home .hero-secondary-cta{height:58px !important;min-width:280px !important;width:280px !important;font-size:17px !important;}

  body.home .mbm-credibility-strip{border-top:4px solid var(--gold2) !important;}
  body.home .mbm-credibility-grid div{min-height:108px !important;padding:22px 30px !important;}
  body.home .mbm-credibility-grid strong{font-size:18px !important;line-height:1.12 !important;margin-bottom:10px !important;}
  body.home .mbm-credibility-grid span{font-size:15px !important;line-height:1.45 !important;}
  body.home .mbm-service-area-strip{padding:14px 0 !important;}

  body.home .service-gallery-section{padding:76px 0 54px !important;background:#fff !important;}
  body.home .service-gallery-section .section-title{font-size:54px !important;line-height:.98 !important;margin-bottom:36px !important;max-width:1180px !important;}
  body.home .service-grid-intro{display:none !important;}
  body.home .folder-accordion.service-folder-grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:30px !important;margin-top:0 !important;}
  body.home .service-folder-card .folder-toggle{min-height:330px !important;}
  body.home .service-card-title{font-size:28px !important;line-height:1.05 !important;}
  body.home .desktop-service-desc{font-size:15px !important;line-height:1.42 !important;max-width:94% !important;}
  body.home .service-card-subtitle{font-size:13px !important;}

  body.home .mbm-why-choose-v221{padding:78px 0 72px !important;background:#fff !important;}
  body.home .mbm-why-choose-v221 .section-title{font-size:40px !important;line-height:1.04 !important;margin-bottom:28px !important;}
  body.home .mbm-why-grid-v221{grid-template-columns:repeat(4,1fr) !important;gap:18px !important;margin-top:28px !important;}
  body.home .mbm-why-grid-v221>div{min-height:155px !important;padding:24px 22px !important;}
  body.home .mbm-why-grid-v221 strong{font-size:17px !important;}
  body.home .mbm-why-grid-v221 span{font-size:14px !important;}

  body.home .intro.about-no-image{padding:76px 0 84px !important;}
  body.home .intro-no-image{max-width:1010px !important;}
  body.home .about-section-title{font-size:44px !important;}
  body.home .intro-copy h2{font-size:34px !important;line-height:1.08 !important;max-width:920px !important;}
  body.home .intro-copy p{font-size:18px !important;line-height:1.65 !important;}

  body.home .mbm-home-process{padding:82px 0 86px !important;}
  body.home .mbm-process-heading h2{font-size:46px !important;line-height:1 !important;}
  body.home .mbm-process-grid{gap:18px !important;}
  body.home .mbm-process-grid div{min-height:205px !important;}

  body.home .mbm-home-service-intent{padding:68px 0 !important;}
  body.home .mbm-home-local-seo{padding:74px 0 66px !important;}
  body.home .desktop-why-choose{display:none !important;}

  body.home .desktop-testimonials{padding:66px 0 !important;background:#f5f5f5 !important;}
  body.home .mbm-project-confidence-v224 .desktop-section-title{font-size:42px !important;margin-bottom:30px !important;}
  body.home .mbm-project-confidence-v224 .desktop-testimonial-grid blockquote{min-height:178px !important;border-left:4px solid var(--gold2) !important;}
  body.home .mbm-project-confidence-v224 .desktop-testimonial-grid span{color:#111 !important;letter-spacing:.04em !important;text-transform:uppercase !important;font-size:16px !important;}

  body.home .desktop-home-faq{padding:68px 0 76px !important;}
  body.home .desktop-home-faq .desktop-section-title{font-size:42px !important;margin-bottom:30px !important;}

  html body .cta.mbm-cta-v221{padding:34px 0 !important;}
  html body .cta.mbm-cta-v221 .wrap{display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;gap:40px !important;align-items:center !important;}
  html body .mbm-cta-copy strong{font-size:34px !important;line-height:1 !important;}
  html body .mbm-cta-actions{gap:16px !important;}
  html body .mbm-cta-v221 .btn{height:54px !important;min-width:240px !important;}
}

@media (min-width:981px) and (max-width:1180px){
  html body .header-inner{grid-template-columns:145px minmax(0,1fr) 176px !important;width:calc(100% - 38px) !important;gap:18px !important;}
  html body .site-logo img{width:112px !important;}
  html body .menu.mbm-desktop-menu-v224{gap:18px !important;font-size:13px !important;letter-spacing:.035em !important;}
  html body .header-quote{width:172px !important;font-size:13px !important;}
  body.home .hero-content{padding-left:42px !important;}
}

/* MBM-V230 - premium desktop production polish. Mobile layout intentionally preserved. */
@media (min-width:981px){
  :root{
    --mbm-max-desktop:1480px;
    --mbm-section-y:104px;
    --mbm-card-shadow:0 22px 55px rgba(0,0,0,.12);
    --mbm-card-shadow-hover:0 30px 70px rgba(0,0,0,.18);
  }

  body.home .wrap,
  html body .footer .wrap,
  html body .cta .wrap{
    width:min(var(--mbm-max-desktop),calc(100% - 96px)) !important;
  }

  /* Desktop typography rhythm */
  body.home .section-title,
  body.home .desktop-section-title{
    font-size:clamp(42px,3.55vw,58px) !important;
    line-height:.98 !important;
    letter-spacing:-.025em !important;
    max-width:1120px !important;
  }
  body.home p{
    text-wrap:pretty;
  }
  body.home .mbm-section-kicker,
  body.home .intro-eyebrow,
  body.home .mbm-process-heading span,
  body.home .mbm-intent-kicker{
    letter-spacing:.14em !important;
    font-weight:1000 !important;
  }

  /* Hero */
  body.home .hero{
    height:674px !important;
    min-height:674px !important;
    background-position:center center !important;
  }
  body.home .hero-overlay{
    background:
      radial-gradient(circle at 76% 40%,rgba(0,0,0,.04),rgba(0,0,0,.35) 42%,rgba(0,0,0,.88) 80%),
      linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.90) 22%,rgba(0,0,0,.58) 45%,rgba(0,0,0,.12) 72%,rgba(0,0,0,0) 100%) !important;
  }
  body.home .hero-content{
    width:min(var(--mbm-max-desktop),calc(100% - 96px)) !important;
    padding-left:0 !important;
    padding-top:134px !important;
  }
  body.home .hero h1,
  body.home .hero-title-v221{
    font-size:clamp(58px,4.9vw,78px) !important;
    max-width:790px !important;
    line-height:.96 !important;
    letter-spacing:.045em !important;
    margin:0 !important;
  }
  body.home .hero-title-v221 .hero-title-line:nth-child(3){
    font-size:.78em !important;
    letter-spacing:.06em !important;
  }
  body.home .lead{
    font-size:22px !important;
    max-width:680px !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-hero-proof{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;
    margin:0 0 34px !important;
    max-width:760px !important;
  }
  body.home .mbm-hero-proof span{
    display:inline-flex !important;
    align-items:center !important;
    min-height:34px !important;
    padding:0 13px !important;
    border:1px solid rgba(217,154,6,.42) !important;
    background:rgba(0,0,0,.42) !important;
    color:#fff !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:1000 !important;
    letter-spacing:.075em !important;
    text-transform:uppercase !important;
  }
  body.home .mbm-hero-proof span::before{
    content:'✓';
    color:var(--gold2);
    margin-right:8px;
    font-weight:1000;
  }
  body.home .hero-quote,
  body.home .hero-secondary-cta,
  html body .btn,
  html body .about-services-btn,
  html body .header-quote{
    border-radius:8px !important;
  }
  body.home .hero-quote,
  body.home .hero-secondary-cta{
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease !important;
  }
  body.home .hero-quote:hover,
  body.home .hero-secondary-cta:hover{
    transform:translateY(-2px) !important;
  }
  body.home .hero-quote{
    box-shadow:0 18px 38px rgba(217,154,6,.25) !important;
  }

  /* Trust strip */
  body.home .mbm-credibility-grid{
    width:min(var(--mbm-max-desktop),calc(100% - 96px)) !important;
    gap:0 !important;
  }
  body.home .mbm-credibility-grid div{
    position:relative !important;
    padding:26px 34px 24px !important;
  }
  body.home .mbm-credibility-grid div::before{
    content:'✓';
    display:block;
    color:var(--gold2);
    font-size:22px;
    line-height:1;
    margin-bottom:12px;
    font-weight:1000;
  }
  body.home .mbm-credibility-grid strong{
    font-size:18px !important;
    letter-spacing:.045em !important;
  }
  body.home .mbm-credibility-grid span{
    font-size:15px !important;
    max-width:310px !important;
  }

  /* Service cards */
  body.home .service-gallery-section{
    padding:var(--mbm-section-y) 0 78px !important;
  }
  body.home .service-gallery-section .section-title{
    max-width:1260px !important;
    margin-bottom:18px !important;
  }
  body.home .service-grid-intro{
    display:block !important;
    max-width:760px !important;
    margin:0 0 46px !important;
    color:#5a5a5a !important;
    font-size:19px !important;
    line-height:1.55 !important;
  }
  body.home .folder-accordion.service-folder-grid{
    gap:32px !important;
  }
  body.home .service-folder-card{
    border-radius:2px !important;
    box-shadow:var(--mbm-card-shadow) !important;
    transition:transform .22s ease, box-shadow .22s ease, filter .22s ease !important;
    overflow:hidden !important;
  }
  body.home .service-folder-card:hover{
    transform:translateY(-6px) !important;
    box-shadow:var(--mbm-card-shadow-hover) !important;
    filter:saturate(1.04) contrast(1.02) !important;
  }
  body.home .service-folder-card .folder-toggle{
    min-height:352px !important;
    padding:34px !important;
  }
  body.home .service-card-title{
    font-size:31px !important;
  }
  body.home .service-card-subtitle{
    display:inline-flex !important;
    align-items:center !important;
    width:max-content !important;
    margin-top:8px !important;
    padding:9px 13px !important;
    background:rgba(217,154,6,.92) !important;
    color:#111 !important;
    font-size:12px !important;
    letter-spacing:.09em !important;
  }
  body.home .service-card-subtitle::after{
    content:'→';
    margin-left:8px;
  }
  body.home .desktop-service-desc{
    margin-top:auto !important;
    padding-top:18px !important;
    font-size:16px !important;
    line-height:1.48 !important;
  }

  /* Featured project cards */
  body.home .mbm-featured-projects-v230{
    display:block !important;
    padding:96px 0 !important;
    background:#101010 !important;
    color:#fff !important;
  }
  body.home .mbm-featured-heading{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(360px,520px) !important;
    gap:58px !important;
    align-items:end !important;
    margin-bottom:40px !important;
  }
  body.home .mbm-featured-heading .mbm-section-kicker{
    grid-column:1/-1;
    color:var(--gold2) !important;
    margin-bottom:-28px !important;
  }
  body.home .mbm-featured-heading .desktop-section-title{
    color:#fff !important;
    margin:0 !important;
  }
  body.home .mbm-featured-heading p{
    color:#d6d6d6 !important;
    font-size:18px !important;
    line-height:1.58 !important;
    margin:0 !important;
  }
  body.home .mbm-featured-grid{
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:24px !important;
  }
  body.home .mbm-featured-grid a{
    display:flex !important;
    flex-direction:column !important;
    min-height:260px !important;
    padding:30px !important;
    border:1px solid rgba(255,255,255,.12) !important;
    background:linear-gradient(180deg,#191919,#0c0c0c) !important;
    color:#fff !important;
    text-decoration:none !important;
    box-shadow:0 18px 46px rgba(0,0,0,.34) !important;
    transition:transform .22s ease, border-color .22s ease, background .22s ease !important;
  }
  body.home .mbm-featured-grid a:hover{
    transform:translateY(-5px) !important;
    border-color:rgba(217,154,6,.72) !important;
    background:linear-gradient(180deg,#202020,#101010) !important;
  }
  body.home .mbm-featured-grid span{
    color:var(--gold2) !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    font-size:13px !important;
    letter-spacing:.12em !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-featured-grid strong{
    font-size:26px !important;
    line-height:1.05 !important;
    letter-spacing:-.015em !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-featured-grid p{
    color:#d8d8d8 !important;
    font-size:16px !important;
    line-height:1.55 !important;
    margin:auto 0 0 !important;
  }

  /* Why choose */
  body.home .mbm-why-choose-v221{
    padding:104px 0 98px !important;
    background:#fff !important;
  }
  body.home .mbm-why-choose-v221 .section-title{
    font-size:clamp(42px,3.65vw,60px) !important;
    max-width:1040px !important;
    margin-bottom:38px !important;
  }
  body.home .mbm-why-grid-v221{
    gap:24px !important;
  }
  body.home .mbm-why-grid-v221>div{
    min-height:190px !important;
    padding:30px 28px !important;
    background:#111 !important;
    box-shadow:0 18px 40px rgba(0,0,0,.12) !important;
    border-top:4px solid var(--gold2) !important;
  }
  body.home .mbm-why-grid-v221>div::before{
    content:'✓';
    display:block;
    color:var(--gold2);
    font-size:24px;
    line-height:1;
    margin-bottom:18px;
    font-weight:1000;
  }
  body.home .mbm-why-grid-v221 strong{
    color:#fff !important;
    font-size:19px !important;
    line-height:1.15 !important;
  }
  body.home .mbm-why-grid-v221 span{
    color:#d7d7d7 !important;
    font-size:15px !important;
    line-height:1.52 !important;
  }

  /* About */
  body.home .intro.about-no-image{
    padding:106px 0 !important;
    background:#f6f6f6 !important;
  }
  body.home .intro-no-image{
    max-width:1180px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body.home .intro-copy{
    background:#fff !important;
    padding:58px 64px !important;
    box-shadow:var(--mbm-card-shadow) !important;
    border-left:6px solid var(--gold2) !important;
  }
  body.home .about-section-title{
    font-size:48px !important;
    letter-spacing:-.025em !important;
  }
  body.home .intro-copy h2{
    font-size:38px !important;
    max-width:1000px !important;
    line-height:1.08 !important;
  }
  body.home .intro-copy p{
    max-width:980px !important;
    font-size:18px !important;
    line-height:1.66 !important;
  }
  body.home .mbm-about-list{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px 26px !important;
    margin:30px 0 !important;
    padding:0 !important;
    list-style:none !important;
  }
  body.home .mbm-about-list li{
    position:relative !important;
    padding-left:26px !important;
    font-weight:900 !important;
    color:#111 !important;
    font-size:16px !important;
    line-height:1.35 !important;
  }
  body.home .mbm-about-list li::before{
    content:'✓';
    position:absolute;
    left:0;
    top:0;
    color:var(--gold2);
    font-weight:1000;
  }

  /* Process */
  body.home .mbm-home-process{
    padding:108px 0 !important;
    background:#fff !important;
  }
  body.home .mbm-process-heading{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(360px,540px) !important;
    gap:52px !important;
    align-items:end !important;
    margin-bottom:42px !important;
  }
  body.home .mbm-process-heading span{
    grid-column:1/-1;
    margin-bottom:-28px !important;
  }
  body.home .mbm-process-heading h2{
    font-size:clamp(42px,3.5vw,58px) !important;
    line-height:.98 !important;
    margin:0 !important;
  }
  body.home .mbm-process-heading p{
    font-size:18px !important;
    line-height:1.58 !important;
    margin:0 !important;
    color:#555 !important;
  }
  body.home .mbm-process-grid{
    gap:24px !important;
  }
  body.home .mbm-process-grid div{
    min-height:235px !important;
    padding:32px !important;
    box-shadow:0 18px 38px rgba(0,0,0,.08) !important;
    border:1px solid #ececec !important;
    transition:transform .2s ease, box-shadow .2s ease !important;
  }
  body.home .mbm-process-grid div:hover{
    transform:translateY(-4px) !important;
    box-shadow:var(--mbm-card-shadow) !important;
  }

  /* Residential/commercial */
  body.home .mbm-home-service-intent{
    padding:104px 0 !important;
    background:#111 !important;
  }
  body.home .mbm-intent-grid{
    gap:28px !important;
  }
  body.home .mbm-intent-grid>div{
    position:relative !important;
    padding:44px 42px !important;
    border:1px solid rgba(255,255,255,.12) !important;
    background:linear-gradient(180deg,#1a1a1a,#0f0f0f) !important;
    box-shadow:0 20px 50px rgba(0,0,0,.28) !important;
  }
  body.home .mbm-intent-grid>div::before{
    content:'⌂';
    display:block;
    color:var(--gold2);
    font-size:34px;
    line-height:1;
    margin-bottom:22px;
  }
  body.home .mbm-intent-grid>div:nth-child(2)::before{content:'▦';}
  body.home .mbm-intent-grid h2{
    color:#fff !important;
    font-size:31px !important;
    line-height:1.12 !important;
  }
  body.home .mbm-intent-grid p{
    color:#d8d8d8 !important;
    font-size:17px !important;
    line-height:1.58 !important;
  }

  /* Local SEO */
  body.home .mbm-home-local-seo{
    padding:102px 0 96px !important;
    background:#fff !important;
  }
  body.home .mbm-home-local-seo p{
    max-width:980px !important;
    font-size:18px !important;
    line-height:1.62 !important;
    color:#555 !important;
    margin-bottom:34px !important;
  }
  body.home .mbm-local-link-grid{
    gap:14px !important;
  }
  body.home .mbm-local-link-grid a{
    position:relative !important;
    padding:16px 20px 16px 44px !important;
    border-radius:999px !important;
    background:#f4f4f4 !important;
    border:1px solid #e6e6e6 !important;
    color:#111 !important;
    text-decoration:none !important;
    box-shadow:none !important;
  }
  body.home .mbm-local-link-grid a::before{
    content:'✓';
    position:absolute;
    left:20px;
    color:var(--gold2);
    font-weight:1000;
  }
  body.home .mbm-local-link-grid a:hover{
    background:#111 !important;
    color:#fff !important;
    border-color:#111 !important;
  }

  /* Standards / FAQ */
  body.home .desktop-testimonials{
    padding:96px 0 !important;
    background:#f5f5f5 !important;
  }
  body.home .desktop-testimonial-grid{
    gap:24px !important;
  }
  body.home .desktop-testimonial-grid blockquote{
    background:#fff !important;
    padding:34px !important;
    box-shadow:0 14px 34px rgba(0,0,0,.08) !important;
  }
  body.home .desktop-home-faq{
    padding:100px 0 108px !important;
    background:#fff !important;
  }
  body.home .desktop-faq-grid{
    grid-template-columns:repeat(4,1fr) !important;
    gap:18px !important;
  }
  body.home .desktop-faq-grid div{
    padding:26px !important;
    border:1px solid #e8e8e8 !important;
    background:#fff !important;
    box-shadow:0 12px 28px rgba(0,0,0,.055) !important;
  }
  body.home .desktop-faq-grid h3{
    font-size:18px !important;
    line-height:1.18 !important;
    margin-bottom:12px !important;
  }
  body.home .desktop-faq-grid p{
    font-size:15px !important;
    line-height:1.5 !important;
  }

  /* CTA + footer */
  html body .cta.mbm-cta-v221{
    padding:48px 0 !important;
    background:#111 !important;
    border-top:5px solid var(--gold2) !important;
  }
  html body .mbm-cta-copy strong{
    color:#fff !important;
    font-size:40px !important;
  }
  html body .mbm-cta-copy span{
    color:#d8d8d8 !important;
    font-size:18px !important;
    line-height:1.45 !important;
  }
  html body .mbm-cta-v221 .btn{
    min-width:250px !important;
    height:58px !important;
  }
  html body .footer{
    padding-top:70px !important;
  }
  html body .footer-grid{
    display:grid !important;
    grid-template-columns:1.1fr .85fr 1fr 1.25fr 1.15fr !important;
    gap:42px !important;
    align-items:start !important;
  }
  html body .footer h4{
    letter-spacing:.1em !important;
  }
  html body .footer-service-area p,
  html body .footer-contact-hours span{
    color:#d4d4d4 !important;
    font-size:14px !important;
    line-height:1.6 !important;
  }

  @media (max-width:1280px){
    body.home .desktop-faq-grid{grid-template-columns:repeat(2,1fr) !important;}
    body.home .mbm-featured-heading,
    body.home .mbm-process-heading{grid-template-columns:1fr !important;gap:22px !important;}
    body.home .mbm-featured-heading .mbm-section-kicker,
    body.home .mbm-process-heading span{grid-column:auto !important;margin-bottom:0 !important;}
    html body .footer-grid{grid-template-columns:repeat(3,1fr) !important;}
  }
}

/* MBM-V230 mobile preservation */
.mbm-hero-proof{display:none;}

/* =========================================================
   MBM-V231 - Desktop fold correction + premium hero pacing
   Purpose: give the hero room to breathe on desktop, keep CTAs
   visible, and push trust/services into a more natural scroll path.
   Mobile layout intentionally preserved.
   ========================================================= */
@media (min-width:981px){
  body.home .site-header,
  body.home header.site-header,
  body.home .mbm-clean-header-v18{
    position:relative !important;
    z-index:50 !important;
  }

  body.home .hero,
  body.home .mbm-hero-v29{
    height:clamp(720px, calc(100vh - 118px), 880px) !important;
    min-height:720px !important;
    max-height:880px !important;
    display:flex !important;
    align-items:center !important;
    background-size:cover !important;
    background-position:center center !important;
    border-bottom:5px solid var(--gold2) !important;
  }

  body.home .hero-overlay{
    background:
      radial-gradient(circle at 72% 42%, rgba(0,0,0,.05) 0%, rgba(0,0,0,.18) 34%, rgba(0,0,0,.50) 70%, rgba(0,0,0,.78) 100%),
      linear-gradient(90deg, rgba(0,0,0,.98) 0%, rgba(0,0,0,.88) 28%, rgba(0,0,0,.48) 54%, rgba(0,0,0,.10) 82%, rgba(0,0,0,0) 100%) !important;
  }

  body.home .hero-content{
    width:min(var(--mbm-max-desktop, 1480px), calc(100% - 112px)) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
  }

  body.home .hero h1,
  body.home .hero-title-v221{
    font-size:clamp(66px, 5vw, 88px) !important;
    line-height:.94 !important;
    letter-spacing:.052em !important;
    max-width:860px !important;
    margin:0 !important;
  }

  body.home .hero-title-v221 .hero-title-line:nth-child(3){
    font-size:.76em !important;
    letter-spacing:.055em !important;
  }

  body.home .hero .gold-rule,
  body.home .mbm-hero-v29 .gold-rule{
    width:150px !important;
    height:6px !important;
    margin:32px 0 26px !important;
  }

  body.home .hero .lead,
  body.home .mbm-hero-v29 .lead{
    font-size:22px !important;
    line-height:1.45 !important;
    max-width:660px !important;
    margin:0 0 34px !important;
    color:#fff !important;
  }

  body.home .mbm-hero-proof{
    display:none !important;
  }

  body.home .hero .hero-cta-stack,
  body.home .mbm-hero-v29 .hero-cta-stack{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:24px !important;
    flex-wrap:nowrap !important;
    margin-top:0 !important;
    width:auto !important;
    max-width:none !important;
  }

  body.home .hero .hero-cta-stack .hero-quote,
  body.home .hero .hero-cta-stack .quote-btn,
  body.home .hero .hero-cta-stack .hero-secondary-cta,
  body.home .hero .hero-cta-stack .mbm-view-work-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:66px !important;
    min-height:66px !important;
    width:auto !important;
    min-width:292px !important;
    padding:0 38px !important;
    margin:0 !important;
    border-radius:8px !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }

  body.home .hero .hero-cta-stack .hero-quote,
  body.home .hero .hero-cta-stack .quote-btn{
    background:linear-gradient(180deg, #e3aa08, #c78300) !important;
    color:#fff !important;
    border:2px solid transparent !important;
    box-shadow:0 24px 50px rgba(199,131,0,.25) !important;
  }

  body.home .hero .hero-cta-stack .hero-secondary-cta,
  body.home .hero .hero-cta-stack .mbm-view-work-btn{
    background:rgba(0,0,0,.20) !important;
    color:#fff !important;
    border:2px solid rgba(255,255,255,.84) !important;
    box-shadow:none !important;
  }

  body.home .hero .hero-cta-stack a:hover{
    transform:translateY(-2px) !important;
  }

  body.home .mbm-credibility-strip{
    display:block !important;
    background:#070707 !important;
    border-top:0 !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }

  body.home .mbm-credibility-grid{
    width:min(var(--mbm-max-desktop, 1480px), calc(100% - 112px)) !important;
    grid-template-columns:repeat(4, 1fr) !important;
  }

  body.home .mbm-credibility-grid div{
    min-height:118px !important;
    padding:24px 30px !important;
    justify-content:center !important;
    border-left:1px solid rgba(224,162,11,.32) !important;
  }

  body.home .mbm-credibility-grid div:first-child{border-left:0 !important;}

  body.home .mbm-credibility-grid div::before{
    font-size:18px !important;
    margin-bottom:10px !important;
  }

  body.home .mbm-credibility-grid strong{
    font-size:17px !important;
    line-height:1.12 !important;
    margin-bottom:8px !important;
  }

  body.home .mbm-credibility-grid span{
    font-size:14.5px !important;
    line-height:1.35 !important;
    max-width:300px !important;
  }

  body.home .mbm-service-area-strip{
    padding:10px 0 !important;
    min-height:44px !important;
  }

  body.home .mbm-service-area-inner{
    width:min(var(--mbm-max-desktop, 1480px), calc(100% - 112px)) !important;
    gap:28px !important;
  }

  body.home .mbm-service-area-primary,
  body.home .mbm-service-area-cities{
    font-size:13px !important;
    line-height:1.2 !important;
  }

  body.home .service-gallery-section{
    padding-top:104px !important;
  }
}

@media (min-width:981px) and (max-height:820px){
  body.home .hero,
  body.home .mbm-hero-v29{
    height:clamp(680px, calc(100vh - 104px), 760px) !important;
    min-height:680px !important;
  }
  body.home .hero h1,
  body.home .hero-title-v221{
    font-size:clamp(56px, 4.4vw, 74px) !important;
    max-width:760px !important;
  }
  body.home .hero .gold-rule,
  body.home .mbm-hero-v29 .gold-rule{
    margin:24px 0 20px !important;
  }
  body.home .hero .lead,
  body.home .mbm-hero-v29 .lead{
    font-size:20px !important;
    margin-bottom:26px !important;
  }
  body.home .hero .hero-cta-stack .hero-quote,
  body.home .hero .hero-cta-stack .quote-btn,
  body.home .hero .hero-cta-stack .hero-secondary-cta,
  body.home .hero .hero-cta-stack .mbm-view-work-btn{
    height:60px !important;
    min-height:60px !important;
  }
}

/* =========================================================
   MBM-V232 - Premium desktop agency polish
   Scope: desktop/tablet only (981px+). Mobile layout preserved.
   ========================================================= */
@media (min-width:981px){
  :root{
    --mbm-desktop-wrap: min(1540px, calc(100% - 104px));
    --mbm-shadow-soft: 0 24px 70px rgba(0,0,0,.12);
    --mbm-shadow-strong: 0 34px 80px rgba(0,0,0,.20);
  }

  body.home .hero,
  body.home .mbm-hero-v29{
    height:clamp(700px, calc(100vh - 112px), 830px) !important;
    min-height:700px !important;
    max-height:830px !important;
    align-items:center !important;
    background-position:center 48% !important;
  }
  body.home .hero-overlay{
    background:
      linear-gradient(90deg, rgba(0,0,0,.96) 0%, rgba(0,0,0,.84) 24%, rgba(0,0,0,.45) 52%, rgba(0,0,0,.12) 78%, rgba(0,0,0,.08) 100%),
      radial-gradient(circle at 74% 46%, rgba(0,0,0,.05) 0%, rgba(0,0,0,.12) 34%, rgba(0,0,0,.42) 100%) !important;
  }
  body.home .hero-content{
    width:var(--mbm-desktop-wrap) !important;
    padding-top:10px !important;
  }
  body.home .mbm-hero-kicker{
    display:inline-flex !important;
    align-items:center !important;
    gap:10px !important;
    color:var(--gold2) !important;
    text-transform:uppercase !important;
    letter-spacing:.16em !important;
    font-size:13px !important;
    font-weight:1000 !important;
    margin-bottom:22px !important;
  }
  body.home .mbm-hero-kicker::before{
    content:'';
    width:34px;
    height:2px;
    background:var(--gold2);
    display:inline-block;
  }
  body.home .hero h1,
  body.home .hero-title-v221{
    font-size:clamp(58px, 4.45vw, 78px) !important;
    line-height:.95 !important;
    max-width:820px !important;
    letter-spacing:.048em !important;
  }
  body.home .hero-title-v221 .hero-title-line:nth-child(3){
    font-size:.72em !important;
  }
  body.home .hero .gold-rule,
  body.home .mbm-hero-v29 .gold-rule{
    margin:26px 0 22px !important;
    width:136px !important;
  }
  body.home .hero .lead,
  body.home .mbm-hero-v29 .lead{
    max-width:685px !important;
    font-size:21px !important;
    line-height:1.48 !important;
    margin-bottom:28px !important;
    color:#f4f4f4 !important;
  }
  body.home .hero .hero-cta-stack,
  body.home .mbm-hero-v29 .hero-cta-stack{
    display:flex !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    margin-top:0 !important;
  }
  body.home .hero .hero-cta-stack .hero-quote,
  body.home .hero .hero-cta-stack .quote-btn,
  body.home .hero .hero-cta-stack .hero-secondary-cta,
  body.home .hero .hero-cta-stack .mbm-view-work-btn{
    height:60px !important;
    min-height:60px !important;
    min-width:250px !important;
    border-radius:10px !important;
    font-size:16px !important;
    letter-spacing:.055em !important;
  }

  body.home .mbm-credibility-grid{width:var(--mbm-desktop-wrap) !important;}
  body.home .mbm-credibility-grid div{
    min-height:98px !important;
    padding:18px 28px !important;
    transition:background .2s ease, transform .2s ease !important;
  }
  body.home .mbm-credibility-grid div:hover{background:#0d0d0d !important;}
  body.home .mbm-credibility-grid div::before{
    content:'✓' !important;
    display:block !important;
    color:var(--gold2) !important;
    font-size:18px !important;
    margin-bottom:8px !important;
  }
  body.home .mbm-credibility-grid strong{font-size:16px !important;margin-bottom:6px !important;}
  body.home .mbm-credibility-grid span{font-size:13.8px !important;}
  body.home .mbm-service-area-inner{width:var(--mbm-desktop-wrap) !important;}

  body.home .service-gallery-section{
    padding:108px 0 94px !important;
    background:#fff !important;
  }
  body.home .service-gallery-section .wrap,
  body.home .mbm-featured-projects-v230 .wrap,
  body.home .mbm-why-choose-v221 .wrap,
  body.home .mbm-home-process .wrap,
  body.home .mbm-home-service-intent .wrap,
  body.home .mbm-home-local-seo .wrap,
  body.home .desktop-testimonials .wrap,
  body.home .desktop-home-faq .wrap{
    width:var(--mbm-desktop-wrap) !important;
  }
  body.home .service-gallery-section .section-title{
    max-width:1080px !important;
    font-size:clamp(52px, 4.1vw, 76px) !important;
    line-height:.96 !important;
    letter-spacing:.006em !important;
    margin-bottom:22px !important;
  }
  body.home .service-grid-intro{
    max-width:760px !important;
    color:#555 !important;
    font-size:19px !important;
    line-height:1.55 !important;
    margin:0 0 46px !important;
  }
  body.home .folder-accordion.service-folder-grid{
    gap:34px !important;
  }
  body.home .service-folder-card.folder-item{
    box-shadow:0 22px 54px rgba(0,0,0,.11) !important;
    border:1px solid rgba(0,0,0,.06) !important;
  }
  body.home .service-folder-card .folder-toggle{
    min-height:392px !important;
    padding:36px !important;
    box-shadow:inset 0 -240px 140px rgba(0,0,0,.74), inset 0 0 0 1px rgba(255,255,255,.04) !important;
  }
  body.home .service-card-title{font-size:32px !important;line-height:1.04 !important;}
  body.home .desktop-service-desc{font-size:16.5px !important;line-height:1.52 !important;max-width:95% !important;}
  body.home .service-card-subtitle{
    background:linear-gradient(180deg,#e3aa08,#c78300) !important;
    color:#fff !important;
    border-radius:6px !important;
    padding:12px 16px !important;
  }

  body.home .mbm-featured-projects-v230{
    padding:106px 0 !important;
    background:#101010 !important;
  }
  body.home .mbm-featured-heading{
    grid-template-columns:minmax(0,1fr) minmax(360px,540px) !important;
    margin-bottom:46px !important;
  }
  body.home .mbm-featured-heading .desktop-section-title{
    font-size:clamp(44px,3.6vw,62px) !important;
    line-height:.98 !important;
    text-align:left !important;
  }
  body.home .mbm-featured-photo-grid a{
    position:relative !important;
    overflow:hidden !important;
    min-height:430px !important;
    padding:34px !important;
    background-size:cover !important;
    background-position:center !important;
    border:1px solid rgba(255,255,255,.10) !important;
    isolation:isolate !important;
  }
  body.home .mbm-featured-photo-grid a::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.88));
    z-index:-1;
    transition:background .22s ease;
  }
  body.home .mbm-featured-photo-grid a::after{
    content:'View project →';
    margin-top:26px;
    color:#fff;
    background:var(--gold2);
    align-self:flex-start;
    padding:12px 16px;
    border-radius:6px;
    text-transform:uppercase;
    font-size:12px;
    letter-spacing:.08em;
    font-weight:1000;
  }
  body.home .mbm-featured-photo-grid a:hover::before{background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.82));}
  body.home .mbm-featured-photo-grid strong{font-size:30px !important;}
  body.home .mbm-featured-photo-grid p{margin-top:auto !important;}

  body.home .mbm-why-choose-v221{
    padding:108px 0 112px !important;
  }
  body.home .mbm-why-choose-v221 .section-title{
    max-width:1160px !important;
    font-size:clamp(44px,3.75vw,64px) !important;
  }
  body.home .mbm-why-grid-v221{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:26px !important;
  }
  body.home .mbm-why-grid-v221>div{
    min-height:205px !important;
    padding:34px 30px !important;
    border-bottom:5px solid var(--gold2) !important;
    border-top:0 !important;
  }

  body.home .intro.about-no-image.mbm-about-premium-v232{
    padding:118px 0 !important;
    background:#f6f6f6 !important;
  }
  body.home .mbm-about-premium-v232 .intro-no-image{
    max-width:none !important;
    width:var(--mbm-desktop-wrap) !important;
    display:grid !important;
    grid-template-columns:minmax(420px,.9fr) minmax(0,1.1fr) !important;
    gap:48px !important;
    align-items:stretch !important;
  }
  body.home .mbm-about-media{
    position:relative !important;
    min-height:620px !important;
    box-shadow:var(--mbm-shadow-soft) !important;
    overflow:hidden !important;
    background:#111 !important;
  }
  body.home .mbm-about-media img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    filter:saturate(.95) contrast(1.02) !important;
  }
  body.home .mbm-about-media::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.72));
  }
  body.home .mbm-about-media-card{
    position:absolute;
    left:30px;
    right:30px;
    bottom:30px;
    z-index:2;
    background:rgba(10,10,10,.9);
    border-left:5px solid var(--gold2);
    padding:24px 26px;
    color:#fff;
  }
  body.home .mbm-about-media-card strong{display:block;text-transform:uppercase;font-size:20px;font-weight:1000;margin-bottom:8px;}
  body.home .mbm-about-media-card span{display:block;color:#ddd;font-size:14px;letter-spacing:.08em;text-transform:uppercase;font-weight:900;}
  body.home .mbm-about-premium-v232 .intro-copy{
    padding:56px 60px !important;
    box-shadow:var(--mbm-shadow-soft) !important;
    border-left:0 !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }
  body.home .mbm-about-premium-v232 .intro-copy h2{font-size:34px !important;line-height:1.08 !important;}
  body.home .mbm-about-premium-v232 .intro-copy p{font-size:17px !important;line-height:1.62 !important;}

  body.home .mbm-home-process{
    padding:116px 0 !important;
    background:#101010 !important;
    color:#fff !important;
  }
  body.home .mbm-process-heading h2{color:#fff !important;}
  body.home .mbm-process-heading p{color:#d8d8d8 !important;}
  body.home .mbm-process-grid{
    position:relative !important;
    grid-template-columns:repeat(4,1fr) !important;
  }
  body.home .mbm-process-grid::before{
    content:'';
    position:absolute;
    left:6%;
    right:6%;
    top:42px;
    height:2px;
    background:rgba(217,154,6,.38);
    pointer-events:none;
  }
  body.home .mbm-process-grid div{
    position:relative !important;
    min-height:255px !important;
    background:#fff !important;
    border:0 !important;
    box-shadow:0 22px 54px rgba(0,0,0,.25) !important;
  }
  body.home .mbm-process-grid b{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:58px !important;
    height:58px !important;
    border-radius:999px !important;
    background:var(--gold2) !important;
    color:#111 !important;
    font-size:24px !important;
    margin-bottom:22px !important;
  }

  body.home .mbm-home-service-intent{padding:112px 0 !important;}
  body.home .mbm-intent-grid>div{padding:54px 50px !important;}
  body.home .mbm-intent-grid h2{font-size:33px !important;}

  body.home .mbm-home-local-seo .desktop-section-title,
  body.home .desktop-testimonials .desktop-section-title,
  body.home .desktop-home-faq .desktop-section-title{
    font-size:clamp(42px,3.4vw,58px) !important;
  }
  body.home .desktop-testimonial-grid blockquote{
    min-height:205px !important;
    border-left:0 !important;
    border-top:5px solid var(--gold2) !important;
    transition:transform .2s ease, box-shadow .2s ease !important;
  }
  body.home .desktop-testimonial-grid blockquote:hover{transform:translateY(-4px);box-shadow:var(--mbm-shadow-soft) !important;}
  body.home .desktop-testimonial-grid span{color:#111 !important;font-size:18px !important;text-transform:uppercase !important;}

  body.home .desktop-faq-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    max-width:1180px !important;
    gap:22px !important;
  }
  body.home .desktop-faq-grid div{
    border-top:4px solid var(--gold2) !important;
    padding:28px 30px !important;
  }

  html body .cta.mbm-cta-v221{
    padding:64px 0 !important;
  }
  html body .cta.mbm-cta-v221 .wrap{
    width:var(--mbm-desktop-wrap) !important;
  }
  html body .mbm-cta-copy strong{font-size:44px !important;}
  html body .mbm-cta-v221 .btn{border-radius:8px !important;}
}

@media (min-width:981px) and (max-width:1280px){
  body.home .mbm-about-premium-v232 .intro-no-image{grid-template-columns:1fr !important;}
  body.home .mbm-about-media{min-height:420px !important;}
  body.home .mbm-process-grid{grid-template-columns:repeat(2,1fr) !important;}
  body.home .mbm-process-grid::before{display:none !important;}
  body.home .mbm-featured-photo-grid{grid-template-columns:1fr !important;}
}

@media (min-width:981px) and (max-height:820px){
  body.home .hero,
  body.home .mbm-hero-v29{
    height:clamp(660px, calc(100vh - 96px), 735px) !important;
    min-height:660px !important;
  }
  body.home .hero h1,
  body.home .hero-title-v221{font-size:clamp(52px, 4.1vw, 70px) !important;}
  body.home .hero .lead,
  body.home .mbm-hero-v29 .lead{font-size:19px !important;margin-bottom:22px !important;}
  body.home .hero .hero-cta-stack .hero-quote,
  body.home .hero .hero-cta-stack .quote-btn,
  body.home .hero .hero-cta-stack .hero-secondary-cta,
  body.home .hero .hero-cta-stack .mbm-view-work-btn{height:56px !important;min-height:56px !important;}
}


/* MBM V233 - final recommendation pass: cohesive brand polish, richer projects, tighter desktop rhythm */
::selection{background:rgba(224,162,11,.32);color:#050505;}
a:focus-visible,button:focus-visible,.quote-btn:focus-visible,.btn:focus-visible{outline:3px solid var(--gold2)!important;outline-offset:4px!important;}

@media (min-width:981px){
  body.home{--mbm-ease:cubic-bezier(.2,.8,.2,1);}
  body.home .mbm-hero-proof span::before,
  body.home .mbm-credibility-grid div::before,
  body.home .mbm-why-grid-v221>div::before,
  body.home .desktop-testimonial-grid blockquote::before{color:var(--gold2)!important;}

  body.home .mbm-hero-v29 .hero-content{max-width:1320px!important;}
  body.home .hero h1,
  body.home .hero-title-v221{letter-spacing:.045em!important;max-width:720px!important;}
  body.home .hero .lead{max-width:650px!important;font-size:clamp(20px,1.45vw,25px)!important;line-height:1.5!important;color:#f3f3f3!important;}
  body.home .mbm-hero-proof{margin-top:24px!important;margin-bottom:32px!important;}
  body.home .mbm-hero-proof span{border-color:rgba(224,162,11,.38)!important;background:rgba(255,255,255,.055)!important;backdrop-filter:blur(4px);}

  body.home .quote-btn,
  body.home .btn,
  body.home .hero-secondary-cta,
  body.home .about-services-btn,
  body.home .service-card-subtitle{border-radius:10px!important;transition:transform .2s var(--mbm-ease),box-shadow .2s var(--mbm-ease),background .2s ease!important;}
  body.home .quote-btn:hover,
  body.home .btn:hover,
  body.home .about-services-btn:hover,
  body.home .service-card-subtitle:hover{transform:translateY(-2px)!important;box-shadow:0 18px 42px rgba(195,131,0,.28)!important;}
  body.home .hero-secondary-cta:hover{border-color:var(--gold2)!important;color:#fff!important;background:rgba(224,162,11,.16)!important;}

  body.home .mbm-credibility-strip{border-top:1px solid rgba(224,162,11,.26)!important;border-bottom:1px solid rgba(224,162,11,.22)!important;}
  body.home .mbm-credibility-grid div{position:relative!important;padding-left:54px!important;}
  body.home .mbm-credibility-grid div::before{content:'✓';position:absolute;left:24px;top:27px;font-size:20px;font-weight:1000;}
  body.home .mbm-credibility-grid strong{font-size:15px!important;letter-spacing:.075em!important;}
  body.home .mbm-credibility-grid span{font-size:14px!important;line-height:1.35!important;}

  body.home .service-gallery-section{background:linear-gradient(180deg,#f7f7f7 0%,#fff 100%)!important;}
  body.home .service-card-subtitle{align-self:flex-start!important;}
  body.home .service-folder-card.folder-item{transition:transform .24s var(--mbm-ease),box-shadow .24s var(--mbm-ease),filter .24s ease!important;}
  body.home .service-folder-card.folder-item:hover{transform:translateY(-8px)!important;box-shadow:0 30px 70px rgba(0,0,0,.18)!important;filter:saturate(1.05)!important;}
  body.home .service-folder-card .folder-toggle::after{content:'';position:absolute;inset:0;border:1px solid rgba(224,162,11,0);transition:border-color .22s ease;pointer-events:none;}
  body.home .service-folder-card:hover .folder-toggle::after{border-color:rgba(224,162,11,.55);}
  body.home .desktop-service-desc{color:#f2f2f2!important;}

  body.home .mbm-featured-projects-v230{background:radial-gradient(circle at 18% 0%,rgba(224,162,11,.12),transparent 32%),#0d0d0d!important;}
  body.home .mbm-featured-photo-grid{gap:28px!important;}
  body.home .mbm-featured-photo-grid a{display:flex!important;flex-direction:column!important;justify-content:flex-end!important;border-radius:0!important;box-shadow:0 24px 60px rgba(0,0,0,.3)!important;transition:transform .24s var(--mbm-ease),box-shadow .24s var(--mbm-ease)!important;}
  body.home .mbm-featured-photo-grid a:hover{transform:translateY(-8px)!important;box-shadow:0 34px 80px rgba(0,0,0,.45)!important;}
  body.home .mbm-featured-photo-grid a span{width:max-content;background:rgba(224,162,11,.95)!important;color:#111!important;padding:8px 12px!important;border-radius:999px!important;font-size:12px!important;font-weight:1000!important;letter-spacing:.08em!important;text-transform:uppercase!important;margin-bottom:16px!important;}

  body.home .mbm-why-grid-v221>div{position:relative!important;padding-top:58px!important;transition:transform .2s var(--mbm-ease),box-shadow .2s var(--mbm-ease)!important;}
  body.home .mbm-why-grid-v221>div::before{content:'✦';position:absolute;top:26px;left:30px;font-size:20px;line-height:1;}
  body.home .mbm-why-grid-v221>div:hover{transform:translateY(-5px)!important;box-shadow:0 24px 60px rgba(0,0,0,.12)!important;}

  body.home .mbm-about-premium-v232 .intro-copy{border-top:5px solid var(--gold2)!important;}
  body.home .mbm-about-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 20px!important;margin:20px 0 24px!important;padding:0!important;list-style:none!important;}
  body.home .mbm-about-list li{position:relative!important;padding-left:22px!important;font-size:15px!important;font-weight:800!important;color:#222!important;line-height:1.4!important;}
  body.home .mbm-about-list li::before{content:'✓';position:absolute;left:0;color:var(--gold)!important;font-weight:1000;}

  body.home .mbm-process-grid div{transition:transform .22s var(--mbm-ease),box-shadow .22s var(--mbm-ease)!important;}
  body.home .mbm-process-grid div:hover{transform:translateY(-6px)!important;box-shadow:0 28px 70px rgba(0,0,0,.34)!important;}
  body.home .mbm-process-grid strong{font-size:22px!important;line-height:1.12!important;}
  body.home .mbm-process-grid span{font-size:15.5px!important;line-height:1.55!important;}

  body.home .mbm-home-local-seo{background:#f7f7f7!important;border-top:1px solid #e7e7e7!important;border-bottom:1px solid #e7e7e7!important;}
  body.home .mbm-local-link-grid a{position:relative!important;border-radius:999px!important;padding-left:42px!important;background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 12px 30px rgba(0,0,0,.05)!important;}
  body.home .mbm-local-link-grid a::before{content:'✓';position:absolute;left:20px;color:var(--gold)!important;font-weight:1000;}
  body.home .mbm-local-link-grid a:hover{border-color:rgba(224,162,11,.7)!important;transform:translateY(-2px)!important;}

  body.home .mbm-project-confidence-v224{background:#fff!important;}
  body.home .mbm-project-confidence-v224 .wrap{max-width:1280px!important;}
  body.home .mbm-project-confidence-v224 .mbm-section-kicker{display:block!important;text-align:center!important;}
  body.home .mbm-project-confidence-v224 .desktop-section-title{text-align:center!important;margin-left:auto!important;margin-right:auto!important;max-width:920px!important;}
  body.home .mbm-standards-grid-v233 blockquote{position:relative!important;padding-top:74px!important;background:#111!important;color:#fff!important;border-top:0!important;border-bottom:5px solid var(--gold2)!important;}
  body.home .mbm-standards-grid-v233 blockquote::before{position:absolute;top:28px;left:30px;font-size:24px;font-weight:1000;}
  body.home .mbm-standards-grid-v233 blockquote:nth-child(1)::before{content:'01';}
  body.home .mbm-standards-grid-v233 blockquote:nth-child(2)::before{content:'02';}
  body.home .mbm-standards-grid-v233 blockquote:nth-child(3)::before{content:'03';}
  body.home .mbm-standards-grid-v233 span{color:#fff!important;font-size:21px!important;}
  body.home .mbm-standards-grid-v233 p{color:#dcdcdc!important;}

  body.home .desktop-home-faq{background:#f6f6f6!important;}
  body.home .desktop-home-faq .desktop-section-title{text-align:center!important;margin-left:auto!important;margin-right:auto!important;}
  body.home .desktop-faq-grid div{background:#fff!important;box-shadow:0 14px 36px rgba(0,0,0,.06)!important;transition:transform .2s var(--mbm-ease),box-shadow .2s var(--mbm-ease)!important;}
  body.home .desktop-faq-grid div:hover{transform:translateY(-3px)!important;box-shadow:0 22px 52px rgba(0,0,0,.1)!important;}
  body.home .desktop-faq-grid h3{font-size:21px!important;line-height:1.2!important;}

  html body .cta.mbm-cta-v221{background:radial-gradient(circle at 75% 0%,rgba(224,162,11,.16),transparent 34%),linear-gradient(90deg,#050505,#161616)!important;border-top:6px solid var(--gold2)!important;}
  html body .mbm-cta-copy strong{letter-spacing:.015em!important;}
  html body .mbm-cta-copy span{font-size:18px!important;max-width:680px!important;line-height:1.5!important;color:#e8e8e8!important;}

  .footer{border-top:1px solid rgba(224,162,11,.35)!important;}
  .footer h4{letter-spacing:.08em!important;}
  .footer a:hover{color:var(--gold2)!important;}
}

@media (min-width:981px) and (max-width:1180px){
  body.home .mbm-about-list{grid-template-columns:1fr!important;}
  body.home .mbm-credibility-grid{grid-template-columns:repeat(2,1fr)!important;}
}

/* MBM V234 - final production polish: hero scale, CTA emphasis, project/FAQ/CTA refinement */
@media (min-width:981px){
  /* Hero: slightly smaller H1, stronger supporting copy, more premium CTA hierarchy */
  body.home .hero h1,
  body.home .hero-title-v221{
    font-size:clamp(52px,4.9vw,78px) !important;
    line-height:.94 !important;
    max-width:690px !important;
  }
  body.home .hero .lead,
  body.home .mbm-hero-v29 .lead{
    font-size:clamp(21px,1.5vw,26px) !important;
    line-height:1.54 !important;
    max-width:700px !important;
    margin-top:24px !important;
  }
  body.home .hero-cta-stack{
    gap:18px !important;
    margin-top:8px !important;
  }
  body.home .hero .hero-cta-stack .hero-secondary-cta,
  body.home .hero .hero-cta-stack .mbm-view-work-btn{
    min-height:62px !important;
    height:62px !important;
    border-width:2px !important;
    padding-left:28px !important;
    padding-right:28px !important;
    letter-spacing:.075em !important;
  }
  body.home .hero .hero-cta-stack .hero-secondary-cta:hover,
  body.home .hero .hero-cta-stack .mbm-view-work-btn:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 18px 46px rgba(0,0,0,.34), 0 0 0 1px rgba(224,162,11,.34) inset !important;
  }

  /* Trust/metric row: tighter, more readable, more premium */
  body.home .mbm-credibility-strip{padding:22px 0 !important;}
  body.home .mbm-credibility-grid{gap:14px !important;}
  body.home .mbm-credibility-grid div{
    min-height:112px !important;
    padding:25px 24px 24px 58px !important;
  }
  body.home .mbm-credibility-grid div::before{top:28px !important;left:26px !important;}

  /* Services: more agency-like card interactions without changing mobile */
  body.home .service-folder-card.folder-item{
    overflow:hidden !important;
    background-size:104% auto !important;
    background-position:center !important;
  }
  body.home .service-folder-card.folder-item:hover{
    background-size:112% auto !important;
  }
  body.home .service-folder-card .folder-toggle{
    display:flex !important;
    flex-direction:column !important;
  }
  body.home .service-folder-card .service-card-subtitle{
    margin-top:auto !important;
  }

  /* Featured projects: richer project presentation */
  body.home .mbm-featured-heading{max-width:1040px !important;margin-left:auto !important;margin-right:auto !important;text-align:center !important;}
  body.home .mbm-featured-heading p{margin-left:auto !important;margin-right:auto !important;max-width:820px !important;}
  body.home .mbm-featured-photo-grid a{
    min-height:520px !important;
    padding:40px !important;
  }
  body.home .mbm-featured-photo-grid strong{font-size:clamp(28px,2.1vw,38px) !important;}
  body.home .mbm-featured-photo-grid p{font-size:16px !important;line-height:1.58 !important;max-width:94% !important;}

  /* About: larger image presence and tighter copy rhythm */
  body.home .mbm-about-premium-v232 .intro-no-image{
    grid-template-columns:minmax(500px,1.04fr) minmax(0,.96fr) !important;
    gap:54px !important;
  }
  body.home .mbm-about-media{min-height:690px !important;}
  body.home .mbm-about-premium-v232 .intro-copy{padding:58px 58px !important;}
  body.home .mbm-about-premium-v232 .intro-copy h2{font-size:36px !important;}

  /* Process: centered heading and clearer progression */
  body.home .mbm-process-heading{
    display:block !important;
    text-align:center !important;
    max-width:920px !important;
    margin:0 auto 54px !important;
  }
  body.home .mbm-process-heading span,
  body.home .mbm-process-heading h2,
  body.home .mbm-process-heading p{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body.home .mbm-process-heading h2{font-size:clamp(44px,3.7vw,64px) !important;}
  body.home .mbm-process-heading p{max-width:760px !important;}
  body.home .mbm-process-grid div{padding:34px 30px !important;}

  /* FAQ: slightly more whitespace and easier scan */
  body.home .desktop-home-faq{padding-top:112px !important;padding-bottom:120px !important;}
  body.home .desktop-faq-grid{gap:26px !important;}
  body.home .desktop-faq-grid div{
    min-height:178px !important;
    padding:34px 34px 32px !important;
  }
  body.home .desktop-faq-grid p{font-size:16px !important;line-height:1.62 !important;}

  /* Closing CTA: stronger final conversion section */
  html body .cta.mbm-cta-v221{
    padding:86px 0 !important;
  }
  html body .mbm-cta-copy strong{
    font-size:clamp(42px,3.5vw,60px) !important;
    line-height:1.02 !important;
  }
  html body .mbm-cta-copy span{
    font-size:20px !important;
  }
  html body .mbm-cta-v221 .btn{
    min-height:60px !important;
    padding:0 28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
}

@media (min-width:981px) and (max-width:1280px){
  body.home .mbm-about-premium-v232 .intro-no-image{grid-template-columns:1fr !important;}
  body.home .mbm-about-media{min-height:500px !important;}
  body.home .mbm-featured-photo-grid a{min-height:460px !important;}
}

@media (min-width:981px) and (max-height:820px){
  body.home .hero h1,
  body.home .hero-title-v221{font-size:clamp(48px,4.2vw,66px) !important;}
  body.home .hero .lead,
  body.home .mbm-hero-v29 .lead{font-size:19px !important;}
}


/* MBM V236 - requested homepage section removals and About text-only layout */
@media (min-width:981px){
  body.home .mbm-about-text-only{
    padding:104px 0 !important;
    background:#f6f6f6 !important;
  }
  body.home .mbm-about-premium-v232 .mbm-about-text-only-wrap{
    width:min(1120px, calc(100% - 72px)) !important;
    max-width:1120px !important;
    display:block !important;
  }
  body.home .mbm-about-text-only .intro-copy{
    max-width:1120px !important;
    margin:0 auto !important;
    padding:64px 72px !important;
    border-top:5px solid var(--gold2) !important;
    box-shadow:0 22px 58px rgba(0,0,0,.10) !important;
    background:#fff !important;
  }
  body.home .mbm-about-text-only .intro-copy h2{
    max-width:920px !important;
  }
  body.home .mbm-about-text-only .intro-copy p{
    max-width:920px !important;
  }
}

@media (max-width:980px){
  body.home .mbm-about-text-only .intro-copy{
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* MBM-V238 - Premium redesign for local service-area section below About */
@media (min-width:981px){
  body.home .mbm-local-premium-v238{
    position:relative !important;
    overflow:hidden !important;
    padding:96px 0 !important;
    background:
      radial-gradient(circle at 18% 10%, rgba(224,162,11,.16), transparent 30%),
      linear-gradient(135deg,#0b0b0b 0%,#121212 48%,#070707 100%) !important;
    border-top:1px solid rgba(224,162,11,.35) !important;
    border-bottom:1px solid rgba(224,162,11,.35) !important;
    text-align:left !important;
  }
  body.home .mbm-local-premium-v238::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:74px 74px;
    opacity:.35;
    pointer-events:none;
  }
  body.home .mbm-local-premium-wrap{
    position:relative !important;
    z-index:1 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(520px,.92fr) !important;
    gap:54px !important;
    align-items:center !important;
    max-width:1440px !important;
  }
  body.home .mbm-local-copy .mbm-section-kicker{
    color:var(--gold2) !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-local-premium-v238 .desktop-section-title{
    max-width:780px !important;
    margin:0 0 22px !important;
    color:#fff !important;
    text-align:left !important;
    font-size:54px !important;
    line-height:.96 !important;
    letter-spacing:.005em !important;
  }
  body.home .mbm-local-premium-v238 p{
    max-width:720px !important;
    margin:0 0 30px !important;
    color:#d7d7d7 !important;
    font-size:19px !important;
    line-height:1.65 !important;
  }
  body.home .mbm-local-city-list{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;
    max-width:820px !important;
  }
  body.home .mbm-local-city-list span{
    display:inline-flex !important;
    align-items:center !important;
    min-height:38px !important;
    padding:9px 14px !important;
    border:1px solid rgba(255,255,255,.16) !important;
    background:rgba(255,255,255,.055) !important;
    color:#fff !important;
    border-radius:999px !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    font-size:12px !important;
    letter-spacing:.06em !important;
  }
  body.home .mbm-local-service-panel{
    position:relative !important;
    padding:34px !important;
    border:1px solid rgba(224,162,11,.36) !important;
    background:rgba(255,255,255,.055) !important;
    box-shadow:0 34px 90px rgba(0,0,0,.38) !important;
    backdrop-filter:blur(8px);
  }
  body.home .mbm-local-service-panel::before{
    content:'';
    position:absolute;
    left:0;top:0;bottom:0;
    width:5px;
    background:var(--gold2);
  }
  body.home .mbm-local-panel-head{
    margin-bottom:22px !important;
    padding-bottom:20px !important;
    border-bottom:1px solid rgba(255,255,255,.13) !important;
  }
  body.home .mbm-local-panel-head span{
    display:block !important;
    color:var(--gold2) !important;
    font-size:12px !important;
    line-height:1 !important;
    letter-spacing:.13em !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    margin-bottom:10px !important;
  }
  body.home .mbm-local-panel-head strong{
    display:block !important;
    color:#fff !important;
    font-size:22px !important;
    line-height:1.18 !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    letter-spacing:.025em !important;
  }
  body.home .mbm-local-premium-v238 .mbm-local-service-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
    max-width:none !important;
    margin:0 !important;
  }
  body.home .mbm-local-premium-v238 .mbm-local-service-grid a{
    min-height:58px !important;
    justify-content:flex-start !important;
    padding:15px 18px 15px 44px !important;
    border-radius:0 !important;
    background:#fff !important;
    border:1px solid rgba(255,255,255,.1) !important;
    color:#111 !important;
    box-shadow:none !important;
    text-align:left !important;
    font-size:13px !important;
    letter-spacing:.055em !important;
    transition:transform .22s ease,border-color .22s ease,background .22s ease,color .22s ease !important;
  }
  body.home .mbm-local-premium-v238 .mbm-local-service-grid a::before{
    left:18px !important;
    color:var(--gold2) !important;
  }
  body.home .mbm-local-premium-v238 .mbm-local-service-grid a:hover{
    transform:translateY(-3px) !important;
    background:var(--gold2) !important;
    border-color:var(--gold2) !important;
    color:#fff !important;
  }
  body.home .mbm-local-premium-v238 .mbm-local-service-grid a:hover::before{
    color:#fff !important;
  }
}

/* MBM V240 - Premium About section refinement */
@media (min-width:981px){
  body.home .mbm-about-v240{
    padding:108px 0 !important;
    background:
      linear-gradient(180deg,#f6f6f6 0%,#fff 100%) !important;
  }
  body.home .mbm-about-v240 .mbm-about-v240-wrap{
    width:min(1280px, calc(100% - 96px)) !important;
    max-width:1280px !important;
  }
  body.home .mbm-about-v240-card{
    position:relative !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr) !important;
    gap:42px !important;
    align-items:stretch !important;
    padding:66px 72px 58px !important;
    background:#fff !important;
    border-top:6px solid var(--gold2) !important;
    box-shadow:0 28px 70px rgba(0,0,0,.10) !important;
    overflow:hidden !important;
  }
  body.home .mbm-about-v240-card::after{
    content:'';
    position:absolute;
    right:-120px;
    top:-120px;
    width:360px;
    height:360px;
    border:1px solid rgba(195,131,0,.22);
    border-radius:999px;
    pointer-events:none;
  }
  body.home .mbm-about-v240-main{
    position:relative !important;
    z-index:1 !important;
    max-width:760px !important;
  }
  body.home .mbm-about-v240 .about-section-title{
    font-size:clamp(42px,3.3vw,58px) !important;
    line-height:.98 !important;
    letter-spacing:.025em !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-about-v240 .intro-eyebrow{
    margin-bottom:24px !important;
    color:var(--gold) !important;
    font-size:15px !important;
    letter-spacing:.22em !important;
  }
  body.home .mbm-about-v240 .intro-copy,
  body.home .mbm-about-v240 .mbm-about-v240-main{
    padding:0 !important;
    box-shadow:none !important;
    border:0 !important;
    background:transparent !important;
  }
  body.home .mbm-about-v240 h2{
    max-width:740px !important;
    margin:0 !important;
    font-size:clamp(34px,2.6vw,48px) !important;
    line-height:1.06 !important;
    letter-spacing:.012em !important;
  }
  body.home .mbm-about-v240 .gold-rule.small{
    width:118px !important;
    height:5px !important;
    margin:28px 0 30px !important;
  }
  body.home .mbm-about-v240 p{
    max-width:760px !important;
    font-size:18px !important;
    line-height:1.68 !important;
    color:#2c2c2c !important;
    margin:0 0 20px !important;
  }
  body.home .mbm-about-v240-panel{
    position:relative !important;
    z-index:1 !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    min-height:330px !important;
    padding:42px 40px !important;
    background:radial-gradient(circle at 100% 0%,rgba(224,162,11,.18),transparent 38%),#101010 !important;
    color:#fff !important;
    border-left:6px solid var(--gold2) !important;
    box-shadow:0 22px 50px rgba(0,0,0,.18) !important;
  }
  body.home .mbm-about-v240-panel span{
    color:var(--gold2) !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    letter-spacing:.18em !important;
    font-size:13px !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-about-v240-panel strong{
    display:block !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    letter-spacing:.025em !important;
    font-size:clamp(26px,2vw,34px) !important;
    line-height:1.08 !important;
    margin-bottom:18px !important;
  }
  body.home .mbm-about-v240-panel p{
    color:#e4e4e4 !important;
    font-size:16px !important;
    line-height:1.62 !important;
    margin:0 !important;
  }
  body.home .mbm-about-v240-capabilities{
    position:relative !important;
    z-index:1 !important;
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:16px !important;
    margin-top:6px !important;
  }
  body.home .mbm-about-v240-capabilities div{
    min-height:118px !important;
    padding:24px 24px 22px !important;
    background:#f7f7f7 !important;
    border:1px solid #e5e5e5 !important;
    border-bottom:4px solid var(--gold2) !important;
    transition:transform .2s ease, box-shadow .2s ease, background .2s ease !important;
  }
  body.home .mbm-about-v240-capabilities div:hover{
    transform:translateY(-4px) !important;
    background:#fff !important;
    box-shadow:0 18px 40px rgba(0,0,0,.09) !important;
  }
  body.home .mbm-about-v240-capabilities b{
    display:block !important;
    text-transform:uppercase !important;
    font-size:17px !important;
    line-height:1.15 !important;
    letter-spacing:.04em !important;
    margin-bottom:10px !important;
  }
  body.home .mbm-about-v240-capabilities b::before{
    content:'✓';
    color:var(--gold) !important;
    margin-right:10px !important;
    font-weight:1000 !important;
  }
  body.home .mbm-about-v240-capabilities span{
    display:block !important;
    font-size:14px !important;
    line-height:1.45 !important;
    color:#444 !important;
  }
  body.home .mbm-about-v240-footer{
    position:relative !important;
    z-index:1 !important;
    grid-column:1 / -1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:28px !important;
    padding-top:18px !important;
  }
  body.home .mbm-about-v240 .intro-tagline{
    margin:0 !important;
    color:#0b0b0b !important;
    font-size:22px !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    white-space:nowrap !important;
  }
  body.home .mbm-about-v240-actions{
    display:flex !important;
    gap:14px !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }
  body.home .mbm-about-v240 .about-services-btn,
  body.home .mbm-about-v240 .mbm-about-secondary{
    min-width:220px !important;
    height:58px !important;
    padding:0 26px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    letter-spacing:.055em !important;
    border-radius:8px !important;
  }
  body.home .mbm-about-v240 .about-services-btn{
    background:linear-gradient(180deg,#d99a06,#bd7d00) !important;
    color:#fff !important;
    box-shadow:0 18px 42px rgba(195,131,0,.2) !important;
  }
  body.home .mbm-about-v240 .mbm-about-secondary{
    background:#111 !important;
    color:#fff !important;
    border:1px solid #111 !important;
  }
  body.home .mbm-about-v240 .mbm-about-secondary:hover{
    background:#000 !important;
    border-color:var(--gold2) !important;
    transform:translateY(-2px) !important;
  }
}

@media (min-width:981px) and (max-width:1280px){
  body.home .mbm-about-v240-card{
    grid-template-columns:1fr !important;
  }
  body.home .mbm-about-v240-main{max-width:100% !important;}
  body.home .mbm-about-v240-capabilities{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}

@media (max-width:980px){
  body.home .mbm-about-v240-card{
    display:block !important;
  }
  body.home .mbm-about-v240-panel{
    margin:28px 0 !important;
    padding:28px 24px !important;
    background:#111 !important;
    color:#fff !important;
    border-left:5px solid var(--gold2) !important;
  }
  body.home .mbm-about-v240-panel span,
  body.home .mbm-about-v240-panel strong{
    display:block !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
  }
  body.home .mbm-about-v240-panel span{color:var(--gold2) !important;font-size:12px !important;letter-spacing:.16em !important;margin-bottom:12px !important;}
  body.home .mbm-about-v240-panel strong{font-size:24px !important;line-height:1.08 !important;margin-bottom:12px !important;}
  body.home .mbm-about-v240-panel p{color:#e7e7e7 !important;}
  body.home .mbm-about-v240-capabilities{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    margin:24px 0 !important;
  }
  body.home .mbm-about-v240-capabilities div{
    padding:18px 18px !important;
    background:#f7f7f7 !important;
    border-left:4px solid var(--gold2) !important;
  }
  body.home .mbm-about-v240-capabilities b{display:block !important;text-transform:uppercase !important;margin-bottom:6px !important;}
  body.home .mbm-about-v240-footer,
  body.home .mbm-about-v240-actions{
    display:block !important;
  }
  body.home .mbm-about-v240 .mbm-about-secondary{display:none !important;}
}

/* MBM V241 - restore About section to requested exact full-width card layout */
@media (min-width:981px){
  body.home .mbm-about-exact-v241{
    padding:0 0 0 !important;
    background:#f2f2f2 !important;
  }
  body.home .mbm-about-exact-v241 .mbm-about-text-only-wrap{
    width:min(1500px, calc(100% - 88px)) !important;
    max-width:1500px !important;
    display:block !important;
    margin:0 auto !important;
  }
  body.home .mbm-about-exact-v241 .intro-copy{
    width:100% !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:88px 94px 64px !important;
    background:#fff !important;
    border-top:6px solid var(--gold2) !important;
    box-shadow:0 24px 62px rgba(0,0,0,.08) !important;
  }
  body.home .mbm-about-exact-v241 .about-section-title{
    font-size:clamp(50px,4vw,68px) !important;
    line-height:.96 !important;
    letter-spacing:.025em !important;
    margin:0 0 18px !important;
    color:#101010 !important;
  }
  body.home .mbm-about-exact-v241 .intro-eyebrow{
    margin:0 0 22px !important;
    color:var(--gold) !important;
    font-size:15px !important;
    line-height:1.4 !important;
    letter-spacing:.25em !important;
    font-weight:1000 !important;
  }
  body.home .mbm-about-exact-v241 h2{
    max-width:1120px !important;
    margin:0 !important;
    font-size:clamp(38px,3.05vw,54px) !important;
    line-height:1.08 !important;
    letter-spacing:.018em !important;
    color:#101010 !important;
  }
  body.home .mbm-about-exact-v241 .gold-rule.small{
    display:block !important;
    width:170px !important;
    height:6px !important;
    margin:36px 0 34px !important;
    background:var(--gold2) !important;
  }
  body.home .mbm-about-exact-v241 p{
    max-width:1220px !important;
    margin:0 0 30px !important;
    color:#20262b !important;
    font-size:20px !important;
    line-height:1.62 !important;
    font-weight:400 !important;
  }
  body.home .mbm-about-exact-v241 .mbm-about-list{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px 90px !important;
    margin:54px 0 30px !important;
    padding:0 !important;
    list-style:none !important;
    max-width:1180px !important;
  }
  body.home .mbm-about-exact-v241 .mbm-about-list li{
    position:relative !important;
    padding-left:34px !important;
    color:#111 !important;
    font-size:18px !important;
    line-height:1.35 !important;
    font-weight:1000 !important;
  }
  body.home .mbm-about-exact-v241 .mbm-about-list li::before{
    content:'✓' !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:var(--gold) !important;
    font-weight:1000 !important;
  }
  body.home .mbm-about-exact-v241 .intro-tagline{
    margin:34px 0 70px !important;
    color:#101010 !important;
    font-size:24px !important;
    line-height:1.1 !important;
    letter-spacing:.14em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }
  body.home .mbm-about-exact-v241 .about-services-btn{
    width:100% !important;
    max-width:none !important;
    height:74px !important;
    border-radius:10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:linear-gradient(180deg,#d99a06,#bd7d00) !important;
    color:#fff !important;
    font-size:21px !important;
    font-weight:1000 !important;
    letter-spacing:.075em !important;
    box-shadow:0 26px 54px rgba(195,131,0,.22) !important;
  }
}
@media (max-width:980px){
  body.home .mbm-about-exact-v241 .mbm-about-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:0 !important;
    list-style:none !important;
  }
  body.home .mbm-about-exact-v241 .mbm-about-list li{
    position:relative !important;
    padding-left:28px !important;
  }
  body.home .mbm-about-exact-v241 .mbm-about-list li::before{
    content:'✓' !important;
    position:absolute !important;
    left:0 !important;
    color:var(--gold) !important;
  }
}

/* MBM V242 - About section matched to requested compact centered layout */
@media (min-width:981px){
  body.home #about.mbm-about-exact-v241{
    padding:118px 0 126px !important;
    background:#fff !important;
  }
  body.home #about.mbm-about-exact-v241 .mbm-about-text-only-wrap{
    width:min(1240px, calc(100% - 96px)) !important;
    max-width:1240px !important;
    margin:0 auto !important;
    display:block !important;
  }
  body.home #about.mbm-about-exact-v241 .intro-copy{
    width:100% !important;
    max-width:1240px !important;
    margin:0 auto !important;
    padding:0 !important;
    border:0 !important;
    border-top:0 !important;
    box-shadow:none !important;
    background:transparent !important;
  }
  body.home #about.mbm-about-exact-v241 .about-section-title{
    font-size:clamp(42px,3.25vw,58px) !important;
    line-height:1 !important;
    letter-spacing:.018em !important;
    margin:0 0 18px !important;
    color:#101010 !important;
    text-transform:uppercase !important;
  }
  body.home #about.mbm-about-exact-v241 .intro-eyebrow{
    margin:0 0 18px !important;
    color:var(--gold) !important;
    font-size:14px !important;
    line-height:1.4 !important;
    letter-spacing:.25em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }
  body.home #about.mbm-about-exact-v241 h2{
    max-width:930px !important;
    margin:0 !important;
    font-size:clamp(34px,2.55vw,46px) !important;
    line-height:1.06 !important;
    letter-spacing:.012em !important;
    color:#101010 !important;
    text-transform:uppercase !important;
  }
  body.home #about.mbm-about-exact-v241 .gold-rule.small{
    display:block !important;
    width:132px !important;
    height:5px !important;
    margin:32px 0 34px !important;
    background:var(--gold2) !important;
  }
  body.home #about.mbm-about-exact-v241 p{
    max-width:1180px !important;
    margin:0 0 28px !important;
    color:#20262b !important;
    font-size:18px !important;
    line-height:1.65 !important;
    font-weight:400 !important;
  }
  body.home #about.mbm-about-exact-v241 .mbm-about-list{
    display:none !important;
  }
  body.home #about.mbm-about-exact-v241 .intro-tagline{
    margin:28px 0 34px !important;
    color:#101010 !important;
    font-size:20px !important;
    line-height:1.1 !important;
    letter-spacing:.14em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }
  body.home #about.mbm-about-exact-v241 .about-services-btn{
    width:100% !important;
    max-width:none !important;
    height:72px !important;
    border-radius:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:linear-gradient(180deg,#d99a06,#bd7d00) !important;
    color:#fff !important;
    font-size:20px !important;
    font-weight:1000 !important;
    letter-spacing:.075em !important;
    box-shadow:0 24px 54px rgba(195,131,0,.20) !important;
    text-decoration:none !important;
  }
}
@media (max-width:980px){
  body.home #about.mbm-about-exact-v241 .mbm-about-list{display:none !important;}
}

/* =========================================================
   MBM-V243 - Premium footer + closing CTA refinement
   Purpose: make the final conversion and footer area feel less flat,
   more deliberate, and easier to scan on desktop while remaining
   responsive on mobile.
   ========================================================= */
@media (min-width:981px){
  html body .cta.mbm-footer-cta-v243{
    position:relative !important;
    overflow:hidden !important;
    padding:78px 0 76px !important;
    background:
      radial-gradient(circle at 80% 20%,rgba(224,162,11,.22),transparent 30%),
      linear-gradient(135deg,#030303 0%,#121212 58%,#070707 100%) !important;
    border-top:6px solid var(--gold2) !important;
    border-bottom:1px solid rgba(224,162,11,.22) !important;
  }
  html body .cta.mbm-footer-cta-v243::before{
    content:'';
    position:absolute;
    inset:0;
    background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
    background-size:60px 60px;
    opacity:.45;
    pointer-events:none;
  }
  html body .mbm-footer-cta-wrap{
    position:relative !important;
    z-index:1 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:70px !important;
    align-items:center !important;
  }
  html body .mbm-footer-cta-v243 .mbm-cta-copy{
    display:block !important;
    max-width:900px !important;
  }
  html body .mbm-footer-cta-v243 .mbm-cta-kicker{
    display:inline-block !important;
    margin:0 0 14px !important;
    color:var(--gold2) !important;
    font-size:14px !important;
    line-height:1 !important;
    letter-spacing:.24em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }
  html body .mbm-footer-cta-v243 .mbm-cta-copy strong{
    display:block !important;
    max-width:920px !important;
    margin:0 0 16px !important;
    color:#fff !important;
    font-size:clamp(42px,3.7vw,64px) !important;
    line-height:.98 !important;
    letter-spacing:.035em !important;
    text-transform:uppercase !important;
  }
  html body .mbm-footer-cta-v243 .mbm-cta-copy > span:last-child{
    display:block !important;
    max-width:720px !important;
    color:#e6e6e6 !important;
    font-size:20px !important;
    line-height:1.55 !important;
  }
  html body .mbm-footer-cta-v243 .mbm-cta-actions{
    display:flex !important;
    gap:18px !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex-wrap:nowrap !important;
  }
  html body .mbm-footer-cta-v243 .btn{
    min-width:260px !important;
    height:62px !important;
    padding:0 34px !important;
    border-radius:10px !important;
    font-size:17px !important;
    letter-spacing:.04em !important;
    box-shadow:0 22px 50px rgba(195,131,0,.24) !important;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease !important;
  }
  html body .mbm-footer-cta-v243 .btn:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 28px 62px rgba(195,131,0,.34) !important;
  }
  html body .mbm-footer-cta-v243 .btn.outline{
    background:rgba(255,255,255,.02) !important;
    border:2px solid rgba(224,162,11,.88) !important;
    box-shadow:none !important;
  }
  html body .mbm-footer-cta-v243 .btn.outline:hover{
    background:rgba(224,162,11,.10) !important;
  }

  html body .footer.mbm-footer-v243{
    position:relative !important;
    padding:72px 0 26px !important;
    background:#020202 !important;
    color:#d9d9d9 !important;
    border-top:0 !important;
  }
  html body .footer.mbm-footer-v243::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(224,162,11,.55),transparent);
  }
  html body .footer.mbm-footer-v243 .wrap{
    width:min(1500px,calc(100% - 112px)) !important;
  }
  html body .footer-grid.mbm-footer-grid-v243{
    display:grid !important;
    grid-template-columns:1.28fr .78fr .98fr 1.24fr 1.42fr !important;
    gap:34px !important;
    align-items:stretch !important;
  }
  html body .footer.mbm-footer-v243 .footer-grid > div{
    min-width:0 !important;
  }
  html body .footer.mbm-footer-v243 .mbm-footer-brand-card,
  html body .footer.mbm-footer-v243 .mbm-footer-contact-card,
  html body .footer.mbm-footer-v243 .mbm-footer-serving-card{
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015)) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-bottom:4px solid rgba(224,162,11,.78) !important;
    padding:28px !important;
    box-shadow:0 20px 52px rgba(0,0,0,.24) !important;
  }
  html body .footer.mbm-footer-v243 img{
    width:178px !important;
    max-width:178px !important;
    background:#fff !important;
    padding:10px !important;
    margin:0 0 22px !important;
    box-shadow:0 12px 34px rgba(0,0,0,.22) !important;
  }
  html body .footer.mbm-footer-v243 .mbm-footer-brand-card p{
    margin:0 0 18px !important;
    color:#d8d8d8 !important;
    font-size:15px !important;
    line-height:1.65 !important;
  }
  html body .footer.mbm-footer-v243 .mbm-footer-badge{
    display:inline-flex !important;
    align-items:center !important;
    min-height:34px !important;
    padding:0 14px !important;
    border:1px solid rgba(224,162,11,.55) !important;
    border-radius:999px !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:900 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
  }
  html body .footer.mbm-footer-v243 h4{
    margin:0 0 22px !important;
    color:#fff !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:.14em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }
  html body .footer.mbm-footer-v243 h4::after{
    content:'';
    display:block;
    width:42px;
    height:3px;
    background:var(--gold2);
    margin-top:14px;
  }
  html body .footer.mbm-footer-v243 p,
  html body .footer.mbm-footer-v243 a,
  html body .footer.mbm-footer-v243 li,
  html body .footer.mbm-footer-v243 .footer-contact-list{
    color:#d9d9d9 !important;
    font-size:15.5px !important;
    line-height:1.75 !important;
  }
  html body .footer.mbm-footer-v243 a,
  html body .footer.mbm-footer-v243 li{
    transition:color .18s ease,transform .18s ease !important;
  }
  html body .footer.mbm-footer-v243 a:hover{
    color:var(--gold2) !important;
  }
  html body .footer.mbm-footer-v243 .footer-services{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }
  html body .footer.mbm-footer-v243 .footer-services li{
    position:relative !important;
    padding-left:18px !important;
    margin:0 0 8px !important;
  }
  html body .footer.mbm-footer-v243 .footer-services li::before{
    content:'›';
    position:absolute;
    left:0;
    color:var(--gold2);
    font-weight:1000;
  }
  html body .footer.mbm-footer-v243 .footer-contact-row{
    display:flex !important;
    gap:10px !important;
    align-items:flex-start !important;
    margin:0 0 8px !important;
    color:#d9d9d9 !important;
  }
  html body .footer.mbm-footer-v243 .footer-contact-icon,
  html body .footer.mbm-footer-v243 .footer-contact-label{
    color:var(--gold2) !important;
    font-weight:900 !important;
    flex:0 0 auto !important;
  }
  html body .footer.mbm-footer-v243 .mbm-footer-serving-card p{
    margin:0 !important;
    max-width:300px !important;
    color:#d9d9d9 !important;
    line-height:1.8 !important;
  }
  html body .footer.mbm-footer-v243 .copyright{
    margin-top:48px !important;
    padding-top:22px !important;
    border-top:1px solid rgba(255,255,255,.12) !important;
    color:#aaa !important;
    font-size:14px !important;
    text-align:center !important;
  }
}
@media (min-width:981px) and (max-width:1360px){
  html body .mbm-footer-cta-wrap{grid-template-columns:1fr !important;gap:34px !important;}
  html body .mbm-footer-cta-v243 .mbm-cta-actions{justify-content:flex-start !important;}
  html body .footer-grid.mbm-footer-grid-v243{grid-template-columns:1.2fr 1fr 1fr !important;}
}
@media (max-width:980px){
  html body .mbm-footer-cta-v243 .mbm-cta-kicker{display:block;color:var(--gold2);font-weight:1000;text-transform:uppercase;letter-spacing:.14em;font-size:12px;margin-bottom:8px;}
  html body .mbm-footer-cta-v243 .mbm-cta-copy strong{display:block;line-height:1.05;margin-bottom:10px;}
  html body .mbm-footer-cta-v243 .mbm-cta-actions{display:flex;flex-direction:column;gap:12px;width:100%;}
  html body .mbm-footer-cta-v243 .btn{width:100%;border-radius:8px;}
  html body .footer.mbm-footer-v243{padding-top:44px;}
  html body .footer-grid.mbm-footer-grid-v243{grid-template-columns:1fr !important;gap:24px !important;}
  html body .footer.mbm-footer-v243 .mbm-footer-brand-card,
  html body .footer.mbm-footer-v243 .mbm-footer-contact-card,
  html body .footer.mbm-footer-v243 .mbm-footer-serving-card{padding:22px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-bottom:3px solid var(--gold2);}
}

/* =========================================================
   MBM-V244 - Clean premium closing CTA + footer rebuild
   Purpose: remove boxed footer clutter, fix contact wrapping,
   reduce CTA height, and create a unified premium footer.
   ========================================================= */
@media (min-width:981px){
  html body .cta.mbm-footer-cta-v244{
    padding:64px 0 62px !important;
    background:
      radial-gradient(circle at 82% 10%,rgba(224,162,11,.20),transparent 32%),
      linear-gradient(135deg,#050505 0%,#121212 62%,#060606 100%) !important;
    border-top:5px solid var(--gold2) !important;
    border-bottom:1px solid rgba(224,162,11,.22) !important;
  }
  html body .cta.mbm-footer-cta-v244::before{
    background-size:72px 72px !important;
    opacity:.28 !important;
  }
  html body .mbm-footer-cta-wrap-v244{
    width:min(1540px,calc(100% - 112px)) !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:56px !important;
    align-items:center !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-kicker{
    font-size:13px !important;
    letter-spacing:.22em !important;
    margin-bottom:12px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy strong{
    max-width:820px !important;
    font-size:clamp(38px,3.25vw,58px) !important;
    line-height:1 !important;
    letter-spacing:.035em !important;
    margin-bottom:12px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy > span:last-child{
    max-width:740px !important;
    font-size:18px !important;
    line-height:1.48 !important;
    color:#ececec !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions{
    gap:16px !important;
    align-items:center !important;
  }
  html body .mbm-footer-cta-v244 .btn{
    min-width:245px !important;
    height:58px !important;
    padding:0 30px !important;
    border-radius:9px !important;
    font-size:16px !important;
    white-space:nowrap !important;
  }

  html body .footer.mbm-footer-v244{
    background:#030303 !important;
    color:#d9d9d9 !important;
    padding:56px 0 24px !important;
    border-top:0 !important;
  }
  html body .footer.mbm-footer-v244::before{
    display:none !important;
  }
  html body .footer.mbm-footer-v244 .wrap{
    width:min(1540px,calc(100% - 112px)) !important;
  }
  html body .mbm-footer-main-v244{
    display:grid !important;
    grid-template-columns:1.15fr .62fr .88fr 1.35fr !important;
    gap:56px !important;
    align-items:start !important;
  }
  html body .footer.mbm-footer-v244 .footer-grid,
  html body .footer.mbm-footer-v244 .mbm-footer-grid-v243{
    display:contents !important;
  }
  html body .mbm-footer-brand-v244,
  html body .mbm-footer-links-v244,
  html body .mbm-footer-services-v244,
  html body .mbm-footer-contact-v244{
    min-width:0 !important;
  }
  html body .mbm-footer-brand-v244 img{
    width:156px !important;
    max-width:156px !important;
    display:block !important;
    background:#fff !important;
    padding:9px !important;
    margin:0 0 20px !important;
    box-shadow:0 15px 38px rgba(0,0,0,.30) !important;
  }
  html body .mbm-footer-brand-v244 p{
    max-width:320px !important;
    margin:0 0 18px !important;
    color:#cfcfcf !important;
    font-size:15px !important;
    line-height:1.65 !important;
  }
  html body .mbm-footer-trust-v244{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    max-width:360px !important;
  }
  html body .mbm-footer-trust-v244 span{
    display:inline-flex !important;
    align-items:center !important;
    min-height:30px !important;
    padding:0 12px !important;
    border:1px solid rgba(224,162,11,.45) !important;
    border-radius:999px !important;
    color:#fff !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.055em !important;
    text-transform:uppercase !important;
  }
  html body .footer.mbm-footer-v244 h4{
    margin:0 0 18px !important;
    color:#fff !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:.15em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }

  html body .mbm-footer-brand-v244 .mbm-footer-logo-link{
    display:inline-block !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a{
    color:#fff !important;
    font-size:inherit !important;
    line-height:inherit !important;
    font-weight:inherit !important;
    letter-spacing:inherit !important;
    text-transform:inherit !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a:hover{
    color:var(--gold2) !important;
  }

  html body .footer.mbm-footer-v244 h4::after{
    content:'' !important;
    display:block !important;
    width:42px !important;
    height:3px !important;
    margin-top:12px !important;
    background:var(--gold2) !important;
  }
  html body .footer.mbm-footer-v244 a,
  html body .footer.mbm-footer-v244 li,
  html body .footer.mbm-footer-v244 p,
  html body .footer.mbm-footer-v244 span{
    color:#d9d9d9 !important;
    font-size:15.5px !important;
    line-height:1.7 !important;
  }
  html body .footer.mbm-footer-v244 a{
    text-decoration:none !important;
    overflow-wrap:anywhere !important;
    transition:color .18s ease,transform .18s ease !important;
  }
  html body .footer.mbm-footer-v244 a:hover{color:var(--gold2) !important;}
  html body .footer.mbm-footer-v244 .footer-menu,
  html body .footer.mbm-footer-v244 .footer-services{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
  }
  html body .footer.mbm-footer-v244 .footer-menu li,
  html body .footer.mbm-footer-v244 .footer-services li{
    margin:0 0 8px !important;
    padding:0 !important;
  }
  html body .footer.mbm-footer-v244 .footer-services li{
    position:relative !important;
    padding-left:18px !important;
  }
  html body .footer.mbm-footer-v244 .footer-services li::before{
    content:'›' !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    color:var(--gold2) !important;
    font-weight:1000 !important;
  }
  html body .mbm-footer-contact-v244{
    font-style:normal !important;
  }
  html body .mbm-footer-contact-v244 p{
    display:grid !important;
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:16px !important;
    align-items:start !important;
    margin:0 0 10px !important;
    max-width:none !important;
  }
  html body .mbm-footer-contact-v244 strong{
    color:var(--gold2) !important;
    font-size:13px !important;
    font-weight:1000 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    line-height:1.7 !important;
  }
  html body .mbm-footer-contact-v244 a,
  html body .mbm-footer-contact-v244 span{
    display:block !important;
    min-width:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
  html body .mbm-footer-serving-v244{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:32px !important;
    margin-top:42px !important;
    padding:22px 0 !important;
    border-top:1px solid rgba(255,255,255,.10) !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }
  html body .mbm-footer-serving-v244 strong{
    flex:0 0 auto !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:1000 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
  }
  html body .mbm-footer-serving-v244 span{
    color:#cfcfcf !important;
    font-size:15px !important;
    line-height:1.55 !important;
    text-align:right !important;
  }
  html body .footer.mbm-footer-v244 .copyright{
    margin-top:0 !important;
    padding-top:22px !important;
    border-top:0 !important;
    color:#aaa !important;
    font-size:13.5px !important;
    text-align:center !important;
  }
}
@media (min-width:981px) and (max-width:1360px){
  html body .mbm-footer-cta-wrap-v244{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions{justify-content:flex-start !important;}
  html body .mbm-footer-main-v244{
    grid-template-columns:1.1fr 1fr 1fr !important;
    gap:38px !important;
  }
  html body .mbm-footer-contact-v244{grid-column:1 / -1 !important;max-width:760px !important;}
  html body .mbm-footer-serving-v244{align-items:flex-start !important;flex-direction:column !important;}
  html body .mbm-footer-serving-v244 span{text-align:left !important;}
}
@media (max-width:980px){
  html body .mbm-footer-cta-v244{padding:42px 0 !important;}
  html body .mbm-footer-cta-v244 .mbm-cta-kicker{display:block;color:var(--gold2);font-weight:1000;text-transform:uppercase;letter-spacing:.14em;font-size:12px;margin-bottom:8px;}
  html body .mbm-footer-cta-v244 .mbm-cta-copy strong{display:block;line-height:1.05;margin-bottom:10px;}
  html body .mbm-footer-cta-v244 .mbm-cta-actions{display:flex;flex-direction:column;gap:12px;width:100%;}
  html body .mbm-footer-cta-v244 .btn{width:100%;border-radius:8px;}
  html body .footer.mbm-footer-v244{padding:38px 0 22px;background:#030303;color:#d9d9d9;}
  html body .mbm-footer-main-v244{display:grid;grid-template-columns:1fr;gap:26px;}
  html body .mbm-footer-brand-v244 img{width:145px;max-width:145px;background:#fff;padding:8px;margin:0 0 16px;}
  html body .mbm-footer-trust-v244{display:flex;flex-wrap:wrap;gap:8px;}
  html body .mbm-footer-trust-v244 span{border:1px solid rgba(224,162,11,.45);border-radius:999px;padding:6px 10px;color:#fff;font-size:12px;font-weight:900;text-transform:uppercase;}
  html body .footer.mbm-footer-v244 h4{color:#fff;text-transform:uppercase;letter-spacing:.12em;margin:0 0 14px;}

  html body .mbm-footer-brand-v244 .mbm-footer-logo-link{
    display:inline-block !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a{
    color:#fff !important;
    font-size:inherit !important;
    line-height:inherit !important;
    font-weight:inherit !important;
    letter-spacing:inherit !important;
    text-transform:inherit !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a:hover{
    color:var(--gold2) !important;
  }

  html body .footer.mbm-footer-v244 h4::after{content:'';display:block;width:38px;height:3px;background:var(--gold2);margin-top:10px;}
  html body .footer.mbm-footer-v244 a,html body .footer.mbm-footer-v244 p,html body .footer.mbm-footer-v244 li,html body .footer.mbm-footer-v244 span{color:#d9d9d9;}
  html body .mbm-footer-contact-v244{font-style:normal;}
  html body .mbm-footer-contact-v244 p{margin:0 0 10px;}
  html body .mbm-footer-contact-v244 strong{display:block;color:var(--gold2);font-size:12px;text-transform:uppercase;letter-spacing:.08em;}
  html body .mbm-footer-serving-v244{margin-top:28px;padding:18px 0;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.10);}
  html body .mbm-footer-serving-v244 strong{display:block;color:#fff;text-transform:uppercase;letter-spacing:.10em;margin-bottom:8px;}
  html body .footer.mbm-footer-v244 .copyright{padding-top:18px;text-align:center;color:#aaa;font-size:13px;}
}

/* =========================================================
   MBM-V245 - Footer final alignment and premium polish
   Purpose: fix contact wrapping, reduce CTA dominance,
   tighten column rhythm, and simplify footer trust hierarchy.
   ========================================================= */
@media (min-width:981px){
  html body .cta.mbm-footer-cta-v244{
    padding:52px 0 50px !important;
    background:
      radial-gradient(circle at 78% 12%,rgba(224,162,11,.16),transparent 30%),
      linear-gradient(135deg,#050505 0%,#111 58%,#060606 100%) !important;
  }
  html body .mbm-footer-cta-wrap-v244{
    gap:44px !important;
    grid-template-columns:minmax(0,1fr) minmax(420px,auto) !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-kicker{
    font-size:12px !important;
    letter-spacing:.18em !important;
    margin-bottom:10px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy strong{
    max-width:760px !important;
    font-size:clamp(32px,2.65vw,48px) !important;
    letter-spacing:.02em !important;
    line-height:1.04 !important;
    margin-bottom:12px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy > span:last-child{
    max-width:760px !important;
    font-size:17px !important;
    line-height:1.5 !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions{
    display:flex !important;
    flex-direction:row !important;
    gap:14px !important;
    justify-content:flex-end !important;
  }
  html body .mbm-footer-cta-v244 .btn{
    min-width:210px !important;
    height:54px !important;
    padding:0 26px !important;
    border-radius:10px !important;
    box-shadow:0 16px 34px rgba(224,162,11,.13) !important;
    transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease !important;
  }
  html body .mbm-footer-cta-v244 .btn:hover{
    transform:translateY(-2px) !important;
    box-shadow:0 20px 42px rgba(224,162,11,.20) !important;
  }

  html body .footer.mbm-footer-v244{
    padding:52px 0 22px !important;
  }
  html body .mbm-footer-main-v244{
    grid-template-columns:minmax(250px,.95fr) minmax(130px,.48fr) minmax(220px,.74fr) minmax(430px,1.36fr) !important;
    gap:42px !important;
  }
  html body .mbm-footer-brand-v244 img{
    width:142px !important;
    max-width:142px !important;
    margin-bottom:18px !important;
  }
  html body .mbm-footer-brand-v244 p{
    max-width:300px !important;
    font-size:15px !important;
    line-height:1.62 !important;
    margin-bottom:16px !important;
  }
  html body .mbm-footer-trust-v244{
    gap:8px !important;
    max-width:330px !important;
  }
  html body .mbm-footer-trust-v244 span{
    min-height:28px !important;
    padding:0 11px !important;
    font-size:11.5px !important;
    letter-spacing:.04em !important;
  }
  html body .footer.mbm-footer-v244 h4{
    font-size:17px !important;
    letter-spacing:.115em !important;
    margin-bottom:18px !important;
  }

  html body .mbm-footer-brand-v244 .mbm-footer-logo-link{
    display:inline-block !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a{
    color:#fff !important;
    font-size:inherit !important;
    line-height:inherit !important;
    font-weight:inherit !important;
    letter-spacing:inherit !important;
    text-transform:inherit !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a:hover{
    color:var(--gold2) !important;
  }

  html body .footer.mbm-footer-v244 h4::after{
    width:38px !important;
    margin-top:10px !important;
  }
  html body .footer.mbm-footer-v244 .footer-services li{
    padding-left:17px !important;
    margin-bottom:9px !important;
  }
  html body .footer.mbm-footer-v244 .footer-services li::before{
    content:'✓' !important;
    top:1px !important;
    font-size:12px !important;
  }
  html body .footer.mbm-footer-v244 .footer-menu li,
  html body .footer.mbm-footer-v244 .footer-services li,
  html body .footer.mbm-footer-v244 .footer-menu a,
  html body .footer.mbm-footer-v244 .footer-services a,
  html body .footer.mbm-footer-v244 .footer-services span{
    font-size:15px !important;
    line-height:1.55 !important;
  }
  html body .mbm-footer-contact-v244 p{
    grid-template-columns:86px minmax(0,1fr) !important;
    gap:14px !important;
    margin:0 0 9px !important;
  }
  html body .mbm-footer-contact-v244 strong{
    font-size:12px !important;
    letter-spacing:.045em !important;
    white-space:nowrap !important;
    line-height:1.55 !important;
  }
  html body .mbm-footer-contact-v244 a,
  html body .mbm-footer-contact-v244 span{
    font-size:15px !important;
    line-height:1.55 !important;
    white-space:nowrap !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }
  html body .mbm-footer-serving-v244{
    margin-top:36px !important;
    padding:18px 0 !important;
    display:block !important;
    text-align:center !important;
  }
  html body .mbm-footer-serving-v244 strong{
    display:block !important;
    font-size:13px !important;
    letter-spacing:.10em !important;
    margin:0 0 8px !important;
  }
  html body .mbm-footer-serving-v244 span{
    display:block !important;
    max-width:1180px !important;
    margin:0 auto !important;
    text-align:center !important;
    font-size:14.5px !important;
    line-height:1.55 !important;
    color:#c9c9c9 !important;
  }
}
@media (min-width:981px) and (max-width:1360px){
  html body .mbm-footer-cta-wrap-v244{
    grid-template-columns:1fr !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions{
    justify-content:flex-start !important;
  }
  html body .mbm-footer-main-v244{
    grid-template-columns:1fr 1fr !important;
    gap:36px 44px !important;
  }
  html body .mbm-footer-contact-v244{grid-column:auto !important;max-width:none !important;}
  html body .mbm-footer-contact-v244 p{grid-template-columns:86px minmax(0,1fr) !important;}
  html body .mbm-footer-contact-v244 a,
  html body .mbm-footer-contact-v244 span{white-space:normal !important;overflow-wrap:anywhere !important;}
}

/* =========================================================
   MBM-V246 - Final footer restructure
   Purpose: stronger visible change from V245: shorter CTA,
   cleaner unified footer, no contact wrapping, tighter rhythm.
   ========================================================= */
@media (min-width:981px){
  html body .cta.mbm-footer-cta-v244{
    padding:44px 0 42px !important;
    border-top:4px solid var(--gold2) !important;
    border-bottom:1px solid rgba(224,162,11,.28) !important;
    background:
      radial-gradient(circle at 86% 0%, rgba(224,162,11,.18), transparent 32%),
      linear-gradient(135deg,#050505 0%,#101010 62%,#060606 100%) !important;
  }
  html body .mbm-footer-cta-wrap-v244{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:46px !important;
    align-items:center !important;
    max-width:1500px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-kicker{
    display:block !important;
    color:var(--gold2) !important;
    font-size:12px !important;
    line-height:1 !important;
    letter-spacing:.18em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    margin:0 0 12px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy strong{
    display:block !important;
    max-width:620px !important;
    color:#fff !important;
    font-size:clamp(30px,2.25vw,42px) !important;
    line-height:1.03 !important;
    letter-spacing:.015em !important;
    margin:0 0 12px !important;
    text-transform:uppercase !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy > span:last-child{
    display:block !important;
    max-width:760px !important;
    color:#e7e7e7 !important;
    font-size:16.5px !important;
    line-height:1.55 !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions{
    display:flex !important;
    flex-direction:row !important;
    gap:14px !important;
    justify-content:flex-end !important;
    align-items:center !important;
    width:auto !important;
  }
  html body .mbm-footer-cta-v244 .btn{
    min-width:205px !important;
    height:52px !important;
    padding:0 26px !important;
    border-radius:9px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:14px !important;
    letter-spacing:.07em !important;
    box-shadow:0 12px 28px rgba(224,162,11,.14) !important;
  }
  html body .mbm-footer-cta-v244 .btn:hover{
    transform:translateY(-2px) !important;
    box-shadow:0 20px 42px rgba(224,162,11,.22) !important;
  }

  html body .footer.mbm-footer-v244{
    padding:46px 0 20px !important;
    background:#020202 !important;
  }
  html body .mbm-footer-main-v244{
    display:grid !important;
    grid-template-columns:280px 150px 250px minmax(430px,1fr) !important;
    gap:54px !important;
    align-items:start !important;
    max-width:1500px !important;
  }
  html body .mbm-footer-brand-v244 img{
    width:150px !important;
    max-width:150px !important;
    padding:8px !important;
    margin:0 0 18px !important;
    background:#fff !important;
  }
  html body .mbm-footer-brand-v244 p{
    max-width:270px !important;
    margin:0 0 16px !important;
    color:#d8d8d8 !important;
    font-size:14.5px !important;
    line-height:1.62 !important;
  }
  html body .mbm-footer-trust-v244{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    max-width:285px !important;
  }
  html body .mbm-footer-trust-v244 span{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:27px !important;
    padding:0 11px !important;
    border:1px solid rgba(224,162,11,.55) !important;
    border-radius:999px !important;
    color:#fff !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:1000 !important;
    letter-spacing:.055em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
  }
  html body .footer.mbm-footer-v244 h4{
    margin:0 0 20px !important;
    color:#fff !important;
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:.10em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
  }

  html body .mbm-footer-brand-v244 .mbm-footer-logo-link{
    display:inline-block !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a{
    color:#fff !important;
    font-size:inherit !important;
    line-height:inherit !important;
    font-weight:inherit !important;
    letter-spacing:inherit !important;
    text-transform:inherit !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 h4 a:hover{
    color:var(--gold2) !important;
  }

  html body .footer.mbm-footer-v244 h4::after{
    content:'' !important;
    display:block !important;
    width:38px !important;
    height:3px !important;
    margin-top:10px !important;
    background:var(--gold2) !important;
  }
  html body .footer.mbm-footer-v244 .footer-menu,
  html body .footer.mbm-footer-v244 .footer-services{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
  }
  html body .footer.mbm-footer-v244 .footer-menu li,
  html body .footer.mbm-footer-v244 .footer-services li{
    margin:0 0 8px !important;
    padding:0 !important;
  }
  html body .footer.mbm-footer-v244 .footer-services li{
    position:relative !important;
    padding-left:18px !important;
  }
  html body .footer.mbm-footer-v244 .footer-services li::before{
    content:'✓' !important;
    position:absolute !important;
    left:0 !important;
    top:1px !important;
    color:var(--gold2) !important;
    font-size:11px !important;
    font-weight:1000 !important;
  }
  html body .footer.mbm-footer-v244 .footer-menu a,
  html body .footer.mbm-footer-v244 .footer-services a,
  html body .footer.mbm-footer-v244 .footer-services span{
    color:#d9d9d9 !important;
    font-size:14.5px !important;
    line-height:1.52 !important;
    text-decoration:none !important;
  }
  html body .footer.mbm-footer-v244 a:hover{color:var(--gold2) !important;}

  html body .mbm-footer-contact-v244{
    font-style:normal !important;
    min-width:0 !important;
  }
  html body .mbm-footer-contact-v244 p{
    display:grid !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    gap:18px !important;
    align-items:baseline !important;
    margin:0 0 9px !important;
  }
  html body .mbm-footer-contact-v244 strong{
    color:var(--gold2) !important;
    font-size:11.5px !important;
    font-weight:1000 !important;
    letter-spacing:.045em !important;
    text-transform:uppercase !important;
    line-height:1.5 !important;
    white-space:nowrap !important;
  }
  html body .mbm-footer-contact-v244 a,
  html body .mbm-footer-contact-v244 span{
    color:#e1e1e1 !important;
    display:block !important;
    font-size:14.5px !important;
    line-height:1.5 !important;
    white-space:nowrap !important;
    overflow:visible !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    text-decoration:none !important;
  }
  html body .mbm-footer-serving-v244{
    max-width:1500px !important;
    margin:34px auto 0 !important;
    padding:17px 0 !important;
    display:block !important;
    border-top:1px solid rgba(255,255,255,.10) !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
    text-align:center !important;
  }
  html body .mbm-footer-serving-v244 strong{
    display:block !important;
    color:#fff !important;
    font-size:12.5px !important;
    line-height:1.35 !important;
    letter-spacing:.10em !important;
    font-weight:1000 !important;
    text-transform:uppercase !important;
    margin:0 0 8px !important;
  }
  html body .mbm-footer-serving-v244 span{
    display:block !important;
    max-width:1120px !important;
    margin:0 auto !important;
    color:#cfcfcf !important;
    font-size:14px !important;
    line-height:1.55 !important;
    text-align:center !important;
  }
  html body .footer.mbm-footer-v244 .copyright{
    max-width:1500px !important;
    padding-top:18px !important;
    color:#aaa !important;
    font-size:13px !important;
    text-align:center !important;
  }
}
@media (min-width:981px) and (max-width:1360px){
  html body .mbm-footer-cta-wrap-v244{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions{
    justify-content:flex-start !important;
  }
  html body .mbm-footer-main-v244{
    grid-template-columns:1fr 1fr !important;
    gap:36px 46px !important;
  }
  html body .mbm-footer-contact-v244 p{
    grid-template-columns:82px minmax(0,1fr) !important;
  }
  html body .mbm-footer-contact-v244 a,
  html body .mbm-footer-contact-v244 span{
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
}


/* v247 footer polish */
.footer-main,.site-footer .footer-main{
padding-top:70px!important;
padding-bottom:50px!important;
}
.footer-cta,.cta-footer,.pre-footer{
padding-bottom:45px!important;
margin-bottom:0!important;
}
.footer-logo img,.footer-brand img,.custom-logo{
max-width:170px!important;
height:auto!important;
}
.footer-brand p,.footer-logo p{
max-width:280px!important;
}
.footer-columns{
gap:40px!important;
align-items:start!important;
}
.footer-widget h3,.footer-widget h4{
margin-bottom:14px!important;
}
.footer-widget ul li,.footer-contact li{
margin-bottom:10px!important;
}
.footer-badges,.license-badges{
margin-top:18px!important;
}

/* MBM-V252: Our Work portfolio folder tabs + full photo galleries */
.mbm-work-index-section{
  background:#fff;
  padding:78px 0 34px;
}
.mbm-work-heading-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,560px);
  gap:42px;
  align-items:end;
  margin-bottom:34px;
}
.mbm-work-heading-row .section-title{
  max-width:900px;
}
.mbm-work-intro{
  margin:0;
  color:#333;
  font-size:19px;
  line-height:1.65;
}
.mbm-work-tabs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0;
  background:#242424;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 45px rgba(0,0,0,.12);
}
.mbm-work-tab{
  min-height:62px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 28px;
  color:#fff;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.025em;
  font-size:15px;
  border-right:1px solid rgba(255,255,255,.13);
  transition:background .22s ease,color .22s ease,transform .22s ease;
}
.mbm-work-tab:hover,
.mbm-work-tab:focus,
.mbm-work-tab.is-active{
  background:var(--gold);
  color:#fff;
}
.mbm-work-tab-contact{
  margin-left:auto;
  background:#101010;
  color:#fff;
}
.mbm-work-gallery-section{
  background:#f4f4f4;
  padding:28px 0 82px;
}
.mbm-work-folder{
  scroll-margin-top:28px;
  margin:0 0 46px;
  background:#fff;
  border:1px solid #e7e7e7;
  box-shadow:0 20px 50px rgba(0,0,0,.06);
}
.mbm-work-folder:last-child{
  margin-bottom:0;
}
.mbm-work-folder-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  padding:30px 34px;
  background:#101010;
  color:#fff;
  border-top:5px solid var(--gold);
}
.mbm-work-folder-eyebrow{
  display:block;
  color:var(--gold2);
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.18em;
  font-size:13px;
  margin-bottom:8px;
}
.mbm-work-folder-header h2{
  margin:0;
  text-transform:uppercase;
  font-size:clamp(28px,2.4vw,44px);
  line-height:1.02;
  letter-spacing:.02em;
  font-weight:1000;
}
.mbm-work-folder-link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 20px;
  border:1px solid var(--gold);
  color:#fff;
  text-transform:uppercase;
  font-weight:1000;
  font-size:13px;
  letter-spacing:.03em;
  transition:background .22s ease,transform .22s ease;
}
.mbm-work-folder-link:hover,
.mbm-work-folder-link:focus{
  background:var(--gold);
  transform:translateY(-2px);
}
.mbm-work-folder-panel{
  padding:24px;
}
.mbm-work-photo-grid.folder-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  overflow:visible;
}
.mbm-work-photo.folder-thumb{
  display:block;
  position:relative;
  overflow:hidden;
  width:100%;
  min-width:0;
  height:245px;
  padding:0;
  border:0;
  background:#111;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(0,0,0,.10);
}
.mbm-work-photo.folder-thumb::after{
  content:'View Photo';
  position:absolute;
  left:14px;
  bottom:14px;
  padding:8px 11px;
  background:rgba(0,0,0,.74);
  color:#fff;
  text-transform:uppercase;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.08em;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .22s ease,transform .22s ease;
}
.mbm-work-photo.folder-thumb:hover::after,
.mbm-work-photo.folder-thumb:focus::after{
  opacity:1;
  transform:translateY(0);
}
.mbm-work-photo.folder-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .28s ease,filter .28s ease;
}
.mbm-work-photo.folder-thumb:hover img,
.mbm-work-photo.folder-thumb:focus img{
  transform:scale(1.045);
  filter:brightness(.88);
}
@media(max-width:1180px){
  .mbm-work-heading-row{grid-template-columns:1fr;gap:16px;align-items:start;}
  .mbm-work-tab{padding:0 20px;font-size:13px;}
  .mbm-work-photo-grid.folder-gallery{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:980px){
  .mbm-work-index-section{padding:48px 0 24px;}
  .mbm-work-tabs{display:grid;grid-template-columns:1fr 1fr;}
  .mbm-work-tab{min-height:54px;border-right:0;border-bottom:1px solid rgba(255,255,255,.13);}
  .mbm-work-tab-contact{margin-left:0;}
  .mbm-work-folder-header{align-items:flex-start;flex-direction:column;padding:24px 20px;}
  .mbm-work-folder-panel{padding:14px;}
  .mbm-work-photo-grid.folder-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .mbm-work-photo.folder-thumb{height:190px;}
}
@media(max-width:560px){
  .mbm-work-tabs{grid-template-columns:1fr;}
  .mbm-work-photo-grid.folder-gallery{grid-template-columns:1fr;}
  .mbm-work-photo.folder-thumb{height:235px;}
}

/* MBM-V253: active, functional Our Work folder tabs */
.mbm-work-tab{
  cursor:pointer;
}
.mbm-work-tab.is-active{
  background:linear-gradient(180deg,#d99a06,#bd7d00) !important;
  color:#fff !important;
}
.mbm-work-tab:focus-visible{
  outline:3px solid rgba(224,162,11,.42);
  outline-offset:3px;
}
.mbm-work-folder.is-filtered-out{
  display:none !important;
}
.mbm-work-gallery-section{
  scroll-margin-top:92px;
}

/* MBM-V265: final Our Work jump-link fix. Buttons are true links and all galleries stay open. */
html{scroll-behavior:smooth;}
#projects-gallery,
.mbm-work-folder{scroll-margin-top:130px;}
.mbm-work-tabs{position:relative;z-index:50;}
.mbm-work-tabs .mbm-work-tab{cursor:pointer;pointer-events:auto;user-select:none;}
.mbm-work-folder.open .mbm-work-folder-panel,
.mbm-work-folder.open .folder-panel{display:block!important;}
@media(max-width:760px){
  #projects-gallery,
  .mbm-work-folder{scroll-margin-top:28px;}
}


/* MBM-V266: Our Work reliable anchor targets */
html{scroll-behavior:smooth;}
#projects-gallery, .mbm-work-folder{scroll-margin-top:150px;}
.mbm-work-tabs a.mbm-work-tab{pointer-events:auto!important;cursor:pointer!important;}
.mbm-work-folder.open .folder-panel,.mbm-work-folder.open .mbm-work-folder-panel{display:block!important;}
@media (max-width: 768px){#projects-gallery,.mbm-work-folder{scroll-margin-top:84px;}}

/* MBM-V267: hard-rebuilt Our Work category jump buttons */
.mbm-work-tabs a.mbm-work-tab{
  position:relative;
  z-index:999;
  pointer-events:auto!important;
  cursor:pointer!important;
  text-decoration:none!important;
}
.mbm-work-folder,.mbm-work-gallery-section{scroll-margin-top:120px;}

/* MBM-V268: Our Work category buttons use absolute anchor URLs; these targets provide reliable jump points. */
.mbm-anchor-target{display:block;position:relative;top:-120px;visibility:hidden;height:0;width:0;overflow:hidden;}
@media(max-width:768px){.mbm-anchor-target{top:-82px;}}

/* MBM-V269: simplify Our Work category intro */
.mbm-work-index-section{
  padding:58px 0 28px!important;
}
.mbm-work-heading-row-clean{
  display:block!important;
  margin-bottom:26px!important;
  text-align:center!important;
}
.mbm-work-heading-center{
  max-width:920px;
  margin:0 auto;
}
.mbm-work-heading-row-clean .eyebrow{
  display:block;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.22em;
  font-weight:1000;
  margin-bottom:10px;
}
.mbm-work-heading-row-clean .section-title{
  max-width:none!important;
  margin:0 auto!important;
  line-height:.94;
}
.mbm-work-title-rule{
  display:block;
  width:112px;
  height:5px;
  background:var(--gold);
  margin:22px auto 0;
}
.mbm-work-intro{
  display:none!important;
}
@media(max-width:980px){
  .mbm-work-index-section{padding:42px 0 22px!important;}
  .mbm-work-heading-row-clean{text-align:left!important;margin-bottom:20px!important;}
  .mbm-work-heading-center{margin:0;}
  .mbm-work-title-rule{margin-left:0;}
}


/* MBM-V274: Mobile service cards simplified for better visibility and cleaner tapping. */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding:44px 0 48px!important;
    background:#fff!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(42px,11vw,56px)!important;
    line-height:1!important;
    margin-bottom:28px!important;
  }
  body.home .service-grid-intro{
    display:none!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
    margin-top:28px!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    display:block!important;
    background:transparent!important;
    border:0!important;
    border-radius:16px!important;
    overflow:hidden!important;
    box-shadow:0 18px 42px rgba(0,0,0,.14)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:235px!important;
    height:235px!important;
    padding:28px 22px!important;
    border:1px solid rgba(0,0,0,.08)!important;
    border-radius:16px!important;
    overflow:hidden!important;
    align-items:flex-start!important;
    justify-content:flex-end!important;
    text-align:left!important;
    gap:0!important;
    box-shadow:inset 0 -145px 115px rgba(0,0,0,.38), inset 0 0 0 999px rgba(0,0,0,.20)!important;
    background-size:cover!important;
    background-position:center!important;
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease!important;
  }
  body.home .service-card-toggle.folder-toggle::before,
  body.home .service-card-toggle .folder-chevron,
  body.home .service-card-subtitle,
  body.home .desktop-service-desc{
    display:none!important;
    content:none!important;
  }
  body.home .service-card-title{
    width:auto!important;
    max-width:92%!important;
    padding:0!important;
    margin:0!important;
    color:#fff!important;
    text-transform:uppercase!important;
    font-size:clamp(32px,9vw,44px)!important;
    line-height:1.02!important;
    letter-spacing:.015em!important;
    text-shadow:0 3px 16px rgba(0,0,0,.70)!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:translateY(-1px)!important;
    border-color:var(--gold2)!important;
    box-shadow:inset 0 -145px 115px rgba(0,0,0,.34), inset 0 0 0 999px rgba(0,0,0,.16), 0 18px 48px rgba(195,131,0,.22)!important;
  }
}
@media (max-width: 520px){
  body.home .service-gallery-section .wrap{
    width:calc(100% - 36px)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:225px!important;
    height:225px!important;
    padding:24px 20px!important;
  }
  body.home .service-card-title{
    font-size:clamp(30px,8.4vw,40px)!important;
  }
}
@media (min-width: 981px){
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle{
    transform:translateY(-3px)!important;
    box-shadow:inset 0 -190px 120px rgba(0,0,0,.62),0 22px 54px rgba(0,0,0,.18)!important;
  }
}


/* MBM V275 - mobile service cards final polish */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding-top:56px!important;
    padding-bottom:52px!important;
  }
  body.home .service-gallery-section .mbm-section-kicker{
    font-size:16px!important;
    letter-spacing:.24em!important;
    margin-bottom:18px!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(42px,10.5vw,56px)!important;
    line-height:1.02!important;
    letter-spacing:-.015em!important;
    max-width:92%!important;
    margin-bottom:30px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:26px!important;
    margin-top:24px!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    border-radius:18px!important;
    box-shadow:0 18px 46px rgba(0,0,0,.12)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:218px!important;
    height:218px!important;
    padding:0 24px 34px!important;
    border:1px solid rgba(0,0,0,.06)!important;
    border-radius:18px!important;
    justify-content:flex-end!important;
    box-shadow:inset 0 -112px 90px rgba(0,0,0,.42), inset 0 0 0 999px rgba(0,0,0,.10)!important;
    background-size:cover!important;
    background-position:center!important;
    will-change:transform!important;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease!important;
  }
  body.home .service-card-title{
    max-width:92%!important;
    font-size:clamp(28px,8vw,38px)!important;
    line-height:1.03!important;
    letter-spacing:.01em!important;
    text-shadow:0 4px 18px rgba(0,0,0,.72)!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:translateY(-2px)!important;
    border-color:var(--gold2)!important;
    box-shadow:inset 0 -112px 90px rgba(0,0,0,.38), inset 0 0 0 999px rgba(0,0,0,.08), 0 18px 44px rgba(195,131,0,.20)!important;
  }
  body.home .floating-call,
  body.home .floating-call-btn,
  body.home .mbm-floating-call,
  body.home a[href^="tel:"].call-float{
    transform:scale(.86)!important;
    transform-origin:right bottom!important;
    right:14px!important;
    bottom:76px!important;
  }
}
@media (max-width: 520px){
  body.home .service-gallery-section .wrap{
    width:calc(100% - 40px)!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(40px,10vw,52px)!important;
    max-width:100%!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:208px!important;
    height:208px!important;
    padding:0 22px 32px!important;
  }
  body.home .service-card-title{
    font-size:clamp(27px,7.8vw,36px)!important;
  }
}
@media (min-width: 981px){
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle{
    transform:translateY(-4px)!important;
    border-color:var(--gold2)!important;
    box-shadow:inset 0 -150px 110px rgba(0,0,0,.54), inset 0 0 0 999px rgba(0,0,0,.08), 0 24px 58px rgba(0,0,0,.20)!important;
  }
}


/* MBM V276 - final mobile service-card refinements */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding-top:52px!important;
    padding-bottom:50px!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(44px,11vw,58px)!important;
    line-height:.98!important;
    letter-spacing:-.01em!important;
    margin-bottom:28px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:24px!important;
    margin-top:22px!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:0 20px 46px rgba(0,0,0,.13)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:220px!important;
    height:220px!important;
    padding:0 24px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:left!important;
    border:1px solid rgba(0,0,0,.055)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center!important;
    box-shadow:inset 0 0 0 999px rgba(0,0,0,.26), inset 0 -70px 95px rgba(0,0,0,.26)!important;
    transition:transform .20s ease, box-shadow .20s ease, border-color .20s ease, filter .20s ease!important;
  }
  body.home .service-card-toggle.folder-toggle::before,
  body.home .service-card-toggle .folder-chevron,
  body.home .service-card-subtitle,
  body.home .desktop-service-desc{
    display:none!important;
    content:none!important;
  }
  body.home .service-card-title{
    display:block!important;
    width:100%!important;
    max-width:92%!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    text-transform:uppercase!important;
    font-size:clamp(30px,8.2vw,38px)!important;
    line-height:1.02!important;
    letter-spacing:.008em!important;
    text-shadow:0 4px 18px rgba(0,0,0,.78)!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:translateY(-2px) scale(.995)!important;
    border-color:var(--gold2)!important;
    box-shadow:inset 0 0 0 999px rgba(0,0,0,.34), inset 0 -70px 95px rgba(0,0,0,.32), 0 18px 42px rgba(195,131,0,.20)!important;
  }
  body.home .floating-call,
  body.home .floating-call-btn,
  body.home .mbm-floating-call,
  body.home a[href^="tel:"].call-float{
    transform:scale(.78)!important;
    transform-origin:right bottom!important;
    right:10px!important;
    bottom:76px!important;
  }
}
@media (max-width: 520px){
  body.home .service-gallery-section .wrap{
    width:calc(100% - 40px)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:215px!important;
    height:215px!important;
    padding:0 22px!important;
  }
  body.home .service-card-title{
    font-size:clamp(29px,8vw,36px)!important;
  }
}
@media (min-width: 981px){
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle{
    transform:translateY(-4px)!important;
    border-color:var(--gold2)!important;
    box-shadow:inset 0 0 0 999px rgba(0,0,0,.34), inset 0 -90px 110px rgba(0,0,0,.34), 0 24px 58px rgba(0,0,0,.20)!important;
  }
}

/* MBM V277 - mobile service-card final polish: bottom-left labels, lighter gradient, smaller floating call */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding-top:50px!important;
    padding-bottom:34px!important;
  }
  body.home .service-gallery-section .mbm-section-kicker{
    margin-bottom:14px!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(42px,10.5vw,56px)!important;
    line-height:1!important;
    margin-bottom:26px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:24px!important;
    margin-top:20px!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:0 16px 38px rgba(0,0,0,.12)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    position:relative!important;
    min-height:214px!important;
    height:214px!important;
    padding:0 22px 26px!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:flex-start!important;
    text-align:left!important;
    border:1px solid rgba(0,0,0,.055)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center!important;
    box-shadow:none!important;
    isolation:isolate!important;
    transition:transform .20s ease, border-color .20s ease, filter .20s ease!important;
  }
  body.home .service-card-toggle.folder-toggle::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    pointer-events:none!important;
    background:linear-gradient(180deg, rgba(0,0,0,.16) 0%, rgba(0,0,0,.18) 42%, rgba(0,0,0,.54) 100%)!important;
  }
  body.home .service-card-toggle.folder-toggle::before,
  body.home .service-card-toggle .folder-chevron,
  body.home .service-card-subtitle,
  body.home .desktop-service-desc{
    display:none!important;
    content:none!important;
  }
  body.home .service-card-title{
    position:relative!important;
    z-index:1!important;
    display:block!important;
    width:auto!important;
    max-width:94%!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    text-transform:uppercase!important;
    font-size:clamp(28px,7.7vw,36px)!important;
    line-height:1.04!important;
    letter-spacing:.006em!important;
    text-align:left!important;
    text-shadow:0 4px 16px rgba(0,0,0,.70)!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:translateY(-2px) scale(.997)!important;
    border-color:var(--gold2)!important;
    filter:saturate(1.06)!important;
  }
  body.home .service-folder-card:active .service-card-toggle::after,
  body.home .service-folder-card:focus-visible .service-card-toggle::after{
    background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.20) 42%, rgba(0,0,0,.58) 100%)!important;
  }
  body.home .mbm-sticky-call-v222{
    right:12px!important;
    bottom:72px!important;
  }
  body.home .mbm-sticky-call-v222 a{
    width:60px!important;
    height:60px!important;
    font-size:12px!important;
    border-width:2px!important;
    box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
  }
}
@media (max-width: 520px){
  body.home .service-gallery-section{
    padding-bottom:28px!important;
  }
  body.home .service-gallery-section .wrap{
    width:calc(100% - 40px)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:208px!important;
    height:208px!important;
    padding:0 22px 24px!important;
  }
  body.home .service-card-title{
    font-size:clamp(27px,7.4vw,34px)!important;
  }
}
@media (min-width: 981px){
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle{
    transform:translateY(-4px)!important;
    border-color:var(--gold2)!important;
  }
}

/* MBM V278 - mobile service cards: 8-point final refinement
   1) lower titles, 2) lighter overlay, 3) taller cards, 4) full-card tap, 5) arrow cue,
   6) consistent left alignment, 7) tighter spacing, 8) simplified heading on mobile. */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding-top:52px!important;
    padding-bottom:22px!important;
  }
  body.home .service-gallery-section .mbm-section-kicker{
    display:none!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(42px,10vw,54px)!important;
    line-height:.98!important;
    margin:0 0 28px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:24px!important;
    margin-top:0!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    display:block!important;
    width:100%!important;
    border-radius:18px!important;
    overflow:hidden!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:rgba(224,162,11,.22)!important;
    box-shadow:0 14px 34px rgba(0,0,0,.12)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    position:relative!important;
    min-height:280px!important;
    height:280px!important;
    padding:0 72px 30px 24px!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:flex-start!important;
    text-align:left!important;
    border:1px solid rgba(0,0,0,.06)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center!important;
    box-shadow:none!important;
    isolation:isolate!important;
    transition:transform .24s ease, border-color .24s ease, filter .24s ease!important;
  }
  body.home .service-folder-link[data-folder="railings"] .service-card-toggle{background-image:url('assets/home-cards/metal-railings.png')!important;}
  body.home .service-folder-link[data-folder="gates"] .service-card-toggle{background-image:url('assets/home-cards/metal-gates.png')!important;}
  body.home .service-folder-link[data-folder="ada-handrails"] .service-card-toggle{background-image:url('assets/home-cards/ada-handrails.jpg')!important;}
  body.home .service-folder-link[data-folder="fence"] .service-card-toggle{background-image:url('assets/home-cards/metal-fencing.jpg')!important;}
  body.home .service-folder-link[data-folder="structural"] .service-card-toggle{background-image:url('assets/home-cards/structural-steel.jpg')!important;}
  body.home .service-folder-link[data-folder="metal-fabrication"],
  body.home .service-folder-link[data-folder="misc"]{display:block!important;}
  body.home .service-folder-link[data-folder="metal-fabrication"] .service-card-toggle{background-image:url('assets/home-cards/custom-fabrication.jpg')!important;}
  body.home .service-folder-link[data-folder="misc"] .service-card-toggle{background-image:url('assets/home-cards/custom-fabrication.jpg')!important;}

  body.home .service-card-toggle.folder-toggle::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    pointer-events:none!important;
    background:linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.18) 48%, rgba(0,0,0,.48) 100%)!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    content:"→"!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:absolute!important;
    right:22px!important;
    bottom:28px!important;
    z-index:2!important;
    width:38px!important;
    height:38px!important;
    border-radius:999px!important;
    border:1px solid rgba(255,255,255,.42)!important;
    background:rgba(0,0,0,.22)!important;
    color:#fff!important;
    font-size:22px!important;
    line-height:1!important;
    font-weight:900!important;
    text-shadow:none!important;
    transform:none!important;
  }
  body.home .service-card-toggle .folder-chevron,
  body.home .service-card-subtitle,
  body.home .desktop-service-desc{
    display:none!important;
    content:none!important;
  }
  body.home .service-card-title{
    position:relative!important;
    z-index:1!important;
    display:block!important;
    width:auto!important;
    max-width:calc(100% - 12px)!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    text-transform:uppercase!important;
    font-size:clamp(30px,7.6vw,38px)!important;
    line-height:1.02!important;
    letter-spacing:.004em!important;
    text-align:left!important;
    text-shadow:0 4px 18px rgba(0,0,0,.78)!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:translateY(-2px) scale(.996)!important;
    border-color:var(--gold2)!important;
    filter:saturate(1.08) brightness(1.05)!important;
  }
  body.home .service-folder-card:active .service-card-toggle::after,
  body.home .service-folder-card:focus-visible .service-card-toggle::after{
    background:linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.16) 48%, rgba(0,0,0,.42) 100%)!important;
  }
  body.home .mbm-sticky-call-v222{
    right:10px!important;
    bottom:66px!important;
  }
  body.home .mbm-sticky-call-v222 a{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    min-height:56px!important;
    font-size:11px!important;
    border-width:2px!important;
    box-shadow:0 10px 22px rgba(0,0,0,.25)!important;
  }
}
@media (max-width: 520px){
  body.home .service-gallery-section .wrap{
    width:calc(100% - 40px)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:258px!important;
    height:258px!important;
    padding:0 66px 28px 22px!important;
  }
  body.home .service-card-title{
    font-size:clamp(28px,7.2vw,34px)!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    right:18px!important;
    bottom:24px!important;
    width:34px!important;
    height:34px!important;
    font-size:20px!important;
  }
}
@media (min-width:981px){
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle{
    transform:translateY(-4px)!important;
    border-color:var(--gold2)!important;
  }
}

/* MBM V279 - final mobile service-card polish: lower/smaller labels, lighter photos, clean arrow, tighter premium rhythm */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding-top:48px!important;
    padding-bottom:8px!important;
  }
  body.home .service-gallery-section .mbm-section-kicker,
  body.home .service-grid-intro{
    display:none!important;
  }
  body.home .service-gallery-section .section-title{
    font-size:clamp(40px,9.4vw,52px)!important;
    line-height:1!important;
    letter-spacing:-.015em!important;
    margin:0 0 30px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:32px!important;
    margin-top:0!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    display:block!important;
    width:100%!important;
    border-radius:18px!important;
    overflow:hidden!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:rgba(224,162,11,.18)!important;
    box-shadow:0 18px 38px rgba(0,0,0,.12)!important;
    transition:transform .22s ease, box-shadow .22s ease!important;
  }
  body.home .service-folder-card:active,
  body.home .service-folder-link:active{
    transform:translateY(-2px) scale(1.01)!important;
    box-shadow:0 24px 48px rgba(0,0,0,.18)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    position:relative!important;
    min-height:282px!important;
    height:282px!important;
    padding:36px 72px 28px 26px!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    text-align:left!important;
    border:1px solid rgba(0,0,0,.05)!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center!important;
    box-shadow:none!important;
    isolation:isolate!important;
    transition:transform .24s ease, filter .24s ease!important;
  }
  body.home .service-card-toggle.folder-toggle::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    pointer-events:none!important;
    background:linear-gradient(180deg, rgba(0,0,0,.24) 0%, rgba(0,0,0,.10) 42%, rgba(0,0,0,.18) 100%)!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    content:"→"!important;
    display:block!important;
    position:absolute!important;
    right:26px!important;
    bottom:30px!important;
    z-index:2!important;
    width:auto!important;
    height:auto!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#fff!important;
    font-size:36px!important;
    line-height:1!important;
    font-weight:900!important;
    text-shadow:0 3px 14px rgba(0,0,0,.58)!important;
  }
  body.home .service-card-title{
    position:relative!important;
    z-index:1!important;
    display:block!important;
    width:auto!important;
    max-width:calc(100% - 10px)!important;
    margin:0!important;
    padding:0!important;
    color:#fff!important;
    text-transform:uppercase!important;
    font-size:clamp(30px,6.6vw,38px)!important;
    line-height:1.02!important;
    letter-spacing:.002em!important;
    text-align:left!important;
    text-shadow:0 3px 15px rgba(0,0,0,.66)!important;
  }
  body.home .service-card-toggle .folder-chevron,
  body.home .service-card-subtitle,
  body.home .desktop-service-desc{
    display:none!important;
    content:none!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:scale(1.012)!important;
    filter:saturate(1.08) brightness(1.06)!important;
  }
  body.home .service-folder-card:active .service-card-toggle::after,
  body.home .service-folder-card:focus-visible .service-card-toggle::after{
    background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.07) 42%, rgba(0,0,0,.15) 100%)!important;
  }
  body.home .service-gallery-section + .intro,
  body.home .service-gallery-section + section.intro{
    margin-top:0!important;
    padding-top:34px!important;
  }
  body.home .mbm-sticky-call-v222{
    right:10px!important;
    bottom:68px!important;
    transition:opacity .22s ease, visibility .22s ease, transform .22s ease!important;
  }
  body.home .mbm-sticky-call-v222 a{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
    font-size:10px!important;
    border-width:2px!important;
    box-shadow:0 10px 22px rgba(0,0,0,.25)!important;
  }
  body.home.mbm-services-in-view .mbm-sticky-call-v222{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(12px) scale(.94)!important;
  }
}
@media (max-width: 520px){
  body.home .service-gallery-section .wrap{width:calc(100% - 40px)!important;}
  body.home .service-card-toggle.folder-toggle{
    min-height:270px!important;
    height:270px!important;
    padding:32px 58px 24px 24px!important;
  }
  body.home .service-card-title{
    font-size:clamp(28px,6.9vw,34px)!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    right:22px!important;
    bottom:24px!important;
    font-size:32px!important;
  }
}
@media (min-width:981px){
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle{
    transform:translateY(-5px) scale(1.01)!important;
    filter:saturate(1.08) brightness(1.05)!important;
  }
}

/* MBM V280 - final service-card micro-polish: brighter images, cleaner labels, tighter rhythm, hidden floating call in services */
@media (max-width: 980px){
  body.home .service-gallery-section{
    padding-top:48px!important;
    padding-bottom:0!important;
  }
  body.home .service-gallery-section .section-title{
    margin-bottom:28px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:26px!important;
  }
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    box-shadow:0 20px 46px rgba(0,0,0,.145)!important;
  }
  body.home .service-card-toggle.folder-toggle{
    min-height:282px!important;
    height:282px!important;
    padding:40px 66px 26px 26px!important;
    background-position:center!important;
    filter:saturate(1.06) brightness(1.07)!important;
  }
  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.04) 48%, rgba(0,0,0,.12) 100%)!important;
  }
  body.home .service-card-title{
    font-size:clamp(27px,6.35vw,36px)!important;
    line-height:1.02!important;
    text-align:left!important;
    max-width:calc(100% - 18px)!important;
    transform:translateY(7px)!important;
    text-shadow:0 3px 12px rgba(0,0,0,.50)!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    right:27px!important;
    bottom:30px!important;
    font-size:28px!important;
    text-shadow:0 3px 12px rgba(0,0,0,.52)!important;
  }
  body.home .service-folder-card:active,
  body.home .service-folder-link:active{
    transform:translateY(-2px) scale(1.012)!important;
    box-shadow:0 26px 54px rgba(0,0,0,.20)!important;
  }
  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:scale(1.018)!important;
    filter:saturate(1.12) brightness(1.12)!important;
  }
  body.home .service-folder-card:active .service-card-toggle::after,
  body.home .service-folder-card:focus-visible .service-card-toggle::after{
    background:linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.03) 48%, rgba(0,0,0,.10) 100%)!important;
  }
  body.home .service-gallery-section + .intro,
  body.home .service-gallery-section + section.intro{
    margin-top:0!important;
    padding-top:50px!important;
  }
  body.home.mbm-services-in-view .mbm-sticky-call-v222,
  body.home.mbm-services-in-view .floating-call,
  body.home.mbm-services-in-view .sticky-call,
  body.home.mbm-services-in-view a[href^="tel:"].mbm-floating-call{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(14px) scale(.92)!important;
  }
}
@media (max-width: 520px){
  body.home .service-card-toggle.folder-toggle{
    min-height:276px!important;
    height:276px!important;
    padding:38px 58px 24px 24px!important;
  }
  body.home .service-card-title{
    font-size:clamp(27px,6.55vw,32px)!important;
    transform:translateY(7px)!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    right:24px!important;
    bottom:24px!important;
    font-size:28px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:26px!important;
  }
}

/* MBM V281 - mobile service cards: final 8 micro-refinements */
@media (max-width: 980px){
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:32px!important;
  }

  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    box-shadow:0 24px 52px rgba(0,0,0,.16)!important;
  }

  body.home .service-card-toggle.folder-toggle{
    min-height:unset!important;
    height:auto!important;
    aspect-ratio:4 / 3!important;
    padding:36px 72px 28px 26px!important;
    background-size:cover!important;
    background-position:center!important;
    filter:saturate(1.08) brightness(1.12)!important;
    transition:transform .24s ease, filter .24s ease, box-shadow .24s ease!important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.18) 31%, rgba(0,0,0,.02) 58%, rgba(0,0,0,.06) 100%)!important;
  }

  body.home .service-card-title{
    font-size:clamp(26px,6.05vw,34px)!important;
    line-height:1.03!important;
    text-align:left!important;
    max-width:75%!important;
    margin:0!important;
    transform:none!important;
    text-shadow:0 3px 14px rgba(0,0,0,.56)!important;
  }

  body.home .service-card-toggle.folder-toggle::before{
    right:28px!important;
    bottom:28px!important;
    font-size:24px!important;
    line-height:1!important;
    opacity:.92!important;
    text-shadow:0 3px 12px rgba(0,0,0,.50)!important;
    transition:transform .24s ease, opacity .24s ease!important;
  }

  body.home .service-folder-card:active,
  body.home .service-folder-link:active{
    transform:translateY(-2px) scale(1.012)!important;
    box-shadow:0 28px 58px rgba(0,0,0,.22)!important;
  }

  body.home .service-folder-card:active .service-card-toggle,
  body.home .service-folder-card:focus-visible .service-card-toggle{
    transform:scale(1.015)!important;
    filter:saturate(1.12) brightness(1.16)!important;
  }

  body.home .service-folder-card:active .service-card-toggle::before,
  body.home .service-folder-card:focus-visible .service-card-toggle::before{
    transform:translateX(4px)!important;
    opacity:1!important;
  }

  body.home .service-gallery-section + .intro,
  body.home .service-gallery-section + section.intro{
    padding-top:66px!important;
  }
}

@media (max-width: 520px){
  body.home .service-gallery-section .wrap{width:calc(100% - 42px)!important;}
  body.home .service-card-toggle.folder-toggle{
    min-height:unset!important;
    height:auto!important;
    aspect-ratio:4 / 3!important;
    padding:34px 62px 26px 24px!important;
  }
  body.home .service-card-title{
    font-size:clamp(25px,6.15vw,31px)!important;
    max-width:76%!important;
  }
  body.home .service-card-toggle.folder-toggle::before{
    right:24px!important;
    bottom:24px!important;
    font-size:23px!important;
  }
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:32px!important;
  }
}

@media (min-width: 981px){
  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    transition:transform .24s ease, box-shadow .24s ease!important;
  }
  body.home .service-folder-card:hover,
  body.home .service-folder-link:hover{
    transform:translateY(-4px)!important;
    box-shadow:0 28px 58px rgba(0,0,0,.18)!important;
  }
  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::before,
  body.home .service-folder-link:hover .service-card-toggle.folder-toggle::before{
    transform:translateX(6px)!important;
  }
}

/* MBM V282 - service detail mobile refinement polish */
@media (max-width: 768px){
  /* 1. Give the service hero image more weight on mobile */
  .railings-service-hero.service-page-intro{
    padding-top:34px!important;
    padding-bottom:24px!important;
  }
  .railings-service-hero .railings-hero-image{
    border:0!important;
    border-radius:24px!important;
    overflow:hidden!important;
    box-shadow:0 18px 44px rgba(0,0,0,.13)!important;
  }
  .railings-service-hero .railings-hero-image img{
    height:240px!important;
    min-height:240px!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  /* 2. Improve reading width and 3. body copy readability */
  .railings-service-wrap,
  .railings-gallery-page .wrap,
  .service-folder-page .wrap{
    width:calc(100% - 56px)!important;
    max-width:720px!important;
  }
  .railings-intro-text{
    font-size:17px!important;
    line-height:1.65!important;
    margin-bottom:18px!important;
    color:#2f2f2f!important;
  }
  .railings-service-hero .section-title{
    margin-top:22px!important;
    margin-bottom:20px!important;
  }

  /* 4. Add breathing room before Recent Projects */
  .railings-gallery-page,
  .service-gallery-section.service-folder-page{
    padding-top:44px!important;
    padding-bottom:58px!important;
  }
  .railings-gallery-page .section-title{
    margin-bottom:18px!important;
  }

  /* 5. Make the swipe/open gallery hint more subtle */
  .gallery-swipe-hint,
  .gallery-swipe-hint.gallery-open-trigger{
    min-height:0!important;
    padding:8px 12px!important;
    margin-bottom:20px!important;
    font-size:10px!important;
    letter-spacing:.045em!important;
    line-height:1.12!important;
    background:#fff9ea!important;
    border-color:rgba(194,137,0,.28)!important;
    color:#b77d00!important;
    box-shadow:none!important;
  }
  .gallery-swipe-hint span,
  .gallery-swipe-hint .gallery-swipe-label,
  .gallery-swipe-hint .gallery-tap-open{
    font-size:10px!important;
    color:#bd8500!important;
    line-height:1.12!important;
  }
  .gallery-swipe-hint span[aria-hidden="true"]{
    font-size:15px!important;
  }

  /* 6. Lighten gallery controls and 7. match gallery corners/shadows */
  .railings-gallery-page .folder-panel{
    border-radius:24px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 18px 44px rgba(0,0,0,.12)!important;
    border:1px solid #ececec!important;
    padding:10px!important;
  }
  .railings-gallery-page .folder-gallery{
    border-radius:18px!important;
    overflow-x:auto!important;
    padding-bottom:0!important;
  }
  .railings-gallery-page .folder-thumb{
    height:250px!important;
    border:0!important;
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:none!important;
    background:#111!important;
  }
  .railings-gallery-page .folder-thumb img{
    border-radius:18px!important;
  }
  .inline-gallery-arrow{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    font-size:34px!important;
    line-height:1!important;
    border:1px solid rgba(255,255,255,.58)!important;
    background:rgba(0,0,0,.36)!important;
    opacity:.88!important;
    box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
  }

  /* 8. Prevent abrupt ending before the next section/footer */
  .service-clean-gallery{
    margin-bottom:36px!important;
  }
}

@media (max-width:430px){
  .railings-service-wrap,
  .railings-gallery-page .wrap,
  .service-folder-page .wrap{
    width:calc(100% - 48px)!important;
  }
  .railings-service-hero .railings-hero-image img{
    height:230px!important;
    min-height:230px!important;
  }
  .railings-gallery-page .folder-thumb{
    height:238px!important;
  }
}

/* MBM V283 - Service detail Option B: integrated hero gallery */
.service-integrated-gallery .railings-hero-split{
  max-width:1200px!important;
  display:grid!important;
  grid-template-columns:minmax(0,560px) minmax(0,1fr)!important;
  gap:48px!important;
  align-items:center!important;
}
.service-integrated-gallery .railings-hero-gallery{
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  min-width:0!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-panel{
  position:relative!important;
  padding:0!important;
  border:0!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#111!important;
  box-shadow:0 24px 58px rgba(0,0,0,.16)!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-gallery{
  display:flex!important;
  gap:0!important;
  overflow-x:auto!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  border-radius:26px!important;
  scrollbar-width:none!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-gallery::-webkit-scrollbar{display:none!important;}
.service-integrated-gallery .railings-hero-gallery .folder-thumb{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  height:390px!important;
  scroll-snap-align:start!important;
  border:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:#111!important;
  cursor:pointer!important;
  display:block!important;
  box-shadow:none!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-thumb img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:0!important;
  filter:brightness(1.04) contrast(1.02)!important;
  transition:transform .32s ease, filter .32s ease!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-thumb:hover img,
.service-integrated-gallery .railings-hero-gallery .folder-thumb:focus img{
  transform:scale(1.025)!important;
  filter:brightness(1.08) contrast(1.04)!important;
}
.service-integrated-gallery .railings-hero-gallery .inline-gallery-arrow{
  z-index:4!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.26)!important;
  border:1px solid rgba(255,255,255,.42)!important;
  color:#fff!important;
  font-size:34px!important;
  opacity:.82!important;
  box-shadow:0 10px 26px rgba(0,0,0,.18)!important;
}
.service-integrated-gallery .railings-hero-gallery .inline-gallery-prev{left:14px!important;}
.service-integrated-gallery .railings-hero-gallery .inline-gallery-next{right:14px!important;}
.service-integrated-gallery .service-hero-gallery-note{
  margin:12px 0 0!important;
  color:#a87900!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  font-size:12px!important;
  line-height:1.3!important;
}
.service-integrated-gallery .railings-hero-copy .section-title{
  margin-top:0!important;
}

@media (max-width:980px){
  .service-integrated-gallery .railings-hero-split{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }
  .service-integrated-gallery .railings-hero-gallery{
    order:-1!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    height:330px!important;
  }
}

@media (max-width:768px){
  .service-integrated-gallery.railings-service-hero.service-page-intro{
    padding-top:28px!important;
    padding-bottom:46px!important;
  }
  .service-integrated-gallery .railings-service-wrap{
    width:calc(100% - 48px)!important;
    max-width:720px!important;
  }
  .service-integrated-gallery .railings-hero-split{
    gap:34px!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-panel{
    border-radius:24px!important;
    box-shadow:0 20px 48px rgba(0,0,0,.13)!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-gallery{
    border-radius:24px!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    height:260px!important;
    flex-basis:100%!important;
    width:100%!important;
  }
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-arrow{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    font-size:31px!important;
    background:rgba(0,0,0,.24)!important;
    opacity:.78!important;
  }
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-prev{left:12px!important;}
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-next{right:12px!important;}
  .service-integrated-gallery .service-hero-gallery-note{
    font-size:10px!important;
    letter-spacing:.09em!important;
    margin-top:10px!important;
  }
  .service-integrated-gallery .railings-service-hero .section-title,
  .service-integrated-gallery .section-title{
    font-size:clamp(2.5rem, 11vw, 3.25rem)!important;
    line-height:.95!important;
    margin-bottom:22px!important;
  }
  .service-integrated-gallery .railings-intro-text{
    font-size:17px!important;
    line-height:1.65!important;
    margin-bottom:18px!important;
  }
}

@media (max-width:430px){
  .service-integrated-gallery .railings-service-wrap{
    width:calc(100% - 42px)!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    height:250px!important;
  }
}

/* MBM V284 - Integrated service hero gallery final polish */
.service-integrated-gallery .railings-hero-gallery .folder-panel::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:34%!important;
  z-index:2!important;
  pointer-events:none!important;
  background:linear-gradient(to top, rgba(0,0,0,.58), rgba(0,0,0,.24) 48%, rgba(0,0,0,0))!important;
}
.service-integrated-gallery .service-hero-gallery-note{
  position:absolute!important;
  left:28px!important;
  bottom:22px!important;
  z-index:5!important;
  margin:0!important;
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.55)!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  font-size:12px!important;
  line-height:1.25!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  pointer-events:none!important;
}
.service-integrated-gallery .service-hero-gallery-dot{color:#d59600!important;}
.service-integrated-gallery .railings-hero-gallery .folder-thumb{
  height:430px!important;
}
@media (max-width:980px){
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    height:360px!important;
  }
}
@media (max-width:768px){
  .service-integrated-gallery.railings-service-hero.service-page-intro{
    padding-top:22px!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    height:300px!important;
  }
  .service-integrated-gallery .service-hero-gallery-note{
    left:18px!important;
    bottom:16px!important;
    font-size:9.5px!important;
    letter-spacing:.08em!important;
    gap:7px!important;
    max-width:calc(100% - 96px)!important;
    flex-wrap:wrap!important;
  }
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-arrow{
    background:rgba(0,0,0,.22)!important;
    border-color:rgba(255,255,255,.34)!important;
  }
}
@media (max-width:430px){
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    height:285px!important;
  }
}

/* MBM V285 - service detail integrated gallery conversion polish */
.service-integrated-gallery.railings-service-hero.service-page-intro{
  padding-bottom:78px!important;
}
.service-integrated-gallery .railings-hero-split{
  gap:52px!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-panel{
  border-radius:26px!important;
  box-shadow:0 26px 64px rgba(0,0,0,.16)!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-panel::after{
  height:42%!important;
  background:linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.36) 48%, rgba(0,0,0,0))!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-thumb{
  height:382px!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-thumb img{
  filter:brightness(1.08) contrast(1.02)!important;
  transition:opacity .28s ease, transform .32s ease, filter .32s ease!important;
}
.service-integrated-gallery .railings-hero-gallery.mbm-gallery-fading .folder-thumb img{
  opacity:.72!important;
}
.service-integrated-gallery .railings-hero-gallery .inline-gallery-arrow{
  width:45px!important;
  height:45px!important;
  min-width:45px!important;
  min-height:45px!important;
  font-size:32px!important;
  background:rgba(0,0,0,.42)!important;
  border:1px solid rgba(255,255,255,.46)!important;
  opacity:.9!important;
  box-shadow:0 14px 34px rgba(0,0,0,.28)!important;
}
.service-integrated-gallery .service-hero-gallery-note{
  left:28px!important;
  bottom:24px!important;
  font-size:11px!important;
  letter-spacing:.105em!important;
  max-width:calc(100% - 150px)!important;
}
.service-integrated-gallery .service-hero-gallery-counter{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  z-index:5!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.52)!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
  pointer-events:none!important;
}
.service-integrated-gallery .railings-hero-copy{
  padding-top:4px!important;
}
.service-integrated-gallery + .cta.mbm-cta-v221,
main + .cta.mbm-cta-v221{
  border-top:1px solid rgba(213,150,0,.55)!important;
  margin-top:24px!important;
}
body:not(.home) .mbm-service-sticky-estimate{
  position:fixed!important;
  left:18px!important;
  right:18px!important;
  bottom:18px!important;
  z-index:9997!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:54px!important;
  border-radius:999px!important;
  background:#d59600!important;
  color:#fff!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  font-size:14px!important;
  text-decoration:none!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
  transform:translateY(92px)!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:transform .22s ease, opacity .22s ease!important;
}
body:not(.home).mbm-service-sticky-ready .mbm-service-sticky-estimate{
  transform:translateY(0)!important;
  opacity:1!important;
  pointer-events:auto!important;
}
@media (min-width:769px){
  body:not(.home) .mbm-service-sticky-estimate{display:none!important;}
}
@media (max-width:980px){
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{height:318px!important;}
}
@media (max-width:768px){
  .service-integrated-gallery.railings-service-hero.service-page-intro{
    padding-top:16px!important;
    padding-bottom:72px!important;
  }
  .service-integrated-gallery .railings-hero-split{gap:30px!important;}
  .service-integrated-gallery .railings-hero-gallery .folder-panel{border-radius:24px!important;}
  .service-integrated-gallery .railings-hero-gallery .folder-gallery{border-radius:24px!important;}
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{height:260px!important;}
  .service-integrated-gallery .service-hero-gallery-note{
    left:18px!important;
    bottom:18px!important;
    font-size:9px!important;
    letter-spacing:.075em!important;
    gap:6px!important;
    max-width:calc(100% - 110px)!important;
  }
  .service-integrated-gallery .service-hero-gallery-counter{
    top:14px!important;
    right:14px!important;
    font-size:10.5px!important;
    padding:6px 9px!important;
  }
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-arrow{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    font-size:30px!important;
    background:rgba(0,0,0,.44)!important;
  }
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-prev{left:10px!important;}
  .service-integrated-gallery .railings-hero-gallery .inline-gallery-next{right:10px!important;}
  main + .cta.mbm-cta-v221{margin-top:28px!important;}
}
@media (max-width:430px){
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{height:242px!important;}
}

/* MBM V286 - service detail final 4 refinements */
.service-integrated-gallery .railings-hero-split{
  gap:28px!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-panel,
.service-integrated-gallery .railings-hero-gallery .folder-gallery,
.service-integrated-gallery .railings-hero-gallery .folder-thumb{
  border-radius:30px!important;
}
.service-integrated-gallery .railings-hero-gallery .folder-panel{
  box-shadow:0 30px 42px rgba(0,0,0,.12)!important;
}
.service-integrated-gallery .railings-hero-copy{
  padding-left:12px!important;
  padding-right:12px!important;
  max-width:980px!important;
}
.service-integrated-gallery .railings-hero-copy .section-title{
  position:relative!important;
  padding-bottom:24px!important;
  margin-bottom:30px!important;
}
.service-integrated-gallery .railings-hero-copy .section-title::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  bottom:0!important;
  width:72px!important;
  height:5px!important;
  background:#d59600!important;
  border-radius:999px!important;
}
.service-integrated-gallery .railings-intro-text{
  max-width:880px!important;
}
@media (max-width:768px){
  .service-integrated-gallery .railings-hero-split{
    gap:22px!important;
  }
  .service-integrated-gallery .railings-service-wrap{
    padding-left:32px!important;
    padding-right:32px!important;
  }
  .service-integrated-gallery .railings-hero-copy{
    padding-left:4px!important;
    padding-right:4px!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-panel,
  .service-integrated-gallery .railings-hero-gallery .folder-gallery,
  .service-integrated-gallery .railings-hero-gallery .folder-thumb{
    border-radius:28px!important;
  }
  .service-integrated-gallery .railings-hero-gallery .folder-panel{
    box-shadow:0 28px 38px rgba(0,0,0,.115)!important;
  }
  .service-integrated-gallery .railings-hero-copy .section-title{
    padding-bottom:20px!important;
    margin-bottom:24px!important;
  }
  .service-integrated-gallery .railings-hero-copy .section-title::after{
    width:70px!important;
    height:5px!important;
  }
  .service-integrated-gallery .railings-intro-text{
    max-width:100%!important;
  }
}
@media (max-width:430px){
  .service-integrated-gallery .railings-service-wrap{
    padding-left:24px!important;
    padding-right:24px!important;
  }
  .service-integrated-gallery .railings-hero-split{
    gap:20px!important;
  }
}

/* MBM-V287: Our Work mobile usability polish — sticky chips, counts, streamlined galleries, CTAs. */
.mbm-work-tabs-chips{
  position:sticky!important;
  top:0;
  z-index:80;
  border-radius:0;
}
.admin-bar .mbm-work-tabs-chips{top:32px;}
.mbm-work-folder{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  margin-bottom:56px!important;
}
.mbm-work-folder-header-lite{
  background:transparent!important;
  color:#101010!important;
  border-top:0!important;
  padding:0 0 22px!important;
  display:flex!important;
  align-items:end!important;
  border-bottom:1px solid rgba(0,0,0,.10);
}
.mbm-work-folder-header-lite .mbm-work-folder-eyebrow{
  color:var(--gold)!important;
  font-size:12px!important;
  margin-bottom:10px!important;
}
.mbm-work-folder-header-lite h2{
  color:#101010!important;
  font-size:clamp(36px,5vw,64px)!important;
  line-height:.92!important;
}
.mbm-work-count{
  display:inline-block;
  margin-top:12px;
  color:#595959;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:13px;
}
.mbm-work-folder-header-lite .mbm-work-folder-link{
  color:#101010!important;
  border-color:var(--gold)!important;
}
.mbm-work-folder-header-lite .mbm-work-folder-link:hover,
.mbm-work-folder-header-lite .mbm-work-folder-link:focus{
  color:#fff!important;
}
.mbm-work-folder-panel{padding:22px 0 0!important;}
.mbm-work-photo.folder-thumb{
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(0,0,0,.10);
  transform:translateZ(0);
}
.mbm-work-photo.folder-thumb::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  background:rgba(0,0,0,0);
  opacity:0;
  transition:opacity .22s ease,background .22s ease;
}
.mbm-work-photo.folder-thumb::after{
  z-index:2;
  content:'View Project';
  border-radius:0;
  background:rgba(0,0,0,.70);
}
.mbm-work-photo.folder-thumb:hover::before,
.mbm-work-photo.folder-thumb:focus::before,
.mbm-work-photo.folder-thumb:active::before{
  opacity:1;
  background:rgba(0,0,0,.18);
}
.mbm-work-photo.folder-thumb:active img{transform:scale(1.025);}
.mbm-work-category-cta{
  margin-top:28px;
  padding:28px;
  background:#101010;
  color:#fff;
  border-top:5px solid var(--gold);
}
.mbm-work-category-cta p{
  margin:0 0 14px;
  font-size:clamp(22px,3vw,32px);
  line-height:1.1;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.03em;
}
.mbm-work-category-cta-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.mbm-work-category-cta-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  background:var(--gold);
  color:#fff;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.04em;
}
.mbm-work-category-cta-actions a + a{
  background:transparent;
  border:1px solid var(--gold);
}
.mbm-back-to-categories{
  position:fixed;
  right:16px;
  bottom:18px;
  z-index:120;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 14px;
  border-radius:999px;
  background:#101010;
  color:#fff;
  border:1px solid var(--gold);
  box-shadow:0 14px 34px rgba(0,0,0,.25);
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.04em;
  font-size:12px;
}
@media(max-width:760px){
  .mbm-work-index-section{padding:38px 0 18px!important;}
  .mbm-work-heading-row-clean .eyebrow{font-size:13px!important;}
  .mbm-work-heading-row-clean .section-title{font-size:clamp(42px,13vw,58px)!important;}
  .mbm-work-title-rule{width:116px;height:5px;margin-top:18px!important;}
  .mbm-work-tabs-chips{
    position:sticky!important;
    top:0!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    gap:8px!important;
    padding:10px!important;
    background:#101010!important;
    border:0!important;
    box-shadow:0 12px 26px rgba(0,0,0,.18)!important;
    scrollbar-width:none;
  }
  .mbm-work-tabs-chips::-webkit-scrollbar{display:none;}
  .mbm-work-tabs-chips .mbm-work-tab{
    flex:0 0 auto!important;
    min-height:42px!important;
    border:1px solid rgba(255,255,255,.16)!important;
    border-radius:999px!important;
    padding:0 18px!important;
    font-size:12px!important;
    background:#242424;
    white-space:nowrap;
  }
  .mbm-work-tabs-chips .mbm-work-tab.is-active,
  .mbm-work-tabs-chips .mbm-work-tab:hover,
  .mbm-work-tabs-chips .mbm-work-tab:focus{
    background:var(--gold)!important;
  }
  .mbm-work-tab-contact{margin-left:0!important;}
  .mbm-work-gallery-section{padding:34px 0 72px!important;}
  .mbm-work-folder{margin-bottom:58px!important;}
  .mbm-work-folder-header-lite{
    padding-bottom:18px!important;
    display:block!important;
  }
  .mbm-work-folder-header-lite h2{font-size:clamp(42px,12vw,58px)!important;}
  .mbm-work-folder-header-lite .mbm-work-folder-link{
    margin-top:18px;
    width:100%;
    min-height:52px;
  }
  .mbm-work-photo-grid.folder-gallery{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .mbm-work-photo.folder-thumb{
    height:270px!important;
    border-radius:0!important;
  }
  .mbm-work-photo.folder-thumb:nth-child(3n+1){height:310px!important;}
  .mbm-work-photo.folder-thumb:nth-child(3n+2){height:230px!important;}
  .mbm-work-photo.folder-thumb::after{
    opacity:1!important;
    transform:none!important;
    font-size:12px!important;
    left:18px!important;
    bottom:18px!important;
    padding:10px 13px!important;
  }
  .mbm-work-category-cta{
    margin-top:22px!important;
    padding:24px 20px!important;
  }
  .mbm-work-category-cta-actions{display:grid;grid-template-columns:1fr;gap:12px;}
  .mbm-back-to-categories{bottom:14px;right:14px;}
}

/* MBM-V288: Our Work mobile gallery refinement — streamlined category flow. */
.mbm-work-folder-header-slim{
  border-bottom:1px solid rgba(0,0,0,.10)!important;
  margin-bottom:0!important;
}
.mbm-work-folder-header-slim .mbm-work-folder-eyebrow,
.mbm-work-folder-header-slim .mbm-work-folder-link{display:none!important;}
.mbm-work-folder-header-slim h2{margin:0!important;}
.mbm-work-folder + .mbm-work-folder{
  border-top:1px solid rgba(0,0,0,.10)!important;
  padding-top:42px!important;
}
.mbm-work-photo.folder-thumb::after{
  background:rgba(0,0,0,.58)!important;
  border-radius:6px!important;
  letter-spacing:.07em!important;
  font-size:13px!important;
  padding:11px 15px!important;
}
.mbm-work-photo.folder-thumb img{
  opacity:0;
  transition:opacity .24s ease, transform .24s ease, filter .24s ease!important;
}
.mbm-work-photo.folder-thumb img.mbm-loaded{opacity:1;}
.mbm-work-extra-photo{display:none!important;}
.mbm-work-folder.is-expanded .mbm-work-extra-photo{display:block!important;}
.mbm-work-show-more{
  width:100%;
  min-height:54px;
  margin:28px 0 0;
  border:1px solid var(--gold);
  background:transparent;
  color:#101010;
  text-transform:uppercase;
  font-weight:1000;
  letter-spacing:.04em;
  font-family:inherit;
  cursor:pointer;
}
.mbm-work-show-more:hover,
.mbm-work-show-more:focus{
  background:var(--gold);
  color:#fff;
}
.mbm-work-final-cta{
  margin-top:36px!important;
  margin-bottom:0!important;
}
.mbm-back-to-categories{
  min-height:38px!important;
  padding:0 12px!important;
  font-size:11px!important;
  box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
}
@media(max-width:760px){
  .mbm-work-tabs-chips{
    position:sticky!important;
    top:0!important;
    z-index:140!important;
  }
  .mbm-work-gallery-section{padding-top:28px!important;}
  .mbm-work-folder{margin-bottom:44px!important;}
  .mbm-work-folder + .mbm-work-folder{
    padding-top:36px!important;
  }
  .mbm-work-folder-header-slim{
    padding:0 0 16px!important;
    border-bottom:1px solid rgba(0,0,0,.10)!important;
  }
  .mbm-work-folder-header-slim h2{
    font-size:clamp(38px,11vw,54px)!important;
    line-height:.92!important;
  }
  .mbm-work-count{
    font-size:12px!important;
    margin-top:10px!important;
  }
  .mbm-work-photo-grid.folder-gallery{
    gap:30px!important;
  }
  .mbm-work-photo.folder-thumb{
    height:272px!important;
    border-radius:0!important;
    box-shadow:0 14px 28px rgba(0,0,0,.07)!important;
  }
  .mbm-work-photo.folder-thumb:nth-child(3n+1){height:302px!important;}
  .mbm-work-photo.folder-thumb:nth-child(3n+2){height:238px!important;}
  .mbm-work-photo.folder-thumb::after{
    background:rgba(0,0,0,.56)!important;
    border-radius:5px!important;
    font-size:11px!important;
    padding:9px 12px!important;
    left:20px!important;
    bottom:20px!important;
  }
  .mbm-work-category-cta:not(.mbm-work-final-cta){display:none!important;}
  .mbm-work-final-cta{
    margin-top:44px!important;
    padding:26px 22px!important;
  }
  .mbm-back-to-categories{
    right:12px!important;
    bottom:12px!important;
    min-height:36px!important;
    padding:0 11px!important;
    font-size:10px!important;
  }
}

/* MBM-V289: Our Work final mobile polish — compact headings, cleaner controls, sticky chips, refined CTAs. */
.mbm-work-count{display:none!important;}
.mbm-work-folder-header-slim h2,
.mbm-work-folder-header-lite h2{
  font-size:clamp(32px,4.25vw,50px)!important;
  line-height:.95!important;
  letter-spacing:.02em!important;
}
.mbm-work-folder + .mbm-work-folder{
  padding-top:64px!important;
  margin-top:10px!important;
}
.mbm-work-photo-grid.folder-gallery{gap:34px!important;}
.mbm-work-photo.folder-thumb{
  transition:transform .22s ease, box-shadow .22s ease!important;
}
.mbm-work-photo.folder-thumb:hover,
.mbm-work-photo.folder-thumb:focus-visible{
  transform:translateY(-2px)!important;
  box-shadow:0 20px 42px rgba(0,0,0,.12)!important;
}
.mbm-work-photo.folder-thumb:active{
  transform:scale(1.012)!important;
}
.mbm-work-photo.folder-thumb::after{
  background:rgba(0,0,0,.64)!important;
  border-radius:10px!important;
  font-size:12px!important;
  padding:9px 12px!important;
  letter-spacing:.065em!important;
}
.mbm-work-tabs-chips{
  box-shadow:0 10px 22px rgba(0,0,0,.16)!important;
}
.mbm-work-show-more{
  background:var(--gold)!important;
  color:#fff!important;
  border:0!important;
  min-height:58px!important;
  box-shadow:0 16px 34px rgba(215,151,0,.18)!important;
  position:relative!important;
  line-height:1.1!important;
}
.mbm-work-show-more::after{
  content:'See the complete gallery';
  display:block;
  margin-top:5px;
  font-size:10px;
  letter-spacing:.08em;
  opacity:.92;
}
.mbm-work-show-more:hover,
.mbm-work-show-more:focus{
  background:#101010!important;
  color:#fff!important;
}
.mbm-back-to-categories{
  transition:opacity .22s ease, transform .22s ease!important;
}
body.mbm-user-scrolling .mbm-back-to-categories{
  opacity:0!important;
  pointer-events:none!important;
  transform:translateY(8px)!important;
}
@media(max-width:760px){
  .mbm-work-tabs-chips{
    padding:8px!important;
    gap:7px!important;
    box-shadow:0 9px 18px rgba(0,0,0,.18)!important;
  }
  .mbm-work-tabs-chips .mbm-work-tab{
    min-height:38px!important;
    padding:0 16px!important;
    font-size:11px!important;
  }
  .mbm-work-gallery-section{padding-top:24px!important;}
  .mbm-work-folder{margin-bottom:54px!important;}
  .mbm-work-folder + .mbm-work-folder{
    padding-top:64px!important;
    margin-top:12px!important;
  }
  .mbm-work-folder-header-slim{
    padding:0 0 18px!important;
  }
  .mbm-work-folder-header-slim h2,
  .mbm-work-folder-header-lite h2{
    font-size:clamp(34px,9.5vw,46px)!important;
    line-height:.96!important;
  }
  .mbm-work-count{display:none!important;}
  .mbm-work-photo-grid.folder-gallery{
    gap:32px!important;
  }
  .mbm-work-photo.folder-thumb::after{
    background:rgba(0,0,0,.64)!important;
    border-radius:10px!important;
    font-size:10px!important;
    padding:8px 11px!important;
    left:18px!important;
    bottom:18px!important;
  }
  .mbm-work-show-more{
    margin-top:32px!important;
    min-height:62px!important;
    padding:10px 16px!important;
    font-size:14px!important;
  }
  .mbm-back-to-categories{
    min-height:34px!important;
    padding:0 10px!important;
    font-size:9px!important;
  }
}

/* MBM-V290: Our Work mobile final micro-polish. */
.mbm-work-photo-grid.folder-gallery{
  gap:38px!important;
}
.mbm-work-photo.folder-thumb{
  margin-bottom:4px!important;
}
.mbm-work-photo.folder-thumb::after{
  background:rgba(0,0,0,.60)!important;
  border-radius:12px!important;
  font-size:11px!important;
  padding:8px 11px!important;
  transition:transform .18s ease, opacity .18s ease, background .18s ease!important;
}
.mbm-work-photo.folder-thumb:active::after,
.mbm-work-photo.folder-thumb.is-tapped::after{
  transform:scale(.98)!important;
  background:rgba(0,0,0,.70)!important;
}
.mbm-work-folder + .mbm-work-folder{
  padding-top:76px!important;
  margin-top:18px!important;
}
.mbm-work-show-more{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  margin:42px 0 60px!important;
  min-height:66px!important;
  padding:12px 18px!important;
  text-align:center!important;
}
.mbm-work-show-more::after{
  line-height:1.1!important;
}
.mbm-work-tabs-chips{
  position:relative!important;
  box-shadow:0 8px 16px rgba(0,0,0,.13)!important;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 44px),rgba(0,0,0,.16) calc(100% - 18px),transparent 100%);
  mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 44px),rgba(0,0,0,.16) calc(100% - 18px),transparent 100%);
}
.mbm-back-to-categories{
  min-height:32px!important;
  padding:0 9px!important;
  font-size:9px!important;
  box-shadow:0 7px 16px rgba(0,0,0,.17)!important;
  border-color:rgba(215,151,0,.78)!important;
}
.mbm-work-photo img{
  will-change:opacity;
}
@media(max-width:760px){
  .mbm-work-tabs-chips{
    padding:7px!important;
    gap:7px!important;
    box-shadow:0 7px 14px rgba(0,0,0,.14)!important;
  }
  .mbm-work-tabs-chips .mbm-work-tab{
    min-height:36px!important;
    padding:0 14px!important;
    font-size:10px!important;
  }
  .mbm-work-folder + .mbm-work-folder{
    padding-top:76px!important;
    margin-top:18px!important;
  }
  .mbm-work-photo-grid.folder-gallery{
    gap:40px!important;
  }
  .mbm-work-photo.folder-thumb{
    margin-bottom:6px!important;
  }
  .mbm-work-photo.folder-thumb::after{
    font-size:10px!important;
    padding:8px 11px!important;
    border-radius:12px!important;
    background:rgba(0,0,0,.60)!important;
  }
  .mbm-work-show-more{
    margin:44px 0 66px!important;
    min-height:68px!important;
    padding:12px 18px!important;
  }
  .mbm-work-show-more::after{
    margin-top:6px!important;
    font-size:9px!important;
  }
  .mbm-back-to-categories{
    right:11px!important;
    bottom:11px!important;
    min-height:32px!important;
    padding:0 9px!important;
    font-size:9px!important;
    box-shadow:0 7px 16px rgba(0,0,0,.17)!important;
  }
}

/* MBM-V291: Our Work mobile gallery final active-state and polish refinements. */
/* 1. Only the currently selected chip should read as active; JS manages .is-active. */
.mbm-work-tabs-chips .mbm-work-tab:not(.is-active){
  background:#232323!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.14)!important;
}
.mbm-work-tabs-chips .mbm-work-tab.is-active{
  background:var(--gold)!important;
  color:#fff!important;
  border-color:var(--gold)!important;
}

/* 2. Softer horizontal overflow cue. */
.mbm-work-tabs-chips{
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 22px),rgba(0,0,0,.72) calc(100% - 9px),rgba(0,0,0,.45) 100%)!important;
  mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 22px),rgba(0,0,0,.72) calc(100% - 9px),rgba(0,0,0,.45) 100%)!important;
}

/* 3. Smaller, less intrusive floating categories button. */
.mbm-back-to-categories{
  min-height:30px!important;
  padding:0 8px!important;
  font-size:8.5px!important;
  bottom:24px!important;
  right:12px!important;
  box-shadow:0 5px 11px rgba(0,0,0,.13)!important;
}

/* 4. Slightly denser gallery rhythm inside each category. */
.mbm-work-photo-grid.folder-gallery{
  gap:30px!important;
}

/* 5. Expanded/show-fewer CTA keeps the same primary gold style. */
.mbm-work-folder.is-expanded .mbm-work-show-more,
.mbm-work-show-more{
  background:var(--gold)!important;
  color:#fff!important;
  border-color:var(--gold)!important;
}
.mbm-work-folder.is-expanded .mbm-work-show-more:hover,
.mbm-work-folder.is-expanded .mbm-work-show-more:focus,
.mbm-work-show-more:hover,
.mbm-work-show-more:focus{
  background:#111!important;
  color:#fff!important;
  border-color:var(--gold)!important;
}

/* 6. Clearer reset before each next category heading. */
.mbm-work-folder + .mbm-work-folder{
  padding-top:88px!important;
  margin-top:20px!important;
}

/* 7. Restore project counts as concise context. */
.mbm-work-count{
  display:block!important;
  margin-top:10px!important;
  color:#6f6f6f!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

/* 8. Smooth section response when jumping between categories. */
.mbm-work-folder{
  transition:opacity .2s ease, transform .2s ease!important;
}
.mbm-work-folder.mbm-jump-focus{
  animation:mbmWorkJumpFade .22s ease both;
}
@keyframes mbmWorkJumpFade{
  from{opacity:.68;transform:translateY(8px);}
  to{opacity:1;transform:translateY(0);}
}

@media(max-width:760px){
  .mbm-work-tabs-chips{
    -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 20px),rgba(0,0,0,.72) calc(100% - 8px),rgba(0,0,0,.45) 100%)!important;
    mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 20px),rgba(0,0,0,.72) calc(100% - 8px),rgba(0,0,0,.45) 100%)!important;
  }
  .mbm-back-to-categories{
    min-height:30px!important;
    padding:0 8px!important;
    font-size:8.5px!important;
    right:10px!important;
    bottom:22px!important;
  }
  .mbm-work-photo-grid.folder-gallery{
    gap:32px!important;
  }
  .mbm-work-folder + .mbm-work-folder{
    padding-top:88px!important;
    margin-top:20px!important;
  }
  .mbm-work-count{
    display:block!important;
    margin-top:9px!important;
    font-size:13px!important;
    letter-spacing:.13em!important;
  }
  .mbm-work-show-more{
    margin:38px 0 72px!important;
  }
}

/* MBM-V294: Our Work mobile scroll restore
   Built from the last confirmed scrolling base (v291). Keep vertical page scroll open while preserving horizontal chip scrolling. */
html,
body{
  height:auto !important;
  min-height:100% !important;
  max-height:none !important;
  overflow-y:auto !important;
  overscroll-behavior-y:auto !important;
  touch-action:auto !important;
}
body:not(.mbm-menu-open){
  position:static !important;
}
body.page-template-our-work-page,
body.page-template-our-work-page main,
body.page-template-our-work-page .mbm-work-index-section,
body.page-template-our-work-page .mbm-work-gallery-section,
body.page-template-our-work-page .mbm-work-gallery-section .wrap,
body.page-template-our-work-page .mbm-work-folder,
body.page-template-our-work-page .mbm-work-folder-panel,
body.page-template-our-work-page .mbm-work-photo-grid{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  transform:none;
}
body.page-template-our-work-page .mbm-work-tabs-chips{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch !important;
}
body.page-template-our-work-page .mbm-work-photo{
  overflow:hidden !important;
}
body.page-template-our-work-page .mbm-work-extra-photo{
  display:none !important;
}
body.page-template-our-work-page .mbm-work-folder.is-expanded .mbm-work-extra-photo{
  display:block !important;
}


/* MBM-V295: Our Work category nav grid refinement.
   Converts the mobile category selector from horizontal chips to a complete visible grid. */
body.page-template-our-work-page .mbm-work-heading-row-clean .section-title{
  max-width:900px!important;
}
body.page-template-our-work-page .mbm-work-tabs-chips{
  position:relative!important;
  top:auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  overflow:visible!important;
  padding:12px!important;
  background:#101010!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:0 12px 24px rgba(0,0,0,.14)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}
body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding:0 14px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:999px!important;
  background:#242424!important;
  color:#fff!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.08!important;
  font-size:12px!important;
}
body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab.is-active,
body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab:hover,
body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab:focus{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
  color:#fff!important;
}
@media(max-width:760px){
  body.page-template-our-work-page .mbm-work-index-section{
    padding:38px 0 28px!important;
  }
  body.page-template-our-work-page .mbm-work-heading-row-clean .section-title{
    font-size:clamp(40px,12vw,58px)!important;
    line-height:.95!important;
  }
  body.page-template-our-work-page .mbm-work-tabs-chips{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    padding:12px!important;
    overflow:visible!important;
    box-shadow:0 10px 22px rgba(0,0,0,.13)!important;
  }
  body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
    min-height:48px!important;
    padding:0 10px!important;
    font-size:11px!important;
    letter-spacing:.035em!important;
  }
}
@media(max-width:380px){
  body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
    font-size:10px!important;
    padding:0 8px!important;
  }
}

/* MBM-V296: Our Work category grid correction.
   Forces visible category grid on the live Our Work template and keeps the floating button visible. */
.mbm-work-index-section .section-title{
  max-width:820px!important;
}
.mbm-work-tabs.mbm-work-tabs-chips,
#mbm-work-category-nav{
  position:relative!important;
  top:auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  padding:12px!important;
  background:#101010!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:0 12px 24px rgba(0,0,0,.14)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
#mbm-work-category-nav .mbm-work-tab{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding:0 8px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:999px!important;
  background:#242424!important;
  color:#fff!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.05!important;
  font-size:11px!important;
  letter-spacing:.02em!important;
}
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab.is-active,
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab:hover,
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab:focus,
#mbm-work-category-nav .mbm-work-tab.is-active,
#mbm-work-category-nav .mbm-work-tab:hover,
#mbm-work-category-nav .mbm-work-tab:focus{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
  color:#fff!important;
}
.mbm-back-to-categories,
body.mbm-user-scrolling .mbm-back-to-categories{
  opacity:1!important;
  pointer-events:auto!important;
  transform:none!important;
  transition:none!important;
}
@media(max-width:760px){
  .mbm-work-index-section{padding:38px 0 28px!important;}
  .mbm-work-heading-row-clean .section-title,
  .mbm-work-index-section .section-title{
    font-size:clamp(38px,11.25vw,54px)!important;
    line-height:.95!important;
    max-width:720px!important;
  }
  .mbm-work-tabs.mbm-work-tabs-chips,
  #mbm-work-category-nav{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    padding:10px!important;
    overflow:visible!important;
    overflow-x:visible!important;
    -webkit-overflow-scrolling:auto!important;
  }
  .mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
  #mbm-work-category-nav .mbm-work-tab{
    min-height:42px!important;
    padding:0 4px!important;
    font-size:9px!important;
    letter-spacing:.01em!important;
    line-height:1.05!important;
  }
  .mbm-work-folder-header-slim h2,
  .mbm-work-folder-header-lite h2{
    font-size:clamp(36px,10.5vw,48px)!important;
  }
}
@media(max-width:380px){
  .mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
  #mbm-work-category-nav .mbm-work-tab{
    min-height:40px!important;
    font-size:8px!important;
    padding:0 3px!important;
  }
}

/* MBM-V297: Our Work category header polish.
   Tightens the section, uses a smaller heading, and keeps filter buttons equal. */
.mbm-work-index-section,
body.page-template-our-work-page .mbm-work-index-section{
  padding-top:30px!important;
  padding-bottom:18px!important;
}
.mbm-work-heading-row-clean,
body.page-template-our-work-page .mbm-work-heading-row-clean{
  margin-bottom:14px!important;
}
.mbm-work-heading-row-clean .eyebrow,
body.page-template-our-work-page .mbm-work-heading-row-clean .eyebrow{
  margin-bottom:10px!important;
}
.mbm-work-index-section .section-title,
.mbm-work-heading-row-clean .section-title,
body.page-template-our-work-page .mbm-work-index-section .section-title,
body.page-template-our-work-page .mbm-work-heading-row-clean .section-title{
  font-size:clamp(42px,7vw,72px)!important;
  line-height:.96!important;
  max-width:760px!important;
}
.mbm-work-title-rule,
body.page-template-our-work-page .mbm-work-title-rule{
  margin-top:18px!important;
  margin-bottom:0!important;
}
.mbm-work-tabs.mbm-work-tabs-chips,
#mbm-work-category-nav,
body.page-template-our-work-page .mbm-work-tabs-chips{
  margin-top:18px!important;
  padding:10px!important;
  gap:8px!important;
}
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
#mbm-work-category-nav .mbm-work-tab,
body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
  min-height:46px!important;
  height:46px!important;
  padding:0 6px!important;
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:760px){
  .mbm-work-index-section,
  body.page-template-our-work-page .mbm-work-index-section{
    padding-top:28px!important;
    padding-bottom:16px!important;
  }
  .mbm-work-heading-row-clean,
  body.page-template-our-work-page .mbm-work-heading-row-clean{
    margin-bottom:12px!important;
  }
  .mbm-work-index-section .section-title,
  .mbm-work-heading-row-clean .section-title,
  body.page-template-our-work-page .mbm-work-index-section .section-title,
  body.page-template-our-work-page .mbm-work-heading-row-clean .section-title{
    font-size:clamp(34px,9.8vw,46px)!important;
    max-width:640px!important;
  }
  .mbm-work-title-rule,
  body.page-template-our-work-page .mbm-work-title-rule{
    margin-top:14px!important;
    width:132px!important;
  }
  .mbm-work-tabs.mbm-work-tabs-chips,
  #mbm-work-category-nav,
  body.page-template-our-work-page .mbm-work-tabs-chips{
    margin-top:16px!important;
    padding:9px!important;
    gap:7px!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  .mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
  #mbm-work-category-nav .mbm-work-tab,
  body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
    min-height:40px!important;
    height:40px!important;
    padding:0 4px!important;
    font-size:9px!important;
    letter-spacing:.015em!important;
    white-space:nowrap!important;
  }
}
@media(max-width:380px){
  .mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
  #mbm-work-category-nav .mbm-work-tab,
  body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
    font-size:8px!important;
    min-height:38px!important;
    height:38px!important;
  }
}

/* MBM-V298: Our Work category selector final polish.
   Applies four requested refinements: centered final row, tighter panel padding,
   stronger active state, and rounded selector container. */
.mbm-work-tabs.mbm-work-tabs-chips,
#mbm-work-category-nav,
body.page-template-our-work-page .mbm-work-tabs-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px!important;
  border-radius:14px!important;
  overflow:visible!important;
  background:#101010!important;
  box-shadow:0 12px 24px rgba(0,0,0,.14)!important;
}
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
#mbm-work-category-nav .mbm-work-tab,
body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
  flex:0 0 calc((100% - 24px) / 4)!important;
  max-width:calc((100% - 24px) / 4)!important;
  min-width:0!important;
  width:auto!important;
  min-height:42px!important;
  height:42px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  font-size:10px!important;
  letter-spacing:.012em!important;
  line-height:1.04!important;
  white-space:normal!important;
}
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab.is-active,
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab:hover,
.mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab:focus,
#mbm-work-category-nav .mbm-work-tab.is-active,
#mbm-work-category-nav .mbm-work-tab:hover,
#mbm-work-category-nav .mbm-work-tab:focus{
  background:#d49400!important;
  border-color:#e3ad2c!important;
  color:#fff!important;
  box-shadow:0 6px 14px rgba(212,148,0,.26), inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
@media(max-width:760px){
  .mbm-work-tabs.mbm-work-tabs-chips,
  #mbm-work-category-nav,
  body.page-template-our-work-page .mbm-work-tabs-chips{
    gap:7px!important;
    padding:8px!important;
    border-radius:14px!important;
  }
  .mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
  #mbm-work-category-nav .mbm-work-tab,
  body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
    flex:0 0 calc((100% - 21px) / 4)!important;
    max-width:calc((100% - 21px) / 4)!important;
    min-height:40px!important;
    height:40px!important;
    padding:0 4px!important;
    font-size:9px!important;
  }
}
@media(max-width:380px){
  .mbm-work-tabs.mbm-work-tabs-chips .mbm-work-tab,
  #mbm-work-category-nav .mbm-work-tab,
  body.page-template-our-work-page .mbm-work-tabs-chips .mbm-work-tab{
    min-height:38px!important;
    height:38px!important;
    font-size:8px!important;
    padding:0 3px!important;
  }
}

/* MBM-V302: Our Work eyebrow-only refinement.
   Keeps Browse Projects as the sole header and shortens the gold accent line. */
body.page-template-our-work-page .mbm-work-heading-row-clean .section-title,
.mbm-work-index-section .mbm-work-heading-row-clean .section-title{
  display:none!important;
}
body.page-template-our-work-page .mbm-work-title-rule,
.mbm-work-index-section .mbm-work-title-rule{
  width:140px!important;
  max-width:140px!important;
  height:5px!important;
  margin-top:12px!important;
}
@media(max-width:760px){
  body.page-template-our-work-page .mbm-work-title-rule,
  .mbm-work-index-section .mbm-work-title-rule{
    width:136px!important;
    max-width:136px!important;
    margin-top:12px!important;
  }
}

/* MBM-V303: Browse Projects gold rule final balance.
   Shortens the eyebrow accent to visually match the compact header. */
body.page-template-our-work-page .mbm-work-title-rule,
.mbm-work-index-section .mbm-work-title-rule{
  width:104px!important;
  max-width:104px!important;
  height:5px!important;
}
@media(max-width:760px){
  body.page-template-our-work-page .mbm-work-title-rule,
  .mbm-work-index-section .mbm-work-title-rule{
    width:98px!important;
    max-width:98px!important;
  }
}


/* MBM-V306 - Services page + footer CTA final refinements */
html body .services-overview-hero h1{
  max-width:980px !important;
}
html body .mbm-footer-cta-v244 .mbm-cta-trust,
html body .mbm-footer-cta-v244 .mbm-cta-area{
  display:block !important;
  color:#f3f3f3 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.07em !important;
  line-height:1.35 !important;
}
html body .mbm-footer-cta-v244 .mbm-cta-trust{
  margin-top:14px !important;
  font-size:clamp(16px,1.4vw,22px) !important;
}
html body .mbm-footer-cta-v244 .mbm-cta-area{
  margin-top:4px !important;
  font-size:clamp(13px,1.05vw,17px) !important;
  color:#e4e4e4 !important;
}
html body .mbm-footer-cta-v244 .btn{
  white-space:nowrap !important;
}
@media (max-width:980px){
  html body .services-overview-hero h1{
    font-size:clamp(48px,13vw,78px) !important;
    line-height:.95 !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-copy{
    text-align:left !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-kicker{
    margin-bottom:12px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-trust,
  html body .mbm-footer-cta-v244 .mbm-cta-area{
    text-align:center !important;
  }
  html body .mbm-footer-cta-v244 .btn{
    white-space:normal !important;
    line-height:1.15 !important;
  }
}


/* MBM-V307 - Requested services final alignment
   1) Hero title shortened in template. 2) Service cards + footer services follow Browse Projects order.
   3) Mobile service copy tightened. 4) Footer logo enlarged. 6) Bottom call CTA made taller.
   7) Structural Steel card now uses a stronger project-specific steel image. */
html body .services-overview-hero h1{
  max-width:820px !important;
}
html body .services-overview-row-copy span{
  max-width:34ch !important;
}
html body .mbm-footer-brand-v244 img{
  width:180px !important;
  max-width:180px !important;
}
html body .mbm-footer-cta-v244 .mbm-cta-actions .btn:first-child{
  min-height:72px !important;
  padding-top:16px !important;
  padding-bottom:16px !important;
}
@media (max-width:980px){
  html body .services-overview-hero h1{
    font-size:clamp(48px,12vw,76px) !important;
    line-height:.96 !important;
  }
  html body .services-overview-row-copy span{
    max-width:26ch !important;
  }
  html body .mbm-footer-brand-v244 img{
    width:174px !important;
    max-width:174px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions .btn:first-child{
    min-height:74px !important;
  }
}

@media(max-width:768px){.mbm-footer-logo-link img{max-width:300px;width:75%;height:auto;}}

/* MBM-V316 - Mobile homepage FAQ accordion */
.mobile-home-faq{display:none;}
@media (max-width:980px){
  body.home .mobile-home-faq{
    display:block;
    background:#f6f6f6;
    padding:46px 0 52px;
  }
  body.home .mobile-home-faq .wrap{
    width:min(100% - 34px, 720px);
    margin:0 auto;
  }
  body.home .mobile-home-faq .mbm-section-kicker{
    display:block;
    text-align:center;
    color:var(--gold2);
    font-size:12px;
    font-weight:1000;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:10px;
  }
  body.home .mobile-home-faq .section-title{
    text-align:center;
    font-size:31px;
    line-height:1.05;
    margin:0 0 24px;
    text-transform:uppercase;
    font-weight:1000;
    color:#111;
  }
  body.home .mobile-faq-accordion{
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  body.home .mobile-faq-item{
    background:#fff;
    border:1px solid #e2e2e2;
    border-left:4px solid var(--gold2);
    box-shadow:0 10px 24px rgba(0,0,0,.055);
  }
  body.home .mobile-faq-item summary{
    list-style:none;
    cursor:pointer;
    padding:17px 48px 17px 16px;
    position:relative;
    font-size:16px;
    line-height:1.25;
    font-weight:900;
    text-transform:uppercase;
    color:#111;
  }
  body.home .mobile-faq-item summary::-webkit-details-marker{display:none;}
  body.home .mobile-faq-item summary::after{
    content:'+';
    position:absolute;
    right:17px;
    top:50%;
    transform:translateY(-50%);
    color:var(--gold2);
    font-size:24px;
    line-height:1;
    font-weight:900;
  }
  body.home .mobile-faq-item[open] summary::after{content:'–';}
  body.home .mobile-faq-item p{
    margin:0;
    padding:0 16px 18px;
    color:#444;
    font-size:15.5px;
    line-height:1.58;
  }
}
@media (min-width:981px){
  .mobile-home-faq{display:none !important;}
}

.footer-service-line{padding:18px 20px;text-align:center;background:#000;color:#cfcfcf;font-size:14px;border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:768px){.footer-service-line{font-size:13px;line-height:1.6}}
body.home .floating-call,body.home .floating-call-btn,body.home .mbm-floating-call,body.home a[href^="tel:"].call-float{transform:scale(.82)!important;}

/* MBM-V341 - Mobile homepage FAQ collapsed preview */
@media (max-width:980px){
  body.home .mobile-faq-more{
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  body.home .mobile-faq-more[hidden]{display:none !important;}
  body.home .mobile-faq-view-more{
    width:100%;
    margin:16px 0 0;
    border:2px solid var(--gold2);
    background:#fff;
    color:#111;
    min-height:54px;
    padding:14px 18px;
    font-size:15px;
    font-weight:1000;
    text-transform:uppercase;
    letter-spacing:.04em;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(0,0,0,.055);
  }
}

/* MBM-V347 - Desktop-only homepage polish
   Preserves current mobile layout. No trust strip added per request. */
@media (min-width:981px){
  body.home .hero-content,
  body.home section.hero .hero-content,
  body.home section.hero .wrap.hero-content{
    max-width:650px !important;
  }

  body.home .hero h1,
  body.home .hero-content h1,
  body.home .hero-title{
    max-width:650px !important;
  }

  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    min-height:250px !important;
  }

  body.home .service-card-toggle.folder-toggle{
    min-height:250px !important;
    padding-top:46px !important;
    padding-bottom:38px !important;
  }

  body.home .desktop-service-desc{
    margin-bottom:22px !important;
  }

  body.home .about-services-btn{
    width:min(500px,100%) !important;
    max-width:500px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:flex !important;
    justify-content:center !important;
  }

  body.home .desktop-faq-grid{
    row-gap:36px !important;
  }

  html body .mbm-footer-main-v244{
    column-gap:72px !important;
  }
}

/* MBM-V348 - Desktop-only header and hero CTA spacing polish
   Mobile layout intentionally untouched. */
@media (min-width:981px){
  html body .site-header .header-quote{
    margin-top:30px !important;
    transform:translateY(4px) !important;
    box-shadow:0 14px 28px rgba(166,106,0,.22) !important;
  }

  body.home .hero,
  body.home .mbm-hero-v29{
    min-height:790px !important;
    height:790px !important;
  }

  body.home .hero-content,
  body.home .hero-content.wrap,
  body.home section.hero .hero-content,
  body.home section.hero .wrap.hero-content{
    top:176px !important;
  }

  body.home .hero .lead{
    margin-bottom:40px !important;
  }

  body.home .hero .hero-cta-stack,
  body.home .mbm-hero-v29 .hero-cta-stack{
    margin-top:0 !important;
    margin-bottom:30px !important;
    gap:24px !important;
  }
}

/* MBM-V349 - Desktop-only hero typography and CTA breathing-room polish
   Mobile styling, breakpoints, spacing, and responsive behavior are intentionally untouched. */
@media (min-width:981px){
  html body .site-header .header-quote{
    height:70px !important;
    min-height:70px !important;
    margin-top:26px !important;
    transform:none !important;
    display:inline-flex !important;
    align-items:center !important;
  }

  body.home .hero,
  body.home .mbm-hero-v29{
    min-height:815px !important;
    height:815px !important;
  }

  body.home .hero-content,
  body.home .hero-content.wrap,
  body.home section.hero .hero-content,
  body.home section.hero .wrap.hero-content{
    max-width:820px !important;
    padding-bottom:86px !important;
  }

  body.home .hero h1,
  body.home .hero-content h1,
  body.home .hero .hero-title,
  body.home .hero-title{
    max-width:820px !important;
    font-size:clamp(56px,4.55vw,68px) !important;
    line-height:1.03 !important;
    letter-spacing:.052em !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }

  body.home .hero .lead{
    margin-bottom:48px !important;
    max-width:640px !important;
  }

  body.home .hero .hero-cta-stack,
  body.home .mbm-hero-v29 .hero-cta-stack{
    margin-top:0 !important;
    margin-bottom:58px !important;
  }

  html body .services-overview-hero h1{
    max-width:980px !important;
    font-size:clamp(56px,4.7vw,72px) !important;
    line-height:1.02 !important;
    letter-spacing:.05em !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
  }
}

/* MBM-V351 - Services landing page desktop-only polish. Mobile layout intentionally unchanged. */
.services-desktop-only{
  display:none !important;
}
@media (min-width:901px){
  html body .services-overview-hero .our-work-hero-content p{
    max-width:650px !important;
    font-size:clamp(24px,1.9vw,30px) !important;
  }
  html body .services-overview-hero .our-work-hero-secondary{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:260px !important;
    min-height:54px !important;
    margin-left:16px !important;
    padding:0 28px !important;
    border:2px solid rgba(255,255,255,.88) !important;
    color:#fff !important;
    background:rgba(0,0,0,.12) !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
    font-weight:1000 !important;
    letter-spacing:.08em !important;
    line-height:1 !important;
    box-shadow:0 12px 28px rgba(0,0,0,.20) !important;
  }
  html body .services-overview-hero .our-work-hero-secondary:hover,
  html body .services-overview-hero .our-work-hero-secondary:focus-visible{
    background:#fff !important;
    color:#111 !important;
  }
  html body .services-overview-list{
    gap:26px !important;
  }
  html body .services-overview-row{
    min-height:360px !important;
    grid-template-columns:minmax(360px,44%) minmax(0,1fr) !important;
  }
  html body .services-overview-row-image,
  html body .services-overview-row-image img{
    height:360px !important;
    min-height:360px !important;
    max-height:360px !important;
  }
  html body .services-overview-row-image img{
    object-fit:cover !important;
  }
  html body .services-overview-row-copy{
    justify-content:center !important;
    padding:44px 52px !important;
  }
  html body .services-overview-row-copy strong{
    margin-bottom:20px !important;
  }
  html body .services-overview-row-copy span{
    line-height:1.6 !important;
  }
  html body .services-credibility-strip{
    display:block !important;
    background:#f6f6f6 !important;
    padding:58px 0 64px !important;
    border-top:1px solid #e6e6e6 !important;
  }
  html body .services-credibility-inner h2{
    margin:0 0 26px !important;
    color:#111 !important;
    text-transform:uppercase !important;
    font-size:34px !important;
    line-height:1.05 !important;
    font-weight:1000 !important;
    letter-spacing:.02em !important;
    text-align:center !important;
  }
  html body .services-credibility-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:16px !important;
  }
  html body .services-credibility-grid span{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:78px !important;
    padding:18px 16px !important;
    background:#fff !important;
    border:1px solid #e3e3e3 !important;
    box-shadow:0 12px 28px rgba(0,0,0,.055) !important;
    color:#111 !important;
    text-align:center !important;
    text-transform:uppercase !important;
    font-weight:900 !important;
    letter-spacing:.045em !important;
    line-height:1.25 !important;
    font-size:15px !important;
  }
  html body .mbm-footer-cta-v244 .mbm-cta-actions .btn,
  html body .mbm-footer-cta-v244 .mbm-cta-actions a{
    min-width:220px !important;
    min-height:54px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
}

/* MBM-V352 - Services landing page desktop-only spacing/alignment refinements. Mobile layout intentionally unchanged. */
@media (min-width:901px){
  html body .services-overview-section{
    padding-top:56px !important;
  }
  html body .services-overview-list{
    gap:42px !important;
    margin-top:32px !important;
  }
  html body .services-overview-row{
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease !important;
    will-change:transform !important;
  }
  html body .services-overview-row:hover,
  html body .services-overview-row:focus-visible{
    transform:translateY(-4px) !important;
    box-shadow:0 24px 54px rgba(0,0,0,.13) !important;
    border-color:rgba(214,151,0,.28) !important;
  }
  html body .services-overview-row-image img{
    transition:transform .32s ease, filter .32s ease !important;
  }
  html body .services-overview-row:hover .services-overview-row-image img,
  html body .services-overview-row:focus-visible .services-overview-row-image img{
    transform:scale(1.03) !important;
    filter:brightness(1.045) !important;
  }
  html body .services-overview-row-copy{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }
  html body .services-overview-row-copy strong{
    transition:color .22s ease !important;
  }
  html body .services-overview-row:hover .services-overview-row-copy strong,
  html body .services-overview-row:focus-visible .services-overview-row-copy strong{
    color:var(--gold2) !important;
  }
  html body .services-overview-row-copy span{
    min-height:102px !important;
    margin-bottom:18px !important;
  }
  html body .services-overview-row-copy em{
    margin-top:0 !important;
  }
  html body .services-credibility-strip{
    margin-top:92px !important;
    padding-top:68px !important;
  }
}

/* MBM V354 - mobile-only floating contact speed dial: Contact expands to Call / Text / Email / Quote. Desktop untouched. */
.mbm-mobile-speed-dial{display:none;}
@media (max-width: 980px){
  body.home .mbm-mobile-speed-dial{
    position:fixed!important;
    right:12px!important;
    bottom:72px!important;
    z-index:99998!important;
    display:none;
    width:auto!important;
    height:auto!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
    box-shadow:none!important;
  }
  body.home.mbm-sticky-ready .mbm-mobile-speed-dial{display:block!important;}
  body.home.mbm-services-in-view .mbm-mobile-speed-dial{display:none!important;}
  body.home .mbm-mobile-speed-dial .mbm-speed-toggle,
  body.home .mbm-mobile-speed-dial .mbm-speed-action{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:60px!important;
    height:60px!important;
    border-radius:999px!important;
    color:#fff!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    font-weight:1000!important;
    font-size:11px!important;
    letter-spacing:.025em!important;
    line-height:1!important;
    border:2px solid rgba(255,255,255,.9)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  body.home .mbm-mobile-speed-dial .mbm-speed-toggle{
    background:linear-gradient(180deg,#d99a06,#bd7d00)!important;
  }
  body.home .mbm-mobile-speed-dial.is-open .mbm-speed-toggle{
    background:#111!important;
    border-color:var(--gold2)!important;
  }
  body.home .mbm-mobile-speed-dial .mbm-speed-dial-actions{
    position:absolute!important;
    right:0!important;
    bottom:72px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translateY(10px)!important;
    transition:opacity .18s ease, transform .18s ease!important;
  }
  body.home .mbm-mobile-speed-dial.is-open .mbm-speed-dial-actions{
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  body.home .mbm-mobile-speed-dial .mbm-speed-action{
    background:#111!important;
    border-color:var(--gold2)!important;
  }
  body.home .mbm-mobile-speed-dial .mbm-speed-call{background:linear-gradient(180deg,#d99a06,#bd7d00)!important;}
  body.home .mbm-mobile-speed-dial .mbm-speed-text{background:#222!important;}
  body.home .mbm-mobile-speed-dial .mbm-speed-email{background:#0b0b0b!important;}
  body.home .mbm-mobile-speed-dial .mbm-speed-quote{background:#111!important;}
}
@media (min-width: 981px){
  .mbm-mobile-speed-dial{display:none!important;}
}

/* MBM-V356 - Desktop-only home service card refinements.
   Mobile layout, typography, spacing, breakpoints, and responsive behavior intentionally untouched. */
@media (min-width:981px){
  body.home .service-gallery-section{
    padding:92px 0 104px !important;
  }

  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    gap:34px !important;
    align-items:stretch !important;
  }

  body.home .service-folder-card.folder-item{
    overflow:hidden !important;
    box-shadow:0 22px 52px rgba(0,0,0,.12) !important;
    border:1px solid rgba(0,0,0,.06) !important;
    transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease !important;
  }

  body.home .service-folder-card.folder-item:hover,
  body.home .service-folder-card.folder-item:focus-within{
    transform:translateY(-6px) !important;
    box-shadow:0 30px 70px rgba(0,0,0,.18) !important;
    border-color:rgba(224,162,11,.34) !important;
  }

  body.home .service-card-toggle.folder-toggle{
    min-height:382px !important;
    padding:38px 40px 34px !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    text-align:left !important;
    gap:0 !important;
    position:relative !important;
    overflow:hidden !important;
    border:0 !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.04) !important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    background:linear-gradient(180deg,rgba(0,0,0,.54) 0%,rgba(0,0,0,.64) 44%,rgba(0,0,0,.76) 100%) !important;
    transition:background .24s ease !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::after,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.60) 42%,rgba(0,0,0,.82) 100%) !important;
  }

  body.home .service-card-toggle.folder-toggle{
    background-size:cover !important;
    background-position:center !important;
    transition:filter .28s ease, transform .28s ease !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle{
    filter:saturate(1.04) contrast(1.02) !important;
  }

  body.home .service-card-toggle.folder-toggle::before,
  body.home .service-card-toggle .folder-chevron{
    display:none !important;
  }

  body.home .service-card-title,
  body.home .desktop-service-desc,
  body.home .service-card-subtitle{
    position:relative !important;
    z-index:1 !important;
  }

  body.home .service-card-title{
    width:100% !important;
    padding:0 !important;
    margin:0 0 20px !important;
    max-width:14ch !important;
    font-size:clamp(26px,2.05vw,34px) !important;
    line-height:1.02 !important;
    letter-spacing:.035em !important;
    text-shadow:0 3px 12px rgba(0,0,0,.75) !important;
  }

  body.home .desktop-service-desc{
    display:block !important;
    width:100% !important;
    max-width:30ch !important;
    min-height:4.35em !important;
    padding:0 !important;
    margin:0 !important;
    color:#fff !important;
    font-size:17px !important;
    line-height:1.45 !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.035em !important;
    text-shadow:0 3px 10px rgba(0,0,0,.78) !important;
  }

  body.home .service-card-subtitle{
    order:5 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:flex-start !important;
    width:auto !important;
    min-width:154px !important;
    min-height:45px !important;
    margin:auto 0 0 !important;
    padding:0 22px !important;
    border-radius:9px !important;
    background:linear-gradient(180deg,#e5aa06,#c78300) !important;
    color:#fff !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:1000 !important;
    letter-spacing:.07em !important;
    box-shadow:0 12px 28px rgba(195,131,0,.24) !important;
    transition:transform .22s ease, box-shadow .22s ease, background .22s ease !important;
  }

  body.home .service-card-subtitle::after{
    content:" →" !important;
    margin-left:8px !important;
  }

  body.home .service-folder-card:hover .service-card-subtitle,
  body.home .service-folder-card:focus-within .service-card-subtitle{
    transform:translateY(-2px) !important;
    box-shadow:0 18px 38px rgba(195,131,0,.34) !important;
    background:linear-gradient(180deg,#efb909,#cf8900) !important;
  }
}

/* MBM-V357 - Desktop-only final service card polish.
   Mobile rules remain untouched. */
@media (min-width:981px){
  body.home .service-folder-card.folder-item{
    box-shadow:0 24px 56px rgba(0,0,0,.13) !important;
  }

  body.home .service-card-toggle.folder-toggle{
    min-height:392px !important;
    padding:42px 40px 38px !important;
    display:flex !important;
    flex-direction:column !important;
    background-size:cover !important;
    background-position:center center !important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.66) 0%,rgba(0,0,0,.70) 46%,rgba(0,0,0,.82) 100%) !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::after,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.60) 0%,rgba(0,0,0,.68) 44%,rgba(0,0,0,.86) 100%) !important;
  }

  body.home .service-card-title{
    font-size:clamp(24px,1.85vw,30px) !important;
    line-height:1.04 !important;
    letter-spacing:.045em !important;
    margin:0 0 26px !important;
    max-width:13ch !important;
  }

  body.home .desktop-service-desc{
    max-width:29ch !important;
    min-height:7.0em !important;
    max-height:7.0em !important;
    overflow:hidden !important;
    font-size:15.5px !important;
    line-height:1.42 !important;
    letter-spacing:.035em !important;
    margin:0 0 28px !important;
  }

  body.home .service-card-subtitle{
    margin-top:auto !important;
    min-width:158px !important;
    min-height:46px !important;
    padding:0 24px !important;
    font-size:12.5px !important;
    letter-spacing:.075em !important;
  }

  body.home .service-folder-link[data-folder="misc"] .service-card-toggle.folder-toggle{
    background-position:center center !important;
  }

  body.home .service-folder-link[data-folder="ada-handrails"] .service-card-toggle.folder-toggle{
    background-position:center center !important;
  }
}

/* MBM-V358 - Desktop-only final home service card micro-polish.
   Keeps current mobile layout untouched. */
@media (min-width:981px){
  body.home .service-card-toggle.folder-toggle{
    min-height:392px !important;
    padding:44px 40px 36px !important;
    box-shadow:inset 0 0 0 999px rgba(0,0,0,.10) !important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.73) 45%,rgba(0,0,0,.86) 100%) !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::after,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.66) 0%,rgba(0,0,0,.72) 45%,rgba(0,0,0,.88) 100%) !important;
  }

  body.home .service-card-title{
    margin-bottom:34px !important;
    font-size:clamp(24px,1.78vw,29px) !important;
    line-height:1.03 !important;
    max-width:12.5ch !important;
  }

  body.home .desktop-service-desc{
    max-width:27.5ch !important;
    min-height:5.9em !important;
    max-height:5.9em !important;
    margin-bottom:34px !important;
    font-size:15px !important;
    line-height:1.48 !important;
    letter-spacing:.032em !important;
  }

  body.home .service-card-subtitle{
    min-width:188px !important;
    min-height:50px !important;
    padding:0 22px !important;
    font-size:12px !important;
    letter-spacing:.08em !important;
  }
}

/* MBM-V359 - Desktop-only service card final refinement.
   Preserves mobile layout, spacing, typography, and breakpoints. */
@media (min-width:981px){
  body.home .service-card-toggle.folder-toggle{
    min-height:392px !important;
    padding:50px 40px 38px !important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.74) 0%,rgba(0,0,0,.77) 45%,rgba(0,0,0,.88) 100%) !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::after,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.76) 45%,rgba(0,0,0,.90) 100%) !important;
  }

  body.home .service-card-title{
    margin-bottom:26px !important;
    font-size:clamp(24px,1.72vw,28px) !important;
    line-height:1.04 !important;
    max-width:12.5ch !important;
  }

  body.home .desktop-service-desc{
    max-width:29ch !important;
    min-height:5.2em !important;
    max-height:5.2em !important;
    margin-bottom:32px !important;
    font-size:14.5px !important;
    line-height:1.42 !important;
    letter-spacing:.028em !important;
  }

  body.home .service-card-subtitle{
    min-width:176px !important;
    min-height:48px !important;
  }

  body.home .service-card-subtitle::after{
    content:"" !important;
    margin-left:0 !important;
  }
}

/* MBM-V360 - Desktop-only final service card typography and spacing polish.
   Mobile layout, styling, spacing, typography, breakpoints, and responsive behavior remain untouched. */
@media (min-width:981px){
  body.home .service-card-toggle.folder-toggle{
    min-height:392px !important;
    padding:50px 40px 58px !important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.70) 0%,rgba(0,0,0,.73) 45%,rgba(0,0,0,.86) 100%) !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::after,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.66) 0%,rgba(0,0,0,.72) 45%,rgba(0,0,0,.88) 100%) !important;
  }

  body.home .service-card-title{
    margin-bottom:36px !important;
    font-size:clamp(24px,1.72vw,28px) !important;
    line-height:1.04 !important;
    max-width:12.5ch !important;
  }

  body.home .desktop-service-desc{
    max-width:28ch !important;
    min-height:5.55em !important;
    max-height:none !important;
    overflow:visible !important;
    margin:0 0 28px !important;
    font-size:14.25px !important;
    line-height:1.45 !important;
    font-weight:600 !important;
    letter-spacing:.03em !important;
  }

  body.home .service-card-subtitle{
    min-width:196px !important;
    min-height:50px !important;
    margin-top:auto !important;
    margin-bottom:0 !important;
    padding:0 26px !important;
    font-size:12px !important;
    letter-spacing:.08em !important;
  }

  body.home .service-card-subtitle::after{
    content:"" !important;
    margin-left:0 !important;
  }
}

/* MBM-V361 - Desktop-only service card final alignment/readability refinements.
   Applies the final desktop polish only. Mobile layout, styling, spacing, typography,
   breakpoints, and responsive behavior remain untouched. */
@media (min-width:981px){
  body.home .folder-accordion.service-folder-grid,
  body.home .service-folder-grid.folder-accordion,
  body.home .folder-accordion.service-folder-grid.service-page-link-grid{
    align-items:stretch !important;
  }

  body.home .service-folder-card.folder-item,
  body.home .service-folder-link{
    height:420px !important;
    min-height:420px !important;
  }

  body.home .service-card-toggle.folder-toggle{
    height:420px !important;
    min-height:420px !important;
    padding:46px 42px 50px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
  }

  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.46) 0%,rgba(0,0,0,.50) 48%,rgba(0,0,0,.64) 100%) !important;
  }

  body.home .service-card-toggle.folder-toggle::before{
    background:linear-gradient(90deg,rgba(0,0,0,.50) 0%,rgba(0,0,0,.28) 48%,rgba(0,0,0,.12) 100%) !important;
  }

  body.home .service-folder-card:hover .service-card-toggle.folder-toggle::after,
  body.home .service-folder-card:focus-within .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,.48) 48%,rgba(0,0,0,.66) 100%) !important;
  }

  body.home .service-card-title{
    flex:0 0 auto !important;
    margin:0 0 30px !important;
    max-width:12.5ch !important;
    font-size:clamp(25px,1.82vw,30px) !important;
    line-height:1.10 !important;
    letter-spacing:.045em !important;
    text-shadow:0 3px 10px rgba(0,0,0,.72) !important;
  }

  body.home .desktop-service-desc{
    flex:0 0 auto !important;
    max-width:28ch !important;
    min-height:7.0em !important;
    max-height:none !important;
    overflow:visible !important;
    margin:0 0 26px !important;
    padding:0 !important;
    font-size:14.5px !important;
    line-height:1.42 !important;
    font-weight:800 !important;
    letter-spacing:.028em !important;
    text-shadow:0 3px 10px rgba(0,0,0,.80) !important;
  }

  body.home .service-card-subtitle{
    flex:0 0 auto !important;
    margin-top:auto !important;
    margin-bottom:0 !important;
    align-self:flex-start !important;
    min-width:176px !important;
    min-height:48px !important;
    padding:0 24px !important;
    font-size:12px !important;
    line-height:1 !important;
    border-radius:9px !important;
  }
}

/* MBM V362 - desktop-only hide third-party floating chat/contact widget. Mobile speed dial remains unchanged. */
@media (min-width: 769px){
  #chaty-widget,
  .chaty,
  .chaty-widget,
  .chaty-widget-container,
  .chaty-widget-cta,
  .chaty-channel-list,
  .chaty-channels,
  .joinchat,
  .joinchat__button,
  #tidio-chat,
  .tidio-chat,
  .crisp-client,
  .intercom-lightweight-app,
  .fb_dialog,
  .fb_customer_chat_bubble,
  .floating-chat,
  .floating-contact,
  .chat-widget,
  .chat-bubble,
  iframe[title*="chat" i],
  iframe[title*="messenger" i],
  iframe[src*="chaty" i],
  iframe[src*="tidio" i],
  iframe[src*="crisp" i],
  iframe[src*="intercom" i]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}

/* MBM V363 - hide mobile contact speed dial on desktop/laptop input devices, even when browser width is narrow. Mobile touch layout unchanged. */
@media (hover: hover) and (pointer: fine){
  html body .mbm-mobile-speed-dial,
  html body.home .mbm-mobile-speed-dial,
  html body.home.mbm-sticky-ready .mbm-mobile-speed-dial,
  html body.home.mbm-services-in-view .mbm-mobile-speed-dial{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}

/* MBM V365 - site-wide mobile contact speed dial.
   Shows the branded Contact button on all mobile pages; expanded order is Call, Text, Email, Quote. Desktop remains hidden. */
@media (max-width: 980px){
  html body .mbm-mobile-speed-dial{
    position:fixed!important;
    right:12px!important;
    bottom:72px!important;
    z-index:99998!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    width:auto!important;
    height:auto!important;
    background:transparent!important;
    border:0!important;
    padding:0!important;
    box-shadow:none!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-toggle,
  html body .mbm-mobile-speed-dial .mbm-speed-action{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:60px!important;
    height:60px!important;
    border-radius:999px!important;
    color:#fff!important;
    text-transform:uppercase!important;
    text-decoration:none!important;
    font-weight:1000!important;
    font-size:11px!important;
    letter-spacing:.025em!important;
    line-height:1!important;
    border:2px solid rgba(255,255,255,.9)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-toggle{
    background:linear-gradient(180deg,#d99a06,#bd7d00)!important;
  }
  html body .mbm-mobile-speed-dial.is-open .mbm-speed-toggle{
    background:#111!important;
    border-color:var(--gold2)!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-dial-actions{
    position:absolute!important;
    right:0!important;
    bottom:72px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    opacity:0!important;
    pointer-events:none!important;
    transform:translateY(10px)!important;
    transition:opacity .18s ease, transform .18s ease!important;
  }
  html body .mbm-mobile-speed-dial.is-open .mbm-speed-dial-actions{
    opacity:1!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-action{
    background:#111!important;
    border-color:var(--gold2)!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-call{background:linear-gradient(180deg,#d99a06,#bd7d00)!important;}
  html body .mbm-mobile-speed-dial .mbm-speed-text{background:#222!important;}
  html body .mbm-mobile-speed-dial .mbm-speed-email{background:#0b0b0b!important;}
  html body .mbm-mobile-speed-dial .mbm-speed-quote{background:#111!important;}
}
@media (min-width: 981px), (hover: hover) and (pointer: fine){
  html body .mbm-mobile-speed-dial{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}

/* MBM V367 - mobile floating contact final polish.
   Keep the collapsed Contact launcher, but remove the redundant Contact button when expanded.
   Expanded menu shows only: Call, Text, Email, Quote. Desktop remains hidden. */
@media (max-width: 1024px), (hover: none) and (pointer: coarse){
  html body .mbm-mobile-speed-dial.is-open .mbm-speed-toggle{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:scale(.72)!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-dial-actions{
    gap:8px!important;
  }
  html body .mbm-mobile-speed-dial.is-open .mbm-speed-dial-actions{
    transform:translateY(0)!important;
  }
}

/* MBM V371 - hide embedded project/photo code tags on homepage service-card hero images.
   The labels are part of the photos, so this crops the lower edge of the card background
   without changing the card markup, mobile layout, or service-card text. */
body.home .service-card-toggle.folder-toggle{
  background-size:auto 114% !important;
  background-position:center 42% !important;
}
@media (max-width:980px){
  body.home .service-card-toggle.folder-toggle{
    background-size:auto 112% !important;
    background-position:center 42% !important;
  }
}
@media (max-width:520px){
  body.home .service-card-toggle.folder-toggle{
    background-size:auto 110% !important;
    background-position:center 43% !important;
  }
}

/* MBM V372 - mobile service-card photo tag cleanup.
   Hide embedded photo/order labels on the mobile homepage service cards by cropping
   the lower edge and adding a dark bottom vignette. Desktop remains unchanged. */
@media (max-width:980px){
  body.home .service-card-toggle.folder-toggle{
    background-size:auto 122% !important;
    background-position:center 38% !important;
  }
  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,
      rgba(0,0,0,.08) 0%,
      rgba(0,0,0,.18) 54%,
      rgba(0,0,0,.44) 84%,
      rgba(0,0,0,.92) 96%,
      rgba(0,0,0,1) 100%) !important;
  }
  body.home .service-folder-link[data-folder="railings"] .service-card-toggle.folder-toggle,
  body.home .service-folder-link[data-folder="gates"] .service-card-toggle.folder-toggle,
  body.home .service-folder-link[data-folder="ada-handrails"] .service-card-toggle.folder-toggle,
  body.home .service-folder-link[data-folder="fence"] .service-card-toggle.folder-toggle,
  body.home .service-folder-link[data-folder="structural"] .service-card-toggle.folder-toggle,
  body.home .service-folder-link[data-folder="metal-fabrication"] .service-card-toggle.folder-toggle,
  body.home .service-folder-link[data-folder="misc"] .service-card-toggle.folder-toggle{
    background-position:center 38% !important;
  }
}
@media (max-width:520px){
  body.home .service-card-toggle.folder-toggle{
    background-size:auto 126% !important;
    background-position:center 36% !important;
  }
  body.home .service-card-toggle.folder-toggle::after{
    background:linear-gradient(180deg,
      rgba(0,0,0,.06) 0%,
      rgba(0,0,0,.16) 52%,
      rgba(0,0,0,.42) 82%,
      rgba(0,0,0,.95) 96%,
      rgba(0,0,0,1) 100%) !important;
  }
}

/* MBM V373 - mobile hero-aware contact speed dial.
   Hide the floating Contact launcher while the home hero is visible to avoid CTA overload.
   Once the hero has scrolled away, show a slightly smaller fixed bottom-right launcher.
   Non-home mobile pages retain the sitewide mobile contact launcher. Desktop remains hidden. */
@media (max-width: 980px), (hover: none) and (pointer: coarse){
  html body.home .mbm-mobile-speed-dial,
  html body.home.mbm-sticky-ready .mbm-mobile-speed-dial,
  html body.home.mbm-services-in-view .mbm-mobile-speed-dial{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body.home.mbm-hero-passed .mbm-mobile-speed-dial,
  html body.home.mbm-hero-passed.mbm-sticky-ready .mbm-mobile-speed-dial,
  html body.home.mbm-hero-passed.mbm-services-in-view .mbm-mobile-speed-dial{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    right:14px!important;
    bottom:72px!important;
    z-index:99998!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-toggle,
  html body .mbm-mobile-speed-dial .mbm-speed-action{
    width:58px!important;
    height:58px!important;
    font-size:10px!important;
  }
  html body .mbm-mobile-speed-dial .mbm-speed-dial-actions{
    bottom:68px!important;
    gap:8px!important;
  }
}
@media (min-width: 981px), (hover: hover) and (pointer: fine){
  html body .mbm-mobile-speed-dial,
  html body.home.mbm-hero-passed .mbm-mobile-speed-dial{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}

/* V376 - branded quote confirmation page + polished contact submit button */
.mbm-submit-btn{
  display:inline-flex;
  min-height:54px;
  padding:0 28px;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#d99a06,#bd7d00);
  color:#fff!important;
  border:1px solid #e0a20b!important;
  border-radius:8px;
  box-shadow:0 14px 30px rgba(166,106,0,.24);
  font-size:15px;
  font-weight:1000;
  letter-spacing:.045em;
  line-height:1;
  text-transform:uppercase;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.mbm-submit-btn:hover,
.mbm-submit-btn:focus-visible{
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(166,106,0,.32);
  filter:brightness(1.04);
}
.mbm-submit-btn:focus-visible{
  outline:3px solid rgba(224,162,11,.38);
  outline-offset:3px;
}

.mbm-thank-you-page{
  background:#0d0d0d;
  color:#f5f5f5;
}
.mbm-thank-you-section{
  min-height:620px;
  display:flex;
  align-items:center;
  padding:70px 0 88px;
  background:
    radial-gradient(circle at 82% 18%,rgba(224,162,11,.12),transparent 34%),
    linear-gradient(180deg,#111,#090909);
}
.mbm-thank-you-card{
  max-width:920px;
  margin:0 auto;
  padding:58px;
  text-align:center;
  background:linear-gradient(180deg,#171717,#101010);
  border:1px solid rgba(255,255,255,.09);
  border-top:5px solid var(--gold2);
  box-shadow:0 24px 70px rgba(0,0,0,.38);
}
.mbm-thank-you-card .service-eyebrow{
  margin-bottom:16px;
}
.mbm-thank-you-card h1{
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(3rem,7vw,5.4rem);
  font-weight:1000;
  letter-spacing:-.045em;
  line-height:.92;
  text-transform:uppercase;
}
.mbm-thank-you-lead{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(1.35rem,2.4vw,1.8rem);
  font-weight:850;
  line-height:1.3;
}
.mbm-thank-you-copy{
  max-width:690px;
  margin:0 auto;
  color:#d6d6d6;
  font-size:18px;
  line-height:1.65;
}
.mbm-thank-you-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin:34px 0 0;
}
.mbm-thank-you-primary,
.mbm-thank-you-secondary,
.mbm-thank-you-home{
  min-height:56px;
  padding:0 25px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  font-size:15px;
  font-weight:1000;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.mbm-thank-you-primary{
  box-shadow:0 14px 30px rgba(166,106,0,.26);
}
.mbm-thank-you-secondary{
  color:#fff;
  border:1px solid var(--gold2);
  background:transparent;
}
.mbm-thank-you-home{
  color:#d9d9d9;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.035);
}
.mbm-thank-you-secondary:hover,
.mbm-thank-you-home:hover{
  color:#fff;
  background:rgba(224,162,11,.11);
}
.mbm-thank-you-note{
  margin:25px 0 0;
  color:#a9a9a9;
  font-size:14px;
  line-height:1.5;
}
@media (max-width:768px){
  .mbm-thank-you-section{
    min-height:520px;
    padding:34px 0 52px;
  }
  .mbm-thank-you-card{
    padding:38px 22px;
  }
  .mbm-thank-you-copy{
    font-size:16px;
  }
  .mbm-thank-you-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .mbm-thank-you-primary,
  .mbm-thank-you-secondary,
  .mbm-thank-you-home{
    width:100%;
  }
  .mbm-submit-btn{
    width:100%;
  }
}

/* V380 - homepage hero phone CTA */
body.home .mbm-hero-phone{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 16px;
  color:#fff;
  font-size:clamp(24px,2vw,32px);
  line-height:1;
  font-weight:1000;
  letter-spacing:.035em;
  text-decoration:none;
  text-shadow:0 2px 12px rgba(0,0,0,.8);
  transition:color .18s ease, text-shadow .18s ease, transform .18s ease;
}
body.home .mbm-hero-phone-icon{
  color:var(--gold2);
  font-size:.9em;
}
body.home .mbm-hero-phone:hover,
body.home .mbm-hero-phone:focus-visible{
  color:var(--gold2);
  text-shadow:0 0 18px rgba(212,160,23,.42),0 2px 12px rgba(0,0,0,.8);
  transform:translateY(-1px);
}
body.home .mbm-hero-phone:focus-visible{
  outline:2px solid var(--gold2);
  outline-offset:6px;
}
@media (max-width:980px){
  body.home .mbm-hero-phone{
    margin-bottom:13px;
    font-size:clamp(20px,6vw,24px);
    gap:8px;
  }
}

/* V381 - separate homepage hero phone and service-area kicker */
body.home .mbm-hero-phone{
  display:flex;
  width:max-content;
  margin:0 0 20px;
  font-size:clamp(34px,2.35vw,38px);
}
body.home .mbm-hero-kicker{
  display:flex !important;
  width:max-content;
  margin:0 0 22px !important;
}
@media (max-width:980px){
  body.home .mbm-hero-phone{
    width:max-content;
    margin-bottom:16px;
    font-size:clamp(20px,6vw,24px);
  }
  body.home .mbm-hero-kicker{
    width:max-content;
    margin-bottom:18px !important;
  }
}
