/* =====================================================================
   Marketing 1on1 - site design (Hello Elementor child)
   Change the brand in ONE place: the variables in :root below.
   Sections: 1 tokens  2 base  3 header + menu  4 hero  5 blocks
             6 content + sidebar  7 forms  8 footer  9 blog  10 misc
   ===================================================================== */

/* ---------- 1. tokens ---------- */
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/plus-jakarta-sans-latin.woff2) format("woff2")}
:root{
  --m1-navy:#282E45; --m1-navy-deep:#1B2034; --m1-blue:#075C97; --m1-blue-dark:#054A7B; --m1-tint:#E9F1F8;
  --m1-ink:#171B2C; --m1-body:#232839; --m1-muted:#667085; --m1-line:#E1E6EE; --m1-soft:#F5F7FA; --m1-white:#fff;
  --m1-radius:16px; --m1-radius-sm:10px; --m1-wrap:1500px; --m1-gutter:32px; --m1-gap:28px;
  --m1-shadow:0 18px 40px rgba(27,32,52,.10); --m1-shadow-sm:0 2px 10px rgba(27,32,52,.06);
  --m1-font:"Plus Jakarta Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  --m1-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E");
}

/* ---------- 2. base ---------- */
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{font-family:var(--m1-font);color:var(--m1-body);font-size:17px;line-height:1.7;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3,h4,h5,h6{font-family:var(--m1-font);color:var(--m1-ink);font-weight:800;line-height:1.15;letter-spacing:-.02em;margin:0 0 .6em}
h1{font-size:clamp(2.1rem,3.6vw,3.2rem)} h2{font-size:clamp(1.6rem,2.4vw,2.15rem)} h3{font-size:1.3rem;letter-spacing:-.01em} h4{font-size:1.1rem;letter-spacing:-.01em}
p{margin:0 0 1.15em} img{max-width:100%;height:auto}
a{color:var(--m1-link);text-decoration:none} a:hover{color:var(--m1-blue-dark)}
ul,ol{margin:0 0 1.15em;padding-left:1.25em} li{margin:.3em 0}
hr,.m1-hr{border:0;border-top:1px solid var(--m1-line);margin:2.2rem 0}
.m1-ta-center{text-align:center}.m1-ta-right{text-align:right}.m1-ta-left{text-align:left}
.m1-wrap{width:100%;max-width:var(--m1-wrap);margin:0 auto;padding:0 var(--m1-gutter);box-sizing:border-box}
:focus-visible{outline:3px solid rgba(7,92,151,.45);outline-offset:2px}

/* buttons */
.m1-btn,.uk-button,a.button,button.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.elementor-button,.add_to_cart_button{display:inline-block;background:var(--m1-blue);color:#fff!important;border:0;border-radius:var(--m1-radius-sm);padding:14px 24px;font-family:var(--m1-font);font-size:.95rem;font-weight:700;letter-spacing:.01em;text-transform:none;text-decoration:none!important;line-height:1.2;text-align:center;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease;box-shadow:0 6px 16px rgba(7,92,151,.22)}
.m1-btn:hover,.uk-button:hover,a.button:hover,button.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.elementor-button:hover,.add_to_cart_button:hover{background:var(--m1-blue-dark);color:#fff!important;box-shadow:0 10px 22px rgba(7,92,151,.3)}
.add_to_cart_button.loading{opacity:.6}
.m1-link{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.9rem;letter-spacing:.02em;color:var(--m1-link)}
.m1-link::after{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .15s ease}
.m1-link:hover::after{transform:translateX(3px)}

/* icon set: <span class="m1-ico m1-ico--NAME"></span>  (chart tag report shield pin link search code pen news doc share cursor mail play star spark) */
.m1-ico{display:inline-block;width:56px;height:56px;border-radius:14px;background:var(--m1-tint);position:relative;flex:0 0 auto}
.m1-ico::before{content:"";position:absolute;inset:14px;background:var(--m1-blue);-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.m1-ico--chart{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3v18h18'/%3E%3Cpath d='M7 15l4-4 3 3 5-6'/%3E%3C/svg%3E")}
.m1-ico--tag{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4l-7.2 7.2a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.5'/%3E%3C/svg%3E")}
.m1-ico--report{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M8 17v-4M12 17V8M16 17v-6'/%3E%3C/svg%3E")}
.m1-ico--shield{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E")}
.m1-ico--pin{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
.m1-ico--link{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.5.5l3-3a5 5 0 0 0-7-7l-1.7 1.7'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.5-.5l-3 3a5 5 0 0 0 7 7l1.7-1.7'/%3E%3C/svg%3E")}
.m1-ico--search{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E")}
.m1-ico--code{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 18l6-6-6-6M8 6l-6 6 6 6'/%3E%3C/svg%3E")}
.m1-ico--pen{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z'/%3E%3C/svg%3E")}
.m1-ico--news{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h13v16H6a2 2 0 0 1-2-2V4z'/%3E%3Cpath d='M17 8h3v10a2 2 0 0 1-2 2M8 8h5M8 12h5M8 16h5'/%3E%3C/svg%3E")}
.m1-ico--doc{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M8 13h8M8 17h8'/%3E%3C/svg%3E")}
.m1-ico--share{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cpath d='M8.6 13.5l6.8 4M15.4 6.5l-6.8 4'/%3E%3C/svg%3E")}
.m1-ico--cursor{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l7 18 2.5-7.5L20 11z'/%3E%3C/svg%3E")}
.m1-ico--mail{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='M22 7l-10 6L2 7'/%3E%3C/svg%3E")}
.m1-ico--play{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M10 8l6 4-6 4z'/%3E%3C/svg%3E")}
.m1-ico--star{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E")}
.m1-ico--spark{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v4M12 17v4M3 12h4M17 12h4M5.6 5.6l2.8 2.8M15.6 15.6l2.8 2.8M18.4 5.6l-2.8 2.8M8.4 15.6l-2.8 2.8'/%3E%3C/svg%3E")}

/* ---------- 3. header + menu ---------- */
.elementor-location-header{position:sticky;top:-36px;z-index:999}
.m1-header{background:#fff;box-shadow:0 1px 0 var(--m1-line),0 6px 20px rgba(27,32,52,.05)}
.m1-strip{background:var(--m1-navy-deep);color:#C9D2E3;height:36px;min-height:36px;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:space-between;gap:12px;padding:0 max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2 + var(--m1-gutter)))!important;font-size:.82rem;box-sizing:border-box}
.m1-strip .elementor-widget{width:auto!important;max-width:none;flex:0 0 auto;margin:0}
.m1-strip a{color:#fff;font-weight:700}
.m1-userbar{display:flex;align-items:center;gap:18px}
.m1-userbar__btn{color:#fff!important;font-size:.8rem;font-weight:600;letter-spacing:.01em;white-space:nowrap;text-decoration:none!important;opacity:.9}
.m1-userbar__btn:hover{opacity:1;text-decoration:underline!important}
.m1-userbar__btn--cart{display:inline-flex;align-items:center;gap:6px}
.m1-userbar__btn--cart::before{content:"";width:15px;height:15px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3Cpath d='M2 3h3l2.7 12.4a1 1 0 0 0 1 .8h9.7a1 1 0 0 0 1-.8L21 7H6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3Cpath d='M2 3h3l2.7 12.4a1 1 0 0 0 1 .8h9.7a1 1 0 0 0 1-.8L21 7H6'/%3E%3C/svg%3E") center/contain no-repeat}
.m1-bar{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;gap:20px;min-height:78px;padding:0 max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2 + var(--m1-gutter)))!important;box-sizing:border-box;position:relative}
.m1-bar>.elementor-widget{width:auto!important;max-width:none;margin:0;flex:0 0 auto}
.m1-bar>.m1-bar__nav{flex:1 1 auto;min-width:0}
.m1-logo{display:block;line-height:0}
.m1-logo img{height:44px;width:auto;display:block}
.m1-btn--cta{white-space:nowrap;padding:13px 22px}
/* menu: items never change size on hover (only colour + background) */
.m1-nav__toggle,.m1-nav__sub{display:none}
.m1-nav__list,.m1-nav__list ul{list-style:none;margin:0;padding:0}
.m1-nav__list{display:flex;flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:2px}
.m1-nav__list li{margin:0;position:relative}
.m1-nav__list>li>a{display:flex;align-items:center;gap:6px;height:42px;padding:0 12px;border-radius:9px;color:var(--m1-ink);font-size:.9rem;font-weight:600;line-height:1;white-space:nowrap;text-decoration:none;transition:background-color .12s linear,color .12s linear}
.m1-nav__list>li>a:hover,.m1-nav__list>li:hover>a,.m1-nav__list>li:focus-within>a,.m1-nav__list>li.current-menu-item>a,.m1-nav__list>li.current-menu-ancestor>a{background:var(--m1-tint);color:var(--m1-blue)}
.m1-nav__list>li.menu-item-has-children>a::after{content:"";width:9px;height:9px;flex:0 0 9px;background:currentColor;opacity:.7;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat}
.m1-nav__list ul{position:absolute;top:100%;left:0;min-width:280px;background:#fff;border:1px solid var(--m1-line);border-radius:14px;box-shadow:var(--m1-shadow);padding:8px;visibility:hidden;opacity:0;transition:opacity .12s linear,visibility 0s linear .12s;z-index:50}
.m1-nav__list>li:nth-last-child(-n+3)>ul{left:auto;right:0}
.m1-nav__list li:hover>ul,.m1-nav__list li:focus-within>ul{visibility:visible;opacity:1;transition-delay:0s}
.m1-nav__list ul ul{top:-9px;left:100%}
.m1-nav__list>li:nth-last-child(-n+3)>ul ul{left:auto;right:100%}
.m1-nav__list ul a{display:block;padding:10px 14px;border-radius:9px;color:var(--m1-ink);font-size:.92rem;font-weight:500;line-height:1.35;text-decoration:none}
.m1-nav__list ul a:hover,.m1-nav__list ul li:focus-within>a{background:var(--m1-tint);color:var(--m1-blue)}
@media(max-width:1380px){.m1-nav__list>li>a{padding:0 9px;font-size:.85rem}.m1-bar{gap:14px}.m1-logo img{height:40px}}
@media(max-width:1199px){
  .m1-bar{min-height:66px;gap:10px}
  .m1-bar>.m1-bar__nav{flex:0 0 auto;order:3;position:static}
  .m1-bar>.m1-bar__cta{margin-left:auto}
  .m1-bar__nav .elementor-widget-container,.m1-bar__nav .elementor-shortcode{position:static}
  .m1-nav{position:static}
  .m1-nav__toggle{display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:0;border-radius:10px;background:var(--m1-navy);cursor:pointer}
  .m1-nav__toggle-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .m1-nav__bars,.m1-nav__bars::before,.m1-nav__bars::after{display:block;width:20px;height:2px;border-radius:2px;background:#fff;position:relative}
  .m1-nav__bars::before,.m1-nav__bars::after{content:"";position:absolute;left:0}
  .m1-nav__bars::before{top:-6px}.m1-nav__bars::after{top:6px}
  .m1-nav.is-open .m1-nav__bars{background:transparent}
  .m1-nav.is-open .m1-nav__bars::before{top:0;transform:rotate(45deg)}
  .m1-nav.is-open .m1-nav__bars::after{top:0;transform:rotate(-45deg)}
  .m1-nav__panel{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--m1-line);box-shadow:0 24px 40px rgba(27,32,52,.18);max-height:calc(100vh - 70px);overflow-y:auto;padding:8px 14px 20px;z-index:60}
  .m1-nav.is-open .m1-nav__panel{display:block}
  .m1-nav__list{display:block}
  .m1-nav__list li{border-bottom:1px solid var(--m1-line)}
  .m1-nav__list li li:last-child{border-bottom:0}
  .m1-nav__list>li>a{height:auto;padding:15px 52px 15px 6px;font-size:1.02rem;border-radius:0;background:none!important;white-space:normal}
  .m1-nav__list>li.menu-item-has-children>a::after{display:none}
  .m1-nav__sub{display:block;position:absolute;right:0;top:5px;width:44px;height:44px;border:0;border-radius:10px;background:var(--m1-soft);cursor:pointer}
  .m1-nav__sub::before{content:"";position:absolute;inset:15px;background:var(--m1-ink);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat}
  .m1-nav__list li.is-open>.m1-nav__sub::before{transform:rotate(180deg)}
  .m1-nav__list ul,.m1-nav__list ul ul{position:static;display:none;visibility:visible;opacity:1;border:0;box-shadow:none;border-radius:0;padding:0 0 8px 14px;min-width:0;transition:none}
  .m1-nav__list li.is-open>ul{display:block}
  .m1-nav__list ul a{padding:11px 52px 11px 6px;font-size:.96rem}
  .m1-nav__list ul .m1-nav__sub{top:0;width:40px;height:40px}
}
@media(max-width:767px){
  :root{--m1-gutter:18px}
  .m1-logo img{height:34px}
  .m1-btn--cta{padding:11px 14px;font-size:.84rem}
  .m1-strip{font-size:.78rem}
  .m1-userbar{gap:14px}
}
@media(max-width:400px){.m1-bar>.m1-bar__cta{display:none}.m1-bar>.m1-bar__nav{margin-left:auto}}

/* ---------- 4. hero ---------- */
.m1-top,.m1-bottom{padding:0!important}
.m1-area--top>.elementor-widget-container,.m1-area--bottom>.elementor-widget-container{display:flex;flex-direction:column}
.m1-area--top .m1-widget,.m1-area--bottom .m1-widget{width:100%}
.m1-widget-title[hidden]{display:none}
.m1-hero{position:relative;color:#fff;background:radial-gradient(900px 520px at 88% -8%,rgba(7,92,151,.75),rgba(7,92,151,0) 62%),radial-gradient(700px 420px at -6% 110%,rgba(7,92,151,.32),rgba(7,92,151,0) 60%),linear-gradient(180deg,var(--m1-navy-deep) 0%,var(--m1-navy) 100%);overflow:hidden}
.m1-hero__inner{position:relative;max-width:var(--m1-wrap);margin:0 auto;padding:76px var(--m1-gutter) 88px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:72px;align-items:center;box-sizing:border-box}
.m1-hero__title{color:#fff;font-size:clamp(2.15rem,3.5vw,3.35rem);line-height:1.07;letter-spacing:-.03em;margin:0 0 20px;max-width:17em;text-wrap:balance}
.m1-hero__lead{color:#CBD4E6;font-size:1.17rem;line-height:1.6;margin:0 0 28px;max-width:38em;font-weight:400}
.m1-hero__points{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 26px}
.m1-hero__points li{margin:0;display:flex;align-items:center;gap:10px;color:#fff;font-size:.98rem;font-weight:600}
.m1-hero__points li::before{content:"";flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#fff var(--m1-check) center/12px no-repeat}
.m1-hero__form{background:#fff;color:var(--m1-body);border-radius:20px;padding:30px 30px 26px;box-shadow:0 30px 70px rgba(6,10,24,.45)}
.m1-hero__form-title{font-size:1.5rem;margin:0 0 16px;color:var(--m1-ink)}
.m1-hero__form font[color="#FFFFFF"]{color:inherit}
.m1-hero--compact .m1-hero__inner{grid-template-columns:1fr;padding:48px var(--m1-gutter) 52px;gap:0}
.m1-hero--compact .m1-hero__title{max-width:none;margin:0;font-size:clamp(1.8rem,2.8vw,2.6rem)}
.m1-hero__crumbs{color:#CBD4E6;font-size:.95rem;margin:0}
.m1-hero__crumbs a{color:#fff}
@media(max-width:1024px){.m1-hero__inner{grid-template-columns:1fr;gap:30px;padding:40px var(--m1-gutter) 48px}.m1-hero__title,.m1-hero__lead{max-width:none}.m1-hero__lead{margin-bottom:20px}}
.m1-reviews{padding:44px 0 6px;background:#fff}
.tbackground{background:var(--m1-navy);color:#fff}.headertitle{color:#fff}

/* ---------- 5. blocks (widget areas + templates) ---------- */
.m1-sec{padding:64px 0}
.e-con.m1-sec{padding:64px var(--m1-gutter)}
.m1-sec--secondary,.m1-sec--primary{background:var(--m1-navy);color:#DDE3F0}
.m1-sec--secondary h2,.m1-sec--secondary h3,.m1-sec--primary h2,.m1-sec--primary h3{color:#fff}
.m1-sec--muted,.m1-sec--svcs,.m1-sec--plans{background:var(--m1-soft)}
.m1-row{display:grid;gap:var(--m1-gap);margin:0 0 var(--m1-gap);align-items:stretch}
.m1-row:last-child{margin-bottom:0}
.m1-cols-1{grid-template-columns:1fr}.m1-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.m1-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.m1-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.m1-cols-5,.m1-cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.m1-row--wide-first{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.m1-row--wide-last{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.e-con.m1-row{display:flex;gap:var(--m1-gap);margin:0}
.m1-col{min-width:0;display:flex;flex-direction:column;gap:18px}
.m1-col>*{margin-top:0;margin-bottom:0}
.m1-col>.m1-plan,.m1-col>.m1-svc,.m1-col>.m1-card,.m1-col>.m1-feat{flex:1}
@media(max-width:1100px){.m1-cols-3,.m1-cols-4,.m1-cols-5,.m1-cols-6{grid-template-columns:repeat(2,minmax(0,1fr))}.m1-row--wide-first,.m1-row--wide-last{grid-template-columns:1fr}}
@media(max-width:680px){.m1-row,.m1-cols-2,.m1-cols-3,.m1-cols-4,.m1-cols-5,.m1-cols-6{grid-template-columns:1fr}.m1-sec{padding:44px 0}.e-con.m1-sec{padding:44px var(--m1-gutter)}}
.m1-headline{margin:0 0 .5em}
.m1-sec .m1-text.m1-ta-center{max-width:62em;margin:0 auto;font-size:1.06rem}
.m1-figure{margin:0 0 18px}.m1-figure img{border-radius:var(--m1-radius-sm)}

/* "featured in" logos */
.m1-sec--logos{padding:38px 0 34px;border-bottom:1px solid var(--m1-line)}
.m1-sec--logos .m1-row{margin-bottom:18px}
.m1-sec--logos .m1-headline{font-size:.86rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--m1-muted);margin:0}
.m1-sec--logos .m1-headline a{color:inherit}.m1-sec--logos .m1-headline u{text-decoration:none;border-bottom:1px solid currentColor}
.m1-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px 46px}
.m1-logos__item{display:flex;align-items:center;justify-content:center;height:44px}
.m1-logos__item img{max-height:40px;width:auto;max-width:150px;display:block;filter:grayscale(1);opacity:.75;transition:filter .2s ease,opacity .2s ease}
.m1-logos__item:hover img{filter:none;opacity:1}

/* feature strip (Results / Pricing / Reporting / Why Us) */
.m1-sec--feats{padding:56px 0}
.m1-sec--feats .m1-row{gap:0}
.m1-feat{padding:6px 30px;border-left:1px solid var(--m1-line);height:100%;box-sizing:border-box}
.m1-sec--feats .m1-col:first-child .m1-feat{border-left:0;padding-left:0}
.m1-feat__title{font-size:1.22rem;margin:18px 0 8px}
.m1-feat__body{font-size:.98rem;line-height:1.6;color:var(--m1-body)}
.m1-feat__body p{margin:0}
@media(max-width:1100px){.m1-sec--feats .m1-row{gap:34px 0}.m1-sec--feats .m1-col:nth-child(odd) .m1-feat{border-left:0;padding-left:0}}
@media(max-width:680px){.m1-feat{border-left:0;padding:0}.m1-sec--feats .m1-row{gap:30px}}

/* service cards */
.m1-svc{background:#fff;border:1px solid var(--m1-line);border-radius:var(--m1-radius);padding:30px 28px 26px;display:flex;flex-direction:column;align-items:flex-start;box-sizing:border-box;height:100%;transition:border-color .15s ease,box-shadow .15s ease}
.m1-svc:hover{border-color:var(--m1-blue);box-shadow:var(--m1-shadow)}
.m1-svc__title{font-size:1.28rem;margin:20px 0 8px}
.m1-svc__title a{color:var(--m1-ink);text-decoration:none}
.m1-svc:hover .m1-svc__title a{color:var(--m1-blue)}
.m1-svc__body{font-size:.98rem;line-height:1.6;flex:1}
.m1-svc__body p{margin:0}
.m1-svc .m1-link{margin-top:20px}

/* cards + pricing plans */
.m1-card,.m1-plan{background:#fff;border:1px solid var(--m1-line);border-radius:var(--m1-radius);padding:30px 28px 28px;box-sizing:border-box;display:flex;flex-direction:column;height:100%}
.m1-card>.elementor-widget-container,.m1-plan>.elementor-widget-container{display:flex;flex-direction:column;height:100%}
.m1-plan{transition:border-color .15s ease,box-shadow .15s ease}
.m1-plan:hover{border-color:var(--m1-blue);box-shadow:var(--m1-shadow)}
.m1-plan center{text-align:left}
.m1-plan h3,.m1-card h3{font-size:1.28rem;margin:0 0 6px}
.m1-plan__price{margin:0 0 18px;padding-bottom:18px;border-bottom:1px solid var(--m1-line);display:flex;align-items:baseline;gap:8px}
.m1-plan__price-label{font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--m1-muted)}
.m1-plan__amount{font-size:2.3rem;font-weight:800;letter-spacing:-.03em;color:var(--m1-ink);line-height:1}
.m1-plan p{margin:0 0 8px}
.m1-plan p>b:only-child,.m1-plan p>strong:only-child{display:block;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--m1-muted);margin-top:8px}
.m1-plan ul,.m1-card__body ul{list-style:none;padding:0;margin:0 0 14px}
.m1-plan ul li,.m1-card__body ul li{position:relative;padding:5px 0 5px 28px;margin:0;font-size:.97rem;line-height:1.45}
.m1-plan ul li::before,.m1-card__body ul li::before{content:"";position:absolute;left:0;top:8px;width:18px;height:18px;border-radius:50%;background:var(--m1-tint)}
.m1-plan ul li::after,.m1-card__body ul li::after{content:"";position:absolute;left:4px;top:12px;width:10px;height:10px;background:var(--m1-blue);-webkit-mask:var(--m1-check) center/contain no-repeat;mask:var(--m1-check) center/contain no-repeat}
.m1-plan>center:last-child,.m1-plan>p:last-child,.m1-plan>a.m1-btn:last-child{margin-top:auto;padding-top:16px}
.m1-plan .add_to_cart_button,.m1-plan>a.m1-btn,.m1-plan center>a.uk-button{display:block;width:100%;box-sizing:border-box;padding:15px 20px}
.m1-plan>a.m1-btn:last-child{padding-top:15px;margin-top:auto}
.m1-plan span[style*="ff0000"],.m1-card__body span[style*="ff0000"]{color:var(--m1-ink)!important;font-size:1.35rem;font-weight:800}
.m1-card__title{font-size:1.25rem;margin:0 0 10px}
.m1-card__img{align-self:flex-start;width:auto;max-width:100%;margin:0 0 16px;border-radius:var(--m1-radius-sm)}
.m1-card__body{flex:1;display:flex;flex-direction:column}
.m1-card__body>center:last-child,.m1-card__body>p:last-child{margin-top:auto;padding-top:14px}
.m1-card__body center{text-align:left}
.m1-card--primary{background:var(--m1-tint);border-color:transparent}
.m1-card--secondary{box-shadow:var(--m1-shadow-sm)}

/* FAQ */
.m1-faq{display:flex;flex-direction:column;gap:10px}
.m1-faq__item,.m1-faq .elementor-accordion-item{background:#fff;border:1px solid var(--m1-line)!important;border-radius:12px;overflow:hidden}
.m1-faq__q{cursor:pointer;list-style:none;padding:17px 52px 17px 20px;font-weight:700;color:var(--m1-ink);position:relative;font-size:1.04rem;line-height:1.35}
.m1-faq__q::-webkit-details-marker{display:none}
.m1-faq__q::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.5rem;font-weight:400;color:var(--m1-blue);line-height:1}
.m1-faq__item[open] .m1-faq__q::after{content:"\2212"}
.m1-faq__item[open]{border-color:var(--m1-blue)!important}
.m1-faq__a{padding:0 20px 18px}
.m1-faq .elementor-accordion{display:flex;flex-direction:column;gap:10px}
.m1-faq .elementor-tab-title{padding:17px 20px;font-size:1.04rem;font-weight:700;line-height:1.35;margin:0;border:0!important;color:var(--m1-ink)}
.m1-faq .elementor-tab-title a{color:inherit}
.m1-faq .elementor-tab-title.elementor-active{color:var(--m1-blue)}
.m1-faq .elementor-accordion-icon{color:var(--m1-blue)}
.m1-faq .elementor-tab-content{padding:0 20px 18px;border:0!important;color:var(--m1-body)}

/* ---------- 6. content + sidebar ---------- */
.m1-page{padding:0!important}
.e-con.m1-main-row{gap:64px;align-items:flex-start}
.m1-main-row>.m1-col{flex:1 1 0;min-width:0}
.m1-main-row>.m1-aside{flex:0 0 390px;width:390px;max-width:100%;position:static}
body.m1-no-sidebar .m1-main-row>.m1-aside{display:none}
body.m1-no-sidebar .m1-main-row>.m1-col{max-width:980px;margin:0 auto}
@media(max-width:1100px){.m1-main-row>.m1-aside{flex:1 1 auto;width:100%;position:static}.e-con.m1-main-row{gap:40px}}
.m1-content,.m1-text,.m1-rich{font-size:1.06rem;line-height:1.78}
.m1-content>.elementor-widget-container>*:first-child{margin-top:0}
.m1-content a,.m1-text a,.m1-rich a,.m1-faq__a a,.m1-faq .elementor-tab-content a{color:var(--m1-link);text-decoration:underline;text-decoration-color:rgba(7,92,151,.35);text-underline-offset:3px;text-decoration-thickness:1px}
.m1-content a:hover,.m1-text a:hover,.m1-rich a:hover{text-decoration-color:currentColor}
.m1-rich a.m1-btn,.m1-rich a.uk-button,.m1-content a.uk-button,.m1-content a.m1-btn,.m1-rich .m1-svc__title a{text-decoration:none}
.m1-content h2,.m1-text h2,.m1-rich h2{margin-top:1.7em}
.m1-content h3,.m1-text h3,.m1-rich h3{margin-top:1.5em}
.m1-content h2:first-child,.m1-text h2:first-child,.m1-rich h2:first-child,.m1-rich h3:first-child{margin-top:0}
.m1-content img,.m1-text img{border-radius:var(--m1-radius-sm)}
.m1-content img[align="right"],.m1-text img[align="right"]{margin:4px 0 18px 30px}
.m1-content img[align="left"],.m1-text img[align="left"]{margin:4px 30px 18px 0}
@media(max-width:680px){.m1-content img[align],.m1-text img[align]{float:none;display:block;margin:0 auto 18px}}
.m1-content ul:not([class]) li::marker,.m1-text ul li::marker{color:var(--m1-blue)}
.m1-post-title .elementor-heading-title{font-size:clamp(1.9rem,3.1vw,2.7rem);color:var(--m1-ink);font-weight:800;letter-spacing:-.02em;line-height:1.12}
.m1-featured img{border-radius:var(--m1-radius);width:100%}
.m1-full{padding:0!important}
.m1-area--sidebar>.elementor-widget-container{display:flex;flex-direction:column;gap:24px}
.m1-area--sidebar .m1-widget{background:#fff;border:1px solid var(--m1-line);border-radius:var(--m1-radius);padding:26px;overflow:hidden}
.m1-area--sidebar .m1-widget h4,.m1-area--sidebar .m1-widget-title{font-size:1.2rem;margin:0 0 16px;color:var(--m1-ink)}
.m1-area--sidebar .m1-widget font[color="#FFFFFF"]{color:inherit}
.m1-area--sidebar .m1-widget:has(.wpcf7){background:var(--m1-navy);border-color:var(--m1-navy);color:#DDE3F0;box-shadow:var(--m1-shadow)}
.m1-area--sidebar .m1-widget:has(.wpcf7) h4{color:#fff}
.m1-area--sidebar .m1-widget:has(.wpcf7) .wpcf7 form p{color:#DDE3F0}
.m1-area--sidebar .m1-widget ul:not(.m1-recent){list-style:none;padding:0;margin:0}
.m1-area--sidebar .m1-widget ul:not(.m1-recent) li{padding:9px 0;border-bottom:1px solid var(--m1-line);margin:0}
.m1-area--sidebar .m1-widget ul li:last-child{border-bottom:0}
.m1-recent{list-style:none;padding:0;margin:0}
.m1-recent__item{padding:13px 0;border-bottom:1px solid var(--m1-line);margin:0;line-height:1.4}
.m1-recent__item:last-child{border-bottom:0}
.m1-recent__title{display:block;color:var(--m1-ink);font-weight:600}
.m1-recent__title:hover{color:var(--m1-blue)}
.m1-recent__more{display:inline-block;margin-top:4px;font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--m1-link)}

/* ---------- 7. forms ---------- */
.wpcf7 form p{margin:0 0 12px;font-size:.88rem;font-weight:600;color:var(--m1-ink);line-height:1.3}
.wpcf7 form p br{display:none}
.wpcf7 .wpcf7-form-control-wrap{display:block}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 input[type=number],.wpcf7 select,.wpcf7 textarea,.m1-search input[type=search],.widget_search input[type=search]{width:100%;box-sizing:border-box;border:1px solid #CBD2DF;border-radius:var(--m1-radius-sm);padding:12px 14px;font:inherit;font-size:1rem;font-weight:400;color:var(--m1-ink);background:#fff;margin-top:6px;transition:border-color .15s ease,box-shadow .15s ease}
.wpcf7 textarea{min-height:96px;height:96px;max-height:200px;resize:vertical}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{outline:0;border-color:var(--m1-blue);box-shadow:0 0 0 3px rgba(7,92,151,.18)}
.wpcf7 input[type=submit],.wpcf7 .wpcf7-submit{display:block;width:100%!important;height:auto!important;background:var(--m1-blue);color:#fff;border:0;border-radius:var(--m1-radius-sm);padding:16px 20px;font-family:var(--m1-font);font-size:1.02rem;font-weight:700;letter-spacing:.01em;text-transform:none;cursor:pointer;box-shadow:0 8px 18px rgba(7,92,151,.28);transition:background-color .15s ease;margin-top:4px}
.wpcf7 input[type=submit]:hover{background:var(--m1-blue-dark)}
.wpcf7 .wpcf7-not-valid-tip{font-size:.84rem;font-weight:500;color:#C62828;margin-top:4px}
.wpcf7 form .wpcf7-response-output{margin:12px 0 0;border-radius:var(--m1-radius-sm);padding:10px 14px;font-size:.92rem}
.wpcf7 .wpcf7-spinner{display:none}
.m1-hero__form .wpcf7 form{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.m1-hero__form .wpcf7 form>*{grid-column:1/-1;min-width:0}
.m1-hero__form .wpcf7 form>p{grid-column:auto}
.m1-hero__form .wpcf7 form>p:has(textarea),.m1-hero__form .wpcf7 form>p:has(input[type=submit]){grid-column:1/-1}
.m1-hero__form .wpcf7 form>p:has(input[type=submit]){margin-bottom:0}
.m1-hero__form .wpcf7 textarea{min-height:78px;height:78px}
@media(max-width:520px){.m1-hero__form .wpcf7 form{grid-template-columns:1fr}.m1-hero__form{padding:24px 20px 20px}}

/* ---------- 8. footer ---------- */
.m1-footer{background:var(--m1-navy-deep);color:#B9C2D6;font-size:.95rem}
.m1-footer__inner{max-width:var(--m1-wrap);margin:0 auto;padding:60px var(--m1-gutter) 30px;box-sizing:border-box}
.m1-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:48px;align-items:start}
.m1-footer__logo{display:inline-block;background:#fff;border-radius:12px;padding:12px 16px;line-height:0}
.m1-footer__logo img{height:38px;width:auto}
.m1-footer__phone{margin:20px 0 18px;font-size:1.05rem;color:#DDE3F0}
.m1-footer__phone a{color:#fff;font-weight:800}
.m1-footer__social{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.m1-footer__social img{height:36px;width:auto;display:block;border-radius:8px}
.m1-footer__links{list-style:none;margin:0;padding:0}
.m1-footer__links li{margin:0 0 12px}
.m1-footer a{color:#E8ECF5;text-decoration:none;cursor:pointer}
.m1-footer a:hover{color:#fff;text-decoration:underline}
.m1-footer__col--pay img{border-radius:10px;max-width:160px;height:auto}
.m1-footer__legal{margin-top:44px;padding-top:26px;border-top:1px solid rgba(255,255,255,.12);font-size:.84rem;line-height:1.6;color:#8E98AF}
.m1-footer__legal p{margin:0 0 10px}
.m1-footer__legal a{color:#C9D2E3}
.m1-footer__sitemaps{font-size:.78rem}
@media(max-width:900px){.m1-footer__grid{grid-template-columns:1fr 1fr;gap:34px}.m1-footer__col--brand{grid-column:1/-1}}
.m1-footer__mobile{padding:22px var(--m1-gutter) 0!important}
.m1-area--dialog-mobile .m1-widget>div,.m1-area--dialog-mobile .textwidget>div{display:flex;gap:10px;flex-wrap:wrap}
.m1-area--dialog-mobile br{display:none}
.m1-area--dialog-mobile .uk-button{flex:1 1 140px;display:block;background:rgba(255,255,255,.1);box-shadow:none}

/* ---------- 9. blog ---------- */
.m1-archive .elementor-post{background:#fff;border:1px solid var(--m1-line);border-radius:var(--m1-radius);padding:22px;transition:border-color .15s ease,box-shadow .15s ease}
.m1-archive .elementor-post:hover{border-color:var(--m1-blue);box-shadow:var(--m1-shadow)}
.m1-archive .elementor-post__title{font-size:1.35rem;margin-bottom:8px;font-weight:800;letter-spacing:-.01em}
.m1-archive .elementor-post__title a{color:var(--m1-ink)}
.m1-archive .elementor-post__thumbnail img{border-radius:var(--m1-radius-sm)}
.m1-archive .elementor-post__read-more{color:var(--m1-link);font-weight:700;letter-spacing:.04em}
.m1-archive .elementor-pagination{margin-top:30px}
.m1-archive .elementor-pagination .page-numbers{display:inline-block;padding:9px 15px;border:1px solid var(--m1-line);border-radius:var(--m1-radius-sm);margin:0 3px;color:var(--m1-ink);font-weight:600}
.m1-archive .elementor-pagination .page-numbers.current{background:var(--m1-blue);border-color:var(--m1-blue);color:#fff}
.m1-postnav{border-top:1px solid var(--m1-line);padding-top:22px;margin-top:10px}

/* ---------- 10. misc carried over ---------- */
.article-table-wrap{width:100%;overflow-x:auto;margin:25px 0;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.article-table{width:100%;min-width:650px;border-collapse:collapse;background:#fff;font-size:16px;line-height:1.5}
.article-table th{background:#272E45;color:#fff;text-align:left;padding:16px;font-weight:700}
.article-table td{padding:16px;border-bottom:1px solid #e6e8ef;vertical-align:middle;color:#222}
.article-table tr:nth-child(even) td{background:#f7f8fb}
.article-table tr:last-child td{border-bottom:none}
.article-table td:first-child{font-weight:700;color:#272E45}
.brightness{filter:brightness(.8)}img.brightness:hover{filter:brightness(1)}
.iframe-container{position:relative;width:100%;padding-bottom:56.25%;height:0}.iframe-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}
.mobileShow{display:none}
@media(max-width:480px){.hide_on_mobile{display:none!important}.mobileShow{display:block}}
#tagsbody,#menubody{display:none}
a.added_to_cart,a.about_paypal{display:none!important}
.main_buttons{height:65px!important}.main_buttons .on{padding:8px 0!important}.main_buttons .on i{font-size:24px!important}
@media(max-width:790px){.main_buttons{z-index:10!important}}
.woocommerce-checkout button#place_order{padding:14px 20px}

.uk-text-center{text-align:center}.uk-margin,.uk-margin-top{margin-top:18px}.uk-width-1-1{width:100%}
/* reduced motion: make transitions instant rather than removing them, so scripts that wait for a transition to finish (e.g. the floating cart) still work */
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}}

/* ---------- 11. motion + depth (the "wow" layer; delete this block for a calmer site) ---------- */
/* header fits on one line; glass effect once the page scrolls */
.m1-nav__list>li>a{font-size:.8rem;letter-spacing:.02em;padding:0 9px;height:40px}
.m1-logo img{height:40px}
.m1-header{transition:background-color .2s ease,box-shadow .2s ease}
.m1-header.is-scrolled{background:rgba(255,255,255,.86);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);box-shadow:0 1px 0 var(--m1-line),0 12px 30px rgba(27,32,52,.10)}
@media(min-width:1200px) and (max-width:1339px){.m1-nav__list>li>a{font-size:.74rem;padding:0 7px}.m1-btn--cta{padding:12px 16px;font-size:.88rem}.m1-logo img{height:34px}.m1-bar{gap:10px}}
/* buttons: gradient + light sweep */
.m1-btn,.add_to_cart_button,.wpcf7 input[type=submit],.uk-button{background-image:linear-gradient(135deg,#0A74BC 0%,var(--m1-blue) 45%,#054A7B 100%);background-size:160% 160%;background-position:0 50%;position:relative;overflow:hidden;transition:background-position .35s ease,box-shadow .2s ease,transform .2s ease}
.m1-btn:hover,.add_to_cart_button:hover,.wpcf7 input[type=submit]:hover,.uk-button:hover{background-position:100% 50%;transform:translateY(-2px);box-shadow:0 14px 30px rgba(7,92,151,.38)}
.m1-btn::after,.add_to_cart_button::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .6s ease;pointer-events:none}
.m1-btn:hover::after,.add_to_cart_button:hover::after{left:130%}
/* hero: drifting light, fine grid, entrance */
.m1-hero::before,.m1-hero::after{content:"";position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;will-change:transform}
.m1-hero::before{width:620px;height:620px;right:-140px;top:-220px;background:radial-gradient(circle,rgba(20,140,220,.75),rgba(7,92,151,0) 68%);animation:m1-drift-a 16s ease-in-out infinite alternate}
.m1-hero::after{width:520px;height:520px;left:-180px;bottom:-260px;background:radial-gradient(circle,rgba(7,92,151,.7),rgba(7,92,151,0) 68%);animation:m1-drift-b 20s ease-in-out infinite alternate}
@keyframes m1-drift-a{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-120px,90px,0) scale(1.15)}}
@keyframes m1-drift-b{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(140px,-70px,0) scale(1.2)}}
.m1-hero__inner{z-index:1}
.m1-hero__inner::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 75% 85% at 50% 40%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 75% 85% at 50% 40%,#000 20%,transparent 75%);pointer-events:none}
.m1-hero__title{background:linear-gradient(100deg,#fff 30%,#9CCBEE 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#fff;padding-bottom:.06em}
.m1-hero__points li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 16px 8px 9px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.m1-hero__points{gap:10px 12px}
.m1-hero__form{position:relative;isolation:isolate;box-shadow:0 40px 90px rgba(4,8,22,.55),0 0 0 1px rgba(255,255,255,.08)}
.m1-hero__form::before{content:"";position:absolute;inset:-2px;z-index:-2;border-radius:22px;background:conic-gradient(from var(--m1-a,0deg),#0A74BC,#7CC4F5,#fff,#0A74BC,#075C97,#7CC4F5,#0A74BC);animation:m1-spin 7s linear infinite}
.m1-hero__form::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:20px;background:#fff}
@property --m1-a{syntax:"<angle>";initial-value:0deg;inherits:false}
@keyframes m1-spin{to{--m1-a:360deg}}
.m1-js .m1-hero__copy>*,.m1-js .m1-hero__form{animation:m1-rise .8s cubic-bezier(.2,.7,.2,1) both}
.m1-js .m1-hero__copy>*:nth-child(2){animation-delay:.1s}.m1-js .m1-hero__copy>*:nth-child(3){animation-delay:.2s}.m1-js .m1-hero__form{animation-delay:.18s}
@keyframes m1-rise{from{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}
/* scroll reveals (only when JavaScript is running) */
.m1-js .m1-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .7s cubic-bezier(.2,.7,.2,1) var(--m1-d,0ms),transform .7s cubic-bezier(.2,.7,.2,1) var(--m1-d,0ms),border-color .15s ease,box-shadow .2s ease}
.m1-js .m1-reveal.m1-in{opacity:1;transform:none}
/* services: dark band with glass cards and a pointer spotlight */
.m1-sec--svcs{position:relative;overflow:hidden;background:radial-gradient(800px 420px at 12% 0%,rgba(7,92,151,.55),rgba(7,92,151,0) 62%),radial-gradient(700px 400px at 100% 100%,rgba(7,92,151,.4),rgba(7,92,151,0) 60%),linear-gradient(180deg,var(--m1-navy) 0%,var(--m1-navy-deep) 100%);padding:76px 0}
.m1-sec--svcs .m1-svc{position:relative;overflow:hidden;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:opacity .7s cubic-bezier(.2,.7,.2,1) var(--m1-d,0ms),transform .35s cubic-bezier(.2,.7,.2,1),border-color .2s ease,background-color .2s ease,box-shadow .25s ease}
.m1-sec--svcs .m1-svc::before,.m1-plan::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(340px circle at var(--mx,50%) var(--my,0%),rgba(124,196,245,.22),transparent 65%);opacity:0;transition:opacity .25s ease;pointer-events:none}
.m1-sec--svcs .m1-svc:hover::before,.m1-plan:hover::before{opacity:1}
.m1-sec--svcs .m1-svc.m1-in:hover{transform:translate3d(0,-8px,0);border-color:rgba(124,196,245,.7);background:rgba(255,255,255,.1);box-shadow:0 26px 50px rgba(4,8,22,.45)}
.m1-sec--svcs .m1-svc__title a{color:#fff}.m1-sec--svcs .m1-svc:hover .m1-svc__title a{color:#fff}
.m1-sec--svcs .m1-svc__body{color:#C5CFE2}
.m1-sec--svcs .m1-link{color:#8FCBF3}
.m1-sec--svcs .m1-ico{background:linear-gradient(135deg,#0A74BC,#075C97);box-shadow:0 10px 22px rgba(7,92,151,.5)}
.m1-sec--svcs .m1-ico::before{background:#fff}
.m1-svc .m1-ico,.m1-feat .m1-ico{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.m1-svc:hover .m1-ico{transform:translate3d(0,-3px,0) rotate(-6deg) scale(1.06)}
/* features: gradient icon tiles */
.m1-feat .m1-ico{background:linear-gradient(135deg,#0A74BC,#075C97);box-shadow:0 12px 24px rgba(7,92,151,.28)}
.m1-feat .m1-ico::before{background:#fff}
.m1-feat:hover .m1-ico{transform:translate3d(0,-4px,0) scale(1.06)}
/* plans: lift, spotlight, accent bar */
.m1-plan{position:relative;overflow:hidden;transition:opacity .7s cubic-bezier(.2,.7,.2,1) var(--m1-d,0ms),transform .35s cubic-bezier(.2,.7,.2,1),border-color .2s ease,box-shadow .25s ease}
.m1-plan::after{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#0A74BC,#7CC4F5,#075C97);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.m1-plan:hover::after{transform:scaleX(1)}
.m1-plan.m1-in:hover{transform:translate3d(0,-8px,0);box-shadow:0 30px 60px rgba(27,32,52,.16);border-color:rgba(7,92,151,.45)}
.m1-plan>*{position:relative}
.m1-plan__amount{background:linear-gradient(120deg,var(--m1-ink),var(--m1-blue));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.m1-plan span[style*="ff0000"],.m1-card__body span[style*="ff0000"]{font-size:1.02rem}
/* headings in content get a short accent rule */
.m1-content h2::after,.m1-rich h2::after,.m1-text h2::after,h2.m1-headline:not(.m1-sec--logos h2)::after{content:"";display:block;width:56px;height:4px;border-radius:4px;margin-top:14px;background:linear-gradient(90deg,#0A74BC,#7CC4F5)}
.m1-ta-center.m1-headline::after{margin-left:auto;margin-right:auto}
.m1-sec--logos .m1-headline::after{display:none!important}
.m1-area--sidebar .m1-widget:has(.wpcf7){background:radial-gradient(420px 260px at 100% 0%,rgba(7,92,151,.7),rgba(7,92,151,0) 65%),var(--m1-navy)}
.m1-footer{background:radial-gradient(900px 380px at 0% 0%,rgba(7,92,151,.35),rgba(7,92,151,0) 60%),var(--m1-navy-deep)}
@media(prefers-reduced-motion:reduce){.m1-hero::before,.m1-hero::after,.m1-hero__form::before,.m1-js .m1-hero__copy>*,.m1-js .m1-hero__form{animation:none!important}.m1-js .m1-reveal{opacity:1!important;transform:none!important}}
/* ---------- 12. header fit: the menu always has room next to the logo ---------- */
.m1-bar>.m1-bar__logo{flex:0 0 auto}
.m1-bar>.m1-bar__nav{overflow:visible}
.m1-nav__list{gap:0}
@media(min-width:1200px){
  .m1-nav__list>li>a{font-size:.78rem;padding:0 8px;gap:5px}
  .m1-logo img{height:38px}
}
@media(min-width:1200px) and (max-width:1499px){
  .m1-bar>.m1-bar__cta{display:none}
  .m1-nav__list>li>a{font-size:.76rem;padding:0 7px}
  .m1-logo img{height:36px}
}
@media(min-width:1200px) and (max-width:1279px){
  .m1-nav__list>li>a{font-size:.72rem;padding:0 5px;letter-spacing:0}
  .m1-logo img{height:32px}
}
@media(min-width:1600px){.m1-nav__list>li>a{font-size:.84rem;padding:0 11px}.m1-logo img{height:42px}}
/* 12b */
@media(min-width:1420px) and (max-width:1499px){.m1-bar>.m1-bar__cta{display:block}.m1-btn--cta{padding:12px 16px;font-size:.86rem}}

/* ---------- 13. fixes: header fit, sidebar, featured logos ---------- */
@media(min-width:1200px){
  .m1-nav__list>li>a{font-size:.8rem;padding:0 9px;letter-spacing:.01em;gap:5px}
  .m1-logo img{height:38px}
  .m1-bar{gap:18px}
  .m1-bar>.m1-bar__cta{display:block}
  .m1-btn--cta{padding:13px 20px;font-size:.92rem}
}
html.m1-nocta .m1-bar>.m1-bar__cta{display:none}
/* same compact menu as on phones, used on any screen where the full menu would not fit */
html.m1-burger .m1-bar>.m1-bar__nav{flex:0 0 auto;order:3;position:static;margin-left:auto}
html.m1-burger .m1-bar>.m1-bar__cta{display:block;margin-left:auto}
html.m1-burger .m1-bar>.m1-bar__cta+.m1-bar__nav,html.m1-burger .m1-bar>.m1-bar__nav{margin-left:0}
html.m1-burger .m1-bar__nav .elementor-widget-container,html.m1-burger .m1-bar__nav .elementor-shortcode,html.m1-burger .m1-nav{position:static}
html.m1-burger .m1-nav__toggle{display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:0;border-radius:10px;background:var(--m1-navy);cursor:pointer}
html.m1-burger .m1-nav__toggle-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
html.m1-burger .m1-nav__bars,html.m1-burger .m1-nav__bars::before,html.m1-burger .m1-nav__bars::after{display:block;width:20px;height:2px;border-radius:2px;background:#fff;position:relative}
html.m1-burger .m1-nav__bars::before,html.m1-burger .m1-nav__bars::after{content:"";position:absolute;left:0}
html.m1-burger .m1-nav__bars::before{top:-6px}html.m1-burger .m1-nav__bars::after{top:6px}
html.m1-burger .m1-nav.is-open .m1-nav__bars{background:transparent}
html.m1-burger .m1-nav.is-open .m1-nav__bars::before{top:0;transform:rotate(45deg)}
html.m1-burger .m1-nav.is-open .m1-nav__bars::after{top:0;transform:rotate(-45deg)}
html.m1-burger .m1-nav__panel{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--m1-line);box-shadow:0 24px 40px rgba(27,32,52,.18);max-height:calc(100vh - 80px);overflow-y:auto;padding:8px max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2 + var(--m1-gutter))) 20px;z-index:60}
html.m1-burger .m1-nav.is-open .m1-nav__panel{display:block}
html.m1-burger .m1-nav__list{display:block}
html.m1-burger .m1-nav__list li{border-bottom:1px solid var(--m1-line)}
html.m1-burger .m1-nav__list li li:last-child{border-bottom:0}
html.m1-burger .m1-nav__list>li>a{height:auto;padding:15px 52px 15px 6px;font-size:1.02rem;border-radius:0;background:none!important;white-space:normal}
html.m1-burger .m1-nav__list>li.menu-item-has-children>a::after{display:none}
html.m1-burger .m1-nav__sub{display:block;position:absolute;right:0;top:5px;width:44px;height:44px;border:0;border-radius:10px;background:var(--m1-soft);cursor:pointer}
html.m1-burger .m1-nav__sub::before{content:"";position:absolute;inset:15px;background:var(--m1-ink);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat}
html.m1-burger .m1-nav__list li.is-open>.m1-nav__sub::before{transform:rotate(180deg)}
html.m1-burger .m1-nav__list ul,html.m1-burger .m1-nav__list ul ul{position:static;display:none;visibility:visible;opacity:1;border:0;box-shadow:none;border-radius:0;padding:0 0 8px 14px;min-width:0;transition:none}
html.m1-burger .m1-nav__list li.is-open>ul{display:block}
html.m1-burger .m1-nav__list ul a{padding:11px 52px 11px 6px;font-size:.96rem}
/* long sub-menu labels wrap instead of stretching the panel */
.m1-nav__list ul{max-width:340px}
.m1-nav__list ul a{white-space:normal}

/* sidebar: widgets that only carry hidden data (e.g. review schema) take no space; an empty sidebar disappears */
/* empty sidebar widgets are hidden by the theme (see inc/m1-theme.php) */
body.m1-sidebar-empty .m1-main-row>.m1-aside{display:none}
body.m1-sidebar-empty .m1-main-row>.m1-col{max-width:1060px;margin-left:auto;margin-right:auto}
.m1-area--sidebar .m1-widget center{text-align:left}
.m1-area--sidebar .m1-widget h3{font-size:1.2rem;margin:0 0 14px}
.m1-area--sidebar .m1-widget img{border-radius:var(--m1-radius-sm)}
.m1-area--sidebar .m1-widget a{font-weight:600}

/* "featured in": larger, full-colour logos on white tiles */
.m1-sec--logos{padding:52px 0 50px;background:var(--m1-soft);border-bottom:0}
.m1-sec--logos .m1-row{margin-bottom:26px}
.m1-sec--logos .m1-headline{font-size:clamp(1.3rem,2vw,1.7rem);font-weight:800;letter-spacing:-.01em;text-transform:none;color:var(--m1-ink)}
.m1-sec--logos .m1-headline a{color:var(--m1-blue)}
.m1-logos{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:16px}
.m1-logos__item{height:96px;background:#fff;border:1px solid var(--m1-line);border-radius:14px;padding:14px 16px;box-sizing:border-box;box-shadow:var(--m1-shadow-sm);transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease,border-color .2s ease}
.m1-logos__item img{max-height:62px;max-width:100%;width:auto;height:auto;filter:none;opacity:1;object-fit:contain}
a.m1-logos__item:hover,.m1-logos__item:hover{transform:translate3d(0,-4px,0);box-shadow:var(--m1-shadow);border-color:rgba(7,92,151,.4)}
@media(max-width:1100px){.m1-logos{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:560px){.m1-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.m1-logos__item{height:84px}}
/* ---------- 14. feature cards (Results / Pricing / Reporting / Why Us) + service lists ---------- */
.m1-sec--feats{padding:64px 0;background:#fff}
.m1-sec--feats .m1-row{gap:var(--m1-gap)}
.m1-feat,.m1-sec--feats .m1-col:first-child .m1-feat{position:relative;overflow:hidden;height:100%;box-sizing:border-box;padding:32px 28px 30px;border:0;border-radius:18px;color:#E3EEF8;background:linear-gradient(150deg,#0A74BC 0%,var(--m1-blue) 48%,#063F6B 100%);box-shadow:0 18px 40px rgba(7,92,151,.28);transition:opacity .7s cubic-bezier(.2,.7,.2,1) var(--m1-d,0ms),transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease}
.m1-feat::after{content:"";position:absolute;right:-70px;top:-70px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 70%);pointer-events:none}
.m1-feat.m1-in:hover{transform:translate3d(0,-8px,0);box-shadow:0 30px 60px rgba(7,92,151,.4)}
.m1-feat .m1-ico{width:64px;height:64px;border-radius:16px;background:#fff;box-shadow:0 10px 24px rgba(4,30,54,.3)}
.m1-feat .m1-ico::before{inset:16px;background:var(--m1-blue)}
.m1-feat__title{font-size:1.5rem;color:#fff;margin:22px 0 10px;letter-spacing:-.02em}
.m1-feat__body{font-size:1.02rem;line-height:1.6;color:#E3EEF8}
@media(max-width:1100px){.m1-sec--feats .m1-row{gap:var(--m1-gap)}.m1-sec--feats .m1-col:nth-child(odd) .m1-feat{padding-left:28px}}
@media(max-width:680px){.m1-feat,.m1-sec--feats .m1-col:first-child .m1-feat{padding:26px 22px}}
.m1-svc__list{list-style:none;margin:6px 0 0;padding:0;flex:1;width:100%}
.m1-svc__list li{position:relative;margin:0;padding:7px 0 7px 28px;font-size:.98rem;line-height:1.45}
.m1-svc__list li::before{content:"";position:absolute;left:0;top:10px;width:18px;height:18px;border-radius:50%;background:var(--m1-tint)}
.m1-svc__list li::after{content:"";position:absolute;left:4px;top:14px;width:10px;height:10px;background:var(--m1-blue);-webkit-mask:var(--m1-check) center/contain no-repeat;mask:var(--m1-check) center/contain no-repeat}
.m1-sec--svcs .m1-svc__list li{color:#D5DDEC}
.m1-sec--svcs .m1-svc__list li::before{background:rgba(255,255,255,.14)}
.m1-sec--svcs .m1-svc__list li::after{background:#8FCBF3}
.m1-svc{width:100%}
/* ---------- 15. pages without sidebar, contact layout, header CTA ---------- */
/* no sidebar: content lines up with the hero's left edge; text keeps a readable line length */
body.m1-sidebar-empty .m1-main-row>.m1-col{max-width:none;margin-left:0;margin-right:0}
body.m1-sidebar-empty .m1-main-row .m1-content>.elementor-widget-container>:is(p,ul,ol,h2,h3,h4,h5,blockquote,dl){max-width:92ch}
body.m1-no-sidebar .m1-main-row>.m1-col{max-width:none;margin:0}
.m1-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:stretch}
.m1-split__text>p{max-width:none}
.m1-split__media{min-height:440px;border-radius:var(--m1-radius);overflow:hidden;border:1px solid var(--m1-line);box-shadow:var(--m1-shadow)}
.m1-split__media iframe{display:block;width:100%;height:100%;min-height:440px}
.m1-contact{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.m1-contact li{margin:0;display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--m1-soft);border:1px solid var(--m1-line);border-radius:14px;font-weight:600;color:var(--m1-ink);font-size:1rem;line-height:1.35}
.m1-contact .m1-ico{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#0A74BC,#075C97)}
.m1-contact .m1-ico::before{inset:11px;background:#fff}
.m1-contact a{text-decoration:none!important}
@media(max-width:1000px){.m1-split{grid-template-columns:1fr;gap:30px}.m1-split__media,.m1-split__media iframe{min-height:320px}}
@media(max-width:560px){.m1-contact{grid-template-columns:1fr}}
.m1-ico--phone{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='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.1 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")}
.m1-ico--clock{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E")}
@media(min-width:1200px){.m1-nav__list>li>a{font-size:.78rem;padding:0 8px}.m1-btn--cta{padding:12px 18px;font-size:.9rem}.m1-bar{gap:14px}}
/* ---------- 16. hero background: the original site image ---------- */
.m1-hero{background:linear-gradient(100deg,rgba(27,32,52,.55) 0%,rgba(27,32,52,.25) 55%,rgba(27,32,52,.1) 100%),var(--m1-navy-deep) url(/wp-content/uploads/2018/08/bg-front-page.png) center/cover no-repeat}
.m1-hero::before{opacity:.45}
.m1-hero::after{opacity:.35}
.m1-hero__inner::before{display:none}
/* ---------- 17. blog (original layout): 2-column cards, sidebar with form + categories ---------- */
.e-con.m1-blog{padding-top:48px;padding-bottom:64px;gap:30px}
.e-con.m1-blog-row{gap:40px;align-items:flex-start}
.m1-blog-row>.m1-col{flex:1 1 0;min-width:0}
.m1-blog-row>.m1-aside{flex:0 0 31%;width:31%;position:static;display:flex!important}
@media(max-width:1024px){.m1-blog-row>.m1-aside{flex:1 1 auto;width:100%}}
.m1-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.m1-posts--stack{grid-template-columns:1fr;gap:26px}
@media(max-width:680px){.m1-posts{grid-template-columns:1fr;gap:28px}}
.m1-post-card{background:#fff;border-radius:var(--m1-radius);overflow:hidden;box-shadow:0 6px 24px rgba(27,32,52,.08);display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease}
.m1-post-card:hover{transform:translate3d(0,-6px,0);box-shadow:0 22px 46px rgba(27,32,52,.16)}
.m1-post-card__img{display:block;line-height:0;aspect-ratio:3/2;overflow:hidden;background:var(--m1-soft)}
.m1-post-card__img img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.m1-post-card:hover .m1-post-card__img img{transform:scale(1.04)}
.m1-post-card__title{font-size:1.35rem;font-weight:700;line-height:1.35;letter-spacing:-.01em;text-align:center;margin:0;padding:26px 22px 22px;flex:1}
.m1-post-card__title::after{display:none!important}
.m1-post-card__title a{color:var(--m1-ink);text-decoration:none!important}
.m1-post-card__title a:hover{color:var(--m1-blue)}
.m1-post-card__more{display:block;margin:0 20px 20px;border-radius:999px;padding:11px 18px;font-size:.88rem;letter-spacing:.04em}
.m1-pagination{margin-top:44px}
.m1-pagination ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px}
.m1-pagination li{margin:0}
.m1-pagination .page-numbers{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border-radius:999px;color:var(--m1-ink);font-weight:600;font-size:.95rem;text-decoration:none;box-sizing:border-box}
.m1-pagination a.page-numbers:hover{background:var(--m1-tint);color:var(--m1-blue)}
.m1-pagination .page-numbers.current{background:var(--m1-blue);color:#fff}
.m1-search form{border-bottom:1px solid var(--m1-line);background:transparent}
.m1-search .elementor-search-form__container{background:transparent!important;border:0!important;min-height:48px}
.m1-search input[type=search]{border:0!important;background:transparent!important;margin:0;padding:10px 12px;font-size:1rem;box-shadow:none!important}
/* blog sidebar: blue cards like the original */
.m1-blog .m1-area--sidebar>.elementor-widget-container{gap:40px}
.m1-blog .m1-area--sidebar .m1-widget{background:var(--m1-blue);border:0;color:#fff;padding:40px 44px;border-radius:var(--m1-radius);box-shadow:0 14px 34px rgba(7,92,151,.22)}
.m1-blog .m1-area--sidebar .m1-widget h4,.m1-blog .m1-area--sidebar .m1-widget h3,.m1-blog .m1-area--sidebar .m1-widget-title{color:#fff;font-size:1.3rem;font-weight:600;margin:0 0 18px;border:0;padding:0}
.m1-blog .m1-area--sidebar .m1-widget a{color:#fff;font-weight:500}
.m1-blog .m1-area--sidebar .m1-widget a:hover{text-decoration:underline}
.m1-blog .m1-area--sidebar .m1-widget ul:not(.m1-recent) li{border-bottom:0;padding:6px 0}
.m1-blog .m1-area--sidebar .m1-widget:has(.wpcf7){background:var(--m1-blue)}
.m1-blog .m1-area--sidebar .m1-widget .wpcf7 form p{color:#fff;font-weight:500;font-size:.98rem}
.m1-blog .m1-area--sidebar .m1-widget .wpcf7 input[type=submit]{width:auto!important;display:inline-block;background:transparent;background-image:none;border:2px solid #fff;box-shadow:none;padding:10px 38px;border-radius:6px}
.m1-blog .m1-area--sidebar .m1-widget .wpcf7 input[type=submit]:hover{background:#fff;color:var(--m1-blue);transform:none}
.m1-blog .m1-area--sidebar .m1-widget.widget_search{background:transparent;box-shadow:none;padding:0;border-bottom:1px solid var(--m1-line);border-radius:0}
.m1-blog .m1-area--sidebar .widget_search input[type=search]{border:0;margin:0;padding:10px 4px;color:var(--m1-ink)}
.m1-blog .m1-area--sidebar .widget_search button,.m1-blog .m1-area--sidebar .widget_search input[type=submit]{display:none}
.m1-blog .m1-area--sidebar .m1-widget:has(.m1-posts){background:transparent;box-shadow:none;padding:0;color:var(--m1-ink)}
.m1-blog .m1-area--sidebar .m1-widget:has(.m1-posts) h4,.m1-area--sidebar .m1-fromblog{color:var(--m1-ink);font-size:1.7rem;font-weight:700;text-align:center;margin:0 0 22px}
.m1-blog .m1-area--sidebar .m1-post-card__title a{color:var(--m1-ink);font-weight:700}
.m1-blog .m1-area--sidebar .m1-post-card__more{color:#fff}
.m1-area--sidebar .m1-widget:has(.m1-posts){background:transparent;border:0;padding:0;overflow:visible}
.m1-area--sidebar .m1-post-card__title{font-size:1.15rem;text-align:left;padding:18px 20px 16px}
.m1-area--sidebar .m1-post-card__title a{color:var(--m1-ink)}
.m1-area--sidebar .m1-post-card__more{color:#fff!important}
.m1-blog .m1-post-title{margin-bottom:0}
.m1-blog .m1-content>.elementor-widget-container>:is(p,ul,ol,h2,h3,h4,h5,blockquote,dl){max-width:none}
/* posts keep the original look: no hero band above the title */
.single-post .m1-top{display:none}
/* 17b */
.m1-blog .m1-area--sidebar>.elementor-widget-container{gap:0}
.m1-blog .m1-area--sidebar .m1-widget{margin:0 0 40px}
.m1-blog .m1-area--sidebar .m1-widget:last-child{margin-bottom:0}
.m1-blog .m1-area--sidebar .m1-widget.widget_search{margin-bottom:28px}
.m1-area--sidebar .m1-widget .m1-post-card .m1-post-card__title{padding:18px 20px 16px;margin:0;font-size:1.15rem;text-align:left}
.m1-blog .m1-area--sidebar .m1-widget .m1-post-card .m1-post-card__title a{color:var(--m1-ink);font-weight:700}
.m1-crumbs{font-size:.98rem;color:var(--m1-body);margin:0}
.m1-crumbs a{color:var(--m1-ink);text-decoration:none}
.m1-crumbs a:hover{color:var(--m1-blue)}

/* ---------- 18. location pages + publications strip ---------- */
.e-con.m1-sec--muted{background:var(--m1-soft)}
.m1-loc .e-con.m1-sec{padding-top:72px;padding-bottom:72px}
/* intro: text left, artwork right in a tilted frame */
.e-con.m1-loc-intro__row{gap:72px;align-items:center;display:flex}
.m1-loc-intro__text{flex:1 1 0;min-width:0}
.m1-loc-intro__text .m1-text{font-size:1.1rem;line-height:1.8}
.m1-loc-intro__art{flex:0 0 38%;max-width:460px;position:relative}
.m1-loc-intro__art .m1-figure{margin:0;position:relative}
.m1-loc-intro__art .m1-figure::before{content:"";position:absolute;inset:-18px -18px 18px 18px;border-radius:28px;background:linear-gradient(150deg,#0A74BC,#075C97 55%,#063F6B);transform:rotate(3deg);box-shadow:0 30px 60px rgba(7,92,151,.3)}
.m1-loc-intro__art .m1-figure img{position:relative;display:block;width:100%;height:auto;border-radius:22px;border:6px solid #fff;box-shadow:0 24px 50px rgba(27,32,52,.25);transform:rotate(-2deg);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.m1-loc-intro__art:hover .m1-figure img{transform:rotate(0deg) scale(1.02)}
@media(max-width:1024px){.e-con.m1-loc-intro__row{gap:44px}.m1-loc-intro__art{flex:1 1 auto;max-width:380px;margin:0 auto;order:2}}
/* pricing band */
.m1-loc-head{text-align:center;max-width:980px;margin:0 auto 12px}
.m1-loc-head .m1-headline,.m1-loc-head h2{text-align:center;font-size:clamp(1.8rem,2.8vw,2.5rem)}
.m1-loc-head h2::after,.m1-loc-head .m1-headline::after{margin-left:auto!important;margin-right:auto!important}
.m1-loc-head .m1-text{font-size:1.05rem;text-align:left}
.e-con.m1-loc-plans{gap:var(--m1-gap);align-items:stretch}
.m1-loc-plans>.m1-col{flex:1 1 0}
.m1-loc-plans .m1-plan{height:100%}
.m1-loc-plans .m1-plan .elementor-shortcode,.m1-loc-plans .m1-plan .elementor-widget-container{display:flex;flex-direction:column;height:100%}
.m1-loc-plans .m1-plan h3{font-size:1.4rem}
.m1-loc-plans .m1-plan .elementor-shortcode>center:last-child,.m1-loc-plans .m1-plan .elementor-shortcode>p:last-child{margin-top:auto;padding-top:18px}
.m1-loc-plans .m1-plan a.uk-button,.m1-loc-plans .m1-plan a.m1-btn,.m1-loc-plans .m1-plan a.button{display:block;width:100%;box-sizing:border-box;padding:15px 20px}
.m1-loc-plans>.m1-col:nth-child(2) .m1-plan{border-color:var(--m1-blue);box-shadow:0 26px 56px rgba(7,92,151,.2)}
.m1-loc-plans>.m1-col:nth-child(2) .m1-plan::after{transform:scaleX(1)}
@media(min-width:1025px){.m1-loc-plans>.m1-col:nth-child(2){margin-top:-14px;margin-bottom:-14px}}
/* body, prose */
.m1-loc-body body.m1-sidebar-empty .m1-main-row>.m1-col,.m1-loc-prose{max-width:1040px;margin-left:auto!important;margin-right:auto!important;width:100%}
.m1-loc-body .m1-rich h2:first-child,.m1-loc-prose h2:first-child{font-size:clamp(1.7rem,2.6vw,2.3rem)}
.m1-loc-body .m1-rich strong,.m1-loc-prose strong{color:var(--m1-ink)}
/* industries: link chips */
.m1-loc-industries>.e-con-inner>.elementor-widget-heading,.m1-loc-industries .m1-headline{text-align:center}
.m1-loc-industries .m1-headline::after{margin-left:auto!important;margin-right:auto!important}
.m1-loc-industries .m1-headline .elementor-heading-title{text-align:center}
.e-con.m1-loc-industries__row{gap:14px 28px;margin-top:10px}
.m1-loc-industries__row>.m1-col{flex:1 1 0}
.m1-loc-industries__row ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.m1-loc-industries__row li{margin:0}
.m1-loc-industries__row li a,.m1-loc-industries__row .m1-rich>.elementor-widget-container>a,.m1-loc-industries__row .elementor-shortcode>a{display:flex;align-items:center;gap:10px;padding:13px 16px;background:#fff;border:1px solid var(--m1-line);border-radius:12px;color:var(--m1-ink);font-weight:600;font-size:.97rem;text-decoration:none!important;transition:border-color .15s ease,color .15s ease,transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .2s ease}
.m1-loc-industries__row li a::before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--m1-blue)}
.m1-loc-industries__row li a:hover{border-color:var(--m1-blue);color:var(--m1-blue);transform:translate3d(0,-2px,0);box-shadow:var(--m1-shadow-sm)}
@media(max-width:680px){.m1-loc-industries__row ul{grid-template-columns:1fr}}
/* FAQ band */
.e-con.m1-loc-faq__row{gap:40px;align-items:flex-start}
.m1-loc-faq__col{flex:1 1 0;min-width:0}
.m1-loc-faq .m1-headline .elementor-heading-title,.m1-loc-faq h2{font-size:clamp(1.5rem,2.2vw,1.9rem)}
.m1-loc-faq__single .m1-headline,.m1-loc-faq__single h2{text-align:center}
.m1-loc-faq__single h2::after{margin-left:auto!important;margin-right:auto!important}
.m1-loc-faq .m1-faq .elementor-accordion-item{box-shadow:var(--m1-shadow-sm)}

/* publications ("featured in"): a floating panel that overlaps the hero, with a moving logo row */
.m1-sec--logos{padding:0 var(--m1-gutter) 56px;background:transparent;position:relative;z-index:3}
.m1-sec--logos>.m1-wrap{position:relative;max-width:calc(var(--m1-wrap) - 2*var(--m1-gutter));background:#fff;border-radius:24px;padding:34px 40px 38px;box-shadow:0 30px 70px rgba(27,32,52,.18),0 0 0 1px var(--m1-line);overflow:hidden}
.m1-sec--logos>.m1-wrap::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#0A74BC,#7CC4F5,#075C97,#7CC4F5,#0A74BC);background-size:200% 100%;animation:m1-slide 6s linear infinite}
@keyframes m1-slide{to{background-position:200% 0}}
.m1-sec--logos .m1-row{margin-bottom:24px}
.m1-sec--logos .m1-headline{font-size:clamp(1.45rem,2.3vw,2rem);font-weight:800;letter-spacing:-.02em;color:var(--m1-ink)}
.m1-sec--logos .m1-headline a{color:#fff;background:linear-gradient(135deg,#0A74BC,#075C97);padding:.06em .42em .12em;border-radius:10px;text-decoration:none;box-shadow:0 8px 18px rgba(7,92,151,.3)}
.m1-sec--logos .m1-headline u{border:0;text-decoration:none}
.m1-widget:has(.m1-hero)+.m1-widget .m1-sec--logos,.m1-widget:has(.m1-reviews)+.m1-widget .m1-sec--logos{margin-top:0}
.m1-widget:has(.m1-hero):not(:has(.m1-reviews))+.m1-widget .m1-sec--logos{margin-top:-78px}
.m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:150px}
.m1-widget:has(.m1-reviews)+.m1-widget .m1-sec--logos{padding-top:26px}
.m1-logos.is-marquee{display:block;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.m1-logos__track{display:flex;gap:18px;width:max-content;animation:m1-marquee 38s linear infinite;padding:6px 0 10px}
.m1-logos.is-marquee:hover .m1-logos__track{animation-play-state:paused}
@keyframes m1-marquee{to{transform:translate3d(calc(-50% - 9px),0,0)}}
.m1-logos.is-marquee .m1-logos__item{flex:0 0 210px;width:210px;height:110px;border-radius:16px;padding:16px 20px}
.m1-logos.is-marquee .m1-logos__item img{max-height:72px}
@media(max-width:767px){.m1-sec--logos{padding-left:14px;padding-right:14px}.m1-sec--logos>.m1-wrap{padding:26px 18px 28px;border-radius:18px}.m1-logos.is-marquee .m1-logos__item{flex-basis:160px;width:160px;height:90px}.m1-widget:has(.m1-hero):not(:has(.m1-reviews))+.m1-widget .m1-sec--logos{margin-top:-40px}.m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:84px}}
/* 18b */
.e-con.m1-loc-intro__row{align-items:flex-start}
@media(min-width:1025px){.m1-loc-intro__art{position:sticky;top:130px;margin-top:26px}}

/* ---------- 19. featured-in press bar (replaces the floating card) ---------- */
.m1-sec--logos{position:relative;z-index:1;margin:0!important;padding:46px 0 50px!important;background:radial-gradient(700px 300px at 0% 0%,rgba(10,116,188,.45),rgba(10,116,188,0) 65%),linear-gradient(180deg,#171C2E 0%,#232941 100%);border:0;border-top:1px solid rgba(255,255,255,.1);overflow:hidden}
.m1-sec--logos>.m1-wrap{position:static;max-width:var(--m1-wrap);background:transparent;border-radius:0;box-shadow:none;overflow:visible;padding:0 var(--m1-gutter);display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:center;gap:44px}
.m1-sec--logos>.m1-wrap::before{display:none}
.m1-sec--logos .m1-row{margin:0;display:block}
.m1-sec--logos .m1-col{display:block}
.m1-sec--logos .m1-headline{text-align:left;color:#fff;font-size:clamp(1.45rem,2vw,1.85rem);font-weight:800;line-height:1.2;letter-spacing:-.02em;margin:0;padding-left:20px;border-left:4px solid #3FA9F5;text-transform:none}
.m1-sec--logos .m1-headline a{background:none;box-shadow:none;padding:0;border-radius:0;color:#7CC4F5;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.m1-sec--logos .m1-headline a:hover{color:#fff}
.m1-widget:has(.m1-hero):not(:has(.m1-reviews))+.m1-widget .m1-sec--logos{margin-top:0!important}
.m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:88px}
.m1-widget:has(.m1-reviews)+.m1-widget .m1-sec--logos{padding-top:46px!important}
.m1-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.m1-logos__item,.m1-logos.is-marquee .m1-logos__item{height:104px;background:#fff;border:0;border-radius:16px;padding:16px 22px;box-shadow:0 14px 34px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.12);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}
.m1-logos__item img,.m1-logos.is-marquee .m1-logos__item img{max-height:68px;max-width:100%;filter:none;opacity:1}
a.m1-logos__item:hover,.m1-logos__item:hover{transform:translate3d(0,-6px,0) scale(1.03);box-shadow:0 22px 44px rgba(0,0,0,.45),0 0 0 2px #3FA9F5;border:0}
.m1-logos.is-marquee{display:block;overflow:hidden;padding:10px 0 14px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.m1-logos.is-marquee .m1-logos__item{flex:0 0 220px;width:220px}
.m1-logos__track{gap:20px;padding:6px 0;animation-duration:34s}
@keyframes m1-marquee{to{transform:translate3d(calc(-50% - 10px),0,0)}}
@media(max-width:1000px){.m1-sec--logos>.m1-wrap{grid-template-columns:1fr;gap:26px}.m1-sec--logos .m1-headline{text-align:center;border-left:0;padding-left:0}.m1-logos{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.m1-sec--logos{padding:36px 0 40px!important}.m1-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.m1-logos__item,.m1-logos.is-marquee .m1-logos__item{height:88px;padding:12px 16px}.m1-logos.is-marquee .m1-logos__item{flex-basis:170px;width:170px}.m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:48px}}
/* ---------- 20. featured-in slider: bigger logos, arrows, auto-advance ---------- */
.m1-sec--logos{padding:52px 0 56px!important}
.m1-sec--logos>.m1-wrap{grid-template-columns:minmax(200px,270px) minmax(0,1fr);gap:40px}
.m1-logos.is-slider{display:block;position:relative;padding:0 58px}
.m1-logos__viewport{overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;padding:14px 4px 20px}
.m1-logos__viewport::-webkit-scrollbar{display:none}
.m1-logos.is-slider .m1-logos__track{display:flex;gap:22px;width:max-content;animation:none;padding:0}
.m1-logos.is-slider .m1-logos__item{flex:0 0 280px;width:280px;height:150px;border-radius:20px;padding:22px 28px;background:#fff;box-shadow:0 16px 36px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.14)}
.m1-logos.is-slider .m1-logos__item img{max-height:104px;max-width:100%;width:auto;height:auto;object-fit:contain}
.m1-logos.is-slider .m1-logos__item:hover{transform:translate3d(0,-6px,0);box-shadow:0 24px 48px rgba(0,0,0,.5),0 0 0 3px #3FA9F5}
.m1-logos__nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:#fff;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color .15s ease,border-color .15s ease}
.m1-logos__nav:hover{background:#fff;border-color:#fff}
.m1-logos__nav::before{content:"";width:18px;height:18px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat}
.m1-logos__nav:hover::before{background:var(--m1-navy)}
.m1-logos__nav--prev{left:0}.m1-logos__nav--prev::before{transform:rotate(180deg)}
.m1-logos__nav--next{right:0}
@media(max-width:1000px){.m1-sec--logos>.m1-wrap{grid-template-columns:1fr}}
@media(max-width:640px){.m1-logos.is-slider{padding:0 46px}.m1-logos.is-slider .m1-logos__item{flex-basis:220px;width:220px;height:124px;padding:16px 20px}.m1-logos.is-slider .m1-logos__item img{max-height:84px}.m1-logos__nav{width:38px;height:38px}}
/* 20b */
.m1-logos__viewport{padding:16px 10px 34px;margin:0 -6px -14px}
.m1-logos.is-slider .m1-logos__item{box-shadow:0 10px 22px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.14)}
.m1-logos.is-slider .m1-logos__item:hover{box-shadow:0 14px 26px rgba(0,0,0,.34),0 0 0 3px #3FA9F5}

/* ---------- 21. menu spacing: a clear gap between items so highlight boxes never touch ---------- */
@media(min-width:1200px){
  html:not(.m1-burger) .m1-nav__list{gap:8px}
  html:not(.m1-burger) .m1-nav__list>li>a{padding:0 10px;height:38px;border-radius:8px}
}

/* 21b */
@media(min-width:1200px) and (max-width:1439px){
  html:not(.m1-burger) .m1-nav__list{gap:6px}
  html:not(.m1-burger) .m1-nav__list>li>a{padding:0 6px;font-size:.73rem;letter-spacing:0;gap:4px}
  .m1-logo img{height:32px}
  .m1-bar{gap:12px}
}

/* ---------- 22. location content width: same full content width as the other pages ---------- */
.m1-loc-body .m1-main-row>.m1-col,.m1-loc-body body.m1-sidebar-empty .m1-main-row>.m1-col,.m1-loc-prose,.m1-loc-head{max-width:none!important;margin-left:0!important;margin-right:0!important;width:100%}
.m1-loc-head .m1-text{text-align:left}

/* ---------- 23. two-row desktop header: logo + quote button on top, a full-width menu row below (bigger, bolder menu text) ---------- */
@media(min-width:1200px){
  html:not(.m1-burger) .m1-bar{flex-wrap:wrap!important;row-gap:0;column-gap:20px;min-height:0}
  html:not(.m1-burger) .m1-bar>.m1-bar__logo{order:1;height:70px;display:flex;align-items:center}
  html:not(.m1-burger) .m1-bar>.m1-bar__cta{order:2;margin-left:auto;display:block!important}
  html:not(.m1-burger) .m1-bar>.m1-bar__nav{order:3;flex:0 0 100%;width:100%!important;max-width:100%;border-top:1px solid var(--m1-line)}
  html:not(.m1-burger) .m1-nav__list{justify-content:space-between;gap:6px;height:54px}
  html:not(.m1-burger) .m1-nav__list>li>a{font-size:.95rem;font-weight:700;letter-spacing:.01em;padding:0 13px;height:40px;gap:6px}
  html:not(.m1-burger) .m1-nav__list ul a{font-size:.96rem;font-weight:600}
  html:not(.m1-burger) .m1-nav__list>li:first-child>ul{left:0}
  html:not(.m1-burger) .m1-logo img{height:44px}
  html:not(.m1-burger) .m1-btn--cta{padding:13px 22px;font-size:.95rem}
  html:not(.m1-burger) .elementor-location-header{top:-107px}
  html:not(.m1-burger){scroll-padding-top:80px}
}
@media(min-width:1200px) and (max-width:1499px){
  html:not(.m1-burger) .m1-nav__list>li>a{font-size:.88rem;padding:0 10px}
}
@media(min-width:1200px) and (max-width:1339px){
  html:not(.m1-burger) .m1-nav__list{gap:4px}
  html:not(.m1-burger) .m1-nav__list>li>a{font-size:.82rem;padding:0 8px;gap:4px}
}
/* 23b */
@media(min-width:1500px){html:not(.m1-burger) .m1-nav__list>li>a{font-size:1rem}}
@media(min-width:1340px) and (max-width:1499px){html:not(.m1-burger) .m1-nav__list>li>a{font-size:.95rem;padding:0 10px}}
@media(min-width:1200px) and (max-width:1339px){html:not(.m1-burger) .m1-nav__list>li>a{font-size:.88rem;padding:0 8px}}

/* ---------- 24. no pink: replace the base theme's default button/link colours with the brand; compact menu polish ---------- */
button,[type=button],[type=submit],[type=reset]{border-color:var(--m1-blue);color:var(--m1-blue)}
button:hover,button:focus,[type=button]:hover,[type=button]:focus,[type=submit]:hover,[type=submit]:focus,[type=reset]:hover,[type=reset]:focus{background-color:var(--m1-blue-dark);border-color:var(--m1-blue-dark);color:#fff;outline-color:var(--m1-blue)}
a:active,a:focus{color:var(--m1-blue-dark)}
.m1-nav__toggle,.m1-nav__toggle:hover,.m1-nav__toggle:focus,.m1-nav__toggle:active{background:var(--m1-navy)!important;border:0!important;color:#fff!important}
.m1-nav__sub,.m1-nav__sub:hover,.m1-nav__sub:focus,.m1-nav__sub:active{background:transparent!important;border:0!important;color:var(--m1-ink)!important;box-shadow:none!important}
.m1-logos__nav,.m1-logos__nav:focus{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.28)!important;color:#fff!important}
.m1-logos__nav:hover{background:#fff!important;border-color:#fff!important}
.m1-nav__list a:focus,.m1-nav__list a:active{color:var(--m1-blue)}
/* compact menu (phones, tablets, and any screen where the full menu does not fit) */
@media(max-width:1199px){
  .m1-bar>.m1-bar__cta{display:none!important}
  .m1-bar>.m1-bar__nav{margin-left:auto!important}
  .m1-nav__panel{padding:6px 0 18px}
  .m1-nav__list>li{border-bottom:1px solid var(--m1-line)}
  .m1-nav__list>li>a{padding:16px 64px 16px 20px;font-size:1.02rem;font-weight:700;color:var(--m1-ink);letter-spacing:.02em}
  .m1-nav__list>li>a:hover,.m1-nav__list>li:hover>a,.m1-nav__list>li:focus-within>a,.m1-nav__list>li.current-menu-item>a,.m1-nav__list>li.current-menu-ancestor>a{background:transparent!important;color:var(--m1-blue)}
  .m1-nav__list>li.is-open>a{color:var(--m1-blue)}
  .m1-nav__sub{top:6px;right:10px;width:44px;height:44px}
  .m1-nav__sub::before{inset:14px;background:var(--m1-ink)}
  .m1-nav__list li.is-open>.m1-nav__sub::before{background:var(--m1-blue)}
  .m1-nav__list ul,.m1-nav__list ul ul{padding:0 0 10px 0;background:var(--m1-soft);max-width:none}
  .m1-nav__list ul li{border-bottom:0}
  .m1-nav__list ul a{padding:12px 20px 12px 34px;font-size:.98rem;font-weight:500;color:var(--m1-body);border-radius:0}
  .m1-nav__list ul a:hover,.m1-nav__list ul li:focus-within>a{background:var(--m1-tint);color:var(--m1-blue)}
  .m1-nav__list ul ul a{padding-left:50px}
  .m1-nav__list ul .m1-nav__sub{top:2px;right:10px}
}
html.m1-burger .m1-bar>.m1-bar__cta{display:none!important}
html.m1-burger .m1-bar>.m1-bar__nav{margin-left:auto!important}
html.m1-burger .m1-nav__panel{padding:6px 0 18px}
html.m1-burger .m1-nav__list>li>a{padding:16px 64px 16px 32px;font-size:1.02rem;font-weight:700;background:transparent!important}
html.m1-burger .m1-nav__list ul,html.m1-burger .m1-nav__list ul ul{padding:0 0 10px 0;background:var(--m1-soft);max-width:none}
html.m1-burger .m1-nav__list ul li{border-bottom:0}
html.m1-burger .m1-nav__list ul a{padding:12px 20px 12px 46px;font-weight:500;border-radius:0}
/* ---------- 25. cart + checkout: brand blue instead of WooCommerce's default purple/pink ---------- */
.woocommerce:not(.xt_woofc) a.button.alt,.woocommerce:not(.xt_woofc) button.button.alt,.woocommerce:not(.xt_woofc) input.button.alt,.woocommerce:not(.xt_woofc) #respond input#submit.alt,.woocommerce-page a.button.alt,.woocommerce-page button.button.alt,#place_order,a.checkout-button,.wc-proceed-to-checkout a.checkout-button,.woocommerce:not(.xt_woofc) a.button.alt.disabled,.woocommerce:not(.xt_woofc) button.button.alt.disabled,.woocommerce:not(.xt_woofc) button.button.alt:disabled,.woocommerce:not(.xt_woofc) button.button.alt:disabled[disabled]{background-color:var(--m1-blue)!important;background-image:linear-gradient(135deg,#0A74BC 0%,var(--m1-blue) 45%,#054A7B 100%)!important;color:#fff!important;border:0!important}
.woocommerce:not(.xt_woofc) a.button.alt:hover,.woocommerce:not(.xt_woofc) button.button.alt:hover,.woocommerce:not(.xt_woofc) input.button.alt:hover,.woocommerce:not(.xt_woofc) #respond input#submit.alt:hover,#place_order:hover,a.checkout-button:hover{background-color:var(--m1-blue-dark)!important;color:#fff!important}
.woocommerce:not(.xt_woofc) a.button,.woocommerce:not(.xt_woofc) button.button,.woocommerce:not(.xt_woofc) input.button,.woocommerce:not(.xt_woofc) #respond input#submit{background-color:var(--m1-blue);color:#fff}
.woocommerce:not(.xt_woofc) a.button:hover,.woocommerce:not(.xt_woofc) button.button:hover,.woocommerce:not(.xt_woofc) input.button:hover{background-color:var(--m1-blue-dark);color:#fff}
.woocommerce-info,.woocommerce-message,.woocommerce-noreviews,p.no-comments{border-top-color:var(--m1-blue)!important}
.woocommerce-info::before,.woocommerce-message::before{color:var(--m1-blue)!important}
.woocommerce:not(.xt_woofc) span.onsale{background-color:var(--m1-blue)}
.woocommerce:not(.xt_woofc) .star-rating span::before,.woocommerce:not(.xt_woofc) p.stars a{color:var(--m1-blue)}
.woocommerce:not(.xt_woofc) div.product .woocommerce-tabs ul.tabs li.active a,.woocommerce-MyAccount-navigation li.is-active a{color:var(--m1-blue)}
.woocommerce:not(.xt_woofc) a,.woocommerce-page .woocommerce:not(.xt_woofc) a{color:var(--m1-link)}
.woocommerce:not(.xt_woofc) a:hover,.woocommerce-page .woocommerce:not(.xt_woofc) a:hover{color:var(--m1-blue-dark)}
.woocommerce:not(.xt_woofc) a.remove{color:#B42318!important}.woocommerce:not(.xt_woofc) a.remove:hover{background:#B42318;color:#fff!important}
.woocommerce:not(.xt_woofc) form .form-row input.input-text:focus,.woocommerce:not(.xt_woofc) form .form-row textarea:focus,.woocommerce:not(.xt_woofc) form .form-row select:focus,.select2-container--default.select2-container--focus .select2-selection--single,.select2-container--default.select2-container--open .select2-selection--single{border-color:var(--m1-blue)!important;box-shadow:0 0 0 3px rgba(7,92,151,.18)!important;outline:0}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background-color:var(--m1-blue)!important;color:#fff}
.woocommerce:not(.xt_woofc) input[type=checkbox],.woocommerce:not(.xt_woofc) input[type=radio]{accent-color:var(--m1-blue)}
.fc-wrapper .fc-step__substep-edit,.fc-wrapper a,.fc-checkout-header a{color:var(--m1-link)}

a:hover{color:var(--m1-blue-dark)}

/* ---------- 26. menu row on white: bold dark items, tinted hover, solid blue pill for the current page ---------- */
@media(min-width:1200px){
  html:not(.m1-burger) .m1-bar>.m1-bar__nav{border-top:1px solid var(--m1-line)}
  html:not(.m1-burger) .m1-nav__list{height:56px}
  html:not(.m1-burger) .m1-nav__list>li>a{color:var(--m1-ink);height:40px;border-radius:10px;transition:background-color .12s linear,color .12s linear}
  html:not(.m1-burger) .m1-nav__list>li>a:hover,html:not(.m1-burger) .m1-nav__list>li:hover>a,html:not(.m1-burger) .m1-nav__list>li:focus-within>a{background:var(--m1-tint);color:var(--m1-blue)}
  html:not(.m1-burger) .m1-nav__list>li.current-menu-item>a,html:not(.m1-burger) .m1-nav__list>li.current-menu-ancestor>a,html:not(.m1-burger) .m1-nav__list>li.current-menu-parent>a{background:var(--m1-blue);color:#fff;box-shadow:0 6px 14px rgba(7,92,151,.3)}
  html:not(.m1-burger) .m1-nav__list>li.current-menu-item>a:hover,html:not(.m1-burger) .m1-nav__list>li.current-menu-ancestor:hover>a{background:var(--m1-blue-dark);color:#fff}
  html:not(.m1-burger) .m1-nav__list>li>ul{margin-top:8px}
  html:not(.m1-burger) .m1-nav__list>li>ul::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
}
/* ---------- 28. mobile content width: content uses 95% of the screen (2.5% margin each side) ---------- */
@media(max-width:767px){
  :root{--m1-gutter:2.5vw}
  .m1-wrap{padding-left:2.5vw;padding-right:2.5vw}
  .e-con.m1-sec,.m1-loc .e-con.m1-sec,.e-con.m1-blog{padding-left:2.5vw!important;padding-right:2.5vw!important}
  .m1-page .e-con.m1-sec .e-con,.m1-page .e-con.m1-sec>.e-con-inner,.m1-content--full .e-con .e-con{padding-left:0!important;padding-right:0!important}
  .m1-content--full .e-con.m1-sec{padding-left:2.5vw!important;padding-right:2.5vw!important}
  .m1-page .e-con.m1-card,.m1-page .e-con.m1-col.m1-card{padding-left:18px!important;padding-right:18px!important}
  .m1-hero__inner{padding-left:2.5vw;padding-right:2.5vw}
  .m1-strip,.m1-bar{padding-left:2.5vw!important;padding-right:2.5vw!important}
  .m1-footer__inner{padding-left:2.5vw;padding-right:2.5vw}
  .m1-footer__mobile{padding-left:2.5vw!important;padding-right:2.5vw!important}
  .m1-sec--logos{padding-left:0!important;padding-right:0!important}
  .m1-sec--logos>.m1-wrap{padding-left:2.5vw;padding-right:2.5vw}
  .m1-nav.is-open .m1-nav__panel{padding-left:2.5vw;padding-right:2.5vw}
}
/* 28b */
html{overflow-x:clip}
@media(max-width:767px){
  .m1-sec--logos>.m1-wrap{grid-template-columns:minmax(0,1fr)}
  .m1-sec--logos .m1-row,.m1-sec--logos .m1-col{min-width:0;max-width:100%}
  .m1-sec--logos .m1-headline{font-size:1.3rem;overflow-wrap:anywhere}
  .m1-loc-intro__art{max-width:calc(100% - 44px);margin-left:auto;margin-right:auto}
  .m1-loc-intro__art .m1-figure::before{inset:-10px -10px 10px 10px}
}

/* ---------- 29. header stays solid white while scrolling (desktop + mobile) ---------- */
.m1-header,.m1-header.is-scrolled{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.m1-bar,.m1-bar>.m1-bar__nav{background:#fff}
.m1-header.is-scrolled{box-shadow:0 1px 0 var(--m1-line),0 10px 26px rgba(27,32,52,.10)}

/* ---------- 30. compact menu (phones/tablets): simple accordion, arrow centred on each row ---------- */
.m1-nav.is-open .m1-nav__panel{padding:4px 2.5vw 18px;border-radius:0}
.m1-nav.is-open .m1-nav__list{display:block;height:auto!important}
.m1-nav.is-open .m1-nav__list li{position:relative;border:0!important;margin:0}
.m1-nav.is-open .m1-nav__list>li{border-bottom:1px solid var(--m1-line)!important}
.m1-nav.is-open .m1-nav__list>li:last-child{border-bottom:0!important}
.m1-nav.is-open .m1-nav__list>li>a{display:flex!important;align-items:center;height:auto!important;min-height:56px;box-sizing:border-box;padding:8px 56px 8px 4px!important;font-size:1.03rem!important;font-weight:700;letter-spacing:.02em;line-height:1.3;color:var(--m1-ink);background:transparent!important;border-radius:0;box-shadow:none!important;white-space:normal}
.m1-nav.is-open .m1-nav__list>li>a::after{display:none!important}
.m1-nav.is-open .m1-nav__list>li.is-open>a,.m1-nav.is-open .m1-nav__list>li.current-menu-item>a,.m1-nav.is-open .m1-nav__list>li.current-menu-ancestor>a{color:var(--m1-blue);background:transparent!important}
/* the arrow: a plain chevron filling the right end of the row */
.m1-nav.is-open .m1-nav__sub{display:block;position:absolute;top:0!important;right:0!important;width:56px!important;height:56px!important;margin:0;padding:0;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer}
.m1-nav.is-open .m1-nav__sub::before{content:"";position:absolute;inset:auto!important;left:50%!important;top:50%!important;width:16px;height:16px;margin:-8px 0 0 -8px;background:var(--m1-ink)!important;transform:none;transition:transform .2s ease;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8l8 8 8-8'/%3E%3C/svg%3E") center/contain no-repeat}
.m1-nav.is-open .m1-nav__list li.is-open>.m1-nav__sub::before{background:var(--m1-blue)!important;transform:rotate(180deg)!important}
/* sub-menu: indented list with a thin guide line, no boxes */
.m1-nav.is-open .m1-nav__list ul,.m1-nav.is-open .m1-nav__list ul ul{position:static;display:none;visibility:visible;opacity:1;min-width:0;max-width:none;margin:0 0 12px 6px!important;padding:0 0 0 12px!important;background:transparent!important;border:0!important;border-left:2px solid var(--m1-line)!important;border-radius:0!important;box-shadow:none!important;animation:none}
.m1-nav.is-open .m1-nav__list li.is-open>ul{display:block}
.m1-nav.is-open .m1-nav__list ul a{display:flex!important;align-items:center;min-height:44px;box-sizing:border-box;padding:8px 50px 8px 10px!important;font-size:.99rem!important;font-weight:500;line-height:1.35;color:var(--m1-body);background:transparent;border-radius:8px;white-space:normal}
.m1-nav.is-open .m1-nav__list ul a::before{display:none!important}
.m1-nav.is-open .m1-nav__list ul a:hover,.m1-nav.is-open .m1-nav__list ul a:active,.m1-nav.is-open .m1-nav__list ul li.current-menu-item>a{color:var(--m1-blue);background:var(--m1-tint)}
.m1-nav.is-open .m1-nav__list ul li.is-open>a{color:var(--m1-blue);font-weight:600}
.m1-nav.is-open .m1-nav__list ul .m1-nav__sub{width:48px!important;height:44px!important}
.m1-nav.is-open .m1-nav__list ul ul{margin:0 0 6px 10px!important}
.m1-nav.is-open .m1-nav__list ul ul a{font-size:.95rem!important;min-height:40px}
/* ---------- 31. featured-in: light band so it never blends into the dark hero or dark service band ---------- */
.m1-sec--logos{background:linear-gradient(180deg,#E6F1FA 0%,#F6FAFD 100%)!important;border-top:5px solid transparent!important;border-image:linear-gradient(90deg,#0A74BC,#7CC4F5,#075C97) 1!important;border-bottom:1px solid var(--m1-line)!important;padding:54px 0 58px!important;box-shadow:inset 0 14px 30px -18px rgba(7,92,151,.35)}
.m1-sec--logos>.m1-wrap{display:block!important;max-width:var(--m1-wrap);padding:0 var(--m1-gutter)}
.m1-sec--logos .m1-row{margin:0 0 30px!important}
.m1-sec--logos .m1-row:last-child{margin-bottom:0!important}
.m1-sec--logos .m1-headline{text-align:center!important;color:var(--m1-ink)!important;font-size:clamp(1.6rem,2.6vw,2.3rem)!important;font-weight:800;letter-spacing:-.02em;line-height:1.2;border:0!important;padding:0!important;margin:0}
.m1-sec--logos .m1-headline a{display:inline-block;color:#fff!important;background:linear-gradient(135deg,#0A74BC,#075C97)!important;padding:.04em .5em .1em!important;border-radius:12px!important;text-decoration:none!important;box-shadow:0 10px 22px rgba(7,92,151,.32)!important;transform:rotate(-2deg)}
.m1-sec--logos .m1-headline a:hover{color:#fff!important;transform:rotate(0deg)}
.m1-logos.is-slider{padding:0 64px}
.m1-logos.is-slider .m1-logos__item,.m1-logos__item{background:#fff;border:1px solid #D6E3EF!important;box-shadow:0 14px 30px rgba(7,92,151,.14)!important}
.m1-logos.is-slider .m1-logos__item{flex:0 0 270px;width:270px;height:150px;border-radius:20px;border-bottom:4px solid var(--m1-blue)!important}
.m1-logos.is-slider .m1-logos__item img{max-height:100px}
.m1-logos.is-slider .m1-logos__item:hover,a.m1-logos__item:hover,.m1-logos__item:hover{transform:translate3d(0,-6px,0);box-shadow:0 22px 44px rgba(7,92,151,.24)!important;border-color:var(--m1-blue)!important}
.m1-logos__nav,.m1-logos__nav:focus{width:50px;height:50px;background:var(--m1-navy)!important;border:0!important;box-shadow:0 10px 22px rgba(27,32,52,.25);-webkit-backdrop-filter:none;backdrop-filter:none}
.m1-logos__nav::before{background:#fff}
.m1-logos__nav:hover{background:var(--m1-blue)!important}
.m1-logos__nav:hover::before{background:#fff}
.m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:88px}
@media(max-width:767px){.m1-sec--logos{padding:38px 0 42px!important}.m1-sec--logos>.m1-wrap{padding:0 2.5vw}.m1-logos.is-slider{padding:0 48px}.m1-logos.is-slider .m1-logos__item{flex-basis:210px;width:210px;height:122px}.m1-logos.is-slider .m1-logos__item img{max-height:80px}.m1-logos__nav,.m1-logos__nav:focus{width:40px;height:40px}.m1-sec--logos .m1-headline{font-size:1.45rem!important}}
/* ---------- 32. featured-in logos: no hover effect ---------- */
.m1-logos__item,.m1-logos.is-slider .m1-logos__item{transition:none!important}
.m1-logos.is-slider .m1-logos__item:hover,a.m1-logos__item:hover,.m1-logos__item:hover{transform:none!important;box-shadow:0 14px 30px rgba(7,92,151,.14)!important;border-color:#D6E3EF!important;border-bottom-color:var(--m1-blue)!important}
.m1-logos__item:hover img{filter:none!important;opacity:1!important;transform:none!important}

/* ---------- 33. featured-in logos: same tile style as the original site (white, 1px #e5e7eb border, 8px radius, light shadow), no underline ---------- */
.m1-logos__item,.m1-logos.is-slider .m1-logos__item,.m1-logos.is-slider .m1-logos__item:hover,a.m1-logos__item:hover,.m1-logos__item:hover{background:#fff!important;border:1px solid #e5e7eb!important;border-bottom:1px solid #e5e7eb!important;border-radius:8px!important;box-shadow:0 2px 8px rgba(0,0,0,.08)!important;transform:none!important}

/* ---------- 34. industries chips: the chip is the list item, so entries with two links stay on one chip ---------- */
.m1-loc-industries__row li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:13px 16px 13px 34px;position:relative;background:#fff;border:1px solid var(--m1-line);border-radius:12px;color:var(--m1-ink);font-weight:600;font-size:.97rem;line-height:1.35;transition:border-color .15s ease,box-shadow .2s ease}
.m1-loc-industries__row li::before{content:"";position:absolute;left:16px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--m1-blue)}
.m1-loc-industries__row li:hover{border-color:var(--m1-blue);box-shadow:var(--m1-shadow-sm)}
.m1-loc-industries__row li a{display:inline!important;padding:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important;color:var(--m1-ink);font-weight:600;text-decoration:none!important}
.m1-loc-industries__row li a::before{display:none!important}
.m1-loc-industries__row li a:hover{color:var(--m1-blue);transform:none!important;box-shadow:none!important}

/* ---------- 35. intro text in widget sections (e.g. above the backlink packages): same width as the main content ---------- */
.m1-sec .m1-text.m1-ta-center,.m1-sec .m1-text{max-width:none;margin-left:0;margin-right:0}

/* ---------- 36. one content width everywhere: main content lines up with the hero, widget sections and package grids ---------- */
.m1-page .e-con.m1-sec .e-con,.m1-page .e-con.m1-sec>.e-con-inner,.m1-content--full .e-con .e-con,.m1-content--full .e-con>.e-con-inner{padding-left:0;padding-right:0}
.m1-content--full .e-con.m1-sec{padding-left:var(--m1-gutter);padding-right:var(--m1-gutter)}
.m1-page .e-con.m1-card,.m1-page .e-con.m1-col.m1-card,.m1-content--full .e-con.m1-card{padding-left:28px;padding-right:28px}

/* ---------- 37. cart page: clean table (no product image), proper coupon field, totals card ---------- */
.woocommerce-cart .woocommerce{max-width:1180px;margin:0 auto}
.woocommerce-cart table.shop_table.cart{width:100%;border:1px solid var(--m1-line)!important;border-radius:var(--m1-radius)!important;border-collapse:separate!important;border-spacing:0;overflow:hidden;background:#fff;box-shadow:var(--m1-shadow-sm);margin:0 0 34px}
.woocommerce-cart table.shop_table.cart th.product-thumbnail,.woocommerce-cart table.shop_table.cart td.product-thumbnail{display:none!important}
.woocommerce-cart table.shop_table.cart thead th{background:var(--m1-soft);color:var(--m1-muted);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:16px 22px;border:0;border-bottom:1px solid var(--m1-line);text-align:left;float:none}
.woocommerce-cart table.shop_table.cart td{padding:22px;border:0;border-top:1px solid var(--m1-line);vertical-align:middle;background:#fff;font-size:1.02rem;color:var(--m1-body)}
.woocommerce-cart table.shop_table.cart tbody tr:first-child td{border-top:0}
.woocommerce-cart table.shop_table.cart th.product-remove,.woocommerce-cart table.shop_table.cart td.product-remove{width:64px;padding-right:0;text-align:center}
.woocommerce-cart table.shop_table.cart td.product-name{font-weight:700;color:var(--m1-ink);font-size:1.08rem}
.woocommerce-cart table.shop_table.cart td.product-name a{color:var(--m1-ink);text-decoration:none}
.woocommerce-cart table.shop_table.cart th.product-price,.woocommerce-cart table.shop_table.cart td.product-price,.woocommerce-cart table.shop_table.cart th.product-quantity,.woocommerce-cart table.shop_table.cart td.product-quantity{width:150px;text-align:center}
.woocommerce-cart table.shop_table.cart th.product-subtotal,.woocommerce-cart table.shop_table.cart td.product-subtotal{width:160px;text-align:right}
.woocommerce-cart table.shop_table.cart td.product-subtotal{font-weight:800;color:var(--m1-ink)}
.woocommerce-cart table.shop_table.cart .quantity{float:none;display:inline-block;margin:0}
.woocommerce-cart table.shop_table.cart .quantity .qty{width:84px;height:46px;padding:0 8px;border:1px solid #CBD2DF;border-radius:var(--m1-radius-sm);text-align:center;font:inherit;font-weight:600;color:var(--m1-ink);background:#fff}
.woocommerce-cart .woocommerce a.remove{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--m1-soft);color:var(--m1-muted)!important;font-size:1.3rem;font-weight:400;line-height:1;text-decoration:none}
.woocommerce-cart .woocommerce a.remove:hover{background:#B42318;color:#fff!important}
/* coupon + update row */
.woocommerce-cart table.shop_table.cart td.actions{padding:20px 22px;background:var(--m1-soft);border-top:1px solid var(--m1-line)}
.woocommerce-cart table.shop_table.cart td.actions::after{content:"";display:block;clear:both}
.woocommerce-cart table.cart td.actions .coupon{float:left;display:flex;align-items:stretch;gap:10px;margin:0;padding:0}
.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon #coupon_code{float:none!important;width:280px!important;max-width:100%;height:50px;margin:0!important;padding:0 16px!important;border:1px solid #CBD2DF!important;border-radius:var(--m1-radius-sm);font:inherit;font-size:1rem!important;color:var(--m1-ink);background:#fff;box-sizing:border-box}
.woocommerce-cart table.cart td.actions .coupon .input-text:focus{outline:0;border-color:var(--m1-blue)!important;box-shadow:0 0 0 3px rgba(7,92,151,.18)}
.woocommerce-cart table.cart td.actions .coupon .button,.woocommerce-cart table.cart td.actions>.button{height:50px;padding:0 24px;border-radius:var(--m1-radius-sm);font-size:.95rem;white-space:nowrap;float:none}
.woocommerce-cart table.cart td.actions>.button{float:right;background:#fff!important;background-image:none!important;color:var(--m1-ink)!important;border:1px solid #CBD2DF!important;box-shadow:none}
.woocommerce-cart table.cart td.actions>.button:hover{border-color:var(--m1-blue)!important;color:var(--m1-blue)!important;transform:none}
.woocommerce-cart table.cart td.actions>.button:disabled,.woocommerce-cart table.cart td.actions>.button[disabled]{opacity:.55;padding:0 24px}
/* totals */
.woocommerce-cart .cart-collaterals{display:flex;justify-content:flex-end}
.woocommerce-cart .cart-collaterals .cart_totals{float:none;width:480px;max-width:100%;background:#fff;border:1px solid var(--m1-line);border-radius:var(--m1-radius);padding:28px;box-shadow:var(--m1-shadow);box-sizing:border-box}
.woocommerce-cart .cart_totals h2{font-size:1.4rem;margin:0 0 16px}
.woocommerce-cart .cart_totals h2::after{display:none}
.woocommerce-cart .cart_totals table.shop_table{border:0!important;margin:0 0 20px;width:100%;border-radius:0}
.woocommerce-cart .cart_totals table.shop_table th,.woocommerce-cart .cart_totals table.shop_table td{padding:14px 0;border:0;border-top:1px solid var(--m1-line);background:transparent;font-size:1.02rem}
.woocommerce-cart .cart_totals table.shop_table tr:first-child th,.woocommerce-cart .cart_totals table.shop_table tr:first-child td{border-top:0}
.woocommerce-cart .cart_totals table.shop_table th{font-weight:600;color:var(--m1-body);text-align:left;width:45%}
.woocommerce-cart .cart_totals table.shop_table td{text-align:right;color:var(--m1-ink);font-weight:700}
.woocommerce-cart .cart_totals .order-total td,.woocommerce-cart .cart_totals .order-total th{font-size:1.25rem;font-weight:800;color:var(--m1-ink)}
.woocommerce-cart .wc-proceed-to-checkout{padding:0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:block;width:100%;box-sizing:border-box;margin:0;padding:18px 20px;font-size:1.08rem;border-radius:var(--m1-radius-sm);text-align:center}
@media(max-width:768px){
  .woocommerce-cart table.shop_table.cart td{padding:14px 16px;text-align:right!important;width:auto!important}
  .woocommerce-cart table.shop_table.cart td.product-remove{text-align:right!important;padding-right:16px}
  .woocommerce-cart table.cart td.actions .coupon{float:none;flex-direction:column;width:100%}
  .woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .coupon #coupon_code{width:100%!important}
  .woocommerce-cart table.cart td.actions .coupon .button,.woocommerce-cart table.cart td.actions>.button{width:100%;float:none;margin-top:10px}
  .woocommerce-cart .cart-collaterals .cart_totals{width:100%;padding:22px 18px}
}
/* ---------- 38. featured-in borders: bottom line matches the top; sidebar card titles ---------- */
.m1-sec--logos{border-bottom:5px solid transparent!important}
.m1-area--sidebar p.m1-post-card__title{margin:0;font-weight:700;line-height:1.35;letter-spacing:-.01em;color:var(--m1-ink)}
.m1-area--sidebar p.m1-post-card__title a{color:var(--m1-ink);text-decoration:none;font-weight:700}
.m1-area--sidebar p.m1-post-card__title a:hover{color:var(--m1-blue)}

/* 38b */
.m1-sec--logos{border-top-width:2px!important;border-bottom-width:2px!important}

/* ---------- 39. floating cart: behave exactly as on the original site ----------
   (a) Elementor zeroes all transitions when the visitor has "reduce motion" on, which removed the cart's open/close
       animation and froze its close button. The rules below put the cart plugin's own transitions back.
   (b) The theme's WooCommerce button/link colours no longer reach inside the floating cart. */
@media(prefers-reduced-motion:reduce){
html .xt_woofc-spinner-wrap{transition:opacity .3s,visibility .3s ease .1s!important}
html .xt_woofc-loading .xt_woofc-cart-opened .xt_woofc-spinner-wrap{transition:opacity .3s ease!important}
html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-horizontal .xt_woofc-header,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-horizontal .xt_woofc-body,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-horizontal .xt_woofc-body *,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-horizontal .xt_woofc-footer,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-horizontal .xt_woofc-checkout,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-vertical .xt_woofc-header,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-vertical .xt_woofc-body,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-vertical .xt_woofc-body *,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-vertical .xt_woofc-footer,html #xt_woofc.xt_woofc:not(.xt_woofc-cart-open).xt_woofc-animation-slide .xt_woofc-shake-vertical .xt_woofc-checkout{transition:none!important}
html .xt_woofc-payment-btns{transition:filter .3s ease!important}
html .xt_woofc-payment-btns .xt_woofc-payment-btn:before{transition:transform .4s ease .4s,opacity .4s ease .4s!important}
html .xt_woofc-cart-opened:not(.xt_woofc-empty) .xt_woofc-payment-btns{transition:filter .3s ease .2s!important}
html .xt_woofc-sp{transition:opacity .3s!important}
html .xt_woofc-sp .lSAction>a{transition:color .3s!important}
html .xt_woofc-animation-morph .xt_woofc-trigger{transition:box-shadow .3s,border-radius .3s,background .4s .05s!important}
html .xt_woofc-cart-close .xt_woofc-animation-morph .xt_woofc-trigger{transition:box-shadow .3s .3s,border-radius .3s .3s!important}
html .xt_woofc-animation-morph .xt_woofc-wrapper{transition-timing-function:cubic-bezier(0.67, 0.17, 0.32, 0.95)!important;transition:height .4s .1s,width .4s .1s,box-shadow .5s,border-radius .5s,opacity .4s .2s!important}
html .xt_woofc-animation-morph .xt_woofc-header,html .xt_woofc-animation-morph .xt_woofc-body{transition:opacity .2s .2s,border-radius .5s!important}
html .xt_woofc-animation-morph.xt_woofc-cart-open .xt_woofc-wrapper{transition-delay:0s!important}
html .xt_woofc-animation-morph.xt_woofc-cart-open .xt_woofc-header,html .xt_woofc-animation-morph.xt_woofc-cart-open .xt_woofc-body{transition:opacity .2s 0s!important}
html .xt_woofc-is-desktop .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-pos-bottom-left .xt_woofc-trigger,html .xt_woofc-is-desktop .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-pos-top-left .xt_woofc-trigger,html .xt_woofc-is-tablet .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-tablet-pos-bottom-left .xt_woofc-trigger,html .xt_woofc-is-tablet .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-tablet-pos-top-left .xt_woofc-trigger,html .xt_woofc-is-mobile .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-mobile-pos-bottom-left .xt_woofc-trigger,html .xt_woofc-is-mobile .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-mobile-pos-top-left .xt_woofc-trigger{transition:border-bottom-left-radius .5s!important}
html .xt_woofc-is-desktop .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-pos-bottom-right .xt_woofc-trigger,html .xt_woofc-is-desktop .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-pos-top-right .xt_woofc-trigger,html .xt_woofc-is-tablet .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-tablet-pos-bottom-right .xt_woofc-trigger,html .xt_woofc-is-tablet .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-tablet-pos-top-right .xt_woofc-trigger,html .xt_woofc-is-mobile .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-mobile-pos-bottom-right .xt_woofc-trigger,html .xt_woofc-is-mobile .xt_woofc-animation-morph.xt_woofc-cart-open.xt_woofc-mobile-pos-top-right .xt_woofc-trigger{transition:border-bottom-right-radius .5s!important}
html .xt_woofc-animation-slide .xt_woofc-trigger{transition:box-shadow .5s,border-radius .5s,transform .4s .05s,opacity .4s .05s,background .4s .05s!important}
html .xt_woofc-animation-slide .xt_woofc-wrapper{transition-timing-function:ease!important;transition:box-shadow .5s,border-radius .5s,transform .4s,width .2s .5s,height 0s .5s!important}
html .xt_woofc-animation-slide.xt_woofc-cart-open .xt_woofc-wrapper{transition:box-shadow .3s,transform .4s,width 0s,height 0s!important}
html .xt_woofc-error{transition:all .3s!important}
html .xtfw-no-transitions .xt_woofc{transition:none!important}
html .xtfw-no-transitions .xt_woofc *:not(.xt_woofc-spinner-wrap *){transition:none!important}
html .xt_woofc::before{transition:opacity .4s,visibility .4s!important}
html .xt_woofc-coupon-form .button{transition:filter .3s!important}
html .xt_woofc-header{transition:opacity .2s 0s,border-radius .5s!important}
html .xt_woofc-title{transition:opacity .3s,transform .3s!important}
html .xt_woofc-header-clear{transition:width .3s,padding .3s!important}
html .xt_woofc-header-clear:before{transition:transform .25s,color .25s!important}
html .xt_woofc-header-close:before{transition:transform .5s!important}
html .xt_woofc-notice,html .xt_woofc-coupon{transition:transform .3s,opacity .3s,visibility 0s!important}
html .xt_woofc-notice a,html .xt_woofc-coupon a{transition:color .3s!important}
html .xt_woofc-shipping-bar .xt_woofc-shipping-bar-perc>span{transition:width .3s ease,background-color .3s ease!important}
html .xt_woofc-inner{transition:transform .2s,opacity .3s .5s,background .3s 0s!important}
html .xt_woofc-body{transition:opacity .2s!important}
html .xt_woofc-body a{transition:color .3s,background .3s!important}
html .xt_woofc-body .xt_woofc-body-header a{transition:color .3s!important}
html .xt_woofc-checkout-loading .xt_woofc-body .xt_woofc-body-header{transition:.3s!important}
html .xt_woofc-body .xt_woofc-body-footer{transition:opacity .2s .4s!important}
html .xt_woofc-loading-hide-content .xt_woofc-body .xt_woofc-body-footer{transition:.3s!important}
html .xt_woofc-checkout-loading .xt_woofc-body .xt_woofc-list-wrap{transition:.3s!important}
html .xt_woofc-body .xt_woofc-list li{transition:opacity 0s .2s,transform 0s .2s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li{transition:transform .3s .2s,opacity .3s .2s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(2){transition-duration:.4s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(3){transition-duration:.5s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(4){transition-duration:.6s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(5){transition-duration:.7s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(6){transition-duration:.75s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(7){transition-duration:.8s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(8){transition-duration:.85s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(9){transition-duration:.9s!important}
html .xt_woofc-cart-open .xt_woofc-body .xt_woofc-list li:nth-of-type(10){transition-duration:.95s!important}
html .xt_woofc-quantity form{transition:opacity .3s ease!important}
html .xt_woofc-quantity .xt_woofc-quantity-col.xt_woofc-quantity-col-input input{transition:width .2s ease!important}
html .xt_woofc-no-product{transition:opacity .4s,visibility .4s,height .4s .2s!important}
html .xt_woofc-animation-morph #xt_woofc .woocommerce-checkout-review-order{transition:opacity .3s!important}
html .xt_woofc-cart-opened #xt_woofc .woocommerce-checkout-review-order{transition:opacity .3s!important}
html .xt_woofc-cart-opened .xt_woofc-footer,html .xt_woofc-cart-open .xt_woofc-footer{transition:box-shadow .5s,border-radius .5s!important}
html .xt_woofc-checkout{transition:all .5s!important}
html .xt_woofc-checkout .xt_woofc-dash,html .xt_woofc-checkout .amount{transition:width .2s,opacity .2s!important}
html .xt_woofc-cart-opened .xt_woofc-checkout{transition:all .3s 0s,opacity .3s .15s!important}
html .xt_woofc-cart-open .xt_woofc-checkout{transition:color .2s,opacity .3s,visibility .3s,transform .5s ease,border-radius .5s!important}
html .xt_woofc-cart-open .xt_woofc-checkout em{transition:transform .2s .1s,padding .2s 0s!important}
html .xt_woofc-checkout em{transition:transform 0s .2s!important}
html .xt_woofc-checkout em .xt_woofc-checkout-arrow{transition:opacity .2s!important}
html .xt_woofc-trigger .xt_woofc-trigger-close-icon,html .xt_woofc-trigger .xt_woofc-trigger-cart-icon{transition:opacity .3s .2s,transform .3s .2s!important}
html .xt_woofc-trigger .xt_woofc-count{transition:opacity .2s .4s,width .2s,height .2s,transform .2s .4s ease!important}
html .xt_woofc-cart-open .xt_woofc-trigger .xt_woofc-count,html .xt_woofc:not(.xt_woofc-cart-opened) .xt_woofc-trigger .xt_woofc-count{transition:opacity .1s,transform .1s ease!important}
html .xt_woofc-cart-open.xt_woofc-modal .xt_woofc-trigger .xt_woofc-count{transition:none!important}
html .xt_woofc-checkout-frame{transition:opacity .3s,height .3s!important}
html .xt_woofc-checkout-loading .xt_woofc-header-right *:not(.xt_woofc-header-close){transition:opacity .3s!important}
}

/* ---------- 40. floating cart look: original plugin styling (no theme button/link styles inside it); featured-in has no borders ---------- */
#xt_woofc,#xt_woofc *{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
#xt_woofc a.xt_woofc-checkout,#xt_woofc .xt_woofc-btn,#xt_woofc a.button,#xt_woofc .button{background-image:none;border-radius:0;box-shadow:none;letter-spacing:normal;text-transform:none;font-weight:400;padding:0;transform:none}
#xt_woofc a.xt_woofc-checkout{background-color:#2c97de;font-size:24px;line-height:72px;color:#fff}
#xt_woofc a.xt_woofc-checkout:hover{background-color:#2c97de;transform:none;box-shadow:none}
#xt_woofc a.xt_woofc-checkout::after,#xt_woofc .button::after{display:none}
#xt_woofc a.xt_woofc-trigger,#xt_woofc a.xt_woofc-trigger:hover{box-shadow:none}
.m1-sec--logos{border:0!important;border-image:none!important;box-shadow:none!important}

/* ---------- 41. boxes do not move on hover (colour, border and shadow changes stay) ---------- */
.m1-feat:hover,.m1-feat.m1-in:hover,.m1-svc:hover,.m1-svc.m1-in:hover,.m1-sec--svcs .m1-svc.m1-in:hover,.m1-plan:hover,.m1-plan.m1-in:hover,.m1-card:hover,.m1-card--secondary:hover,.m1-post-card:hover,.m1-loc-industries__row li:hover,.m1-loc-industries__row li a:hover,.m1-archive .elementor-post:hover{transform:none!important}
.m1-svc:hover .m1-ico,.m1-feat:hover .m1-ico,.m1-post-card:hover .m1-post-card__img img,.m1-loc-intro__art:hover .m1-figure img{transform:none!important}
.m1-loc-intro__art .m1-figure img{transform:rotate(-2deg)}
.m1-loc-intro__art:hover .m1-figure img{transform:rotate(-2deg)!important}

/* ---------- 42. tighter section spacing (change the two numbers here to loosen or tighten the whole site) ---------- */
:root{--m1-sec-y:40px;--m1-sec-y-sm:28px}
.m1-sec,.m1-area--top .m1-sec{padding-top:var(--m1-sec-y);padding-bottom:var(--m1-sec-y)}
.e-con.m1-sec,.m1-loc .e-con.m1-sec{padding-top:var(--m1-sec-y);padding-bottom:var(--m1-sec-y)}
.m1-sec--feats,.m1-sec--svcs,.m1-sec--plans{padding-top:var(--m1-sec-y);padding-bottom:var(--m1-sec-y)}
.m1-sec--logos{padding-top:34px!important;padding-bottom:36px!important}
.m1-widget:has(.m1-reviews)+.m1-widget .m1-sec--logos{padding-top:34px!important}
.m1-sec--logos .m1-row{margin-bottom:20px!important}
.m1-reviews{padding:30px 0 4px}
.m1-hero__inner{padding-top:56px;padding-bottom:60px}
.m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:60px}
.m1-hero--compact .m1-hero__inner{padding-top:36px;padding-bottom:38px}
.e-con.m1-blog{padding-top:34px;padding-bottom:44px;gap:22px}
.m1-row{margin-bottom:22px}
.e-con.m1-sec{gap:22px}
.m1-loc-head{margin-bottom:4px}
.m1-content h2,.m1-text h2,.m1-rich h2{margin-top:1.3em}
.m1-content h3,.m1-text h3,.m1-rich h3{margin-top:1.15em}
.m1-footer__inner{padding-top:44px;padding-bottom:24px}
.m1-footer__legal{margin-top:30px;padding-top:20px}
.woocommerce-cart .m1-sec.m1-main,.woocommerce-checkout .m1-sec.m1-main{padding-top:36px;padding-bottom:44px}
@media(max-width:767px){
  .m1-sec,.m1-area--top .m1-sec,.e-con.m1-sec,.m1-loc .e-con.m1-sec,.m1-sec--feats,.m1-sec--svcs,.m1-sec--plans{padding-top:var(--m1-sec-y-sm);padding-bottom:var(--m1-sec-y-sm)}
  .m1-sec--logos{padding-top:26px!important;padding-bottom:28px!important}
  .m1-hero__inner{padding-top:26px;padding-bottom:32px}
  .m1-widget:has(.m1-hero):not(:has(.m1-reviews)):has(+.m1-widget .m1-sec--logos) .m1-hero__inner{padding-bottom:32px}
  .m1-reviews{padding:22px 0 2px}
  .m1-footer__inner{padding-top:32px}
}
/* ---------- 43. offer box (e.g. USA Today press release): icon + title + checklist on the left, button on the right ---------- */
.m1-offer{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#fff;border:1px solid var(--m1-line);border-left:6px solid var(--m1-blue);border-radius:var(--m1-radius);padding:34px 38px;box-shadow:var(--m1-shadow)}
.m1-offer__main{display:flex;align-items:flex-start;gap:24px;min-width:0;flex:1 1 auto}
.m1-offer .m1-ico{width:68px;height:68px;border-radius:18px;background:linear-gradient(135deg,#0A74BC,#075C97);box-shadow:0 12px 24px rgba(7,92,151,.28)}
.m1-offer .m1-ico::before{inset:18px;background:#fff}
.m1-offer__title{font-size:clamp(1.35rem,2vw,1.7rem);margin:2px 0 16px;letter-spacing:-.02em}
.m1-offer__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:10px 36px}
.m1-offer__list li{position:relative;margin:0;padding-left:30px;font-size:1.04rem;font-weight:600;color:var(--m1-ink);line-height:1.4}
.m1-offer__list li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--m1-tint)}
.m1-offer__list li::after{content:"";position:absolute;left:5px;top:7px;width:10px;height:10px;background:var(--m1-blue);-webkit-mask:var(--m1-check) center/contain no-repeat;mask:var(--m1-check) center/contain no-repeat}
.m1-offer__cta{flex:0 0 auto}
.m1-offer__cta .m1-btn{padding:18px 30px;font-size:1rem;letter-spacing:.03em;white-space:nowrap}
@media(max-width:1000px){.m1-offer{flex-direction:column;align-items:stretch;gap:26px;padding:28px 24px}.m1-offer__cta .m1-btn{display:block;white-space:normal}}
@media(max-width:560px){.m1-offer__main{flex-direction:column;gap:16px}.m1-offer__list{grid-template-columns:1fr}.m1-offer{padding:22px 18px}}
/* ---------- 44. anchor targets stop below the sticky menu ---------- */
#freequote,#contactform,[id]:target{scroll-margin-top:96px}

/* ---------- 45. blog post: previous / next cards; sidebar search focus ---------- */
.m1-postnav{border-top:1px solid var(--m1-line);padding-top:28px;margin-top:18px}
.m1-postnav .elementor-post-navigation{display:grid;grid-template-columns:1fr 1fr;gap:20px;border:0!important;padding:0}
.m1-postnav .elementor-post-navigation__separator-wrapper{display:none}
.m1-postnav .elementor-post-navigation__link{width:auto;min-width:0;display:block;border:0!important;padding:0}
.m1-postnav .elementor-post-navigation__link:empty{display:none}
.m1-postnav .elementor-post-navigation__link a{display:flex;align-items:center;gap:16px;height:100%;box-sizing:border-box;padding:20px 22px;background:#fff;border:1px solid var(--m1-line);border-radius:var(--m1-radius);box-shadow:var(--m1-shadow-sm);text-decoration:none!important;color:var(--m1-ink);transition:border-color .15s ease,box-shadow .2s ease,background-color .15s ease}
.m1-postnav .elementor-post-navigation__link a:hover{border-color:var(--m1-blue);box-shadow:var(--m1-shadow);background:#FBFDFF}
.m1-postnav .elementor-post-navigation__next a{flex-direction:row;justify-content:flex-end;text-align:right}
.m1-postnav .post-navigation__arrow-wrapper{flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--m1-tint);color:var(--m1-blue);display:flex;align-items:center;justify-content:center;font-size:18px;transition:background-color .15s ease,color .15s ease}
.m1-postnav .post-navigation__arrow-wrapper svg{width:10px;height:18px;fill:currentColor}
.m1-postnav .elementor-post-navigation__link a:hover .post-navigation__arrow-wrapper{background:var(--m1-blue);color:#fff}
.m1-postnav .elementor-post-navigation__link__prev,.m1-postnav .elementor-post-navigation__link__next{display:flex;flex-direction:column;gap:4px;min-width:0;overflow:visible}
.m1-postnav .post-navigation__prev--label,.m1-postnav .post-navigation__next--label{font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--m1-blue)}
.m1-postnav .post-navigation__prev--title,.m1-postnav .post-navigation__next--title{font-size:1.06rem;font-weight:700;line-height:1.35;color:var(--m1-ink);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:680px){.m1-postnav .elementor-post-navigation{grid-template-columns:1fr}}
/* search fields: no dark outline box on click, just a blue underline */
.widget_search form,.widget_search label{display:block;margin:0}
.widget_search input[type=search],.m1-search input[type=search]{outline:0!important;box-shadow:none!important;-webkit-appearance:none;appearance:none;border-radius:0}
.widget_search input[type=search]:focus,.widget_search input[type=search]:focus-visible,.m1-search input[type=search]:focus,.m1-search input[type=search]:focus-visible{outline:0!important;box-shadow:none!important}
.m1-blog .m1-area--sidebar .m1-widget.widget_search:focus-within{border-bottom-color:var(--m1-blue)}
.m1-search form:focus-within{border-bottom-color:var(--m1-blue)}
.m1-search .elementor-search-form__container,.m1-search .elementor-search-form__container:focus-within{outline:0!important;box-shadow:none!important}
.widget_search input[type=search]::-webkit-search-decoration,.widget_search input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
/* ---------- 46. case studies page: text case-study cards + keyword ranking images two per row ---------- */
.e-con.m1-cases{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.m1-cases>.elementor-element{width:auto!important;max-width:none;margin:0}
.m1-cases>.elementor-element>.elementor-widget-container{height:100%}
@media(max-width:1000px){.e-con.m1-cases{grid-template-columns:1fr}}
.m1-case{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid var(--m1-line);border-radius:18px;overflow:hidden;box-shadow:var(--m1-shadow)}
.m1-case__head{padding:28px 30px 26px;color:#DCE8F4;background:radial-gradient(520px 260px at 100% 0%,rgba(20,140,220,.75),rgba(20,140,220,0) 65%),linear-gradient(135deg,var(--m1-navy-deep) 0%,var(--m1-navy) 100%)}
.m1-case__eyebrow{display:inline-block;margin:0 0 12px;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.m1-case__client{margin:0 0 10px;color:#fff;font-size:clamp(1.45rem,2.2vw,1.9rem);letter-spacing:-.02em;overflow-wrap:anywhere}
.m1-case__client::after{display:none!important}
.m1-case__intro{margin:0;font-size:1.02rem;line-height:1.55;color:#DCE8F4}
.m1-case__body{padding:26px 30px 30px;display:flex;flex-direction:column;gap:22px;flex:1}
.m1-case__metric{margin:0}
.m1-case__metric h4{margin:0 0 4px;font-size:1.12rem;line-height:1.3;color:var(--m1-ink)}
.m1-case__sub{margin:0 0 12px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--m1-muted)}
.m1-case__stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.m1-case__stat{margin:0;padding:16px 10px 14px;text-align:center;background:var(--m1-soft);border:1px solid var(--m1-line);border-radius:14px;display:flex;flex-direction:column;align-items:center;gap:4px}
.m1-case__stat strong{font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:800;letter-spacing:-.03em;line-height:1.05;color:var(--m1-blue)}
.m1-case__stat span{font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--m1-ink);line-height:1.3}
.m1-case__stat em{font-style:normal;margin-top:4px;padding:3px 10px;border-radius:999px;background:var(--m1-blue);color:#fff;font-size:.72rem;font-weight:700;line-height:1.4}
.m1-case__stat--up{background:#EAF7F0;border-color:#C9EAD8}
.m1-case__stat--up strong{color:#12804A}
.m1-case__stat--up em{background:#12804A}
.m1-case__quote{margin:0;padding:20px 22px;border:0;border-left:4px solid var(--m1-blue);border-radius:0 14px 14px 0;background:var(--m1-tint);color:var(--m1-ink)}
.m1-case__quote p{margin:0 0 10px;font-size:1rem;line-height:1.6}
.m1-case__stars{color:#F5B301;font-size:1.05rem;letter-spacing:2px;margin-bottom:6px!important}
.m1-case__quote cite{display:block;font-style:normal;font-weight:700;color:var(--m1-blue)}
.m1-case__quote cite::before{content:"\2013\00a0"}
.m1-case__note{margin:0;font-size:.98rem;line-height:1.6;color:var(--m1-body)}
.m1-case__note strong{color:var(--m1-ink)}
.m1-case__wins{list-style:none;margin:auto 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}
.m1-case__wins li{position:relative;margin:0;padding-left:28px;font-size:.92rem;font-weight:600;color:var(--m1-ink);line-height:1.4}
.m1-case__wins li::before{content:"";position:absolute;left:0;top:1px;width:19px;height:19px;border-radius:50%;background:var(--m1-tint)}
.m1-case__wins li::after{content:"";position:absolute;left:5px;top:6px;width:9px;height:9px;background:var(--m1-blue);-webkit-mask:var(--m1-check) center/contain no-repeat;mask:var(--m1-check) center/contain no-repeat}
@media(max-width:560px){.m1-case__head{padding:22px 18px}.m1-case__body{padding:20px 18px 22px}.m1-case__stats{gap:8px}.m1-case__stat{padding:12px 6px}.m1-case__wins{grid-template-columns:1fr}}
.m1-kwgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
@media(max-width:800px){.m1-kwgrid{grid-template-columns:1fr}}
.m1-kwgrid__item{margin:0;background:#fff;border:1px solid var(--m1-line);border-radius:16px;overflow:hidden;box-shadow:var(--m1-shadow-sm);display:flex;flex-direction:column}
.m1-kwgrid__item a{display:block;line-height:0;background:#fff}
.m1-kwgrid__item img{display:block;width:100%;height:auto;border-radius:0}
.m1-kwgrid__item figcaption{padding:16px 20px 18px;border-top:1px solid var(--m1-line);margin-top:auto}
.m1-kwgrid__item h3{margin:0;font-size:1.15rem;text-align:center}
.m1-kwgrid__item h3::after{display:none!important}
/* ---------- 47. package sections on white: no grey band behind the intro text and package rows ---------- */
.m1-sec--plans,.m1-area--top .m1-sec--plans{background:#fff!important}

/* 46b */
.m1-kwgrid__item figcaption,.m1-kwgrid__item figcaption h3{font-style:normal}

/* ---------- 48. added-to-cart pop-up ---------- */
.m1-atc[hidden]{display:none!important}
.m1-atc{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}
.m1-atc__backdrop{position:absolute;inset:0;background:rgba(20,24,43,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;transition:opacity .2s ease}
.m1-atc__box{position:relative;width:100%;max-width:440px;background:#fff;border-radius:20px;padding:40px 34px 30px;text-align:center;box-shadow:0 40px 90px rgba(10,14,30,.45);opacity:0;transform:translate3d(0,14px,0) scale(.97);transition:opacity .2s ease,transform .25s cubic-bezier(.2,.7,.2,1)}
.m1-atc.is-open .m1-atc__backdrop{opacity:1}
.m1-atc.is-open .m1-atc__box{opacity:1;transform:none}
.m1-atc__x,.m1-atc__x:focus{position:absolute;top:12px;right:12px;width:40px;height:40px;padding:0;border:0!important;border-radius:50%;background:var(--m1-soft)!important;cursor:pointer;color:var(--m1-ink)!important}
.m1-atc__x:hover{background:var(--m1-line)!important}
.m1-atc__x::before,.m1-atc__x::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;margin:-1px 0 0 -8px;border-radius:2px;background:var(--m1-ink)}
.m1-atc__x::before{transform:rotate(45deg)}.m1-atc__x::after{transform:rotate(-45deg)}
.m1-atc__check{display:block;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:#12804A var(--m1-check-white,none) center/30px no-repeat;position:relative;box-shadow:0 12px 26px rgba(18,128,74,.32)}
.m1-atc__check::after{content:"";position:absolute;inset:17px;background:#fff;-webkit-mask:var(--m1-check) center/contain no-repeat;mask:var(--m1-check) center/contain no-repeat}
.m1-atc__title{margin:0 0 24px;font-size:1.65rem;letter-spacing:-.02em;color:var(--m1-ink)}
.m1-atc__title::after{display:none!important}
.m1-atc__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.m1-atc__btn,.m1-atc__btn:focus{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 16px;border-radius:var(--m1-radius-sm);font-family:var(--m1-font);font-size:1rem;font-weight:700;line-height:1.2;text-decoration:none!important;cursor:pointer;box-sizing:border-box;transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.m1-atc__btn--ghost,.m1-atc__btn--ghost:focus{background:#fff!important;color:var(--m1-ink)!important;border:1px solid #CBD2DF!important}
.m1-atc__btn--ghost:hover{background:var(--m1-soft)!important;border-color:var(--m1-blue)!important;color:var(--m1-blue)!important}
.m1-atc__btn--primary,.m1-atc__btn--primary:focus{background:var(--m1-blue);color:#fff!important;border:1px solid var(--m1-blue)}
.m1-atc__btn--primary:hover{background:var(--m1-blue-dark);color:#fff!important}
.m1-atc__btn:focus-visible,.m1-atc__x:focus-visible{outline:3px solid rgba(7,92,151,.45);outline-offset:2px}
@media(max-width:480px){.m1-atc__box{padding:36px 20px 22px}.m1-atc__actions{grid-template-columns:1fr}.m1-atc__title{font-size:1.45rem}}
@media(prefers-reduced-motion:reduce){html .m1-atc__box,html .m1-atc__backdrop{transition:none!important;opacity:1;transform:none}}

/* ==========================================================
   49. Top bar size (phone number + Cart / Log In links)
   Change the three numbers below to resize the top bar text.
   ========================================================== */
:root{--m1-strip-h:46px;--m1-strip-fs:1.02rem;--m1-strip-fs-sm:.95rem}
.m1-strip{height:var(--m1-strip-h);min-height:var(--m1-strip-h);font-size:var(--m1-strip-fs)}
.m1-strip a,.m1-strip .elementor-widget,.m1-strip p{font-size:var(--m1-strip-fs)!important;line-height:1.2}
.m1-userbar{gap:22px}
.m1-userbar__btn{font-size:var(--m1-strip-fs)!important;font-weight:700;opacity:1}
.m1-userbar__btn--cart::before{width:19px;height:19px}
@media (max-width:767px){
  .m1-strip{font-size:var(--m1-strip-fs-sm)}
  .m1-strip a,.m1-strip .elementor-widget,.m1-strip p,.m1-userbar__btn{font-size:var(--m1-strip-fs-sm)!important}
  .m1-userbar{gap:16px}
  .m1-userbar__btn--cart::before{width:17px;height:17px}
}
/* 49b. Phones: drop the 'Call Us:' label so the bigger number and links fit; logged-in customers have three links, so they get a slightly smaller size */
@media (max-width:480px){
  .m1-strip__phone{font-size:0!important}
  .logged-in .m1-strip a,.logged-in .m1-userbar__btn{font-size:.86rem!important}
  .logged-in .m1-userbar{gap:11px}
}
@media (max-width:359px){
  .logged-in .m1-strip a,.logged-in .m1-userbar__btn{font-size:.78rem!important}
  .logged-in .m1-userbar{gap:9px}
}

/* 50. Top bar buttons (Cart / Log In / My Account / Log Out) + spacing above and below.
   --m1-strip-pad = space above and below the buttons. */
:root{--m1-strip-pad:11px}
.m1-strip{height:auto!important;min-height:0!important;padding-top:var(--m1-strip-pad)!important;padding-bottom:var(--m1-strip-pad)!important}
.m1-userbar{gap:10px}
.m1-userbar__btn{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 16px;box-sizing:border-box;border:1.5px solid rgba(255,255,255,.55);border-radius:8px;background:transparent;color:#fff!important;font-weight:700;line-height:1;text-decoration:none!important;opacity:1;transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.m1-userbar__btn:hover,.m1-userbar__btn:focus-visible{background:#fff;border-color:#fff;color:var(--m1-navy,#282E45)!important;text-decoration:none!important}
.m1-userbar__btn--cart{background:var(--m1-blue,#075C97);border-color:var(--m1-blue,#075C97)}
.m1-userbar__btn--cart:hover,.m1-userbar__btn--cart:focus-visible{background:#fff;border-color:#fff;color:var(--m1-navy,#282E45)!important}
@media (max-width:480px){
  :root{--m1-strip-pad:9px}
  .m1-userbar{gap:8px}
  .m1-userbar__btn{min-height:34px;padding:0 12px}
  .logged-in .m1-userbar{gap:6px}
  .logged-in .m1-userbar__btn{padding:0 7px;font-size:.76rem!important}
  .logged-in .m1-strip a{font-size:.8rem!important}
  .logged-in .m1-strip__phone a{font-size:.86rem!important}
}
@media (max-width:359px){
  .logged-in .m1-userbar{gap:4px}
  .logged-in .m1-userbar__btn{padding:0 5px;font-size:.7rem!important}
  .logged-in .m1-userbar__btn--cart::before{display:none}
  .logged-in .m1-strip__phone a{font-size:.78rem!important}
}

/* 51. Headlines that contain an underlined link ("Our agency has been featured in:"): more room between lines when the headline wraps, so the underline does not touch the second line */
.m1-sec--logos .m1-headline,.m1-headline:has(a){line-height:1.5!important}
@media (max-width:767px){.m1-sec--logos .m1-headline,.m1-headline:has(a){line-height:1.75!important}}

/* 52. Top bar: no cart icon; roomier buttons for logged-in customers on phones (Cart / Account / Log Out) */
.m1-userbar__btn--cart::before{display:none!important}
@media (max-width:480px){
  .logged-in .m1-userbar{gap:6px}
  .logged-in .m1-strip a.m1-userbar__btn{padding:0 10px;font-size:.86rem!important}
  .logged-in .m1-strip__phone a{font-size:.86rem!important}
}
@media (max-width:359px){
  .logged-in .m1-userbar{gap:5px}
  .logged-in .m1-strip a.m1-userbar__btn{padding:0 7px;font-size:.8rem!important}
  .logged-in .m1-strip__phone a{font-size:.76rem!important}
}

/* 53. Sticky header offsets matched to the taller top bar (section 50): the top bar scrolls fully out of view, only the menu stays. If the top bar height changes, update these. */
.elementor-location-header{top:-58px}
@media (max-width:480px){.elementor-location-header{top:-52px}}
@media (min-width:1200px){html:not(.m1-burger) .elementor-location-header{top:-129px}}

/* 54. Hero with a "View Packages" button instead of the quote form (widget "Hero - View Packages").
   The button goes to the first package box on the page (id="packages" is added to it automatically). */
.m1-hero--packages .m1-hero__inner{grid-template-columns:1fr;gap:0;text-align:center;justify-items:center;padding-top:64px;padding-bottom:72px}
.m1-hero--packages .m1-hero__title,.m1-hero--packages .m1-hero__lead{margin-left:auto;margin-right:auto}
.m1-hero--packages .m1-hero__title{max-width:22em}
.m1-hero--packages .m1-hero__points{justify-content:center}
.m1-hero__cta{margin:34px 0 0}
.m1-hero__btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:0 38px;border-radius:12px;background:#fff;color:var(--m1-navy,#282E45)!important;font-size:1.12rem;font-weight:800;letter-spacing:.01em;text-decoration:none!important;box-shadow:0 18px 40px rgba(6,10,24,.35);transition:background-color .15s ease,color .15s ease}
.m1-hero__btn::after{content:"";width:10px;height:10px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px)}
.m1-hero__btn:hover,.m1-hero__btn:focus-visible{background:var(--m1-blue,#075C97);color:#fff!important}
#packages{scroll-margin-top:96px}
@media (max-width:767px){
  .m1-hero--packages .m1-hero__inner{padding-top:44px;padding-bottom:50px}
  .m1-hero__btn{width:100%;max-width:340px;min-height:54px;padding:0 24px}
}

/* 55. Hero checkmark points: two per row (2 x 2) next to the form on tablet/desktop. The "View Packages" hero keeps them on one centred row; phones keep one per line. */
@media (min-width:600px){
  .m1-hero:not(.m1-hero--packages) .m1-hero__points{display:grid;grid-template-columns:repeat(2,max-content);gap:12px 12px;justify-content:start}
}

/* 56. Package rows that follow one another: half the usual space between them (the second row drops its top padding). */
.m1-sec:has(.m1-plan)+.m1-sec:has(.m1-plan){padding-top:0!important}

/* 57. One content width everywhere: top bar, logo/menu, hero, widget sections and footer line up with the main content
   (content is --m1-wrap wide on large screens, with --m1-gutter side space on smaller ones). */
:root{--m1-side:max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2))}
.m1-wrap,.m1-area .m1-sec>.m1-wrap,.m1-sec--logos>.m1-wrap,.m1-hero__inner,.m1-footer__inner{max-width:calc(var(--m1-wrap) + 2*var(--m1-gutter))}
.m1-strip,.m1-bar{padding-left:max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2))!important;padding-right:max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2))!important}
html.m1-burger .m1-nav__panel{padding-left:max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2));padding-right:max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2))}

/* 58. Accessibility: pause/play control for the auto-moving logo slider (WCAG 2.2.2), and a clear keyboard focus ring everywhere. */
.m1-logos__pause{display:block;margin:10px auto 0;padding:6px 14px;min-height:32px;border:1px solid #9AA3B5;border-radius:999px;background:#fff;color:var(--m1-navy,#282E45);font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}
.m1-logos__pause:hover{background:var(--m1-navy,#282E45);border-color:var(--m1-navy,#282E45);color:#fff}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid #075C97;outline-offset:2px}
.m1-hero a:focus-visible,.m1-hero button:focus-visible,.m1-strip a:focus-visible,.m1-footer a:focus-visible{outline-color:#fff}

/* 59. Feature rows: image on one side, title + text + button on the other, alternating (SEO Keyword Rank Tracker page).
   Built from normal Elementor containers with the classes m1-rt / m1-rt__row / m1-rt__media / m1-rt__body. */
.m1-rt>.e-con-inner{gap:0}
.m1-rt__pagetitle{margin-bottom:8px}
.m1-rt__row{display:flex!important;align-items:center;gap:56px!important;padding:44px 0!important;border-top:1px solid var(--m1-line,#E3E8F0)}
.m1-rt__pagetitle+.m1-rt__row{border-top:0;padding-top:20px!important}
.m1-rt__row--rev{flex-direction:row-reverse!important}
.m1-rt__media,.m1-rt__body{flex:1 1 0!important;width:auto!important;min-width:0;padding:0!important}
.m1-rt__media{background:linear-gradient(160deg,#F1F6FB 0%,#E4EEF8 100%);border:1px solid #D8E3F0;border-radius:18px;padding:18px!important;box-shadow:0 18px 40px rgba(40,46,69,.10)}
.m1-rt__img,.m1-rt__img .elementor-widget-container{width:100%}
.m1-rt__img img{display:block;width:100%;height:auto;border-radius:10px;background:#fff}
.m1-rt__body{gap:14px!important}
.m1-rt__title .elementor-heading-title{position:relative;margin:0;padding-top:18px;font-size:clamp(1.45rem,2.1vw,1.95rem);line-height:1.2;letter-spacing:-.02em;color:var(--m1-ink,#171B2C)}
.m1-rt__title .elementor-heading-title::before{content:"";position:absolute;left:0;top:0;width:54px;height:4px;border-radius:4px;background:var(--m1-blue,#075C97)}
.m1-rt__text p{margin:0 0 14px}
.m1-rt__text p:last-child{margin-bottom:0}
.m1-rt__text p:has(>strong:first-child+br){position:relative;margin:0 0 12px;padding:14px 16px 14px 50px;background:#F6F9FC;border:1px solid #E1E8F1;border-radius:12px}
.m1-rt__text p:has(>strong:first-child+br)::before{content:"";position:absolute;left:16px;top:16px;width:22px;height:22px;border-radius:50%;background:var(--m1-blue,#075C97) var(--m1-check) center/12px no-repeat}
.m1-rt__text p:has(>strong:first-child+br)>strong:first-child{color:var(--m1-ink,#171B2C)}
.m1-rt__btn{margin-top:6px}
.m1-rt__btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border-radius:10px;background:var(--m1-blue,#075C97);color:#fff;font-weight:800;font-size:1rem;letter-spacing:.01em;text-decoration:none;transition:background-color .15s ease}
.m1-rt__btn .elementor-button:hover,.m1-rt__btn .elementor-button:focus-visible{background:var(--m1-navy,#282E45);color:#fff}
@media (max-width:1024px){
  .m1-rt__row,.m1-rt__row--rev{flex-direction:column!important;align-items:stretch;gap:24px!important;padding:32px 0!important}
  .m1-rt__media,.m1-rt__body{flex:0 0 auto!important;width:100%!important}
  .m1-rt__media{padding:12px!important}
}

/* 60. Elementor-built article pages (class m1-doc): each section is its own Text Editor widget; give a new section a little more room above its heading. */
.m1-doc>.elementor-widget-text-editor+.elementor-widget-text-editor,.m1-doc>.elementor-widget-text-editor+.elementor-widget-heading{margin-top:16px}

/* 61. Call-to-action band at the top of the footer template (heading, one line of text, Get a Free Quote button).
   Edit the wording in Elementor: Templates > Theme Builder > M1 Footer. Hidden on cart, checkout and account pages. */
.m1-cta{position:relative;overflow:hidden;display:flex!important;align-items:center;justify-content:space-between;gap:32px!important;padding:44px max(var(--m1-gutter),calc((100% - var(--m1-wrap))/2))!important;background:linear-gradient(100deg,#075C97 0%,#0A74BC 55%,#075C97 100%);color:#fff}
.m1-cta::before{content:"";position:absolute;right:-120px;top:-160px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,0) 68%);pointer-events:none}
.m1-cta__copy{flex:1 1 auto!important;width:auto!important;min-width:0;gap:8px!important;position:relative}
.m1-cta__action{flex:0 0 auto!important;width:auto!important;position:relative}
.m1-cta__title .elementor-heading-title{margin:0;color:#fff;font-size:clamp(1.6rem,2.6vw,2.4rem);font-weight:800;line-height:1.15;letter-spacing:-.02em}
.m1-cta__text,.m1-cta__text p{margin:0;color:#E6F0FA;font-size:1.1rem;line-height:1.5}
.m1-cta__btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:60px;padding:0 36px;border-radius:12px;background:#fff;color:var(--m1-navy,#282E45);font-size:1.12rem;font-weight:800;letter-spacing:.01em;white-space:nowrap;text-decoration:none;box-shadow:0 16px 36px rgba(6,10,24,.28);transition:background-color .15s ease,color .15s ease}
.m1-cta__btn .elementor-button:hover,.m1-cta__btn .elementor-button:focus-visible{background:var(--m1-navy,#282E45);color:#fff}
.m1-cta a:focus-visible{outline-color:#fff}
/* cart, checkout and account pages, by page ID (the floating cart makes the usual cart body class unreliable) */
.page-id-7910 .m1-cta,.page-id-7908 .m1-cta,.page-id-7912 .m1-cta{display:none!important}
@media (max-width:1024px){
  .m1-cta{flex-direction:column!important;align-items:flex-start;gap:20px!important;padding-top:34px!important;padding-bottom:34px!important}
}
@media (max-width:600px){
  .m1-cta{align-items:stretch;text-align:center}
  .m1-cta__btn .elementor-button{width:100%;min-height:56px;padding:0 20px}
  .m1-cta__text,.m1-cta__text p{font-size:1rem}
}
/* 61b. Footer links are white by default; keep the CTA button text dark on its white button. */
.m1-footer .m1-cta__btn a.elementor-button,.m1-footer .m1-cta__btn a.elementor-button .elementor-button-text{color:var(--m1-navy,#282E45)!important}
.m1-footer .m1-cta__btn a.elementor-button:hover,.m1-footer .m1-cta__btn a.elementor-button:focus-visible,.m1-footer .m1-cta__btn a.elementor-button:hover .elementor-button-text,.m1-footer .m1-cta__btn a.elementor-button:focus-visible .elementor-button-text{color:#fff!important}
/* 61c. Longer CTA headline: split its lines evenly and keep it a touch smaller. */
.m1-cta__title .elementor-heading-title{text-wrap:balance;font-size:clamp(1.45rem,2.2vw,2.1rem);line-height:1.2}
/* 61d. CTA band centred on phones and tablets (when it stacks). */
@media (max-width:1024px){
  .m1-cta{align-items:center!important;text-align:center}
  .m1-cta__copy,.m1-cta__action{width:100%!important;align-items:center!important}
  .m1-cta__title,.m1-cta__title .elementor-heading-title,.m1-cta__text,.m1-cta__text p{text-align:center!important}
  .m1-cta__title .elementor-heading-title{margin-left:auto;margin-right:auto}
  .m1-cta__btn,.m1-cta__btn .elementor-widget-container,.m1-cta__btn .elementor-button-wrapper{text-align:center;width:100%}
}

/* 62. Product and shop pages: the body itself carries the 'woocommerce' class there, which was turning header and footer links blue. Keep them as on every other page. */
body.woocommerce .m1-strip a,body.woocommerce-page .m1-strip a{color:#fff}
body.woocommerce .m1-footer a,body.woocommerce-page .m1-footer a{color:#E8ECF5}
body.woocommerce .m1-footer a:hover,body.woocommerce-page .m1-footer a:hover{color:#fff}

/* 63. Single product page (/product/...): image card on the left, title / price / add to cart card on the right, description below.
   Layout only - product title, price, description and image all come from the product in WooCommerce. */
.single-product #primary{background:var(--m1-soft,#F5F7FA)}
.single-product main#main.site-main{max-width:calc(var(--m1-wrap) + 2*var(--m1-gutter));margin:0 auto;padding:30px var(--m1-gutter) 64px;box-sizing:border-box}
.single-product .woocommerce-breadcrumb{margin:0 0 22px;font-size:.92rem;color:var(--m1-muted,#667085)}
.single-product .woocommerce-breadcrumb a{color:var(--m1-blue,#075C97);font-weight:600;text-decoration:none}
.single-product.woocommerce div.product{display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr);gap:36px;align-items:start}
.single-product.woocommerce div.product::before,.single-product.woocommerce div.product::after{display:none}
.single-product.woocommerce div.product div.images,.single-product.woocommerce div.product div.summary{float:none!important;width:auto!important;margin:0!important}
.single-product.woocommerce div.product div.images{background:#fff;border:1px solid var(--m1-line,#E1E6EE);border-radius:18px;padding:26px;box-shadow:var(--m1-shadow-sm)}
.single-product.woocommerce div.product div.images img{display:block;width:100%;height:auto;border-radius:12px}
.single-product.woocommerce div.product div.images.woocommerce-product-gallery--without-images{background:linear-gradient(160deg,#F1F6FB 0%,#E4EEF8 100%)}
.single-product.woocommerce div.product div.images.woocommerce-product-gallery--without-images img{max-width:260px;margin:34px auto;border-radius:50%}
.single-product.woocommerce div.product div.summary{background:#fff;border:1px solid var(--m1-line,#E1E6EE);border-radius:18px;padding:36px 38px;box-shadow:var(--m1-shadow)}
.single-product.woocommerce div.product .product_title{margin:0 0 14px;font-size:clamp(1.8rem,2.8vw,2.6rem);line-height:1.12;letter-spacing:-.025em;color:var(--m1-ink,#171B2C)}
.single-product.woocommerce div.product p.price,.single-product.woocommerce div.product span.price{margin:0 0 22px;color:var(--m1-blue,#075C97)!important;font-size:2.1rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}
.single-product.woocommerce div.product p.price del{color:var(--m1-muted,#667085);font-size:1.2rem;font-weight:600;opacity:1}
.single-product.woocommerce div.product p.price ins{text-decoration:none}
.single-product.woocommerce div.product .woocommerce-product-details__short-description{margin:0 0 22px;color:var(--m1-body);font-size:1.05rem;line-height:1.7}
.single-product.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin:0 0 18px;padding-top:22px;border-top:1px solid var(--m1-line,#E1E6EE)}
.single-product.woocommerce div.product form.cart::before,.single-product.woocommerce div.product form.cart::after{display:none}
.single-product.woocommerce div.product form.cart div.quantity{float:none;margin:0}
.single-product.woocommerce div.product form.cart .quantity .qty{width:84px;height:58px;padding:0 8px;border:1px solid #CBD2DF;border-radius:12px;background:#fff;color:var(--m1-ink,#171B2C);font:inherit;font-size:1.1rem;font-weight:700;text-align:center}
.single-product.woocommerce div.product form.cart .single_add_to_cart_button{float:none;flex:1 1 220px;max-width:360px;min-height:58px;padding:0 34px;border:0;border-radius:12px;background:var(--m1-blue,#075C97);color:#fff;font:inherit;font-size:1.1rem;font-weight:800;letter-spacing:.01em;box-shadow:0 14px 30px rgba(7,92,151,.28);transition:background-color .15s ease}
.single-product.woocommerce div.product form.cart .single_add_to_cart_button:hover,.single-product.woocommerce div.product form.cart .single_add_to_cart_button:focus-visible{background:var(--m1-navy,#282E45)}
.single-product.woocommerce div.product form.cart .variations{width:100%;margin:0 0 6px}
.single-product.woocommerce div.product .product_meta{margin-top:18px;padding-top:16px;border-top:1px solid var(--m1-line,#E1E6EE);font-size:.9rem;color:var(--m1-muted,#667085)}
.single-product.woocommerce div.product .product_meta>span{display:block;margin:2px 0}
.single-product.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin:0;padding:34px 38px;background:#fff;border:1px solid var(--m1-line,#E1E6EE);border-radius:18px;box-shadow:var(--m1-shadow-sm)}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs{margin:0 0 22px;padding:0;border-bottom:1px solid var(--m1-line,#E1E6EE);display:flex;gap:26px;overflow:visible}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs::before,.single-product.woocommerce div.product .woocommerce-tabs ul.tabs::after,.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0 0 -1px;padding:0;border:0;border-radius:0;background:none}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:0 0 14px;color:var(--m1-muted,#667085);font-weight:700;font-size:1.05rem;border-bottom:3px solid transparent;text-decoration:none}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--m1-ink,#171B2C);border-bottom-color:var(--m1-blue,#075C97)}
.single-product.woocommerce div.product .woocommerce-tabs .panel{margin:0;padding:0;color:var(--m1-body);font-size:1.05rem;line-height:1.75}
.single-product.woocommerce div.product .woocommerce-tabs .panel>h2:first-child{display:none}
.single-product.woocommerce div.product .woocommerce-tabs .panel>:last-child{margin-bottom:0}
.single-product.woocommerce .related.products,.single-product.woocommerce .upsells.products{grid-column:1/-1;margin-top:8px}
.single-product.woocommerce .related.products>h2,.single-product.woocommerce .upsells.products>h2{font-size:1.6rem;margin:0 0 18px;color:var(--m1-ink,#171B2C)}
@media (max-width:900px){
  .single-product main#main.site-main{padding-top:20px;padding-bottom:40px}
  .single-product.woocommerce div.product{grid-template-columns:1fr;gap:20px}
  .single-product.woocommerce div.product div.images{padding:16px}
  .single-product.woocommerce div.product div.images.woocommerce-product-gallery--without-images img{max-width:150px;margin:14px auto}
  .single-product.woocommerce div.product div.summary,.single-product.woocommerce div.product .woocommerce-tabs{padding:24px 20px}
  .single-product.woocommerce div.product form.cart .single_add_to_cart_button{max-width:none}
}

/* 64. Hero headline: a little more room between its lines when it wraps. */
.m1-hero__title{line-height:1.2}
.m1-hero--packages .m1-hero__title{line-height:1.22}

/* 65. Contact page built in Elementor: text + contact details on the left (classes m1-ct / m1-ct__text), map on the right (m1-ct__media).
   The four contact details are one Icon List widget with the class m1-contact-list. */
.m1-ct{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px!important;align-items:stretch;padding:0!important}
.m1-ct__text,.m1-ct__media{width:auto!important;min-width:0;padding:0!important}
.m1-ct__text{gap:6px!important}
.m1-ct__media{min-height:440px;border-radius:var(--m1-radius);overflow:hidden;border:1px solid var(--m1-line);box-shadow:var(--m1-shadow)}
.m1-ct__map,.m1-ct__map .elementor-widget-container{flex:1 1 auto;height:100%;width:100%}
.m1-ct__map iframe{display:block;width:100%;height:100%;min-height:440px;border:0}
.m1-contact-list .elementor-icon-list-items{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0 0!important;padding:0!important;list-style:none}
.m1-contact-list .elementor-icon-list-item{margin:0!important;padding:16px 18px!important;background:var(--m1-soft);border:1px solid var(--m1-line);border-radius:14px;display:flex!important;align-items:center}
.m1-contact-list .elementor-icon-list-item::after{display:none!important}
.m1-contact-list .elementor-icon-list-item>a,.m1-contact-list .elementor-icon-list-item>span{display:flex;align-items:center;gap:14px;width:100%;text-decoration:none!important}
.m1-contact-list .elementor-icon-list-item{gap:14px}
.m1-contact-list .elementor-icon-list-icon{flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#0A74BC,#075C97);display:flex!important;align-items:center;justify-content:center;margin:0!important;padding:0!important}
.m1-contact-list .elementor-icon-list-icon svg{width:20px;height:20px;fill:#fff}
.m1-contact-list .elementor-icon-list-icon i{color:#fff;font-size:18px}
.m1-contact-list .elementor-icon-list-text{padding:0!important;color:var(--m1-ink);font-weight:600;font-size:1rem;line-height:1.35;overflow-wrap:anywhere}
.m1-contact-list a .elementor-icon-list-text{color:var(--m1-link)}
@media (max-width:1024px){
  .m1-ct{grid-template-columns:1fr;gap:30px!important}
  .m1-ct__media,.m1-ct__map iframe{min-height:320px}
}
@media (max-width:600px){.m1-contact-list .elementor-icon-list-items{grid-template-columns:1fr}}

/* 66. Checkout: space between the terms and conditions checkbox and the Place Order button. */
.woocommerce-terms-and-conditions-wrapper{margin-bottom:24px!important}

/* 67. Text link colour. Links in page text, lists, the sidebar, cart and checkout use this darker blue for stronger contrast;
   buttons, icons and accents keep the brand blue (--m1-blue). Change the one value below to adjust every text link. */
:root{--m1-link:#04406E}

/* 68. Accessibility helpers: text for screen readers and AI agents only (m1-sr), and the native FAQ list (details/summary). */
.m1-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.m1-faq__list{display:flex;flex-direction:column;gap:10px}
.m1-faq__qh{display:inline;margin:0;padding:0;font:inherit;color:inherit;letter-spacing:inherit}
.m1-faq__item[open]>.m1-faq__q{color:var(--m1-blue)}
.m1-faq__a>:first-child{margin-top:0}
.m1-faq__a>:last-child{margin-bottom:0}
.m1-faq__a{color:var(--m1-body)}
.m1-loc-faq .m1-faq__item{box-shadow:var(--m1-shadow-sm)}
.m1-skip-target{height:0;outline:0;scroll-margin-top:120px}

/* 69. Sidebar headings (From the Blog and other widget titles) do not get the accent line that content H2s have. */
.m1-fromblog::after,.m1-aside h2::after,.m1-area--sidebar h2::after{content:none!important;display:none!important}

/* 70. Form-link anchor at the top of the hero, and no entrance effects on phones.
   On screens up to 767px wide nothing slides or fades in: the hero and every section are simply there. */
.m1-hero__anchor{display:block;height:0;scroll-margin-top:140px}
@media (max-width:767px){
  .m1-js .m1-hero__copy>*,.m1-js .m1-hero__form{animation:none!important;opacity:1!important;transform:none!important}
  .m1-js .m1-reveal,.m1-js .m1-reveal.m1-in{opacity:1!important;transform:none!important;transition:none!important}
}
/* 70b. Phones and tablets: a form link (#freequote, #contactform) goes straight to the form box, which stops just below the sticky menu with a small gap so its top is never covered. */
@media (max-width:1024px){#freequote,#contactform{scroll-margin-top:86px}}

/* 71. Form links (#freequote, #contactform): the hero used overflow:hidden, which lets the browser scroll the hero's
   own contents upward when it jumps to the form inside it - the whole hero shifted up and left a blank band at the
   bottom. overflow:clip trims the decorative background the same way but cannot be scrolled. */
.m1-hero{overflow:hidden;overflow:clip}
.m1-hero__inner,.m1-hero__copy{overflow:visible}

/* 72. No entrance effects on any screen size: the hero content and every section are simply there, nothing slides or fades in.
   Hover colour changes on cards and buttons are unaffected. Delete this rule to bring the effects back. */
.m1-js .m1-hero__copy>*,.m1-js .m1-hero__form{animation:none!important;opacity:1!important;transform:none!important}
.m1-js .m1-reveal,.m1-js .m1-reveal.m1-in{opacity:1!important;transform:none!important;transition:border-color .15s ease,box-shadow .2s ease,background-color .15s ease!important}
