/* MGS v2 site-wide layer (2026-10-27): D&E-style header, mobile drawer, sticky mobile call bar, back-to-top.
   Restyles the existing header markup only; every link stays in the HTML. */
:root{
  --m-navy:#17375E;--m-navy-d:#0F2747;--m-deep:#0B1B30;--m-deep-2:#081525;--m-blue:#2E75B6;--m-sky:#7CC4FF;--m-sky-lo:#4BA3F0;
  --m-tint:#EAF2FB;--m-tint-2:#F4F8FC;--m-sun:#F5C518;--m-ink:#0F1B2D;--m-muted:#55657A;--m-line:#DDE5EF;
  --m-grad:linear-gradient(180deg,#5AB0FF 0%,#2E75B6 100%);--m-grad-hi:linear-gradient(180deg,#74BEFF 0%,#3B86CC 100%);
  --m-shadow:0 8px 26px rgba(15,27,45,.12);--m-shadow-lg:0 22px 56px rgba(15,27,45,.24);
  --m-f:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* ---------- Header bar ---------- */
#site-header .elementor-element-2d8d0369{background:rgba(255,255,255,.97)!important;border-bottom:3px solid var(--m-sky-lo)!important;-webkit-backdrop-filter:saturate(1.4) blur(8px);backdrop-filter:saturate(1.4) blur(8px)}
#site-header.mgs-stuck{box-shadow:0 8px 26px rgba(15,27,45,.12)!important}
#site-header .elementor-element-2d8d0369>.elementor-container{max-width:1200px!important;width:calc(100% - 40px)!important;min-height:84px;gap:24px}
#site-header .elementor-element-a578cb1 img{height:64px!important;width:auto!important;max-height:none!important}
#site-header .elementor-element-703abd52 .elementor-nav-menu--main>.elementor-nav-menu{justify-content:center!important;margin-right:0!important;gap:2px}
#site-header .elementor-nav-menu--main .elementor-nav-menu>li>a.elementor-item{font:600 15px/1.2 var(--m-f)!important;text-transform:none!important;letter-spacing:0!important;color:var(--m-ink)!important;padding:10px 14px!important;border-radius:8px;transition:background .2s,color .2s}
#site-header .elementor-nav-menu--main .elementor-nav-menu>li>a.elementor-item:hover,
#site-header .elementor-nav-menu--main .elementor-nav-menu>li>a.elementor-item:focus,
#site-header .elementor-nav-menu--main .elementor-nav-menu>li>a.elementor-item.highlighted{background:var(--m-tint)!important;color:var(--m-navy)!important}
#site-header .elementor-nav-menu--main .elementor-item:before,#site-header .elementor-nav-menu--main .elementor-item:after{display:none!important}
#site-header .elementor-nav-menu--main .elementor-nav-menu>li.menu-item-has-children>a .sub-arrow{display:none!important}
#site-header .elementor-nav-menu--main .elementor-nav-menu>li.menu-item-has-children>a:after{content:""!important;display:inline-block!important;position:static!important;opacity:1!important;background:none!important;width:7px!important;height:7px!important;margin-left:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px)}
/* plain dropdowns (About) */
#site-header .elementor-nav-menu--main .sub-menu:not(.mgs-mega){background:#fff!important;border-radius:14px!important;box-shadow:var(--m-shadow-lg)!important;padding:10px!important;border:0!important}
#site-header .elementor-nav-menu--main .sub-menu:not(.mgs-mega) a{font:600 14.5px/1.3 var(--m-f)!important;text-transform:none!important;color:var(--m-ink)!important;padding:10px 12px!important;border-radius:8px;background:none!important;border:0!important}
#site-header .elementor-nav-menu--main .sub-menu:not(.mgs-mega) a:hover{background:var(--m-tint-2)!important;color:var(--m-navy)!important}
/* header CTAs: phone pill + dark button */
#site-header .mgs-hdr-cta{display:flex;gap:10px;align-items:center}
#site-header .mgs-hdr-tel{display:inline-flex!important;align-items:center;gap:8px;padding:.78em 1.2em!important;border-radius:999px!important;border:0!important;background:var(--m-grad)!important;color:#fff!important;font:800 15px/1 var(--m-f)!important;text-decoration:none!important;white-space:nowrap;box-shadow:0 8px 20px rgba(46,117,182,.32)}
#site-header .mgs-hdr-tel:before{content:"";width:16px;height:16px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center/contain no-repeat}
#site-header .mgs-hdr-tel:hover{background:var(--m-grad-hi)!important}
#site-header .mgs-hdr-btn{display:inline-flex!important;align-items:center;padding:.85em 1.3em!important;border-radius:999px!important;background:var(--m-ink)!important;border:2px solid var(--m-ink)!important;color:#fff!important;font:800 15px/1 var(--m-f)!important;text-transform:uppercase;letter-spacing:.02em;text-decoration:none!important;white-space:nowrap;box-shadow:none!important}
#site-header .mgs-hdr-btn:hover{background:transparent!important;color:var(--m-ink)!important}
/* Elementor's own mobile toggle/dropdown are replaced by the drawer */
#site-header .elementor-menu-toggle,#site-header nav.elementor-nav-menu--dropdown{display:none!important}

/* ---------- Burger + drawer ---------- */
.mgs-burger{display:none;margin-left:auto;background:none;border:0;width:46px;height:46px;border-radius:10px;cursor:pointer;padding:0;flex:none}
.mgs-burger span{display:block;width:24px;height:2.5px;background:var(--m-ink);margin:5px auto;border-radius:2px}
.mgs-burger:hover{background:var(--m-tint)}
.mgs-drawer{position:fixed;inset:0;overflow:hidden;z-index:100000;background:rgba(8,21,37,.55);opacity:0;visibility:hidden;transition:.25s}
.mgs-drawer.is-open{opacity:1;visibility:visible}
.mgs-drawer__panel{position:absolute;right:0;top:0;bottom:0;width:min(360px,88vw);background:#fff;padding:22px;overflow:auto;transform:translateX(100%);transition:transform .3s;font-family:var(--m-f)}
.mgs-drawer.is-open .mgs-drawer__panel{transform:none}
.mgs-drawer__close{float:right;background:var(--m-tint);border:0;border-radius:10px;width:42px;height:42px;font-size:24px;line-height:1;cursor:pointer;color:var(--m-ink)}
.mgs-drawer__logo{height:56px;width:auto;display:block}
.mgs-drawer ul{list-style:none;margin:16px 0;padding:0}
.mgs-drawer li a,.mgs-drawer li>span{display:block;padding:12px 4px;border-bottom:1px solid var(--m-line);font:700 16.5px/1.3 var(--m-f);color:var(--m-ink);text-decoration:none}
.mgs-drawer li.mgs-drawer__sub a{font:500 15px/1.3 var(--m-f);padding:9px 14px;color:var(--m-muted)}
.mgs-drawer li a:hover{color:var(--m-blue)}
.mgs-drawer .mgsx-btn{width:100%;justify-content:center;margin-top:10px}

/* ---------- Shared buttons ---------- */
.mgsx-btn{display:inline-flex;align-items:center;gap:.55em;font:800 15.5px/1 var(--m-f);text-transform:uppercase;letter-spacing:.02em;padding:1em 1.6em;border-radius:999px;text-decoration:none!important;border:2px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}
.mgsx-btn svg{width:1.1em;height:1.1em;flex:none}
.mgsx-btn--primary{background:var(--m-grad);color:#fff!important;box-shadow:0 8px 22px rgba(46,117,182,.38)}
.mgsx-btn--primary:hover{background:var(--m-grad-hi);transform:translateY(-2px)}
.mgsx-btn--ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.7)}
.mgsx-btn--ghost:hover{background:#fff;color:var(--m-deep)!important}
.mgsx-btn--outline{background:#fff;color:var(--m-ink)!important;border-color:var(--m-sky-lo)}
.mgsx-btn--outline:hover{background:var(--m-grad);color:#fff!important;border-color:transparent}
.mgsx-btn--white{background:#fff;color:var(--m-ink)!important}
.mgsx-btn--white:hover{transform:translateY(-2px);box-shadow:var(--m-shadow)}

/* ---------- Mobile call bar + back to top ---------- */
.mgs-mbar{display:none}
.mgs-totop{position:fixed;right:22px;bottom:22px;z-index:9990;width:48px;height:48px;border-radius:50%;border:0;background:var(--m-grad);color:#fff;font-size:20px;line-height:1;box-shadow:var(--m-shadow);cursor:pointer;opacity:0;visibility:hidden;transition:.25s}
.mgs-totop.is-on{opacity:1;visibility:visible}

@media (max-width:1100px){
  #site-header .elementor-element-23057444,#site-header .mgs-hdr-tel{display:none!important}
  #site-header .elementor-element-9563b35{margin-left:auto!important}
  .mgs-burger{display:block}
  #site-header .elementor-element-2d8d0369>.elementor-container{flex-wrap:nowrap!important;align-items:center!important}
}
@media (max-width:900px){
  #site-header .elementor-element-2d8d0369>.elementor-container{min-height:66px}
  #site-header .elementor-element-a578cb1 img{height:54px!important}
  #site-header .mgs-hdr-btn{display:none!important}
  #site-header .elementor-element-9563b35{display:none!important}
}
@media (max-width:640px){
  .mgs-mbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:9995;box-shadow:0 -6px 20px rgba(0,0,0,.15)}
  .mgs-mbar a{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 8px;font:800 16px/1 var(--m-f);text-decoration:none!important;color:#fff!important;background:var(--m-deep)}
  .mgs-mbar a+a{background:var(--m-grad)}
  .mgs-mbar svg{width:18px;height:18px}
  body{padding-bottom:56px}
  .mgs-totop{bottom:76px}
}
@media print{.mgs-mbar,.mgs-totop,.mgs-drawer{display:none!important}}
/* phones/tablets: header bar in MGS navy */
@media (max-width:900px){
  #site-header .elementor-element-2d8d0369{background:#17375E!important;border-bottom:3px solid var(--m-sky-lo)!important}
  .mgs-burger span{background:#fff}
  .mgs-burger:hover,.mgs-burger:focus-visible{background:rgba(255,255,255,.12)}
}
/* phones/tablets: bigger MGS logo */
@media (max-width:900px){
  #site-header .elementor-element-2d8d0369>.elementor-container{min-height:78px}
  #site-header .elementor-element-a578cb1 img{height:66px!important}
}
/* sister-company note under every Jobber quote form */
.mgs-quote-note{margin:10px 0 0!important;font:500 13px/1.45 var(--m-f);color:#55657A!important;text-align:center}
